DE69800808T2 - Redundantes, verteiltes Netzwerksystem - Google Patents

Redundantes, verteiltes Netzwerksystem

Info

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
Application number
DE69800808T
Other languages
English (en)
Other versions
DE69800808D1 (de
Inventor
Vasken Bohossian
Jehoshua Bruck
Chenggong Fan
Paul Lemahieu
David Riedel
Lihao Xu
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
California Institute of Technology CalTech
Original Assignee
California Institute of Technology CalTech
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by California Institute of Technology CalTech filed Critical California Institute of Technology CalTech
Application granted granted Critical
Publication of DE69800808D1 publication Critical patent/DE69800808D1/de
Publication of DE69800808T2 publication Critical patent/DE69800808T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1076Parity data used in redundant arrays of independent storages, e.g. in RAID systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2211/00Indexing scheme relating to details of data-processing equipment not covered by groups G06F3/00 - G06F13/00
    • G06F2211/10Indexing scheme relating to G06F11/10
    • G06F2211/1002Indexing scheme relating to G06F11/1076
    • G06F2211/1028Distributed, 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

    TECHNISCHES GEBIET
  • 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.
  • STAND DER TECHNIK
  • 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.
  • OFFENBARUNG DER ERFINDUNG
  • 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.
  • KURZBESCHREIBUNG DER ZEICHNUNG
  • 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.
  • BEVORZUGTE AUSFÜHRUNGSFORM DER ERFINDUNG
  • 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.
  • Redundante Kommunikation
  • 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.
  • Redundante Speicherung
  • 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.
  • X-Code
  • 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 &le; j - i &le; n - 1 und 0 &le; j - 1 &le; 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.
  • Verteiltes Lesen/Schreiben
  • 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.
  • Erfassung
  • 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 &ge; 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 &rarr; 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.
  • Informationsserver
  • 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.
DE69800808T 1997-10-01 1998-10-01 Redundantes, verteiltes Netzwerksystem Expired - Lifetime DE69800808T2 (de)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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

Cited By (1)

* Cited by examiner, † Cited by third party
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