DE60316141T2 - Echtzeit-speicherbereichsnetzwerk - Google Patents
Echtzeit-speicherbereichsnetzwerk Download PDFInfo
- Publication number
- DE60316141T2 DE60316141T2 DE60316141T DE60316141T DE60316141T2 DE 60316141 T2 DE60316141 T2 DE 60316141T2 DE 60316141 T DE60316141 T DE 60316141T DE 60316141 T DE60316141 T DE 60316141T DE 60316141 T2 DE60316141 T2 DE 60316141T2
- Authority
- DE
- Germany
- Prior art keywords
- bandwidth
- area network
- storage area
- nodes
- daemon
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Lifetime
Links
- 238000000034 method Methods 0.000 claims description 38
- 230000008569 process Effects 0.000 claims description 18
- 239000000835 fiber Substances 0.000 claims description 8
- 230000000737 periodic effect Effects 0.000 claims description 5
- 230000004044 response Effects 0.000 claims description 2
- 238000013500 data storage Methods 0.000 claims 1
- CATMPQFFVNKDEY-AAEUAGOBSA-N gamma-Glu-Trp Chemical compound C1=CC=C2C(C[C@H](NC(=O)CC[C@H](N)C(O)=O)C(O)=O)=CNC2=C1 CATMPQFFVNKDEY-AAEUAGOBSA-N 0.000 claims 1
- 230000008901 benefit Effects 0.000 description 5
- 238000004891 communication Methods 0.000 description 4
- 238000012986 modification Methods 0.000 description 4
- 230000004048 modification Effects 0.000 description 4
- 238000010276 construction Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000002452 interceptive effect Effects 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 241000408659 Darpa Species 0.000 description 1
- 241000251128 Galeocerdo cuvier Species 0.000 description 1
- XUIMIQQOPSSXEZ-UHFFFAOYSA-N Silicon Chemical compound [Si] XUIMIQQOPSSXEZ-UHFFFAOYSA-N 0.000 description 1
- 230000002411 adverse Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 230000010076 replication Effects 0.000 description 1
- 229910052710 silicon Inorganic materials 0.000 description 1
- 239000010703 silicon Substances 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/70—Admission control; Resource allocation
- H04L47/82—Miscellaneous aspects
- H04L47/822—Collecting or measuring resource availability data
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/12—Avoiding congestion; Recovering from congestion
- H04L47/125—Avoiding congestion; Recovering from congestion by balancing the load, e.g. traffic engineering
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/15—Flow control; Congestion control in relation to multipoint traffic
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/70—Admission control; Resource allocation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/70—Admission control; Resource allocation
- H04L47/72—Admission control; Resource allocation using reservation actions during connection setup
- H04L47/724—Admission control; Resource allocation using reservation actions during connection setup at intermediate nodes, e.g. resource reservation protocol [RSVP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/70—Admission control; Resource allocation
- H04L47/80—Actions related to the user profile or the type of traffic
- H04L47/801—Real time traffic
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/70—Admission control; Resource allocation
- H04L47/82—Miscellaneous aspects
- H04L47/826—Involving periods of time
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
- VERWEIS AUF VERWANDTE ANMELDUNG(EN)
- Diese Anmeldung betrifft und beansprucht die Priorität der vorläufigen US-Anmeldung mit dem Titel ECHTZEITSPEICHERBEREICHSNETZWERK (REAL-TIME STORAGE AREA NETWORK) von Michael A. Raymond mit der laufenden Nummer 60/378,941, eingereicht am 10. Mai 2002.
- HINTERGRUND DER ERFINDUNG
- 1. Erfindungsbereich
- Die vorliegende Erfindung betrifft Echtzeitrechnerdatenverarbeitung und im Speziellen Zugreifen auf ein Speicherbereichsnetzwerk durch Echtzeitrechnersysteme.
- 2. Beschreibung des Stands der Technik
- Echtzeitzugriff auf Speicher wird von vielen Anwendungen benötigt, wie z.B. Rundruf (Broadcast), Gruppenruf (Multicast) und Editieren digitaler Mediendateien und Sensordatenerfassung und -verarbeitung. Es sind viele Möglichkeiten zur Bereitstellung von Echtzeitdatenzugriff vorgeschlagen und implementiert worden, einschließlich dem Garantierte-I/O-Raten (GRIO)-Plattenbandbreitenplaner, erhältlich von Silicon Graphics, Inc. (SGI) aus Mountain View, Kalifornien. In Verbindung mit dem XLV-Platten-Volume-Manager, ebenso erhältlich von SGI, werden mittels GRIO garantierte Plattenbandbreitenreservierungen auf der lokalen Anforderer-(Client)-Ebene bereitgestellt. Bandbreitenreservierungen können an einzelne Dateien oder ganze Dateisysteme angehängt werden und von Prozessen geteilt werden. Um GRIO zu unterstützen, muss der lokale Speicher entsprechend konfiguriert sein. Wenn die Datenmenge, die von einer Anwendung benötigt wird, größer ist als durch eine einzelne Platte bereitgestellt werden kann, muss die Platte in einem Speichermedium (Volume) sein, wobei die Daten, die über verschiedene Platten verteilt (striped) oder auf Mehrfachplatten gestaffelt sind, so dass verschiedene Prozesse unabhängig voneinander auf verschiedene Platten zugreifen können.
- GRIO ist ein wesentlicher Bestandteil des I/O-Systems unter IRIX® (UNIX-Version von SGI), um sicherzustellen, dass Echtzeitzugriff garantiert werden kann. GRIO verwendet einen Frame-basierten Plattenblockplaner ohne Neubestellungsanfragen und führt eine Datenbank über die verschiedenen Computerteile in dem System und ihre Bandbreiteneigenschaften. Wenn eine Bandbreitenreservierung von einem auf dem lokalen Client-Knoten ausgeführten Prozess empfangen wird, werden entlang des gesamten physikalischen I/O-Pfads Bestimmungen der erhältlichen Bandbreite für Komponenten gemacht, beginnend mit dem I/O-Adapter, auf den durch mehrere Prozessoren zugegriffen wird und endend mit dem lokalen Datenspeicher. Die Gesamtreservierungen werden für alle Prozesse bei jeder Komponente entlang des Pfads unter der gesamt erhältlichen Bandbreite für diese Komponente gehalten. Wenn dieser Pegel überschritten werden würde, verweigert der GRIO-Daemon den Zugang auf die Anfrage. Die Überschusskapazität kann durch einen Prozess für eine Restbandausschöpfung verwendet werden, vorausgesetzt, dass die verbleibenden Reservierungen während der Dauer der Restbandanfrage nicht nachteilig beeinflusst werden.
- Obwohl GRIO für einzelne Client-Knoten erhältlich ist, bieten keine bekannten Clientsoftwarelösungen einen garantierten Echtzeitzugriff auf Datenspeicher, der von Knotengruppen über ein Speicherbereichsnetzwerk (SAN) geteilt wird. Die dichteste bekannte Lösung ist es, die Dateien, die auf einem SAN gespeichert sind, auf einen lokalen Speicher zu kopieren und GRIO dazu zu verwenden, um die Synchronisation von Zugriffen auf die Dateien in dem lokalen Speicher zu kontrollieren. Diese Technik ist für einige Anwendungen, z.B. nicht-lineares Edi tieren, geeignet, sie ist aber alles andere als wünschenswert für einen großangelegten Gruppenruf (Multicasting) auf Anforderung von z.B. Videodateien aufgrund der großen Menge zusätzlichen lokalen Speichers, der erforderlich wäre und der nicht benötigt würde, wenn Echtzeitzugriff auf die Ressourcen des SAN garantiert werden könnte. Der Oberbegriff der Ansprüche 1, 11, 12 und 13 basiert auf "The Tiger Shark File System" von RL Haskin und FB Schmuck (1996 IEEE Proceedings of COMPCON '96, S. 226–231), worin ein Dateisystem beschrieben wird, das interaktive Multimedia, insbesondere großangelegte Systeme, wie z.B. interaktives Fernsehen unterstützt. Für Daueranwendungen bietet das System Erweiterungen für eine normale Dateisystemschnittstelle, die es dem Anwender ermöglichen, die Qualität der Betriebserfordernisse, wie z.B. der Videowiedergabendatenrate, festzulegen. Das Tiger Shark System verwendet diesen Abruf, um Ressourcen zu reservieren. Wenn das System einen NFS-Client detektiert, der sequentielles Lesen aus einer Datei mit einer vorgegebenen Wiedergaberate durchführt, nimmt das System an, dass der Client überträgt und reserviert Bandbreite für den Client und verwendet eine Fristplanung, um die Datei mit der vorbestimmten Rate zu lesen.
- Es gibt mehrere Vorteile von SAN, die durch die oben beschriebene Lösung nicht erreicht werden. Die Fehlertoleranz für Zugriffe auf die Daten ist einer der wichtigsten Vorteile eines SAN. Außerdem sind ferner der Belastungsausgleich und die Ermöglichung verschiedenartiger Client-Anfragen an denselben physikalischen Speicher Vorteile, die durch ein gebündeltes Dateiensystem erhalten werden können, das ein SAN verwendet.
- Andere Wege zur Erlangung von wenigstens einiger dieser Vorteile umfassen die Modifizierung der Plattensteuereinheits-Firmware, um Datenanfragen zu planen und neu zu ordnen, und das Verwenden intelligenter Plattennetzwerke, wie von Nagle in "Active Storage Nets", DARPA/ITO Active Nets Meeting Juli 1998, vorgeschlagen wurde. Nagle schlug ein Netzwerk intelligenter Plattenlaufwerke vor, die ihre Übertragungs-(Striping)-Konfiguration nach Bedarf neu ordnen können, um die Qualität der Servicegarantien einzuhalten. Dies erfordert die Zugabe von Intelligenz auf die Plattenlaufwerke und das Bereitstellen eines aktiv rekonfigurierbaren Netzwerks, das die intelligenten Plattenlaufwerke verknüpft. Eine einfachere Lösung, die weniger Modifikationen für ein Gruppendateisystem erfordert, das Zugriff auf ein SAN ermöglicht, ist aus einer Kosten-Leistungsperspektive wünschenswert.
- ZUSAMMENFASSUNG DER ERFINDUNG
- Es ist ein Ziel der vorliegenden Erfindung, garantierte Datenzugriffsraten auf einen gemeinsamen Gruppenspeicher (Cluster Storage) zu bieten.
- Es ist ein weiteres Ziel der vorliegenden Erfindung, garantierte Datenzugriffsraten auf einen gemeinsamen Gruppenspeicher bereitzustellen, ohne dass Hardware-Modifikationen an Speichergeräten oder der Verbindung benötigt werden.
- Es ist ein weiteres Ziel der vorliegenden Erfindung, Echtzeitzugriff auf Dateien für Rundrufe (Broadcasting) oder Gruppenrufe (Multicasting) bereitzustellen, während gleichzeitig die Ausgabe von Dateien erlaubt wird, die gegenwärtig nicht durch Broadcasting oder Multicasting in Anspruch genommen werden.
- Es ist noch ein weiteres Ziel der vorliegenden Erfindung, einen Prozess auf einem der Knoten in einer Gruppe zu ermöglichen, um zu bestimmen, ob eine Anfrage für einen Zugriff auf gemeinsame Ressourcen gestattet werden kann, ohne dass eine Kommunikation mit anderen Knoten in der Gruppe erforderlich ist.
- Diese Ziele werden erreicht durch die Bereitstellung eines Verfahrens mit den Merkmalen des Anspruchs 1, eines Rechnersystems mit den Merkmalen des Anspruchs 11, einer Gruppe von Rechnersystemen mit den Merkmalen des Anspruchs 12 und eines rechnerlesbaren Datenträgers mit den Merkmalen des Anspruchs 13.
- Die oben stehenden Ziele können durch ein Verfahren zum Zugreifen auf ein Speicherbereichsnetzwerk durch Echtzeitanwendungen erreicht werden, einschließlich Anfordern von einem Masterdaemon über die Echtzeitanwendungen, die auf Knoten in dem Speicherbereichsnetzwerk ablaufen, einer Reservierung von Bandbreite, um auf die Mittel im Speicherbereichsnetzwerk zuzugreifen, und Planen durch den Masterdaemon des Zugriffs auf die Mittel in dem Speicherbereichsnetzwerk von jeder Echtzeitanwendung. Das Planen wird durch Bestimmen verfügbarer Bandbreite entlang eines Pfads durchgeführt, der bei jeder Anforderung erforderlich ist, und Gewähren des Zugangs zu den Mitteln des Speicherbereichsnetzwerk nur dann, wenn die gesamte Bandbreitenreservierungen aller gewährten Anforderungen geringer sein wird als die gesamte verfügbare Bandbreite.
- Die erhältliche Bandbreite wird bestimmt durch Bestimmen eines Pfads von einer Ein-/Ausgabeschnittstelle bei den Knoten in dem Speicherbereichsnetzwerk, das die Anforderung an jedes wenigstens eine Speicherelement in dem Speicherbereichsnetzwerk ausgibt, und durch Bestimmen verfügbarer Bandbreite für wenigstens eine Komponente entlang des Pfads. Diese Bestimmungen werden gemacht durch Verwendung einer Master-Datenbank der reservierten Bandbreite und der gesamten verfügbaren Bandbreite der Komponenten, die dazu in der Lage sind, von den Knoten in dem Speicherbereichsnetzwerk geteilt zu werden, und von lokalen Datenbanken der reservierten Bandbreite für lokal ausge gebene Anforderungen und der gesamten verfügbar Bandbreite für lokale Knotenkomponenten, die von Prozessen, die bei jedem Knoten, der Anforderungen für Bandbreitenreservierungen ausgibt, geteilt werden.
- Das Verfahren umfasst ferner das Verteilen wenigstens eines Plans an jeden anfordernden Knoten, der während des Planens durch den Masterdaemon bestimmt wurde, und Beschränken der Zugriffe auf die Mittel in dem Speicherbereichsnetzwerk durch jede Echtzeitanwendung auf jeden anfordernden Knoten nach einem dazugehörigen Plan, der in dem wenigstens einen Plan enthalten ist.
- Das Verfahren umfasst Reservieren durch die Knoten in dem Speicherbereichsnetzwerk einer zusätzlichen Menge an Bandbreite, die nicht durch eine der Echtzeitanwendungen angefordert wurde. Das Verfahren umfasst Zuteilen durch einen lokalen Daemon auf einem der Knoten in dem Speicherbereichsnetzwerk der zusätzlichen Menge an Bandbreite für einen Zugriff auf das Speicherbereichsnetzwerk an Anwendungen, die auf dem einen der Knoten ablaufen und für die keine Bandbreitenanforderung an den Masterdaemon ausgegeben wurde. Ferner schließt das Zuteilen der zusätzlichen Menge an Bandbreite ein Zuteilen von Bandbreite an wenigstens eine der Echtzeitanwendungen ein, für die eine Bandbreitenanforderung durch den lokalen Daemon gewährt wurde, ohne dass es erforderlich ist, dass der lokale Daemon zusätzliche Bandbreite von dem Masterdaemon für den einen der Knoten anfordert. Die zusätzliche Bandbreite wird durch Anwendungen verwendet, die keine Bandbreitenreservierungsanforderung ausgegeben haben.
- Diese Ziele und Vorteile, zusammen mit anderen, die im Folgenden ersichtlich werden, liegen in den Details der Konstruktion und des Betriebs, wie nachstehend genauer beschrieben und beansprucht wird. Die Bezugszeichen beziehen sich auf die bei gefügten Zeichnungen, die ein Anteil hiervon bilden, wobei sich ähnliche Zahlen immer auf ähnliche Teile beziehen.
- KURZE BESCHREIBUNG DER ZEICHUNGEN
-
1 ist ein Blockdiagramm einer Gruppe von Rechnersystemen, die mit einem SAN verbunden sind. -
2 ist ein Blockdiagramm von Komponenten in zwei Knoten und gemeinsamen Komponenten in einem SAN, um den Bestimmungsprozess darzustellen, ob eine Bandbreitenreservierungsanforderung gewährt wird. - DETAILLIERTE BESCHREIBUNG DER BEVORZUGTEN AUSFÜHRUNGSFORMEN
- Die vorliegende Erfindung kann in ein SAN, auf das von einer Gruppe von Rechnersystemen zugegriffen wird, auf denen jeweils UNIX oder IRIX® läuft, und einem gebündelten (clustered) Dateisystem, wie z.B. CXFS und dem Volume Manager XVM, die beide von SGI sind, implementiert werden. Zusätzliche Details solch einer Betriebsumgebung sind angegeben in den US-Patentanmeldungen mit den Titeln GEBÜNDELTES DATEISYSTEM („CLUSTERED FILE SYSTEM"), das die Seriennummer 10/162,258 hat, von Costello et al., eingereicht am 5. Juni 2002, und DATENTRANSFER ZWISCHEN VERSCHIEDENARTIGEN AUFTRAGGEBERN EINES SPEICHERBEREICHSNETZWERK („MESSAGING BETWEEN HETEROGENEOUS CLIENTS OF A STORAGE AREA NETWORK") von Cruciani et al. und VIELKLASSIGER VERSCHIEDENARTIGER CLIENTS IN EINEM GEMEINSAMEN DATEISYSTEM („MULTICLASS HETEROGENEOUS CLIENTS IN A CLUSTERED FILE SYSTEM") von Moore et al., beide eingereicht am 16. April 2003, die alle durch Bezugnahme hierin aufgenommen werden.
- Ein Beispiel für solch ein Cluster ist in
1 gezeigt. In dem in1 gezeigten Beispiel läuft auf Knoten22a bis d das IRIX®-Betriebssystem von SGI, während auf Knoten24a und b das SolarisTM-Betriebssystem von Sun Microsystems, Inc. aus Santa Clara, Kalifornien, läuft und auf Knoten26 das Windows® NT®-Betriebssystem der Microsoft Corporation aus Redmond, Washington läuft. Jeder dieser Knoten ist ein herkömmliches Rechnersystem, einschließlich wenigstens eines und in vielen Fällen mehrerer Prozessoren, eines lokalen oder primären Speichers, von dem ein Teils als Platten-Cache verwendet wird, von Eingangs-/Ausgangs-(I/O)-Schnittstellen und I/O-Geräten, wie z.B. einer/m oder mehreren Anzeigen oder Druckern. Gemäß der vorliegenden Erfindung umfasst die Gruppe ein Speicherbereichsnetzwerk, in dem Massen- oder sekundärer Speicher, wie z.B. Plattenlaufwerke28 , mit den Knoten22a bis d,24a und b,26 über ein Fibre-Channel-Switch30 und Fibre-Channel-Verbindungen32 verbunden ist. Die Knoten22a bis d,24a und b,26 sind ferner über ein lokales Bereichsnetzwerk (LAN)34 verbunden, wie z.B. dem Ethernet, das TCP/IP verwendet, um Datentransfer und Heartbeat-Signale bereitzustellen. Ein serieller Multiplexeranschluss36 kann ferner mit dem LAN und mit einem seriellen Anschluss jedes Knotens verbunden sein, um eine Hardwarerückstellung(-reset) des Knotens zu ermöglichen. In dem Beispiel, das in1 gezeigt ist, sind nur die IRIX®-Knoten22a bis d mit dem seriellen Multiplexeranschluss36 verbunden. - Andere Arten von Speichergeräten außer den Plattenlaufwerken
28 können mit dem Fibre-Channel-Switch30 über die Fibre-Channel-Verbindungen32 verbunden sein. In1 sind Bandlaufwerke38 gezeigt, es können aber auch andere herkömmliche Speichergeräte verbunden werden. Alternativ können die Plattenlaufwerke28 oder die Bandlaufwerke38 (oder andere Speichergeräte) mit einem oder mehreren der Knoten22a bis d,24a und b,26 verbunden sein, z.B. über SCSI-Verbindungen (nicht gezeigt). - Eine Anwendung für eine wie die in
1 gezeigte Gruppe ist ein Video-Rundruf(Broadcast)-Studio, in dem Videoclips in Dateien auf Plattenlaufwerken28 (oder Tonbandlaufwerken38 ) gespeichert werden. Nicht-lineare Video-Editorprogramme, die auf verschiedenartigen Knoten22a bis d,24a und b,26 laufen, verändern die Videodateien während die Dateien zum Broadcasting im Fernsehen zur Verfügung stehen. Ein Cluster-Aware-Echtzeitplaner gemäß der vorliegenden Erfindung gewährleistet, dass die Koordinierungsanforderungen erfüllt werden und die gesamte Bandbreite der Wiedergabe-Server zur Verfügung steht. - CXFS ermöglicht direkten Zugriff auf das SAN
28 ,30 ,32 von allen verbundenen Clients22a bis d,24a und b,26 und hält den Zusammenhang durch die Vergabe (leasing out) von Gutscheinen (Tokens) für verschiedene Aktionen aufrecht. Zum Beispiel gibt es Lese-/Schreib-Tokens für den Zugriff auf einzelne Dateien und es gibt Tokens für die Zuteilung neuer Plattenblockbereiche. Einer der Knoten22a bis d dient als ein Metadaten-Server für jedes Dateisystem und kontrolliert die Gewährung und Replikation der Tokens. Ein Umlagerungs-Wiederfinden (relocation recovery) der Metadaten-Server wird unter CXFS unterstützt. - Um dazu in der Lage zu sein, effizient Bandbreitenverwendungskonflikte zwischen verschiedenen Clients zu lösen, wird in der bevorzugten Ausführungsform auf jedem Client-Knoten
22a bis d,24a und b oder26 ein Daemon namens ggd ausgeführt, der auf Anfrage nach garantiertem Zugriff auf jegliche Daten antwortet. Jede Bandbreitenreservierungsanforderung umfasst bevorzugt wenigstens ein Speicherelement, eine benötigte periodische Bandbreite, z.B. 1 MB pro Sekunde, eine Startzeit und eine Dauer der Reservierung für einen Zugriff auf das wenigstens eine Speicherelement. - Wie in
2 gezeigt, dient einer der Knoten als Masterknoten40 . Die verbleibenden Knoten werden durch den Client-Knoten42 dargestellt. Die Funktionen, die von ggd44m in dem Masterknoten40 durchgeführt werden, sind im Wesentlichen die gleichen wie die in ggd44c im Client-Knoten42 . Und zwar empfängt ggd44m Anforderungen von Prozessen, die auf dem Masterknoten40 ausgeführt werden, ebenso wie die, die von anderen Knoten42 empfangen wurden zur Regelung einer Bandbreitenanforderung an gemeinsame Ressourcen. Wenn Bezug auf Abläufe genommen wird, die von beiden, ggd44c und ggd44m , durchgeführt werden, wird Bezug auf ggd44 genommen. - Auf jedem Knoten
42 ,44 führt ggd44 eine Datenbank der Hardware mit der gesamt erhältlichen oder maximalen Bandbreite und der gesamten angeforderten Bandbreite. Außerdem wird der Hardwarepfad zu der Speicherkomponente in der Datenbank gespeichert, so dass die zur Verfügung stehende Bandbreite der Komponenten entlang des Pfads bestimmt werden kann. Die gesamte angeforderte Bandbreite ist die Bandbreite, die für Prozesse vorgesehen ist, die Bandbreitenreservierungsanforderungen ausgegeben haben. Die gesamte erhältliche Bandbreite kann, wenn andere Prozesse die gemeinsamen Geräte verwenden, ohne eine Bandbreitenreservierungsanfrage zu stellen, kleiner als die Kapazität der spezifischen Hardware sein. Es wird allerdings bevorzugt, dass alle zugreifenden Anwendungen und Knoten im SAN28 ,30 ,32 Anforderungen an den lokalen Daemon ggd44c (und über ggd44c bis ggd44m , wenn eine gemeinsame Ressource angefordert wird,) ausgeben. Vorzugsweise wird die gesamte angeforderte Bandbreite aus Informationen von jeder Anforderung bestimmt, die in der Datenbank geführt wird. Wenn die reservierte Zeit, die durch die Startzeit und Dauer bestimmt wird, vorbei ist, wird die Reservierungsanforderung von der Datenbank entfernt und die gesamte angeforderte Bandbreite wird um die Menge der Bandbreite dieser Anforderung reduziert. - Bandbreitenreservierungen werden als verschachtelte Transaktionen für Gerätekomponenten gemacht, die von Mehrfachprozessen geteilt werden. Bei Cache-kohärenten Multiprozessor-Systemen, wie die von SGI gefertigten, beginnt ggd
44 mit dem gemeinsamen Punkt, an dem alle Prozessoren in dem Knoten40 oder42 auf die I/O-Hardware bei einer Speicherschnittstelle46 stoßen. Wenn eine Anforderung empfangen wird, fragt ggd44 den Kernel nach dem Hardwarepfad zu dem angeforderten Speicherelement. Mit dieser Information geht ggd44 den Pfad ab und bestimmt, ob jeder Teil genügend nicht-reservierte Bandbreite hat, um die Anforderung zu gestatten. In dem Fall des Client-Knotens wird dies durch die durchgehenden Linien zwischen der Speicherschnittstelle46 , einem PCI Bus48 und einem Fibre-Channel-Adapter50 gezeigt. Wenn ggd44c in dem Client-Knoten42 bestimmt, dass sämtliche Hardware in ihrem Knoten genug unreservierte Bandbreite hat, wird eine Anforderung an den Masterdaemon in Knoten40 ausgegeben, um die erhältliche Bandbreite der Hardware, die in der Gruppe (Cluster) geteilt werden, zu überprüfen. - In der in
2 gezeigten Ausführungsform sind nur gemeinsame Platten28 als von ggd44m nach unreservierter Bandbreite abgefragt gezeigt, in Antwort auf eine Anfrage des Auftragsknotens42 , wie durch die gestrichelten Linien angezeigt. Dies kann der Fall sein, wenn die wenigstens eine Komponente in der Anfrage einen Bereich des Plattenspeichers in dem Speicherbereichsnetzwerk einschließt und die anderen Komponenten in dem Speicherbereichsnetzwerk ausreichend Kapazität haben, so dass der einzige Engpass bei der gemeinsamen Platte auftreten könnte. Vorzugsweise umfasst die Datenbank, die von ggd44m geführt wird, jegliche Hardware in dem SAN28 ,30 ,32 , in dem eine Engstelle auftreten könnte, wie z.B. den Fibre-Channel-Adapter, den Fibre-Channel-Switches, den Plattensteuerungen etc. Wenn jede der wenigstens einen Komponente, d.h. der Speicherelement(e) auf der gemeinsamen Platte28 , bei der Bandbreitenreservierungsanforderung durch ggd44m angefordert wird, um die erhältliche Bandbreite zu haben, die über die erforderliche periodische Bandbreite in der Anforderung hinausgeht, dann sendet ggd44m eine Nachricht an ggd44c , so dass der Zugriff zu der Anforderung gewährt wird, und erhöht die gesamte angeforderte Bandbreite in der Datenbank, die auf den gemeinsamen Gruppenkomponenten geführt wird. Ähnlich aktualisiert ggd44c seine Datenbank für die Komponenten in Knoten42 , die von Mehrfachprozessen geteilt werden. - Als eine Alternative zu dem Masterdaemon, der eine Masterdatenbank der Anforderungen an gemeinsame Ressourcen des SAN
28 ,30 ,32 führt, kann ein Anteil der gesamten Bandbreite der gemeinsamen Ressourcen des SAN28 ,30 ,32 an jeden Knoten42 zugeteilt werden, entweder von einem Masterdaemon oder durch Mitteilungen, die zwischen dem lokalen ggd44c in jedem Knoten42 übertragen werden. Bei dieser Alternative würde der lokale ggd44c in jedem Knoten42 Informationen über die gemeinsamen Ressourcen des SAN28 ,30 ,32 führen, die zusätzlich zu den gemeinsamen Ressourcen in dem Knoten42 selbst zugeteilt wurden. - Im Gegensatz zu dem GRIO-Produkt von SGI, ermöglicht ggd
44c keine Restbandverwendung der gemeinsamen Ressourcen. Dies würde normalerweise zusätzliche Kommunikation zwischen den Knoten während einer Prozessausführung erfordern. Angesichts der Zeit, die erforderlich ist, um solchen Zugriff zu gewähren, und der zusätzlichen Komplexität, die für die erforderliche Kommunikation bereitzustellen wäre, ist es in einem System von im Allgemeinen nicht vollständig verwendeter Bandbreite vorzuziehen, Bandbreitenreservierungen zu machen, die groß genug sind, um Restbandsituationen zu vermeiden. Alternativ kann der Client-Knoten42 eine zusätzliche Bandbreitenreservierungsanfrage für Prozesse an ggd44m ausgeben, die auf dem Client-Knoten42 ohne eine spezielle Anforderung von einem dieser Prozesse ausgeführt wird. Wenn es durch ggd44m gewährt wird, kann die zusätzliche Bandbreitenreservierung von ggd44c zu Prozessen auf dem Client-Knoten42 zugeteilt werden, die keinerlei Bandbreitenreservierungsanforderungen ausgegeben haben, oder um zusätzliche Bandbreite für Prozesse bereitzustellen, die eine Anforderung ausgegeben haben, bei denen es jedoch notwendig ist, dass die von ggd44m gewährte Bandbreite überschritten wird. - Die vorliegende Erfindung ist mit Bezug auf eine Ausführungsform beschrieben worden, die SGI-Hardware und -Software verwendet. Die Erfindung ist jedoch nicht beschränkt auf SGI-Hardware und -Software oder eine Verwendung mit Videoausgabe und -Broadcasting.
- Da zahlreiche Modifikationen und Veränderungen für Fachleute leicht ersichtlich sind, ist es nicht gewünscht, die Erfindung auf die genauer gezeigte und beschriebene Konstruktion und Betrieb zu beschränken, und demzufolge fallen alle möglichen Modifikationen und Äquivalente, die darauf zurückgreifen, in den Geltungsbereich der nachstehenden Ansprüche.
Claims (13)
- Verfahren zum Zugreifen auf ein Speicherbereichsnetzwerk durch Echtzeitanwendungen mit den Schritten: Anfordern von einem Masterdaemon (
44m ) über die Echtzeitanwendungen, die auf Knoten (42 ) in dem Speicherbereichsnetzwerk ablaufen, einer Reservierung von Bandbreite, um auf die Mittel (28 ,30 ,32 ) im Speicherbereichsnetzwerk zuzugreifen, Planen durch den Masterdaemon (44m ) des Zugriffs auf die Mittel (28 ,30 ,32 ) in dem Speicherbereichsnetzwerk von jeder Echtzeitanwendung, Verteilen an jeden anfordernden Knoten (42 ) von wenigstens einem Plan, der während des Planens durch den Masterdaemon (44m ) bestimmt wurde, Beschränken der Zugriffe auf die Mittel in dem Speicherbereichsnetzwerk durch jede Echtzeitanwendung auf jeden anfordernden Knoten (42 ) nach einem dazugehörigen Plan, der in dem wenigstens einen Plan inbegriffen ist, und Reservieren durch die Knoten (42 ) in dem Speicherbereichsnetzwerk einer zusätzlichen Menge an Bandbreite, die nicht durch eine der Echtzeitanwendungen angefordert wurde, gekennzeichnet durch Zuteilen, durch einen lokalen Daemon (44c ) auf einem der Knoten (42 ) in dem Speicherbereichsnetzwerk, der zusätzlichen Menge an Bandbreite, die für einen Zugriff auf das Speicherbereichsnetzwerk reserviert war, an Anwendungen, die auf dem einen der Knoten (42 ) ablaufen und für die keine Bandbreitenanforderung an den Masterdaemon (44m ) ausgegeben wurde, wobei das Zuteilen der zusätzlichen Menge an Bandbreite ferner ein Zuteilen von Bandbreite an wenigstens eine der Echtzeitanwendungen einschließt, für die eine Bandbreiten anforderung durch den lokalen Daemon (44c ) gewährt wurde, ohne dass es erforderlich ist, dass der lokale Daemon (44c ) zusätzliche Bandbreite von dem Masterdaemon (44m ) für den einen der Knoten (42 ) anfordert. - Verfahren nach Anspruch 1, wobei das Planen umfasst: Bestimmen verfügbarer Bandbreite entlang eines Pfads, der bei jeder Anforderung erforderlich ist, und Gewähren des Zugangs zu den Mitteln des Speicherbereichsnetzwerks nur, wenn die gesamte Bandbreitenreservierungen aller gewährten Anforderungen geringer sein wird als die gesamte verfügbare Bandbreite.
- Verfahren nach Anspruch 2, wobei der verknüpfte Pfad jeweils von einem Knoten (
42 ) in dem Speicherbereichsnetzwerk stammt, das die Anforderung an wenigstens ein Datenspeicherelement (28 ,30 ,32 ) in dem Speicherbereichsnetzwerk ausgibt. - Verfahren nach Anspruch 3, wobei jede Anforderung das wenigstens eine Speicherelement (
28 ,30 ,32 ), eine benötigte periodische Bandbreite, eine Startzeit und eine Dauer einer Reservierung für einen Zugang zu dem wenigstens einen Speicherelement (28 ,30 ,32 ) identifiziert. - Verfahren nach Anspruch 4, wobei das Bestimmen umfasst: Bestimmen eines Pfads von einer Ein-/Ausgabeschnittstelle bei den Knoten in dem Speicherbereichsnetzwerk, das die Anforderung an jedes wenigstens eine Speicherelement ausgibt, Bestimmen verfügbarer Bandbreite für wenigstens eine Komponente entlang des Pfads.
- Verfahren nach Anspruch 5 wobei das Gewähren ausgeführt wird, wenn jede von der wenigstens einen Komponente eine verfügbare Bandbreite hat, die die benötigte periodische Bandbreite überschreitet, die durch die Anforderung identifiziert wird, und Vergrößern reservierter Bandbreite bei jeder von der wenigstens einen Komponente durch die benötigte periodische Bandbreite einschließt, die durch die Anforderung identifiziert wurde.
- Verfahren nach Anspruch 6, bei dem ferner durch den Masterdaemon (
44m ) eine Master-Datenbank der reservierten Bandbreite und der gesamten verfügbaren Bandbreite der Komponenten aufrecht erhalten wird, die dazu in der Lage sind, von den Knoten (42 ) in dem Speicherbereichsnetzwerk geteilt zu werden. - Verfahren nach Anspruch 7, bei dem ferner Aufrechterhalten durch einen lokalen Daemon (
44c ) an jedem der Knoten (42 ) des Speicherbereichsnetzwerks, von dem Anforderungen für Bandbreitenreservierungen ausgegeben werden, eine lokale Datenbank der reservierten Bandbreite für lokal ausgegebene Anforderungen und die gesamte verfügbare Bandbreite für lokale Knotenkomponenten aufrecht erhalten wird, die von Prozessen, die bei den Knoten ausgeführt werden, geteilt werden. - Verfahren nach Anspruch 7, wobei die wenigstens eine Komponente einen Teil des Plattenspeichers in dem Speicherbereichsnetzwerk umfasst.
- Verfahren nach Anspruch 9, wobei die wenigstens eine Komponente ferner einen Host-Bus von einem Systemspeicher zu einem Fibre-Channel-Adapter umfasst.
- Rechnerlesbarer Speicher, der ein Rechnersystem steuert, das eingeschlossene Instruktionen hat, um ein Verfahren zum Zugreifen auf ein Speicherbereichsnetzwerk durch Echtzeitanwendungen auszuführen, mit den Schritten: Anfordern von einem Masterdaemon (
44m ) über die Echtzeitanwendungen, die auf Knoten (42 ) in dem Speicherbereichsnetzwerk ablaufen, einer Reservierung von Bandbreite, um auf die Mittel (28 ,30 ,32 ) im Speicherbereichsnetzwerk zuzugreifen, Planen durch den Masterdaemon (44m ) des Zugriffs auf die Mittel (28 ,30 ,32 ) in dem Speicherbereichsnetzwerk von jeder Echtzeitanwendung, Verteilen an jeden anfordernden Knoten (42 ) von wenigstens einem Plan, der während des Planens durch den Masterdaemon (44m ) bestimmt wurde, Beschränken der Zugriffe auf die Mittel (28 ,30 ,32 ) in dem Speicherbereichsnetzwerk durch jede Echtzeitanwendung auf jeden anfordernden Knoten (42 ) nach einem dazugehörigen Plan, der in dem wenigstens einen Plan inbegriffen ist, und Reservieren durch die Knoten (42 ) in dem Speicherbereichsnetzwerk einer zusätzlichen Menge an Bandbreite, die nicht durch eine der Echtzeitanwendungen angefordert wurde, dadurch gekennzeichnet, dass die zusätzliche Menge an Bandbreite, die für Zugriff auf das Speicherbereichsnetzwerk reserviert ist, an Anwendungen, die auf dem einen der Knoten (42 ) ausgeführt werden und für die keine Bandbreitenanforderung an den Masterdaemon (44m ) ausgegeben wurde, durch einen lokalen Daemon (44c ) auf einen der Knoten (42 ) in dem Speicherbereichsnetzwerk zugeteilt wird, wobei das Zuteilen der zusätzlichen Menge an Bandbreite ferner ein Zuteilen von Bandbreite an wenigstens eine der Echtzeitanwendungen einschließt, für die eine Bandbreitenanforderung durch den lokalen Daemon (44c ) gewährt wurde, ohne dass es erforderlich ist, dass der lokale Daemon (44c ) zusätzliche Bandbreite von dem Masterdaemon (44m ) für den einen der Knoten (42 ) anfordert. - Gruppe von Rechnersystemen, einschließlich: einem Speicherbereichsnetzwerk, das gemeinsam benutzbare Mittel (
28 ,30 ,32 ) hat, und Rechnersystemknoten (42 ), die an das Speicherbereichsnetzwerk gekoppelt sind, um Echtzeitanwendungen auszuführen, die Anforderungen an einen Masterdaemon (44m ) ausgeben, der auf einem der Rechnersystemknoten (42 ) zur Reservierung von Bandbreite läuft, um auf die gemeinsam benutzbaren Mittel (28 ,30 ,32 ) in dem Speicherbereichsnetzwerk zuzugreifen, der Masterdaemon (44m ) plant als Antwort auf die Anforderung Zugriff auf die gemeinsam benutzbaren Mittel (28 ,30 ,32 ) in dem Speicherbereichsnetzwerk durch Echtzeitanwendung, wenigstens ein Plan, der während des Planens durch den Masterdaemon (44m ) bestimmt wurde, wird an jeden anfordernden Knoten (42 ) verteilt, Zugriffe auf die gemeinsam benutzbaren Mittel (28 ,30 ,32 ) in dem Speicherbereichsnetzwerk durch jede Echtzeitanwendung auf jedem anfordernden Knoten (42 ) gemäß einem entsprechenden Plan, der in dem wenigstens einen Plan inbegriffen ist, sind beschränkt, eine zusätzliche Menge an Bandbreite, die nicht durch eine der Echtzeitanwendungen angefordert wurde, wird durch die Knoten (42 ) in dem Speicherbereichsnetzwerk reserviert, dadurch gekennzeichnet, dass die zusätzliche Menge an Bandbreite, die für Zugriff auf das Speicherbereichsnetzwerk reserviert ist, an Anwendungen, die auf dem einen der Knoten (42 ) ablaufen und für die keine Bandbreitenanforderung an den Masterdaemon (44m ) ausgegeben wurde, wird durch einen lokalen Daemon (44c ) auf einem der Knoten in dem Speicherbereichsnetzwerk zugeteilt, wobei das Zuteilen der zusätzlichen Menge an Bandbreite ferner ein Zuteilen von Bandbreite an wenigstens eine der Echtzeitanwendungen einschließt, für die eine Bandbreiten anforderung durch den lokalen Daemon (44c ) gewährt wurde, ohne dass es erforderlich ist, dass der lokale Daemon (44c ) zusätzliche Bandbreite von dem Masterdaemon (44m ) für den einen der Knoten (42 ) anfordert. - Rechnerlesbarer Datenträger der eine rechnerimplementierte Datenstruktur speichert, wobei die Datenstruktur, wenn alle Schritte des Verfahrens nach Anspruch 1 in Zusammenhang mit ihr ausgeführt werden, die folgenden Merkmale aufweist: eine Master-Datenbank reservierter Netzwerkbandbreite und gesamter verfügbarer Netzwerkbandbreite von Komponenten, die geeignet sind um von Echtzeitanwendungen, die in den Knoten (
42 ) in einem Speicherbereichsnetzwerk ausgeführt werden, gemeinsam benutzt zu werden, und Client-Knoten-Datenbanken, die jeweils reservierte lokale Bandbreite und gesamte lokal verfügbare Bandbreite für lokale Knotenkomponenten speichert, die von den Echtzeitanwendungen, die bei einem lokalen Knoten ausgeführt werden, gemeinsam genutzt werden, wenigstens ein Plan, der während des Planens durch den Masterdaemon (44m ) bei jedem anfordernden Knoten (42 ) bestimmt wurde, beschränkte Zugriffe auf die Mittel (28 ,30 ,32 ) in dem Speicherbereichsnetzwerk durch jede Echtzeitanwendung auf jedem anfordernden Knoten (42 ) gemäß einem entsprechenden Plan, der in dem wenigstens einen Plan inbegriffen ist, Reservierung einer zusätzliche Menge an Bandbreite, die nicht durch eine der Echtzeitanwendungen durch die Knoten (42 ) in dem Speicherbereichsnetzwerk angefordert wurde, dadurch gekennzeichnet, dass die zusätzliche Menge an Bandbreite, die für Zugriff auf das Speicherbereichsnetzwerk reserviert ist, an Anwendungen, die auf einem der Knoten (42 ) in dem Speicherbereichsnetzwerk ablaufen und für die keine Bandbreitenanforderung an den Masterdaemon (44m ) ausgegeben wurde, wird durch einen lokalen Daemon (44c ) auf dem einen der Knoten in dem Speicherbereichsnetzwerk zugeteilt, wobei das Zuteilen der zusätzlichen Menge an Bandbreite ferner ein Zuteilen von Bandbreite an wenigstens eine der Echtzeitanwendungen einschließt, für die eine Bandbreitenanforderung durch den lokalen Daemon (44c ) gewährt wurde, ohne dass es erforderlich ist, dass der lokale Daemon (44c ) zusätzliche Bandbreite von dem Masterdaemon (44m ) für den einen der Knoten (42 ) anfordert.
Applications Claiming Priority (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US37894102P | 2002-05-10 | 2002-05-10 | |
| US378941P | 2002-05-10 | ||
| PCT/US2003/014637 WO2003096190A1 (en) | 2002-05-10 | 2003-05-09 | Real-time storage area network |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| DE60316141D1 DE60316141D1 (de) | 2007-10-18 |
| DE60316141T2 true DE60316141T2 (de) | 2008-05-29 |
Family
ID=29420456
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| DE60316141T Expired - Lifetime DE60316141T2 (de) | 2002-05-10 | 2003-05-09 | Echtzeit-speicherbereichsnetzwerk |
Country Status (5)
| Country | Link |
|---|---|
| US (1) | US7818424B2 (de) |
| EP (1) | EP1504343B1 (de) |
| JP (1) | JP2005525638A (de) |
| DE (1) | DE60316141T2 (de) |
| WO (1) | WO2003096190A1 (de) |
Families Citing this family (33)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US8589499B2 (en) | 2002-05-10 | 2013-11-19 | Silicon Graphics International Corp. | Real-time storage area network |
| US7688733B1 (en) * | 2003-08-04 | 2010-03-30 | Sprint Communications Company L.P. | System and method for bandwidth selection in a communication network |
| US7890629B2 (en) | 2004-03-13 | 2011-02-15 | Adaptive Computing Enterprises, Inc. | System and method of providing reservation masks within a compute environment |
| US8782654B2 (en) | 2004-03-13 | 2014-07-15 | Adaptive Computing Enterprises, Inc. | Co-allocating a reservation spanning different compute resources types |
| CA2558892A1 (en) | 2004-03-13 | 2005-09-29 | Cluster Resources, Inc. | System and method for a self-optimizing reservation in time of compute resources |
| CA2559603A1 (en) | 2004-03-13 | 2005-09-29 | Cluster Resources, Inc. | System and method for providing advanced reservations in a compute environment |
| CA2831359A1 (en) | 2004-03-13 | 2005-09-29 | Adaptive Computing Enterprises, Inc. | System and method of co-allocating a reservation spanning different compute resources types |
| US20070266388A1 (en) | 2004-06-18 | 2007-11-15 | Cluster Resources, Inc. | System and method for providing advanced reservations in a compute environment |
| US7590775B2 (en) * | 2004-08-06 | 2009-09-15 | Andrew Joseph Alexander Gildfind | Method for empirically determining a qualified bandwidth of file storage for a shared filed system |
| US8176490B1 (en) | 2004-08-20 | 2012-05-08 | Adaptive Computing Enterprises, Inc. | System and method of interfacing a workload manager and scheduler with an identity manager |
| CA2827035A1 (en) | 2004-11-08 | 2006-05-18 | Adaptive Computing Enterprises, Inc. | System and method of providing system jobs within a compute environment |
| US8214461B1 (en) | 2004-11-23 | 2012-07-03 | Hewlett-Packard Development Company, L.P. | Method of processing request by server computer system |
| US7644410B1 (en) * | 2004-11-23 | 2010-01-05 | Hewlett-Packard Development Company, L.P. | Resource management for shared computing environment |
| US7996455B2 (en) | 2005-06-17 | 2011-08-09 | Adaptive Computing Enterprises, Inc. | System and method for providing dynamic roll-back reservations in time |
| US8863143B2 (en) | 2006-03-16 | 2014-10-14 | Adaptive Computing Enterprises, Inc. | System and method for managing a hybrid compute environment |
| ES2666563T3 (es) | 2005-03-16 | 2018-05-07 | Iii Holdings 12, Llc | Transferencia automática de carga a un centro bajo demanda |
| US9231886B2 (en) | 2005-03-16 | 2016-01-05 | Adaptive Computing Enterprises, Inc. | Simple integration of an on-demand compute environment |
| EP1872249B1 (de) | 2005-04-07 | 2016-12-07 | Adaptive Computing Enterprises, Inc. | Zugang auf anfrage zu computerressourcen |
| US20070130344A1 (en) * | 2005-11-14 | 2007-06-07 | Pepper Timothy C | Using load balancing to assign paths to hosts in a network |
| US7953890B1 (en) * | 2006-01-27 | 2011-05-31 | Symantec Operating Corporation | System and method for switching to a new coordinator resource |
| US8041773B2 (en) | 2007-09-24 | 2011-10-18 | The Research Foundation Of State University Of New York | Automatic clustering for self-organizing grids |
| JP5013099B2 (ja) * | 2007-12-14 | 2012-08-29 | 日本電気株式会社 | ディスク帯域幅算出システム、方法、及びプログラム |
| US8527238B2 (en) * | 2008-09-30 | 2013-09-03 | Microsoft Corporation | Storage input/output utilization associated with a software application |
| JP5511262B2 (ja) * | 2009-08-20 | 2014-06-04 | 三菱電機株式会社 | 情報処理システム及びプログラム |
| US10877695B2 (en) | 2009-10-30 | 2020-12-29 | Iii Holdings 2, Llc | Memcached server functionality in a cluster of data processing nodes |
| US11720290B2 (en) | 2009-10-30 | 2023-08-08 | Iii Holdings 2, Llc | Memcached server functionality in a cluster of data processing nodes |
| US12401911B2 (en) | 2014-11-07 | 2025-08-26 | Duelight Llc | Systems and methods for generating a high-dynamic range (HDR) pixel stream |
| US12401912B2 (en) | 2014-11-17 | 2025-08-26 | Duelight Llc | System and method for generating a digital image |
| US9998935B2 (en) | 2014-11-18 | 2018-06-12 | Duelight Llc | System and method for sharing data based on a combined bandwidth consumption |
| US12445736B2 (en) | 2015-05-01 | 2025-10-14 | Duelight Llc | Systems and methods for generating a digital image |
| CN110147334B (zh) * | 2019-05-08 | 2021-10-08 | 北京百度网讯科技有限公司 | 一种编辑内容的存储方法及终端 |
| US12026382B2 (en) | 2021-10-29 | 2024-07-02 | Pure Storage, Inc. | Storage path routing in a container system |
| US12340103B2 (en) | 2021-10-29 | 2025-06-24 | Pure Storage, Inc. | Storage operation routing in a container system |
Family Cites Families (7)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5907683A (en) * | 1996-12-02 | 1999-05-25 | International Business Machines Corporation | System for maintaining a quality of service in a multimedia datastream system by inhibiting blocking of real-time writes to a multimedia file system |
| US6310886B1 (en) | 1997-08-28 | 2001-10-30 | Tivo, Inc. | Method and apparatus implementing a multimedia digital network |
| US6449267B1 (en) * | 1999-02-24 | 2002-09-10 | Hughes Electronics Corporation | Method and apparatus for medium access control from integrated services packet-switched satellite networks |
| WO2000072157A1 (en) | 1999-05-24 | 2000-11-30 | Sony Electronics Inc. | Architecture, system and method for scheduling networked resources using repeat-time sequence data |
| US6977927B1 (en) | 2000-09-18 | 2005-12-20 | Hewlett-Packard Development Company, L.P. | Method and system of allocating storage resources in a storage area network |
| JP4478321B2 (ja) * | 2000-11-27 | 2010-06-09 | 富士通株式会社 | ストレージシステム |
| US6996670B2 (en) * | 2001-10-05 | 2006-02-07 | International Business Machines Corporation | Storage area network methods and apparatus with file system extension |
-
2003
- 2003-05-09 EP EP03733979A patent/EP1504343B1/de not_active Expired - Lifetime
- 2003-05-09 DE DE60316141T patent/DE60316141T2/de not_active Expired - Lifetime
- 2003-05-09 JP JP2004504116A patent/JP2005525638A/ja active Pending
- 2003-05-09 US US10/434,340 patent/US7818424B2/en not_active Expired - Fee Related
- 2003-05-09 WO PCT/US2003/014637 patent/WO2003096190A1/en not_active Ceased
Also Published As
| Publication number | Publication date |
|---|---|
| WO2003096190A1 (en) | 2003-11-20 |
| EP1504343B1 (de) | 2007-09-05 |
| US20030212792A1 (en) | 2003-11-13 |
| US7818424B2 (en) | 2010-10-19 |
| DE60316141D1 (de) | 2007-10-18 |
| JP2005525638A (ja) | 2005-08-25 |
| EP1504343A1 (de) | 2005-02-09 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| DE60316141T2 (de) | Echtzeit-speicherbereichsnetzwerk | |
| DE69514176T2 (de) | Online-Setzen von Videodateien in Festplatten in einer Serverumgebung | |
| DE69611808T2 (de) | Planungsverfahren für Videos in einem Video-on-Demand-System und Video-on-Demand-System geeignet zur Ausführung dieses Verfahrens | |
| DE69509433T2 (de) | Staffelstabübergabe-Optimierungsschema für Belastungsausgleich/Konfigurationsplanung in einem Video-auf-Anfrage-Rechnersystem | |
| DE69030340T2 (de) | Makler für die Auswahl von Rechnernetzwerkservern | |
| DE112010004931B4 (de) | Mehrphasige Wiederherstellung von Dateisystemen mit Selektiver Bedarfsweiser Verfügbarkeit von Daten | |
| DE60000471T2 (de) | Intelligenter datenspeicher-verwalter | |
| DE69522046T2 (de) | Verfahren zur hierarchischen Betriebsmittelverwaltung | |
| DE69403192T2 (de) | Vorrichtung und verfahren zur datensicherung von speichereinheiten in einem rechnernetzwerk | |
| DE68927375T2 (de) | Arbitrierung von Übertragungsanforderungen in einem Multiprozessor-Rechnersystem | |
| DE60123396T2 (de) | Diskzuordnungssystem mit umordnung einer begrenzten anzahl von anforderungen | |
| DE69433047T2 (de) | Verfahren und Anordnung zur Zuteilung von Systembetriebsmitteln, um die Dienstqualität zu sichern | |
| DE60016283T2 (de) | Arbeitsbelastungsverwaltung in einer rechnerumgebung | |
| DE69523386T2 (de) | Pufferung für Lastausgleichung in auf-Aufrage-Video-Server | |
| DE69737904T2 (de) | System und Verfahren zur Bearbeitung von Multimedia-Datenströmen in gemeinsamen Ringarchitektur-Multimedia-Teilsystemclustern | |
| DE19607515B4 (de) | Computer mit Prozessverwalter | |
| DE69328804T2 (de) | Verteilung von Übertragungsverbindungen über mehrere Dienstzugriffspunkte in einem Kommunikationsnetz | |
| DE69227741T2 (de) | System und Verfahren zur Aufrüstung von Computer-Hardware und Software | |
| DE102008015185A1 (de) | Hierarchisches Speichersystem mit vorausschauender Datenübertragung | |
| US9386100B2 (en) | Real-time storage area network | |
| EP2137626B1 (de) | Verfahren und vorrichtung zur zugriffssteuerung mehrerer applikationen | |
| DE102012215436A1 (de) | Optimierung der Verwendung eines gebündelten, an ein Netzwerk angeschlossenen Speichers (clustered network attached storage (NAS)) | |
| DE10062063A1 (de) | Verfahren, System, Programm und Datenstruktur zur Steuerung einer Warteschlange von Anforderungen unterschiedlicher Priorität | |
| DE69619531T2 (de) | Dynamischer lastausgleich | |
| DE10234138A1 (de) | Verwalten einer Speicherkonkurrenz bei automatisierten Speichersystemen |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| 8364 | No opposition during term of opposition |