DE69800808T2 - Redundantes, verteiltes Netzwerksystem - Google Patents
Redundantes, verteiltes NetzwerksystemInfo
- Publication number
- DE69800808T2 DE69800808T2 DE69800808T DE69800808T DE69800808T2 DE 69800808 T2 DE69800808 T2 DE 69800808T2 DE 69800808 T DE69800808 T DE 69800808T DE 69800808 T DE69800808 T DE 69800808T DE 69800808 T2 DE69800808 T2 DE 69800808T2
- Authority
- DE
- Germany
- Prior art keywords
- nodes
- node
- information
- network
- data
- 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
- 238000004891 communication Methods 0.000 claims abstract description 77
- 238000000034 method Methods 0.000 claims description 40
- 230000008569 process Effects 0.000 claims description 30
- 239000011159 matrix material Substances 0.000 claims description 23
- 230000036541 health Effects 0.000 claims description 12
- 238000001514 detection method Methods 0.000 claims description 9
- 238000012544 monitoring process Methods 0.000 claims description 7
- 230000008859 change Effects 0.000 claims description 4
- 238000012937 correction Methods 0.000 claims description 4
- 238000013500 data storage Methods 0.000 claims description 4
- 238000013507 mapping Methods 0.000 claims 1
- 238000012217 deletion Methods 0.000 description 6
- 230000037430 deletion Effects 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 5
- 238000012545 processing Methods 0.000 description 5
- 230000007704 transition Effects 0.000 description 5
- 230000009471 action Effects 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 238000002955 isolation Methods 0.000 description 4
- 230000008901 benefit Effects 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 230000015572 biosynthetic process Effects 0.000 description 2
- 125000004122 cyclic group Chemical group 0.000 description 2
- 230000001419 dependent effect Effects 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000003862 health status Effects 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 230000001960 triggered effect Effects 0.000 description 2
- 230000015556 catabolic process Effects 0.000 description 1
- 238000012790 confirmation Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000012856 packing Methods 0.000 description 1
- 230000008439 repair process Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1076—Parity data used in redundant arrays of independent storages, e.g. in RAID systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2211/00—Indexing scheme relating to details of data-processing equipment not covered by groups G06F3/00 - G06F13/00
- G06F2211/10—Indexing scheme relating to G06F11/10
- G06F2211/1002—Indexing scheme relating to G06F11/1076
- G06F2211/1028—Distributed, i.e. distributed RAID systems with parity
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer And Data Communications (AREA)
- Maintenance And Management Of Digital Transmission (AREA)
- Multi Processors (AREA)
- Hardware Redundancy (AREA)
Description
- Diese Anmeldung beschreibt eine zuverlässige Matrix aus verteilten Rechenknoten, die eine redundante Kommunikation und Speicherung von Informationen beinhaltet, indem eine robuste Kommunikationstechnik und verteilte Lese- und Schreiboperationen geschaffen werden. Das System kann außerdem die Erfassung eines Zustands, der den Bedarf an Redundanz angibt, und als Reaktion auf den Zustand die Rekonfiguration, um den Zustand auszugleichen, anwenden.
- Die Datenverarbeitung und -speicherung in einer verteilten Umgebung enthält ein großes Potential zur Nutzung der vorhandenen Hardware und Software. Ein solches System wäre als verteilter und hochverfügbarer Speicherserver einsetzbar. Mögliche Anwendungen umfassen den Einsatz als Multimedia-Server, Web-Server und Datenbankserver. Noch allgemeiner kann ein System dieses Typs für jede Anwendung eingesetzt werden, in der zwischen verschiedenen Orten Informationen verteilt werden müssen.
- Jedoch besteht die Herausforderung in der richtigen Kombination von Vermittlung, Überwachung und Betrieb, um, ohne die Kosten übermäßig zu erhöhen, Zuverlässigkeit zu schaffen.
- Wie eine redundante Speicherung, die bestimmte Fehler kompensieren kann, zu bewerkstelligen ist, ist bekannt. Ein Beispiel eines solchen Systems ist die sogenannte zuverlässige Matrix unabhängiger Platten oder RAlD (reliable array of independent disks). Zwei Beispiele für ein RAlD-System finden sich in den US-Patenten Nr. 5.579.475 und Nr. 5.412.661. Diese Systeme schaffen eine redundante Datenspeicherung, so daß ein Fehler irgendeiner Platte des Systems durch redundante Daten anderswo im System ausgeglichen wird.
- Es sind Kommunikationssysteme bekannt, in denen jeder Computer im System (Knoten) mit den anderen Knoten verbunden ist. Ein Beispiel ist Ethernet, das ein busgestütztes Protokoll ist. Die Rechenknoten kommunizieren über den Bus. Ein Server speichert üblicherweise sämtliche Daten, die allen Knoten gemeinsam sind. Die Knoten können außerdem lokale Datenspeicher haben.
- Jedes einzelne Netzsystem umfaßt eine einzige Ethernet- Verbindung zwischen den Knoten und dem Server. Daher können die Knoten, wenn in der Verbindung oder in der Kommunikation mit dem Server oder im Server selbst ein Fehler auftritt, keine konventionellen Datenzugriffsdienste vom Server erhalten. Die Knoten sind dann gezwungen, im selbständigen Modus zu arbeiten. Jene Knoten können dann nur unter Verwendung von lokal verfügbaren Daten arbeiten.
- Es sind Server-basierte Systeme bekannt, die die Zuverlässigkeit eines solchen Systems erhöhen sollen. Eines dieser Systeme verwendet eine Dual-Bus-Verbindung. Jeder Rechenknoten ist mit zwei Ethernet-Anschlüssen versehen und verwendet zwei getrennte Ethernet-Karten für zwei getrennte Busse zu zwei getrennten Servern. Dies entspricht effektiv zwei getrennten Systemen, wovon jedes vollständig mit Hardware und Software ausgestattet ist.
- Wenn ein Verbindungs- oder ein Busfehler auftritt, kann der Normalbetrieb über den anderen Bus fortgesetzt werden. Ein System mit zwei redundanten Bussen und zwei redundanten Servern wird Dual-Bus-Dual-Server-System genannt. Ein solches Dual-Bus-Dual-Server-System toleriert jeden einfachen Netzfehler. Jedoch erfordern solche Systeme das Duplizieren sämtlicher Informationen auf jedem Server.
- Die Bemühungen zur Schaffung von Systemredundanz umfassen das in dem veröffentlichten Dokument EP-A-0 366 935 mit dem Titel "High Speed Switching System with Flexible Protocol Capability" beschriebene System. Dieses Dokument beschreibt ein schnelles Vermittlungssystem, das Vermittlungsebenen umfaßt und den Betrieb fortsetzt, selbst wenn eine Vermittlungsebene oder -verbindung fehlerhaft ist, indem die übrigen Vermittlungsebenen verwendet werden. Die Vermittlungsebenen sind verschiedenen Typs und dienen verschiedenen Zwecken. Überdies befaßt sich dieses Dokument nicht mit der Systemrekonfiguration und der Datenrekonstruktion.
- Das in dieser Anmeldung beschriebene System nutzt die vorhandene Hardware und Software unter Verwendung von Arbeitsplatzrechnern mit relativ geringer Leistung wie etwa Personalcomputern. Diese Personalcomputer sind über eine redundante Verbindung verbunden. Die Verbindung kann die vorhandene Hardware, z. B. lokale Netze und/oder Weitbereichsnetze, nutzen.
- Die vorliegende Anmeldung beschreibt ein redundantes, verteiltes Netzsystem mit Server, das aus einer Matrix von verteilten Rechenknoten gebildet ist, in Übereinstimmung mit den Ansprüchen, die im Anschluß folgen. Jeder Rechenknoten speichert Informationen in einer besonderen redundanten Weise und verfährt nach einem Protokoll, das eine robuste Kommunikation sicherstellt.
- Das System besitzt eine besondere Architektur und Arbeitsweise, die im Netz eine Fehlertoleranz ermöglicht, vorzugsweise derart, daß eine bestimmte Anzahl von Netzfehlern den Betrieb der übrigen Knoten des Systems nicht beeinflussen. Dennoch muß kein einziger der Knoten alle Informationen doppelt speichern.
- Das Server System umfaßt die redundante Kommunikation und Speicherung. Die redundante Speicherung von Informationen erfolgt durch Anwendung eines speziellen redundanten Codierschemas.
- Das Serversystem führt außerdem eine verteilte Erfassungsroutine aus, die Systemfunktionszustände erfaßt. Ein Systemfunktionszustand ist beispielsweise der Netzfehler. Der Netzfehler kann einen Kommunikationsfehler wie etwa eine unterbrochene Leitung oder einen nicht betriebsbereiten Knoten oder nicht betriebsbereite Schaltvorrichtung beinhalten. Allgemeiner noch kann der Systemfunktionszustand jeder Zustand sein, der eine Netzoperation verhindert. Der Systemfunktionszustand kann durch die Systemredundanz kompensiert werden.
- Das Serversystem führt vorzugsweise einen Netzüberwachungsprozeß aus, der den Systemfunktionszustand erfaßt. Ein Logiknetzprozeß rekonfiguriert das Netz, um die Redundanz zur Kompensierung des Systemfunktionszustands zu nutzen.
- Das System verwendet außerdem ein verteiltes Lese- und Schreibsystem, das bei Auftreten eines Systemfehlers eine alternative Operation ermöglicht. Diese alternative Operation nutzt die Systemredundanz.
- Die Aufgaben, Vorteile und Merkmale dieser Erfindung werden aus der folgenden genauen Beschreibung leichter verständlich, wenn sie im Zusammenhang mit der begleitenden Zeichnung gelesen wird, worin:
- Fig. 1 einen grundlegenden Blockschaltplan des einfachsten Netzbeispiels zeigt;
- Fig. 2 ein umfangreicheres Beispiel mit mehr Schaltern und mehr Rechenknoten zeigt;
- Fig. 3 ein nochmals weiteres zuverlässiges Netzbeispiel zeigt;
- Fig. 4 ein fehlertolerantes System zeigt;
- Fig. 5 ein Beispiel dafür zeigt, wie das System zur Videospeicherung verwendet werden könnte;
- Fig. 6 zeigt, wie ein solches System Verbindungsfehler tolerieren könnte;
- Fig. 7 einen Blockschaltplan einer Software-Architektur für zuverlässige Kommunikationstechnik zeigt;
- Fig. 8 einen grundlegenden Software-Ablaufplan des Netzüberwachungsprozesses zeigt;
- Fig. 9 eine Konnektivitätsprotokollzustands-Maschine für den Netzüberwachungsprozeß zeigt;
- Fig. 10A die Bildung der Datenstruktur für Konnektivität zeigt;
- Fig. 10B einen Ablaufplan der Verbindungszustand-Operation zeigt;
- Fig. 11 einen Ablaufplan des RUDP-Prozesses zeigt;
- Fig. 12 eine mögliche Anordnung der Rechenknoten und Schaltelemente zeigt;
- Fig. 13 eine erweiterte Anordnung der Rechenknoten und Schaltelemente zeigt;
- Fig. 14A bis 14E die Berechnung von Paritätszeilen im X-Code für einen 5 · 5-Matrixcode zeigt; und
- Fig. 15 das grundlegende Layout des X-Code-Systems zeigt.
- Fig. 1 zeigt eine erste, grundlegendste Ausführungsform eines zuverlässigen, redundanten, verteilten Netzserversystems. Das System ist aus Rechenknoten (Knoten) und dem Netz, das die Vermittlung zwischen den Knoten ausführt, gebildet.
- Das Netz von Fig. 1 beinhaltet sowohl die Kommunikations- als auch die Speicherredundanz zwischen den Knoten und dem Netz. Diese Redundanz kann verwendet werden, um eine definierte Anzahl von Systemfunktionszuständen zu kompensieren. Die Systemfunktionszustände, die durch die Redundanz kompensiert werden, können Fehler im Netz (Kommunikationsfehler), Fehler bei der Speicherung (Speicherfehler), wobei der Speicher aus Platten, nichtflüchtigen Speichern oder einer anderen Art von Speicher, der Daten speichert, bestehen kann, oder jegliche Art von Fehler, der ein unerwünschtes Ergebnis erbringt, umfassen.
- Das verteilte Serversystem umfaßt außerdem einen Erfassungsprozeß. Der Erfassungsprozeß wirkt in jedem Knoten, um die Verbindung mit anderen Knoten im Netz zu beobachten. Jeder Knoten sieht das Netz gemäß demselben Protokoll unter Verwendung eines Pools von Hinweisen über den Zustand des Netzes. Dieser Erfassungsprozeß garantiert, daß beide Seiten dieselbe Historie des Netzes sehen. Obwohl der Erfassungsprozeß verteilt ist, hält er durch Verwendung eines Token-Durchlaufsystem die Netzhistorie der Knoten des Netzes innerhalb einer gewünschten Grenze konsistent. Die Tokens begrenzen den Freiheitsgrad der zwei Seiten, indem sie nur eine spezifizierte Anzahl von Aktionen ohne Bestätigung, daß die andere Seite eine Aktion unternommen hat, zulassen.
- Der Erfassungsprozeß läuft für die anderen Programme und Benutzeranwendungen unsichtbar ab. Die bevorzugte Ausführung des Erfassungsprozesses verwendet einen Netzüberwachungsprozeß (NETM), der zum Sammeln von Informationen über das überwachte System dient. Der NETM-Prozeß bestimmt vorzugsweise, ob der andere Knoten korrekt arbeitet. Allgemeiner bestimmt der NETM-Prozeß jedoch einen Parameter, der sich auf die Brauchbarkeit bezieht. Dies könnte, wie im folgenden, umfassen, ob das System hochgefahren oder heruntergefahren ist. Es könnte außerdem eine Angabe darüber einschließen, wie stark das System belastet ist, wobei diese Angabe für das Ausgleichen der Last verwendet werden könnte.
- Das System von Fig. 1 veranschaulicht die Merkmale der Erfindung unter Verwendung von vier Rechenknoten (Knoten) 100, 102, 104 und 106, die über zwei Schalter 110 und 112 verbunden sind. Jeder Knoten kann mit jedem anderen Knoten über zwei verschiedene und somit redundante Wege kommunizieren. Beispielsweise kann der Knoten 100 über die Verbindung 120 zwischen dem Knoten 100 und dem Schalter 110 mit dem Knoten 106 kommunizieren. Es existiert ein völlig getrennter Weg, der eine redundante Verbindung über den Weg 122 vom Schalter 110 zum Knoten 106 ermöglicht. Der Knoten 100 kann mit dem Knoten 106 alternativ unter Verwendung der Verbindung 124 vom Knoten 100 zum Schalter 112 oder unter Verwendung der Verbindung 126 vom Schalter 112 zum Knoten 106 kommunizieren. Jeder Knoten ist somit mit jedem anderen Knoten über wenigstens zwei völlig getrennte und redundante Verbindungswege verbunden.
- Diese Fähigkeit zur redundanten Kommunikation ermöglicht im Fall, in dem vorgezogen wird, eine Kommunikationsverbindung nicht zu nutzen, die Wahl eines anderen Weges. Beispielsweise ermöglicht ein Ausfall des Schalters 110 oder eines Teils der Leitung von 120 und/oder 122 dennoch eine Kommunikation über die Leitungen 124 und 126, und zwar über den Schalter 112.
- Die Informationen werden ebenfalls in redundanter Weise gespeichert, weshalb das Wiederauffinden sämtlicher Informationen, selbst wenn ein Teil des Netzes fehlerhaft ist oder aus anderem Grund, z. B. aufgrund hohen Verkehrs, nicht verfügbar ist, möglicht ist. Der redundante Speichermechanismus ist in Fig. 1 als Element 140 gezeigt. Die Daten im redundanten Speicher 140 werden vorzugsweise gespeichert, damit der Ausfall irgendeines der n - x Knoten, wobei n die Gesamtzahl von Knoten im System ist und x die gewählte Nummer ist, die Fähigkeit, sämtliche gewünschten Daten aus dem System zu erhalten, nicht berührt. Dies erfolgt vorzugsweise dadurch, daß die Daten gemäß einem MDS-Codiersystem (MDS = maximum distance separable = maximaler separabler Abstand), das in jedem der Knoten gespeicherte Redundanzinformationen enthält, gespeichert werden. Diese Redundanzinformationen können zusammen mit anderen Knotendaten verwendet werden, um für jeden ausgefallenen Knoten die Daten zu rekonstruieren.
- Wenn der Erfassungsprozeß einen unerwünschten Systemfunktionszustand wie etwa einen nicht betriebsbereiten Knoten oder eine unterbrochene Kommunikationsverbindung feststellt, wird ein Rekonfigurationsprozeß 150 ausgeführt. Der Rekonfigurationsprozeß 150 ist gegen Fehler aufgrund seiner Fähigkeit, wenigstens entweder die Speicherredundanz oder die Kommunikationsredundanz zu verwenden, robust. Der Rekonfigurationsprozeß ermöglicht den Betrieb des Systems bei Auftreten eines spezifizierten Fehlers. Dazu ist jedoch keinerlei dediziertes Schalten erforderlich. Beispielsweise kann ein Weg zwischen den Knoten 100 und 106 über den Weg 1 via 120/110/122 oder über den Weg 2 via 124/112/126 eingerichtet werden. Unter Normalbetrieb würde die Kommunikation alternativ über den Weg 1, dann den Weg 2, dann den Weg 1 usw. erfolgen. Wenn jedoch im Weg 1 ein Fehler oder eine Überlast auftritt, erfolgen sämtliche Kommunikationen über den Weg 2. Dies ist eine Rekonfiguration in dem Sinn, daß die Kommunikationen geeignet gerichtet werden. Selbst wenn die Hälfte der Kommunikationen ohnehin über den Weg 2 geleitet wurden, veranlaßt die Rekonfiguration, daß sämtliche Kommunikationen über den Weg 2 erfolgen.
- Fig. 1 veranschaulicht somit die grundlegenden Merkmale des verteilten Servers, wie sie in der vorliegenden Spezifikation beschrieben sind. Diese Merkmale umfassen die Redundanz der Kommunikation, die Redundanz der Speicherung, die Erfassung eines Ereignisses, das durch die Redundanz kompensiert werden kann, und die Rekonfiguration, zur Verwendung der Redundanz für die Kompensation des Ereignisses.
- Das System von Fig. 1 zeigt eine einfache redundante Verbindung von vier Knoten 100 bis 106 und zwei Schaltern 110 und 112. Die Knoten sind vorzugsweise eigenständige Arbeitsplatzrechner wie etwa Personal Computer ("PC") wovon jeder zwei PCI-Bus-gestützte Kommunikationskarten enthält. Die Kommunikationskarten kommunizieren über die Schalter mit ähnlichen Kommunikationskarten in den anderen PC. Das Protokoll der Kommunikationskarten könnte irgendein im Handel erhältlicher Typ wie etwa Ethernet oder dergleichen sein. Das bevorzugte System verwendet als Schaltknoten 200, wie sie in Fig. 2 gezeigt sind, Myrinet-Schalter. Myrinet-Schalter sind im Handel erhältlich und außerdem in Boden u. a., "Myrinet: a gigabit per second local area network", IEEE Micro 1995 beschrieben.
- Die spezielle, von der vorliegenden Erfindung verwendete Knotenverbindung schafft eine Kommunikationsredundanz, die die Fähigkeit zum normalen Arbeiten bei Auftreten von Netzkommunikationsfehlern erhöht. Diese Netzkommunikationsfehler umfassen eine fehlgeschlagene Kommunikation einschließlich Schaltfehlern, unterbrochenen Verbindungen oder Schalterdefekten. Die Verbindungen werden in der Weise hergestellt, die die Möglichkeit minimiert, daß irgendein Kommunikationsfehler oder eine Kombination aus Kommunikationsfehlern einen Kommunikationsabbruch oder die Isolation von Knoten hervorrufen könnte. Die Wichtigkeit einer korrekten Verbindung wird im folgenden aufgezeigt.
- Fig. 2 zeigt ein System, das unter Verwendung von vier Schaltern 220 bis 226 acht Rechenknoten 200 bis 214 verbindet. Jeder Rechenknoten umfaßt zwei mögliche Verbindungswege. Dies schafft eine redundante Vermittlung. Im System von Fig. 2 können Kommunikationsfehler jedoch zu einem unerwünschten "Isolieren" von Gruppen von Rechenknoten führen. Diese isolierten Gruppen von Rechenknoten werden in dem Sinn isoliert, daß sie nicht mehr in der Lage sind, mit sämtlichen anderen arbeitenden Knoten des verteilten Servers zu kommunizieren.
- Wenn beispielsweise beide Schalter 224 und 226 ausfallen würden, wären die Rechenknoten 200 bis 206 von den Rechenknoten 208 bis 214 völlig isoliert. Dies würde ein isoliertes System hervorrufen, daß verwendbar, jedoch wenig wünschenswert wäre.
- Als Beispiel sei ein Fall angenommen, in dem der verwendete MDS-Code sechs von acht Knoten zur Rekonstruktion von Daten erforderte. Wenn das System, wie oben erläutert wurde, isoliert wäre, würde nur die Hälfte der Knoten kommunizieren können. Da es vier kommunizierfähige Knoten gäbe, würde dieser bestimmte Fehler verhindern, daß die Daten rekonstruiert werden könnten.
- Die Konnektivitätsstruktur von Fig. 3 wird bevorzugt. Dieses System mit zehn Knoten und vier Schaltern besitzt im Fall von Kommunikationsfehlern eine verbesserte Verbindung. Die Verbindungsschnittstelle ist so beschaffen, daß der Ausfall von einem von zwei Schaltern schlimmstenfalls zwei Rechenknoten berührt. Siehe als Beispiel Fig. 4, die die Situation zeigt, in der die Schalter 320 und 326 ausgefallen sind. Die fetten Linien zeigen diejenigen Kommunikationsleitungen, die durch diesen Fehler berührt sind. Nur die Rechenknoten 304 und 312 werden von diesem Zwei-Schalter-Fehler isoliert. Alle anderen Knoten bleiben völlig betriebsfähig, wobei kein Knoten isoliert wird.
- Die Fehlertoleranz wird größtenteils durch die spezifische Verbindung von Schaltern und Knoten erhalten. Als oben angegebenes Beispiel besitzt das System von Fig. 2 einen möglichen Nachteil darin, daß zugelassen wird, zwei Hälften der Rechenknoten zu isolieren. Das isolierte System umfaßt die Rechenknoten 200 bis 206, die kommunizieren können, jedoch von den Gruppen von Knoten 208 bis 214 isoliert sind.
- Ein weiteres Beispiel für dieses Problem ist in Fig. 12 gezeigt, die eine mögliche Art der Verbindung einer Anzahl von Rechenknoten unter Verwendung von Schaltknoten zeigt. Jeder Schaltknoten N ist zwischen zwei benachbarten Rechenknoten C angeordnet. Dies ist eine anwendbare, jedoch nicht bevorzugte Konfiguration. Es sei angemerkt, daß, falls die Rechenknoten 1200 und 1202 gleichzeitig fehlerhaft werden, die Kommunikationsfähigkeit des Systems entlang der gepunkteten Linien, die in Fig. 12 gezeigt sind, aufgeteilt wird. Dies isoliert effektiv eine Hälfte des Systems 1204 von der anderen Hälfte des Systems 1206.
- Eine Aufgabe der in dieser Spezifikation beschriebenen Verbindung besteht darin, diese mögliche Art der Isolation, die durch zwei Kommunikationsfehler bewirkt wird, zu verhindern. Das bevorzugte System beschreibt das Verbinden der Knoten in einer Weise, die so wenig lokal wie möglich ist. Dies ist dem System von Fig. 12 gleichzusetzen, bei dem jeder Schaltknoten mit den zwei nächsten Rechenknoten verbunden ist. Die Erfinder stellten fest, daß das nicht offensichtliche System des Verbindens zwischen nichtlokalen Schaltern den höchsten Grad an Fehlertoleranz erzeugt.
- Fig. 13 zeigt eine solche Vorrichtung. Jeder gezeigte Knoten ist mit zwei Schaltern verbunden. Das Diagramm zeigt, daß eine Verbindung zwischen jeweils zwei am weitesten entfernten Schaltern besteht. Wenn das Diagramm von Schaltern und Knoten wie in Fig. 13 gezeigt ausgelegt ist, zeigt dieses die Verbindungen als Durchmesser, die zwei der Schalter verbinden, die am weitesten voneinander entfernt sind. Diese Verbindung hat den Vorteil, daß das Streichen dreier beliebiger Schalter nicht zu einer Isolation der halben Einheit führen kann. Umgekehrt läßt das Aufbrechen der Einheit an zwei Stellen dennoch eine Kommunikation zwischen den meisten der Knoten zu. Selbst drei Ausfälle isolieren nur eine konstante Anzahl von Knoten - jene, die direkt betroffen sind - unabhängig von der Gesamtzahl von Knoten im System.
- Es seien beispielsweise ein Kommunikationsfehler am Ort 1310 und eine weitere Unterbrechung am Ort 1312 angenommen. Es ist offensichtlich, daß Knoten noch kommunizieren können, da der Schalter 1300 noch mit dem Schalter 1302 über den Schalter 1304 verbunden ist. Der Schalter 1300 ist außerdem über den Schalter 1308 mit dem Schalter 1306 verbunden. In gleicher Weise sind alle diese Schalter miteinander verbunden, selbst dann, wenn es eine Unterbrechung gibt. Überdies beträgt beim bevorzugten System die weiteste Verbindung von Knoten zu Knoten, die erforderlich sein könnte, ein Viertel des Weges durch das System.
- Das nichtlokale Konzept ist ebenso auf Anordnungen, die sich von einem Ring unterscheiden, anwendbar. Beispielsweise ist jede Anordnung, die als Ring visualisiert werden könnte, alternativ anwendbar.
- Das in den Fig. 1 bis 3 gezeigte bevorzugte Serversystem verwendet PC-gestützte Arbeitsplatzrechner, die über redundante Netze unter Verwendung der Myrinet-Verbindungstechnik verbunden sind. Alternativ könnten selbstverständlich andere Kommunikationstechniken wie etwa die 100-MB-Ethernet-Technik verwendet werden. Alle diesen Systeme ist die Fähigkeit zu eigen, bei Auftreten fehlerhafter Verbindungen Redundanz bewahren zu können. Das System könnte mit einer beliebigen Anzahl von Kommunikationselementen verwendet werden, obwohl die bevorzugte und offenbarte Anzahl gleich zwei ist.
- In der bevorzugten Ausführungsform von Fig. 1 speichert jeder Knoten nur einen Teil sämtlicher gegebenen gespeicherten Daten. Die gespeicherten Daten werden wieder aufgefunden, indem ein Teil sämtlicher aktuell im lokalen Knoten gespeicherten Informationen und ein Teil der Informationen von anderen Knoten verwendet wird. Eine Veranschaulichung dieses Konzepts ist in Fig. 5 gezeigt.
- Fig. 5 zeigt einen Video-Server. Der verteilte Server liefert Daten das Video ausdrücken und wie gezeigt angezeigt werden. Jeder gezeigte Rechenknoten speichert die Hälfte der gesamten Daten. Die Daten werden redundant gespeichert, so daß jedes Video-Halbbild aus den Daten des Knotens, der die Daten anfordert, rekonstruiert werden können, wenn sie mit den Daten der anderen Knoten kombiniert werden.
- Durch dieses Speicherschema kann jeder Knoten die gewünschten Informationen empfangen, so lange er nicht von allen anderen Knoten isoliert ist. Dieses Schema schafft Speicherredundanz im Fall mehrerer Fehler im verteilten Server.
- Allgemeiner jedoch ermöglicht das hier definierte bevorzugte Schema die Rekonstruktion von Daten von einer Untergruppe von K arbeitenden Knoten bei einer Gesamtzahl von n Knoten. Im weiter unten angegebenen Beispiel sind K = 2 und n = 4.
- Fig. 6 zeigt, wie die übrigen Rechenknoten irgendein Element des aufgeteilten Videos im Fall eines Knotenfehler rekonstruieren können. Das bevorzugte System besitzt die Fähigkeit, zwei beliebige Kommunikationsverbindungen zu verlieren, ohne andere Kommunikationsfunktionen des Serversystems zu verlieren und ohne andere Knoten außer jenen, die von den Fehlern wirklich betroffen sind, zu beeinträchtigen.
- Das Systemmerkmal der redundanten Speicherung speichert codierte Daten kleineren Umfangs als die Hälfte der gesamten Daten in jedem Knoten. Somit werden in dieser bevorzugten Ausführungsform für jede Datei der Größe K im System mit K arbeitenden Knoten K/K dieser Datei in jedem Knoten des Servers gespeichert. Die anderen (x - 1) der Datei werden aus den anderen K - 1 arbeitenden Knoten erhalten.
- Speicherredundanz wird gemäß der bevorzugten Ausführungsform durch Aufteilen der Speicherung der Informationen auf die Knoten erreicht. Wie oben erklärt wurde, speichert das bevorzugte System für jedes Informationselement der Größe K K/x Daten (die ursprüngliche Informationsmenge) in jedem Knoten, wobei x die Anzahl von Knoten ist, die zur Rekonstruktion der Daten erforderlich ist. Jeder Knoten kann sämtliche Informationselemente rekonstruieren, indem er auf die anderen K/x der Informationen von allen anderen Knoten zugreift. Die Informationen werden vorzugsweise unter Verwendung eines MDS-Codes zur Speicherung der Informationen gespeichert. Die bevorzugte Form der Informationsspeicherung verwendet ein neuartiges, X-Code genanntes Codiersystem. Der X-Code, wie er hier beschrieben ist, ist der besondere, jedoch optimierte Code zur Speicherung jedes auf die Knoten und insbesondere auf die Platten der Knoten verteilten Informationselements.
- Am zweckmäßigsten wird lediglich ein Teil der Informationen, ein Teil der codierten Daten, in jedem Knoten gespeichert. Jeder Knoten speichert außerdem Informationen, die eine bestimmte Eigenschaft der Informationen in anderen Knoten angeben. Beispielsweise könnte diese Eigenschaft eine Prüfsumme oder Parität sein, die eine Summe der Daten in anderen Knoten angibt. Diese Informationen werden zusammen mit den Informationen in den anderen Knoten verwendet, um die Informationen in jenen anderen Knoten zu rekonstruieren.
- Wie oben beschrieben wurde, ist der verwendete bevorzugte Code der X-Code, der im folgenden näher beschrieben wird. Der X-Code ist ein MDS-NxN-Matrix-Code, wobei N vorzugsweise eine Primzahl ist. Sowohl zur Decodierung als auch zur Codierung dieses Codes werden lediglich Exklusiv- ODER-("XOR")-Verknüpfungen und zyklische Schiebeoperationen verwendet. Dies macht den X-Code bei der Codierung und Decodierung im Vergleich mit rechenintensiveren Codes wie etwa den Reed-Solomon-Codes viel schneller.
- Der X-Code besitzt einen minimalen Spaltenabstand von 3. Dies bedeutet, daß der Code sowohl Ein-Spalten-Fehler als auch Zwei-Spalten-Fehler korrigieren kann. Der X-Code besitzt die spezifische Eigenschaft, daß die Änderung einer einzelnen Informationseinheit, z. B. eines einzelnen Informationsbits oder -symbols im X-Code, stets nur zwei Paritätsbits oder -symbole beeinflußt. Somit müssen bei jeder Aktualisierung von Informationen lediglich zwei Paritätsbits oder -symbole geändert werden.
- Das X-Code-System verwendet eine Matrix, die in Fig. 15 gezeigt ist. Jede Spalte 1500 repräsentiert die Informationen in einem einzelnen Knoten, die jedem Knoten zugeordnet sind. Die Paritätssymbole sind anstatt in Spalten in Zeilen gespeichert.
- Der Code ist unter Verwendung aller Knoten des Netzes so angeordnet, daß diese zusammen eine Matrix von N x n bilden, wobei N vorzugsweise = n. Die Matrix enthält N-2 · N Informationssymbole und 2 · n Paritätssymbole.
- Fig. 14A zeigt eine exemplarische Matrix mit n = 5. Der Knotenabschnitt 1400 stellt Informationen dar, wobei jedes umrandete Element eine Informationseinheit, z. B. ein Bit, einen Sektor oder eine andere Einheit einer Platte, repräsentiert. Diese Einheiten werden in dieser Spezifikation allgemein als Symbole bezeichnet.
- Der nichtinformelle Teil 1402 repräsentiert redundante Informationen. Wie im folgenden noch erläutert wird, repräsentieren die redundanten Informationen 1402 für jede Platte, z. B. die durch eine einzelne Spalte der Matrix repräsentierte Platte Nr. 1404, die Redundanzinformationen von anderen Platten - d. h., daß die redundanten Informationen nur von anderen Platten und nicht von 1404 selbst stammen.
- Das X-Code-System bildet eine Spalte, die die Inhalte der gesamten Platte 1404 repräsentiert. Die Paritätssymbole des X-Codes werden aus zwei zusätzlichen Zeilen 1402 auf der Platte gebildet. Jede Platte besitzt somit N - 2 Informationssymbole sowie zwei Paritätssymbole. Jede Verfälschung oder Löschung eines Symbols in einer Spalte kann aus Spaltenlöschungen behoben werden.
- In der Codierprozedur sei C1j das Symbol für die i-te Zeile und j-te Spalte; dann werden die Paritätssymbole des X-Codes gemäß Gleichung 1 konstruiert:
- Cn-2,i = Ck,(i+k+2)n
- Cn-1,i = Ck,(i-k-2)n
- wobei i = 0, 1, ..., n - 1 und (x)n = X mod n.
- Dies drückt in geometrischer Form die Paritätszeilen aus, die die Prüfsumme längs der Diagonalen mit der Steigung 1 bzw. -1 repräsentieren.
- Fig. 14A zeigt, wie die erste Paritätsprüfzeile 1410 erhalten wird, wobei angenommen wird, daß die zweite Paritätsprüfzeile 1412 nicht vorkommt oder aus lauter Nullen besteht. Dies ist durch eine imaginäre Null-Zeile angedeutet. Die Prüfsummen werden über alle Diagonalen mit der Steigung -1 gebildet. In Fig. 14A werden zur Bildung der ersten Paritätsprüfzeile 1410 alle Dreiecks- formen addiert. Dies bedeutet, daß die Elemente 1414, 1416, 1418 und 1420 zur Bildung des Paritätselements 1422 addiert werden.
- Fig. 14B zeigt ein Beispiel für die Berechnung der ersten Paritätsprüfzeile für exemplarische einzelne Bits. Es sei angemerkt, daß die diagonalen Elemente 1414, 1416, 1418 und 1420 die Addition von 1 + 1 + 1 + 0 erfordert, was zur Parität 1 führt, die als Symbol 1422 gespeichert wird.
- Die Diagonalen werden in einer anschließenden Zeile fortgesetzt, bis der Rand der Matrix erreicht ist. Beispielsweise wird die Diagonalzeile 1430 mit den Elementen 1432, 1434, 1436 und 1438 fortgesetzt, indem am Anfang der nächsten Zeile wie etwa mit 1440 begonnen wird. Das Paritätssymbol 1436 entspricht einer Addition der Symbole 1432, 1434, 1438 und 1440. Fig. 14B zeigt diese Symbole, die 0 + 0 + 1 entsprechen, was 1 ergibt. Der Wert 1 wird als Symbol 1436 gespeichert.
- Die zweite Paritätsprüfzeile wird aus einer Diagonale mit der Steigung +1 gebildet. Fig. 14C zeigt diese analoge zweite Paritätszeilenberechnung, wobei Fig. 14D ein spezifisches Beispiel zeigt. Die Zeile 1440 enthält die Symbole 1442, 1444, 1446, 1448 und 1450. Das Symbol 1450 wird berechnet als 1442 + 1444 + 1448 + 1446. Fig. 14D zeigt ein konkretes Beispiel, in dem die Parität 0 aus der Summe von + 0 + 0 + 1 = 1 erhalten wird.
- Fig. 14E zeigt das komplette Codewort, das durch die Kombination aus zwei Paritätsprüfzeilen gebildet ist. Die zwei Paritätsprüfzeilen werden völlig unabhängig voneinander erhalten. Jedes Informationssymbol tritt genau einmal in jeder Paritätszeile auf. Alle Paritätssymbole hängen ausschließlich von Informationssymbolen von anderen Spalten (anderen Platten) ab. Deshalb führt eine Aktualisierung eines Informationssymbols zu einer Aktualisierung von lediglich zwei Paritätssymbolen.
- Der obenbeschriebene X-Code verwendet eine Primzahl n, die eine wirkliche diagonale Berechnung zuläßt. Wenn n keine Primzahl ist, kann jedoch ein anderer Berechnungsweg verfolgt werden. Beispielsweise kann gemäß dem X-Code jede geeignete gegebene Hülle, die sich durch alle n - 1 Platten erstreckt, verwendet werden. Alle diese Wege sind vorzugsweise parallel.
- Wie oben beschrieben wurde, besitzt der X-Code einen Spaltenabstand von 3, was die Korrektur zweier Spaltenlöschungen oder eines Spaltenfehlers ermöglicht. Eine Löschung ist dann gegeben, wenn ein Problem besteht und bekannt ist, welcher Bereich das Problem hat. Ein Fehler tritt dann auf, wenn die spezifische Quelle des Problems unbekannt ist. Die Decodieroperation kann unter ausschließlicher Anwendung der zyklischen Verschiebung und des Exklusiv-ODER verwendet werden, ohne daß finite Feldoperationen erforderlich wären.
- Die Korrektur einer Löschung kann diese Löschung einfach längs der Diagonalen mit der Steigung 1 oder -1 unter Verwendung einer der Paritätszeilen beheben.
- Es sei angenommen, daß in einer Matrix der Größe N · n zwei Spalten Löschungen sind. In diesem Fall sind die grundlegenden unbekannten Symbole der zwei Spalten die Informationssymbole in jenen Spalten. Da jede der Spalten (n - 2) Informationssymbole enthält, ist die Anzahl von unbekannten Symbolen 2 · (n - 2). Ähnlich enthält die restliche Matrix 2 · n - 2 Paritätssymbole, die sämtlichen der 2 · (n - 2) unbekannten Symbole enthalten. Daher besteht das Problem der Korrektur darin, 2 · (n - 2) Unbekannte aus 2 · (n - 2) linearen Gleichungen zu lösen. Da diese linearen Gleichungen linear unabhängig sind, sind diese linearen Gleichungen lösbar.
- Überdies können im selben Paritätssymbol keine zwei Informationssymbole dieses Codes in der gleichen Spalte auftreten. Somit besitzt jede Gleichung wenigstens zwei unbekannte Symbole. Einige Gleichungen besitzen lediglich 5 ein unbekanntes Symbol. Dadurch nimmt der Umfang der zu lösenden Gleichung stark ab. Das nach diesem System verwendete System beginnt mit irgendeiner Gleichung mit einem bekannten unbekannten Symbol. Die Lösung dieser Gleichungen ist relativ einfach. Der Prozeß wird zur Ermittlung der anderen unbekannten Lösungen fortgesetzt, bis alle Gleichungen gelöst sind.
- Es sei angenommen, daß die Spalten mit den Löschungen die i-te und die j -te Spalte sind (0 S i < j n - 1). Da jede Diagonale nur n - 1 Spalten durchquert, sind dann, wenn eine Diagonale eine Spalte der letzten Zeile schneidet, in dieser Diagonale keine Symbole jener Spalte enthalten. Dies bestimmt die Lage des Paritätssymbols, das nur ein Symbol der beiden Löschungsspalten enthält. Das Symbol kann aus der einfachen Prüfsumme längs dieses Diagonalen wiederhergestellt werden.
- Zuerst werden die Diagonalen mit der Steigung 1 betrachtet. Es sei angenommen, daß das x-te Symbol der i-ten Spalte das einzige unbekannte Symbol in einer Diagonale ist. Dann trifft diese Diagonale die j-te Spalte in der (n - 1)-ten Zeile und die erste Paritätszeile in der y-ten Spalte, d. h., daß sich die drei Punkte (x, i), (n - 1, j) und (n - 2, y) in derselben Diagonale mit der Steigung 1 befinden und die folgende Gleichung enthält:
- (n - 1) - (n - 2) j - y modn
- Da 1 ≤ j - i ≤ n - 1 und 0 ≤ j - 1 ≤ n - 1, lauten die Lösungen für x und y
- x = ((n - 1) - (j - 1))n = (n - 1) - (j - 1) Y = (j - 1)n = j - 1
- Somit ermöglicht das Paritätssymbol Cn2-,j1- die Berechnung des Symbols C(n1)-(j1), i in der i-ten Spalte. Ähnlich kann das Symbol C(ji)1-,j in der j -ten Spalte direkt aus dem Paritätssymbol Cn2-,(jl-)n hergeleitet werden.
- Symmetrisch zu den Diagonalen mit der Steigung -1 kann das Symbol C(j,1-)-i,i in der i-ten Spalte aus dem Paritätssymbol Cn1,< j+1> )n hergeleitet werden, während das Symbol C(n1-)-(j1-)j in der j-ten Spalte aus dem Paritätssymbol Cn1-, j+1 hergeleitet werden kann.
- Es sei angemerkt, daß ein Informationssymbol von den Diagonalen mit der Steigung 1 bzw. -1 genau einmal durchkreuzt wird. Wenn ein unbekanntes Symbol längs einer Diagonale mit der Steigung 1 (oder -1) gelöst wird, dann kann aus dem Paritätssymbol längs der Diagonale mit der Steigung -1 (oder 1), die das gelöste Symbol durchkreuzt, ein anderes unbekanntes Symbol in der anderen Spalte hergeleitet werden. Diese Prozedur kann rekursiv verwendet werden, bis das Paritätssymbol eine Löschungsspalte ist oder das gelöste Symbol selbst ein Paritätssymbol ist. Dieselben Techniken können angewandt werden, um irgendein gewünschtes unbekanntes Symbol oder irgendwelche gewünschten unbekannten Symbole wiederherzustellen.
- Das bevorzugte System verwendet N = n oder eine Primzahl N. Systeme wie etwa von Fig. 5 und 6 (n = 4; k = 2) können ebenfalls wie oben beschrieben verwendet werden.
- Das System ermöglicht durch seine Verwendung als verteiltes Lesen- und Schreibsystem eine neue Arbeitsweise. Die redundante Speicherung von Informationen ermöglicht das Lesen des System aus allen n Knoten, um die Bandbreite des Systems zu maximieren. In diesem Fall liest das System nur aus den Rohinformationsabschnitten 1502 der Knoten.
- Alternativ werden nur K der Knoten gelesen, jedoch werden diese K zusammen mit ihren Paritätsabschnitten 1504 gelesen. Anders als die herkömmliche "Korrektur" wählt dieses System auf der Grundlage der Sicht des Systems des Zustands der verschiedenen Netzteile, die für verschiedene Codes, z. B. den gleichmäßigen/ungleichmäßigen Code, verwendet werden könnten, aus, welche der verfügbaren Cluster verwendet werden.
- Das verteilte Schreiben beinhaltet das Schreiben an alle betroffenen Knoten, und zwar stets dann, wenn sich Informationen geändert haben. Jedoch wird die Aktualisierung so klein wie möglich gehalten. Der MDS-Code garantiert die Redundanz und macht die Aktualisierung so minimal und effizient wie möglich. Die mittlere Einheitsparitätsaktualisierungszahl repräsentiert die durchschnittliche Anzahl von Paritätsbits, die betroffen sind, wenn in den Codes eine Änderung eines einzelnen Informationsbits vorkommt. Der Parameter wird besonders kritisch, wenn in Speicheranwendungen Matrix-Codes verwendet werden. Der X- Code ist in dem Sinn optimal, daß jede Änderung eines einzelnen Informationsbits eine Aktualisierung von lediglich zwei Paritätsbits erfordert.
- Ein weiteres wichtiges Merkmal des X-Codes folgt aus seiner Bildung von unabhängigen Paritätsbits. Viele der bisher verwendeten Codes stützen sich auf abhängige Paritätsspalten, um Codeabstände von 3 zu bilden. Da die Paritäten voneinander abhängen, kann die Berechnung dieser Paritäten extrem umfangreich werden. Dies führt häufig zu einer Situation, in der die mittlere Einheitsparitätsaktualisierungszahl des Codes linear mit der Anzahl von Matrixspalten anwächst.
- Systeme wie der im US-Patent Nr. 5.579.475 beschriebene EVENODD-Code und andere ähnliche Systeme verwenden unabhängige Paritätsspalten, um die Informationsaktualisierung effizienter zu machen.
- Das verteilte Datenspeicherungssystem teilt die Serverfunktion auf die Knoten auf. Dies erfolgt gemäß dem vorliegenden System unter Verwendung einer speziellen Kommunikationsschicht, die auf jedem der Mehrfachknoten ausgeführt wird und für die Anwendung transparent ist. Ein spezielles verteiltes Lesesystem und ein spezielles verteiltes Schreibsystem erhalten ebenfalls die robuste Arbeitsweise des Systems aufrecht.
- Die Kommunikationsarchitektur des bevorzugten Systems ist in Fig. 7 gezeigt. Die eigentlichen Kommunikations- und Netzschnittstellen sind als Elemente 700 gezeigt. Die Kommunikation kann auf irgendeine herkömmliche Weise einschließlich Ethernet, Myrinet, ATM-Servernet oder nach irgendwelchen anderen herkömmlichen Kommunikationsschemata erfolgen. Diese herkömmlichen Netzschnittstellen werden durch die redundante Kommunikationsschicht gesteuert.
- Die Kommunikation wird durch das Netzmonitor-("NETM")- Protokollsystem 702 überwacht. NETM führt ein Konnektivitätsprotokoll aus, das den Kanalzustand und die Historie jedes Kanalzustands in jedem Knoten bestimmt. Genauer, NETM überwacht alle Verbindungen vom lokalen Knoten, auf dem NETM läuft, zu jedem entfernten Knoten über jeden Verbindungsweg vom lokalen Knoten zum entfernten Knoten. NETM unterhält ein Konnektivitätsdiagramm, das eine Angabe über den Status sämtlicher möglicher Verbindungen vom lokalen Knoten zu jedem entfernten Knoten zu jedem Zeitpunkt enthält.
- Die aktuelle Kommunikation wird durch das zuverlässige Anwenderdatenprotokoll ("RUDP") gesteuert. RUDP arbeitet auf der Grundlage einer Anforderung zur Kommunikation vom lokalen Knoten ("Knoten A") an irgendeinen anderen Knoten ("Knoten B"). RUDP erhält dann von NETM Konnektivitätsin- formationen über korrekt arbeitende Kommunikationswege vom Knoten A zum Knoten B. RUDP wählt unter Verwendung der durch NETM gesammelten Informationen einen Kommunikationsweg und sendet die Informationen unter Verwendung gebündelter Schnittstellen. RUDP packt außerdem die Informationen säuberlich unter Verwendung bekannter Protokollsysteme, um eine in der Reihenfolge bestätigte Lieferung zu bewirken.
- Das NETM-System läuft auf jedem Knoten des Systems, damit dieser Informationen über das System findet. NETM betrachtet den Knoten, auf dem es abläuft, als lokalen Knoten. NETM verwendet Systemhinweise, um den Zustand der Verbindung zwischen dem lokalen Knoten und allen anderen Knoten im System zu bestimmen.
- Wenn auf allen Knoten dasselbe Protokoll ausgeführt wird, stellt der NETM-Prozeß in jedem Knoten für einen gegebenen Verbindungszustand A nach B den gleichen Zustand fest. NETM verwendet außerdem einen Historieprüfmechanismus, so daß sämtliche Knoten im Verlauf der Zeit die gleiche Historie des Kanalzustands sehen.
- Die bevorzugten Systemhinweise werden aus vom Knoten A an jeden anderen Knoten im System gesendeten Nachrichten über jeden möglichen Weg zum anderen Knoten erhalten. Diese Nachrichten werden "Herzschläge" genannt. NETM sendet über jeden Weg eine Nachricht vom lokalen Knoten ("A") an jeden entfernten Knoten ("B"). Jede Verbindung ist durch drei Informationselemente gekennzeichnet, die als Ci,j,k-Tupel bezeichnet werden, wobei i = lokale Schnittstelle, j = entfernter Knoten und k = entfernte Schnittstelle. Diese Tupel definieren einen eindeutigen Weg.
- NETM verwendet die Herzschläge, um zu bestimmen, ob es eine funktionale Kommunikationsverbindung zwischen A und B über jeden Parallelweg Ci,j,k gibt. Da das NETM-Protokoll auch im Knoten B abläuft, trifft der entfernte NETM wahrscheinlich dieselbe Entscheidung bezüglich des Konnektivitätsstatus "Knoten B nach A über den Parallelweg Ci,j,k".
- Bestimmte Fehler wie beispielsweise ein Pufferüberlauf können den Ausfall eines Kanals nur in einer Richtung hervorrufen. Das Verbindungsprotokoll verwendet ein Token-Durchlaufsystem, um die Historie des Kanals symmetrisch zu machen.
- Die Erfassung der Historie stützt sich auf einen Pool von Hinweisen über die Betriebsfähigkeit der Verbindung. Der Herzschlag ist der bevorzugte Hinweis, der im folgenden näher beschrieben wird. Ein weiterer Hinweis ist beispielsweise ein Fehlerhinweis von der Kommunikationshardware, z. B. von der Myrinet-Karte. Wenn die Myrinet- Karte, die die Kommunikation über den Weg X steuert, anzeigt, daß er nicht begehbar ist, nimmt das Protokoll an, daß der Weg nicht begehbar ist.
- Der Pool von Hinweisen wird verwendet, um den Status einer Variablen festzulegen, die den Zustand des Kommunikationsweges von A nach B über X beurteilt. Diese Variable besitzt den Wert U für den Hinweg und D für den Rückweg.
- Die Operation ist in dem zusammenfassenden Ablaufplan von Fig. 8 gezeigt. Die Ausführungsform von Fig. 8 verwendet eine Herzschlagnachricht, die aus einer unzuverlässigen Nachricht gebildet ist. Ein zuverlässiges Nachrichtensystem erfordert, daß der Sendeknoten eine Bestätigung des Empfangs einer Nachricht erhält. Der Sendeknoten setzt mit dem Senden der Nachricht fort, bis eine Bestätigung des Empfangs der Nachricht vom Sendeknoten erhalten wird. Zum anderen verwendet das System von Fig. 8 die unzuverlässige Nachrichtenübermittlung: d. h., daß die Nachricht einfach gesendet wird. Es wird keine Bestätigung des Empfangs erhalten.
- Die Nachricht 800 wird als unzuverlässige Paketnachricht an den Knoten B gesendet. Der Herzschlag wird vorzugsweise alle 10 ms gesendet. Das System wartet und prüft im Schritt 802 Netzhinweise, um den Zustand und die Historie der Netzverbindung zu beurteilen. Der Herzschlag kann irgendeine Nachricht sein, die von einem Knoten zum anderen Knoten gesendet wird.
- Da auf jedem Knoten dasselbe Protokoll abläuft, weiß jeder Knoten, daß er alle 10 ms einen Herzschlag vom anderen Knoten empfangen sollte. Jeder NETM betreibt einen Zeitgeber, der jedesmal, wenn NETM vom anderen Knoten einen Herzschlag empfängt, zurückgesetzt wird. Wenn der Zeitgeber abläuft, ohne daß vom anderen Knoten einen Herzschlag empfangen wurde, wird die Entscheidung getroffen, daß ein Problem bezüglich der Verbindung besteht.
- Jede Seite versucht außerdem sicherzustellen, daß es im Verlauf der Zeit dieselbe Historie sieht. Dies geschieht dadurch, daß zwischen dem Knotenpaar zuverlässige Tokens übermittelt werden, die das Punkt-zu-Punkt-Protokoll bilden. Jedes Token gibt an, daß der Knoten ein Ereignis erfaßt hat. Wenn das Token von dem anderen Knoten empfangen wird, sollte dieser ebenfalls ein vergleichbares Ereignis erfaßt haben und ein Token senden. Jede Seite gibt ein Token aus, wenn sie das Ereignis erfaßt. Dies erhält die Historie auf beiden Seiten identisch.
- Jede Seite besitzt eine endliche Anzahl von Tokens, die ausgegeben werden können. Dies besitzt die Wirkung, daß die Anzahl von Ereignissen, die sich ereignen können, bevor das Ereignis durch den anderen Knoten quittiert ist, begrenzt wird. Wenn es beispielsweise anfänglich zwei Tokens pro Seite gibt, kann der Knoten nur zwei Tokens weiterleiten. Nach jeder vorgenommenen Änderung des Kanalzustands wird ein Token weitergeleitet. Wenn von der anderen Seite kein Token ankommt, geht der Vorrat des Knotens an Tokens nach diesen zwei vorgenommenen Änderungen zuende. Dies bedeutet, daß jeder Knoten dem anderen Knoten nur zwei Ereignisse oder Aktionen vorauseilen (oder nacheilen) kann. Der Token-Durchlauf begrenzt die Anzahl der Freiheitsgrade zwischen den zwei Knoten - wie weit die zwei Knoten auseinander sein können, bevor dem einen, der darauf wartet, daß die andere Seite aufholt, der nicht betriebsbreite Zustand des Kanals gemeldet wird.
- Ein anderer Weg, darauf zu achten, besteht darin, daß die Tokens die maximale Anzahl von Transitionen festlegen, die ein Knoten ausführen kann, solange er nicht davon hört, daß der andere Knoten darauf reagiert hat.
- Die bevorzugte Ausführungsform des NETM-Systems ist in der Konnektivitätsprotokollzustands-Maschine von Fig. 9 und den Ablaufplänen von den Fig. 10A und 10B gezeigt. Der Schritt 1000 umfaßt einen Anfangsschritt der Bildung des Ci,j,k-Dreifach-Tupels mit der ID der lokalen Schnittstelle, der ID der entfernten Maschine und der ID der entfernten Schnittstelle für jeden möglichen physikalischen Kanal vom Knoten zu allen anderen bekannten Knoten. Der Prozeß ConnP(Ci,j,k) wird für alle Ci,j,k- Dreifach-Tupel ausgeführt, um für jeden dieser Kanäle den Konnektivitätsstatus zu bestimmen. Dies erzeugt eine Datenstruktur, die Connected(Ci,j,k) genannt wird, die einen booleschen Wert speichert, der den Hinweg/Rückweg- (1 oder 0)-Status für jeden Ci-Kanal angibt.
- Der Schritt 1002 bestimmt; ob ein ConnP(Ci,j,k)-Ereignis eingetreten ist. Falls nein, gibt es nichts zu tun, so daß der Prozeß zurückkehrt.
- Wenn im Schritt 1002 ein Ereignis erfaßt wurde, setzt der Fluß mit dem Schritt 1004 fort, der bestimmt, ob das Ereignis ein System hochgefahren-Ereignis ist. Wenn dies der Fall ist, gibt das Ergebnis eine "1" zurück. Andernfalls gibt das Ergebnis eine "0" zurück.
- Der Verbindungszustand-Ablaufplan von Fig. 10B verwendet eine Zählung von "Tokens" als Nachweis, daß das andere Endpunktsystem arbeitet.
- Im Schritt 1010 beginnt der Prozeß mit dem Token-Zählwert ("t"), der auf seinen Anfangswert n ≥ 2 gesetzt wird. Das System startet mit dem Schritt 1012, wobei sein anfänglicher Zustand "hochgefahren" ("1") entspricht. Der Schritt 1014 erfaßt, ob ein Zeit-läuft-Ereignis eingetreten ist. Ein Zeit-läuft-Ereignis wird beispielsweise durch den Empfang eines Herzschlags vom Knoten B hervorgerufen. Da der Zustand an diesem Punkt bereits "hochgefahren" entspricht, beläßt es die Erfassung eines Zeit-läuft-Ereignisses bei diesem Zustand und unternimmt keine weitere Aktion. Wenn im Schritt 1014 kein Zeit-läuft-Ereignis eingetreten ist, dann bestimmt 1016 ein Zeit-abgelaufen- Ereignis, das beispielsweise dann hervorgerufen wird, wenn kein erwarteter Herzschlag empfangen wird, bevor der Zeitgeber abgelaufen ist. Wenn nein, bestimmt der Schritt 1018, ob ein Token empfangen wurde ("ein Token-Ankunft- Ereignis"). Wenn keines dieser Ereignisse eingetreten ist, geht die Steuerung wieder zum Schritt 1012 zurück, in dem der Knoten mit der Überwachung, ob sich eines jener Ereignisse ereignet hat, fortsetzt. Da das System an diesem Punkt stets ein Token hat, besteht keine Notwendigkeit, nach anderen zu prüfen.
- Das Zeit-abgelaufen-Ereignis im Schritt 1016 bedeutet, daß vom Knoten B über den Weg X kein Herzschlag empfangen wurde, so daß wahrscheinlich ein Problem bezüglich der Kommunikation zum Knoten B über den Weg X besteht. Deshalb geht die Steuerung zum Schritt 1020 zurück, der an den Knoten B ein Token sendet, das das Zeit-abgelaufen- Ereignis angibt und über das Ausbleiben von Herzschlägen während einer spezifizierten Zeit berichtet. Da das Token gesendet wurde, wird auch der Token-Zählwert im Schritt 1020 dekrementiert. Diesem folgt im Schritt 1022 die Änderung des Zustands von ConnP zu D.
- Ein Token-Ankunft-Ereignis im Schritt 1018 wird von einem Schritt des Empfangens des Tokens in 1024 und dem Inkrementieren des Token-Zählwerts gefolgt. Wenn in 1026 der momentane Token-Zählwert kleiner als der maximale Token- Wert n ist, wird der Token-Zählwert in 1028 inkrementiert. Da es ein fehlendes Token gibt, liegt die Transition am anderen Ende innerhalb der erlaubten Freiheitsgrade, die vom Token-Durchlaufschema zugelassen werden, wobei das empfangene Token die zwei Seiten zum Synchronismus zurückführt.
- Wenn der Token-Zählwert nicht kleiner als N ist, hat der Token-Zählwert seinen Maximalwert erreicht. Das System muß deshalb eine Transition vornehmen. Diese wird ausgeführt, indem bei 1030 ein Token gesendet wird, gefolgt von einem Herunterfahren des Systems, das in 1022 durch ConnP → 0 oder D angezeigt wird. Dies startet die Herunterfahrroutine-Verarbeitungsoperation.
- Die Herunterfahrroutine-Verarbeitungsoperation gleicht der Hochfahrroutine-Verarbeitungsoperation. In 1030 wird ein Zeit-abgelaufen-Ereignis erfaßt, das keine Auswirkung hat, da das System bereits heruntergefahren ist. In 1032 wird ein Zeit-läuft-Ereignis erfaßt. Dieses Zeit-läuft- Ereignis ermöglicht, daß das System in den Zustand "hochgefahren" zurückkehrt, wodurch ein Tokens herbeigeführt wird, das gesendet wird, um die Transition anzuzeigen. Im Schritt 1040 prüft die Routine nach einem Token. Wenn keines verfügbar ist, können keine Transitionen vorgenommen werden, weshalb der Fluß zu 1022 zurückkehrt. Wenn ein weiterzuleitendes Token existiert, dann wird dieses im Schritt 1042 weitergeleitet, wobei der Token-Zählwert dekrementiert wird. Die ConnP-Variable kehrt in ihren Status "hochgefahren" zurück und startet die Token-Verarbeitungsroutine.
- Jedes System "Knoten A nach Knoten B über Weg X" ist in dieser Weise durch das NETM-Protokoll gekennzeichnet. Die Anwendungen laufen auf der Grundlage von RUDP ab. Beispielsweise identifiziert eine Anwendung mit einer Prozeß-ID sich selbst gegenüber dem System. Beispielsweise kann die Anwendung eine Nachricht senden, die sich selbst als Prozeß 6 identifiziert und den Wunsch angibt, an den Prozeß 4 zu senden. Diese Identifikation verwendet das obenbeschriebene Ci,j,k-Tupel. NETM bestimmt einen Kommunikationsweg für diese Operation.
- Die aktuelle Kommunikation arbeitet, sobald sie einmal bestimmt ist, unter Anwendung des sogenannten gleitenden Fensterprotokolls. Gleitende Fenster sind wohlbekannt und beispielsweise im US-Patent Nr. 5.307.351 beschrieben. Gleitende Fenster überwachen ein zuverlässiges Nachrichtenschema, indem sie das Datenpaket geeignet packen. Gleitende Fenster lenken im wesentlichen die Sequenznummern und Bestätigungen. Die Daten werden als zuverlässiges Paket gesendet, was vom Empfänger eine Quittung erfordert, die zu empfangen ist, bevor ein Fenster ausgegeben wird. Sobald der Empfang korrekt quittiert ist, "gleitet" das Informationsfenster zum nächsten unquittierten Informationspaket.
- RUDP verwendet das gleitende Fenstermodul zur Ausführung der aktuellen Kommunikation. RUDP fordert außerdem NETM auf, einen gültigen Informationsweg anzugeben. Wenn mehr als einer der Wege zwischen Knoten verwendbar ist, wechselt RUDP periodisch zwischen den verwendbaren Wegen. RUDP dient außerdem als Logiknetz durch Rekonfiguration des Systems unter Anwendung der durch NETM gelieferten Informationen.
- Der grundlegende RUDP-Ablaufplan ist in Fig. 11 gezeigt. Die Operation startet mit der Bestimmung eines im Schritt 1100 empfangenen Ereignisses. Wenn im Schritt 1100 kein Empfangsereignis empfangen wurde, bestimmt der Schritt 1102, ob ein Sendeereignis vorliegt. Falls nein, hat LNET nichts zu tun und der Strom kehrt zurück, um mit dem Prüfen nach Ereignissen fortzusetzen.
- Wenn im Schritt 1100 ein Empfangsereignis erfaßt wurde, geht der Fluß zum Schritt 1110 über, indem bestimmt wird, ob die Daten irgendein Ci,j,k-Tupel angeben. Falls nein, wird im Schritt 1112 ein Fehler bestimmt.
- Wenn korrekte Daten empfangen wurden, werden diese im Schritt 1114 empfangen und im Schritt 1116 an das System zurückgesendet. Ein Sendeereignis erfordert, daß die Ci,j,k-Argumente die Daten, die zu senden sind, und die entfernte Maschine, die das Ereignis empfängt, angeben. Dies erfordert in 1120 eine Bestimmung, ob irgendein Kanal Ci,j,k für die als eines der Argumente der Operation angegebene entfernte Maschine frei ist. Wenn nein, erklärt der Schritt 1122 einen Verbindungsausfall-Fehler. Wenn im gewöhnlicheren Fall wenigstens ein Kanal frei ist, wird dieser unter Verwendung der Argumente des Ci,j,k-Tupels adressiert. Der Prozeß kehrt dann zu 1130 zurück.
- Der Prozeß 1120 verwendet NETM, um die freien Wege von der lokalen Maschine zur entfernten Maschine zu recherchieren. Somit pflegt NETM die Datenstruktur, während LNET die Datenstruktur nutzt.
- Das hier beschriebene System besitzt eine spezielle Anwendung als Informationsserver - d. h. als Server, der auf Anforderung des Anwenders Informationen liefert. Der Informationsserver kann ein Internet-(Web)-Server, ein Video-Server oder irgendein anderer Gerätetyp sein, der Informationen liefert.
- Das System wird in dem Sinn als Server verwendet, daß irgendein Knoten irgendwelche gespeicherten Informationen von einem anderen Knoten oder einer Kombination von Knoten anfordern kann. Beispielsweise kann eine Anforderung gestellt werden, die die Informationen von 25 verschiedenen Knoten anfordert. Dieses System kann die 25 nächsten Knoten oder 25 am wenigsten verwendeten Knoten auswählen. Dies ermöglicht dem System, überlastete Knoten so, als wären sie fehlerhaft, zu ignorieren.
- Wenn er als Video-Server eingesetzt wird, könnte das zu liefernde Video irgendwo im System gespeichert sein. Gemäß dem vorliegenden Schema ist das Video als verteilte Informationen auf verschiedenen Knoten des Netzes in der Weise gespeichert, daß ein Wiederauffinden der Videoinformationen selbst bei Auftreten spezifizierter Netzfehler möglich ist.
- Das Serversystem fordert das zu liefernde Video von dem Knoten an, der dieses speichert. Die speziellen Techniken des Systems stellen sicher, daß keine spezifizierte Anzahl von Fehlern den Betrieb des Systems als Ganzes unterbrechen kann. Ein Fehler von zwei Knoten kann beispielsweise nicht das Erlangen von gespeicherten Informationen verhindern, da diese Informationen an anderen Orten im Netz redundant gespeichert sind.
- Eine andere Anwendung ist der Web-Server. Der Web-Server verwendet das TCP/TP-Protokoll und die Paketvermittlung, um Internet-Informationen zu erlangen. Wiederum könnten diese Informationen irgendwo innerhalb des verteilten Servers gespeichert sein. Zwei beliebige Fehler - Kommunikations- oder Speicherfehler, können nicht verhindern, daß Informationen erhalten werden.
- Eine weitere Anwendung dieses Systems liegt in der Erweiterung und Reparatur. Jeder Knoten kann zu jedem Zeitpunkt entfernt werden, wobei das restliche System den Betrieb ohne Unterbrechung fortsetzt. Der Knoten könnte durch einen Blindknoten ersetzt werden, wobei das Netz in diesem Fall mit dem Schreiben von Informationen in die freie Spalte, die sie unter Verwendung der Redundanzdaten sieht, beginnen würde.
- Obwohl oben nur wenige Ausführungsformen genau beschrieben wurden, können Fachleute erkennen, daß neben den offenbarten Ausführungen andere Ausführungsformen existieren und daß andere Techniken zur Ausführung der Erfindung aus den offenbarten Ausführungsformen ableitbar sind.
Claims (29)
1. Redundantes, verteiltes Netzsystem, mit:
mehreren Systemknoten (100, 102, 104, 106), wovon
jeder wenigstens zwei Kommunikationsvorrichtungen und
eine Speichervorrichtung umfaßt, wobei die
Speichervorrichtung Rohdaten und redundante Daten enthält, die
Rohdaten angeben, die in von dem betrachteten Knoten
verschiedenen Knoten gespeichert sind, um eine
Rekonstruktion gespeicherter Daten aus den
Speicherinfotmationen in irgendeinem Knoten zu ermöglichen, wenn diese mit
Daten in irgendeinem anderen Knoten kombiniert werden;
mehreren Schaltvorrichtungen (110, 112), die mit
den Kommunikationsvorrichtungen der Systemknoten in einer
Weise verbunden sind, in der jede der
Kommunikationsvorrichtungen in irgendeinem Systemknoten mit einer anderen
der Schaltvorrichtungen verbunden ist, wodurch jeder der
Systemknoten mit jedem anderen der Systemknoten über
wenigstens zwei verschiedene Wege kommunizieren kann,
wodurch eine redundante Kommunikation geschaffen wird;
einer Erfassungsroutine in jedem Knoten (100,
102, 104, 106), die einen Systemfunktionszustand erfaßt,
der jegliche Operation des Netzsystems verhindern könnte;
und
einem Logiknetzprozeß (150), der das Netz unter
Verwendung der Kommunikationsvorrichtungsredundanz
und/oder der Speicherinformationsredundanz je nach Bedarf
rekonfiguriert, um den Systemfunktionszustand unter
Verwendung der Netzredundanz zu kompensieren.
2. System nach Anspruch 1, wobei die
Erfassungsroutine Funktionszustände wenigstens in mehreren der
Systemknoten erfaßt, wobei jede Erfassungsroutine in jedem der
Systemknoten ein identisches Protokoll ablaufen läßt.
3. System nach Anspruch 1, wobei der
Systemfunktionszustand Fehler in der Netzkommunikation
oder Fehler in der Speicherung oder irgendeine andere Art
von Fehler, der ein unerwünschtes Ergebnis erzeugt,
umfaßt.
4. System nach Anspruch 3, wobei der Logiknetzprozeß
dann, wenn der Systemfunktionszustand einen Fehler in der
Netzkommunikation enthält, eine Änderung von einer
Verbindung zu einer anderen Verbindung befiehlt.
5. System nach Anspruch 4, wobei der Logiknetzprozeß
dann, wenn der Systemfunktionszustand einen Fehler in der
Speicherung enthält, befiehlt, erwünschte Informationen
aus der Speicherung redundanter Daten zu erhalten.
6. System nach Anspruch 1, wobei die
Erfassungsroutine (702) in jedem Knoten (100, 102, 104, 106) derart
arbeitet, daß sie einen Verbindungszustand mit anderen
Knoten im Netz beobachtet.
7. System nach Anspruch 6, wobei die
Erfassungsroutine (702) derart arbeitet, daß sie den
Verbindungszustand unter Verwendung von Hinweisen über einen Zustand
des Netzes bestimmt.
8. System nach Anspruch 7, wobei die Hinweise ein
Herzschlag-Signal enthalten, das von jedem Knoten in
spezifischen Intervallen erzeugt wird, und die
Erfassungsroutine derart arbeitet, daß sie das Herzschlag-
Signal empfängt und das Vorhandensein oder Fehlen des
Herzschlag-Signals als einen der Hinweise erfaßt.
9. System nach Anspruch 7, ferner mit einem Token-
Durchlaufsystem, wobei jeder Knoten (100, 102, 104, 106)
Ereignisse in einem überwachten Knoten über einen
überwachten Kanal bestimmt und ein Token an den überwachten ·
Knoten über den überwachten Kanal schickt, um das
Ereignis anzugeben, wobei der überwachte Knoten das Token
zurückschickt, um eine Operation auf der Grundlage des
Ereignisses anzugeben, und wobei jeder Knoten nur eine
bestimmte Anzahl von Tokens besitzt, um die Anzahl von
Ereignissen zu begrenzen, die in einem der Knoten
auftreten können, ohne daß ein entsprechendes Ereignis in dem
anderen der Knoten auftritt.
10. System nach Anspruch 6, ferner mit einer
Einrichtung, die sicherstellt, daß jeder der Knoten die gleiche
Historie des Netzes sieht.
11. System nach Anspruch 1, wobei die Verbindung in
der Weise ausgebildet wird, daß keine Gruppen von
Rechenknoten isoliert werden können.
12. System nach Anspruch 1, wobei die Schalter (110,
112) die Knoten in einer Weise verbinden, die so wenig
lokal wie möglich ist.
13. System nach Anspruch 12, wobei die Schalter zwei
Knoten verbinden, die maximal voneinander entfernt sind.
14. System nach Anspruch 13, wobei die Verbindungen
in der Weise erfolgen, daß kein Fehler von zwei
beliebigen Knoten irgendeine Gruppe von Knoten an einer
Kommunikation mit irgendeiner anderen Gruppe von Knoten hindern
kann.
15. System nach Anspruch 1, wobei jeder Knoten (100,
102, 104, 106) mit jedem anderen Knoten durch wenigstens
zwei Wege verbunden ist,
und ferner mit einem Netzmonitor (702), der in
jedem Knoten läuft und sämtliche Verbindungen von einem
lokalen Knoten, in dem der Netzmonitor läuft, zu jedem
entfernten Knoten über jeden Verbindungsweg von dem
lokalen Knoten zum entfernten Knoten überwacht.
16. System nach Anspruch 15, ferner mit einem
zuverlässigen Anwenderdatenprotokoll, das in lokalen Knoten
läuft und eine Anforderung für eine Kommunikation von dem
lokalen Knoten zu irgendeinem anderen Knoten empfängt und
einen Weg von dem Netzüberwachungsprozeß bestimmt.
17. System nach Anspruch 16, ferner umfassend die
Rekonfiguration eines Kommunikationsweges unter
Verwendung einer logischen Netzverbindung, die den Wechsel von
einer physikalischen Verbindung zwischen den Knoten zu
einer anderen Knotenverbindung ermöglicht.
18. System nach Anspruch 1, ferner mit einem
Netzmonitor (702), der funktionale Verbindungen zwischen
den Knoten bestimmt, einem zuverlässigen
Anwenderprotokoll, das Informationen für die laufenden Knoten
verarbeitet, und einem Logiknetz, das die Kommunikationen auf
der Grundlage der funktionalen Verbindungen
rekonfiguriert.
19. System nach Anspruch 1, wobei die
Speichervorrichtung nur einen Teil der Informationen auf
jeder Platte jedes Knotens speichert.
20. System nach Anspruch 19, wobei jede Platte jedes
Knotens außerdem Informationen speichert, die irgendeine
Eigenschaft von Informationen auf anderen Platten
angeben.
21. Server nach Anspruch 1, wobei die gespeicherten
Informationen in jedem Knoten nur einen Teil, nicht
jedoch alle beliebigen gewünschten Informationen
speichern, und wobei keine zwei Knoten die gleichen
Informationen speichern.
22. Server nach Anspruch 21, wobei die gespeicherten
Informationen einen Informationsabschnitt und einen
Redundanzabschnitt enthalten, wobei der
Redundanzabschnitt Informationen darstellt, die
Informationsabschnitte lediglich für andere Knoten angeben.
23. Server nach Anspruch 22, wobei der
Redundanzabschnitt aus einem Matrixcode gebildet ist, wobei mehrere
der Knoten als Matrix angeordnet sind, um den
Informationsabschnitt zu bilden, und der Redundanzabschnitt aus
Prüfsummen längs der Diagonalen der Matrix gebildet ist.
24. Verfahren zum Betreiben eines Netzes, um eine
Redundanz zu schaffen, umfassend:
Ausführen eines Steuerprozesses, der ein
verteiltes Lesen aus mehreren Systemknoten (100, 102, 104, 106)
ausführt, wobei die Systemknoten wenigstens zwei
Kommunikationsvorrichtungen enthalten, wovon jede in irgendeinem
Systemknoten mit einer anderen von mehreren
Schaltvorrichtungen (110, 112) verbunden ist, wodurch jeder der
Systemknoten mit jedem anderen der Systemknoten über
einen von wenigstens zwei verschiedenen Wegen
kommunizieren kann, wodurch eine redundante Kommunikation
geschaffen wird, kollektives Speichern von Systemdaten, wobei
jeder Knoten Rohdaten und redundante Daten enthält, die
Rohdaten angeben, die in Knoten gespeichert sind, die von
dem betrachteten Knoten verschieden sind, um eine
Rekonstruktion gespeicherter Daten aus den
Speicherinformationen in irgendeinem Knoten zu ermöglichen, wenn sie mit
Daten in irgendeinem anderen Knoten kombiniert werden,
wobei jeder Knoten eine Erfassungsroutine (702) enthält,
die einen Systemfunktionszustand erfaßt, der jeglichen
Betrieb des Netzsystems verhindern könnte; und
Ausführen eines verteilten Lesens, das die
folgenden Schritte umfaßt:
Bestimmen eines Parameters, der mit der
Verfügbarkeit von Systemknoten in Beziehung steht, und
Lesen der Rohdaten aus den mehreren
Systemknoten, falls der Parameter die Verfügbarkeit
angibt, und Lesen sowohl der Rohdaten als auch der
redundanten Daten aus weniger als den mehreren Systemknoten,
falls der Parameter weniger als die Verfügbarkeit angibt.
25. Verfahren nach Anspruch 24, ferner umfassend:
Speichern von Rohinformationen und von
redundanten Informationen, die den Fehlerkorrekturcode angeben,
in mehreren Informationsknoten;
Bestimmen eines Parameters, der die Brauchbarkeit
der Informationsknoten angibt;
Lesen der Rohinformationen aus den mehreren
Knoten, falls der Parameter angibt, daß die mehreren
Knoten brauchbar sind, und Lesen sowohl der Rohdaten als
auch der redundanten Daten aus weniger als den mehreren
Knoten, falls der Parameter angibt, daß wenigstens ein
Teil der mehreren Knoten weniger als brauchbar ist.
26. Verfahren nach Anspruch 24, ferner umfassend:
Bilden einer Matrix aus Informationen durch
Bilden jeder Spalte der Matrix, die Informationen von
einem Knoten repräsentiert,
Bilden eines Rohabschnitts jeder Spalte, der
Rohinformationen enthält, die Daten angeben,
Bilden redundanter Informationen, die
Redundanzinformationen angeben, wobei die
Redundanzinformationen Informationen über andere Knoten außer dem
betrachteten Knoten längs einer Hülle einer bestimmten
Form, die Informationen von den anderen Knoten erhält,
angeben.
27. Verfahren nach Anspruch 26, wobei die Hülle eine
Diagonale ist, die sich über die Kanten der Matrix hinaus
zu anderen Knoten erstreckt.
28. Verfahren nach Anspruch 24, umfassend:
Abbilden jedes Knotens auf eine Spalte einer
Matrix;
Bilden zweier Zeilen aus redundanten
Informationen aus den Spalten der Matrix und Anordnen der beiden
Zeilen in den Spalten, um eine resultierende N · N-Matrix
zu bilden, die (N - 2) · N Informationssymbole und 2 · N
redundante Informationssymbole enthält, wobei die
Paritätssymbole gemäß
Cn-2,i = Ck,(i+k+2)n
Cn-1,i = Ck,(i-k-2)n
konstruiert werden, wobei i = 0, 1, ..., n - 1 und
(x)n = X mod n.
29. Netzsystem nach Anspruch 1, wobei die
Speichervorrichtungen Videoinformationen speichern.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US08/943,049 US6088330A (en) | 1997-09-09 | 1997-10-01 | Reliable array of distributed computing nodes |
PCT/US1998/020532 WO1999017217A1 (en) | 1997-10-01 | 1998-10-01 | A reliable array of distributed computing nodes |
Publications (2)
Publication Number | Publication Date |
---|---|
DE69800808D1 DE69800808D1 (de) | 2001-06-21 |
DE69800808T2 true DE69800808T2 (de) | 2002-03-28 |
Family
ID=25479024
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE69800808T Expired - Lifetime DE69800808T2 (de) | 1997-10-01 | 1998-10-01 | Redundantes, verteiltes Netzwerksystem |
Country Status (7)
Country | Link |
---|---|
US (2) | US6088330A (de) |
EP (1) | EP1019841B1 (de) |
JP (1) | JP2001518665A (de) |
AT (1) | ATE201271T1 (de) |
AU (1) | AU9781198A (de) |
DE (1) | DE69800808T2 (de) |
WO (1) | WO1999017217A1 (de) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102021126404A1 (de) | 2021-10-12 | 2023-04-13 | D&B Audiotechnik Gmbh & Co. Kg | Redundantes audio-/videonetzwerk sowie netzwerk-switch und mediapaket-endpunkt zur erkennung von verkabelungsfehlern |
Families Citing this family (762)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6223301B1 (en) * | 1997-09-30 | 2001-04-24 | Compaq Computer Corporation | Fault tolerant memory |
GB9725372D0 (en) * | 1997-11-28 | 1998-01-28 | 3Com Ireland | Trunking in stacked communication devices |
US7068729B2 (en) | 2001-12-21 | 2006-06-27 | Digital Fountain, Inc. | Multi-stage code generator and decoder for communication systems |
US6307487B1 (en) | 1998-09-23 | 2001-10-23 | Digital Fountain, Inc. | Information additive code generator and decoder for communication systems |
US6691165B1 (en) | 1998-11-10 | 2004-02-10 | Rainfinity, Inc. | Distributed server cluster for controlling network traffic |
AUPP776498A0 (en) | 1998-12-17 | 1999-01-21 | Portus Pty Ltd | Local and remote monitoring using a standard web browser |
US6608812B1 (en) * | 1999-01-15 | 2003-08-19 | 3Com Corporation | Trunk arrangement in a computer network with intra trunk switch connections |
US7299294B1 (en) | 1999-11-10 | 2007-11-20 | Emc Corporation | Distributed traffic controller for network data |
US6801949B1 (en) | 1999-04-12 | 2004-10-05 | Rainfinity, Inc. | Distributed server cluster with graphical user interface |
US6285656B1 (en) * | 1999-08-13 | 2001-09-04 | Holontech Corporation | Active-passive flow switch failover technology |
US20020046357A1 (en) * | 1999-12-28 | 2002-04-18 | Jiandong Huang | Software-based fault tolerant networking using a single LAN |
US6581185B1 (en) * | 2000-01-24 | 2003-06-17 | Storage Technology Corporation | Apparatus and method for reconstructing data using cross-parity stripes on storage media |
US7304990B2 (en) * | 2000-02-03 | 2007-12-04 | Bandwiz Inc. | Method of encoding and transmitting data over a communication medium through division and segmentation |
US7225240B1 (en) * | 2000-05-20 | 2007-05-29 | Ciena Corporation | Decoupling processes from hardware with logical identifiers |
US6604030B1 (en) * | 2000-06-06 | 2003-08-05 | Ozuna Holdings Incorporated | Single fault impervious integrated control and monitoring system |
US7188157B1 (en) | 2000-06-30 | 2007-03-06 | Hitachi, Ltd. | Continuous update of data in a data server system |
US7281032B2 (en) * | 2000-06-30 | 2007-10-09 | Hitachi, Ltd. | File sharing system with data mirroring by storage systems |
SE518479C2 (sv) * | 2000-10-13 | 2002-10-15 | Ericsson Telefon Ab L M | Kommunikationssystem som stödjer trådlös kommunikation av paketdata och förfarande och anordning relaterande därtill |
US7289433B1 (en) | 2000-10-24 | 2007-10-30 | Nortel Networks Limited | Method and system for providing robust connections in networking applications |
US7379994B2 (en) * | 2000-10-26 | 2008-05-27 | Metilinx | Aggregate system resource analysis including correlation matrix and metric-based analysis |
US20020178248A1 (en) * | 2000-10-26 | 2002-11-28 | Metilinx | Application program interface for optimization integration model |
US20020083170A1 (en) * | 2000-10-26 | 2002-06-27 | Metilinx | System-wide optimization integration model |
US7401161B2 (en) * | 2000-12-18 | 2008-07-15 | Sun Microsystems, Inc. | High performance storage array interconnection fabric using multiple independent paths |
US6718428B2 (en) | 2000-12-18 | 2004-04-06 | Sun Microsystems, Inc. | Storage array interconnection fabric using a torus topology |
US7072976B2 (en) | 2001-01-04 | 2006-07-04 | Sun Microsystems, Inc. | Scalable routing scheme for a multi-path interconnection fabric |
US8870649B2 (en) * | 2001-04-10 | 2014-10-28 | Russell O. Carter, SR. | Geo-location interactive gaming system |
US7024488B1 (en) | 2001-04-12 | 2006-04-04 | Ipix Corporation | Method and apparatus for hosting a network camera |
US8026944B1 (en) | 2001-04-12 | 2011-09-27 | Sony Corporation | Method and apparatus for hosting a network camera with image degradation |
US7015949B1 (en) | 2001-04-12 | 2006-03-21 | Ipix Corporation | Method and apparatus for hosting a network camera with refresh degradation |
US7076085B1 (en) | 2001-04-12 | 2006-07-11 | Ipix Corp. | Method and apparatus for hosting a network camera including a heartbeat mechanism |
US7177448B1 (en) | 2001-04-12 | 2007-02-13 | Ipix Corporation | System and method for selecting and transmitting images of interest to a user |
US6820221B2 (en) * | 2001-04-13 | 2004-11-16 | Hewlett-Packard Development Company, L.P. | System and method for detecting process and network failures in a distributed system |
US7219122B1 (en) * | 2001-04-23 | 2007-05-15 | Massachusetts Institute Of Technology | Software service handoff mechanism with a performance reliability improvement mechanism (PRIM) for a collaborative client-server system |
US7007189B2 (en) | 2001-05-07 | 2006-02-28 | Sun Microsystems, Inc. | Routing scheme using preferred paths in a multi-path interconnection fabric in a storage network |
US6909695B2 (en) | 2001-05-07 | 2005-06-21 | Sun Microsystems, Inc. | Fault-tolerant, self-healing routing scheme for a multi-path interconnection fabric in a storage network |
US20030026202A1 (en) * | 2001-08-02 | 2003-02-06 | Benedikt Aschermann | Communications network with redundancy between peripheral units |
US7636724B2 (en) * | 2001-08-31 | 2009-12-22 | Peerify Technologies LLC | Data storage system and method by shredding and deshredding |
US6766482B1 (en) | 2001-10-31 | 2004-07-20 | Extreme Networks | Ethernet automatic protection switching |
US20030158933A1 (en) * | 2002-01-10 | 2003-08-21 | Hubbert Smith | Failover clustering based on input/output processors |
US20030145086A1 (en) * | 2002-01-29 | 2003-07-31 | O'reilly James | Scalable network-attached storage system |
US9240810B2 (en) | 2002-06-11 | 2016-01-19 | Digital Fountain, Inc. | Systems and processes for decoding chain reaction codes through inactivation |
EP1547252A4 (de) * | 2002-07-29 | 2011-04-20 | Robert Halford | Mehrdimensionales datenschutz- und -spiegelungsverfahren für mikroebenendaten |
US7379959B2 (en) * | 2002-09-07 | 2008-05-27 | Appistry, Inc. | Processing information using a hive of computing engines including request handlers and process handlers |
US7363346B2 (en) * | 2002-09-07 | 2008-04-22 | Appistry, Inc. | Reliably storing information across multiple computers such as in a hive of computers |
US7257644B2 (en) * | 2002-09-19 | 2007-08-14 | Microsoft Corporation | Systems and methods for providing presence tracking in a distributed computing system |
US6909383B2 (en) | 2002-10-05 | 2005-06-21 | Digital Fountain, Inc. | Systematic encoding and decoding of chain reaction codes |
US20040153558A1 (en) * | 2002-10-31 | 2004-08-05 | Mesut Gunduc | System and method for providing java based high availability clustering framework |
US7835265B2 (en) * | 2002-10-31 | 2010-11-16 | Conexant Systems, Inc. | High availability Ethernet backplane architecture |
US8635374B1 (en) * | 2003-01-28 | 2014-01-21 | Marvell International Ltd. | Automatic media converter |
US7577636B2 (en) * | 2003-05-28 | 2009-08-18 | Fernandez Dennis S | Network-extensible reconfigurable media appliance |
US7480720B2 (en) | 2003-06-25 | 2009-01-20 | International Business Machines Corporation | Method and system for load balancing switch modules in a server system and a computer system utilizing the same |
EP2722995B1 (de) | 2003-10-06 | 2023-04-19 | QUALCOMM Incorporated | Soft-Dekodierung von Multi-Stage Chain Reaction Kodes |
KR100662120B1 (ko) * | 2003-10-20 | 2006-12-27 | 엘지전자 주식회사 | 홈 네트워킹에 의한 가전기기의 메모리 공용방법 |
KR101041762B1 (ko) * | 2003-12-01 | 2011-06-17 | 디지털 파운튼, 인크. | 통신 채널을 통해 소스로부터 목적지로 데이터를 송신 및 인코딩하는 방법 |
US7240236B2 (en) * | 2004-03-23 | 2007-07-03 | Archivas, Inc. | Fixed content distributed data storage using permutation ring encoding |
US8190714B2 (en) * | 2004-04-15 | 2012-05-29 | Raytheon Company | System and method for computer cluster virtualization using dynamic boot images and virtual disk |
US8336040B2 (en) | 2004-04-15 | 2012-12-18 | Raytheon Company | System and method for topology-aware job scheduling and backfilling in an HPC environment |
US8335909B2 (en) | 2004-04-15 | 2012-12-18 | Raytheon Company | Coupling processors to each other for high performance computing (HPC) |
US7711977B2 (en) * | 2004-04-15 | 2010-05-04 | Raytheon Company | System and method for detecting and managing HPC node failure |
US9178784B2 (en) * | 2004-04-15 | 2015-11-03 | Raytheon Company | System and method for cluster management based on HPC architecture |
US20050235055A1 (en) * | 2004-04-15 | 2005-10-20 | Raytheon Company | Graphical user interface for managing HPC clusters |
KR101161193B1 (ko) | 2004-05-07 | 2012-07-02 | 디지털 파운튼, 인크. | 파일 다운로드 및 스트리밍 시스템 |
JP3988146B2 (ja) | 2004-07-27 | 2007-10-10 | 日本電気株式会社 | マルチノードシステム、ノード間クロスバスイッチ、ノード、スイッチプログラム及びノードプログラム |
US8244882B2 (en) * | 2004-11-17 | 2012-08-14 | Raytheon Company | On-demand instantiation in a high-performance computing (HPC) system |
US7433931B2 (en) * | 2004-11-17 | 2008-10-07 | Raytheon Company | Scheduling in a high-performance computing (HPC) system |
US7475274B2 (en) | 2004-11-17 | 2009-01-06 | Raytheon Company | Fault tolerance and recovery in a high-performance computing (HPC) system |
US7549077B2 (en) * | 2005-04-22 | 2009-06-16 | The United States Of America As Represented By The Secretary Of The Army | Automated self-forming, self-healing configuration permitting substitution of software agents to effect a live repair of a system implemented on hardware processors |
US10154034B2 (en) | 2010-04-26 | 2018-12-11 | International Business Machines Corporation | Cooperative data access request authorization in a dispersed storage network |
US10250686B2 (en) | 2005-09-30 | 2019-04-02 | International Business Machines Corporation | Finding alternate storage locations to support failing disk migration |
US10389814B2 (en) | 2005-09-30 | 2019-08-20 | Pure Storage, Inc. | Prioritizing memory devices to replace based on namespace health |
US10938418B2 (en) | 2005-09-30 | 2021-03-02 | Pure Storage, Inc. | Online disk replacement/removal |
US8171101B2 (en) * | 2005-09-30 | 2012-05-01 | Cleversafe, Inc. | Smart access to a dispersed data storage network |
US11474903B1 (en) | 2005-09-30 | 2022-10-18 | Pure Storage, Inc. | Rebuilding of encoded data slices using locally decodable code segments |
US11620185B2 (en) | 2005-09-30 | 2023-04-04 | Pure Storage, Inc. | Integrity processing in a dispersed storage network |
US8285878B2 (en) * | 2007-10-09 | 2012-10-09 | Cleversafe, Inc. | Block based access to a dispersed data storage network |
US9996413B2 (en) * | 2007-10-09 | 2018-06-12 | International Business Machines Corporation | Ensuring data integrity on a dispersed storage grid |
US11221917B1 (en) | 2005-09-30 | 2022-01-11 | Pure Storage, Inc. | Integrity processing in a dispersed storage network |
US11841770B2 (en) | 2005-09-30 | 2023-12-12 | Pure Storage, Inc. | Storage unit connection security in a storage network and methods for use therewith |
US7574579B2 (en) * | 2005-09-30 | 2009-08-11 | Cleversafe, Inc. | Metadata management system for an information dispersed storage system |
US10044807B2 (en) | 2005-09-30 | 2018-08-07 | International Business Machines Corporation | Optimistic checked writes |
US8555109B2 (en) | 2009-07-30 | 2013-10-08 | Cleversafe, Inc. | Method and apparatus for distributed storage integrity processing |
US10356177B2 (en) | 2005-09-30 | 2019-07-16 | International Business Machines Corporation | Prioritizing ranges to rebuild based on namespace health |
US8352782B2 (en) * | 2005-09-30 | 2013-01-08 | Cleversafe, Inc. | Range based rebuilder for use with a dispersed data storage network |
US10866754B2 (en) | 2010-04-26 | 2020-12-15 | Pure Storage, Inc. | Content archiving in a distributed storage network |
US7546427B2 (en) | 2005-09-30 | 2009-06-09 | Cleversafe, Inc. | System for rebuilding dispersed data |
US8209363B2 (en) | 2007-10-09 | 2012-06-26 | Cleversafe, Inc. | File system adapted for use with a dispersed data storage network |
US10855769B2 (en) | 2005-09-30 | 2020-12-01 | Pure Storage, Inc. | Prioritizing memory devices to replace based on namespace health |
US8694668B2 (en) * | 2005-09-30 | 2014-04-08 | Cleversafe, Inc. | Streaming media software interface to a dispersed data storage network |
US11327674B2 (en) | 2012-06-05 | 2022-05-10 | Pure Storage, Inc. | Storage vault tiering and data migration in a distributed storage network |
US7953937B2 (en) * | 2005-09-30 | 2011-05-31 | Cleversafe, Inc. | Systems, methods, and apparatus for subdividing data for storage in a dispersed data storage grid |
US9632722B2 (en) | 2010-05-19 | 2017-04-25 | International Business Machines Corporation | Balancing storage unit utilization within a dispersed storage network |
US10270858B2 (en) | 2005-09-30 | 2019-04-23 | International Business Machines Corporation | Inducing memory device idle time through rolling read prioritizations |
US12061519B2 (en) | 2005-09-30 | 2024-08-13 | Purage Storage, Inc. | Reconstructing data segments in a storage network and methods for use therewith |
US8595435B2 (en) * | 2009-07-30 | 2013-11-26 | Cleversafe, Inc. | Dispersed storage write process |
US7574570B2 (en) * | 2005-09-30 | 2009-08-11 | Cleversafe Inc | Billing system for information dispersal system |
US11416339B1 (en) | 2005-09-30 | 2022-08-16 | Pure Storage, Inc. | Validating requests based on stored vault information |
US10051057B2 (en) | 2005-09-30 | 2018-08-14 | International Business Machines Corporation | Prioritizing read locations based on an error history |
US10747616B2 (en) | 2015-03-31 | 2020-08-18 | Pure Storage, Inc. | Adapting rebuilding of encoded data slices in a dispersed storage network |
US7904475B2 (en) * | 2007-10-09 | 2011-03-08 | Cleversafe, Inc. | Virtualized data storage vaults on a dispersed data storage network |
US11340988B2 (en) | 2005-09-30 | 2022-05-24 | Pure Storage, Inc. | Generating integrity information in a vast storage system |
US11080138B1 (en) | 2010-04-26 | 2021-08-03 | Pure Storage, Inc. | Storing integrity information in a vast storage system |
US10432726B2 (en) | 2005-09-30 | 2019-10-01 | Pure Storage, Inc. | Last-resort operations to save at-risk-data |
US9027080B2 (en) | 2008-03-31 | 2015-05-05 | Cleversafe, Inc. | Proxy access to a dispersed storage network |
US9774684B2 (en) | 2005-09-30 | 2017-09-26 | International Business Machines Corporation | Storing data in a dispersed storage network |
US11909418B1 (en) | 2005-09-30 | 2024-02-20 | Pure Storage, Inc. | Access authentication in a dispersed storage network |
US10860424B1 (en) | 2005-09-30 | 2020-12-08 | Pure Storage, Inc. | Background verification processing in a storage network |
US10257276B2 (en) | 2005-09-30 | 2019-04-09 | International Business Machines Corporation | Predictive rebalancing according to future usage expectations |
US10282440B2 (en) | 2015-03-31 | 2019-05-07 | International Business Machines Corporation | Prioritizing rebuilding of encoded data slices |
US11272009B1 (en) | 2005-09-30 | 2022-03-08 | Pure Storage, Inc. | Managed data slice maintenance in a distributed storage system |
US8880799B2 (en) * | 2005-09-30 | 2014-11-04 | Cleversafe, Inc. | Rebuilding data on a dispersed storage network |
US10169229B2 (en) | 2012-06-05 | 2019-01-01 | International Business Machines Corporation | Protocols for expanding existing sites in a dispersed storage network |
US7516246B2 (en) * | 2005-10-27 | 2009-04-07 | International Business Machines Corporation | Communications channel method for verifying integrity of untrusted subsystem responses to a request |
JP5550834B2 (ja) | 2006-02-13 | 2014-07-16 | デジタル ファウンテン, インコーポレイテッド | 可変fecオーバヘッド及び保護期間を利用したストリーミング及びバッファリング |
US9270414B2 (en) | 2006-02-21 | 2016-02-23 | Digital Fountain, Inc. | Multiple-field based code generator and decoder for communications systems |
US7971129B2 (en) | 2006-05-10 | 2011-06-28 | Digital Fountain, Inc. | Code generator and decoder for communications systems operating using hybrid codes to allow for multiple efficient users of the communications systems |
US9178535B2 (en) | 2006-06-09 | 2015-11-03 | Digital Fountain, Inc. | Dynamic stream interleaving and sub-stream based delivery |
US9419749B2 (en) | 2009-08-19 | 2016-08-16 | Qualcomm Incorporated | Methods and apparatus employing FEC codes with permanent inactivation of symbols for encoding and decoding processes |
US9209934B2 (en) | 2006-06-09 | 2015-12-08 | Qualcomm Incorporated | Enhanced block-request streaming using cooperative parallel HTTP and forward error correction |
US9432433B2 (en) | 2006-06-09 | 2016-08-30 | Qualcomm Incorporated | Enhanced block-request streaming system using signaling or block creation |
US9380096B2 (en) | 2006-06-09 | 2016-06-28 | Qualcomm Incorporated | Enhanced block-request streaming system for handling low-latency streaming |
US9386064B2 (en) | 2006-06-09 | 2016-07-05 | Qualcomm Incorporated | Enhanced block-request streaming using URL templates and construction rules |
JP4767139B2 (ja) * | 2006-09-15 | 2011-09-07 | 富士通株式会社 | ストレージ管理プログラム、ストレージ管理装置、およびストレージ管理方法 |
WO2008040067A1 (en) * | 2006-10-05 | 2008-04-10 | Waratek Pty Limited | Multiple computer with redundancy architecture |
US20080126502A1 (en) * | 2006-10-05 | 2008-05-29 | Holt John M | Multiple computer system with dual mode redundancy architecture |
US20080130652A1 (en) * | 2006-10-05 | 2008-06-05 | Holt John M | Multiple communication networks for multiple computers |
US20080151902A1 (en) * | 2006-10-05 | 2008-06-26 | Holt John M | Multiple network connections for multiple computers |
US8943218B2 (en) * | 2006-10-12 | 2015-01-27 | Concurrent Computer Corporation | Method and apparatus for a fault resilient collaborative media serving array |
US20080205229A1 (en) * | 2007-02-26 | 2008-08-28 | Yung-Chih Li | Method of identifying optical disc |
JP4930147B2 (ja) * | 2007-03-29 | 2012-05-16 | ヤマハ株式会社 | 音響信号処理装置 |
US20080288991A1 (en) * | 2007-05-15 | 2008-11-20 | Embarq Holdings Company, Llc | System and method for reducing network bandwidth for distributing video programming |
US8418194B2 (en) | 2007-08-31 | 2013-04-09 | Centurylink Intellectual Property Llc | System and method for dynamic bandwidth allocation |
MX2010002829A (es) | 2007-09-12 | 2010-04-01 | Digital Fountain Inc | Generacion y comunicacion de informacion para identificacion de fuentes para permitir comunicaciones seguras. |
EP2193635A4 (de) * | 2007-09-28 | 2011-08-31 | Allied Telesis Holdings Kk | Verfahren und vorrichtung zur verhinderung von netzwerkkonflikten |
US8185614B2 (en) * | 2007-10-09 | 2012-05-22 | Cleversafe, Inc. | Systems, methods, and apparatus for identifying accessible dispersed digital storage vaults utilizing a centralized registry |
US8533256B2 (en) * | 2007-10-09 | 2013-09-10 | Cleversafe, Inc. | Object interface to a dispersed data storage network |
US8819179B2 (en) | 2007-10-09 | 2014-08-26 | Cleversafe, Inc. | Data revision synchronization in a dispersed storage network |
US8549351B2 (en) * | 2007-10-09 | 2013-10-01 | Cleversafe, Inc. | Pessimistic data reading in a dispersed storage network |
US9959076B2 (en) | 2007-10-09 | 2018-05-01 | International Business Machines Corporation | Optimized disk load distribution |
US10027478B2 (en) | 2007-10-09 | 2018-07-17 | International Business Machines Corporation | Differential key backup |
US8478865B2 (en) * | 2007-10-09 | 2013-07-02 | Cleversafe, Inc. | Systems, methods, and apparatus for matching a connection request with a network interface adapted for use with a dispersed data storage network |
US9888076B2 (en) | 2007-10-09 | 2018-02-06 | International Business Machines Corporation | Encoded data slice caching in a distributed storage network |
US9697171B2 (en) | 2007-10-09 | 2017-07-04 | Internaitonal Business Machines Corporation | Multi-writer revision synchronization in a dispersed storage network |
US8965956B2 (en) | 2007-10-09 | 2015-02-24 | Cleversafe, Inc. | Integrated client for use with a dispersed data storage network |
US8572429B2 (en) * | 2007-10-09 | 2013-10-29 | Cleversafe, Inc. | Optimistic data writing in a dispersed storage network |
US9501355B2 (en) | 2008-03-31 | 2016-11-22 | International Business Machines Corporation | Storing data and directory information in a distributed storage network |
US8630987B2 (en) * | 2008-07-16 | 2014-01-14 | Cleversafe, Inc. | System and method for accessing a data object stored in a distributed storage network |
US8819011B2 (en) | 2008-07-16 | 2014-08-26 | Cleversafe, Inc. | Command line interpreter for accessing a data object stored in a distributed storage network |
US20100138717A1 (en) * | 2008-12-02 | 2010-06-03 | Microsoft Corporation | Fork codes for erasure coding of data blocks |
JP4789021B2 (ja) * | 2009-02-06 | 2011-10-05 | 日本電気株式会社 | データ処理装置及びデータ処理方法 |
US9281847B2 (en) | 2009-02-27 | 2016-03-08 | Qualcomm Incorporated | Mobile reception of digital video broadcasting—terrestrial services |
US10104045B2 (en) | 2009-04-20 | 2018-10-16 | International Business Machines Corporation | Verifying data security in a dispersed storage network |
US9483656B2 (en) | 2009-04-20 | 2016-11-01 | International Business Machines Corporation | Efficient and secure data storage utilizing a dispersed data storage system |
US8819781B2 (en) * | 2009-04-20 | 2014-08-26 | Cleversafe, Inc. | Management of network devices within a dispersed data storage network |
US9092294B2 (en) * | 2009-04-20 | 2015-07-28 | Cleversafe, Inc. | Systems, apparatus, and methods for utilizing a reachability set to manage a network upgrade |
US11868498B1 (en) | 2009-04-20 | 2024-01-09 | Pure Storage, Inc. | Storage integrity processing in a storage network |
US11991280B2 (en) | 2009-04-20 | 2024-05-21 | Pure Storage, Inc. | Randomized transforms in a dispersed data storage system |
US8656187B2 (en) * | 2009-04-20 | 2014-02-18 | Cleversafe, Inc. | Dispersed storage secure data decoding |
US8601259B2 (en) * | 2009-04-20 | 2013-12-03 | Cleversafe, Inc. | Securing data in a dispersed storage network using security sentinel value |
US8744071B2 (en) * | 2009-04-20 | 2014-06-03 | Cleversafe, Inc. | Dispersed data storage system data encryption and encoding |
US10447474B2 (en) * | 2009-04-20 | 2019-10-15 | Pure Storage, Inc. | Dispersed data storage system data decoding and decryption |
US8504847B2 (en) * | 2009-04-20 | 2013-08-06 | Cleversafe, Inc. | Securing data in a dispersed storage network using shared secret slices |
US10230692B2 (en) * | 2009-06-30 | 2019-03-12 | International Business Machines Corporation | Distributed storage processing module |
US8275744B2 (en) * | 2009-07-30 | 2012-09-25 | Cleversafe, Inc. | Dispersed storage network virtual address fields |
US9558059B2 (en) | 2009-07-30 | 2017-01-31 | International Business Machines Corporation | Detecting data requiring rebuilding in a dispersed storage network |
US10108492B2 (en) | 2009-07-30 | 2018-10-23 | International Business Machines Corporation | Rebuilding data stored in a dispersed storage network |
US9208025B2 (en) | 2009-07-30 | 2015-12-08 | Cleversafe, Inc. | Virtual memory mapping in a dispersed storage network |
US8489915B2 (en) * | 2009-07-30 | 2013-07-16 | Cleversafe, Inc. | Method and apparatus for storage integrity processing based on error types in a dispersed storage network |
US8706980B2 (en) * | 2009-07-30 | 2014-04-22 | Cleversafe, Inc. | Method and apparatus for slice partial rebuilding in a dispersed storage network |
US9207870B2 (en) | 2009-07-30 | 2015-12-08 | Cleversafe, Inc. | Allocating storage units in a dispersed storage network |
US9009575B2 (en) | 2009-07-30 | 2015-04-14 | Cleversafe, Inc. | Rebuilding a data revision in a dispersed storage network |
US8448016B2 (en) | 2009-07-31 | 2013-05-21 | Cleversafe, Inc. | Computing core application access utilizing dispersed storage |
US9167277B2 (en) * | 2009-08-03 | 2015-10-20 | Cleversafe, Inc. | Dispersed storage network data manipulation |
US9288010B2 (en) | 2009-08-19 | 2016-03-15 | Qualcomm Incorporated | Universal file delivery methods for providing unequal error protection and bundled file delivery services |
US9411810B2 (en) | 2009-08-27 | 2016-08-09 | International Business Machines Corporation | Method and apparatus for identifying data inconsistency in a dispersed storage network |
US8949695B2 (en) * | 2009-08-27 | 2015-02-03 | Cleversafe, Inc. | Method and apparatus for nested dispersed storage |
US8782086B2 (en) | 2009-08-27 | 2014-07-15 | Cleversafe, Inc. | Updating dispersed storage network access control information |
US9235350B2 (en) * | 2009-08-27 | 2016-01-12 | International Business Machines Corporation | Dispersed storage unit and methods with metadata separation for use in a dispersed storage system |
US9917874B2 (en) | 2009-09-22 | 2018-03-13 | Qualcomm Incorporated | Enhanced block-request streaming using block partitioning or request controls for improved client-side handling |
US8924387B2 (en) * | 2009-09-29 | 2014-12-30 | Cleversafe, Inc. | Social networking utilizing a dispersed storage network |
US8554994B2 (en) * | 2009-09-29 | 2013-10-08 | Cleversafe, Inc. | Distributed storage network utilizing memory stripes |
US8689354B2 (en) * | 2009-09-29 | 2014-04-01 | Cleversafe, Inc. | Method and apparatus for accessing secure data in a dispersed storage system |
US8281181B2 (en) * | 2009-09-30 | 2012-10-02 | Cleversafe, Inc. | Method and apparatus for selectively active dispersed storage memory device utilization |
US8402344B2 (en) * | 2009-10-05 | 2013-03-19 | Cleversafe, Inc. | Method and apparatus for controlling dispersed storage of streaming data |
US10389845B2 (en) | 2009-10-29 | 2019-08-20 | Pure Storage, Inc. | Determining how to service requests based on several indicators |
US9661356B2 (en) | 2009-10-29 | 2017-05-23 | International Business Machines Corporation | Distribution of unique copies of broadcast data utilizing fault-tolerant retrieval from dispersed storage |
US8732206B2 (en) * | 2009-10-29 | 2014-05-20 | Cleversafe, Inc. | Distributed storage timestamped revisions |
US9774678B2 (en) | 2009-10-29 | 2017-09-26 | International Business Machines Corporation | Temporarily storing data in a dispersed storage network |
US8291277B2 (en) * | 2009-10-29 | 2012-10-16 | Cleversafe, Inc. | Data distribution utilizing unique write parameters in a dispersed storage system |
US10757187B2 (en) | 2009-10-29 | 2020-08-25 | Pure Storage, Inc. | Streaming all-or-nothing encoding with random offset support |
US9413529B2 (en) | 2009-10-30 | 2016-08-09 | International Business Machines Corporation | Distributed storage network and method for storing and retrieving encryption keys |
US8479078B2 (en) * | 2009-10-30 | 2013-07-02 | Cleversafe, Inc. | Distributed storage network for modification of a data object |
US8572282B2 (en) * | 2009-10-30 | 2013-10-29 | Cleversafe, Inc. | Router assisted dispersed storage network method and apparatus |
US9195408B2 (en) | 2009-10-30 | 2015-11-24 | Cleversafe, Inc. | Highly autonomous dispersed storage system retrieval method |
US8351600B2 (en) * | 2009-10-30 | 2013-01-08 | Cleversafe, Inc. | Distributed storage network and method for encrypting and decrypting data using hash functions |
US9098376B2 (en) | 2009-10-30 | 2015-08-04 | Cleversafe, Inc. | Distributed storage network for modification of a data object |
US10073737B2 (en) | 2009-10-30 | 2018-09-11 | International Business Machines Corporation | Slice location identification |
US8589637B2 (en) * | 2009-10-30 | 2013-11-19 | Cleversafe, Inc. | Concurrent set storage in distributed storage network |
US9311185B2 (en) | 2009-10-30 | 2016-04-12 | Cleversafe, Inc. | Dispersed storage unit solicitation method and apparatus |
US8918897B2 (en) | 2009-11-24 | 2014-12-23 | Cleversafe, Inc. | Dispersed storage network data slice integrity verification |
US9152514B2 (en) | 2009-11-24 | 2015-10-06 | Cleversafe, Inc. | Rebuilding a data segment in a dispersed storage network |
US9270298B2 (en) | 2009-11-24 | 2016-02-23 | International Business Machines Corporation | Selecting storage units to rebuild an encoded data slice |
US9501349B2 (en) | 2009-11-24 | 2016-11-22 | International Business Machines Corporation | Changing dispersed storage error encoding parameters |
US9626248B2 (en) | 2009-11-25 | 2017-04-18 | International Business Machines Corporation | Likelihood based rebuilding of missing encoded data slices |
US9996548B2 (en) | 2009-11-25 | 2018-06-12 | International Business Machines Corporation | Dispersed storage using localized peer-to-peer capable wireless devices in a peer-to-peer or femto cell supported carrier served fashion |
US9836352B2 (en) | 2009-11-25 | 2017-12-05 | International Business Machines Corporation | Detecting a utilization imbalance between dispersed storage network storage units |
US9489264B2 (en) | 2009-11-25 | 2016-11-08 | International Business Machines Corporation | Storing an encoded data slice as a set of sub-slices |
US9672109B2 (en) | 2009-11-25 | 2017-06-06 | International Business Machines Corporation | Adaptive dispersed storage network (DSN) and system |
US10015141B2 (en) | 2009-11-25 | 2018-07-03 | International Business Machines Corporation | Dispersed data storage in a VPN group of devices |
US8621268B2 (en) * | 2009-11-25 | 2013-12-31 | Cleversafe, Inc. | Write threshold utilization in a dispersed storage system |
US8688907B2 (en) * | 2009-11-25 | 2014-04-01 | Cleversafe, Inc. | Large scale subscription based dispersed storage network |
US8527807B2 (en) * | 2009-11-25 | 2013-09-03 | Cleversafe, Inc. | Localized dispersed storage memory system |
US8458233B2 (en) | 2009-11-25 | 2013-06-04 | Cleversafe, Inc. | Data de-duplication in a dispersed storage network utilizing data characterization |
US9727266B2 (en) | 2009-12-29 | 2017-08-08 | International Business Machines Corporation | Selecting storage units in a dispersed storage network |
US10031669B2 (en) | 2009-12-29 | 2018-07-24 | International Business Machines Corporation | Scheduling migration related traffic to be non-disruptive and performant |
US9798467B2 (en) | 2009-12-29 | 2017-10-24 | International Business Machines Corporation | Security checks for proxied requests |
US10158648B2 (en) | 2009-12-29 | 2018-12-18 | International Business Machines Corporation | Policy-based access in a dispersed storage network |
US10001923B2 (en) | 2009-12-29 | 2018-06-19 | International Business Machines Corporation | Generation collapse |
US20180335967A1 (en) | 2009-12-29 | 2018-11-22 | International Business Machines Corporation | User customizable data processing plan in a dispersed storage network |
US8352831B2 (en) * | 2009-12-29 | 2013-01-08 | Cleversafe, Inc. | Digital content distribution utilizing dispersed storage |
US9330241B2 (en) | 2009-12-29 | 2016-05-03 | International Business Machines Corporation | Applying digital rights management to multi-media file playback |
US9413393B2 (en) | 2009-12-29 | 2016-08-09 | International Business Machines Corporation | Encoding multi-media content for a centralized digital video storage system |
US10067831B2 (en) | 2009-12-29 | 2018-09-04 | International Business Machines Corporation | Slice migration in a dispersed storage network |
US9369526B2 (en) | 2009-12-29 | 2016-06-14 | International Business Machines Corporation | Distributed storage time synchronization based on retrieval delay |
US8762343B2 (en) | 2009-12-29 | 2014-06-24 | Cleversafe, Inc. | Dispersed storage of software |
US10237281B2 (en) | 2009-12-29 | 2019-03-19 | International Business Machines Corporation | Access policy updates in a dispersed storage network |
US10133632B2 (en) | 2009-12-29 | 2018-11-20 | International Business Machines Corporation | Determining completion of migration in a dispersed storage network |
US9152489B2 (en) | 2009-12-29 | 2015-10-06 | Cleversafe, Inc. | Revision synchronization of a dispersed storage network |
US8468368B2 (en) * | 2009-12-29 | 2013-06-18 | Cleversafe, Inc. | Data encryption parameter dispersal |
US10148788B2 (en) | 2009-12-29 | 2018-12-04 | International Business Machines Corporation | Method for providing schedulers in a distributed storage network |
US9922063B2 (en) | 2009-12-29 | 2018-03-20 | International Business Machines Corporation | Secure storage of secret data in a dispersed storage network |
US9507735B2 (en) | 2009-12-29 | 2016-11-29 | International Business Machines Corporation | Digital content retrieval utilizing dispersed storage |
US9305597B2 (en) | 2009-12-29 | 2016-04-05 | Cleversafe, Inc. | Accessing stored multi-media content based on a subscription priority level |
US10372686B2 (en) | 2009-12-29 | 2019-08-06 | International Business Machines Corporation | Policy-based storage in a dispersed storage network |
US8990585B2 (en) * | 2009-12-29 | 2015-03-24 | Cleversafe, Inc. | Time based dispersed storage access |
US10289505B2 (en) | 2009-12-29 | 2019-05-14 | International Business Machines Corporation | Dispersed multi-media content for a centralized digital video storage system |
US9672108B2 (en) | 2009-12-29 | 2017-06-06 | International Business Machines Corporation | Dispersed storage network (DSN) and system with improved security |
US9866595B2 (en) | 2009-12-29 | 2018-01-09 | International Busines Machines Corporation | Policy based slice deletion in a dispersed storage network |
US8352501B2 (en) * | 2010-01-28 | 2013-01-08 | Cleversafe, Inc. | Dispersed storage network utilizing revision snapshots |
US20110184997A1 (en) * | 2010-01-28 | 2011-07-28 | Cleversafe, Inc. | Selecting storage facilities in a plurality of dispersed storage networks |
US20190108366A1 (en) * | 2010-01-28 | 2019-04-11 | International Business Machines Corporation | Secure data transmission utilizing distributed storage |
US8954667B2 (en) | 2010-01-28 | 2015-02-10 | Cleversafe, Inc. | Data migration in a dispersed storage network |
US9043548B2 (en) | 2010-01-28 | 2015-05-26 | Cleversafe, Inc. | Streaming content storage |
US8649521B2 (en) | 2010-01-28 | 2014-02-11 | Cleversafe, Inc. | Obfuscation of sequenced encoded data slices |
US11301592B2 (en) | 2010-01-28 | 2022-04-12 | Pure Storage, Inc. | Distributed storage with data obfuscation and method for use therewith |
US9760440B2 (en) | 2010-01-28 | 2017-09-12 | International Business Machines Corporation | Site-based namespace allocation |
US9201732B2 (en) | 2010-01-28 | 2015-12-01 | Cleversafe, Inc. | Selective activation of memory to retrieve data in a dispersed storage network |
US10007575B2 (en) | 2010-02-27 | 2018-06-26 | International Business Machines Corporation | Alternative multiple memory format storage in a storage network |
US20180365105A1 (en) | 2014-06-05 | 2018-12-20 | International Business Machines Corporation | Establishing an operation execution schedule in a dispersed storage network |
US10268374B2 (en) | 2010-02-27 | 2019-04-23 | International Business Machines Corporation | Redundant array of independent discs and dispersed storage network system re-director |
US9135115B2 (en) | 2010-02-27 | 2015-09-15 | Cleversafe, Inc. | Storing data in multiple formats including a dispersed storage format |
US10324791B2 (en) | 2010-11-01 | 2019-06-18 | International Business Machines Corporation | Selectable parallel processing of dispersed storage error encoding |
US11429486B1 (en) | 2010-02-27 | 2022-08-30 | Pure Storage, Inc. | Rebuilding data via locally decodable redundancy in a vast storage network |
US8725940B2 (en) | 2010-02-27 | 2014-05-13 | Cleversafe, Inc. | Distributedly storing raid data in a raid memory and a dispersed storage network memory |
US9244768B2 (en) * | 2010-03-12 | 2016-01-26 | International Business Machines Corporation | Dispersed storage network file system directory |
US8578205B2 (en) * | 2010-03-15 | 2013-11-05 | Cleversafe, Inc. | Requesting cloud data storage |
US9229824B2 (en) | 2010-03-16 | 2016-01-05 | International Business Machines Corporation | Caching rebuilt encoded data slices in a dispersed storage network |
US9170884B2 (en) | 2010-03-16 | 2015-10-27 | Cleversafe, Inc. | Utilizing cached encoded data slices in a dispersed storage network |
US8527705B2 (en) * | 2010-03-16 | 2013-09-03 | Cleversafe, Inc. | Temporarily caching an encoded data slice |
US8625635B2 (en) | 2010-04-26 | 2014-01-07 | Cleversafe, Inc. | Dispersed storage network frame protocol header |
US9495117B2 (en) | 2010-04-26 | 2016-11-15 | International Business Machines Corporation | Storing data in a dispersed storage network |
US10447767B2 (en) | 2010-04-26 | 2019-10-15 | Pure Storage, Inc. | Resolving a performance issue within a dispersed storage network |
US10956292B1 (en) | 2010-04-26 | 2021-03-23 | Pure Storage, Inc. | Utilizing integrity information for data retrieval in a vast storage system |
US9898373B2 (en) | 2010-04-26 | 2018-02-20 | International Business Machines Corporation | Prioritizing rebuilding of stored data in a dispersed storage network |
US8938552B2 (en) | 2010-08-02 | 2015-01-20 | Cleversafe, Inc. | Resolving a protocol issue within a dispersed storage network |
US8914669B2 (en) | 2010-04-26 | 2014-12-16 | Cleversafe, Inc. | Secure rebuilding of an encoded data slice in a dispersed storage network |
US9092386B2 (en) | 2010-04-26 | 2015-07-28 | Cleversafe, Inc. | Indicating an error within a dispersed storage network |
US9606858B2 (en) | 2010-04-26 | 2017-03-28 | International Business Machines Corporation | Temporarily storing an encoded data slice |
US9047218B2 (en) * | 2010-04-26 | 2015-06-02 | Cleversafe, Inc. | Dispersed storage network slice name verification |
US20110280311A1 (en) | 2010-05-13 | 2011-11-17 | Qualcomm Incorporated | One-stream coding for asymmetric stereo video |
US8861727B2 (en) | 2010-05-19 | 2014-10-14 | Cleversafe, Inc. | Storage of sensitive data in a dispersed storage network |
US10193689B2 (en) | 2010-05-19 | 2019-01-29 | International Business Machines Corporation | Storing access information in a dispersed storage network |
US10911230B2 (en) | 2010-05-19 | 2021-02-02 | Pure Storage, Inc. | Securely activating functionality of a computing device in a dispersed storage network |
US11740972B1 (en) | 2010-05-19 | 2023-08-29 | Pure Storage, Inc. | Migrating data in a vast storage network |
US8621580B2 (en) | 2010-05-19 | 2013-12-31 | Cleversafe, Inc. | Retrieving access information in a dispersed storage network |
US8626871B2 (en) | 2010-05-19 | 2014-01-07 | Cleversafe, Inc. | Accessing a global vault in multiple dispersed storage networks |
US10353774B2 (en) | 2015-10-30 | 2019-07-16 | International Business Machines Corporation | Utilizing storage unit latency data in a dispersed storage network |
US8909858B2 (en) | 2010-06-09 | 2014-12-09 | Cleversafe, Inc. | Storing encoded data slices in a dispersed storage network |
US8621269B2 (en) | 2010-06-22 | 2013-12-31 | Cleversafe, Inc. | Identifying a slice name information error in a dispersed storage network |
US8555142B2 (en) | 2010-06-22 | 2013-10-08 | Cleversafe, Inc. | Verifying integrity of data stored in a dispersed storage memory |
US9596447B2 (en) | 2010-07-21 | 2017-03-14 | Qualcomm Incorporated | Providing frame packing type information for video coding |
US8627114B2 (en) | 2010-08-02 | 2014-01-07 | Cleversafe, Inc. | Authenticating a data access request to a dispersed storage network |
US20190095101A1 (en) | 2010-08-02 | 2019-03-28 | International Business Machines Corporation | Authenticating a credential in a dispersed storage network |
US9063968B2 (en) | 2010-08-02 | 2015-06-23 | Cleversafe, Inc. | Identifying a compromised encoded data slice |
US10162524B2 (en) | 2010-08-02 | 2018-12-25 | International Business Machines Corporation | Determining whether to compress a data segment in a dispersed storage network |
US9077734B2 (en) | 2010-08-02 | 2015-07-07 | Cleversafe, Inc. | Authentication of devices of a dispersed storage network |
US8806050B2 (en) | 2010-08-10 | 2014-08-12 | Qualcomm Incorporated | Manifest file updates for network streaming of coded multimedia data |
US9842222B2 (en) | 2010-08-25 | 2017-12-12 | International Business Machines Corporation | Securely rebuilding an encoded data slice |
US10255135B2 (en) | 2010-08-25 | 2019-04-09 | International Business Machines Corporation | Method and apparatus for non-interactive information dispersal |
US9940195B2 (en) | 2010-08-25 | 2018-04-10 | International Business Machines Corporation | Encryption of slice partials |
US8904226B2 (en) | 2010-08-26 | 2014-12-02 | Cleversafe, Inc. | Migrating stored copies of a file to stored encoded data slices |
US9843412B2 (en) | 2010-10-06 | 2017-12-12 | International Business Machines Corporation | Optimizing routing of data across a communications network |
US8918693B2 (en) | 2010-10-06 | 2014-12-23 | Cleversafe, Inc. | Data transmission utilizing data processing and dispersed storage error encoding |
US9571230B2 (en) | 2010-10-06 | 2017-02-14 | International Business Machines Corporation | Adjusting routing of data within a network path |
US10298957B2 (en) | 2010-10-06 | 2019-05-21 | International Business Machines Corporation | Content-based encoding in a multiple routing path communications system |
US8656138B2 (en) | 2010-10-06 | 2014-02-18 | Cleversafe, Inc. | Efficiently accessing an encoded data slice utilizing a memory bin |
US10970168B2 (en) | 2010-10-06 | 2021-04-06 | Pure Storage, Inc. | Adjusting dispersed storage error encoding parameters based on path performance |
US9015499B2 (en) | 2010-11-01 | 2015-04-21 | Cleversafe, Inc. | Verifying data integrity utilizing dispersed storage |
US10146645B2 (en) | 2010-11-01 | 2018-12-04 | International Business Machines Corporation | Multiple memory format storage in a storage network |
US10289318B2 (en) | 2010-11-01 | 2019-05-14 | International Business Machines Corporation | Adjusting optimistic writes in a dispersed storage network |
US9274977B2 (en) | 2010-11-01 | 2016-03-01 | International Business Machines Corporation | Storing data integrity information utilizing dispersed storage |
US10082970B2 (en) | 2010-11-01 | 2018-09-25 | International Business Machines Corporation | Storing an effective dynamic width of encoded data slices |
US10805042B2 (en) | 2010-11-01 | 2020-10-13 | Pure Storage, Inc. | Creating transmission data slices for use in a dispersed storage network |
US20120109885A1 (en) | 2010-11-01 | 2012-05-03 | Cleversafe, Inc. | File retrieval during a legacy storage system to dispersed storage network migration |
US10768833B2 (en) | 2010-11-01 | 2020-09-08 | Pure Storage, Inc. | Object dispersal load balancing |
US9590838B2 (en) | 2010-11-09 | 2017-03-07 | International Business Machines Corporation | Transferring data of a dispersed storage network |
US11061597B2 (en) | 2010-11-09 | 2021-07-13 | Pure Storage, Inc. | Supporting live migrations and re-balancing with a virtual storage unit |
US8627065B2 (en) | 2010-11-09 | 2014-01-07 | Cleversafe, Inc. | Validating a certificate chain in a dispersed storage network |
US11789631B2 (en) | 2010-11-29 | 2023-10-17 | Pure Storage, Inc. | Utilizing metadata storage trees in a vast storage network |
US10372350B2 (en) | 2010-11-29 | 2019-08-06 | Pure Storage, Inc. | Shared ownership of namespace ranges |
US9483398B2 (en) | 2010-11-29 | 2016-11-01 | International Business Machines Corporation | Partitioning data for storage in a dispersed storage network |
US11582299B2 (en) | 2016-01-26 | 2023-02-14 | Pure Storage, Inc. | Allocating cache memory in a dispersed storage network |
US10802763B2 (en) | 2010-11-29 | 2020-10-13 | Pure Storage, Inc. | Remote storage verification |
US11307930B1 (en) | 2010-11-29 | 2022-04-19 | Pure Storage, Inc. | Optimized selection of participants in distributed data rebuild/verification |
US9454431B2 (en) | 2010-11-29 | 2016-09-27 | International Business Machines Corporation | Memory selection for slice storage in a dispersed storage network |
US10922179B2 (en) | 2010-11-29 | 2021-02-16 | Pure Storage, Inc. | Post rebuild verification |
CN103262046A (zh) * | 2010-12-10 | 2013-08-21 | 日本电气株式会社 | 服务器管理装置、服务器管理方法和程序 |
US8892845B2 (en) | 2010-12-22 | 2014-11-18 | Cleversafe, Inc. | Segmenting data for storage in a dispersed storage network |
US8683231B2 (en) | 2010-12-27 | 2014-03-25 | Cleversafe, Inc. | Obfuscating data stored in a dispersed storage network |
US9081714B2 (en) | 2011-02-01 | 2015-07-14 | Cleversafe, Inc. | Utilizing a dispersed storage network access token module to store data in a dispersed storage network memory |
US8688949B2 (en) | 2011-02-01 | 2014-04-01 | Cleversafe, Inc. | Modifying data storage in response to detection of a memory system imbalance |
US8958375B2 (en) | 2011-02-11 | 2015-02-17 | Qualcomm Incorporated | Framing for an improved radio link protocol including FEC |
US9270299B2 (en) | 2011-02-11 | 2016-02-23 | Qualcomm Incorporated | Encoding and decoding using elastic codes with flexible source block mapping |
US8868695B2 (en) | 2011-03-02 | 2014-10-21 | Cleversafe, Inc. | Configuring a generic computing device utilizing specific computing device operation information |
US20120226667A1 (en) | 2011-03-02 | 2012-09-06 | Cleversafe, Inc. | Determining a staleness state of a dispersed storage network local directory |
US8874991B2 (en) | 2011-04-01 | 2014-10-28 | Cleversafe, Inc. | Appending data to existing data stored in a dispersed storage network |
US10298684B2 (en) | 2011-04-01 | 2019-05-21 | International Business Machines Corporation | Adaptive replication of dispersed data to improve data access performance |
US11418580B2 (en) | 2011-04-01 | 2022-08-16 | Pure Storage, Inc. | Selective generation of secure signatures in a distributed storage network |
US8843804B2 (en) | 2011-04-01 | 2014-09-23 | Cleversafe, Inc. | Adjusting a dispersal parameter of dispersedly stored data |
US9141458B2 (en) | 2011-05-09 | 2015-09-22 | Cleversafe, Inc. | Adjusting a data storage address mapping in a maintenance free storage container |
US9292682B2 (en) | 2011-05-09 | 2016-03-22 | International Business Machines Corporation | Accessing a second web page from a dispersed storage network memory based on a first web page selection |
US9298550B2 (en) | 2011-05-09 | 2016-03-29 | Cleversafe, Inc. | Assigning a dispersed storage network address range in a maintenance free storage container |
US20170192684A1 (en) | 2011-05-09 | 2017-07-06 | International Business Machines Corporation | Auditing a transaction in a dispersed storage network |
US9219604B2 (en) | 2011-05-09 | 2015-12-22 | Cleversafe, Inc. | Generating an encrypted message for storage |
US10949301B2 (en) | 2011-06-06 | 2021-03-16 | Pure Storage, Inc. | Pre-positioning pre-stored content in a content distribution system |
US8756480B2 (en) | 2011-06-06 | 2014-06-17 | Cleversafe, Inc. | Prioritized deleting of slices stored in a dispersed storage network |
US8762770B2 (en) | 2011-07-06 | 2014-06-24 | Cleversafe, Inc. | Distribution of a customized preview of multi-media content |
US8966311B2 (en) | 2011-07-06 | 2015-02-24 | Cleversafe, Inc. | Maintenance free storage container storage module access |
US11016702B2 (en) | 2011-07-27 | 2021-05-25 | Pure Storage, Inc. | Hierarchical event tree |
US9135098B2 (en) | 2011-07-27 | 2015-09-15 | Cleversafe, Inc. | Modifying dispersed storage network event records |
US10678619B2 (en) | 2011-07-27 | 2020-06-09 | Pure Storage, Inc. | Unified logs and device statistics |
US10454678B2 (en) | 2011-08-17 | 2019-10-22 | Pure Storage, Inc. | Accesor-based audit trails |
US9092385B2 (en) | 2011-08-17 | 2015-07-28 | Cleversafe, Inc. | Facilitating access of a dispersed storage network |
US10120756B2 (en) | 2011-08-17 | 2018-11-06 | International Business Machines Corporation | Audit object generation in a dispersed storage network |
US9971802B2 (en) | 2011-08-17 | 2018-05-15 | International Business Machines Corporation | Audit record transformation in a dispersed storage network |
US9253233B2 (en) | 2011-08-31 | 2016-02-02 | Qualcomm Incorporated | Switch signaling methods providing improved switching between representations for adaptive HTTP streaming |
US11907060B2 (en) | 2011-09-06 | 2024-02-20 | Pure Storage, Inc. | Coding of data streams in a vast storage network |
US20190179696A1 (en) | 2011-09-06 | 2019-06-13 | International Business Machines Corporation | Demultiplexing decoded data streams in a distributed storage network |
US10235237B2 (en) | 2011-09-06 | 2019-03-19 | Intertnational Business Machines Corporation | Decoding data streams in a distributed storage network |
US9213742B2 (en) | 2011-09-06 | 2015-12-15 | Cleversafe, Inc. | Time aligned transmission of concurrently coded data streams |
US9785491B2 (en) | 2011-10-04 | 2017-10-10 | International Business Machines Corporation | Processing a certificate signing request in a dispersed storage network |
US8555130B2 (en) | 2011-10-04 | 2013-10-08 | Cleversafe, Inc. | Storing encoded data slices in a dispersed storage unit |
US8782494B2 (en) | 2011-10-04 | 2014-07-15 | Cleversafe, Inc. | Reproducing data utilizing a zero information gain function |
US9843844B2 (en) | 2011-10-05 | 2017-12-12 | Qualcomm Incorporated | Network streaming of media data |
US10496500B2 (en) | 2011-11-01 | 2019-12-03 | Pure Storage, Inc. | Preemptively reading extra encoded data slices |
US9304843B2 (en) | 2011-11-01 | 2016-04-05 | Cleversafe, Inc. | Highly secure method for accessing a dispersed storage network |
US10365969B2 (en) | 2011-11-01 | 2019-07-30 | International Business Machines Corporation | Multiple wireless communication systems stream slices based on geography |
US11329830B1 (en) | 2011-11-01 | 2022-05-10 | Pure Storage, Inc. | Dispersed credentials |
US8839368B2 (en) | 2011-11-01 | 2014-09-16 | Cleversafe, Inc. | Acquiring a trusted set of encoded data slices |
US10437678B2 (en) | 2011-11-01 | 2019-10-08 | Pure Storage, Inc. | Updating an encoded data slice |
US8627066B2 (en) | 2011-11-03 | 2014-01-07 | Cleversafe, Inc. | Processing a dispersed storage network access request utilizing certificate chain validation information |
US10469578B2 (en) | 2011-11-28 | 2019-11-05 | Pure Storage, Inc. | Prioritization of messages of a dispersed storage network |
US8848906B2 (en) | 2011-11-28 | 2014-09-30 | Cleversafe, Inc. | Encrypting data for storage in a dispersed storage network |
US10558592B2 (en) | 2011-11-28 | 2020-02-11 | Pure Storage, Inc. | Priority level adaptation in a dispersed storage network |
US10977194B2 (en) | 2011-11-28 | 2021-04-13 | Pure Storage, Inc. | Securely storing random keys in a dispersed storage network |
US11474958B1 (en) | 2011-11-28 | 2022-10-18 | Pure Storage, Inc. | Generating and queuing system messages with priorities in a storage network |
US10318445B2 (en) | 2011-11-28 | 2019-06-11 | International Business Machines Corporation | Priority level adaptation in a dispersed storage network |
US10055283B2 (en) | 2011-11-28 | 2018-08-21 | International Business Machines Corporation | Securely distributing random keys in a dispersed storage network |
US10387071B2 (en) | 2011-11-28 | 2019-08-20 | Pure Storage, Inc. | On-the-fly cancellation of unnecessary read requests |
US10146621B2 (en) | 2011-12-12 | 2018-12-04 | International Business Machines Corporation | Chaining computes in a distributed computing system |
US9009567B2 (en) | 2011-12-12 | 2015-04-14 | Cleversafe, Inc. | Encrypting distributed computing data |
US10104168B2 (en) | 2011-12-12 | 2018-10-16 | International Business Machines Corporation | Method for managing throughput in a distributed storage network |
US10176045B2 (en) | 2011-12-12 | 2019-01-08 | International Business Machines Corporation | Internet based shared memory in a distributed computing system |
US9141468B2 (en) | 2011-12-12 | 2015-09-22 | Cleversafe, Inc. | Managing memory utilization in a distributed storage and task network |
US9817701B2 (en) | 2011-12-12 | 2017-11-14 | International Business Machines Corporation | Threshold computing in a distributed computing system |
US9009564B2 (en) | 2011-12-12 | 2015-04-14 | Cleversafe, Inc. | Storing data in a distributed storage network |
US10346218B2 (en) | 2011-12-12 | 2019-07-09 | International Business Machines Corporation | Partial task allocation in a dispersed storage network |
US9584359B2 (en) | 2011-12-12 | 2017-02-28 | International Business Machines Corporation | Distributed storage and computing of interim data |
US9674155B2 (en) | 2011-12-12 | 2017-06-06 | International Business Machines Corporation | Encrypting segmented data in a distributed computing system |
US9430286B2 (en) | 2011-12-12 | 2016-08-30 | International Business Machines Corporation | Authorizing distributed task processing in a distributed storage network |
US10360106B2 (en) | 2011-12-12 | 2019-07-23 | International Business Machines Corporation | Throttled real-time writes |
US20130238900A1 (en) | 2011-12-12 | 2013-09-12 | Cleversafe, Inc. | Dispersed storage network secure hierarchical file directory |
US10348640B2 (en) | 2011-12-12 | 2019-07-09 | International Business Machines Corporation | Partial task execution in a dispersed storage network |
US20180083930A1 (en) | 2011-12-12 | 2018-03-22 | International Business Machines Corporation | Reads for dispersed computation jobs |
US10666596B2 (en) | 2011-12-12 | 2020-05-26 | Pure Storage, Inc. | Messaging via a shared memory of a distributed computing system |
US9507786B2 (en) | 2012-01-31 | 2016-11-29 | International Business Machines Corporation | Retrieving data utilizing a distributed index |
US9146810B2 (en) | 2012-01-31 | 2015-09-29 | Cleversafe, Inc. | Identifying a potentially compromised encoded data slice |
US10671585B2 (en) | 2012-01-31 | 2020-06-02 | Pure Storage, Inc. | Storing indexed data to a dispersed storage network |
US9203901B2 (en) | 2012-01-31 | 2015-12-01 | Cleversafe, Inc. | Efficiently storing data in a dispersed storage network |
US9891995B2 (en) | 2012-01-31 | 2018-02-13 | International Business Machines Corporation | Cooperative decentralized rebuild scanning |
US9465861B2 (en) | 2012-01-31 | 2016-10-11 | International Business Machines Corporation | Retrieving indexed data from a dispersed storage network |
US10402393B2 (en) | 2012-03-02 | 2019-09-03 | Pure Storage, Inc. | Slice migration in a dispersed storage network |
US10157051B2 (en) | 2012-03-02 | 2018-12-18 | International Business Machines Corporation | Upgrading devices in a dispersed storage network |
US8930375B2 (en) | 2012-03-02 | 2015-01-06 | Cleversafe, Inc. | Splitting an index node of a hierarchical dispersed storage index |
US11232093B2 (en) | 2012-03-02 | 2022-01-25 | Pure Storage, Inc. | Slice migration in a dispersed storage network |
US9195684B2 (en) | 2012-03-02 | 2015-11-24 | Cleversafe, Inc. | Redundant task execution in a distributed storage and task network |
US9294226B2 (en) | 2012-03-26 | 2016-03-22 | Qualcomm Incorporated | Universal object delivery and template-based file delivery |
US9380032B2 (en) | 2012-04-25 | 2016-06-28 | International Business Machines Corporation | Encrypting data for storage in a dispersed storage network |
US10795766B2 (en) | 2012-04-25 | 2020-10-06 | Pure Storage, Inc. | Mapping slice groupings in a dispersed storage network |
US10621044B2 (en) | 2012-04-25 | 2020-04-14 | Pure Storage, Inc. | Mapping slice groupings in a dispersed storage network |
US10474395B2 (en) | 2012-06-05 | 2019-11-12 | Pure Storage, Inc. | Abstracting namespace mapping in a dispersed storage network through multiple hierarchies |
US9164841B2 (en) | 2012-06-05 | 2015-10-20 | Cleversafe, Inc. | Resolution of a storage error in a dispersed storage network |
US10073638B2 (en) | 2012-06-05 | 2018-09-11 | International Business Machines Corporation | Automatic namespace ordering determination |
US10447471B2 (en) | 2012-06-05 | 2019-10-15 | Pure Storage, Inc. | Systematic secret sharing |
US9613052B2 (en) | 2012-06-05 | 2017-04-04 | International Business Machines Corporation | Establishing trust within a cloud computing system |
US10002047B2 (en) | 2012-06-05 | 2018-06-19 | International Business Machines Corporation | Read-if-not-revision-equals protocol message |
US10114697B2 (en) | 2012-06-25 | 2018-10-30 | International Business Machines Corporation | Large object parallel writing |
US10157011B2 (en) | 2012-06-25 | 2018-12-18 | International Business Machines Corporation | Temporary suspension of vault access |
US20180336097A1 (en) | 2012-06-25 | 2018-11-22 | International Business Machines Corporation | Namespace affinity and failover for processing units in a dispersed storage network |
US11093327B1 (en) | 2012-06-25 | 2021-08-17 | Pure Storage, Inc. | Failure abatement approach for failed storage units common to multiple vaults |
US9292212B2 (en) | 2012-06-25 | 2016-03-22 | International Business Machines Corporation | Detecting storage errors in a dispersed storage network |
US10430276B2 (en) | 2012-06-25 | 2019-10-01 | Pure Storage, Inc. | Optimal orderings of processing unit priorities in a dispersed storage network |
US8935761B2 (en) | 2012-06-25 | 2015-01-13 | Cleversafe, Inc. | Accessing storage nodes in an on-line media storage system |
US10120574B2 (en) | 2012-06-25 | 2018-11-06 | International Business Machines Corporation | Reversible data modifications within DS units |
US10651975B2 (en) | 2012-08-02 | 2020-05-12 | Pure Storage, Inc. | Forwarding data amongst cooperative DSTN processing units of a massive data ingestion system |
US9258177B2 (en) | 2012-08-02 | 2016-02-09 | International Business Machines Corporation | Storing a data stream in a set of storage devices |
US10331518B2 (en) | 2012-08-31 | 2019-06-25 | International Business Machines Corporation | Encoding data in a dispersed storage network |
US20220342755A1 (en) * | 2012-08-31 | 2022-10-27 | Pure Storage, Inc. | Adjusting Error Encoding Parameters for Writing Encoded Data Slices |
US11360851B2 (en) | 2012-08-31 | 2022-06-14 | Pure Storage, Inc. | Duplicating authentication information between connections |
US9154298B2 (en) | 2012-08-31 | 2015-10-06 | Cleversafe, Inc. | Securely storing data in a dispersed storage network |
US10241863B2 (en) | 2012-08-31 | 2019-03-26 | International Business Machines Corporation | Slice rebuilding in a dispersed storage network |
US10409679B2 (en) | 2012-08-31 | 2019-09-10 | Pure Storage, Inc. | Migrating data slices in a dispersed storage network |
US10409678B2 (en) | 2012-08-31 | 2019-09-10 | Pure Storage, Inc. | Self-optimizing read-ahead |
US9875158B2 (en) | 2012-08-31 | 2018-01-23 | International Business Machines Corporation | Slice storage in a dispersed storage network |
US10057351B2 (en) | 2012-09-13 | 2018-08-21 | International Business Machines Corporation | Modifying information dispersal algorithm configurations in a dispersed storage network |
US10318549B2 (en) | 2012-09-13 | 2019-06-11 | International Business Machines Corporation | Batching modifications to nodes in a dispersed index |
US10402423B2 (en) | 2012-09-13 | 2019-09-03 | Pure Storage, Inc. | Sliding windows for batching index updates |
US10417253B2 (en) | 2012-09-13 | 2019-09-17 | Pure Storage, Inc. | Multi-level data storage in a dispersed storage network |
US10331698B2 (en) | 2012-09-13 | 2019-06-25 | International Business Machines Corporation | Rebuilding data in a dispersed storage network |
US9483539B2 (en) | 2012-09-13 | 2016-11-01 | International Business Machines Corporation | Updating local data utilizing a distributed storage network |
US9648087B2 (en) | 2012-10-08 | 2017-05-09 | International Business Machines Corporation | Allocating distributed storage and task execution resources |
US10606700B2 (en) | 2012-10-08 | 2020-03-31 | Pure Storage, Inc. | Enhanced dispersed storage error encoding using multiple encoding layers |
US10127111B2 (en) | 2012-10-08 | 2018-11-13 | International Business Machines Corporation | Client provided request prioritization hints |
US10331519B2 (en) | 2012-10-08 | 2019-06-25 | International Business Machines Corporation | Application of secret sharing schemes at multiple levels of a dispersed storage network |
US9311179B2 (en) | 2012-10-30 | 2016-04-12 | Cleversafe, Inc. | Threshold decoding of data based on trust levels |
US9277011B2 (en) | 2012-10-30 | 2016-03-01 | International Business Machines Corporation | Processing an unsuccessful write request in a dispersed storage network |
US10558621B2 (en) | 2012-12-05 | 2020-02-11 | Pure Storage, Inc. | Lock stealing writes for improved reliability |
US9811533B2 (en) | 2012-12-05 | 2017-11-07 | International Business Machines Corporation | Accessing distributed computing functions in a distributed computing system |
US9521197B2 (en) | 2012-12-05 | 2016-12-13 | International Business Machines Corporation | Utilizing data object storage tracking in a dispersed storage network |
US10587691B2 (en) | 2012-12-05 | 2020-03-10 | Pure Storage, Inc. | Impatient writes |
US9087085B2 (en) | 2012-12-10 | 2015-07-21 | International Business Machines Corporation | Pre-assimilation values and post-assimilation values in hardware instance identifiers |
US10642992B2 (en) | 2013-01-04 | 2020-05-05 | Pure Storage, Inc. | Password augmented all-or-nothin transform |
US20190250823A1 (en) | 2013-01-04 | 2019-08-15 | International Business Machines Corporation | Efficient computation of only the required slices |
US10241866B2 (en) | 2013-01-04 | 2019-03-26 | International Business Machines Corporation | Allocating rebuilding queue entries in a dispersed storage network |
US10423491B2 (en) | 2013-01-04 | 2019-09-24 | Pure Storage, Inc. | Preventing multiple round trips when writing to target widths |
US10204009B2 (en) | 2013-01-04 | 2019-02-12 | International Business Machines Corporation | Prioritized rebuilds using dispersed indices |
US9558067B2 (en) | 2013-01-04 | 2017-01-31 | International Business Machines Corporation | Mapping storage of data in a dispersed storage network |
US10013203B2 (en) | 2013-01-04 | 2018-07-03 | International Business Machines Corporation | Achieving storage compliance in a dispersed storage network |
US10402270B2 (en) | 2013-01-04 | 2019-09-03 | Pure Storage, Inc. | Deterministically determining affinity for a source name range |
US11416340B1 (en) | 2013-01-04 | 2022-08-16 | Pure Storage, Inc. | Storage system with multiple storage types in a vast storage network |
US9311187B2 (en) | 2013-01-04 | 2016-04-12 | Cleversafe, Inc. | Achieving storage compliance in a dispersed storage network |
US10229002B2 (en) | 2013-01-04 | 2019-03-12 | International Business Machines Corporation | Process to migrate named objects to a dispersed or distributed storage network (DSN) |
US9043499B2 (en) | 2013-02-05 | 2015-05-26 | Cleversafe, Inc. | Modifying a dispersed storage network memory data access response plan |
US10664360B2 (en) | 2013-02-05 | 2020-05-26 | Pure Storage, Inc. | Identifying additional resources to accelerate rebuildling |
US10430122B2 (en) | 2013-02-05 | 2019-10-01 | Pure Storage, Inc. | Using partial rebuilding to change information dispersal algorithm (IDA) |
US10055441B2 (en) | 2013-02-05 | 2018-08-21 | International Business Machines Corporation | Updating shared group information in a dispersed storage network |
US10310763B2 (en) | 2013-02-05 | 2019-06-04 | International Business Machines Corporation | Forming a distributed storage network memory without namespace aware distributed storage units |
US10268554B2 (en) | 2013-02-05 | 2019-04-23 | International Business Machines Corporation | Using dispersed computation to change dispersal characteristics |
US10621021B2 (en) | 2013-02-05 | 2020-04-14 | Pure Storage, Inc. | Using dispersed data structures to point to slice or date source replicas |
US10642489B2 (en) | 2013-02-26 | 2020-05-05 | Pure Storage, Inc. | Determining when to initiate an intra-distributed storage unit rebuild vs. an inter-distributed storage unit rebuild |
US11036392B2 (en) | 2013-02-26 | 2021-06-15 | Pure Storage, Inc. | Determining when to use convergent encryption |
US9274908B2 (en) | 2013-02-26 | 2016-03-01 | International Business Machines Corporation | Resolving write conflicts in a dispersed storage network |
US10075523B2 (en) | 2013-04-01 | 2018-09-11 | International Business Machines Corporation | Efficient storage of data in a dispersed storage network |
US10223213B2 (en) | 2013-05-03 | 2019-03-05 | International Business Machines Corporation | Salted zero expansion all or nothing transformation |
US9456035B2 (en) | 2013-05-03 | 2016-09-27 | International Business Machines Corporation | Storing related data in a dispersed storage network |
US9405609B2 (en) | 2013-05-22 | 2016-08-02 | International Business Machines Corporation | Storing data in accordance with a performance threshold |
WO2014191705A1 (en) * | 2013-05-29 | 2014-12-04 | Toshiba Research Europe Limited | Coding and decoding methods and apparatus |
US9424132B2 (en) | 2013-05-30 | 2016-08-23 | International Business Machines Corporation | Adjusting dispersed storage network traffic due to rebuilding |
US9432341B2 (en) | 2013-05-30 | 2016-08-30 | International Business Machines Corporation | Securing data in a dispersed storage network |
US11226860B1 (en) | 2013-05-30 | 2022-01-18 | Pure Storage, Inc. | Difference based rebuild list scanning |
US10169369B2 (en) | 2013-07-01 | 2019-01-01 | International Business Machines Corporation | Meeting storage requirements with limited storage resources |
US12079081B2 (en) | 2013-07-01 | 2024-09-03 | Pure Storage, Inc. | Prioritizing storage units for data storage operations |
US11221916B2 (en) | 2013-07-01 | 2022-01-11 | Pure Storage, Inc. | Prioritized data reconstruction in a dispersed storage network |
US10133635B2 (en) | 2013-07-01 | 2018-11-20 | International Business Machines Corporation | Low-width vault in distributed storage system |
US9652470B2 (en) | 2013-07-01 | 2017-05-16 | International Business Machines Corporation | Storing data in a dispersed storage network |
US9501360B2 (en) | 2013-07-01 | 2016-11-22 | International Business Machines Corporation | Rebuilding data while reading data in a dispersed storage network |
US20180188964A1 (en) | 2013-07-31 | 2018-07-05 | International Business Machines Corporation | Managed storage unit shutdown in a distributed storage network |
US20150039660A1 (en) | 2013-07-31 | 2015-02-05 | Cleversafe, Inc. | Co-locate objects request |
US10180880B2 (en) | 2013-07-31 | 2019-01-15 | International Business Machines Corporation | Adaptive rebuilding rates based on sampling and inference |
US10681134B2 (en) | 2013-07-31 | 2020-06-09 | Pure Storage, Inc. | Accelerated learning in adaptive rebuilding by applying observations to other samples |
US9848044B2 (en) | 2013-07-31 | 2017-12-19 | International Business Machines Corporation | Distributed storage network with coordinated partial task execution and methods for use therewith |
US10601918B2 (en) | 2013-08-29 | 2020-03-24 | Pure Storage, Inc. | Rotating inactive storage units in a distributed storage network |
US10514857B2 (en) | 2013-08-29 | 2019-12-24 | Pure Storage, Inc. | Dynamic adjusting of parameters based on resource scoring |
US9438675B2 (en) | 2013-08-29 | 2016-09-06 | International Business Machines Corporation | Dispersed storage with variable slice length and methods for use therewith |
US9749414B2 (en) | 2013-08-29 | 2017-08-29 | International Business Machines Corporation | Storing low retention priority data in a dispersed storage network |
US10484474B2 (en) | 2013-08-29 | 2019-11-19 | Pure Storage, Inc. | Rotating offline DS units |
US10489071B2 (en) | 2013-08-29 | 2019-11-26 | Pure Storage, Inc. | Vault provisioning within dispersed or distributed storage network (DSN) |
US9405623B2 (en) * | 2013-09-25 | 2016-08-02 | Xyratex Technology Limited | Method of, and apparatus for, layout rectification of erasure encoded storage systems |
US9857974B2 (en) | 2013-10-03 | 2018-01-02 | International Business Machines Corporation | Session execution decision |
US9781208B2 (en) | 2013-11-01 | 2017-10-03 | International Business Machines Corporation | Obtaining dispersed storage network system registry information |
US10304096B2 (en) | 2013-11-01 | 2019-05-28 | International Business Machines Corporation | Renting a pipe to a storage system |
US10182115B2 (en) | 2013-11-01 | 2019-01-15 | International Business Machines Corporation | Changing rebuild priority for a class of data |
US9900316B2 (en) | 2013-12-04 | 2018-02-20 | International Business Machines Corporation | Accessing storage units of a dispersed storage network |
US9594639B2 (en) | 2014-01-06 | 2017-03-14 | International Business Machines Corporation | Configuring storage resources of a dispersed storage network |
US10922181B2 (en) | 2014-01-06 | 2021-02-16 | Pure Storage, Inc. | Using storage locations greater than an IDA width in a dispersed storage network |
US11340993B2 (en) | 2014-01-06 | 2022-05-24 | Pure Storage, Inc. | Deferred rebuilding with alternate storage locations |
US10318382B2 (en) | 2014-01-31 | 2019-06-11 | International Business Machines Corporation | Determining missing encoded data slices |
US11204836B1 (en) | 2014-01-31 | 2021-12-21 | Pure Storage, Inc. | Using trap slices for anomaly detection in a distributed storage network |
US9778987B2 (en) | 2014-01-31 | 2017-10-03 | International Business Machines Corporation | Writing encoded data slices in a dispersed storage network |
US9552261B2 (en) | 2014-01-31 | 2017-01-24 | International Business Machines Corporation | Recovering data from microslices in a dispersed storage network |
US11983070B2 (en) | 2014-01-31 | 2024-05-14 | Pure Storage, Inc. | Determining segmentation size in a distributed storage network |
US10592109B2 (en) | 2014-02-26 | 2020-03-17 | Pure Storage, Inc. | Selecting storage resources in a dispersed storage network |
US10678638B2 (en) | 2014-02-26 | 2020-06-09 | Pure Storage, Inc. | Resolving write conflicts in a dispersed storage network |
US9665429B2 (en) | 2014-02-26 | 2017-05-30 | International Business Machines Corporation | Storage of data with verification in a dispersed storage network |
US10635312B2 (en) | 2014-02-26 | 2020-04-28 | Pure Storage, Inc. | Recovering data in a dispersed storage network |
US10140182B2 (en) | 2014-02-26 | 2018-11-27 | International Business Machines Corporation | Modifying allocation of storage resources in a dispersed storage network |
US9529834B2 (en) | 2014-02-26 | 2016-12-27 | International Business Machines Corporation | Concatenating data objects for storage in a dispersed storage network |
US10769016B2 (en) | 2014-02-26 | 2020-09-08 | Pure Storage, Inc. | Storing a plurality of correlated data in a dispersed storage network |
CN104917800B (zh) * | 2014-03-14 | 2018-03-27 | 国际商业机器公司 | 建立用于虚拟机的冗余连接的方法及装置 |
US20190087599A1 (en) | 2014-04-02 | 2019-03-21 | International Business Machines Corporation | Compressing a slice name listing in a dispersed storage network |
US10628245B2 (en) | 2014-04-02 | 2020-04-21 | Pure Storage, Inc. | Monitoring of storage units in a dispersed storage network |
US10761917B2 (en) | 2014-04-02 | 2020-09-01 | Pure Storage, Inc. | Using global namespace addressing in a dispersed storage network |
US11347590B1 (en) | 2014-04-02 | 2022-05-31 | Pure Storage, Inc. | Rebuilding data in a distributed storage network |
US10020826B2 (en) | 2014-04-02 | 2018-07-10 | International Business Machines Corporation | Generating molecular encoding information for data storage |
US10681138B2 (en) | 2014-04-02 | 2020-06-09 | Pure Storage, Inc. | Storing and retrieving multi-format content in a distributed storage network |
US10015152B2 (en) | 2014-04-02 | 2018-07-03 | International Business Machines Corporation | Securing data in a dispersed storage network |
US9390283B2 (en) | 2014-04-02 | 2016-07-12 | International Business Machines Corporation | Controlling access in a dispersed storage network |
US10394476B2 (en) | 2014-04-30 | 2019-08-27 | Pure Storage, Inc. | Multi-level stage locality selection on a large system |
US9762395B2 (en) | 2014-04-30 | 2017-09-12 | International Business Machines Corporation | Adjusting a number of dispersed storage units |
US9965336B2 (en) | 2014-04-30 | 2018-05-08 | International Business Machines Corporation | Delegating iterative storage unit access in a dispersed storage network |
US10296263B2 (en) | 2014-04-30 | 2019-05-21 | International Business Machines Corporation | Dispersed bloom filter for determining presence of an object |
US10802732B2 (en) | 2014-04-30 | 2020-10-13 | Pure Storage, Inc. | Multi-level stage locality selection on a large system |
US10152601B2 (en) | 2014-06-05 | 2018-12-11 | International Business Machines Corporation | Reliably recovering stored data in a dispersed storage network |
US10140178B2 (en) | 2014-06-05 | 2018-11-27 | International Business Machines Corporation | Verifying a status level of stored encoded data slices |
US10509577B2 (en) | 2014-06-05 | 2019-12-17 | Pure Storage, Inc. | Reliable storage in a dispersed storage network |
US9841925B2 (en) | 2014-06-30 | 2017-12-12 | International Business Machines Corporation | Adjusting timing of storing data in a dispersed storage network |
US9838478B2 (en) | 2014-06-30 | 2017-12-05 | International Business Machines Corporation | Identifying a task execution resource of a dispersed storage network |
US11606431B2 (en) | 2014-06-30 | 2023-03-14 | Pure Storage, Inc. | Maintaining failure independence for storage of a set of encoded data slices |
US10673946B2 (en) | 2014-06-30 | 2020-06-02 | Pure Storage, Inc. | Using separate weighting scores for different types of data in a decentralized agreement protocol |
US10459797B2 (en) | 2014-06-30 | 2019-10-29 | Pure Storage, Inc. | Making trade-offs between rebuild scanning and failing memory device flexibility |
US9923838B2 (en) | 2014-06-30 | 2018-03-20 | International Business Machines Corporation | Accessing a dispersed storage network |
US10440105B2 (en) | 2014-06-30 | 2019-10-08 | Pure Storage, Inc. | Using a decentralized agreement protocol to rank storage locations for target width |
US11099763B1 (en) | 2014-06-30 | 2021-08-24 | Pure Storage, Inc. | Migrating generational storage to a decentralized agreement protocol paradigm |
US10042564B2 (en) | 2014-06-30 | 2018-08-07 | International Business Machines Corporation | Accessing data while migrating storage of the data |
US9690520B2 (en) | 2014-06-30 | 2017-06-27 | International Business Machines Corporation | Recovering an encoded data slice in a dispersed storage network |
US11398988B1 (en) | 2014-06-30 | 2022-07-26 | Pure Storage, Inc. | Selection of access resources in a distributed storage network |
US10089036B2 (en) | 2014-07-31 | 2018-10-02 | International Business Machines Corporation | Migrating data in a distributed storage network |
US10613936B2 (en) | 2014-07-31 | 2020-04-07 | Pure Storage, Inc. | Fractional slices in a distributed storage system |
US10644874B2 (en) | 2014-07-31 | 2020-05-05 | Pure Storage, Inc. | Limiting brute force attacks against dispersed credentials in a distributed storage system |
US11728964B2 (en) | 2014-07-31 | 2023-08-15 | Pure Storage, Inc. | Performance aided data migration in a distributed storage network |
US10049120B2 (en) | 2014-09-05 | 2018-08-14 | International Business Machines Corporation | Consistency based access of data in a dispersed storage network |
US10402395B2 (en) | 2014-09-05 | 2019-09-03 | Pure Storage, Inc. | Facilitating data consistency in a dispersed storage network |
US11442921B1 (en) | 2014-09-05 | 2022-09-13 | Pure Storage, Inc. | Data access in a dispersed storage network with consistency |
US10176191B2 (en) | 2014-09-05 | 2019-01-08 | International Business Machines Corporation | Recovering from conflicts that emerge from eventually consistent operations |
US10146622B2 (en) | 2014-09-08 | 2018-12-04 | International Business Machines Corporation | Combining deduplication with locality for efficient and fast storage |
US9591076B2 (en) | 2014-09-08 | 2017-03-07 | International Business Machines Corporation | Maintaining a desired number of storage units |
US10268545B2 (en) | 2014-09-08 | 2019-04-23 | International Business Machines Corporation | Using reinforcement learning to select a DS processing unit |
US10282135B2 (en) | 2014-10-29 | 2019-05-07 | International Business Machines Corporation | Strong consistency write threshold |
US10481833B2 (en) | 2014-10-29 | 2019-11-19 | Pure Storage, Inc. | Transferring data encoding functions in a distributed storage network |
US10223033B2 (en) | 2014-10-29 | 2019-03-05 | International Business Machines Corporation | Coordinating arrival times of data slices in a dispersed storage network |
US9916114B2 (en) | 2014-10-29 | 2018-03-13 | International Business Machines Corporation | Deterministically sharing a plurality of processing resources |
US10095582B2 (en) | 2014-10-29 | 2018-10-09 | International Business Machines Corporation | Partial rebuilding techniques in a dispersed storage unit |
US20180101457A1 (en) | 2014-10-29 | 2018-04-12 | International Business Machines Corporation | Retrying failed write operations in a dispersed storage network |
US10459792B2 (en) | 2014-10-29 | 2019-10-29 | Pure Storage, Inc. | Using an eventually consistent dispersed memory to implement storage tiers |
US10521298B2 (en) | 2014-12-02 | 2019-12-31 | Pure Storage, Inc. | Temporarily storing dropped and rebuilt slices in a DSN memory |
US10503592B2 (en) | 2014-12-02 | 2019-12-10 | Pure Storage, Inc. | Overcoming bottlenecks in partial and traditional rebuild operations |
US10402271B2 (en) | 2014-12-02 | 2019-09-03 | Pure Storage, Inc. | Overcoming bottlenecks in zero information gain (ZIG) rebuild operations |
US10481832B2 (en) | 2014-12-02 | 2019-11-19 | Pure Storage, Inc. | Applying a probability function to avoid storage operations for already-deleted data |
US9727275B2 (en) | 2014-12-02 | 2017-08-08 | International Business Machines Corporation | Coordinating storage of data in dispersed storage networks |
US10120739B2 (en) | 2014-12-02 | 2018-11-06 | International Business Machines Corporation | Prioritized data rebuilding in a dispersed storage network |
US10558527B2 (en) | 2014-12-02 | 2020-02-11 | Pure Storage, Inc. | Rebuilding strategy in memory managed multi-site duplication |
JP6357580B2 (ja) * | 2014-12-11 | 2018-07-11 | 株式会社東芝 | アレイ符号 |
US10387252B2 (en) | 2014-12-31 | 2019-08-20 | Pure Storage, Inc. | Synchronously storing data in a plurality of dispersed storage networks |
US10621042B2 (en) | 2014-12-31 | 2020-04-14 | Pure Storage, Inc. | Vault transformation within a dispersed storage network |
US10126974B2 (en) | 2014-12-31 | 2018-11-13 | International Business Machines Corporation | Redistributing encoded data slices in a dispersed storage network |
US11604707B2 (en) | 2014-12-31 | 2023-03-14 | Pure Storage, Inc. | Handling failures when synchronizing objects during a write operation |
US9727427B2 (en) | 2014-12-31 | 2017-08-08 | International Business Machines Corporation | Synchronizing storage of data copies in a dispersed storage network |
US10489247B2 (en) | 2014-12-31 | 2019-11-26 | Pure Storage, Inc. | Generating time-ordered globally unique revision numbers |
US10623495B2 (en) | 2014-12-31 | 2020-04-14 | Pure Storage, Inc. | Keeping synchronized writes from getting out of synch |
US10452317B2 (en) | 2014-12-31 | 2019-10-22 | Pure Storage, Inc. | DAP redistribution operation within a dispersed storage network |
US10642687B2 (en) | 2014-12-31 | 2020-05-05 | Pure Storage, Inc. | Pessimistic reads and other smart-read enhancements with synchronized vaults |
US10656866B2 (en) | 2014-12-31 | 2020-05-19 | Pure Storage, Inc. | Unidirectional vault synchronization to support tiering |
US10423359B2 (en) | 2014-12-31 | 2019-09-24 | Pure Storage, Inc. | Linking common attributes among a set of synchronized vaults |
US10506045B2 (en) | 2015-01-30 | 2019-12-10 | Pure Storage, Inc. | Memory access using deterministic function and secure seed |
US10594793B2 (en) | 2015-01-30 | 2020-03-17 | Pure Storage, Inc. | Read-prepare requests to multiple memories |
US10423490B2 (en) | 2015-01-30 | 2019-09-24 | Pure Storage, Inc. | Read-source requests to support bundled writes in a distributed storage system |
US10802915B2 (en) | 2015-01-30 | 2020-10-13 | Pure Storage, Inc. | Time based storage of encoded data slices |
US10740180B2 (en) | 2015-01-30 | 2020-08-11 | Pure Storage, Inc. | Storing and retrieving data using proxies |
US10498822B2 (en) | 2015-01-30 | 2019-12-03 | Pure Storage, Inc. | Adaptive scanning rates |
US9826038B2 (en) | 2015-01-30 | 2017-11-21 | International Business Machines Corporation | Selecting a data storage resource of a dispersed storage network |
US10530862B2 (en) | 2015-01-30 | 2020-01-07 | Pure Storage, Inc. | Determining slices to rebuild from low-level failures |
US9740547B2 (en) | 2015-01-30 | 2017-08-22 | International Business Machines Corporation | Storing data using a dual path storage approach |
US10169123B2 (en) | 2015-01-30 | 2019-01-01 | International Business Machines Corporation | Distributed data rebuilding |
US10289342B2 (en) | 2015-01-30 | 2019-05-14 | International Business Machines Corporation | Data access optimization protocol in a dispersed storage network |
US10620878B2 (en) | 2015-01-30 | 2020-04-14 | Pure Storage, Inc. | Write threshold plus value in dispersed storage network write operations |
US10592132B2 (en) | 2015-01-30 | 2020-03-17 | Pure Storage, Inc. | Read-foreign-slices request for improved read efficiency with bundled writes |
US10498823B2 (en) | 2015-01-30 | 2019-12-03 | Pure Storage, Inc. | Optimally apportioning rebuilding resources |
US10511665B2 (en) | 2015-01-30 | 2019-12-17 | Pure Storage, Inc. | Efficient resource reclamation after deletion of slice from common file |
US10440116B2 (en) | 2015-01-30 | 2019-10-08 | Pure Storage, Inc. | Minimizing data movement through rotation of spare memory devices |
US11188665B2 (en) | 2015-02-27 | 2021-11-30 | Pure Storage, Inc. | Using internal sensors to detect adverse interference and take defensive actions |
US10530861B2 (en) | 2015-02-27 | 2020-01-07 | Pure Storage, Inc. | Utilizing multiple storage pools in a dispersed storage network |
US10437677B2 (en) | 2015-02-27 | 2019-10-08 | Pure Storage, Inc. | Optimized distributed rebuilding within a dispersed storage network |
US10404410B2 (en) | 2015-02-27 | 2019-09-03 | Pure Storage, Inc. | Storage unit (SU) report cards |
US10275185B2 (en) | 2015-02-27 | 2019-04-30 | International Business Machines Corporation | Fail-in-place supported via decentralized or Distributed Agreement Protocol (DAP) |
US10657000B2 (en) | 2015-02-27 | 2020-05-19 | Pure Storage, Inc. | Optimizing data storage in a dispersed storage network |
US10409772B2 (en) | 2015-02-27 | 2019-09-10 | Pure Storage, Inc. | Accessing serially stored data in a dispersed storage network |
US10440115B2 (en) | 2015-02-27 | 2019-10-08 | Pure Storage, Inc. | Write intent messaging in a dispersed storage network |
US10069915B2 (en) | 2015-02-27 | 2018-09-04 | International Business Machines Corporation | Storing data in a dispersed storage network |
US10528425B2 (en) | 2015-02-27 | 2020-01-07 | Pure Storage, Inc. | Transitioning to an optimized data storage approach in a dispersed storage network |
US10534668B2 (en) | 2015-02-27 | 2020-01-14 | Pure Storage, Inc. | Accessing data in a dispersed storage network |
US10078472B2 (en) | 2015-02-27 | 2018-09-18 | International Business Machines Corporation | Rebuilding encoded data slices in a dispersed storage network |
US10503591B2 (en) | 2015-02-27 | 2019-12-10 | Pure Storage, Inc. | Selecting retrieval locations in a dispersed storage network |
US10579451B2 (en) | 2015-02-27 | 2020-03-03 | Pure Storage, Inc. | Pro-actively preparing a dispersed storage network memory for higher-loads |
US10437676B2 (en) | 2015-02-27 | 2019-10-08 | Pure Storage, Inc. | Urgent reads and using data source health to determine error recovery procedures |
US11836369B1 (en) | 2015-02-27 | 2023-12-05 | Pure Storage, Inc. | Storing data in an expanded storage pool of a vast storage network |
US10423502B2 (en) | 2015-02-27 | 2019-09-24 | Pure Storage, Inc. | Stand-by distributed storage units |
US10387067B2 (en) | 2015-02-27 | 2019-08-20 | Pure Storage, Inc. | Optimizing data storage in a dispersed storage network |
US10079887B2 (en) | 2015-03-31 | 2018-09-18 | International Business Machines Corporation | Expanding storage capacity of a set of storage units in a distributed storage network |
US10915261B2 (en) | 2015-03-31 | 2021-02-09 | Pure Storage, Inc. | Selecting a set of storage units in a distributed storage network |
US10713374B2 (en) | 2015-03-31 | 2020-07-14 | Pure Storage, Inc. | Resolving detected access anomalies in a dispersed storage network |
US10387070B2 (en) | 2015-03-31 | 2019-08-20 | Pure Storage, Inc. | Migrating data in response to adding incremental storage resources in a dispersed storage network |
US10534661B2 (en) | 2015-03-31 | 2020-01-14 | Pure Storage, Inc. | Selecting a storage error abatement alternative in a dispersed storage network |
US10331384B2 (en) | 2015-03-31 | 2019-06-25 | International Business Machines Corporation | Storing data utilizing a maximum accessibility approach in a dispersed storage network |
US11055177B2 (en) | 2015-03-31 | 2021-07-06 | Pure Storage, Inc. | Correlating operational information with an error condition in a dispersed storage network |
US10528282B2 (en) | 2015-03-31 | 2020-01-07 | Pure Storage, Inc. | Modifying and utilizing a file structure in a dispersed storage network |
US10437515B2 (en) | 2015-03-31 | 2019-10-08 | Pure Storage, Inc. | Selecting storage units in a dispersed storage network |
US10852957B2 (en) | 2015-03-31 | 2020-12-01 | Pure Storage, Inc. | Migration agent employing moveslice request |
US10963180B2 (en) | 2015-03-31 | 2021-03-30 | Pure Storage, Inc. | Adding incremental storage resources in a dispersed storage network |
US10168904B2 (en) | 2015-04-30 | 2019-01-01 | International Business Machines Corporation | Quasi-error notifications in a dispersed storage network |
US10268376B2 (en) | 2015-04-30 | 2019-04-23 | International Business Machines Corporation | Automated deployment and assignment of access devices in a dispersed storage network |
US10078561B2 (en) | 2015-04-30 | 2018-09-18 | International Business Machines Corporation | Handling failing memory devices in a dispersed storage network |
US10055170B2 (en) | 2015-04-30 | 2018-08-21 | International Business Machines Corporation | Scheduling storage unit maintenance tasks in a dispersed storage network |
US10067998B2 (en) | 2015-04-30 | 2018-09-04 | International Business Machines Corporation | Distributed sync list |
US10254992B2 (en) | 2015-04-30 | 2019-04-09 | International Business Machines Corporation | Rebalancing data storage in a dispersed storage network |
US10216594B2 (en) | 2015-04-30 | 2019-02-26 | International Business Machines Corporation | Automated stalled process detection and recovery |
US10037171B2 (en) | 2015-04-30 | 2018-07-31 | International Business Machines Corporation | Accessing common data in a dispersed storage network |
US10157094B2 (en) | 2015-04-30 | 2018-12-18 | International Business Machines Corporation | Validating system registry files in a dispersed storage network |
US10838664B2 (en) | 2015-05-29 | 2020-11-17 | Pure Storage, Inc. | Determining a storage location according to legal requirements |
US10409522B2 (en) | 2015-05-29 | 2019-09-10 | Pure Storage, Inc. | Reclaiming storage capacity in a dispersed storage network |
US10891058B2 (en) | 2015-05-29 | 2021-01-12 | Pure Storage, Inc. | Encoding slice verification information to support verifiable rebuilding |
US10789128B2 (en) | 2015-05-29 | 2020-09-29 | Pure Storage, Inc. | External healing mode for a dispersed storage network memory |
US10402122B2 (en) | 2015-05-29 | 2019-09-03 | Pure Storage, Inc. | Transferring encoded data slices in a dispersed storage network |
US11115221B2 (en) | 2015-05-29 | 2021-09-07 | Pure Storage, Inc. | Verifying a rebuilt encoded data slice using slice verification information |
US10523241B2 (en) | 2015-05-29 | 2019-12-31 | Pure Storage, Inc. | Object fan out write operation |
US10430107B2 (en) | 2015-05-29 | 2019-10-01 | Pure Storage, Inc. | Identifying stored data slices during a slice migration activity in a dispersed storage network |
US10169125B2 (en) | 2015-05-29 | 2019-01-01 | International Business Machines Corporation | Re-encoding data in a dispersed storage network |
US10613798B2 (en) | 2015-05-29 | 2020-04-07 | Pure Storage, Inc. | Slice fanout write request |
US10324657B2 (en) | 2015-05-29 | 2019-06-18 | International Business Machines Corporation | Accounting for data whose rebuilding is deferred |
US10437671B2 (en) | 2015-06-30 | 2019-10-08 | Pure Storage, Inc. | Synchronizing replicated stored data |
US10055291B2 (en) | 2015-06-30 | 2018-08-21 | International Business Machines Corporation | Method and system for processing data access requests during data transfers |
US11669546B2 (en) | 2015-06-30 | 2023-06-06 | Pure Storage, Inc. | Synchronizing replicated data in a storage network |
US11782789B2 (en) | 2015-07-31 | 2023-10-10 | Pure Storage, Inc. | Encoding data and associated metadata in a storage network |
US10229004B2 (en) | 2015-07-31 | 2019-03-12 | International Business Machines Corporation | Data transfer priority levels |
US10466914B2 (en) | 2015-08-31 | 2019-11-05 | Pure Storage, Inc. | Verifying authorized access in a dispersed storage network |
US10073652B2 (en) | 2015-09-24 | 2018-09-11 | International Business Machines Corporation | Performance optimized storage vaults in a dispersed storage network |
US10169147B2 (en) | 2015-10-30 | 2019-01-01 | International Business Machines Corporation | End-to-end secure data storage in a dispersed storage network |
US10423362B2 (en) | 2015-11-30 | 2019-09-24 | International Business Machines Corporation | Utilizing multiple dispersal algorithms to encode data for storage in a dispersed storage network |
US12072763B2 (en) | 2015-11-30 | 2024-08-27 | Pure Storage, Inc. | Utilizing memories of different operational speeds in a vast storage network |
US10409514B2 (en) | 2015-11-30 | 2019-09-10 | International Business Machines Corporation | IP multicast message transmission for event notifications |
US20170192688A1 (en) | 2015-12-30 | 2017-07-06 | International Business Machines Corporation | Lazy deletion of vaults in packed slice storage (pss) and zone slice storage (zss) |
US10089178B2 (en) | 2016-02-29 | 2018-10-02 | International Business Machines Corporation | Developing an accurate dispersed storage network memory performance model through training |
US10387248B2 (en) | 2016-03-29 | 2019-08-20 | International Business Machines Corporation | Allocating data for storage by utilizing a location-based hierarchy in a dispersed storage network |
US10831381B2 (en) | 2016-03-29 | 2020-11-10 | International Business Machines Corporation | Hierarchies of credential and access control sharing between DSN memories |
US10419538B2 (en) | 2016-04-26 | 2019-09-17 | International Business Machines Corporation | Selecting memory for data access in a dispersed storage network |
US10169082B2 (en) | 2016-04-27 | 2019-01-01 | International Business Machines Corporation | Accessing data in accordance with an execution deadline |
US10628399B2 (en) | 2016-04-29 | 2020-04-21 | International Business Machines Corporation | Storing data in a dispersed storage network with consistency |
US10007444B2 (en) | 2016-04-29 | 2018-06-26 | International Business Machines Corporation | Batching access requests in a dispersed storage network |
US10091298B2 (en) | 2016-05-27 | 2018-10-02 | International Business Machines Corporation | Enhancing performance of data storage in a dispersed storage network |
US10353772B2 (en) | 2016-05-31 | 2019-07-16 | International Business Machines Corporation | Selecting data for storage in a dispersed storage network |
US10122795B2 (en) | 2016-05-31 | 2018-11-06 | International Business Machines Corporation | Consistency level driven data storage in a dispersed storage network |
US10027755B2 (en) | 2016-06-01 | 2018-07-17 | International Business Machines Corporation | Selecting storage units in one or more dispersed storage networks |
US10394650B2 (en) | 2016-06-03 | 2019-08-27 | International Business Machines Corporation | Multiple writes using inter-site storage unit relationship |
US10652350B2 (en) | 2016-06-06 | 2020-05-12 | International Business Machines Corporation | Caching for unique combination reads in a dispersed storage network |
US10735545B2 (en) | 2016-06-06 | 2020-08-04 | International Business Machines Corporation | Routing vault access requests in a dispersed storage network |
US10719499B2 (en) | 2016-06-06 | 2020-07-21 | INTERNATIONAL BUSINESS MACHINES CORPORATIOb | Establishing distributed consensus via alternate voting strategies in a dispersed storage network |
US10334045B2 (en) | 2016-06-06 | 2019-06-25 | International Business Machines Corporation | Indicating multiple encoding schemes in a dispersed storage network |
US10007438B2 (en) | 2016-06-25 | 2018-06-26 | International Business Machines Corporation | Method and system for achieving consensus using alternate voting strategies (AVS) with incomplete information |
US10564852B2 (en) | 2016-06-25 | 2020-02-18 | International Business Machines Corporation | Method and system for reducing memory device input/output operations |
US10235085B2 (en) | 2016-06-27 | 2019-03-19 | International Business Machines Corporation | Relocating storage unit data in response to detecting hotspots in a dispersed storage network |
US11115469B2 (en) | 2016-06-28 | 2021-09-07 | International Business Machines Corporation | Efficient updates within a dispersed storage network |
US10157021B2 (en) | 2016-06-29 | 2018-12-18 | International Business Machines Corporation | Processing incomplete data access transactions |
US10025505B2 (en) | 2016-06-29 | 2018-07-17 | International Business Machines Corporation | Accessing data in a dispersed storage network during write operations |
US10387286B2 (en) | 2016-06-30 | 2019-08-20 | International Business Machines Corporation | Managing configuration updates in a dispersed storage network |
US9934092B2 (en) | 2016-07-12 | 2018-04-03 | International Business Machines Corporation | Manipulating a distributed agreement protocol to identify a desired set of storage units |
US10114696B2 (en) | 2016-07-14 | 2018-10-30 | International Business Machines Corporation | Tracking data access in a dispersed storage network |
US10534666B2 (en) | 2016-07-14 | 2020-01-14 | International Business Machines Corporation | Determining storage requirements based on licensing right in a dispersed storage network |
US10102067B2 (en) | 2016-07-14 | 2018-10-16 | International Business Machines Corporation | Performing a desired manipulation of an encoded data slice based on a metadata restriction and a storage operational condition |
US10360103B2 (en) | 2016-07-18 | 2019-07-23 | International Business Machines Corporation | Focused storage pool expansion to prevent a performance degradation |
US9992063B2 (en) | 2016-07-18 | 2018-06-05 | International Business Machines Corporation | Utilizing reallocation via a decentralized, or distributed, agreement protocol (DAP) for storage unit (SU) replacement |
US10769015B2 (en) | 2016-07-19 | 2020-09-08 | International Business Machines Corporation | Throttling access requests at different layers of a DSN memory |
US10277490B2 (en) | 2016-07-19 | 2019-04-30 | International Business Machines Corporation | Monitoring inter-site bandwidth for rebuilding |
US10031809B2 (en) | 2016-07-20 | 2018-07-24 | International Business Machines Corporation | Efficient method for rebuilding a set of encoded data slices |
US10127112B2 (en) | 2016-07-20 | 2018-11-13 | International Business Machines Corporation | Assigning prioritized rebuild resources optimally |
US10459796B2 (en) | 2016-07-20 | 2019-10-29 | International Business Machines Corporation | Prioritizing rebuilding based on a longevity estimate of the rebuilt slice |
US10554752B2 (en) | 2016-07-20 | 2020-02-04 | International Business Machines Corporation | Efficient transfer of encoded data slice sets to new or alternate storage units |
US10379744B2 (en) | 2016-07-21 | 2019-08-13 | International Business Machines Corporation | System for collecting end-user feedback and usability metrics |
US10416930B2 (en) | 2016-07-21 | 2019-09-17 | International Business Machines Corporation | Global access permit listing |
US10459790B2 (en) | 2016-07-26 | 2019-10-29 | International Business Machines Corporation | Elastic storage in a dispersed storage network |
US10395043B2 (en) | 2016-07-29 | 2019-08-27 | International Business Machines Corporation | Securely storing data in an elastically scalable dispersed storage network |
US10031805B2 (en) | 2016-08-09 | 2018-07-24 | International Business Machines Corporation | Assigning slices to storage locations based on a predicted lifespan |
US10223036B2 (en) | 2016-08-10 | 2019-03-05 | International Business Machines Corporation | Expanding a dispersed storage network (DSN) |
US10129023B2 (en) | 2016-08-11 | 2018-11-13 | International Business Machines Corporation | Enhancing security for multiple storage configurations |
US10348829B2 (en) | 2016-08-15 | 2019-07-09 | International Business Machines Corporation | Auto indexing with customizable metadata |
US10013309B2 (en) | 2016-08-17 | 2018-07-03 | International Business Machines Corporation | Missing slice reconstruction in a dispersed storage network |
US10078468B2 (en) | 2016-08-18 | 2018-09-18 | International Business Machines Corporation | Slice migration in a dispersed storage network |
US10379778B2 (en) | 2016-08-18 | 2019-08-13 | International Business Machines Corporation | Using a master encryption key to sanitize a dispersed storage network memory |
US10389683B2 (en) | 2016-08-26 | 2019-08-20 | International Business Machines Corporation | Securing storage units in a dispersed storage network |
US10581807B2 (en) | 2016-08-29 | 2020-03-03 | International Business Machines Corporation | Using dispersal techniques to securely store cryptographic resources and respond to attacks |
US10379773B2 (en) | 2016-08-29 | 2019-08-13 | International Business Machines Corporation | Storage unit for use in a dispersed storage network |
US10061524B2 (en) | 2016-09-01 | 2018-08-28 | International Business Machines Corporation | Wear-leveling of memory devices |
US10169149B2 (en) | 2016-09-06 | 2019-01-01 | International Business Machines Corporation | Standard and non-standard dispersed storage network data access |
US10387079B2 (en) | 2016-09-09 | 2019-08-20 | International Business Machines Corporation | Placement of dispersed storage data based on requestor properties |
US10225271B2 (en) | 2016-09-09 | 2019-03-05 | International Business Machines Corporation | Distributed storage network with enhanced security monitoring |
US10547615B2 (en) | 2016-09-12 | 2020-01-28 | International Business Machines Corporation | Security response protocol based on security alert encoded data slices of a distributed storage network |
US10558396B2 (en) | 2016-09-14 | 2020-02-11 | International Business Machines Corporation | Pre-caching data according to a current or predicted requester location |
US10558389B2 (en) | 2016-09-20 | 2020-02-11 | International Business Machines Corporation | Per-storage class quality of service (QoS) management within a distributed storage network (DSN) where the DSN stores data using dispersed storage error decoding/encoding |
US10067822B2 (en) | 2016-09-26 | 2018-09-04 | International Business Machines Corporation | Combined slice objects in alternate memory locations |
US10448062B2 (en) | 2016-10-26 | 2019-10-15 | International Business Machines Corporation | Pre-fetching media content to reduce peak loads |
US10394630B2 (en) | 2016-10-26 | 2019-08-27 | International Business Machines Corporation | Estimating relative data importance in a dispersed storage network |
US10585751B2 (en) | 2016-10-27 | 2020-03-10 | International Business Machines Corporation | Partial rebuild operation within a dispersed storage network including local memory and cloud-based alternative memory |
US10481977B2 (en) | 2016-10-27 | 2019-11-19 | International Business Machines Corporation | Dispersed storage of error encoded data objects having multiple resolutions |
US11169731B2 (en) | 2016-10-31 | 2021-11-09 | International Business Machines Corporation | Managing storage resources in a dispersed storage network |
US10585607B2 (en) | 2016-11-10 | 2020-03-10 | International Business Machines Corporation | Determining an optimum selection of functions for units in a DSN memory |
US10540247B2 (en) | 2016-11-10 | 2020-01-21 | International Business Machines Corporation | Handling degraded conditions using a redirect module |
US10114698B2 (en) | 2017-01-05 | 2018-10-30 | International Business Machines Corporation | Detecting and responding to data loss events in a dispersed storage network |
US10782921B2 (en) | 2017-01-25 | 2020-09-22 | International Business Machines Corporation | Non-writing device finalization of a write operation initiated by another device |
US10180787B2 (en) | 2017-02-09 | 2019-01-15 | International Business Machines Corporation | Dispersed storage write process with lock/persist |
US10241865B2 (en) | 2017-02-15 | 2019-03-26 | International Business Machines Corporation | Handling storage unit failure in a dispersed storage network |
US10579309B2 (en) | 2017-02-16 | 2020-03-03 | International Business Machines Corporation | Method for increasing throughput in a distributed storage network |
US10552341B2 (en) | 2017-02-17 | 2020-02-04 | International Business Machines Corporation | Zone storage—quickly returning to a state of consistency following an unexpected event |
US10248495B2 (en) | 2017-02-17 | 2019-04-02 | International Business Machines Corporation | Eventual consistency intent cleanup in a dispersed storage network |
US10382553B2 (en) | 2017-02-20 | 2019-08-13 | International Business Machines Corporation | Zone storage—resilient and efficient storage transactions |
US10394468B2 (en) | 2017-02-23 | 2019-08-27 | International Business Machines Corporation | Handling data slice revisions in a dispersed storage network |
US10241677B2 (en) | 2017-02-24 | 2019-03-26 | International Business Machines Corporation | Ensuring consistency between content and metadata with intents |
US9998147B1 (en) | 2017-02-27 | 2018-06-12 | International Business Machines Corporation | Method for using write intents in a distributed storage network |
US10642532B2 (en) | 2017-02-28 | 2020-05-05 | International Business Machines Corporation | Storing data sequentially in zones in a dispersed storage network |
US10372380B2 (en) | 2017-03-01 | 2019-08-06 | International Business Machines Corporation | Asserting integrity with a verifiable codec |
US10169392B2 (en) | 2017-03-08 | 2019-01-01 | International Business Machines Corporation | Persistent data structures on a dispersed storage network memory |
US11226980B2 (en) | 2017-03-13 | 2022-01-18 | International Business Machines Corporation | Replicating containers in object storage using intents |
US10235241B2 (en) | 2017-03-15 | 2019-03-19 | International Business Machines Corporation | Method for partial updating data content in a distributed storage network |
US10693640B2 (en) | 2017-03-17 | 2020-06-23 | International Business Machines Corporation | Use of key metadata during write and read operations in a dispersed storage network memory |
US10241861B2 (en) | 2017-03-23 | 2019-03-26 | International Business Machines Corporation | Method for tenant isolation in a distributed computing system |
US10133634B2 (en) | 2017-03-30 | 2018-11-20 | International Business Machines Corporation | Method for performing in-place disk format changes in a distributed storage network |
US10360391B2 (en) | 2017-04-03 | 2019-07-23 | International Business Machines Corporation | Verifiable keyed all-or-nothing transform |
US10545699B2 (en) | 2017-04-11 | 2020-01-28 | International Business Machines Corporation | Dynamic retention policies and optional deletes |
US10379961B2 (en) | 2017-04-11 | 2019-08-13 | International Business Machines Corporation | Ensuring metadata and index consistency using write intents |
US10567509B2 (en) | 2017-05-15 | 2020-02-18 | International Business Machines Corporation | Rebuilding derived content |
US10339003B2 (en) | 2017-06-01 | 2019-07-02 | International Business Machines Corporation | Processing data access transactions in a dispersed storage network using source revision indicators |
US10491386B2 (en) | 2017-06-01 | 2019-11-26 | International Business Machines Corporation | Slice-level keyed encryption with support for efficient rekeying |
US10467097B2 (en) | 2017-06-02 | 2019-11-05 | International Business Machines Corporation | Indicating data health in a DSN memory |
US10372381B2 (en) | 2017-06-05 | 2019-08-06 | International Business Machines Corporation | Implicit leader election in a distributed storage network |
US10361813B2 (en) | 2017-06-16 | 2019-07-23 | International Business Machine Corporation | Using slice routers for improved storage placement determination |
US10534548B2 (en) | 2017-06-20 | 2020-01-14 | International Business Machines Corporation | Validating restricted operations on a client using trusted environments |
US10324855B2 (en) | 2017-06-23 | 2019-06-18 | International Business Machines Corporation | Associating a processing thread and memory section to a memory device |
US10594790B2 (en) | 2017-06-28 | 2020-03-17 | International Business Machines Corporation | Data compression in a dispersed storage network |
US10540111B2 (en) | 2017-06-28 | 2020-01-21 | International Business Machines Corporation | Managing data container instances in a dispersed storage network |
US10599502B2 (en) | 2017-08-07 | 2020-03-24 | International Business Machines Corporation | Fault detection and recovery in a distributed storage network |
US10509699B2 (en) | 2017-08-07 | 2019-12-17 | International Business Machines Corporation | Zone aware request scheduling and data placement |
US10671746B2 (en) | 2017-08-28 | 2020-06-02 | International Business Machines Corporation | Controlling access when processing intents in a dispersed storage network |
TWI646807B (zh) * | 2017-09-07 | 2019-01-01 | 宏碁股份有限公司 | Rudp裝置及滑動窗參數的動態調整方法 |
US10379942B2 (en) | 2017-09-27 | 2019-08-13 | International Business Machines Corporation | Efficient transfer of objects between containers on the same vault |
US10802713B2 (en) | 2017-09-29 | 2020-10-13 | International Business Machines Corporation | Requester-associated storage entity data |
US10409661B2 (en) | 2017-09-29 | 2019-09-10 | International Business Machines Corporation | Slice metadata for optimized dispersed storage network memory storage strategies |
US10585748B2 (en) | 2017-09-29 | 2020-03-10 | International Business Machines Corporation | Scalable cloud—assigning scores to requesters and treating requests differently based on those scores |
US10540120B2 (en) | 2017-11-14 | 2020-01-21 | International Business Machines Corporation | Contention avoidance on associative commutative updates |
US10423497B2 (en) | 2017-11-28 | 2019-09-24 | International Business Machines Corporation | Mechanism for representing system configuration changes as a series of objects writable to an object storage container |
US10565392B2 (en) | 2017-11-28 | 2020-02-18 | International Business Machines Corporation | Secure and verifiable update operations |
US10785194B2 (en) | 2017-12-07 | 2020-09-22 | International Business Machines Corporation | Processing intents using trusted entities in a dispersed storage network |
US10681135B2 (en) | 2017-12-08 | 2020-06-09 | International Business Machines Corporation | Generating slices from a broadcast message and a recipient identity |
US11412041B2 (en) | 2018-06-25 | 2022-08-09 | International Business Machines Corporation | Automatic intervention of global coordinator |
US11005825B2 (en) * | 2018-11-13 | 2021-05-11 | Seagate Technology Llc | Sensor nodes and host forming a tiered ecosystem that uses public and private data for duplication |
US10936452B2 (en) | 2018-11-14 | 2021-03-02 | International Business Machines Corporation | Dispersed storage network failover units used to improve local reliability |
US11593026B2 (en) | 2020-03-06 | 2023-02-28 | International Business Machines Corporation | Zone storage optimization using predictive protocol patterns |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4929939A (en) * | 1988-10-31 | 1990-05-29 | International Business Machines Corporation | High-speed switching system with flexible protocol capability |
DE3923297A1 (de) * | 1989-07-14 | 1991-01-24 | Lothar Dipl Ing Grzybowski | Dosiergefaess fuer die abgabe pasteuser bis hochfluessiger medien |
US5195100A (en) * | 1990-03-02 | 1993-03-16 | Micro Technology, Inc. | Non-volatile memory storage of write operation identifier in data sotrage device |
US5388243A (en) * | 1990-03-09 | 1995-02-07 | Mti Technology Corporation | Multi-sort mass storage device announcing its active paths without deactivating its ports in a network architecture |
US5214778A (en) * | 1990-04-06 | 1993-05-25 | Micro Technology, Inc. | Resource management in a multiple resource system |
US5579475A (en) * | 1991-02-11 | 1996-11-26 | International Business Machines Corporation | Method and means for encoding and rebuilding the data contents of up to two unavailable DASDS in a DASD array using simple non-recursive diagonal and row parity |
US5321813A (en) * | 1991-05-01 | 1994-06-14 | Teradata Corporation | Reconfigurable, fault tolerant, multistage interconnect network and protocol |
US5307351A (en) * | 1991-08-26 | 1994-04-26 | Universal Data Systems, Inc. | Data communication apparatus for adjusting frame length and method of operating same |
US5412661A (en) * | 1992-10-06 | 1995-05-02 | International Business Machines Corporation | Two-dimensional disk array |
US5867640A (en) * | 1993-06-01 | 1999-02-02 | Mti Technology Corp. | Apparatus and method for improving write-throughput in a redundant array of mass storage devices |
TW401670B (en) * | 1994-08-08 | 2000-08-11 | Symbios Logic Inc | Movie-on-demand disk storage loop architecture |
JPH08329021A (ja) * | 1995-03-30 | 1996-12-13 | Mitsubishi Electric Corp | クライアントサーバシステム |
US5768623A (en) * | 1995-09-19 | 1998-06-16 | International Business Machines Corporation | System and method for sharing multiple storage arrays by dedicating adapters as primary controller and secondary controller for arrays reside in different host computers |
US5612897A (en) * | 1996-03-21 | 1997-03-18 | Digital Equipment Corporation | Symmetrically switched multimedia system |
-
1997
- 1997-10-01 US US08/943,049 patent/US6088330A/en not_active Expired - Lifetime
-
1998
- 1998-10-01 DE DE69800808T patent/DE69800808T2/de not_active Expired - Lifetime
- 1998-10-01 WO PCT/US1998/020532 patent/WO1999017217A1/en active IP Right Grant
- 1998-10-01 EP EP98952004A patent/EP1019841B1/de not_active Expired - Lifetime
- 1998-10-01 AU AU97811/98A patent/AU9781198A/en not_active Abandoned
- 1998-10-01 AT AT98952004T patent/ATE201271T1/de not_active IP Right Cessation
- 1998-10-01 JP JP2000514214A patent/JP2001518665A/ja active Pending
-
1999
- 1999-12-02 US US09/453,312 patent/US6128277A/en not_active Expired - Lifetime
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102021126404A1 (de) | 2021-10-12 | 2023-04-13 | D&B Audiotechnik Gmbh & Co. Kg | Redundantes audio-/videonetzwerk sowie netzwerk-switch und mediapaket-endpunkt zur erkennung von verkabelungsfehlern |
Also Published As
Publication number | Publication date |
---|---|
EP1019841B1 (de) | 2001-05-16 |
AU9781198A (en) | 1999-04-23 |
US6088330A (en) | 2000-07-11 |
WO1999017217A1 (en) | 1999-04-08 |
EP1019841A1 (de) | 2000-07-19 |
JP2001518665A (ja) | 2001-10-16 |
ATE201271T1 (de) | 2001-06-15 |
US6128277A (en) | 2000-10-03 |
DE69800808D1 (de) | 2001-06-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE69800808T2 (de) | Redundantes, verteiltes Netzwerksystem | |
US11182075B1 (en) | Storage system having cross node data redundancy and method and computer readable medium for same | |
DE69130669T2 (de) | Netzwerkplattensystem und methode | |
DE60001370T2 (de) | Verfahren und vorrichtung zur erkennung von doppelbitfehlern und korrektur von fehlern durch bauelementfehler verursacht | |
DE112011100623B4 (de) | Read-Other-Protokoll zur Aufrechterhaltung der Paritätskohärenz in einem Writeback-Datenspeichersystem mit verteilter Redundanz | |
DE69219208T2 (de) | Verteilter Ersatz in DASD-Feldern | |
DE2740056C2 (de) | ||
DE60006031T2 (de) | Speicherfehlerkorrektur mit einem redundanten geschnittenen Speicher und Standard ECC Mechanismus | |
DE3209679C2 (de) | ||
DE2554945C2 (de) | Verfahren und Schaltungsanordnung zur Erkennung und Korrektur von Fehlern in gespeicherten Datenwörtern | |
DE3789929T2 (de) | Verfahren und Gerät zur Fehlerkorrektur in einem aus parallelem Prozessor bestehenden Datenverarbeitungssystem. | |
DE69127895T4 (de) | Logisches spurschreibzuordnungssystem für paralleles plattenlaufwerksmatrixdatenspeicherungsuntersystem | |
DE10233642B4 (de) | Fehlerkorrektur-Kodierung und -Dekodierung in einer Festkörper-Speicherungsvorrichtung | |
DE3751231T2 (de) | Symmetriebildung für redundante Kanäle. | |
DE3689689T2 (de) | Hochzuverlässiges Rechnersystem. | |
DE602005004508T2 (de) | Speichersystem und Speichersteuerverfahren | |
EP2880534B1 (de) | Hochverfügbares rechnersystem, arbeitsverfahren und dessen verwendung | |
DE10236179A1 (de) | Speichersystem und Verfahren zur Verwendung desselben | |
DE3603926A1 (de) | Halbleiter-speicherelement | |
DE3122076A1 (de) | Mehrrechnersystem | |
DE10317925B4 (de) | Steuerungskommunikation über eine ständig eingeschaltete Steuerungsverbindung | |
DE112018001561B4 (de) | Verteiltes speichernetzwerk | |
EP1358554A1 (de) | Automatische inbetriebnahme eines clustersystems nach einem heilbaren fehler | |
DE112016003465T5 (de) | Autonomer Paritätsaustausch in Datenspeichersystemen | |
DE102004003352A1 (de) | Systeme und Verfahren zum Puffern von Daten zwischen einer Übereinstimmungscachesteuerung und einem Speicher |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8364 | No opposition during term of opposition |