[go: up one dir, main page]

DE69614623T2 - Fehlertolerantes multiples Netzwerkserver - Google Patents

Fehlertolerantes multiples Netzwerkserver

Info

Publication number
DE69614623T2
DE69614623T2 DE69614623T DE69614623T DE69614623T2 DE 69614623 T2 DE69614623 T2 DE 69614623T2 DE 69614623 T DE69614623 T DE 69614623T DE 69614623 T DE69614623 T DE 69614623T DE 69614623 T2 DE69614623 T2 DE 69614623T2
Authority
DE
Germany
Prior art keywords
active server
server
active
storage system
network
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 - Fee Related
Application number
DE69614623T
Other languages
English (en)
Other versions
DE69614623D1 (de
Inventor
John M. Hemphill
Thomas S. Lawler
Gregory M. Stewart
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.)
Compaq Computer Corp
Original Assignee
Compaq Computer Corp
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 Compaq Computer Corp filed Critical Compaq Computer Corp
Publication of DE69614623D1 publication Critical patent/DE69614623D1/de
Application granted granted Critical
Publication of DE69614623T2 publication Critical patent/DE69614623T2/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/2002Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where interconnections or communication control functionality are redundant
    • G06F11/2005Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where interconnections or communication control functionality are redundant using redundant communication controllers
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1415Saving, restoring, recovering or retrying at system level
    • G06F11/142Reconfiguring to eliminate the error
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/2002Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where interconnections or communication control functionality are redundant
    • G06F11/2007Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where interconnections or communication control functionality are redundant using redundant communication media
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/202Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
    • G06F11/2023Failover techniques
    • G06F11/2028Failover techniques eliminating a faulty processor or activating a spare
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/202Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
    • G06F11/2023Failover techniques
    • G06F11/2033Failover techniques switching over of hardware resources
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/202Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
    • G06F11/2035Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant without idle spare hardware
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/202Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
    • G06F11/2038Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant with a single idle spare processing component
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/202Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
    • G06F11/2046Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant where the redundant components share persistent storage
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/2053Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
    • G06F11/2089Redundant storage control functionality
    • G06F11/2092Techniques of failing over between control units
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/40Bus structure
    • G06F13/4004Coupling between buses
    • G06F13/4022Coupling between buses using switching circuits, e.g. switching matrix, connection or expansion network
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0751Error or fault detection not based on redundancy
    • G06F11/0754Error or fault detection not based on redundancy by exceeding limits
    • G06F11/0757Error or fault detection not based on redundancy by exceeding limits by exceeding a time limit, i.e. time-out, e.g. watchdogs
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1479Generic software techniques for error detection or fault masking
    • G06F11/1482Generic software techniques for error detection or fault masking by means of middleware or OS functionality
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/2002Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where interconnections or communication control functionality are redundant
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/202Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
    • G06F11/2023Failover techniques
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Mathematical Physics (AREA)
  • Computer Hardware Design (AREA)
  • Hardware Redundancy (AREA)
  • Multi Processors (AREA)

Description

  • Die vorliegende Erfindung betrifft fehlertolerante Konfigurationen von Netzwerkservern und insbesondere mehrere aktive Server, die gleichzeitig Backupfähigkeiten vorsehen.
  • Seit ihren Anfängen als Personal- oder Desktopcomputer haben Mikroprozessor-basierte Computersysteme große Entwicklungen durchlaufen, um die sich stets erweiternden Anforderungen von Datenverarbeitungssystemen zu erfüllen. Netzwerke aus Mikroprozessor-basierten Computern erfüllen heute Aufgaben, die früher die exklusive Domäne von Großrechnern war. Leistungsstarke Mikroprozessor-basierte Computer können als Server in Netzwerken mit mehreren hundert Personalcomputern verwendet werden. Diese Netzwerke sehen leistungsstarke verteilte Rechenfähigkeiten in Verbindung mit einem zentralisierten Zugriff auf Daten und direkten Kommunikationen zwischen den Personalcomputern im Netzwerk vor.
  • Die Erweiterung des Mikroprozessor-basierten Computersystems in den Bereich der Großrechner ist jedoch nicht unproblematisch. Großrechner sind traditionell zuverlässig und extrem "fehlertolerant", so dass der Ausfall eines Teils des Großrechnersystems keinen Datenverlust oder übermäßige Auszeiten zur Folge hat. Fehlertoleranz war lange Zeit eine exklusive Stärke der Großrechnerwelt. Mit dem Vordringen von Mikroprozessor-basierten Netzwerken in diesen Bereich, verlangen Netzwerkbenutzer jedoch zunehmend, dass ihre Netzwerke eine Fehlertoleranz bieten, wie sie sie von Großrechnern her kennen.
  • Deshalb haben Entwickler eine Anzahl von Schemata entwickelt, um Fehlertoleranz in Kleincomputer-Netzwerken vorzusehen. Ein Netzwerk umfasst üblicherweise Netzwerk Netzwerkhardware, Workstations und einen oder mehrere Server, die jeweils ihr eigenes Massenspeicher-Subsystem aufweisen. Die Server sind ein Eckstein des gesamten Systems, da sie für die Daten und die Kommunikation zwischen den verschiedenen Workstations sorgen. Wenn einer der Server ausfallen oder sein Massenspeicher- Subsystem verlustig gehen sollte, kann dadurch das gesamte Netzwerk außer Betrieb gesetzt werden.
  • Um die Fehlertoleranz von derartigen Servern zu verbessern, bieten Händler eine Anzahl von fehlertoleranten Systemen an. Ein derartiger Standard ist "SFT III" (System Fault Toleranz Level 3), ein Serverbetriebssystemstandard, der von Novell, Incorporated gestützt wird. IN diesem Netzwerkbetriebssystem ("NOS") besteht jeder "virtuelle" Server tatsächlich aus zwei Servern, die im Tandembetrieb laufen und kontinuierlich die Daten und Prozessoroperationen des anderen Servers spiegeln. Wenn einer dieser physikalischen Server ausfällt, läuft der andere weiter. Das System ist teuer, da es identische Hardware und eine Hochgeschwindigkeits-Optikverbindung zwischen den physikalischen Servern erfordert.
  • Die DFT III-Lösung ist häufig übermäßig kostspielig und sieht in Anbetracht der Bedürfnisse von durchschnittlichen Benutzern einen übermäßigen Schutz vor. Derartige Benutzer benötigen meist keine sofortige Wiederherstellung nach einem Servercrash, wie sie SFT III vorsieht. Deshalb haben einige Händler Systeme entwickelt, in denen bei Ausfall des primären Servers ein Standby-Server den Betrieb des primären Servers nicht unmittelbar, sondern erst nach einer kurzen Zeitperiode übernimmt. Dieser Standby-Server kann weniger kostspielige und etwas langsamere Hardware als der primäre Server verwenden, wodurch die Gesamtkosten herabgesetzt werden. Ein derartiges System wurde von NetGuard Systems, Incorporated eingeführt.
  • Alle diese Systeme sehen jedoch einen redundanten, im normalen Betrieb nicht genutzten Server vor. Es sind also zwei physikalische Server erforderlich, die allerdings nur als ein einziger logischer Netzwerkserver betrieben werden können. Das ist beim Spiegeln des SFT III-Systems oder beim Backupprinzip des NetGuard-Systems der Fall. Implementierer, Administratoren und Benutzer von Netzwerken möchten jedoch die Serverleistung maximieren. Auch bei Netzwerken mittlerer Größe, werden häufig große Anforderungen an Server gestellt, so dass für eine entsprechende Leistung mehrere Server erforderlich sind. Jeder zusätzliche Server erzeugt jedoch Kosten, so dass ein großer Bedarf nach einem System besteht, dass Kosten reduziert und gleichzeitig Fehlertoleranz und eine größere Rechenleistung bietet.
  • Aus WO-A-91/17506 ist bekannt, eine Redundanz zwischen Plattenlaufwerk-Controllern der zweiten Ebene in einem Computersystem vorzusehen, das Plattenlaufwerk-Controller der ersten und der zweiten Ebene umfasst, so dass ein Controller der ersten Ebene Plattenlaufwerk-Steuersignale über einen anderen Controller der zweiten Ebene umleiten kann, wenn der normalerweise mit ihm assoziierte Controller der zweiten Ebene ausfällt.
  • Das Dokument EP-A-0 709 779 ist Stand der Technik nach Artikel 54(3) EPc.
  • Gemäß der vorliegenden Erfindung ist ein duales, fehlertolerantes aktives Serversystem für ein Netzwerk angegeben, wobei das System umfasst:
  • einen ersten aktiven Server zur Verbindung mit dem Netzwerk, wobei der erste aktive Server eine erste Anzeige dahingehend, dass er ordnungsgemäß funktioniert, ergehen lässt;
  • einen zweiten aktiven Server zur Verbindung mit dem Netzwerk, wobei der zweite aktive Server die erste Anzeige von dem ersten aktiven Server empfängt und der zweite Server eine zweite Anzeige an den ersten Server dahingehend, dass er ordnungsgemäß funktioniert, ergehen lässt, und wobei der erste aktive Server (100) einen ersten Umschaltbefehl ergehen lässt, wenn der zweite aktive Server die zweite Anzeige dahingehend, dass der zweite aktive Server ordnungsgemäß funktioniert, nicht ergehen lässt, und wobei der zweite aktive Server einen zweiten Umschaltbefehl ergehen lässt, wenn der erste aktive Server die erste Anzeige dahingehend, dass der erste aktive Server ordnungsgemäß funktioniert, nicht ergehen lässt;
  • ein erstes Speichersystem mit ersten Speichermedien, wobei das erste Speichersystem vorrangig die ersten Speichermedien mit dem ersten aktiven Server verbindet und als Alternative dazu die ersten Speichermedien mit dem zweiten aktiven Server verbindet und die ersten Speichermedien beim Empfang des zweiten Umschaltbefehls von dem zweiten aktiven Server von dem ersten aktiven Server trennt; und
  • ein zweites Speichersystem mit zweiten Speichermedien, wobei das zweite Speichersystem vorrangig die zweiten Speichermedien mit dem zweiten aktiven Server verbindet und als Alternative dazu die zweiten Speichermedien mit dem ersten aktiven Server verbindet und die zweiten Speichermedien beim Empfang des ersten Umschaltbefehls von dem ersten aktiven Server von dem zweiten aktiven Server trennt.
  • Die beiden aktiven Server sehen also wechselseitig Backup-Fähigkeiten füreinander vor. Ein erster Netzwerkserver ist online bzw. aktiv und bietet den Netzwerkbenutzern Serverzugriff über ein Netzwerkbetriebssystem; gleichzeitig ist auch ein zweiter Netzwerkserver online bzw. aktiv und dient den Netzwerkbenutzern als ein zweiter unabhängigen Server. Jeder Server ist mit einem Speichersystem wie etwa einer Disk-Array verbunden, um Daten für den Netzwerkbenutzerzugriff zu speichern. Jeder Server ist weiterhin mit dem Speichersystem des anderen Servers verbunden und kann erzwingen, dass das andere Speichersystem von dem anderen Server zu sich "umschaltet".
  • Die Server überwachen jeweils den kontinuierlichen Betrieb des anderen Servers. Sollte ein Server ausfallen, veranlasst der andere Server, dass das Speichersystem des ausgefallenen Servers zu dem noch laufenden Server umschaltet. Der noch laufende Server bedient dann die Laufwerke oder anderen Medien in dem neu übernommenen Speichersystem, informiert die laufenden Anwendungen über die neuen Laufwerke und fährt mit dem Betrieb fort, wobei er nicht nur seine eigenen Aufgaben, sondern auch diejenigen des anderen, ausgefallenen Servers erfüllt.
  • Auf diese Weise ist während des normalen Betriebs die kombinierte Leistung beider Server verfügbar, die jeweils separate, aktive Server sind. Wenn einer der Server ausfällt, fährt der andere Server fort, Zugriff sowohl auf sein eigenes Speichersystem als auch auf das Speichersystem des ausgefallenen Servers zu gewähren, so dass alle gespeicherten Daten für die Netzwerkbenutzer verfügbar sind, wenn auch mit reduzierter Leistung.
  • Diese Technik und das System mit den aktiven Backup-Server-Fähigkeiten kann zu einem System erweitert werden, in dem mehr als zwei aktive Server wechselseitige Backup- und Wiederherstellungsfähigkeiten bieten.
  • Auf diese Weise ist während des normalen Betriebs die volle Rechenleistung jedes Servers verfügbar, wobei trotzdem jeder Server ein aktives Backup für den anderen leistet.
  • Die vorliegende Erfindung wird durch die folgende ausführliche Beschreibung einer bevorzugten Ausführungsform mit Bezug auf die beigefügten Zeichnungen verdeutlicht:
  • Fig. 1 ist ein Blockdiagramm, das den Betrieb des Mehrfach-Backupserversystems gemäß der vorliegenden Erfindung darstellt,
  • Fig. 2A-2E sind Flussdiagramme eines Wiederherstellungsagentendienstes, der auf beiden Servern von Fig. 1 gemäß der vorliegenden Erfindung ausgeführt wird,
  • Fig. 3 ist ein Flussdiagramm eines Anwendungsagenten, der mit dem Wiederherstellungsagentendienst von Fig. 2A-2E kommuniziert, um zu bestimmen, wann einer der Server von Fig. 1 auf einen Ausfall des anderen Servers folgend neue Laufwerke übernommen hat, und
  • Fig. 4 ist ein Blockdiagramm, das alternative Ausführungsformen des Serversystems von Fig. 1 darstellt.
  • Fig. 1 ist ein Blockdiagramm, das den Betrieb eines Mehrfach-Backupserver-Systems gemäß der vorliegenden Erfindung darstellt.
  • Ein erster Server 100 und ein zweiter Server 200 sind mit einem Netzwerk N als aktive Netzwerkserver verbunden. Während des normalen Betriebs sind beide Server 100 und 200 in dem Sinne aktiv, dass sie Benutzern des Netzwerks N mit jeweils unabhängiger Netzwerkfunktionalität zur Verfügung stehen. Der erste Server 100 bietet den Netzwerkbenutzern aktiv Zugriff auf Daten in einem umschaltbaren Platten-Subsystem 102, während der zweite Server 200 aktiv einen ähnlichen Zugriff auf die Daten in einem umschaltbaren Platten- Subsystem 202 bietet. Vorzugsweise sind die umschaltbaren Platten-Subsysteme 102 und 202 keine Boot-Platten für den ersten Server 100 und den zweite Server 200. Statt dessen umfasst der erste Server 100 eine lokale Platte 104 und umfasst der zweite Server 200 eine lokale Platte 204. Diese lokalen Platten 104 und 204 enthalten vorzugsweise jeweils eine Netzwerkbetriebssystem-(NOS)-Software und Anwendungssoftware, wobei die umschaltbaren Platten-Subsysteme 102 und 202 als Datenbankspeicher, Dokumentspeicher sowie als Speicher für andere Daten reserviert sind, die keine Programm-orientierten Daten sind.
  • Der erste Server 100 führt eine Anzahl von Programmen und Tasks aus. Dazu gehören ein Anwendungsprogramm 106, das NOS 108, ein Wiederherstellungsagent 110, der mit einem ähnlichen Wiederherstellungsagenten 210 in dem zweiten Server 200 kommuniziert. Der zweite Server 200 kann in ähnlicher Weise eine Anwendung 206, ein NOS 208 und den Wiederherstellungsagenten 210 ausführen. Die Wiederherstellungsagenten 110 und 210 bieten die Fähigkeiten zum Überwachen und Wiederherstellen eines ausgefallenen Servers gemäß der vorliegenden Erfindung. Sie kommunizieren allgemein über einen seriellen Anschluss (nicht gezeigt) und über eine serielle Verbindung 150. Die Wiederherstellungsagenten 110 und 210 werden mit Bezug auf die Zeichnungen 2A-2E ausführlicher beschrieben und umfassen eine Überwachungseinrichtung für ein "Heartbeat"-Signal des jeweils anderen Servers. Sollte der Wiederherstellungsagent 110 oder 210 in dem anderen Server keinen Heartbeat senden, veranlasst der andere Wiederherstellungsagent 110 oder 210, dass das NOS 108 oder 208 die Kontrolle über das umschaltbare Platten-Subsystem 102 oder 202 des ausgefallenen Servers übernimmt.
  • Vorzugsweise umfasst der Server 100 zwei Platten-Controller. Ein primärer Controller 112 kommuniziert vorzugsweise über einen SCSI-Bus 114 mit einem Port am umschaltbaren Platten-Subsystem 102. Ein Wiederherstellungs-Controller 116 kommuniziert über einen SCSI-Bus 118 und über einen Port an dem umschaltbaren Platten-Subsystem 202 mit dem zweiten umschaltbaren Platten-Subsystem 202. Der zweite Server 200 enthält entsprechend einen primären Controller 212 und einen Wiederherstellungscontroller 216, der ähnlich über einen SCSI-Bus 214 mit dem zweiten umschaltbaren Platten-Subsystem 202 und über einen SCSI-Bus 218 mit dem ersten umschaltbaren Platten-Subsystem 102 kommuniziert. Obwohl jeweils zwei SCSI-Controller in den Servern 100 und 200 gezeigt sind, könnten diese auch als ein einziger Controller mit umschaltbaren SCSI-Busverbindungen implementiert werden.
  • Aber weil die umschaltbare Platten-Subsysteme 102 und 202 allgemein eine große Anzahl von Platten mit mehrfachen SCSI-Adressen enthalten, könnte dies die Anzahl der Platten in den umschaltbaren Platten-Subsystemen 102 und 202 beschränken, so dass vorzugsweise zwei Controller 112 und 116 in dem ersten Server 100 sowie zwei Controller 212 und 216 in dem zweiten Controller 200 verwendet werden. Entsprechend können mehrere primäre Controller und Wiederherstellungscontroller in den Servern 100 und 200 implementiert sein, um mehrere umschaltbaren Platten-Subsysteme zu schalten.
  • Jeder Server 100 und 200 enthält also einen Controller für und Verbindungen zu jedem der umschaltbaren Platten-Subsysteme 102 und 202. Während des normalen Betriebs steuert der Controller 100 die Platten in dem umschaltbaren Platten-Subsystem 102 über den SCSI- Bus 114 mittels seines primären Controllers 112. Der Wiederherstellungscontroller 116 ist physikalisch über den SCSI-Bus 118 mit dem zweiten umschaltbaren Bus-Subsystem 202 verbunden, wie aber durch die Pfeile im zweiten umschaltbaren Platten-Subsystem 202 gezeigt, ist er physikalisch oder logisch intern im zweiten umschaltbaren Platten-Subsystem 202 getrennt. Dasselbe gilt entsprechend für den zweiten Server 200 und das erste umschaltbare Platten-Subsystem 102. Die umschaltbaren Platten-Subsysteme 102 und 202 sowie deren entsprechende Schaltungen und Steuerfunktionen zum Schalten zwischen dem ersten Anschluss und dem zweiten Anschluss werden in der Hauptanmeldung beschrieben, zu welcher diese Anmeldung eine Weiterbehandlung ist.
  • Auf der Basis dieser Konfiguration wird im folgenden der Betrieb gemäß der vorliegenden Erfindung beschrieben. Heartbeat-Meldungen werden über die serielle Verbindung 130 zwischen den Wiederherstellungsagenten 110 und 210 gesendet. Sollte beispielsweise der erste Server 100 ausfallen, sendet sein Wiederherstellungsagent 110 keine Heartbeat- Meldung mehr und empfängt der Wiederherstellungsagent 210 die Hearbeat-Meldung nicht mehr. Gemäß der vorliegenden Erfindung verifiziert der Wiederherstellungsagent 210 dann, ob der Wiederherstellungsagent 110 tatsächlich ausgefallen ist, indem er eine Meldung über das Netzwerk N an den Wiederherstellungsagent 110 sendet. Wenn der Wiederherstellungsagent 110 nicht antwortet, bestätigt dies dem Wiederherstellungsagenten 210, dass der Wiederherstellungsagent 110 ausgefallen ist, so dass der Wiederherstellungsagent 210 eine Serie von SCSI-Resetsignalen über den Wiederherstellungs-Controller 216 und über den SCSI-Bus 218 an das erste umschaltbare Platten-Subsystem 102 sendet. Gemäß der vorliegenden Erfindung schaltet das umschaltbare Platten-Subsystem 102 bei Empfang dieser Serie von Resetsignalen intern die elektrische Verbindung seiner internen Platten von dem mit dem SCSI-Bus 114 verbundenen Anschluss zu dem mit dem SCSI-Bus 218 verbundenen Anschluss. Der Wiederherstellungscontroller 216 wird also mit den Platten im ersten umschaltbaren Platten-Subsystem 102 verbunden.
  • Der Wiederherstellungsagent 210 veranlasst dann den Wiederherstellungscontroller 216, die Platten im umschaltbaren Platten-Subsystem 102 logisch zu erkennen. Dann veranlasst der Wiederherstellungsagent 210 das NOS 208, die Platten in dem umschaltbaren Platten- Subsystem 102 zu "mounten" und diesen Platten Laufwerksbuchstaben für die Verwendung in folgenden Referenzen durch andere Softwarekomponenten zuzuweisen. Als nächstes prüft der Wiederherstellungsagent 210 die Integrität der Platten in dem umschaltbaren Platten-Subsystem 102, indem er etwa das Windows NT CHDSK-Programm ausführt.
  • Dabei sollte die Anwendung 206 über das Vorhandensein dieser neuen Laufwerke informiert werden, damit sie den Benutzern im Netzwerk N Zugriff auf die neu übernommenen Laufwerke gewähren kann. Dazu sendet der Wiederherstellungsagent 210 eine Meldung an die Anwendung 206, die angibt, dass neue Laufwerke verfügbar sind. Die Anwendung 206 kann dann auf diese neuen Laufwerke zugreifen und Daten auf den neuen Laufwerken des umschaltbaren Platten-Subsystems 102 für die Benutzer im Netzwerk N bereitstellen. Die Benutzer können also nach einer geringfügigen Verzögerung auf die Daten zugreifen, auf die sie zuvor über den ersten Server 100 zugegriffen haben.
  • Gemäß der vorliegenden Erfindung dient also jeder der Server 100 und 200 jeweils als Backup für den anderen Server. (In den folgenden Beschreibungen wird der jeweils andere Server 100 oder 200 als "Partner-Server" bezeichnet.) Während des normalen Betriebs dagegen bieten beide Server 100 und 200 aktiv ihre vollständige Verarbeitungsleistung für das Netzwerk N. Sollte einer der Server ausfallen, bietet der jeweils andere Server Zugriff auf die Daten in beiden umschaltbaren Platten-Subsystemen 102 und 202 für das Netzwerk N, wobei jedoch die Verarbeitungsleistung wegen der erhöhten Last des verbleibenden Servers 100 oder 200 reduziert ist.
  • In Fig. 2A-E ist ein Wiederherstellungsagentendienst 300 gezeigt. Der Wiederherstellungsagentendienst 300 führt die Funktionen der Wiederherstellungsagenten 110 und 210 im ersten Server 100 und im zweiten Server 200 aus und ist vorzugsweise in beiden Servern identisch. Wenn das NOS 108 oder 208 Windows NT ist, ist der Wiederherstellungsagentendienst 300 vorzugsweise als ein Windows NT-Service implementiert, der eine Reihe von "Threads" ausführt. Windows NT ist ein Multitasking/Multithreading-Betriebssystem, wobei jedoch tatsächlich jeweils nur ein "Thread" in einem Dienst ausgeführt wird. Der Wiederherstellungsagentendienst 300 kann vorzugsweise als ein Lese-Thread und ein Schreib-Thread implementiert werden, die über "Ereignisse" miteinander kommunizieren, welche Semaphoren sind, die Windows NT zwischen den Threads weitergibt. Anstatt die parallelen Spuren des Lese-Threads und des Schreib-Threads darzustellen, ist es anschaulicher, den gesamten Programmfluss zu zeigen. Der Softwarefachmann mit Erfahrung im Schreiben von Software für Multithread-Systeme weiß, wie die entsprechenden Threads zu implementieren sind.
  • Der Wiederherstellungsagentendienst 300 beginnt in Schritt 302, wo er bestimmt, ob eine Heartbeat-Meldung über die serielle Verbindung 150 empfangen wird. Wenn in Schritt 302 keine Heartbeat-Meldung von dem anderen Server empfangen wird, schreitet die Steuerung zu Schritt 304 fort, wo bestimmt wird, ob eine vorbestimmte Start-Zeitüberschreitung auf null gesetzt ist. Wenn ja, kehrt die Steuerung gemäß der vorliegenden Ausführungsform dann kontinuierlich zu Schritt 302 zurück. Dieser Nullwert veranlasst also, dass der Server unbegrenzt auf eine Heartbeat-Meldung wartet, und kann durch den Systemadministrator gesetzt werden, um ein Umschalten aufgrund einer Zeitüberschreitung beim Starten zu vermeiden. Die Kommunikation mit dem Partner-Server über das Netzwerk N kann jetzt wie weiter unten erläutert versucht werden, um zu sehen, ob der Partner-Server vorhanden ist und im Netzwerk N betrieben wird. Wenn nicht, gibt dies an, dass der andere Server entweder nicht gebootet wurde, nicht vorhanden ist oder ausgefallen ist.
  • In allen Prüfungen auf eine Heartbeat-Meldung ist eine Prüfung des Kabelfehlerstatus enthalten. Diese wird weiter unten in Verbindung mit Fig. 2E ausführlicher erläutert und sieht vor, dass ein Umschalten des mit dem Partner-Server (100 oder 200) verbundenen umschaltbaren Platten-Subsystems 102 oder 202 nicht erfolgt, wenn ein Kabelfehler vorliegt. Die Überlegung dabei ist, dass ein System zu einem bestimmten Zeitpunkt nur einen Fehler aufweist. Solange kein Kabelfehler vorliegt, wartet der Wiederherstellungsagentendienst 300 einfach auf einen zu korrigierenden Kabelfehler. Dies wird hier der einfacheren Darstellung nicht weiter erläutert.
  • Die Steuerung schreitet von Schritt 304 zu Schritt 306 fort, wenn die Start-Zeitüberschreitung nicht auf null gesetzt wurde. Dann wird in Schritt 306 bestimmt, ob eine Heartbeat-Meldung empfangen wird. Wen nicht, schreitet die Steuerung zu Schritt 308 fort.
  • Wenn in Schritt 308 eine der Start-Zeitüberschreitung entsprechende Zeit abgelaufen ist, schreitet die Steuerung zu Schritt 310 fort, wo bestimmt wird, ob eine Netzwerkpräsenzprüfung aktiviert ist. Weil der Partner-Server in Schritt 310 nicht geantwortet hat, kann es vorteilhaft sein, zu bestimmen, ob der andere Partner präsent und in Betrieb ist, indem eine Meldung über das Netzwerk N gesendet wird. Der Administrator konfiguriert das System, indem er Konfigurationsvariablen, die angeben, ob eine Netzwerkpräsenzprüfung vorgenommen werden soll, sowie eine Konfigurationsvariable setzt, welche die Adresse des Partner- Servers im Netzwerk N angibt. Entsprechend werden die verschiedenen Zeitüberschreitungen vorzugsweise als durch den Administrator änderbare Konfigurationsvariablen implementiert. Wenn die Netzwerkpräsenzprüfung nicht aktiviert ist, schreitet die Steuerung von Schritt 310 zu Schritt 330 fort, wo ein Umschalten der umschaltbaren Platten-Subsysteme 102 oder 202 des Partner-Servers zu diesem Server initiiert wird. Wenn die Netzwerkpräsenzprüfung in Schritt 310 aktiviert ist, schreitet die Steuerung zu Schritt 320 fort, wo der Wiederherstellungsagentenservice 300 versucht, wie weiter unten in Verbindung mit Fig. 2B erläutert über das Netzwerk N mit dem Partner-Server zu kommunizieren.
  • Wenn in den Schritten 302 und 306 eine Heartbeat-Meldung empfangen wird, gibt dies an, dass der Partner-Server in Betrieb ist. Wenn dem so ist, schreitet die Steuerung wie in Verbindung mit Fig. 2D erläutert in Schritt 340 zu der normalen Verarbeitung fort.
  • Das Flussdiagramm von Fig. 2B stellt die Netzwerkpräsenzprüfung des Wiederherstellungsagentendienstes 300 dar. In den Schritt 320 wird entweder von Schritt 310 in Fig. 2A oder von Schritt 348 in Fig. 2D eingetreten. In Schritt 320 versucht der Wiederherstellungsagent 300, eine Heartbeat-Meldung über das Netzwerk N zu und von dem Partner Server zu senden. Dies wird bewerkstelligt, indem eine Heartbeat-Meldung über das Netzwerk N zu dem Partner-Server gesendet wird, um zu prüfen, ob die Heartbeat-Meldung durch den Partner-Server über das Netzwerk N quittiert wird. Eine entsprechende Pause von etwa 10 Sekunden wird aufgrund der Netzwerkkommunikation einkalkuliert und hängt vom jeweiligen Netzwerk N ab. Vorzugsweise werden Meldungen, ob über die serielle Verbindung oder das Netzwerk N, durch eine Quittungsmeldung quittiert. Wenn also eine Heartbeat-Meldung über das Netzwerk N gesendet wird, sucht der Wiederherstellungsagentenservice 300 nach dem Partner-Service, um die Meldung zu quittieren. Wenn entsprechend eine Heartbeat-Meldung über das Netzwerk N empfangen wird, wird eine Quittungsmeldung zu dieser Heartbeat- Meldung an den Partner-Server gesendet. In dem Schritt 320 ist eine vorbestimmte Anzahl von Wiederholungsversuchen enthalten. Über eine Konfigurationsvariable kann der Administrator beispielsweise einstellen, dass 10 Netzwerkwiederholungen versucht werden, bevor der Partner-Server als ausgefallen bestimmt wird.
  • Wenn in Schritt 322 keine Netzwerk-Heartbeat-Meldung von dem Partner-Server empfangen wird, schreitet die Steuerung zu Schritt 330 in Fig. 2C fort, wo ein Umschalten initiiert wird, weil angenommen wird, dass der Partner-Server ausgefallen ist.
  • Wenn eine Heartbeat Meldung empfangen wurde, schreitet die Steuerung zu Schritt 324 fort, wo in der vorliegenden Ausführungsform ein SNMP-Trap an eine SNMP-Konsole gesendet wird, die den Systembetrieb verfolgt. SNMP ist eine Abkürzung für "Simple Netzwork Message Protocol" und ist ein bekannter Standard. Die SNMP-Konsole wird darüber benachrichtigt, dass eine Heartbeat-Nachricht empfangen wird, aber die serielle Verbindung 150 ausgefallen zu sein scheint. Die SNMP-Konsole kann dann den Administrator informieren oder das Ereignis in anderer Form protokollieren.
  • Gemäß der vorliegenden Erfindung schreitet die Steuerung dann zu Schritt 326 fort, wo der Wiederherstellungsagentendienst 300 auf einen Neustart über die serielle Verbindung 150 wartet. Wenn die Heartbeat-Meldung in Schritt 326 nicht über die serielle Verbindung 150 empfangen wird, kehrt die Steuerung zu Schritt 326 zurück. Andernfalls schreitet die Steuerung zu Schritt 340 fort, der weiter unten in Verbindung mit Fig. 2D erläutert wird, weil die serielle Verbindung 150 scheinbar wieder funktioniert.
  • Als weitere Ausführungsform gemäß der vorliegenden Erfindung kann in Schritt 326 eine weitere Verarbeitung ausgeführt werden. Zum Beispiel kann der Server weiterhin unter Verwendung des Netzwerks N anstelle der seriellen Verbindung 150 mit dem Partner-Server kommunizieren. Wenn diese Kommunikation über das Netzwerk N ausgefallen ist, kann in Schritt 330 ein Umschalten initiiert werden. Während weiterhin die serielle Verbindung 150 als Kommunikationsverbindung gezeigt ist, kann die gesamte Kommunikation auch über das Netzwerk N erfolgen. Dies erhöht jedoch den Netzwerkverkehr, weshalb gemäß der vorliegenden Ausführungsform vorzugsweise die serielle Verbindung verwendet wird.
  • In Schritt 330 ist der Teil des Wiederherstellungsagenten 300, der das Umschalten nach einem Ausfall des Partner-Servers initiiert, durch ein Flussdiagramm dargestellt. In Schritt 330 beginnend werden Laufwerke im umschaltbaren Platten-Subsystem 102 oder 202 des Partner-Servers umgeschaltet. Dies wird durch ein Verfahren bewerkstelligt, das dem in der Hauptanmeldung beschriebenen ähnlich ist und eine Reihe von Resetsignalen oder anderen Signalen an das umschaltbare Platten-Subsystem 102 oder 202 des Partner-Servers sendet. Dies veranlasst, dass das umschaltbare Platten-Subsystem 102 oder 202 umgeschaltet wird, um es mit dem Wiederherstellungscontroller 116 oder 216 dieses Servers zu verbinden, damit dieser Server die Steuerung des umschaltbaren Platten-Subsystems 102 oder 202 übe nehmen kann. Sobald dies bewerkstelligt wurde, müssen den Laufwerken in dem umschaltbaren Platten-Subsystem 102 oder 202, deren Steuerung übernommen wurde, Laufwerksbuchstaben zugewiesen werden. Durch Aufrufe an das NOS 108 und 208, die aus dem Stand der Technik wohlbekannt sind, werden den neu übernommenen Laufwerken Laufwerksbuchstaben zugewiesen. Nachdem die Laufwerke übernommen wurden, wird ihre Integrität vorzugsweise unter Verwendung einer NOS-Routine wie etwa der Windows NT CHDSK-Software verifiziert.
  • An dieser Stelle ist eine Erläuterung der Wiederherstellungscontroller 116 und 216 erforderlich. Vorzugsweise sollte jede Form von Zwischenspeicherung in den Wiederherstellungscontrollern 116 und 216 deaktiviert werden, da diese zwischengespeicherten Daten verloren gehen können, wenn der Partner-Server ausfällt und danach umgeschaltet wird. Wenn die registrierten Anwendungen, die auf das neu übernommene umschaltbare Platten-Subsystem 102 oder 202 zugreifen, robust genug sind, können sie diesen Datenverlust vielleicht überstehen, aber vorzugsweise sollte diese Situation vermieden werden, indem jegliches Zwischenspeichern in den Wiederherstellungscontrollern 116 und 216 deaktiviert wird.
  • Weiterhin verursachen viele SCSI-Controller verschiedene Fehlernachrichten beim Starten, wenn keine SCSI-Geräte verbunden sind. Beim Start sind mit den Wiederherstellungscontrollern 116 und 216 keine Laufwerke logisch oder elektrisch verbunden. Wenn sie also eine derartige Fehlererzeugungsfunktion umfassen, sollte diese Funktion entsprechend deaktiviert werden. Dies kann in der Controller-Firmware, im POST-Code (Power On Self Test) des Betriebssystems oder im NOS selbst vorgenommen werden.
  • Außerdem müssen die Wiederherstellungscontroller 116 und 216 natürlich in der Lage sein, neue SCSI-Laufwerke dynamisch zu übernehmen.
  • Nachdem die Laufwerke übernommen wurden, wissen die Anwendungen immer noch nichts über diese neu übernommenen Laufwerke. Aus diesem Grund schreitet die Steuerung zu Schritt 332 fort, wo Anwendungen 106 oder 206, die an der im Wiederherstellungsagenten 300 implementierten Anwendungsprogrammierschnittstelle (API) registriert sind, über die neuen Laufwerke informiert werden. Dies wird weiter unten ausführlicher mit Bezug auf Fig. 3 erläutert. So können die Anwendungen 106 oder 206 auf die neuen Laufwerke zugreifen und bestimmen, ob Informationen dazu vorliegen, dass ein Benützer auf die Laufwerke zugreifen muss. Das ist insbesondere bei beispielsweise ORACLE- oder anderen Datenbanken der Fall, wo der Benutzer gerade die Verbindung zu diesen Laufwerken verloren hat, aber weiterhin auf die Informationen zugreifen möchte. Die Anwendung kann dann einen entsprechenden Zugriff auf die Datenbankinformationen gewähren. Weiterhin können der erste Server 100 und der zweite Server 200 verschiedene Anwendungen 106 und 206 ausgeführt haben. Um diese Situation zu handhaben, kann jeder der Server 100 und 200 ein Shell-Programm ausführen, das der Anwendungen 106 oder 206 entspricht, die in dem Partner-Server, aber nicht auf diesem Server läuft. Das Shell-Programm kann ausschließlich die Aufgabe erfüllen, eine Instanz der Anwendung 106 oder 206 des Partner-Servers, aber nicht dieses Servers auszuführen, sobald das Shell-Programm eine Meldung von der API des Wiederherstellungsagentenservers 300 erhält, dass der Partner-Server ausgefallen ist. Dann wird die entsprechende Anwendung 106 oder 206 in diesem Server gestartet und kann den Zugriff auf die Daten des umschaltbaren Platten-Subsystems 102 oder 202 erhalten.
  • Von Schritt 332 schreitet die Steuerung zu Schritt 334 fort, wo bestimmt wird, ob das Umschalten erfolgreich war. Das ist der Fall, wenn das umschaltbare Platten-Subsystem 102 oder 202 richtig zu dem Server 100 oder 200 umgeschaltet wurde und Laufwerksbuchstaben zugewiesen wurden. Wenn ja, schreitet die Steuerung zu Schritt 336 fort, wo ein SNMP-Trap zu dem erfolgreichen Umschalten als SNMP-Meldung an die SNMP-Konsole wie in Verbindung mit Schritt 324 erläutert gesendet wird. Die SNMP-Konsole kann dann diese Informationen entsprechend protokollieren oder einem Administrator für weitere Diagnosezwecke bereitstellen.
  • Wenn das Umschalten in Schritt 334 nicht erfolgreich war, schreitet die Steuerung statt dessen zu Schritt 337 fort, wo ein ähnliches Trap, das ein nicht erfolgreiches Umschalten angibt, an die SNMP-Konsole gesendet wird.
  • Von den Schritten 336 und 337 schreitet die Steuerung zu Schritt 338 fort, wo ein Warten auf die Wiederherstellungskonfigurationsvariable auf wahr gesetzt wird. Dies gibt an, dass das umschaltbare Platten-Subsystem 102 oder 202 umgeschaltet wurde, und bis der Partner- Server 100 oder 200 neu gestartet wurde, fährt der vorliegende Server mit dem Betrieb unter Steuerung von beiden umschaltbaren Platten-Subsystemen 102 und 202 fort, auch wenn er heruntergefahren und neu gestartet wird. Beim Starten prüft dieser Server in einem nicht gezeigten Schritt vor dem Schritt 302, ob der Partner-Server zuvor ausgefallen ist oder nicht richtig neu gestartet wurde, damit dieser Server unmittelbar ein Umschalten durchführen kann. Dadurch wird eine unverhältnismäßig lange Wartezeit verhindert, wenn dieser Server heruntergefahren und neu gestartet wird, bevor der Partner-Server repariert wurde. Von hier schreitet die Steuerung zu Schritt 339 fort, wo der Wiederherstellungsagentendienst 300 beendet wird.
  • Fig. 2D zeigt ein Flussdiagramm des Wiederherstellungsagentendienstes 300 während der normalen Verarbeitung. Zu dem Schritt 340 gelangt man von Schritt 306 oder 326. In diesem Fall werden Heartbeat-Meldungen über die serielle Verbindung 150 gesendet und empfangen. Mit Schritt 340 beginnend wird eine serielle Heartbeat-Meldung vom Partner-Server empfangen, so dass die Steuerung zu Schritt 342 fortschreitet, wo bestimmt wird, ob die empfangene serielle Heartbeat-Meldung ein "Ping" bzw. eine normale Heartbeat-Meldung oder aber eine normale oder Heartbeat-Meldung zu einem sanften Herunterfahren ist. Wenn nicht, kehrt die Steuerung zu Schritt 340 zurück. Wie weiter oben bemerkt, wird immer bei Empfang einer Heartbeat-Meldung vorzugsweise durch das Senden einer Meldung an den Partner-Server quittiert, dass die Heartbeat-Meldung richtig empfangen wurde. Diese Meldung wird über die serielle Verbindung 150 oder über das Netzwerk N gesendet, wenn eine Netzwerkpräsenzprüfung durchgeführt wird.
  • Wenn in Schritt 342 die empfangene Heartbeat-Meldung kein "Ping", sondern eine normale Heartbeat-Meldung zu einem Herunterfahren war, gibt dies an, dass der Partner-Server normal heruntergefahren wurde. In diesem Fall ist der Partner-Server nicht ausgefallen, so dass das umschaltbare Platten-Subsystem 302 oder 202 nicht umgeschaltet werden sollte, weil es ausgeschaltet ist. Deshalb schreitet die Steuerung zu Schritt 344, wo eine Heartbeat- Quittung zu einem geplanten Herunterfahren gesendet wird, und dann zu Schritt 326 von Fig. 2B fort. Die Steuerung durchläuft in Schritt 326 dann eine Schleife, bis wieder eine Heartbeat-Meldung von dem Partner-Server empfangen wird, die angibt, dass der Partner- Server und sein umschaltbares Platten-Subsystem 102 oder 202 wieder online gebracht wurden.
  • Wenn in Schritt 340 keine Heartbeat-Meldung empfangen wurde, schreitet die Steuerung zu Schritt 346 fort, wo bestimmt wird, ob eine Zeitüberschreitung abgelaufen ist. Heartbeat- Meldungen müssen typischerweise innerhalb von einer vorbestimmten Zeitspanne wie etwa 30 Sekunden gesendet werden, um ein Umschalten zu vermeiden. Die vorbestimmte Zeitspanne wird typischerweise in einer Konfigurationsvariablen gespeichert. Wenn diese Zeitüberschreitung in Schritt 346 nicht abgelaufen ist, schreitet die Steuerung zu Schritt 340 fort, wo wiederum bestimmt wird, ob eine Heartbeat-Meldung empfangen wurde.
  • Wie typischerweise unter Verwendung von Threads implementiert, könnte dies durch das Senden einer Meldung an das NOS 108 oder 208 bewerkstelligt werden, die anfordert, dass wenn eine Heartbeat-Meldung nicht innerhalb einer bestimmten Zeitspanne über die serielle Verbindung 150 empfangen wird, die Steuerung zum Wiederherstellungsagentendienst 300 zurückkehren soll. Wiederum wurde diese auf Interrupts und Threads basierende Implementierung der Anschaulichkeit halber zu normalen Flussdiagrammen vereinfacht.
  • Wenn in Schritt 346 die Zeitüberschreitung abgelaufen ist, gibt dies an, dass der Partner- Server keine Heartbeat-Meldungen mehr über die serielle Verbindung 150 sendet. Deshalb schreitet die Steuerung zu Schritt 348 fort, wo bestimmt wird, ob die Netzwerkpräsenz aktiviert ist, wie weiter oben in Verbindung mit Schritt 310 erläutert wurde. Wenn die Netzwerkpräsenz aktiviert ist, schreitet die Steuerung zu Schritt 320 fort, wo eine Netzwerkpräsenzprüfung durchgeführt wird. Andernfalls schreitet die Steuerung zu Schritt 330 fort, wo ein Umschalten initiiert wird.
  • Schließlich zeigt Fig. 2E eine kurze Routine des Wiederherstellungsagentendienst 300, die bestimmt, ob ein Kabelfehler aufgetreten ist. In Schritt 350 wird bestimmt, ob weiterhin ein Kabelfehler angegeben ist. Zu diesem Schrift gelangt man von einem beliebigen Schritt, wenn wie in der eingeschlossenen Hauptanmeldung erläutert eine Kommunikation über die serielle Verbindung 150 versucht wird. Wenn ein Kabelfehler angegeben wird, durchläuft die Steuerung in Schritt 350 eine Schleife. Wenn kein Kabelfehler angegeben wird, schreitet die Steuerung statt dessen zu der normalen Verarbeitung von Schritt 340 fort.
  • Es ist also deutlich, dass die beiden Server 100 und 200, wenn sie den Wiederherstellungsagentendienst 300 als ihren Wiederherstellungsagenten 110 und 210 ausführen, miteinander kommunizieren, indem sie kontinuierlich Heartbeat-Meldungen senden. Sollte ein Server keine Heartbeat-Meldung senden, initiiert der andere Server eine Präsenzprüfung über das Netzwerk N. Wenn der Partner-Server nicht antwortet, gibt dies an, dass der Partner-Server ausgefallen ist, so dass das umschaltbare Platten-Subsystem 102 oder 202 umgeschaltet wird, damit der verbleibende Server sein eigenes umschaltbares Platten-Subsystem 102 oder 202 über seinen primären Controller 112 oder 212 sowie das andere umschaltbare Platten-Subsystem 102 oder 202 über seinen Wiederherstellungscontroller 116 oder 216 steuern kann. Auf diese Weise können die Benutzer weiterhin auf die Daten in beiden umschaltbaren Platten-Subsystemen 102 und 202 zugreifen, auch wenn einer der Server 100 oder 200 ausgefallen ist.
  • Fig. 3 zeigt ein Flussdiagramm des Anwendungsagenten 400. Der Anwendungsagent 400 ist eine Anwendungssoftware, die derart am Wiederherstellungsagenten 110 oder 210 registriert ist, dass sie über das Auftreten eines Umschaltens und die Verfügbarkeit von umgeschalteten Platten benachrichtigt wird. Der Anwendungsagent 400 kann dann die Ausführung von anderen Anwendungen initiieren, die auf das umschaltbare Platten-Subsystem zugreifen können - etwa von Datenbankprogrammen wie Oracle.
  • Mit Schritt 402 beginnend öffnet der Anwendungsagent zwei Pipes, ein RD_FAIL-Pipe und ein WR_FAIL-Pipe. Diese Pipes werden verwendet, um mit dem Wiederherstellungsagenten 110 oder 210 zu kommunizieren.
  • Wenn in Schritt 404 ein Fehler beim Öffnen dieser Pipes aufgetreten ist, schreitet die Steuerung zu Schritt 406 fort, wo der Anwendungsagent 400 für eine vorbestimmte Zeitdauer wartet und dann zu Schritt 402 zurückkehrt, um erneut zu versuchen, das RD_FAIL-Pipe und das WR_FAIL-Pipe zu öffnen.
  • Wenn diese Pipes in Schritt 404 geöffnet werden konnten, schreitet die Steuerung zu Schritt 408 fort, wo der Anwendungsagent 400 eine CREATE_PIPE-Meldung an das WR_FAIL-Pipe schreibt. Dies veranlasst den Wiederherstellungsagenten 110 oder 210 ein Fehler-Pipe zu erstellen, das mit dem Wiederherstellungsagenten 400 assoziiert ist. Vorzugsweise wird ein separates ERROR_PIPE-Pipe für jede Anwendung erstellt, die einen Anwendungsagenten 400 aufweist. Dabei können natürlich viele Anwendungen einen Anwendungsagenten 400 aufweisen, die alle auf den Wiederherstellungsagenten 110 oder 210 reagieren, wenn ein Umschalten auftritt:
  • Mit Schritt 410 fortschreitend liest der Anwendungsagent 400 den Namen des ERROR_PIPE-Pipes aus dem RD_FAIL-Pipe. Dieses ERROR_PIPE-Pipe sieht Meldungen vom Wiederherstellungsagentendienst 300 vor. Wenn der Wiederherstellungsagentendienst 300 einen Ausfall des Partner-Servers feststellt und das umschaltbare Platten-Subsystem 102 oder 202 umschaltet, sendet der Wiederherstellungsagentendienst 300 in Schritt 332 von Fig. 2C eine Meldung über dieses Pipe an alle registrierten Anwendungen 106 oder 206, die den Anwendungsagenten 400 implementiert haben. Die Meldung wird über das ERROR_PIPE-Pipe gesendet. Anwendungen, die den Anwendungsagenten 400 implementiert haben, werden wie in Schritt 332 definiert als registrierte Anwendungen betrachtet. Mit Schritt 412 fortschreitend wartet der Thread, in dem der Anwendungsagent 400 implementiert ist, auf eine Meldung über das ERROR_PIPE-Pipe, die wie oben erläutert in Schritt 332 gesendet wird. Wenn er eine MACHINE_FAILED-Meldung erhält, schreitet er zu Schritt 414 fort, wo der Anwendungsagent 400 die Laufwerksinformation aus dem ERROR_PIPE-Pipe liest, die in Schritt 332 durch den Wiederherstellungsagentenservice 300 bereitgestellt wird, und schreitet dann zu Schritt 416 fort, wo er verschiedenenartigen Anwendungscode implementiert. Dieser Code kann beispielsweise folgendes umfassen: Bestimmen, welche Daten auf dem umschaltbaren Platten-Subsystem 102 oder 202 verfügbar sind, das gerade durch diesen Server übernommen wurde; Verifizieren der Integrität dieser Daten; und Verfügbarmachen dieser Informationen für die verschiedenen Benutzer des Netzwerks N. Wenn der Anwendungsagent in einem Shell-Programm implementiert ist, kann er stattdessen wie weiter oben erläutert eine Instanz des entsprechenden Anwendungsprogramms öffnen, um die Funktionen zu erfüllen, die zuvor durch die Anwendung 106 oder 206 des Partner- Servers geleistet wurden. Die Steuerung schreitet dann zu Schritt 418 fort, wo alle Pipes geschlossen werden, da sie nicht mehr benötigt werden. Der Thread des Anwendungsagenten 400 wird dann in Schritt 420 beendet.
  • Wenn in Schritt 412 der Anwendungsagent 400 eine Meldung, dass das Umschalten nicht konfiguriert ist, in der Form einer FAILOVER_NOT_CONFIGURED-Meldung empfängt, gibt dies an, dass das Partner-Server-Umschalten aktuell nicht auf diesem bestimmten Server aktiviert ist. Diese Meldung wird nicht ausgegeben, wenn der Server zwar Partner-Server unterstützt, aber die Funktion gegenwärtig aus einem anderen Grund deaktiviert ist. Wenn diese Meldung empfangen wird, schreitet die Steuerung zu Schritt 422 fort, wo verschiedenartiger Anwendungscode implementiert werden kann oder eine Meldung an den Administrator gesendet wird.
  • Wenn entsprechend eine nicht erkannte Meldung von dem ERROR_PIPE-Pipe empfangen wird, schreitet die Steuerung wie von Schritt 422 zu Schritt 418 fort, wo die Pipes geschlossen werden.
  • Auf diese Weise wird der Anwendungsagent 400 durch den Wiederherstellungsagentenservice 300 informiert, wenn Laufwerke in dem umschaltbaren Platten-Subsystem 102 oder 202 des Partner-Servers übernommen wurden. Er kann dann die entsprechenden Schritte durchführen, um die Daten auf den neu übernommenen Laufwerksbuchstaben für die Benutzer verfügbar zu machen.
  • Weiterhin kann die Art und Weise, wie der Anwendungsagent 400 implementiert wird, je nach der Anwendung variieren. Zum Beispiel kann eine Instanz von ORACLE auf dem nicht ausgefallenen Server laufen. Bei einem Ausfall des Partner-Servers und dem folgenden Umschalten kann ein Anwendungsagent-Shellprogramm veranlassen, dass eine andere Instanz von ORACLE initiiert wird. Diese zweite Instanz kann dann auf die neu gemounteten Laufwerke zugreifen und kann eine Integritätsprüfung der ORACLE-Daten zu diesen Dateien durchführen, wobei bei Bedarf Korrekturen vorgenommen werden. Dann laufen also zwei Instanzen von ORACLE - eine für die ursprünglich am Server gemounteten Laufwerke, und die zweite für die neu gemounteten Laufwerke. Ein derartiger Shell-Anwendungsagent kann weiterhin verwendet werden, um Instanzen von vielen anderen Programmen zu starten, die zuvor von einem ausgefallenen Partner-Server ausgeführt wurden.
  • Fig. 4 zeigt verschiedene alternative Ausführungsformen. In Fig. 4 sind die Server 500, 502 und 504 als mit dem Netzwerk N verbunden gezeigt. Weiterhin sind die Server 500, 502 und 504 mit seriellen Verbindungen 506, 508 und 510 verbunden gezeigt. Wie oben erläutert, können diese seriellen Verbindungen durch verschiedenartige andere Verbindungen ersetzt werden; es können aber auch nur Heartbeat-Meldungen verwendet weiden, die ausschließlich über das Netzwerk N gesendet werden.
  • In Fig. 4 sind die Server 500, 502 und 504 mit dualen primären Controllern 512, 514 und 516 sowie mit dualen Wiederherstellungscontrollern 518, 520 und 522 gezeigt. Die dualen primären Controller 512, 514 und 516 sind jeweils mit dualen Speicher-Subsystemen 524, 526 und 528 verbunden. Die dualen Wiederherstellungscontroller 518, 520 und 522 sind mit den dualen Speicher-Subsystemen 524, 526 und 528 auf verschiedene Weise verbunden. Im Server 500 ist der duale Wiederherstellungscontroller 518 mit den zwei Disk-Arrays im dualen Speicher-Subsystem 528 verbunden. Im Server 502 ist der Wiederherstellungscontroller 520 mit den beiden dualen Speicher-Subsystemen 524 und 528 verbunden, die den Servern 500 und 504 entsprechen. Dies kann beispielsweise unter Verwendung von umschaltbaren Anschlüssen im dualen Wiederherstellungscontroller 520 implementiert werden.
  • Der Server 504 ist mit einem zweiten Wiederherstellungscontroller 530, der mit dem dualen Speicher-Subsystem 524 verbunden ist sowie mit dem Wiederherstellungscontroller 522 gezeigt, der mit dem dualen Speicher-Subsystem 526 verbunden ist.
  • Der Sinn des ganzen ist, dass mehrere Server auf verschiedene Weise miteinander verbunden werden können, um ein Backup für die Funktionen der anderen Server vorzusehen, indem sie die Kontrolle über das Speichersystem der anderen Server übernehmen können. Wenn in den verschiedenen in Fig. 4 dargestellten Konfigurationen einer der Server 500, 502 oder 504 ausfallen sollte, kann es erforderlich sein, dass eine Priorität zu einem der verbleibenden Server zugewiesen werden muss, damit dieser die Kontrolle über das Speichersystem des ausgefallenen Servers übernimmt. Alternativ dazu kann das Speichersystem 502 als Backup für den Server 500, der Server 504 als Backup für den Server 502 und der Server 500 als Backup für den Server 504 in einer Daisy-Chain-Konfiguration dienen. Dem Fachmann sollte deutlich sein, dass viele verschiedene Konfigurationen implementiert werden können, um aktive Server vorzusehen, die gleichzeitig als Backup für andere Server dienen können.
  • Es ist deutlich, dass ein System gemäß der vorliegenden Erfindung nicht auf die für die vorliegende Ausführungsform beschriebenen Details beschränkt ist. Zum Beispiel sind die umschaltbaren Platten-Subsysteme 102 und 202 als bestimmte Disk-Array-Systeme gezeigt, wobei sie jedoch ebensogut optische Platten, Bandlaufwerke oder andere Massenspeichermedien sein können. Entsprechend können die Details der Verbindungen zwischen dem ersten Server 100 und dem zweiten Server 200 stark variieren, wobei beispielsweise auch ein einziger SCSI-Bus für die Verbindung aller Komponenten oder eine Faseroptikverbindung verwendet werde können. Entsprechend initiieren die verschiedenen Server der vorliegenden Ausführungsform ein Umschalten zum Speichersystem eines anderen Servers über eine SCSI-Busverbindung, wobei jedoch auch verschiedene andere Möglichkeiten wie etwa eine serielle Verbindung oder eine Netzwerkverbindung direkt zu dem umzuschaltenden Speichersystem verwendet werden können. Dies sollte dem Fachmann deutlich sein.
  • Weiterhin sollte deutlich sein, dass mehr als zwei Server auf diese Weise konfiguriert werden können. Eine Vielzahl von Servern kann jeweils Zugriff auf die anderen Speicher-Subsysteme haben, wobei jeder der Server die Kontrolle übernehmen kann, wenn einer der anderen Server ausfällt.
  • Die vorstehende Beschreibung der vorliegenden Erfindung ist beispielhaft, wobei verschiedene Änderungen in Größe, Form, Material, Komponenten, Schaltelementen, Verbindungen und Kontakten sowie in den Details der dargestellten Schaltungen, des Aufbaus und der Betriebsverfahrens vorgesehen werden können, ohne dass dadurch der Erfindungsumfang verlassen wird.

Claims (13)

1. Duales, fehlertolerantes aktives Serversystem für ein Netzwerk (N), wobei das System umfasst:
einen ersten aktiven Server (100) zur Verbindung mit dem Netzwerk, wobei der erste aktive Server eine erste Anzeige dahingehend, dass er ordnungsgemäß funktioniert, ergehen lässt;
einen zweiten aktiven Server (200) zur Verbindung mit dem Netzwerk, wobei der zweite aktive Server die erste Anzeige von dem ersten aktiven Server (100) empfängt und der zweite Server eine zweite Anzeige an den ersten Server dahingehend, dass er ordnungsgemäß funktioniert, ergehen lässt, und wobei der erste aktive Server (100) einen ersten Umschaltbefehl ergehen lässt, wenn der zweite aktive Server (200) die zweite Anzeige dahingehend, dass der zweite aktive Server ordnungsgemäß funktioniert, nicht ergehen lässt, und wobei der zweite aktive Server (200) einen zweiten Umschaltbefehl ergehen lässt, wenn der erste aktive Server die erste Anzeige dahingehend, dass der erste aktive Server ordnungsgemäß funktioniert, nicht ergehen lässt;
ein erstes Speichersystem (102) mit ersten Speichermedien, wobei das erste Speichersystem vorrangig die ersten Speichermedien mit dem ersten aktiven Server (100) verbindet und als Alternative dazu die ersten Speichermedien mit dem zweiten aktiven Server (200) verbindet und die ersten Speichermedien beim Empfang des zweiten Umschaltbefehls von dem zweiten aktiven Server von dem ersten aktiven Server trennt; und
ein zweites Speichersystem (202) mit zweiten Speichermedien, wobei das zweite Speichersystem vorrangig die zweiten Speichermedien mit dem zweiten aktiven Server (200) verbindet und als Alternative dazu die zweiten Speichermedien mit dem ersten aktiven Server (100) verbindet und die zweiten Speichermedien beim Empfang des ersten Umschaltbefehls von dem ersten aktiven Server von dem zweiten aktiven Server trennt.
2. System nach Anspruch 1, das des Weiteren umfasst:
einen ersten SCSI-Bus (118), der den ersten aktiven Server (100) mit dem zweiten Speichersystem verbindet, und wobei der erste Umschaltbefehl eine Reihe von SCSI-Reset-Signalen über den ersten SCSI-Bus von dem ersten aktiven Server umfasst; und
einen zweiten SCSI-Bus (218), der den zweiten aktiven Server (200) mit dem ersten Speichersystem verbindet, und wobei der zweite Umschaltbefehl eine Reihe von SCSI-Reset-Signalen über den zweiten SCSI-Bus von dem zweiten aktiven Server umfasst.
3. System nach Anspruch 1 oder 2, das des Weiteren umfasst:
eine serielle Verbindung (150) zwischen dem ersten aktiven Server (100) und dem zweiten aktiven Server (200), wobei die serielle Verbindung die erste und die zweite Anzeige leitet.
4. System nach Anspruch 1, wobei die erste und die zweite Anzeige dem Netzwerk zugeführt und von ihm empfangen werden.
5. System nach Anspruch 1, wobei der erste aktive Server (100) des Weiteren enthält:
einen Wiederherstellungsagentendienst (110), der eine Heartbeat-Meldung als die erste Anzeige an den zweiten aktiven Server (200) sendet und eine Heartbeat- Meldung als die zweite Anzeige von dem zweiten aktiven Server empfängt.
6. System nach Anspruch 5, wobei die Heartbeat-Meldungen eine PING-Heartbeat- Meldung und eine Normalabschalt-Heartbeat-Meldung enthalten.
7. System nach Anspruch 1, wobei der erste aktive Server (100) und der zweite aktive Server (200) registrierte Anwendungen ausführen, wobei, wenn der zweite aktive Server die Anzeige dahingehend, dass der zweite aktive Server ordnungsgemäß funktioniert, nicht ergehen lässt, der erste aktive Server eine vorgegebene Meldung an die registrierten Anwendungen in dem ersten aktiven Server sendet, und wobei, wenn der erste aktive Server die Anzeige dahingehend, dass der erste aktive Server ordnungsgemäß funktioniert, nicht ergehen lässt, der zweite aktive Server die vorgegebene Meldung an die registrierten Anwendungen in dem zweiten aktiven Server sendet.
8. System nach Anspruch 1, wobei der erste aktive Server (100) Software enthält, die die Integrität der Daten der zweiten Speichermedien (202) prüft, nachdem der erste Umschaltbefehl für das zweite Speichersystem ergangen ist.
9. Aktiver Server (100) zum Einsatz mit einem aktiven Partnerserver (200) in einem Netzwerk, wobei der aktive Server umfasst:
eine Verbindung (114) für ein erstes Speichersystem (102);
einen Wiederherstellungsagenten (110), der an den aktiven Partnerserver Heartbeat-Meldungen ergehen lässt und diese von ihm empfängt wobei der Wiederherstellungsagent einen Umschaltbefehl sendet, wenn er die Heartbeat-Meldung von dem aktiven Partnerserver nicht empfängt; und
eine Verbindung (118) für ein zweites Speichersystem (202), wobei das zweite Speichersystem beim Empfang des Umschaltbefehls durch das zweite Speichersystem Daten an den aktiven Server ergehen lässt.
10. Aktiver Server nach Anspruch 9, der des Weiteren umfasst:
registrierte Anwendungen, wobei der Wiederherstellungsagent (110) eine vorgegebene Meldung an die registrierten Anwendungen sendet, wenn der aktive Partnerserver (200) die Heartbeat-Meldung nicht sendet.
11. Mehrfach-Serversystem mit aktivem Backup für ein Netzwerk, wobei das System umfasst:
einen ersten aktiven Server (500);
einen zweiten aktiven Server (502);
einen dritten aktiven Server (504), wobei die aktiven Server einander Heartbeat- Meldungen zusenden und voneinander empfangen, und wobei, wenn der erste aktive Server seine Heartbeat-Meldung nicht sendet, der zweite aktive Server einen zweiten Umschaltbefehl ergehen lässt, wenn der zweite aktive Server seine Heartbeat-Meldung nicht sendet, der dritte aktive Server einen dritten Umschaltbefehl ergehen lässt, und wenn der dritte aktive Server seine Heartbeat-Meldung nicht sendet, der erste aktive Server einen ersten Umschaltbefehl ergehen lässt;
ein erstes Speichersystem (524), das vorrangig mit dem ersten aktiven Server verbunden ist und als Alternative dazu mit dem zweiten aktiven Server verbunden ist und beim Empfang des zweiten Umschaltbefehls von dem ersten aktiven Server getrennt wird;
ein zweites Speichersystem (526), das vorrangig mit dem zweiten aktiven Server verbunden ist und als Alternative dazu mit dem dritten aktiven Server verbunden ist und beim Empfang des dritten Umschaltbefehls von dem zweiten aktiven Server getrennt wird; und
ein drittes Speichersystem (528), das vorrangig mit dem dritten aktiven Server verbunden ist und als Alternative dazu mit dem ersten aktiven Server verbunden ist und beim Empfang des ersten Umschaltbefehls von dem dritten aktiven Server getrennt wird.
12. Verfahren zum Erzeugen von aktivem Backup zwischen einem ersten aktiven Server (100) und einem zweiten aktiven Server (200) in einem Netzwerk (N), wobei der erste aktive Server ein erstes Speichersystem (102) hat, das zu dem zweiten aktiven Server umgeschaltet werden kann, und der zweite aktive Server ein Speichersystem (202) hat, das zu dem ersten aktiven Server umgeschaltet werden kann, wobei das Verfahren die folgenden Schritte umfasst:
Senden von Daten von dem ersten Speichersystem über den ersten aktiven Server zu dem Netzwerk;
Senden von Daten von dem zweiten Speichersystem über den zweiten aktiven Server zu dem Speichersystem;
Ergehenlassen einer Anzeige von dem ersten aktiven Server an den zweiten aktiven Server dahingehend, dass der erste aktive Server ordnungsgemäß funktioniert;
Ergehenlassen einer Anzeige von dem zweiten aktiven Server an den ersten aktiven Server dahingehend, dass der zweite aktive Server ordnungsgemäß funktioniert; und
wenn der erste aktive Server die Anzeige von dem zweiten aktiven Server dahingehend, dass der zweite aktive Server ordnungsgemäß funktioniert, nicht empfängt, Umschalten des zweiten Speichersystems von dem zweiten aktiven Server zu dem ersten aktiven Server und Senden von Daten von dem zweiten Speichersystem über den ersten aktiven Server zu dem Netzwerk (N).
13. Verfahren nach Anspruch 12, wobei: wenn der zweite aktive Server (200) die Anzeige von dem ersten aktiven Server (100) dahingehend, dass der erste aktive Server ordnungsgemäß funktioniert, nicht empfängt, Umschalten des ersten Speichersystems (102) von dem ersten aktiven Server zu dem zweiten aktiven Server, und Senden von Daten von dem ersten Speichersystem über den zweiten aktiven Server zu dem Netzwerk (N).
DE69614623T 1995-06-19 1996-06-12 Fehlertolerantes multiples Netzwerkserver Expired - Fee Related DE69614623T2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US08/491,738 US5696895A (en) 1995-05-19 1995-06-19 Fault tolerant multiple network servers

Publications (2)

Publication Number Publication Date
DE69614623D1 DE69614623D1 (de) 2001-09-27
DE69614623T2 true DE69614623T2 (de) 2002-04-18

Family

ID=23953458

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69614623T Expired - Fee Related DE69614623T2 (de) 1995-06-19 1996-06-12 Fehlertolerantes multiples Netzwerkserver

Country Status (3)

Country Link
US (2) US5696895A (de)
EP (1) EP0760503B1 (de)
DE (1) DE69614623T2 (de)

Families Citing this family (294)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7174352B2 (en) 1993-06-03 2007-02-06 Network Appliance, Inc. File system image transfer
US6138126A (en) 1995-05-31 2000-10-24 Network Appliance, Inc. Method for allocating files in a file system integrated with a raid disk sub-system
US5963962A (en) 1995-05-31 1999-10-05 Network Appliance, Inc. Write anywhere file-system layout
US6289390B1 (en) 1993-08-18 2001-09-11 Microsoft Corporation System and method for performing remote requests with an on-line service network
JPH07262034A (ja) * 1994-03-18 1995-10-13 Fujitsu Ltd データ引き継ぎシステム
US6564321B2 (en) 1995-04-28 2003-05-13 Bobo Ii Charles R Systems and methods for storing, delivering, and managing messages
US5956489A (en) * 1995-06-07 1999-09-21 Microsoft Corporation Transaction replication system and method for supporting replicated transaction-based services
US5774668A (en) * 1995-06-07 1998-06-30 Microsoft Corporation System for on-line service in which gateway computer uses service map which includes loading condition of servers broadcasted by application servers for load balancing
US6901433B2 (en) 1995-06-07 2005-05-31 Microsoft Corporation System for providing users with a filtered view of interactive network directory obtains from remote properties cache that provided by an on-line service
US5941947A (en) * 1995-08-18 1999-08-24 Microsoft Corporation System and method for controlling access to data entities in a computer network
US5956509A (en) 1995-08-18 1999-09-21 Microsoft Corporation System and method for performing remote requests with an on-line service network
US6032266A (en) 1996-04-05 2000-02-29 Hitachi, Ltd. Network system having function of changing route upon failure
US6032271A (en) * 1996-06-05 2000-02-29 Compaq Computer Corporation Method and apparatus for identifying faulty devices in a computer system
JP3224745B2 (ja) * 1996-07-09 2001-11-05 株式会社日立製作所 高信頼化ネットワークシステム及びサーバ切り替え方法
US5896499A (en) * 1997-02-21 1999-04-20 International Business Machines Corporation Embedded security processor
US6038677A (en) * 1997-03-31 2000-03-14 International Business Machines Corporation Automatic resource group formation and maintenance in a high availability cluster configuration
AU7149698A (en) * 1997-04-25 1998-11-24 Symbios, Inc. Control message interfacing in a redundant server environment
JP3977484B2 (ja) * 1997-05-08 2007-09-19 矢崎総業株式会社 状態情報の管理方法及び通信システム
US6282673B1 (en) 1997-05-13 2001-08-28 Micron Technology, Inc. Method of recording information system events
US6292905B1 (en) * 1997-05-13 2001-09-18 Micron Technology, Inc. Method for providing a fault tolerant network using distributed server processes to remap clustered network resources to other servers during server failure
US6179486B1 (en) 1997-05-13 2001-01-30 Micron Electronics, Inc. Method for hot add of a mass storage adapter on a system including a dynamically loaded adapter driver
US6192434B1 (en) 1997-05-13 2001-02-20 Micron Electronics, Inc System for hot swapping a programmable adapter by using a programmable processor to selectively disabling and enabling power thereto upon receiving respective control signals
US6324608B1 (en) 1997-05-13 2001-11-27 Micron Electronics Method for hot swapping of network components
US6247080B1 (en) 1997-05-13 2001-06-12 Micron Electronics, Inc. Method for the hot add of devices
US6418492B1 (en) 1997-05-13 2002-07-09 Micron Electronics Method for computer implemented hot-swap and hot-add
US6269417B1 (en) 1997-05-13 2001-07-31 Micron Technology, Inc. Method for determining and displaying the physical slot number of an expansion bus device
US6170067B1 (en) 1997-05-13 2001-01-02 Micron Technology, Inc. System for automatically reporting a system failure in a server
US6134668A (en) 1997-05-13 2000-10-17 Micron Electronics, Inc. Method of selective independent powering of portion of computer system through remote interface from remote interface power supply
US6247079B1 (en) 1997-05-13 2001-06-12 Micron Electronics, Inc Apparatus for computer implemented hot-swap and hot-add
US6304929B1 (en) 1997-05-13 2001-10-16 Micron Electronics, Inc. Method for hot swapping a programmable adapter by using a programmable processor to selectively disabling and enabling power thereto upon receiving respective control signals
US6163849A (en) 1997-05-13 2000-12-19 Micron Electronics, Inc. Method of powering up or powering down a server to a maintenance state
US6173346B1 (en) 1997-05-13 2001-01-09 Micron Electronics, Inc. Method for hot swapping a programmable storage adapter using a programmable processor for selectively enabling or disabling power to adapter slot in response to respective request signals
US5987554A (en) 1997-05-13 1999-11-16 Micron Electronics, Inc. Method of controlling the transfer of information across an interface between two buses
US6182180B1 (en) 1997-05-13 2001-01-30 Micron Electronics, Inc. Apparatus for interfacing buses
US6202160B1 (en) 1997-05-13 2001-03-13 Micron Electronics, Inc. System for independent powering of a computer system
US6266721B1 (en) 1997-05-13 2001-07-24 Micron Electronics, Inc. System architecture for remote access and control of environmental management
US6243773B1 (en) 1997-05-13 2001-06-05 Micron Electronics, Inc. Configuration management system for hot adding and hot replacing devices
US6330690B1 (en) 1997-05-13 2001-12-11 Micron Electronics, Inc. Method of resetting a server
US6170028B1 (en) 1997-05-13 2001-01-02 Micron Electronics, Inc. Method for hot swapping a programmable network adapter by using a programmable processor to selectively disabling and enabling power thereto upon receiving respective control signals
US6338150B1 (en) 1997-05-13 2002-01-08 Micron Technology, Inc. Diagnostic and managing distributed processor system
US6269412B1 (en) 1997-05-13 2001-07-31 Micron Technology, Inc. Apparatus for recording information system events
US6249828B1 (en) 1997-05-13 2001-06-19 Micron Electronics, Inc. Method for the hot swap of a mass storage adapter on a system including a statically loaded adapter driver
US6202111B1 (en) 1997-05-13 2001-03-13 Micron Electronics, Inc. Method for the hot add of a network adapter on a system including a statically loaded adapter driver
US6243838B1 (en) 1997-05-13 2001-06-05 Micron Electronics, Inc. Method for automatically reporting a system failure in a server
US6499073B1 (en) 1997-05-13 2002-12-24 Micron Electronics, Inc. System using programmable processor for selectively enabling or disabling power to adapter in response to respective request signals
US6249834B1 (en) 1997-05-13 2001-06-19 Micron Technology, Inc. System for expanding PCI bus loading capacity
US6195717B1 (en) 1997-05-13 2001-02-27 Micron Electronics, Inc. Method of expanding bus loading capacity
US6363497B1 (en) 1997-05-13 2002-03-26 Micron Technology, Inc. System for clustering software applications
US6253334B1 (en) 1997-05-13 2001-06-26 Micron Electronics, Inc. Three bus server architecture with a legacy PCI bus and mirrored I/O PCI buses
US6249885B1 (en) 1997-05-13 2001-06-19 Karl S. Johnson Method for managing environmental conditions of a distributed processor system
US6272648B1 (en) 1997-05-13 2001-08-07 Micron Electronics, Inc. System for communicating a software-generated pulse waveform between two servers in a network
US6145098A (en) 1997-05-13 2000-11-07 Micron Electronics, Inc. System for displaying system status
US6122758A (en) 1997-05-13 2000-09-19 Micron Electronics, Inc. System for mapping environmental resources to memory for program access
US6219734B1 (en) 1997-05-13 2001-04-17 Micron Electronics, Inc. Method for the hot add of a mass storage adapter on a system including a statically loaded adapter driver
US5907849A (en) * 1997-05-29 1999-05-25 International Business Machines Corporation Method and system for recovery in a partitioned shared nothing database system using virtual share disks
US6199110B1 (en) 1997-05-30 2001-03-06 Oracle Corporation Planned session termination for clients accessing a resource through a server
US6490610B1 (en) * 1997-05-30 2002-12-03 Oracle Corporation Automatic failover for clients accessing a resource through a server
US5948108A (en) * 1997-06-12 1999-09-07 Tandem Computers, Incorporated Method and system for providing fault tolerant access between clients and a server
US6070251A (en) * 1997-06-26 2000-05-30 Sun Microsystems, Inc. Method and apparatus for high availability and caching data storage devices
US6219799B1 (en) 1997-07-01 2001-04-17 Unisys Corporation Technique to support pseudo-names
US5983371A (en) * 1997-07-11 1999-11-09 Marathon Technologies Corporation Active failure detection
JP3111935B2 (ja) * 1997-08-15 2000-11-27 日本電気株式会社 Lanエミュレーションサーバ二重化方式
US6199173B1 (en) 1997-10-01 2001-03-06 Micron Electronics, Inc. Method for mapping environmental resources to memory for program access
US6212585B1 (en) 1997-10-01 2001-04-03 Micron Electronics, Inc. Method of automatically configuring a server after hot add of a device
US6154835A (en) 1997-10-01 2000-11-28 Micron Electronics, Inc. Method for automatically configuring and formatting a computer system and installing software
US6263387B1 (en) 1997-10-01 2001-07-17 Micron Electronics, Inc. System for automatically configuring a server after hot add of a device
US6138179A (en) 1997-10-01 2000-10-24 Micron Electronics, Inc. System for automatically partitioning and formatting a primary hard disk for installing software in which selection of extended partition size is not related to size of hard disk
US6175490B1 (en) 1997-10-01 2001-01-16 Micron Electronics, Inc. Fault tolerant computer system
US5999565A (en) * 1997-10-15 1999-12-07 Cisco Technology, Inc. Data communication using a modifiable number of XDSL modems
US6173420B1 (en) * 1997-10-31 2001-01-09 Oracle Corporation Method and apparatus for fail safe configuration
US6279032B1 (en) 1997-11-03 2001-08-21 Microsoft Corporation Method and system for quorum resource arbitration in a server cluster
JPH11143729A (ja) * 1997-11-07 1999-05-28 Nec Corp フォールトトレラントコンピュータ
US6145089A (en) * 1997-11-10 2000-11-07 Legato Systems, Inc. Server fail-over system
US6058424A (en) * 1997-11-17 2000-05-02 International Business Machines Corporation System and method for transferring a session from one application server to another without losing existing resources
US6516351B2 (en) 1997-12-05 2003-02-04 Network Appliance, Inc. Enforcing uniform file-locking for diverse file-locking protocols
US6202169B1 (en) * 1997-12-31 2001-03-13 Nortel Networks Corporation Transitioning between redundant computer systems on a network
US6457130B2 (en) 1998-03-03 2002-09-24 Network Appliance, Inc. File access control in a multi-protocol file server
US6799224B1 (en) 1998-03-10 2004-09-28 Quad Research High speed fault tolerant mass storage network information server
US6260155B1 (en) 1998-05-01 2001-07-10 Quad Research Network information server
US6330715B1 (en) * 1998-05-19 2001-12-11 Nortel Networks Limited Method and apparatus for managing software in a network system
WO1999063438A1 (en) * 1998-06-05 1999-12-09 Mylex Corporation Apparatus, system and method for n-way raid controller
US6597688B2 (en) 1998-06-12 2003-07-22 J2 Global Communications, Inc. Scalable architecture for transmission of messages over a network
US6167531A (en) * 1998-06-18 2000-12-26 Unisys Corporation Methods and apparatus for transferring mirrored disk sets during system fail-over
JP3360719B2 (ja) * 1998-06-19 2002-12-24 日本電気株式会社 ディスクアレイクラスタリング通報方法およびシステム
US6279011B1 (en) 1998-06-19 2001-08-21 Network Appliance, Inc. Backup and restore for heterogeneous file server environment
US6205503B1 (en) 1998-07-17 2001-03-20 Mallikarjunan Mahalingam Method for the hot swap and add of input/output platforms and devices
US6223234B1 (en) 1998-07-17 2001-04-24 Micron Electronics, Inc. Apparatus for the hot swap and add of input/output platforms and devices
US6868442B1 (en) 1998-07-29 2005-03-15 Unisys Corporation Methods and apparatus for processing administrative requests of a distributed network application executing in a clustered computing environment
US8234477B2 (en) 1998-07-31 2012-07-31 Kom Networks, Inc. Method and system for providing restricted access to a storage medium
US9361243B2 (en) 1998-07-31 2016-06-07 Kom Networks Inc. Method and system for providing restricted access to a storage medium
US6574591B1 (en) 1998-07-31 2003-06-03 Network Appliance, Inc. File systems image transfer between dissimilar file systems
US7305451B2 (en) * 1998-08-24 2007-12-04 Microsoft Corporation System for providing users an integrated directory service containing content nodes located in different groups of application servers in computer network
US6119244A (en) * 1998-08-25 2000-09-12 Network Appliance, Inc. Coordinating persistent status information with multiple file servers
US6266785B1 (en) 1998-09-01 2001-07-24 Ncr Corporation File system filter driver apparatus and method
US6266784B1 (en) * 1998-09-15 2001-07-24 International Business Machines Corporation Direct storage of recovery plan file on remote server for disaster recovery and storage management thereof
US6247141B1 (en) 1998-09-24 2001-06-12 Telefonaktiebolaget Lm Ericsson (Publ) Protocol for providing replicated servers in a client-server system
US6504915B1 (en) 1998-09-25 2003-01-07 Unisys Corporation Multiple node messaging system wherein nodes have shared access to message stores of other nodes
US6088721A (en) * 1998-10-20 2000-07-11 Lucent Technologies, Inc. Efficient unified replication and caching protocol
DE19849787C1 (de) * 1998-10-28 2000-02-24 Fresenius Medical Care De Gmbh Blutbehandlungsgerät
US6370657B1 (en) 1998-11-19 2002-04-09 Compaq Computer Corporation Hot processor swap in a multiprocessor personal computer system
US6370656B1 (en) 1998-11-19 2002-04-09 Compaq Information Technologies, Group L. P. Computer system with adaptive heartbeat
US6360333B1 (en) 1998-11-19 2002-03-19 Compaq Computer Corporation Method and apparatus for determining a processor failure in a multiprocessor computer
US6343984B1 (en) 1998-11-30 2002-02-05 Network Appliance, Inc. Laminar flow duct cooling system
US6351769B1 (en) 1998-12-04 2002-02-26 Dell Usa, L.P. Dynamic burn rack monitor listener server
US6389459B1 (en) * 1998-12-09 2002-05-14 Ncr Corporation Virtualized storage devices for network disk mirroring applications
JP2000181890A (ja) * 1998-12-15 2000-06-30 Fujitsu Ltd マルチプロセッサ交換機及びその主プロセッサ切替方法
US6826692B1 (en) 1998-12-23 2004-11-30 Computer Associates Think, Inc. Method and apparatus to permit automated server determination for foreign system login
US6408399B1 (en) * 1999-02-24 2002-06-18 Lucent Technologies Inc. High reliability multiple processing and control system utilizing shared components
US6401120B1 (en) 1999-03-26 2002-06-04 Microsoft Corporation Method and system for consistent cluster operational data in a server cluster using a quorum of replicas
US6453426B1 (en) * 1999-03-26 2002-09-17 Microsoft Corporation Separately storing core boot data and cluster configuration data in a server cluster
US7774469B2 (en) 1999-03-26 2010-08-10 Massa Michael T Consistent cluster operational data in a server cluster using a quorum of replicas
US6442685B1 (en) * 1999-03-31 2002-08-27 International Business Machines Corporation Method and system for multiple network names of a single server
US6457015B1 (en) * 1999-05-07 2002-09-24 Network Appliance, Inc. Adaptive and generalized status monitor
US6324572B1 (en) * 1999-05-14 2001-11-27 Motorola, Inc. Communication network method and apparatus
US6539494B1 (en) * 1999-06-17 2003-03-25 Art Technology Group, Inc. Internet server session backup apparatus
US6961749B1 (en) 1999-08-25 2005-11-01 Network Appliance, Inc. Scalable file server with highly available pairs
US6526432B1 (en) * 1999-08-31 2003-02-25 International Business Machines Corporation Relaxed quorum determination for a quorum based operation of a distributed computing system
US6542929B1 (en) 1999-08-31 2003-04-01 International Business Machines Corporation Relaxed quorum determination for a quorum based operation
US6487678B1 (en) 1999-08-31 2002-11-26 International Business Machines Corporation Recovery procedure for a dynamically reconfigured quorum group of processors in a distributed computing system
US6490693B1 (en) 1999-08-31 2002-12-03 International Business Machines Corporation Dynamic reconfiguration of a quorum group of processors in a distributed computing system
US6658595B1 (en) * 1999-10-19 2003-12-02 Cisco Technology, Inc. Method and system for asymmetrically maintaining system operability
US6654347B1 (en) * 1999-10-22 2003-11-25 Dell Usa L.P. Site-to-site dynamic virtual local area network
US7526533B1 (en) * 1999-11-30 2009-04-28 Cisco Technology, Inc. Active call context reconstruction for primary/backup resource manager servers
US6662219B1 (en) 1999-12-15 2003-12-09 Microsoft Corporation System for determining at subgroup of nodes relative weight to represent cluster by obtaining exclusive possession of quorum resource
US6938256B2 (en) 2000-01-18 2005-08-30 Galactic Computing Corporation System for balance distribution of requests across multiple servers using dynamic metrics
AU2001255523A1 (en) * 2000-04-20 2001-11-07 Ciprico Inc. Method and apparatus for maintaining the integrity of configuration data in redundant, fault tolerant network appliances
US6701449B1 (en) 2000-04-20 2004-03-02 Ciprico, Inc. Method and apparatus for monitoring and analyzing network appliance status information
US6760859B1 (en) 2000-05-23 2004-07-06 International Business Machines Corporation Fault tolerant local area network connectivity
US7219260B1 (en) * 2000-05-26 2007-05-15 Emc Corporation Fault tolerant system shared system resource with state machine logging
US7263476B1 (en) 2000-06-12 2007-08-28 Quad Research High speed information processing and mass storage system and method, particularly for information and application servers
US6859830B1 (en) * 2000-06-23 2005-02-22 Microsoft Corporation Method and system for detecting a dead server
US7318107B1 (en) * 2000-06-30 2008-01-08 Intel Corporation System and method for automatic stream fail-over
US7103002B2 (en) * 2000-07-12 2006-09-05 Telefonktiebolaget Lm Ericsson (Publ) Communication management in networks having split control planes and user planes
US6816905B1 (en) 2000-11-10 2004-11-09 Galactic Computing Corporation Bvi/Bc Method and system for providing dynamic hosted service management across disparate accounts/sites
US7844513B2 (en) 2000-07-17 2010-11-30 Galactic Computing Corporation Bvi/Bc Method and system for operating a commissioned e-commerce service prover
US8538843B2 (en) 2000-07-17 2013-09-17 Galactic Computing Corporation Bvi/Bc Method and system for operating an E-commerce service provider
US7095828B1 (en) 2000-08-11 2006-08-22 Unisys Corporation Distributed network applications platform architecture
US7327832B1 (en) 2000-08-11 2008-02-05 Unisys Corporation Adjunct processing of multi-media functions in a messaging system
US7116764B1 (en) 2000-08-11 2006-10-03 Unisys Corporation Network interface unit having an embedded services processor
US7296073B1 (en) 2000-09-13 2007-11-13 Network Appliance, Inc. Mechanism to survive server failures when using the CIFS protocol
US20020073409A1 (en) * 2000-12-13 2002-06-13 Arne Lundback Telecommunications platform with processor cluster and method of operation thereof
US6785678B2 (en) * 2000-12-21 2004-08-31 Emc Corporation Method of improving the availability of a computer clustering system through the use of a network medium link state function
WO2002052798A2 (en) 2000-12-22 2002-07-04 Research In Motion Limited Wireless router system and method
US7069334B2 (en) 2000-12-27 2006-06-27 Intel Corporation Image restoration and reconfiguration support for crashed devices
US7069298B2 (en) 2000-12-29 2006-06-27 Webex Communications, Inc. Fault-tolerant distributed system for collaborative computing
US20030164853A1 (en) * 2000-12-29 2003-09-04 Min Zhu Distributed document sharing
US7203755B2 (en) * 2000-12-29 2007-04-10 Webex—Communications, Inc. System and method for application sharing in collaborative setting
US7130883B2 (en) 2000-12-29 2006-10-31 Webex Communications, Inc. Distributed network system architecture for collaborative computing
US20030167418A1 (en) * 2000-12-29 2003-09-04 Min Zhu Fault-tolerant server for collaborative computing
US6901448B2 (en) * 2000-12-29 2005-05-31 Webex Communications, Inc. Secure communications system for collaborative computing
US20040153714A1 (en) * 2001-01-19 2004-08-05 Kjellberg Rikard M. Method and apparatus for providing error tolerance in a network environment
WO2002058337A1 (en) * 2001-01-19 2002-07-25 Openwave Systems, Inc. Computer solution and software product to establish error tolerance in a network environment
US7577701B1 (en) * 2001-01-22 2009-08-18 Insightete Corporation System and method for continuous monitoring and measurement of performance of computers on network
WO2002069162A1 (en) * 2001-02-24 2002-09-06 International Business Machines Corporation Twin-tailed fail-over for fileservers maintaining full performance in the presence of a failure
US20020124204A1 (en) * 2001-03-02 2002-09-05 Ling-Zhong Liu Guarantee of context synchronization in a system configured with control redundancy
US20020133601A1 (en) * 2001-03-16 2002-09-19 Kennamer Walter J. Failover of servers over which data is partitioned
US6715019B1 (en) * 2001-03-17 2004-03-30 Hewlett-Packard Development Company, L.P. Bus reset management by a primary controller card of multiple controller cards
US6928583B2 (en) * 2001-04-11 2005-08-09 Stratus Technologies Bermuda Ltd. Apparatus and method for two computing elements in a fault-tolerant server to execute instructions in lockstep
US7308512B1 (en) 2001-05-16 2007-12-11 Network Appliance, Inc. Fiber channel adaptor for serial or parallel ATA disks
US6654241B2 (en) * 2001-06-29 2003-11-25 Intel Corporation High availability small foot-print server
US6880100B2 (en) * 2001-07-18 2005-04-12 Smartmatic Corp. Peer-to-peer fault detection
US7146524B2 (en) * 2001-08-03 2006-12-05 Isilon Systems, Inc. Systems and methods for providing a distributed file system incorporating a virtual hot spare
US7685126B2 (en) * 2001-08-03 2010-03-23 Isilon Systems, Inc. System and methods for providing a distributed file system utilizing metadata to track information about data stored throughout the system
US6922791B2 (en) * 2001-08-09 2005-07-26 Dell Products L.P. Failover system and method for cluster environment
US7245632B2 (en) 2001-08-10 2007-07-17 Sun Microsystems, Inc. External storage for modular computer systems
JP2003076592A (ja) * 2001-09-04 2003-03-14 Hitachi Ltd データ格納システム
JP4796251B2 (ja) * 2001-09-21 2011-10-19 株式会社日立製作所 ネットワークストレージシステム及びその制御方法
US7257629B2 (en) * 2001-09-27 2007-08-14 Siemens Communications, Inc. Method and apparatus for providing back-up capability in a communication system
US7277952B2 (en) 2001-09-28 2007-10-02 Microsoft Corporation Distributed system resource protection via arbitration and ownership
JP3771162B2 (ja) * 2001-10-03 2006-04-26 株式会社日立製作所 保守管理方法、保守管理システム、情報処理システムおよびコンピュータプログラム
US6910150B2 (en) * 2001-10-15 2005-06-21 Dell Products L.P. System and method for state preservation in a stretch cluster
US6766482B1 (en) 2001-10-31 2004-07-20 Extreme Networks Ethernet automatic protection switching
GB2381713A (en) * 2001-11-01 2003-05-07 3Com Corp Failover mechanism involving blocking of access of a malfunctioning server and continuing monitoring to enable unblocking of access if server recovers
JP3964212B2 (ja) * 2002-01-16 2007-08-22 株式会社日立製作所 記憶装置システム
US7127512B2 (en) * 2002-02-19 2006-10-24 Qualcomm Inc. Method and apparatus for two-phase commit in data distribution to a web farm
US6931568B2 (en) * 2002-03-29 2005-08-16 International Business Machines Corporation Fail-over control in a computer system having redundant service processors
FI115015B (fi) * 2002-04-22 2005-02-15 Metso Automation Oy Menetelmä ja järjestelmä väylän varmistamiseksi sekä ohjauspalvelin
US7249174B2 (en) 2002-06-12 2007-07-24 Bladelogic, Inc. Method and system for executing and undoing distributed server change operations
US7124320B1 (en) * 2002-08-06 2006-10-17 Novell, Inc. Cluster failover via distributed configuration repository
US20040034807A1 (en) * 2002-08-14 2004-02-19 Gnp Computers, Inc. Roving servers in a clustered telecommunication distributed computer system
WO2004023259A2 (en) * 2002-09-06 2004-03-18 Samy Mahmoud Aboel-Nil Method and system for processing email during an unplanned outage
US7426652B2 (en) * 2002-09-09 2008-09-16 Messageone, Inc. System and method for application monitoring and automatic disaster recovery for high-availability
US20040068591A1 (en) * 2002-10-03 2004-04-08 Workman Michael Lee Systems and methods of multiple access paths to single ported storage devices
US20040123027A1 (en) * 2002-10-03 2004-06-24 Workman Michael Lee Systems and methods of multiple access paths to single ported storage devices
EP2284735A1 (de) 2002-11-14 2011-02-16 Isilon Systems, Inc. Systeme und Verfahren für das Restriping von Dateien in einem verteilten Dateisystem
US7583591B2 (en) * 2002-12-08 2009-09-01 Intel Corporation Facilitating communications with clustered servers
US7131028B2 (en) * 2002-12-11 2006-10-31 Sun Microsystems, Inc. System and method for interconnecting nodes of a redundant computer system
US7623848B2 (en) * 2003-03-20 2009-11-24 Dell Marketing Usa L.P. Method and system for providing backup messages to wireless devices during outages
JP4155399B2 (ja) * 2003-03-28 2008-09-24 株式会社日立製作所 コンピュータ処理方法及びその実施システム並びにその処理プログラム
US7203863B2 (en) * 2003-05-09 2007-04-10 Oracle International Corporation Distributed transaction state management through application server clustering
US7194655B2 (en) * 2003-06-12 2007-03-20 International Business Machines Corporation Method and system for autonomously rebuilding a failed server and a computer system utilizing the same
US20050015430A1 (en) * 2003-06-25 2005-01-20 Rothman Michael A. OS agnostic resource sharing across multiple computing platforms
CA2435655A1 (en) * 2003-07-21 2005-01-21 Symbium Corporation Embedded system administration
US7379989B2 (en) * 2003-07-31 2008-05-27 International Business Machines Corporation Method for dual agent processes and dual active server processes
US8949380B2 (en) * 2003-09-29 2015-02-03 Eqapez Foundation, L.L.C. Method and system for distributing images to client systems
KR100544900B1 (ko) 2003-10-09 2006-01-24 한국전자통신연구원 네트워크 교정 보안 방법
US7383313B2 (en) * 2003-11-05 2008-06-03 Hitachi, Ltd. Apparatus and method of heartbeat mechanism using remote mirroring link for multiple storage system
US7225356B2 (en) * 2003-11-06 2007-05-29 Siemens Medical Solutions Health Services Corporation System for managing operational failure occurrences in processing devices
JP4318211B2 (ja) * 2004-03-08 2009-08-19 富士通株式会社 高信頼システム、冗長構成制御方法及びプログラム
US20060004697A1 (en) * 2004-06-09 2006-01-05 Lipsky Scott E Method and system for restricting the display of images
WO2005122495A1 (fr) * 2004-06-14 2005-12-22 Huawei Technologies Co., Ltd. Procede de comptage de quantite pour utilisateur de mbms
US7530091B2 (en) * 2004-07-19 2009-05-05 Pct International, Inc. VOIP drop amplifier
US7502824B2 (en) 2004-08-12 2009-03-10 Oracle International Corporation Database shutdown with session migration
US7613710B2 (en) * 2004-08-12 2009-11-03 Oracle International Corporation Suspending a result set and continuing from a suspended result set
US7587400B2 (en) * 2004-08-12 2009-09-08 Oracle International Corporation Suspending a result set and continuing from a suspended result set for transparent session migration
US7743333B2 (en) * 2004-08-12 2010-06-22 Oracle International Corporation Suspending a result set and continuing from a suspended result set for scrollable cursors
US7415470B2 (en) 2004-08-12 2008-08-19 Oracle International Corporation Capturing and re-creating the state of a queue when migrating a session
US8055711B2 (en) 2004-10-29 2011-11-08 Emc Corporation Non-blocking commit protocol systems and methods
US8051425B2 (en) 2004-10-29 2011-11-01 Emc Corporation Distributed system with asynchronous execution systems and methods
US8238350B2 (en) 2004-10-29 2012-08-07 Emc Corporation Message batching with checkpoints systems and methods
KR100628312B1 (ko) * 2004-11-25 2006-09-27 한국전자통신연구원 인터넷 서버 보안 장치 및 그 방법
DE102004062116B3 (de) * 2004-12-23 2006-05-11 Ab Skf Lageranordnung für einen Computertomographen
US7412291B2 (en) * 2005-01-12 2008-08-12 Honeywell International Inc. Ground-based software tool for controlling redundancy management switching operations
US7366846B2 (en) * 2005-01-14 2008-04-29 International Business Machines Corporation Redirection of storage access requests
US7337350B2 (en) * 2005-02-09 2008-02-26 Hitachi, Ltd. Clustered storage system with external storage systems
US9176772B2 (en) 2005-02-11 2015-11-03 Oracle International Corporation Suspending and resuming of sessions
US20100117728A1 (en) * 2005-03-10 2010-05-13 Robert Ryan Riggsby Signal Amplifiers Having Communications Paths that Automatically Terminate to a Matched Termination in Response to a Power Interruption and Related Methods
US7912431B2 (en) * 2005-03-10 2011-03-22 Commscope, Inc. Of North Carolina Signal amplifiers having non-interruptible communication paths
CA2504333A1 (en) * 2005-04-15 2006-10-15 Symbium Corporation Programming and development infrastructure for an autonomic element
US7937616B2 (en) * 2005-06-28 2011-05-03 International Business Machines Corporation Cluster availability management
US7743372B2 (en) * 2005-06-28 2010-06-22 Internatinal Business Machines Corporation Dynamic cluster code updating in logical partitions
US7774785B2 (en) * 2005-06-28 2010-08-10 International Business Machines Corporation Cluster code management
JP2007034479A (ja) * 2005-07-25 2007-02-08 Nec Corp 稼働系装置、待機系装置、稼働・待機システム、稼働系制御方法、待機系制御方法、および、稼働系・待機系制御方法
US7669073B2 (en) * 2005-08-19 2010-02-23 Stratus Technologies Bermuda Ltd. Systems and methods for split mode operation of fault-tolerant computer systems
TWI321737B (en) * 2005-08-29 2010-03-11 Wistron Corp Computer network system and related method for monitoring a server
US8427941B2 (en) * 2005-09-23 2013-04-23 Infortrend Technology, Inc. Redundant storage virtualization subsystem having data path branching functionality
US7551572B2 (en) 2005-10-21 2009-06-23 Isilon Systems, Inc. Systems and methods for providing variable protection
US7797283B2 (en) 2005-10-21 2010-09-14 Isilon Systems, Inc. Systems and methods for maintaining distributed data
US7917474B2 (en) * 2005-10-21 2011-03-29 Isilon Systems, Inc. Systems and methods for accessing and updating distributed data
US7788303B2 (en) 2005-10-21 2010-08-31 Isilon Systems, Inc. Systems and methods for distributed system scanning
JP4544146B2 (ja) * 2005-11-29 2010-09-15 株式会社日立製作所 障害回復方法
US7573810B2 (en) * 2005-12-14 2009-08-11 International Business Machines Corporation Avoiding deadlocks in performing failovers in communications environments
JP4839841B2 (ja) * 2006-01-04 2011-12-21 株式会社日立製作所 スナップショット再起動方法
US8051179B2 (en) * 2006-02-01 2011-11-01 Oracle America, Inc. Distributed session failover
US7848261B2 (en) 2006-02-17 2010-12-07 Isilon Systems, Inc. Systems and methods for providing a quiescing protocol
US7756898B2 (en) 2006-03-31 2010-07-13 Isilon Systems, Inc. Systems and methods for notifying listeners of events
GB0612573D0 (en) * 2006-06-24 2006-08-02 Ibm System and method for detecting routing problems
CN101485139B (zh) * 2006-07-28 2011-09-14 中兴通讯股份有限公司 一种基于网元的分布式主备管理的方法及系统
US8539056B2 (en) 2006-08-02 2013-09-17 Emc Corporation Systems and methods for configuring multiple network interfaces
US7882071B2 (en) 2006-08-18 2011-02-01 Isilon Systems, Inc. Systems and methods for a snapshot of data
US7590652B2 (en) 2006-08-18 2009-09-15 Isilon Systems, Inc. Systems and methods of reverse lookup
US7571349B2 (en) * 2006-08-18 2009-08-04 Microsoft Corporation Configuration replication for system recovery and migration
US7680842B2 (en) 2006-08-18 2010-03-16 Isilon Systems, Inc. Systems and methods for a snapshot of data
US7680836B2 (en) 2006-08-18 2010-03-16 Isilon Systems, Inc. Systems and methods for a snapshot of data
US7752402B2 (en) * 2006-08-18 2010-07-06 Isilon Systems, Inc. Systems and methods for allowing incremental journaling
US7953704B2 (en) 2006-08-18 2011-05-31 Emc Corporation Systems and methods for a snapshot of data
US7676691B2 (en) 2006-08-18 2010-03-09 Isilon Systems, Inc. Systems and methods for providing nonlinear journaling
US7899800B2 (en) 2006-08-18 2011-03-01 Isilon Systems, Inc. Systems and methods for providing nonlinear journaling
US7822932B2 (en) 2006-08-18 2010-10-26 Isilon Systems, Inc. Systems and methods for providing nonlinear journaling
US7617413B2 (en) * 2006-12-13 2009-11-10 Inventec Corporation Method of preventing erroneous take-over in a dual redundant server system
ES2345115T3 (es) 2006-12-19 2010-09-15 Saab Ab Un procedimiento para asegurar la funcion de salvaguardar en un sistema electrico de un vehiculo, y sistema electrico correspondiente.
US8286029B2 (en) 2006-12-21 2012-10-09 Emc Corporation Systems and methods for managing unavailable storage devices
US7593938B2 (en) 2006-12-22 2009-09-22 Isilon Systems, Inc. Systems and methods of directory entry encodings
US7509448B2 (en) 2007-01-05 2009-03-24 Isilon Systems, Inc. Systems and methods for managing semantic locks
US20080184059A1 (en) * 2007-01-30 2008-07-31 Inventec Corporation Dual redundant server system for transmitting packets via linking line and method thereof
US7900015B2 (en) 2007-04-13 2011-03-01 Isilon Systems, Inc. Systems and methods of quota accounting
US8966080B2 (en) 2007-04-13 2015-02-24 Emc Corporation Systems and methods of managing resource utilization on a threaded computer system
US7779048B2 (en) 2007-04-13 2010-08-17 Isilon Systems, Inc. Systems and methods of providing possible value ranges
US20080267080A1 (en) * 2007-04-27 2008-10-30 Futurewei Technologies, Inc. Fault Verification for an Unpaired Unidirectional Switched-Path
US7969888B2 (en) * 2007-04-27 2011-06-28 Futurewei Technologies, Inc. Data communications network for the management of an ethernet transport network
US8140654B2 (en) * 2007-04-27 2012-03-20 Futurewei Technologies, Inc. Verifying management virtual local area network identifier provisioning consistency
US8179872B2 (en) * 2007-05-09 2012-05-15 Research In Motion Limited Wireless router system and method
US8140719B2 (en) * 2007-06-21 2012-03-20 Sea Micro, Inc. Dis-aggregated and distributed data-center architecture using a direct interconnect fabric
US7949692B2 (en) 2007-08-21 2011-05-24 Emc Corporation Systems and methods for portals into snapshot data
US7966289B2 (en) 2007-08-21 2011-06-21 Emc Corporation Systems and methods for reading objects in a file system
US7882068B2 (en) 2007-08-21 2011-02-01 Isilon Systems, Inc. Systems and methods for adaptive copy on write
US7949636B2 (en) 2008-03-27 2011-05-24 Emc Corporation Systems and methods for a read only mode for a portion of a storage system
US7984324B2 (en) 2008-03-27 2011-07-19 Emc Corporation Systems and methods for managing stalled storage devices
US7953709B2 (en) 2008-03-27 2011-05-31 Emc Corporation Systems and methods for a read only mode for a portion of a storage system
US7870345B2 (en) 2008-03-27 2011-01-11 Isilon Systems, Inc. Systems and methods for managing stalled storage devices
US20090320085A1 (en) 2008-06-23 2009-12-24 Jon-En Wang House amplifier with return path gating
US8769597B2 (en) * 2008-06-23 2014-07-01 Pct International, Inc. Amplifier with noise reduction
US8051327B2 (en) * 2008-10-28 2011-11-01 Microsoft Corporation Connection between machines and power source
JP5593718B2 (ja) * 2010-02-05 2014-09-24 富士通株式会社 ストレージ装置、ストレージ装置制御プログラムおよびストレージ装置制御方法
JP5601150B2 (ja) * 2010-10-26 2014-10-08 日本電気株式会社 ネットワーク監視システム、ネットワーク監視方法、及びサーバ
CN103262046A (zh) * 2010-12-10 2013-08-21 日本电气株式会社 服务器管理装置、服务器管理方法和程序
TWI463831B (zh) * 2011-10-05 2014-12-01 Quanta Comp Inc 伺服器叢集及其控制方法
US9742676B2 (en) 2012-06-06 2017-08-22 International Business Machines Corporation Highly available servers
US20140156120A1 (en) * 2012-11-30 2014-06-05 Electro-Motive Diesel, Inc. Monitoring and failover operation within locomotive distributed control system
CN103544081B (zh) * 2013-10-23 2015-08-12 曙光信息产业(北京)有限公司 双元数据服务器的管理方法和装置
US9699516B2 (en) 2014-01-21 2017-07-04 Commscope, Inc. Of North Carolina Signal amplifiers that support MoCA communications at both active and passive output ports
US9389968B2 (en) * 2014-04-30 2016-07-12 Netapp, Inc. Preventing non-detectable data loss during site switchover
US9582375B2 (en) * 2014-05-07 2017-02-28 Oracle International Corporation Method and system for automatic failover for clients accessing a resource through a server using hybrid checksum location
US9836368B2 (en) 2015-10-22 2017-12-05 Netapp, Inc. Implementing automatic switchover
US10417073B2 (en) 2017-04-12 2019-09-17 Bank Of America Corporation Application server deployment system for domain generation and testing with an administrative server virtual machine and managed server virtual machines
FR3076004B1 (fr) * 2017-12-27 2021-03-19 Bull Sas Procede de gestion de panne dans un reseau de noeuds et partie de reseau de noeuds associee
FR3082973B1 (fr) * 2018-06-22 2020-06-05 Bull Sas Procede de gestion de panne dans un reseau de noeuds base sur une strategie locale
FR3082974B1 (fr) * 2018-06-22 2020-06-05 Bull Sas Procede de gestion de panne dans un reseau de nœuds base sur une strategie globale
PL3617887T3 (pl) * 2018-08-27 2021-09-27 Ovh Sposób i system do zapewniania nadmiarowości usług między serwerem nadrzędnym a serwerem podrzędnym
US12511062B2 (en) 2019-01-14 2025-12-30 Pure Storage, Inc. Managing permissions for processing input/output (I/O) operations in a storage system
US11003369B1 (en) 2019-01-14 2021-05-11 Pure Storage, Inc. Performing a tune-up procedure on a storage device during a boot process
US11240336B2 (en) 2019-06-27 2022-02-01 Imperva, Inc. Accelerating dynamic content delivery in a content delivery network
CN112073667B (zh) * 2020-07-20 2024-03-19 视联动力信息技术股份有限公司 一种恢复业务的方法、装置、电子设备及存储介质
US11372553B1 (en) * 2020-12-31 2022-06-28 Seagate Technology Llc System and method to increase data center availability using rack-to-rack storage link cable

Family Cites Families (37)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE2550770C3 (de) * 1975-11-12 1979-08-30 Maschinenfabrik Gehring Gmbh & Co Kg, 7302 Ostfildern Elektrische Steuerungsvorrichtung für die anschlaglose Wegbegrenzung an Werkzeugmaschinen, insbesondere Honmaschinen
US4503534A (en) * 1982-06-30 1985-03-05 Intel Corporation Apparatus for redundant operation of modules in a multiprocessing system
US4590554A (en) * 1982-11-23 1986-05-20 Parallel Computers Systems, Inc. Backup fault tolerant computer system
EP0109981B1 (de) * 1982-12-07 1987-06-16 Ibm Deutschland Gmbh Ausfallgesicherte Datenverarbeitungsanlage
US4823256A (en) * 1984-06-22 1989-04-18 American Telephone And Telegraph Company, At&T Bell Laboratories Reconfigurable dual processor system
JPS61228533A (ja) * 1985-04-03 1986-10-11 Hitachi Ltd 電子計算機におけるセツシヨンの制御方法
JPS6272248A (ja) * 1985-09-25 1987-04-02 Hitachi Ltd デ−タ伝送システムの現用予備切替方法
US4710926A (en) * 1985-12-27 1987-12-01 American Telephone And Telegraph Company, At&T Bell Laboratories Fault recovery in a distributed processing system
US4819159A (en) * 1986-08-29 1989-04-04 Tolerant Systems, Inc. Distributed multiprocess transaction processing system and method
JPS6375963A (ja) * 1986-09-19 1988-04-06 Hitachi Ltd システム回復方式
US5005122A (en) * 1987-09-08 1991-04-02 Digital Equipment Corporation Arrangement with cooperating management server node and network service node
US5121486A (en) * 1987-11-20 1992-06-09 Hitachi, Ltd Network control system for dynamically switching a logical connection between an identified terminal device and an indicated processing unit
JPH01147727A (ja) * 1987-12-04 1989-06-09 Hitachi Ltd オンラインプログラムの障害回復方法
JPH0769882B2 (ja) * 1988-05-11 1995-07-31 富士通株式会社 クロスコール機能を有する入出力制御システム及びそのシステムにおける動的構成変更方法
AU6894491A (en) * 1989-11-27 1991-06-26 Olin Corporation Method and apparatus for providing backup process control
US5212785A (en) * 1990-04-06 1993-05-18 Micro Technology, Inc. Apparatus and method for controlling data flow between a computer and memory devices
US5155729A (en) * 1990-05-02 1992-10-13 Rolm Systems Fault recovery in systems utilizing redundant processor arrangements
US5271013A (en) * 1990-05-09 1993-12-14 Unisys Corporation Fault tolerant computer system
JPH04126423A (ja) * 1990-09-17 1992-04-27 Omron Corp データ処理システム
US5157663A (en) * 1990-09-24 1992-10-20 Novell, Inc. Fault tolerant computer system
US5633999A (en) * 1990-11-07 1997-05-27 Nonstop Networks Limited Workstation-implemented data storage re-routing for server fault-tolerance on computer networks
US5423026A (en) * 1991-09-05 1995-06-06 International Business Machines Corporation Method and apparatus for performing control unit level recovery operations
WO1993009494A1 (en) * 1991-10-28 1993-05-13 Digital Equipment Corporation Fault-tolerant computer processing using a shadow virtual processor
US5423037A (en) * 1992-03-17 1995-06-06 Teleserve Transaction Technology As Continuously available database server having multiple groups of nodes, each group maintaining a database copy with fragments stored on multiple nodes
US5394526A (en) * 1993-02-01 1995-02-28 Lsc, Inc. Data server for transferring selected blocks of remote file to a distributed computer network involving only single data transfer operation
US5408649A (en) * 1993-04-30 1995-04-18 Quotron Systems, Inc. Distributed data access system including a plurality of database access processors with one-for-N redundancy
US5390326A (en) * 1993-04-30 1995-02-14 The Foxboro Company Local area network with fault detection and recovery
US5473771A (en) * 1993-09-01 1995-12-05 At&T Corp. Fault-tolerant processing system architecture
US5537585A (en) * 1994-02-25 1996-07-16 Avail Systems Corporation Data storage management for network interconnected processors
US5471634A (en) * 1994-03-29 1995-11-28 The United States Of America As Represented By The Secretary Of The Navy Network file server with automatic sensing means
US5566297A (en) * 1994-06-16 1996-10-15 International Business Machines Corporation Non-disruptive recovery from file server failure in a highly available file system for clustered computing environments
US5504882A (en) * 1994-06-20 1996-04-02 International Business Machines Corporation Fault tolerant data storage subsystem employing hierarchically arranged controllers
EP0709779B1 (de) * 1994-10-31 2001-05-30 International Business Machines Corporation Gemeinsam genutzte virtuelle Platten mit anwendungstransparenter Wiedergewinnung
US5513314A (en) * 1995-01-27 1996-04-30 Auspex Systems, Inc. Fault tolerant NFS server system and mirroring protocol
US5546452A (en) * 1995-03-02 1996-08-13 Geotel Communications Corp. Communications system using a central controller to control at least one network and agent system
US5592611A (en) * 1995-03-14 1997-01-07 Network Integrity, Inc. Stand-in computer server
US5608865A (en) * 1995-03-14 1997-03-04 Network Integrity, Inc. Stand-in Computer file server providing fast recovery from computer file server failures

Also Published As

Publication number Publication date
US5781716A (en) 1998-07-14
US5696895A (en) 1997-12-09
EP0760503B1 (de) 2001-08-22
DE69614623D1 (de) 2001-09-27
EP0760503A1 (de) 1997-03-05

Similar Documents

Publication Publication Date Title
DE69614623T2 (de) Fehlertolerantes multiples Netzwerkserver
DE10124482B4 (de) Fehlertolerante Systemressource mit niedriger Latenzzeit, mit übergeordneter Protokollierung von Systemressourcentransaktionen und serverübergreifend gespiegelter Protokollierung von übergeordneten Systemressourcentransaktionen
DE10014448B4 (de) Speicherverwaltungssystem
DE602004005344T2 (de) Verfahren, system und programm zur handhabung eines failover zu einem fernspeicherort
DE69710578T2 (de) Verfahren zum unabhängigen und gleichzeitigen zugriff auf eine gemeinsame datensammlung
DE69626947T2 (de) Reservekopie-Generierung in einem RAID-Untersystem
DE69615611T2 (de) Externes Speichersystem mit redundanten Speichersteuerungen
DE69021122T2 (de) Verfahren und Gerät zur ununterbrochenen Versorgung von Anwendungen in einem Rechnernetzwerk.
DE69807077T2 (de) Verfahren und vorrichtung zur wiederherstellung in einem verteilten datenbanksystem mit nicht global erreichbaren daten unter verwendung von gemeinsam genutzten virtuellen platten
DE102004027672A1 (de) Speicherplattenarraysystem
DE60214234T2 (de) Verfahren und apparate zum implementieren einer glasfaservermittlungseinheit mit hoher verfügbarkeit
DE102012210914B4 (de) Switch-Fabric-Management
DE69802833T2 (de) Diagnose redundanter steuerungen, die eine private lun verwenden
DE69636663T2 (de) System und Verfahren zur Zugriffsverteilung von Mehrfachspeichermatrixen zwischen Mehrfachwirtrechnersystemen
DE69811150T2 (de) Verfahren und Gerät für hochverfügbare Cachedatenspeicherungsanordnungen
DE602004008028T2 (de) Verfahren zum dynamischen Transferieren zwischen Servern für virtuelle Dateiserver
DE60224369T2 (de) Speichersteuerungssystem und Verfahren dazu
US7318138B1 (en) Preventing undesired trespass in storage arrays
DE60224274T2 (de) Wiederherstellungsrechner für eine mehrzahl von vernetzten rechnern
DE60106467T2 (de) Verfahren zum Installieren Überwachungsagenten, System und Computerprogramm von Objekten in einem IT-Netz Überwachung
DE3486148T2 (de) Fehlertolerantes Übertragungssteuersystem.
DE19525013C2 (de) Multiprozessorsystem
DE3853452T2 (de) Mehrfachverarbeitung mit hoher Verfügbarkeit.
DE69128271T2 (de) Verfahren und System zur Erhöhung der Betriebsverfügbarkeit eines Systems von Rechnerprogrammen, wirkend in einem verteilten Rechnerssystem
US6782416B2 (en) Distributed and geographically dispersed quorum resource disks

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee