DE10220886A1 - Datenspeichersysteme mit verbesserten Netzwerkschnittstellen - Google Patents

Datenspeichersysteme mit verbesserten Netzwerkschnittstellen

Info

Publication number
DE10220886A1
DE10220886A1 DE10220886A DE10220886A DE10220886A1 DE 10220886 A1 DE10220886 A1 DE 10220886A1 DE 10220886 A DE10220886 A DE 10220886A DE 10220886 A DE10220886 A DE 10220886A DE 10220886 A1 DE10220886 A1 DE 10220886A1
Authority
DE
Germany
Prior art keywords
data storage
interface
storage system
network
circuit device
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.)
Withdrawn
Application number
DE10220886A
Other languages
English (en)
Inventor
Jonathan J Barrow
Kendell A Chilton
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.)
EMC Corp
Original Assignee
EMC 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
Priority claimed from US09/852,580 external-priority patent/US7027439B1/en
Application filed by EMC Corp filed Critical EMC Corp
Publication of DE10220886A1 publication Critical patent/DE10220886A1/de
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0661Format or protocol conversion arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0604Improving or facilitating administration, e.g. storage management
    • G06F3/0605Improving or facilitating administration, e.g. storage management by facilitating the interaction with a user or administrator
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0658Controller construction arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/12Protocol engines

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Transfer Systems (AREA)
  • Multi Processors (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Small-Scale Networks (AREA)
  • Communication Control (AREA)

Abstract

Es wird ein Datenspeichersystem vorgeschlagen, das eine Hintergrundebene, Verarbeitungsschaltungseinrichtungen und eine Netzwerk-Schnittstelleneinrichtung aufweist. Die Verarbeitungsschaltungseinrichtung kann Datenzugriffsoperationen auf Blockbasis durchführen. Die Netzwerk-Schnittstelleneinrichtung hat eine erste Schnittstelle, welche die Kopplung zu einem externen Netzwerk vornimmt, eine zweite Schnittstelle, welche körperlich mit der Hintergrundebene verbunden ist, sowie eine Steuerungsschaltungseinrichtung, die zwischen die erste Schnittstelle und die zweite Schnittstelle geschaltet ist. Die Steuerungsschaltungseinrichtung kann DOLLAR A (i) Kommunikationen auf Dateibasis von dem externen Netzwerk über die erste Schnittstelle empfangen und Kommunikationen auf Blockbasis an die Verarbeitungsschaltungseinrichtung über die zweite Schnittstelle und die Hintergrundebene in Abhängigkeit von den Kommunikationen auf Dateibasis liefern, DOLLAR A (ii) Kommunikationen auf Blockbasis von der Verarbeitungsschaltungseinrichtung über die zweite Schnittstelle und die Hintergrundebene empfangen und Kommunikationen auf Dateibasis über die erste Schnittstelle in Abhängigkeit von den Kommunikationen auf Blockbasis an das externe Netzwerk liefern. Schließlich kann die Steuerungsschaltungseinrichtung Applikationsservermöglichkeiten bieten, um als ein Applikationsserver zu arbeiten, der Programme auf Verwenderniveau laufen läßt.

Description

HINTERGRUND DER ERFINDUNG
Typischerweise arbeitet ein Datenspeichersystem als große Speichereinrichtung für einen oder mehrere externe Servercomputer (oder einfach Server genannt) durch Beantwortung von Eingangs-/Ausgangsanforderungen (I/O-Anforderungen) auf Block­ basis, welche das Datenspeichersystem dazu veranlassen, Lade- und Speicherungsoperationen durchzuführen. Beispiele von Kommunikationen auf Blockba­ sis umfassen Block-Mux-Channel-Übertragungen, Small-Computer-Systems-Interface­ (SCSI)-Befehle, Fibre-Channel-Übertragungen, Enterprise-System-Connection­ (ESCON)-Signale, Fibre-Connectivity(FICON)-Kanalübertragungen und dergleichen.
Ein typischer Server bietet einem Rechner oder mehreren anderen Rechnern, wel­ che als Kunden bezeichnet werden, Dienstleistungen an (beispielsweise kundenorien­ tierter Zugang zu einem Datenspeichersystem). Im Gegensatz zu Kommunikationen auf Blockbasis, welche Server und Datenspeichersysteme typischerweise zur Kommunika­ tion miteinander verwenden, kommunizieren Kunden und Server typischerweise mitein­ ander unter Verwendung kundenorientierter und serverorientierter Übertragungen (nach­ folgend allgemein als kundenorientierte Übertragungen bezeichnet). Beispiele kun­ denorientierter Kommunikationen umfassen Transmission-Control-Protocol/Internet- Protocol(TCP/IP)-Kommunikationen, Gigabit-Ethernet-Signale, Asynchronous-Trans­ fer-Mode(ATM)-Kommunikationen und dergleichen.
Server und Kunden können miteinander über ein Netzwerk verbunden sein. Ver­ netzte Rechnersysteme oder Computersysteme enthalten im allgemeinen eine Mehrzahl geographisch voneinander getrennter oder verteilter Rechnerknotenpunkte, welche so konfiguriert sind, daß sie miteinander über Netzwerkverbindungen kommunizieren kön­ nen und verbunden sind. Eine herkömmliche Art von vernetzten Computersystemen enthält ein Netzwerk-Datenspeicher-Untersystem, das so ausgebildet ist, daß es in dem Netzwerk einen zentralen Punkt bildet, an welchem Daten gespeichert werden können und von welchem Daten entnommen werden können. Vorteilhafterweise können durch Verwendung eines solchen Speicher-Untersystems in dem Netzwerk viele Datenspei­ cherungshandhabungen und Steuerfunktionen des Netzwerkes in dem Untersystem zen­ tralisiert werden, anstatt unter dem Netzwerkknotenpunkten aufgeteilt zu werden.
In einer Konfiguration eines vernetzten Kunden-/Server-Systems kann ein Kunde Daten von einem Datenspeichersystem durch Aussenden einer kundenorientierten An­ forderung (beispielsweise eines TCP/IP-Signales) an einen Server (d. h., einen Host- Computer) entnehmen. Der Server erzeugt dann eine Anfrage auf Blockbasis (bei­ spielsweise ein SCSI-Signal) für einen Block oder mehrere Blöcke von Daten an das Datenspeichersystem. Als nächstes liefert das Datenspeichersystem die angeforderten Datenblöcke (beispielsweise ein SCSI-Signal) an den Server in Reaktion auf die An­ frage auf Blockbasis. Der Server liefert jene Daten an den Kunden in Gestalt einer Ant­ wort auf Dateibasis (beispielsweise ein TCP/IP-Signal). Weitere Einzelheiten dieser Konfiguration seien unter Bezugnahme auf Fig. 1 angegeben.
Server sind typischerweise so konfiguriert, daß sie bestimmte Dienste (nachfol­ gend als "Serververhalten") bieten, welche den Datenaustausch bzw. die Kommunika­ tion zwischen dem Datenspeichersystem und den Kunden erleichtern. Beispielsweise übersetzt bei einer Art des Serververhaltens ein Server die von einem Kunden empfan­ genen, dateiorientierten I/O-Anforderungen in entsprechende, blockorientierte I/O-An­ forderungen und gibt die blockorientierten I/O-Anforderungen an das Datenspeichersystem. Der Server übersetzt auch die blockorientierten Antworten, die von dem Datenspeichersystem in Beantwortung der genannten, blockorientierten I/O- Anforderungen empfangen werden, in entsprechende, dateiorientierte Antworten um und gibt diese dateiorientierten Antworten an den Kunden. Bei dieser Art der Dienstleistung arbeitet also der Server als eine Kunden-I/O-Anforderungs-Übersetzungsstation in dem Datenspeichernetzwerk.
Bei anderen Arten eines Serververhaltens liefert der Server Programm-Prozess­ mittel auf Anwendungsniveau. Beispielsweise arbeitet der Server als Datenbasisma­ schine, welche auf Datenbasen Zugriff nimmt, welche in dem Datenspeichersystem ge­ speichert sind. In Reaktion auf dateiorientierte Datenbasisbefehle (beispielsweise Da­ tenbasis-Anfragen) liefert der Server an das Datenspeichersystem blockorientierte Be­ fehle, und nach Durchführung der blockorientierten Befehle versorgt das System den Server mit den Ergebnissen der Ausführung der blockorientierten Befehle durch das System. Der Server gibt dann diese Ergebnisse an den Kunden unter Verwendung eines dateiorientierten Kommunikationsprotokolls aus.
Fig. 1 zeigt eine herkömmliche Konfiguration 20 mit einem Datenspeichersystem 22, Servern 24-1, 24-2 (kollektiv als Server 24 bezeichnet), einem externen Netzwerk 26 (beispielsweise das Internet), einem Übertragungsmedium 28, das die Server 24 mit dem externen Netzwerk 26 verbindet, sowie einem Übertragungsme­ dium 30, das die Server 24 mit dem Datenspeichersystem 22 verbindet.
Die Server 24 bieten Einrichtungen des externen Netzwerkes 26 (beispielsweise Kunden) Datenspeicherdienste an, in dem sie als das vordere Ende des Datenspeichersystems 22 arbeiten. Beispielsweise können die Server 24 Blöcke oder Pakete von Daten innerhalb des Datenspeichersystems 22 in Abhängigkeit von Befehlen auf Dateibasis laden und speichern (d. h., sie bieten auf Dateibasis Zugriff auf Daten­ blöcke innerhalb des Datenspeichersystems 22). Weiter können die Server 24 als Daten­ basismaschinen arbeiten, welche Zugriff zu jeweiligen Datenbasen innerhalb des Daten­ speichersystems 22 nehmen. Somit kann ein Kunde eine Nachricht auf Dateibasis (bei­ spielsweise eine Datenbasisanfrage in Gestalt eines TCP/IP-Signales) über das Übertra­ gungsmedium 28 zu einem der Server 24 senden, um Zugriff auf eine Datenbasis des Datenspeichersystems 22 zu nehmen. In Beantwortung der Übertragung auf Dateibasis kann der betreffende Server 24 einen oder mehrere Befehle auf Blockbasis (beispiels­ Weise Fibre-Channel-Signale) über das Übertragungsmedium 30 an das Datenspeicher­ system 22 senden, um die betreffende Datenbasis aufzusuchen und zu befragen, und dann die Ergebnisse der Anfrage an den Kunden zurückliefern.
Wie in Fig. 1 gezeigt, enthält das Datenspeichersystem 22 eine Gruppe von Netz­ werk-Schnittstellenkarten 32-1, 32-2 (NIC 32), eine frontseitige Schaltungsanord­ nung 34, einen Cache-Speicher 36, eine rückseitige Schaltungsanordnung 32 und eine Gruppe von Plattenlaufwerken 40 mit Blöcken 42 zur Datenspeicherung. Das Daten­ speichersystem 22 enthält weiter eine Gruppe von Verbindungen 44, welche die Netz­ werk-Schnittstellenkarten 32 mit der frontseitigen Schaltungseinrichtung 34 verbindet. Zusätzlich enthält das Datenspeichersystem 22 einen Bus 46, der die frontseitige Schaltungseinrichtung 34, den Cache-Speicher 36 und die rückseitige Schaltungsein­ richtung 36 miteinander verbindet. Fernerhin enthält das Datenspeichersystem 22 eine Gruppe von Verbindungen 48, welche die rückseitige Schaltungseinrichtung 38 und die Gruppe von Plattenlaufwerken miteinander verbindet.
Allgemein arbeitet der Cache-Speicher 36 als ein Puffer für Daten, die zwischen den Servern 24 und der Gruppe von Plattenlaufwerken 40 ausgetauscht werden. Außer­ dem arbeitet die frontseitige Schaltungseinrichtung 34 als eine Schnittstelle zwischen den Servern 24 und dem Cache-Speicher 36. In entsprechender Weise arbeitet die rück­ seitige Schaltungseinrichtung 38 als eine Schnittstelle zwischen dem Cache-Speicher 36 und der Gruppe von Plattenlaufwerken 40.
Wenn eine Netzwerk-Trennstellenkarte NIC 32 ein Signal auf Blockbasis von ei­ nem Server 24 empfängt, dann übergibt diese NIC-Karte 32 das Signal auf Blockbasis an die frontseitige Schalteinrichtung 34. Diese Übergabe bedingt typischerweise eine Änderung des Formates des Signales, beispielsweise wird ein faseroptisches, serielles Signal von dem Server 34 empfangen und in elektrische Parallelbussignale für die Ver­ wendung durch die frontseitige Schalteinrichtung 34 umgewandelt oder umgekehrt. Wenn beispielsweise ein Server 24 Daten in das Speichersystem 22 einschreibt, dann empfängt eine NIC-Karte 32 die betreffenden Daten und wandelt sie in ein Format um, das für die Verwendung durch die frontseitige Schaltungseinrichtung 34 geeignet ist, und liefert dann jene Daten an die frontseitige Schaltungseinrichtung 34 (beispielsweise geschieht eine Umwandlung von einem faseroptischen, seriellen Signal in ein elektrisches Signal für einen Parallelbus). Die frontseitige Schaltungseinrichtung 34 puffert dann die Daten in dem Cache-Speicher 36 und benachrichtigt die rückseitige Schaltungseinrich­ tung 38 über die Ankunft der Daten. Die rückseitige Schaltungseinrichtung 38 kopiert dann die Daten aus dem Cache-Speicher 36 auf die Gruppe von Plattenlaufwerken 40.
Zum Herauslesen von Daten aus dem Datenspeichersystem 22 sendet der Ser­ ver 24 einen Lesebefehl auf Blockbasis an das Datenspeichersystem 22. Eine NIC- Karte 32 wandelt den Lesebefehl in ein Format um, das für die Verwendung durch die frontseitige Schaltungseinrichtung 34 geeignet ist, und liefert dann den Befehl an die frontseitige Schaltungseinrichtung 34 (beispielsweise geschieht eine Umwandlung von einem faseroptischen, seriellen Signal in ein elektrisches Signal für einen Parallelbus). Als nächstes benachrichtigt die frontseitige Schaltungseinrichtung 34 die rückseitige Schaltungseinrichtung 38 von dem Befehl. In Abhängigkeit hiervon überträgt die rück­ seitige Schaltungseinrichtung 38 eine Kopie der Daten von der Gruppe von Plattenlauf­ werken 40 auf den Cache-Speicher 36. Die frontseitige Schaltungseinrichtung 34 über­ trägt dann die Daten von dem Cache-Speicher 36 über die NIC-Karte 32 auf den Ser­ ver 34, welche die Daten in einem Format (beispielsweise als faseroptisches Signal) liefert, das für die Verwendung durch den Server 24 geeignet ist.
ZUSAMMENFASSUNG DER ERFINDUNG
Unglücklicherweise hat die oben beschriebene, herkömmliche Konfiguration 20 nach Fig. 1 Mängel. Beispielsweise können die Server 24 der Konfiguration 20 teuer sein. Um das Datenspeichersystem 22 in einer Umgebung mit Kommunikation auf Da­ teibasis (beispielsweise in einer TCP/IP-Umgebung) verwenden zu können, erfordert nichtsdestoweniger die Konfiguration 20 einen oder mehrere Server 24, welche als ein Vorderende für das Datenspeichersystem 22 arbeiten. Als solche übersetzen die Ser­ ver 24 Datenzugriffsbefehle auf Dateibasis, beispielsweise Netzwerkdateisystembefehle (NFS), welche einen Datenzugriff durch den Dateinamen nehmen, in Kommunikationen auf Blockbasis (beispielsweise SCSI-Befehle), welche einen Datenzugriff auf Blockni­ veau nehmen (beispielsweise Blattspur und Sektorennummer).
Zusätzlich bildet das Vorhandensein der Server 24 eine weitere Stufe oder Auf­ enthaltsstrecke für Daten, die durchgeleitet werden (d. h., zwischen dem Netzwerk 26 und der Gruppe von Plattenlaufwerken 40), wodurch eine gewisse Latenz oder ein Hän­ genbleiben der bewegten Daten zwischen dem Netzwerk 26 und der Gruppe von Plat­ tenlaufwerken 40 gegeben ist. Weitere Stufen bilden die NIC-Karten 32, die frontseitige Schaltungseinrichtung 34, der Cache-Speicher 36 und die rückwärtige Schaltungsein­ richtung 38.
Wenn weiterhin eine Vielzahl von Servern 24 vorhanden ist, welche als das front­ seitige Ende des Datenspeichersystems 22 arbeiten, dann ist der Betrieb der vielen Ser­ ver 24 typischerweise nicht gut koordiniert. Das bedeutet, die Server 24 arbeiten typi­ scherweise unabhängig voneinander (beispielsweise gewähren sie Zugriff zu den jewei­ ligen Datenbasen in dem Datenspeichersystem 22). Es besteht beispielsweise die Mög­ lichkeit, daß ein Server 24 überlastet wird, während ein anderer Server 24 ungenügend ausgenutzt ist.
Im Gegensatz zu der oben beschriebenen, herkömmlichen Konfiguration 20, wel­ che Server 24 als frontseitiges Ende für ein herkömmliches Datenspeichersystem 20 verwendet, ist die vorliegende Erfindung auf eine Technik von Datenspeichersystemen gerichtet, welche eine Netzwerk-Schnittstellenkarte (NIC) verwendet, die in der Lage ist, (i) als eine Schnittstelle zwischen Kommunikationen auf Dateibasis und Kommuni­ kationen auf Blockbasis zu arbeiten und (ii) als ein Applikationsserver zu arbeiten, der Programme auf Verwenderniveau laufen läßt. Da die NIC-Karte als eine Schnittstelle zwischen Kommunikationen auf Dateibasis und Kommunikationen auf Blockbasis ar­ beiten kann, besteht keine Notwendigkeit, daß ein externer Server (siehe beispielsweise die herkömmlichen Server 24, welche in der konventionellen Konfiguration 20 nach Fig. 1 erforderlich sind) Kommunikationen auf Dateibasis in Kommunikationen auf Blockbasis und umgekehrt übersetzt. Da außerdem die NIC-Karte in der Lage ist, als ein Applikationsserver zu arbeiten, der Programme auf Verwenderniveau laufen läßt, kann das Datenspeichersystem Serveroperationen ausführen (beispielsweise als eine Datenba­ sismaschine arbeiten, die Datenbasisanforderungen bearbeitet). Für ein Datenspeicher­ system, das eine solche NIC-Karte verwendet, besteht daher nicht die Notwendigkeit, daß ein externer Server oder mehrere externe Server (beispielsweise die herkömmlichen Server 24 nach Fig. 1) als das frontseitige Ende des Datenspeichersystems arbeitet bzw. arbeiten.
Eine Anordnung nach der vorliegenden Erfindung betrifft ein Datenspeichersystem, das eine Hintergrundebene, eine Verarbeitungsschaltungsein­ richtung und eine NIC-Karte enthält. Die Verarbeitungsschaltungseinrichtung ist kör­ perlich mit der Hintergrundebene verbunden und ist so konfiguriert, daß sie Datenzu­ griffsoperationen auf Blockbasis ausführen kann. Die NIC-Karte hat einen ersten An­ schluß, der die Kopplung mit einem externen Netzwerk ermöglicht, sowie einen zweiten Anschluß, der körperlich mit der Hintergrundebene verbunden ist, und es ist eine Steuerungsschaltungseinrichtung zwischen den ersten und den zweiten Anschluß gelegt. Die Steuerungsschaltungseinrichtung ist so konfiguriert, daß sie:
  • a) Kommunikationen auf Dateibasis von dem externen Netzwerk über den ersten Anschluß empfängt und Kommunikationen auf Blockbasis an die Verarbeitungsschaltungseinrichtung über den zweiten Anschluß und die Hintergrundebene in Abhängigkeit von den Kommunikationen auf Dateibasis liefert;
  • b) Kommunikationen auf Blockbasis von der Verarbeitungsschal­ tungseinrichtung über den zweiten Anschluß und die Hintergrun­ debene empfängt und Kommunikationen auf Dateibasis an das externe Netzwerk über den ersten Anschluß in Abhängigkeit von den Kommunikationen auf Blockbasis liefert, und
  • c) Applikationsservermöglichkeiten bietet, um als ein externer Ser­ ver zu arbeiten, der Programme auf Anwenderniveau laufen läßt.
Da die Steuerungsschaltungseinrichtung der NIC-Karte so konfiguriert ist, daß sie als ein Applikationsserver arbeitet, ist es nicht notwendig, daß ein externer, frontseitiger Server wie derjenige, der in herkömmlichen Konfigurationen vorgesehen ist (siehe bei­ spielsweise die herkömmlichen Server 24 des konventionellen Datenspeichersystems 20 von Fig. 1) vorgesehen ist.
In einer Ausführung enthält die Steuerungsschaltungseinrichtung einen Abschnitt einer Schaltungsträgerplatte und einen Prozessor, der körperlich auf dem Abschnitt der Schaltungsträgerplatte montiert ist. Der Prozessor ist so konfiguriert, daß er die Über­ tragung von Daten zwischen dem ersten und dem zweiten Anschluß (beispielsweise Ausrichtung und Steuerung der Daten usw.) vermittelt. Der zweite Anschluß enthält einen Hintergrundebenenverbinder, der körperlich auf dem Abschnitt der Schaltungsträ­ gerplatte montiert ist, wobei der Hintergrundebenenverbinder an der Hintergrundebene des Datenspeichersystems einsteckbar ist. Demgemäß kann die Steuerungsschaltungs­ einrichtung unmittelbar mit der Hintergrundebene verbunden werden und kann in dem selben Rechnergehäuse untergebracht werden, wie die Verarbeitungsschaltungseinrich­ tung des Datenspeichersystems. Demgemäß kann die Steuerungsschaltungseinrichtung sich derselben Systemhilfseinrichtungen bedienen, die durch die Verarbeitungsschal­ tungseinrichtung des Datenspeichersystems verwendet werden (beispielsweise dieselbe Leistungsquelle, dieselbe Lüfteranordnung usw.).
In einer Anordnung enthält die Steuerungsschaltungseinrichtung weiter einen Speicher, der körperlich auf dem genannten Abschnitt der Schaltungsträgerplatte mon­ tiert ist. Der Speicher ist so konfiguriert, daß er Daten puffert, die sich zwischen dem ersten und dem zweiten Anschluß bewegen, wenn der erste Anschluß mit dem externen Netzwerk gekoppelt ist und der Hintergrundebenenverbinder mit der Hintergrundebene des Datenspeichersystems gekoppelt ist. Die Steuerungsschaltungseinrichtung kann daher die Daten durch Verwendung des Speichers manipulieren oder formatieren (bei­ spielsweise von serieller Form in parallele Form umwandeln, die Daten in größere Da­ tenreihen oder Datenblocks ordnen usw.).
In einer Ausführungsform enthält der zweite Anschluß (i) eine Gruppe von Da­ tenleitungsweg-Leitern, welche zwischen der Steuerungsschaltungseinrichtung und der Verarbeitungsschaltungseinrichtung einen Abschnitt eines Datenweges bildet, um Daten für die Speicherung innerhalb des Datenspeichersystems zu führen, und (ii) eine Gruppe von Nachrichten-Leitungswegleitern, welche zwischen der Steuerungsschaltungsein­ richtung und der Verarbeitungsschaltungseinrichtung einen Abschnitt eines Nachrich­ tenleitungsweges bildet, um Nachrichten zur Steuerung der Datenspeicherung zu bilden. Bei dieser Anordnung sind gesonderte Leitungswege für Daten und Nachrichten vorge­ sehen, so daß ein rascherer und besser organisierter Durchsatz erreicht wird.
Bei einer bestimmten Ausführungsform bildet die Gruppe von Daten-Leitungs­ wegleitern zwischen der Steuerungsschaltungseinrichtung und der Verarbeitungsschal­ tungseinrichtung einen Abschnitt eines Faserkanalbusses. Diese Anordnung setzt die Steuerungsschaltungseinrichtung in die Lage, mit der Verarbeitungsschaltungseinrich­ tung über einen Faserkanalleitungsweg zu kommunizieren. Wenn die Verarbeitungs­ schaltungseinrichtung bereits so ausgebildet ist, daß sie Faserkanalübertragungen hand­ haben kann (beispielsweise kann die Verarbeitungsschaltungseinrichtung herkömmliche Leitsteuereinrichtungen enthalten, welche so ausgebildet sind, daß sie über Faserkanal­ signale mit einem externen Server über eine herkömmliche NIC-Karte kommunizieren), dann brauchen keine Modifikationen an der Verarbeitungsschaltungseinrichtung vorge­ nommen werden, damit die Verarbeitungsschaltungseinrichtung mit der NIC-Karte kommuniziert, welche weiter in der Lage ist, als ein Applikationsserver zu arbeiten.
In einer Ausführungsform ist die Steuerungsschaltungseinrichtung so konfiguriert, daß sie (i) Internetprotokoll-Übertragungen mit dem externen Netzwerk über den ersten Anschluß und (ii) Übertragungen auf Blockbasis mit der Verarbeitungsschaltungsein­ richtung des Datenspeichersystems über den zweiten Anschluß und die Hintergrundebene des Datenspeichersystems austauscht. Bei dieser Anordnung enthält die Steuerungsschaltungseinrichtung vorzugsweise eine Aufzeichnung, in welcher Da­ teinamen mit Blöcken einer Gruppe von Datenspeichereinrichtungen des Datenspeicher­ systems aufgezeichnet sind. Zusätzlich ist die Steuerungsschaltungseinrichtung vor­ zugsweise weiter so konfiguriert, daß sie eine Internetprotokoll-Datenzugriffsanfrage auf Dateibasis von dem externen Netzwerk empfängt und Zugriff auf einen Datenblock innerhalb des Datenspeichersystems auf der Basis der dateiorientierten Internetproto­ koll-Datenzugriffsanfrage und der Aufzeichnung nimmt. Demgemäß kann das Daten­ speichersystem unmittelbar mit einem IP-Netzwerk (beispielsweise dem Internet) Ver­ bindung aufnehmen.
In einer bestimmten Anordnung ist die Steuerungsschaltungseinrichtung so konfi­ guriert, daß sie als ein Prozessor eines Multiprozessorsystems arbeitet, welches gleich­ zeitig vielfache Operationen auf Anwenderniveau durchführt. Vorzugsweise enthält die Steuerungsschaltungseinrichtung eine Hardwareschaltung, die jeder Operation auf An­ wenderniveau eine Zahl zuordnet, welche die betreffende Operation auf Anwenderni­ veau unter den vielen Operationen auf Anwenderniveau, die gleichzeitig von dem Mul­ tiprozessorsystem durchgeführt werden, unterscheidet. Demgemäß kann das Datenspei­ chersystem viele Prozessoren (beispielsweise viele NIC-Karten) enthalten, welche so konfiguriert sind, daß sie in einem Multiprozessormodus arbeiten und Operationen auf Anwenderniveau durchführen (beispielsweise als eine Multiprozessor-Datenbasisma­ schine oder eine Multiprozessor-Website usw. arbeiten).
In einer Ausführungsform der vorliegenden Erfindung ist ein Netzwerkadapter vorgesehen, der in einem Datenspeichersystem verwendet wird und den Datenaustausch zwischen einer externen Datenaustauscheinrichtung oder mehreren externen Datenaus­ tauscheinrichtungen und einer Eingangs-/Ausgangs-Steuereinrichtung erleichtert, die sich in dem System befindet. Das Datenspeichersystem ist typischerweise aus einer Gruppe von Massenspeichereinrichtungen (beispielsweise Platten-Massenspeicherein­ richtungen) aufgebaut, welche Daten mit den Datenaustauscheinrichtungen über den Netzwerkadapter austauschen. Der Netzwerkadapter enthält typischerweise eine Schnittstelle oder mehrere Schnittstellen, die körperlich mit einem Signalübertragungs­ medium oder Signalübertragungssystem innerhalb des Gesamtsystems gekoppelt ist bzw. sind (beispielsweise einer elektrischen Hintergrundebene). Die Hintergrundebene ist mit der Steuereinrichtung gekoppelt und so konfiguriert, daß sie einen Datenaus­ tausch zwischen der Steuereinrichtung und dem Netzwerkadapter zuläßt, wenn die Schnittstellen mit der Hintergrundebene gekoppelt sind. Der Netzwerkadapter ist in der Lage, ein Serververhalten oder mehrere Serververhalten an die Datenaustauscheinrich­ tungen zu geben.
In einer Ausführungsform des Netzwerkadapters ist dieser eine elektrische Schal­ tungskarte, die so konfiguriert ist, daß sie innerhalb des Datenspeichersystems in einen Schaltungskartenaufnahmeschlitz der Hintergrundebene eingesetzt und von diesem auf­ genommen werden kann. Wenn die Schaltungskarte in den Aufnahmeschlitz eingesetzt und von diesem aufgenommen ist, ist die Karte elektrisch und mechanisch mit der Hin­ tergrundebene in dem Datenspeichersystem gekoppelt, so daß eine Schnittstelle oder mehrere Schnittstellen der Schaltungskarte elektrisch mit der Hintergrundebene gekop­ pelt ist bzw. sind.
Weiter ist dem Netzwerkadapter eine erste Netzwerkschichtadresse, basierend mindestens teilweise auf einer Schlitzidentifizierungsnummer, zugeordnet, die die Lage des Schaltungskartenschlitzes in der Hintergrundebene identifiziert, in welchen die Adapterkarte eingesetzt ist und verbleibt. Die erste Netzwerkschichtadresse kann während einer Konfiguration des Datenspeichersystems in eine zweite Netzwerk­ schichtadresse geändert werden.
Gemäß einer anderen Ausführungsform des Netzwerkadapters kann die eine Schnittstelle oder können die mehreren Schnittstellen des Netzwerkadapters mindestens eine Schnittstelle umfassen, über welche ein Befehl an den Netzwerkadapter ausgegeben wird, um diesen dazu zu veranlassen, seinen Betriebszustand von einem ersten Modus (Arbeitsmodus) in einen zweiten Modus (Diagnosemodus) umzustellen. Beispielsweise umfassen die eine Schnittstelle oder die mehreren Schnittstellen des Netzwerkadapters typischerweise eine erste Schnittstelle und eine zweite Schnittstelle. Die erste Schnitt­ stelle gestattet es einem Prozessor, der sich außerhalb der Adapterkarte befindet, der Steuereinrichtung und dem Datenaustauschgerät einen Managementbefehl oder einen diagnostischen, prüfbezogenen Befehl über die Hintergrundebene an die Adapterkarte auszugeben. Nach Wunsch ist der externe Prozessor auch außerhalb des Datenspeicher- Systems selbst gelegen und beispielsweise mit dem Adapter über ein Netzwerk gekop­ pelt und hat Zugriff zu der Adapterkarte über das Netzwerk, wobei die zweite Netz­ werkschichtadresse verwendet wird. Die zweite Schnittstelle gestattet es der Steuerein­ richtung, einen Managementbefehl oder diagnostischen Befehl an die Adapterkarte über die Hintergrundebene zu geben. Die eine Schnittstelle oder die mehreren Schnittstellen des Netzwerkadapters enthalten ferner eine dritte Schnittstelle, welche es ermöglicht, daß konfigurationsbezogene Informationen (beispielsweise Informationen, die sich auf die Konfiguration des Netzwerkadapters beziehen) über die Hintergrundebene von ei­ nem nichtflüchtigen Speicher (beispielsweise einen oder mehrere, elektrisch löschbare, programmierbare Festwertspeicher (EEPROM)) bezogen werden, der sich in der Adap­ terkarte befindet.
Die Merkmale der Erfindung, wie sie oben beschrieben wurden, können in Daten­ speichersystemen, Datenspeichergeräten und in Speicherverfahren sowie in anderen rechnerbezogenen Baueinheiten eingesetzt werden, beispielsweise in solchen, wie sie von Firma EMC Corporation, Hopkinton, Massachussetts, hergestellt werden.
KURZE BESCHREIBUNG DER ZEICHNUNGEN
Die oben angegebenen und weiteren Ziele, Merkmale und Vorteile der Erfindung ergeben sich noch deutlicher aus der folgenden, mehr ins einzelne gehenden Beschrei­ bung bevorzugter Ausführungsformen der Erfindung, wie sie in den begleitenden Zeichnungen dargestellt sind, wobei gleiche Bezugszahlen sich in den jeweiligen unter­ schiedlichen Ansichten auf gleiche Teile beziehen. Die Zeichnungen sind nicht notwen­ digerweise maßstabsgerecht. Vielmehr ist Wert auf die Darstellung der Grundzüge der Erfindung gelegt.
Fig. 1 ist ein Blockschaltbild eines herkömmlichen Datenspeichersystems, welches Netzwerk-Schnittstellenkarten enthält, die Übertragungen auf Blockbasis zu externen Servern ermöglichen.
Fig. 2 ist ein Blockschaltbild eines Datenspeichersystems, welches ge­ mäß einer Ausführungsform der Erfindung Netzwerk-Schnittstel­ lenkarten enthält, welche in der Lage sind, (i) Kommunikationen auf Dateibasis zu einem externen Netzwerk zu bieten und (ii) als Applikationsserver zu arbeiten.
Fig. 3 ist eine perspektivische Ansicht einer Netzwerk-Schnittstellen­ karte des Datenspeichersystems in Fig. 2.
Fig. 4 ist ein Blockschaltbild bestimmter Teile des Datenspeichersystems von Fig. 2.
Fig. 5 ist ein Blockschaltbild bestimmter Teile der Netzwerk-Schnitt­ stellenkarte von Fig. 3.
Fig. 6 ist ein Flußdiagramm einer Prozedur, welche von einem Benutzer des Datenspeichersystems von Fig. 2 durchgeführt wird.
Fig. 7 ist ein Blockschaltbild von einer Mehrzahl von Netzwerk-Schnitt­ stellenkarten des Datenspeichersystems von Fig. 2, welche so an­ geordnet sind, daß sie ein Multiprozessorsystem bilden.
Fig. 8 ist eine alternative Ausführungsform des Datenspeichersystems, das Netzwerkadapter enthält.
Fig. 9 ist ein Blockschaltbild der Hintergrundebenenanordnung, welche die Netzwerkadapter von Fig. 8 mit Netzwerk-Eingangs- /Ausgangssteuereinrichtungen verbindet.
Fig. 10 ist ein Blockschaltbild der Steuerungsschaltungseinrichtung in den Netzwerkadaptern von Fig. 8.
DETAILLIERTE BESCHREIBUNG
Die Erfindung ist auf Datenspeichersystemtechniken gerichtet, welche eine Netz­ werk-Schnittstellenkarte (NIC) verwenden, die in der Lage ist, als (i) eine Schnittstelle zwischen einem dateibezogenen und einem blockbezogenen Informationsaustausch zu dienen und (ii) als Applikationsserver zu arbeiten, der Programme auf Anwenderniveau laufen läßt. Es besteht keine Notwendigkeit, daß ein externer Server dateibezogene Kommunikation in blockbezogene Kommunikationen und umgekehrt übersetzt, da die NIC-Karte in der Lage ist, als eine Schnittstelle zwischen Kommunikationen auf Datei­ basis und Kommunikationen auf Blockbasis zu arbeiten. Zusätzlich kann das Datenspei­ chersystem Operationen auf Anwenderniveau durchführen (beispielsweise als Datenba­ sismaschine arbeiten, die Datenbasisanfragen bearbeitet), da die NIC-Karte in der Lage ist, als ein Applikationsserver zu arbeiten, der Programme auf Anwenderniveau laufen läßt. Folglich besteht für ein Datenspeichersystem, welches eine solche NIC-Karte ver­ wendet, keine Notwendigkeit, daß ein externer Server oder mehrere externe Server als frontseitiges Ende des Datenspeichersystems arbeiten (beispielsweise, wie dies bei ei­ nem herkömmlichen Datenspeichersystem mit der Konfiguration 20 nach Fig. 1 not­ wendig ist).
Fig. 2 zeigt ein Datenspeichersystem 50, das für die Verwendung in der erfin­ dungsgemäßen Weise geeignet ist. Das Datenspeichersystem 50 ist in der Lage, unmit­ telbar über ein Verbindungsmedium 52 Verbindung mit einem externen Netzwerk 26 (siehe beispielsweise auch Fig. 1) aufzunehmen. Das Datenspeichersystem 50 enthält eine Gruppe von NIC-Karten 54-1, . . ., 54-N (zusammenfassend NIC-Karten 54 ge­ nannt), eine frontseitige Schaltungsanordnung 56, einen Cache-Speicher 58, eine rück­ seitige Schaltungsanordnung 60 und eine Gruppe von Speichergeräten 62, welche in der Lage ist, Daten in Blöcken 64 zu speichern. Das Datenspeichersystem 50 enthält weiter eine Gruppe von Verbindungen 66, welche die NIC-Karten 54 mit der frontseitigen Schaltungsanordnung oder Schaltungseinrichtung 56 verbinden sowie eine weitere Gruppe von Verbindungen 68, welche die rückseitige Schaltungseinrichtung 60 mit der Gruppe von Speichergeräten 62 verbinden. Zusätzlich enthält das Datenspeichersystem 50 einen Bus 70, der die frontseitige Schaltungseinrichtung 56, den Cache-Speicher 58 und die rückseitige Schaltungseinrichtung 60 miteinander verbindet.
Jede NIC-Karte 54 enthält unter anderem eine Steuerungsschaltungseinrichtung 72, die als eine Schnittstelle zwischen Kommunikationen auf Dateibasis und Kommuni­ kationen auf Blockbasis arbeiten kann und auch die Möglichkeit eines Applikationsser­ vers zum Laufenlassen von Programmen auf Anwenderniveau bietet. In einer Ausfüh­ rungsform ist die Steuerungsschaltungseinrichtung 72 jeder NIC-Karte 54 so konfigu­ riert, daß sie als ein Prozessor eines Multiprozessorsystems 74 arbeiten kann, welches gleichzeitig eine Mehrzahl von Operationen auf Anwenderniveau durchführen kann.
Im Gegensatz zu herkömmlichen Datenspeichersystemen (beispielsweise dem Datenspeichersystem 20 nach Fig. 1) benötigt das Datenspeichersystem 50 nach Fig. 2 keinen externen Server, der als frontseitiges Ende für das Datenspeichersystem 50 ar­ beitet, da die Steuerungsschaltungseinrichtung 72 jeder NIC-Karte 54 als eine Schnitt­ stelle zwischen den Kommunikationen auf Dateibasis und den Kommunikationen auf Blockbasis arbeiten kann (beispielsweise NFS-Server). Folglich können die Kosten zur Bereitstellung eines externen Servers oder mehrerer, externer Server für das Datenspei­ chersystem 50 vermieden werden.
Zusätzlich wird durch das Fehlen eines externen Servers, der als das frontseitige Ende für das Datenspeichersystem 50 wirkt, vermieden, daß eine zusätzliche Ver­ weilstufe zwischen das Netzwerk 26 und das Datenspeichersystem 50 eingebaut wird, über welche die Daten laufen müssen. Mit weniger Verweilstufen ergibt sich eine gerin­ gere Latenz bei der Datenbewegung zwischen dem Netzwerk 26 und der Gruppe von Speichergeräten 62.
Außerdem sorgt die Gruppe von NIC-Karten 54 für eine erhöhte Zuverlässigkeit. Beispielsweise können die NIC-Karten 54 so konfiguriert werden, daß dann, wenn eine NIC-Karte 54 ausfällt, eine andere NIC-Karte 54 einspringt, um Operationen zu hand­ haben, die andernfalls durch die schadhaft gewordene NIC-Karte 54 ausgeführt worden wären. Gemäß einem anderen Beispiel kann das Datenspeichersystem 50 fehlertolerante Hardware enthalten, beispielsweise redundante Leistungsquellen, und die NIC-Karten 54 können sich solche Hardware zunutze machen (beispielsweise können sie durch die redundanten Leistungsquellen gespeist werden und können gegen das Schadhaftwerden einer Leistungsquelle geschützt werden usw.).
Fernerhin kann der Betrieb der Steuerungsschaltungseinrichtung 72 jeder NIC- Karte 54 koordiniert werden. So kann beispielsweise die Steuerungsschaltungseinrich­ tung 72 der NIC-Karten 54 das Multiprozessorsystem 74 ausbilden. Demgemäß vermag das Datenspeichersystem 50 die Eigenschaften eines Multiprozessor-Servers zu bieten, beispielsweise Belastungsausgleich und Fehlertoleranz. Weitere Einzelheiten der Erfin­ dung seien nun unter Bezugnahme auf Fig. 3 behandelt.
Fig. 3 zeigt eine perspektivische Ansicht einer der NIC-Karten 54 von Fig. 2. Wie dargestellt, enthält die NIC-Karte 54 eine Steuerungsschaltungseinrichtung 72, welche einen Abschnitt der Schaltungsträgerplatte 80 (beispielsweise Schichten aus leitfähigem und nichtleitfähigem Material) einnimmt, sowie eine Gruppe von Schaltungsplatten­ komponenten 82 (beispielsweise integrierte Schaltungen, Widerstände, Kondensatoren usw.), welche auf dem Abschnitt der Schaltungsträgerplatte 80 montiert sind (bei­ spielsweise unter Verwendung von Lötung, gepreßten Anschlußstiften und dergleichen). Die NIC-Karte 54 enthält weiter einen Anschluß 84 zur Verbindung mit dem externen Netzwerk 26 sowie einen Anschluß 86 zur Herstellung der Verbindung mit der front­ seitigen Schaltungseinrichtung 56 (siehe auch Fig. 2). Der Anschluß 84 enthält eine Verbinderschnittstelle 88 (beispielsweise ein Verbinder für Gigabit-Ethernet-Kommuni­ kationen), welche mit dem Verbindungsmedium 52 von Fig. 2 gekoppelt ist. In entspre­ chender Weise enthält der Anschluß 86 eine Verbinderschnittstelle 90 (beispielsweise einen Hintergrundebenenverbinder), welcher mit der Gruppe von Verbindungen 66 von Fig. 2 gekoppelt ist. Weitere Einzelheiten der Erfindung seien nun unter Bezugnahme auf Fig. 4 angegeben.
Fig. 4 ist ein Blockschaltbild eines mit 100 bezeichneten Schaltungsteils be­ stimmter Teile des Datenspeichersystems 50 nach Fig. 2. Wie gezeigt, enthält das Daten­ speichersystem 50 ein Rechnergehäuse 102, eine Hintergrundebene 104, eine Verarbei­ tungsschaltungseinrichtung 106, eine Leistungsquelle 108, eine Lüfteranordnung 110 und ein Eingangs-/Ausgangs-Gerät I/O 112 (beispielsweise eine Konsole), ferner einen Eingangs-/Ausgangs-Verbinder 114 zur Herstellung der Verbindung des Eingangs- /Ausgangs-Gerätes mit der Hintergrundebene 104 sowie die oben beschriebenen NIC- Karten 54.
Die Hintergrundebene 104 enthält die Gruppe von Verbindungen 66 und den Bus 70 von Fig. 2. Die NIC-Karten 54 haben unmittelbare Berührung mit der Hintergrundebene 104. Insbesondere sind, wie in Fig. 4 dargestellt ist, die Anschlüsse 86 der NIC-Karten 54 körperlich und elektrisch mit der Hintergrundebene 104 verbun­ den (beispielsweise mit entsprechenden Verbindern der Hintergrundebene 104).
Die Verarbeitungsschaltungseinrichtung 106 enthält eine Gruppe von Leitsteuer- Schaltungsplatten 116, welche die frontseitige Schaltungseinrichtung 56 und die rückseitige Schaltungseinrichtung 60 bildet, sowie eine Gruppe von Speicher- Schaltungsplatten 118, welche den Cache-Speicher 58 (siehe auch Fig. 2) bildet. In ähnlicher Weise wie die NIC-Karten 54 sind die Leitsteuer-Schaltungsplatten 116 und die Speicher-Schaltungsplatten 118 körperlich und elektrisch mit der Hintergrundebene 104 verbunden. Die Leitsteuer-Schaltungsplatten 116 bilden die frontseitige Schaltungseinrichtung 56 und die rückwärtige Schaltungseinrichtung 60 des Datenspeichersystems 50 (siehe auch Fig. 2). Die Speicher-Schaltungsplatten 118 bilden den Cache-Speicher 58 (siehe Fig. 2).
Der Weg der Daten, die durch das Datenspeichersystem 50 gespeichert werden, sei nun beschrieben. Die Leitsteuer-Schaltungsplatten 116, welche die frontseitige Schaltungseinrichtung 56 bilden, speichern Daten, indem sie die Daten von den NIC- Karten 54 über die Hintergrundebene 104 beziehen und sie an die Speicher-Schaltungs­ platten 118 über die Hintergrundebene 104 liefern. Die Leitsteuer-Schaltungsplatten 116, welche die rückwärtige Schaltungseinrichtung 60 bilden, vervollständigen dann den Datenspeichervorgang durch Beziehen der Daten von den Speicher-Schaltungsplat­ ten 118 über die Hintergrundebene 104 und Liefern der Daten an die Datenspeicherge­ räte 62.
Nun sei der Weg der Daten beschrieben, welche von dem Datenspeichersystem 50 entnommen werden. Die Leitsteuer-Schaltungsplatten 116, welche die rückwärtige Schaltungseinrichtung 60 bilden, entnehmen die Daten durch Empfang der Daten von den Datenspeichergeräten 62 und Lieferung dieser Daten an die Speicher-Schaltungs­ platten 118 über die Hintergrundebene 104. Darauf vervollständigen die Leitsteuer- Schaltungsplatten 116, welche die frontseitige Schaltungseinrichtung 56 bilden, den Datenwiederauffindungsvorgang durch Bezug der Daten von den Speicher-Schaltungs­ platten 118 über die Hintergrundebene 104 und Lieferung dieser Daten an die NIC- Karten 54 über die Hintergrundebene 104.
Es versteht sich, daß die Leitsteuer-Schaltungsplatten 116 konventionelle Leitsteuer-Schaltungsplatten sein können, die auch für die Verwendung in herkömmli­ chen Datenspeichersystemen geeignet sind. Es sei beispielsweise angenommen, daß das herkömmliche Datenspeichersystem 22 von Fig. 1 Leitsteuer-Schaltungsplatten ver­ wendet, die mit den externen Servern 24 unter Einsatz von Faserkanalsignalen in Ver­ bindung stehen. Die herkömmlichen Leitsteuer-Schaltungsplatten des Datenspeichersystems 22 können in dem Datenspeichersystem 50 nach den Fig. 2 bis 4 ebenfalls verwendet werden. Zu diesem Zweck können die Anschlüsse 86 der NIC-Karten 54 so konfiguriert werden, daß dasselbe Signalformat (beispielsweise Fa­ serkanalsignale) wie bei herkömmlichen Leitsteuer-Schaltungsplatten verwendet wird, wodurch eine notwendige Modifizierung der Leitsteuer-Schaltungsplatten erleichtert bzw. vermieden wird. Demgemäß können bei der Erfindung vorhandene Datenspeicher­ system-Einrichtungen mitbenutzt werden, und zusätzliche Zeit und zusätzliche Kosten, welche mit der Modifizierung vorhandener Leitsteuer-Schaltungsplatten verbunden sind, können minimal gehalten werden.
Wie in Fig. 4 gezeigt, liefert die Leistungsquelle 108 Leistung für die Gruppe von Leitsteuer-Schaltungsplatten 116, die Gruppe von Speicher-Schaltungsplatten 118 und die NIC-Karten 54 über die Hintergrundebene 104. Die Leistungsquelle 108 liefert fer­ ner Leistung an die Lüfteranordnung 110 (zur Vereinfachung ist die Verbindung für die Leistungszufuhr zu der Lüfteranordnung in Fig. 4 nicht gezeigt). Somit liefert die Lüfteranordnung 110 einen Luftstrom, der durch das Rechnergehäuse 102 strömt, um Wärme abzuführen, die durch die Gruppe von Leitsteuer-Schaltungsplatten 116, die Gruppe von Speicher-Schaltungsplatten 118 und die NIC-Karten 54 erzeugt wird.
Das Eingangs-/Ausgangs-Gerät 112 bietet Zugang zu den verschiedenen Geräten im Datenspeichersystem 50, beispielsweise den NIC-Karten 54 und den Leitsteuer- Schaltungsplatten 116. Demgemäß kann ein Benutzer (beispielsweise ein Techniker vor Ort) den Betrieb des Datenspeichersystems unmittelbar überwachen und/oder steuern, was als Alternative zu dem Zugriff zum Datenspeichersystem 50 über ein externes Gerät (beispielsweise einen Kunden) über das externe Netzwerk 26 vorgesehen ist.
Da die NIC-Karten 54, welche als Applikationsserver arbeiten können, körperlich mit der Hintergrundebene 104 verbunden sind und sich in demselben Rechnergehäuse befinden, wie die Verarbeitungsschaltungseinrichtung 106 des Datenspeichersystems, macht sich das Applikationsserver-Merkmal im wesentlichen dieselben Möglichkeiten zunutze, wie die Verarbeitungsschaltungseinrichtung 106 des Datenspeichersystems. Beispielsweise verwenden die NIC-Karten 54 (d. h., die Applikationsserver) dieselbe Leistungsquelle 108 und dieselbe Lüfteranordnung 110. Zusätzlich sind sie in demsel­ ben Rechnergehäuse 102 eingeschlossen und körperlich geschützt und nehmen densel­ ben Raum bzw. dieselbe Bodenfläche ein, wie der Rest der Bauteile des Datenspeicher­ systems. Somit können zusätzliche Aufwendungen (beispielsweise Bodenfläche, Kosten usw.), welche mit einem externen Server verbunden sind, vermieden werden, wenn das Datenspeichersystem 50 verwendet wird. Weitere Einzelheiten der Erfindung werden nun unter Bezugnahme auf Fig. 5 beschrieben.
Fig. 5 ist ein Blockschaltbild 120 bestimmter Teile einer NIC-Karte 54 nach den Fig. 2 bis 4. Wie dargestellt, enthält die Steuerungsschaltungseinrichtung 72 einen Prozessor 122, einen Speicher 124, eine tragende Logikschaltung 126, einen Transceiver 128, der zu dem Anschluß 84 führt, sowie einen weiteren Transceiver 130, der zu dem Anschluß 86 führt. Der Speicher 124 speichert ein Betriebssystem 132, eine Gruppe von Tabellen (oder Aufzeichnungen) 134, gepufferte Daten 136 und eine Gruppe von Applikationen oder Verwendungsprogrammen 138. Die tragende Logik­ schaltung 126 enthält Hardware 140 zur Erzeugung von Operationsnummern. Vorzugs­ weise enthält die tragende Logikschaltung 126 weiter eine Verbindung 142 zur unmit­ telbaren Verbindungsaufnahme mit der tragenden Logikschaltung 126 anderer NIC- Karten 54.
Die Gruppe von Tabellen 134 enthält Aufzeichnungsinformationen ähnlich denje­ nigen, welche durch einen herkömmlichen, externen Server zur Aufzeichnung von Da­ teien (beispielsweise UNIX-Dateien) an Blockspeicherorten in Plattenlaufwerken ver­ wendet werden. Insbesondere enthält die Gruppe von Tabellen 134 Aufzeichnungsin­ formationen zur Aufzeichnung von Dateien in den Blöcken 64 der Gruppe von Spei­ chergeräten 62 (siehe Fig. 2). Demgemäß hat die NIC-Karte 54 die Möglichkeit zur Querverweisung auf Dateien, die durch Kommunikationen auf Dateibasis identifiziert sind, bei Plattenlaufwerken und Sektoren, die durch Kommunikationen auf Blockbasis identifiziert sind.
Nur beispielsweise enthält der Anschluß 84 einen Gigabit-Ethernet-Verbinder zum Führen von Kommunikationen auf Dateibasis zwischen der Steuerungsschaltungsein­ richtung 72 und dem externen Netzwerk 26. Ebenfalls als Beispiel betrachtet enthält der Anschluß 86 einen Hintergrundebenenverbinder zur Führung von Daten (beispielsweise Faserkanal-Kommunikationen) und Nachrichten (beispielsweise Steuerbefehle) zwi­ schen der Steuerungsschaltungseinrichtung 72 und den Leitsteuer-Schaltungsplatten 116 (welche die frontseitige Schaltungseinrichtung 56 bilden), über die Hintergrundebene 104 (siehe auch Fig. 2 und 4).
In einer Ausführung definiert der Anschluß 86 (i) einen Teil eines Datenleitungs­ weges zum Führen der Daten und (ii) einen Teil eines separaten Nachrichtenleitungs­ weges zum Führen der Nachrichten. Bei dieser Anordnung laufen die Übertragungen über den Anschluß 86 schneller (d. h., mit höherem Durchsatz) und besser organisiert als bei anderen Anordnungen, bei welchem die Daten und die Nachrichten über densel­ ben Signalweg oder Leitungsweg geführt werden.
Ist die NIC-Karte 54 in Betrieb, so arbeitet der Prozessor 122 entsprechend dem Betriebssystem 132, um (i) sowohl Kommunikationen auf Dateibasis als auch Kommu­ nikationen auf Blockbasis zu handhaben und (ii) die Möglichkeit eines Applikations­ servers zu bieten, um Programme auf Verwenderniveau laufen zu lassen. Insbesondere handhabt der Prozessor 122 Übertragungen auf Dateibasis (beispielsweise Dateizu­ griffsbefehle) von dem externen Netzwerk 26 über den Anschluß 84 und den Transceiver 128 und handhabt Übertragungen auf Blockbasis (beispielsweise Block­ lade- und Speicherbefehle) von der Prozessorschaltungseinrichtung 106 des Datenspei­ chersystems über den Anschluß 86 und den Transceiver 130. Um Daten zwischen den Übertragungen auf Dateibasis und den Übertragungen auf Blockbasis umzuformen, puf­ fert der Prozessor 122 zeitweise die Daten 136 in dem Speicher 124. Zusätzlich läßt der Prozessor 122 das Applikationsprogramm 138 (beispielsweise eine Datenbasisma­ schine) laufen, um Operationen auf Serverniveau durchzuführen (beispielsweise Daten­ basisanfragen).
Es versteht sich, daß der Betrieb der Steuerungsschaltungseinrichtung 72 der NIC- Karte 54 mit dem Betrieb anderer Prozessoren (beispielsweise der Steuerungsschal­ tungseinrichtung 72 anderer NIC-Karten 54) koordiniert werden kann, um das Multi­ prozessorsystem 74 von Fig. 2 zu bilden. Zur Ermöglichung dieses Multiprozessorsystems zur Durchführung einer Vielzahl von Operationen gleichzeitig in koordinierter Art und Weise ordnet die tragende Logikschaltung 126 der Steuerungs­ schaltungseinrichtung 72 jeder NIC-Karte 54 jeder Operation, die durch das Multipro­ zessorsystem durchgeführt wird, eine Operationsnummer zu. Insbesondere verständigt sich die Operationsnummern-Hardware 140 mit entsprechender Hardware 140 anderer NIC-Karten 54, um eine unterscheidende Operationsnummer jeder Operation zuzuord­ nen, die durch das Multiprozessorsystem durchgeführt wird (d. h., eine Nummer, die zu jeder gegebenen Zeit in dem Datenspeichersystem 50 einzigartig ist). Somit kann das Multiprozessorsystem viele Operationen gleichzeitig verfolgen und koordinieren (bei­ spielsweise das Übertragen von Operationen von einem Prozessor zu einem anderen und das Verfolgen dieser Operationen aus der Ferne unter Verwendung der Operations­ nummern, die in dem ganzen Multiprozessorsystem einzigartig sind) und kann Operationskonflikte vermeiden (beispielsweise eine Blockierung, Prüfung und Einstel­ lung sowie Signalisierungsvorgänge). Weitere Einzelheiten der Erfindung seien nun unter Bezugnahme auf Fig. 6 dargestellt.
Fig. 6 zeigt ein Flußdiagramm einer Prozedur 150, die von einem Verwender des Datenspeichersystems 50 nach den Fig. 2 bis 5 vorgenommen wird. In dem Schritt 152 verbindet der Benutzer körperlich den Anschluß 86 der NIC-Karte 54 mit der Hin­ tergrundebene 104 (siehe auch Fig. 4) des Datenspeichersystems. In einer Ausführungs­ form steckt der Benutzer die NIC-Karte 54 in einen Schlitz einer Kartenaufnahme, so daß der Hintergrundebenenverbinder des Anschlusses 86 mit einem entsprechenden Verbinder der Hintergrundebene 104 in Eingriff kommt.
Im Schritt 154 koppelt der Benutzer den Anschluß 84 der NIC-Karte 54 mit dem externen Netzwerk 26 (siehe auch Fig. 2). In einer Ausführungsform steckt der Benutzer das Netzwerkkabel, das zu dem externen Netzwerk 26 führt, in den Anschluß 84 der NIC-Karte 54 (siehe auch Fig. 4) ein.
In dem Schritt 156 konfiguriert der Benutzer die Steuerungsschaltungseinrichtung 72 der NIC-Karte 54 so, daß sie (i) Übertragungen auf Dateibasis von dem äußeren Netzwerk 26 über den Anschluß 84 empfängt und Übertragungen auf Blockbasis an die Verarbeitungsschaltungseinrichtung 106 des Datenspeichersystems über den Anschluß 86 und die Hintergrundebene 104 in Abhängigkeit von den empfangenen Übertragungen auf Dateibasis liefert und daß sie (ii) Übertragungen auf Blockbasis von der Verarbei­ tungsschaltungseinrichtung 106 über den Anschluß 86 und die Hintergrundebene 104 empfängt und Übertragungen auf Dateibasis an das externe Netzwerk 26 über den An­ schluß 84 in Abhängigkeit von den empfangenen Übertragungen auf Blockbasis liefert. Zusätzlich konfiguriert der Benutzer die Steuerungsschaltungseinrichtung 72 so, daß sich die Möglichkeiten eines Applikationsservers bieten, so daß die Schaltung als ein Applikationsserver arbeitet, der Programme auf Anwenderniveau laufen läßt (beispiels­ weise die Verwendung 138 gemäß Fig. 5).
Es versteht sich, daß der Benutzer die Prozedur 150 für mehrere NIC-Karten 54 wiederholen kann, um die NIC-Karten 54 so zu konfigurieren, daß sie als ein Multipro­ zessorsystem arbeiten. Zu diesem Zweck verbindet der Benutzer vorzugsweise, wenn er die NIC-Karten 54 körperlich in dem Schritt 162 mit der Hintergrundebene 104 ver­ bindet, die Steuerungsschaltungseinrichtungen 72 aller NIC-Karten 54 über jeweilige Verbindungen 142 (siehe Fig. 5) miteinander. In einer Ausführungsform liegt die Ver­ bindung 142 jeder NIC-Karte 54 in dem Hintergrundebenenverbinder des Anschlusses 86 für die betreffende NIC-Karte 54. Weitere Einzelheiten der Erfindung seien nun un­ ter Bezugnahme auf Fig. 7 beschrieben.
Fig. 7 zeigt, wie die Operationsnummern-Hardware 140 jeder NIC-Karte 54 über eine Verbindung 162 innerhalb der Hintergrundebene 104 zusammengeschaltet ist. Die Operationsnummern-Hardware 140 für jede NIC-Karte 54 koordiniert die Vorgänge über diese Verbindung 162. Insbesondere nimmt jede Operationsnummern-Hardware 140 Zugriff auf eine jeweilige Tabelle 164 von Operationsnummern innerhalb der tragenden Logikschaltung 126 der betreffenden NIC-Karte 54. Jede Tabelle 164 enthält eine iden­ tische Gruppe von Eintragungen 166 mit benutzten Bitfeldern 168 und Operationsnum­ merfeldern 170. Die tragende Logikschaltung 126 jeder NIC-Karte 54 nimmt auf ihre jeweilige Tabelle 164 Zugriff, um Vorgangsnummern oder Operationsnummern den Operationen zuzuteilen, die von dem Prozessor 122 der betreffenden NIC-Karte durch­ geführt werden, was in einer unterscheidenden Art und Weise geschieht (d. h. eine Nummer ist zu irgendeiner gegebenen Zeit einzigartig). In einer Ausführungsform ver­ wendet die Operationsnummern-Hardware 140 Zeiger 172, welche durch die Tabelle 164 laufen, um eine verfügbare Operationsnummer aufzufinden.
Es versteht sich, daß oben die Operationsnummern-Hardware 140 jeder NIC-Karte 54 nur beispielsweise als eine Tabelle 164 nach unterscheidenden Nummern durchsu­ chend beschrieben wurde. Andere Schemata zur Erzeugung unterscheidender oder ein­ zigartiger Nummern sind ebenso gut geeignet, beispielsweise das Weitergeben eines Beleges oder eines Zuteilungsschlüssels unter den NIC-Karten 54, das Durchlaufen durch eine Liste von Nummern, das Laufenlassen eines Zählers usw. In einer Ausfüh­ rungsform führen die Operationsnummern-Hardwareeinheiten 140 der NIC-Karten 54 Belegdurchlaufoperationen für die Darstellung unterscheidender Nummern im Daten­ speichersystem 50 aus. Vorzugsweise wird ein solcher Belegdurchlauf aus Gründen der Geschwindigkeit und Zuverlässigkeit ausschließlich in Hardware verwirklicht. In einer Ausführungsform sind die Operationsnummern-Hardwareeinheiten 140 der NIC-Karten 54 in Ringkonfiguration verbunden, und der Belegdurchlauf geschieht über die Ringge­ stalt. In einer anderen Ausführungsform sind die Operationsnummern-Hardwareeinhei­ ten 140 der NIC-Karten in Buskonfiguration verschaltet, und der Belegdurchlauf ge­ schieht über die Buskonfiguration. Solche Modifikationen und Verbesserungen sind als von den Grundzügen der verschiedenen Ausführungsformen der Erfindung mit umfaßt anzusehen.
Fig. 8 ist ein Blockschaltbild einer alternativen Ausführungsform der Erfindung. Bei dieser alternativen Ausführungsform ist ein Netzwerkadapter als Schnittstellengerät zwischen dem Netzwerk 26 und den Bauteilen des Datenspeichersystems 50 vorgese­ hen. Der Netzwerkadapter enthält typischerweise eine Schnittstelle oder mehrere Schnittstellen, welche körperlich mit einem Signalübertragungsmedium bzw. Si­ gnalübertragungssystem (beispielsweise einer elektrischen Hintergrundebene) in dem System gekoppelt ist bzw. sind. Die Hintergrundebene ist mit der Steuereinrichtung gekoppelt und ist so konfiguriert, daß sie eine Datenübertragung zwischen der Steuer­ einrichtung und dem Netzwerkadapter zuläßt, wenn die Schnittstellen mit der Hinter­ grundebene gekoppelt sind. Der Netzwerkadapter ist in der Lage, ein sogenanntes Ser­ ververhalten oder mehrere Serververhalten für datenaustauschende Geräte zu bieten.
Wie in Fig. 8 gezeigt ist, bildet eine Mehrzahl von Netzwerkadaptern 200 eine Alternative zu der Mehrzahl von NIC-Karten 54. Bei der vorliegenden Ausführungs­ form wird die frontseitige Schaltungseinrichtung 56 von Netzwerk-Eingangs-/-Aus­ gangssteuereinrichtungen 22 gebildet, welche die Netzwerkadapter 200 mit einem Bus­ system 206 verbinden. Die rückwärtige Schaltungseinrichtung 60 wird bei der vorlie­ genden Ausführungsform von einem Platten-Eingangs-/Ausgangs-Steuergerät 208 und einem Plattenadapter 210 gebildet, welche Verbindung mit den Speichergeräten 202 haben. Die Platten-Eingangs-/-Ausgangs-Steuereinrichtungen 208 haben auch Verbin­ dung mit dem Bussystem 206.
Das Vorhandensein einer Mehrzahl von Komponenten gleicher Art in dem System ermöglicht die Verwirklichung eines fehlertoleranten Aufbaus. Redundante Funktionen, Bauteile und Mechanismen stellen sicher, daß der Ausfall eines bestimmten Bauteils, wenn er festgestellt wird, nicht den Ausfall des gesamten Speichersystems verursachen kann. Die Operationen der ausgefallenen Komponenten werden durch eine oder mehrere Komponenten desselben Typs in dem System übernommen.
Fig. 9 ist ein Blockschaltbild einer Netzwerkadapter-Hintergrundebene 218, wel­ che die Netzwerkadapter 200 mit den Netzwerk-Eingangs-/-Ausgangs-Steuereinrichtun­ gen 202 verbindet. Jeder Netzwerkadapter 200 wird von einer elektrischen Schaltungs­ karte 214 gebildet, die so konfiguriert ist, daß sie in einen Schaltungskartenschlitz 216 in der Hintergrundebene 218 des Datenspeichersystems 50 eingesetzt wird und dort Aufnahme findet. Wenn die Schaltungskarte 214 in den Schlitz 216 eingesetzt ist und dort aufgenommen ist, dann ist die Schaltungskarte 214 elektrisch und mechanisch mit der Hintergrundebene 218 des Datenspeichersystems 50 so verbunden, daß eine Schnitt­ stelle oder mehrere Schnittstellen der Karte 214 elektrisch mit der Hintergrundebene 218 gekoppelt ist bzw. sind. Die Netzwerk-Eingangs-/-Ausgangs-Steuereinrichtungen 220 sind auch elektrisch und mechanisch mit der Hintergrundebene 218 gekoppelt. In einer weiteren, alternativen Ausführungsform der Netzwerkadapteranordnung ist der Netzwerkadapter über einen Verbinder 502 mit einem externen Prozessor 500 verbun­ den, der als eine Speichersystem-Steuereinrichtung wirkt.
Jedem Netzwerkadapter 200 ist eine erste Netzwerkschicht-Adresse zugeordnet, welche mindestens teilweise auf einer Schlitz-Identifikationsnummer basiert, die die Lage des Schaltungskartenschlitzes in der Hintergrundebene identifiziert, in welche die Adapterkarte eingesteckt ist und Aufnahme gefunden hat. Die erste Netzwerkschicht- Adresse kann während der Konfiguration des Datenspeichersystems 50 in eine zweite Netzwerkschicht-Adresse umgeändert werden.
In der externen Prozessoranordnung wird dem Netzwerkadapter eine IP-Adresse zugeordnet, welche bei dem Verkehr mit dem externen Prozessor 500 zu verwenden ist. Diese IP-Adresse wird bestimmt, indem zu dem Netzwerkschichtadressenversatz (wie anfänglich in den Verzögerungsparametern bestimmt, oder wie durch den Benutzer über den externen Prozessor 500 modifiziert) der Wert addiert wird, der durch eine Identifi­ zierungsnummer des Hintergrundebenen-Verbindungsschlitzes (oder eine vorbestimmte Anzahl von Bits davon) bestimmt wird, welche dem Hintergrundebenenschlitz 216 zu­ geordnet ist, in welchen die Adapterkarte 214 eingesetzt ist. Diese Identifizierungs­ nummer wird dann verwendet, um die IP-Adresse zu erzeugen, welche es dem Netz­ werkadapter 200 ermöglicht, mit dem externen Prozessor 500 in Verbindung zu treten. Der Verzögerungs-IP-Adressenversatz in den Verzögerungsparametern kann geändert werden, wobei ein Programm 504 verwendet wird, so daß zweite und/oder nachfolgende Versatzwerte entstehen, wie dies von dem Verwender des Programms 504 gewünscht wird. Dies hat das Ergebnis, daß eine Änderung der anfänglichen Netzwerkadresse be­ wirkt wird, die dem Netzwerkadapter 200 auf der Basis des anfänglichen Netzwerk­ schicht-Adressenversatzes und der Schlitz-Ortidentifizierungsnummer in eine andere Netzwerkschicht-Adresse vorgenommen wird.
Fig. 10 ist ein Blockschaltbild der Schaltungseinrichtung 300 des Netzwerkadap­ ters 200. Die Schaltungseinrichtung 100 enthält eine Steuer- und Server-Verarbeitungs­ schalteinrichtung, die ihrerseits eine Mehrzahl von externen Eingangs-/Ausgangs-An­ schlüssen bzw. -Schnittstellen und zugehörige, kommunikationsbezogene Schaltungs­ einrichtungen (kollektiv durch die Bezugszahl 308 bezeichnet), eine zentrale Prozessor­ schaltungseinrichtung 330, programmierbare, logische Geräte (PLD) 302, 304 und einen elektronisch löschbaren, programmierbaren Festwertspeicher (EEPROM) 306 enthält. Die externen Eingangs-/Ausgangs-Anschlüsse bzw. -Schnittstellen und zugehörigen Schaltungseinrichtungen 308 enthalten eine Mehrzahl von separaten, externen Anschlüs­ sen bzw. Schnittstellen 310, 312, 314, 316, 318, 320, 322, 324, 326 und 328. Jede dieser Schnittstellen 310 bis 328 enthält jeweilige Netzwerk-Kommunikationsschalteinrich­ tungen (nicht dargestellt), welche es dem Netzwerkadapter 200 gestatten, Daten und Befehle mit dem Netzwerk 26 auszutauschen.
Die Prozessorschaltungseinrichtung 330 ist ein Multiprozessorsystem, das zwei gesonderte, zentrale Prozessoreinheitsabschnitte oder Schichten 332 und 334 aufweist. Der Abschnitt 332 enthält einen Mikroprozessor 336 und eine rechnerablesbare Spei­ chereinrichtung 340 mit wahlfreiem Zugriff und mit Festspeichereigenschaft. Der Ab­ schnitt 334 enthält einen Mikroprozessor 338 und eine rechnerablesbare Speicherein­ richtung 342 mit wahlfreiem Zugriff und mit Festspeichereigenschaft.
Die Speicher 340 und 342 speichern jeweils Softwareprogramme und Daten­ strukturen, welche den erfindungsgemäßen oder anderen Funktionen, Verfahren, Techniken und Operationen zugeordnet sind und diese ausführen, wie sie hier als durch den Netzwerkadapter 200 ausgeführt beschrieben werden. Die Mikroprozessoren 336 und 338 und die weiteren Schaltungseinrichtungen, die in der Schaltungsanordnung 300 enthalten sind, sind so konfiguriert, daß sie diese Softwareprogramme ausführen und die Datenstrukturen so manipulieren, daß sie die erfindungsgemäßen und weiteren Funktio­ nen, Verfahren, Techniken und Operationen, wie sie hier als durch den Netzwerkadapter ausgeführt beschrieben sind, veranlassen bzw. erleichtern. Beispielsweise befinden sich in den Speichereinheiten 340 und 342 eine Mehrzahl von Rechnerprogramm-Vorgängen und zugehörige Datenstrukturen 344, 346, 348 und 350. Wie weiter unten genauer be­ schrieben wird, veranlaßt die Ausführung und Manipulation dieser Prozesse und zuge­ höriger Datenstrukturen 344, 346, 348 und 350 durch die Prozessoren 336 und 338 und weitere Schaltungseinrichtungen in den Prozessorabschnitten 332 und 334 den Netz­ werkadapter 200, daß er ein sogenanntes Serververhalten oder mehrere Serververhalten den kundenseitigen Rechnern anbietet. Es versteht sich, daß zwar die Schaltungsein­ richtung 200 so betrachtet werden kann, als habe sie zwei gesonderte, logische Spei­ chereinheiten 340 und 342, wenn die Prozessoren 336 und 338 in geeigneter Weise pro­ grammiert sind, um herkömmliche Techniken zu benutzen, um das Auftreten von Zu­ sammenstößen der Speicher zu verhindern, daß aber die Prozessoren 336 und 338 die Speichermöglichkeiten in dem Netzwerkadapter 200 miteinander teilen können.
Nachdem das System 50 und der Netzwerkadapter 200 anfängliche Vorgänge des Hochfahrens oder Rückstellprozeduren durchgeführt haben, kann der Netzwerkadapter 200 anfänglich in einen Verzögerungsmodus des Betriebes eintreten. In diesem Verzögerungsmodusbetrieb arbeitet der Netzwerkadapter 200 gemäß vorbe­ stimmten Verzögerungs-Konfigurationsparametern. Diese Parameter beschreiben, bei­ spielsweise in einem anfänglichen Netzwerkschicht-Adressenversatz (z. B., 10.1.1.0), der bei der Bestimmung einer spezifischen, jeweiligen Netzwerkschicht-Adresse (bei­ spielsweise einer IP-Adresse) für die Zuordnung zum Netzwerkadapter 200 zu verwen­ den ist, einen anfänglichen Betriebsmodus des Netzwerkadapters 200, in welchem Da­ ten und Befehle zwischen dem Netzwerkadapter 200 und kundenseitigen Knotenpunk­ ten ausgetauscht werden. Diese Verzögerungsparameter können in der Schaltungsein­ richtung 300 vorprogrammiert sein.
Zusätzlich hat, während der Netzwerkadapter 200 sich im normalen Betriebsmo­ dus befindet, die Netzwerk-Eingangs-/-Ausgangs-Steuereinrichtung 202 die Möglichkeit, einen Befehl an die Schaltungseinrichtung 300 zu geben, welcher bei Empfang durch die Schaltungseinrichtung 300 diese veranlaßt, von dem nichtflüchtigen EEPROM- Speicher 306 Informationen zu beziehen, die sich auf die Konfiguration des Netzwerkadapters 200 beziehen. Solche konfigurationsbezogene Information kann bei­ spielsweise eine Teilenummer beschreiben, die der Karte 214 vom Hersteller der Karte 14 zugeteilt ist, eine Seriennummer, die der Karte 214 zugeteilt ist, einen Revisionsni­ veauwert der Hardware bzw. Software, die in der Karte 214 verwirklicht ist, textliche Kommentare, die für die Karte 214 gegeben werden (beispielsweise durch einen per­ sönlichen Techniker aufgeschrieben, der vorausgehende Probleme beschreibt, die mit der Karte 214 aufgetreten sind, oder Reparaturen, welche an der Karte vorgenommen worden sind), usw. Diese Information wird während Herstellung, Reparatur und/oder Beseitigung von Schwierigkeiten mit Bezug auf die Karte 214 in den EEPROM 306 eingeschrieben, so daß zukünftigen Handhabung, Diagnose, Reparatur und Schwierig­ keitenbeseitigung bei der Karte 214 erleichtert werden. Die Information, welche von dem EEPROM-Speicher 306 bezogen wird, wird von der Schaltungseinrichtung 300 an die Steuereinrichtung 202 geliefert. Nach Bezug der von dem EEPROM 306 bezogenen Information liefert die Netzwerk-Eingangs-/-Ausgangs-Steuereinrichtung 202 diese In­ formation an die Verarbeitungseinrichtung oder den Prozessor 500 zur Verwendung und/oder zur Darstellung durch das Programm 504.
Das Programm 504 ermöglicht es einem persönlichen Benutzer auch, an die Schaltungseinrichtung 300 in dem Netzwerkadapter 200 einen Befehl zum Inlaufsetzen einer diagnostischen Prüfung des Netzwerkadapters 200 auszugeben. Dieser Befehl be­ wirkt bei Empfang durch die Schaltungseinrichtung 300 eines Übergangs des Netzwerkadapters 200 von dem anfänglichen, normalen Betriebsmodus, in den der Netzwerkadapter 200 nach dem anfänglichen Hochfahren oder Rückstellen des Netz­ werkadapters 200 oder des Systems 50 eintritt, in einen diagnostischen Prüfmodus des Betriebes. In diesem diagnostischen Modus des Betriebes führt der Netzwerkadapter 200 eine diagnostische Routine oder ein diagnostisches Verfahren oder mehrere solche Routinen oder Verfahren durch. Diese Prozeduren umfassen eine oder mehrere, her­ kömmliche, eingebaute Selbstprüfungen (BIST) des Netzwerkadapters 200 selbst, der Steuerungsschaltungseinrichtung 300, der Verarbeitungsschaltungseinrichtung 330, der Prozessorabschnitte 332 und 334, der Anschlüsse 308, der Schnittstellen der Schal­ tungskarten zur Hintergrundebene 218 hin, und/oder von deren Komponenten und/oder andere Arten von diagnostischen Prozeduren. Die Arten und/oder die Natur einer einge­ bauten Selbstprüfung oder mehrerer eingebauter Selbstprüfungen und/oder anderer dia­ gnostischer Unterprogramme oder Routinen, welche durch den Netzwerkadapter 200 durchgeführt werden, können von dem persönlichen Benutzer unter Verwendung des Programms 504 gewählt werden. Der Benutzer verwendet das Programm 504 zur Überwachung der Ausführung der einen eingebauten Selbstprüfung oder der mehreren eingebauten Selbstprüfungen und/oder anderer diagnostischer Selbstprüfungen durch den Adapter, und nachdem der Netzwerkadapter 200 die Durchführung der einen einge­ bauten Selbstprüfung oder der mehreren eingebauten Selbstprüfungen und/oder anderer diagnostischer Prüfungen, welche vom Benutzer gewählt wurden, durchgeführt hat, berichtet die Schaltungseinrichtung 308 die Ergebnisse der einen eingebauten Selbstprü­ fung oder der mehreren eingebauten Selbstprüfungen und/oder anderer diagnostischer Prüfungen an das Programm 504, welches dann veranlaßt, daß diese Ergebnisse in ei­ nem Format angezeigt werden, das für den Benutzer verständlich ist. Zusätzlich kann der Netzwerkadapter 200 so programmiert werden, daß er beim Einschalten bzw. Hochfah­ ren des Netzwerkadapters 200 eine Einschalt-Selbstprüfungs-Diagnostikroutine oder mehrere solcher Routinen oder Verfahren durchführt.
Gemäß dem vorliegenden Ausführungsbeispiel der Erfindung können die Prozesse 344 und 348 Rechner-Betriebssystem-Prozesse (OS) umfassen, beispielsweise solche, wie sie durch Date-Access in Real-Time (DART), UNIX oder Linus OS generiert wer­ den. Die Prozesse 346 und 350 können Prozesse umfassen, die bestimmte Dienste be­ nutzen (beispielsweise Systemaufrufe, Bibliotheksfunktionen usw.), welche durch die OS-Prozesse 344 und 348 geboten werden, welche an die Kunden-Knotenpunkte soge­ nannte Serververhalten liefern. Die Programmprozesse 346 und 350 können so konfigu­ riert sein, daß sie beispielsweise dateiorientierte Kommunikationen in entsprechende blockorientierte Kommunikationen und umgekehrt übersetzen. Zusätzlich können die Prozesse 346 und 350 einen Verwender-Programmprozess oder mehrere Verwender- Programmprozesse enthalten (beispielsweise, um Datenbasisanfragen und zugehörige Funktionen durch die Kunden-Knotenpunkte zu erleichtern).
In einer alternativen Ausführungsform der vorliegenden Erfindung kann einer der Netzwerkadapter (nachfolgend als der "steuernde Adapter" bezeichnet) so konfiguriert sein, daß er die Operationen der anderen Netzwerkadapter (nachfolgend als die "gesteu­ erten Adapter" bezeichnet) in dem System 50 überwacht, führt und steuert. Um dies zu erleichtern, sind alle Netzwerkadapter 200 über Ethernet-Übertragungsverbindungen miteinander gekoppelt, welche es der Steuerungs- und Verarbeitungs-Schaltungsein­ richtung 300 in jedem der Netzwerkadapter 200 ermöglichen, untereinander Daten und Befehle auszutauschen. Die Schaltungseinrichtung 300 in dem steuernden Adapter ist so konfiguriert, daß sie den Betrieb der gesteuerten Adapter durch Erlaß geeigneter Befehle (beispielsweise Befehle auf der Basis eines einfachen Netzwerkmanagementprotokolls SNMP) an die gesteuerten Adapter über diese Ethernet-Übertragungsverbindungen steuert. Die Schaltungseinrichtung 300 in jedem der gesteuerten Adapter ist so konfigu­ riert, daß sie die Befehle durchführt, die ihr über die Ethernet-Übertragungsverbindun­ gen gegeben werden, und kann auch so konfiguriert sein, daß sie an die Schaltungsein­ richtung 30 in dem steuernden Adapter jeweilige Nachrich­ ten (beispielsweise SNMP-basierende Nachrichten) liefert, welche den Status der jewei­ ligen Operationen der gesteuerten Adapter anzeigen. Falls der steuernde Adapter als Ergebnis seiner Überwachungstätigkeiten feststellt, daß einer der gesteuerten Adapter ausgefallen ist, dann veranlaßt der steuernde Adapter, daß in dem System 50 ein feh­ lerüberbrückender Fehlheilungsprozess initiiert wird, um eine Verarbeitung zu ermögli­ chen, die anderenfalls durch den fehlerhaft gewordenen, gesteuerten Adapter ausgeführt worden wäre und die nun durch einen gesteuerten Adapter ausgeführt wird, der normal arbeitet.
Wie oben beschrieben, ist die Erfindung auf Datenspeichersystemtechniken ge­ richtet, welche eine NIC-Karte 54 verwendet, die in der Lage ist, (i) als eine Schnitt­ stelle zwischen dateibasierenden Kommunikationen und blockbasierenden Kommuni­ kationen zu arbeiten und (ii) in der Lage ist, als ein Applikationsserver zu arbeiten, der Programme auf Verwenderniveau laufen läßt. Es ist nicht notwendig, daß ein externer Server dateibasierende Übertragungen in Übertragungen auf Blockbasis und umgekehrt übersetzt, da die NIC-Karte 54 in der Lage ist, als eine Schnittstelle zwischen Übertra­ gungen auf Dateibasis und Übertragungen auf Blockbasis zu wirken. Zusätzlich kann das Datenspeichersystem Operationen auf Verwenderniveau durchführen (beispiels­ weise kann das System als Datenbasismaschine arbeiten, das Datenbasisanfragen bear­ beitet), da die NIC-Karte 54 in der Lage ist, als ein Applikationsserver zu arbeiten, der Programme auf Verwenderniveau laufen läßt. Bei einem Datenspeichersystem, das eine solche NIC-Karte verwendet, ist es also nicht notwendig, daß ein externer Server oder mehrere externe Server als ein frontseitiges Ende des Datenspeichersystems wirken (beispielsweise, wie dies bei herkömmlichen Datenspeichersystemen gemäß der Konfi­ guration 20 nach Fig. 1 erforderlich ist). Die Merkmale der Erfindung, wie sie oben be­ schrieben wurde, können in Rechnersystemen, Bauteilen und Prozeduren eingesetzt wer­ den, wie sie beispielsweise von der Firma EMC Corporation, Hopkinton, Massachussetts, geschaffen worden sind bzw. angeboten werden.
Während die Erfindung im Einzelnen unter Bezugnahme auf bevorzugte Ausfüh­ rungsformen dargestellt und beschrieben worden ist, versteht es sich für den Fachmann, daß vielerlei Abänderungen in der Form und in Einzelheiten vorgenommen werden können, ohne daß hierdurch der grundsätzliche Gedanke der Erfindung, wie er durch die anliegenden Ansprüche definiert ist, verlassen wird.
Demgemäß versteht es sich, daß in der obigen Beschreibung nur als Beispiel angegeben ist, daß der Anschluß 84 der NIC-Karte 54 mit einem Gigabit-Ethernet- Netzwerk (siehe das externe Netzwerk 26 von Fig. 5) verbunden ist. Andere Arten von Netzwerken sind für die Verwendung als externes Netzwerk 26 ebensogut geeignet, beispielsweise ein Token-Ring-Netzwerk ATM usw.
Außerdem versteht es sich, daß die Anschlüsse 86 der NIC-Karten oben als solche beschrieben wurden, die Faserkanalübertragungen handhaben, was nur als Beispiel angegeben wurde. Andere Übertragungen auf Blockbasis sind ebenso geeignet, wie ESCON, FICON, Block-Mux, SCSI usw. Darüber hinaus kann die Schnittstelle zwi­ schen den NIC-Karten 54 und der Verarbeitungsschaltungseinrichtung 106 (siehe Fig. 4) herkömmliche Busarchitekturen verwenden, beispielsweise einen Peripheral Compo­ nent Interconnect-Bus (PCI), den Industry Standard Architecture-Bus (ISA) und der­ gleichen. Weiterhin sei berücksichtigt, daß das Datenspeichersystem 50 oben nur bei­ spielsweise als mehrere NIC-Karten 54-1, . . ., 54-N enthaltend beschrieben wurde (hier­ bei ist N eine positive, ganze Zahl). Das Datenspeichersystem 50 kann aber auch nur eine einzige NIC-Karte enthalten. Die Konfiguration mit einer einzigen NIC-Karte be­ seitigt immer noch die Notwendigkeit eines externen Servers.
Fernerhin sei darauf hingewiesen, daß die NIC-Karten 54 eine Vielfalt von Pro­ grammen auf Verwenderniveau und/oder viele Programme auf Verwenderniveau gleichzeitig laufen lassen können. Somit bietet das Datenspeichersystem 50 eine Vielfalt von Server-Merkmalen, so daß sie als Datenbasismaschine für eine Datenbasis oder mehrere Datenbasen arbeitet, als ein Web-Server arbeitet, als ein NFS-Dateiserver ar­ beitet usw.
Des ferneren sei berücksichtigt, daß die Topologie des Datenspeichersystems 50 nur beispielsweise einen Bus 70 zur Verbindung der frontseitigen Schaltungseinrichtung 56, des Cache-Speichers 58 und der rückwärtigen Schaltungseinrichtung 60 miteinander enthielt. Andere Topologien sind ebenso geeignet, beispielsweise eine Matrix von Punkt-zu-Punkt-Verbindungen zwischen den Leitsteuer-Schaltungsplatten und den Speicher-Schaltungsplatten, welche die frontseitige Schaltungseinrichtung 56, den Cache-Speicher 58 und die rückwärtige Schaltungseinrichtung 60 bilden.
Auch sei bemerkt, daß die Speichergeräte 62 nur beispielsweise hier als Platten­ laufwerke angegeben sind. Andere Arten von Speichergeräten sind ebenso geeignet, beispielsweise Bandspeicherwerke, CD-ROM-Laufwerk, Halbleiterspeicher und der­ gleichen.

Claims (10)

1. Netzwerk-Schnittstelleneinrichtung für ein Datenspeichersystem mit einer Hin­ tergrundebene und einer Verarbeitungsschaltungseinrichtung zur Durchführung von Speicheroperationen, wobei die Verarbeitungsschaltungseinrichtung des Datenspeichersystems körperlich mit der Hintergrundebene des Datenspeichersystems verbunden ist, und die Netzwerk-Schnittstelleneinrichtung folgendes enthält:
eine erste Schnittstelle, welche die Kopplung zu einem externen Netzwerk herzu­ stellen vermag;
eine zweite Schnittstelle, welche körperlich mit der Hintergrundebene des Daten­ speichersystems verbunden ist, und
eine Steuerungsschaltungseinrichtung, die zwischen die erste Schnittstelle und zweite Schnittstelle geschaltet ist und welche so konfiguriert ist, daß sie dann, wenn die erste Schnittstelle die Kopplung zu dem externen Netzwerk herstellt und die zweite Schnittstelle körperlich mit der Hintergrundebene des Datenspei­ chersystems verbunden ist,
  • a) Kommunikationen auf Dateibasis von dem externen Netzwerk über die erste Schnittstelle empfängt und Kommunikationen auf Blockbasis über die zweite Schnittstelle und die Hintergrundebene in Abhängigkeit von den Kommunikationen auf Dateibasis an die Verarbeitungsschaltungseinrichtung des Datenspeichersystems liefert,
  • b) Kommunikationen auf Blockbasis von der Verarbeitungsschaltunseinrich­ tung über die zweite Schnittstelle und die Hintergrundebene empfängt und Kommunikationen auf Dateibasis über die erste Schnittstelle in Abhängig­ keit von den Kommunikationen auf Blockbasis an das externe Netzwerk liefert und
  • c) Applikationsservermöglichkeiten bietet, um als ein verwendungsorientier­ ter Server zu arbeiten, der Programme auf Verwenderniveau laufen läßt.
2. Netzwerk-Schnittstelleneinrichtung nach Anspruch 1, bei welcher die Steuerungsschaltungseinrichtung so konfiguriert ist, daß sie:
  • a) Internetprotokoll-Kommunikationen mit dem externen Netzwerk über die erste Schnittstelle austauscht und
  • b) Kommunikationen auf Blockbasis mit der Verarbeitungsschaltungsein­ richtung des Datenspeichersystems über die zweite Schnittstelle und die Hintergrundebene des Datenspeichersystems austauscht.
3. Netzwerk-Schnittstelleneinrichtung nach Anspruch 2, bei welcher die Steuerungsschaltungseinrichtung eine Aufzeichnung enthält, welche Dateinamen mit Blöcken einer Gruppe von Datenspeichergeräten des Datenspeichersystems aufzeichnet, wobei die Steuerungsschaltungseinrichtung weiter so konfiguriert ist, daß sie eine Internetprotokoll-Datenzugriffsanfrage auf Dateibasis von dem externen Netzwerk empfängt und Zugriff auf einen Datenblock innerhalb des Datenspeichersystems auf der Basis der Internetprotokoll-Datenzugriffsanfrage auf Dateibasis und der Aufzeichnung nimmt.
4. Netzwerk-Schnittstelleneinrichtung nach Anspruch 1, bei welcher die Steuerungsschaltungseinrichtung so konfiguriert ist, daß sie als ein Prozessor ei­ nes Multiprozessorsystems arbeitet, welches gleichzeitig mehrfache Operationen auf Verwenderniveau durchführt.
5. Netzwerk-Schnittstelleneinrichtung nach Anspruch 4, bei welcher die Steuerungsschaltungseinrichtung eine Hardware-Schaltung enthält, die jeder Operation des Verwenderniveaus eine Nummer zuordnet, die die betreffende Operation des Verwenderniveaus von den vielen Operationen des Verwenderni­ veaus unterscheidet, die von dem Multiprozessorsystem gleichzeitig durchgeführt werden.
6. Netzwerk-Schnittstelleneinrichtung nach Anspruch 1, bei welcher dieses eine Netzwerk-Schnittstellenkarte ist und die erste Schnittstelle von einem ersten An­ schluß gebildet ist und die zweite Schnittstelle von einem zweiten Anschluß ge­ bildet ist.
7. Netzwerk-Schnittstelleneinrichtung nach Anspruch 1, bei welcher diese ein Netzwerkadapter ist, der eine Netzwerkschicht-Adresse aufweist, die bei der Kommunikation über ein Netzwerk verwendet wird.
8. Netzwerk-Schnittstelleneinrichtung nach Anspruch 1, bei welcher die Steuerungsschaltungseinrichtung so konfiguriert ist, daß sie diagnostische Infor­ mationen liefert.
9. Netzwerk-Schnittstelleneinrichtung nach Anspruch 1, bei welcher die Steuerungsschaltungseinrichtung so konfiguriert ist, daß sie andere Netzwerk- Schnittstelleneinrichtungen in einem fehlertoleranten Datenspeichersystem steu­ ert.
10. Netzwerk-Schnittstelleneinrichtung nach Anspruch 1, bei welcher die Steuerungs­ schaltungseinrichtung durch eine Schaltungsträgerkarte verwirklicht wird, welche folgendes enthält:
eine Mehrzahl von ersten Schnittstellen und eine entsprechende Mehrzahl von zweiten Schnittstellen,
wobei die Schnittstellen über ein Signalübertragungssystem des Datenspeichersystems mit einer Eingangs-/Ausgangs-Steuereinrichtung des Datenspeichersystems gekoppelt sind und die Schnittstellen eine Kommunikation zwischen der Steuereinrichtung und der Schaltungsträgerkarte ermöglichen;
einen ersten Verarbeitungsabschnitt und einen zweiten Verarbeitungsabschnitt, und
eine erste Gruppe von Anschlüssen und eine entsprechende, zweite Gruppe von An­ schlüssen,
wobei der erste Verarbeitungsabschnitt zur Kommunikation mit der Steuereinrichtung über die genannte Mehrzahl erster Schnittstellen dient,
der zweite Verarbeitungsabschnitt zur Kommunikation mit der Steuereinrichtung über die genannte Mehrzahl von zweiten Schnittstellen dient, und
der erste Verarbei­ tungsabschnitt und der zweite Verarbeitungsabschnitt zur Kommunikation mit datenaustauschenden Einrichtungen über die erste Gruppe von Anschlüssen und die zweite Gruppe von Anschlüssen dient.
DE10220886A 2001-05-10 2002-05-10 Datenspeichersysteme mit verbesserten Netzwerkschnittstellen Withdrawn DE10220886A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US09/852,580 US7027439B1 (en) 2001-05-10 2001-05-10 Data storage system with improved network interface
US09/950,165 US7023869B2 (en) 2001-05-10 2001-09-10 Data storage system with one or more integrated server-like behaviors

Publications (1)

Publication Number Publication Date
DE10220886A1 true DE10220886A1 (de) 2002-11-21

Family

ID=27127076

Family Applications (1)

Application Number Title Priority Date Filing Date
DE10220886A Withdrawn DE10220886A1 (de) 2001-05-10 2002-05-10 Datenspeichersysteme mit verbesserten Netzwerkschnittstellen

Country Status (4)

Country Link
US (1) US7023869B2 (de)
JP (2) JP2003067137A (de)
DE (1) DE10220886A1 (de)
GB (1) GB2378022B (de)

Families Citing this family (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030084219A1 (en) * 2001-10-26 2003-05-01 Maxxan Systems, Inc. System, apparatus and method for address forwarding for a computer network
US7085846B2 (en) * 2001-12-31 2006-08-01 Maxxan Systems, Incorporated Buffer to buffer credit flow control for computer network
US20030195956A1 (en) * 2002-04-15 2003-10-16 Maxxan Systems, Inc. System and method for allocating unique zone membership
US20030200330A1 (en) * 2002-04-22 2003-10-23 Maxxan Systems, Inc. System and method for load-sharing computer network switch
US20030202510A1 (en) * 2002-04-26 2003-10-30 Maxxan Systems, Inc. System and method for scalable switch fabric for computer network
US20040030766A1 (en) * 2002-08-12 2004-02-12 Michael Witkowski Method and apparatus for switch fabric configuration
US7529842B2 (en) * 2002-12-17 2009-05-05 International Business Machines Corporation Method, system and program product for detecting an operational risk of a node
US20040230866A1 (en) * 2003-04-30 2004-11-18 Hewlett-Packard Development Company, L.P. Test system for testing components of an open architecture modular computing system
JP4718851B2 (ja) * 2004-05-10 2011-07-06 株式会社日立製作所 ストレージシステムにおけるデータ移行
JP2008071047A (ja) * 2006-09-13 2008-03-27 Kwok-Yan Leung ディスクインターフェースカード
US8295166B2 (en) * 2007-04-17 2012-10-23 Rockwell Automation Technologies, Inc. High speed industrial control and data acquistion system and method
US8280930B1 (en) 2008-12-19 2012-10-02 Emc Corporation Obtaining configuration information from host devices which store data into and load data from a data storage array
US8965212B2 (en) 2009-04-29 2015-02-24 Hewlett-Packard Development Company, L.P. Optical memory expansion
DE102012005197B3 (de) 2012-03-16 2013-06-13 Iav Gmbh Ingenieurgesellschaft Auto Und Verkehr Verfahren zur Optimierung einer Brennkraftmaschine
US9047018B1 (en) * 2012-03-20 2015-06-02 Emc Corporation Method and system for zero-copy disk IO using sector unaligned buffers
JP5959733B2 (ja) * 2013-04-23 2016-08-02 株式会社日立製作所 ストレージシステムおよびストレージシステムの障害管理方法
US10326837B1 (en) * 2016-09-28 2019-06-18 EMC IP Holding Company LLC Data storage system providing unified file/block cloud access
KR102322889B1 (ko) * 2020-02-04 2021-11-05 효성중공업 주식회사 Hvdc 시스템의 제어기 보드 id 설정 장치 및 방법
US11169949B2 (en) 2020-02-24 2021-11-09 International Business Machines Corporation Port descriptor configured for technological modifications
US11327868B2 (en) 2020-02-24 2022-05-10 International Business Machines Corporation Read diagnostic information command
US11169946B2 (en) 2020-02-24 2021-11-09 International Business Machines Corporation Commands to select a port descriptor of a specific version
US11520678B2 (en) 2020-02-24 2022-12-06 International Business Machines Corporation Set diagnostic parameters command
JP2023142021A (ja) 2022-03-24 2023-10-05 株式会社日立製作所 ネットワークインタフェース及びそのバッファ制御方法

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE69117498D1 (de) 1991-05-31 1996-04-04 Ibm Kommunikationssteuergerät mit Leitungsanpassern die mit Anwenderprogramm ladbar sind
US5768623A (en) * 1995-09-19 1998-06-16 International Business Machines Corporation System and method for sharing multiple storage arrays by dedicating adapters as primary controller and secondary controller for arrays reside in different host computers
US6175490B1 (en) * 1997-10-01 2001-01-16 Micron Electronics, Inc. Fault tolerant computer system
US6226680B1 (en) 1997-10-14 2001-05-01 Alacritech, Inc. Intelligent network interface system method for protocol processing
US6009466A (en) * 1997-10-31 1999-12-28 International Business Machines Corporation Network management system for enabling a user to configure a network of storage devices via a graphical user interface
US5941972A (en) * 1997-12-31 1999-08-24 Crossroads Systems, Inc. Storage router and method for providing virtual local storage
JP4026698B2 (ja) 1998-09-11 2007-12-26 株式会社日立製作所 修正可能なデータ管理機能を有するディスク記憶装置
US6230190B1 (en) * 1998-10-09 2001-05-08 Openwave Systems Inc. Shared-everything file storage for clustered system
JP4168522B2 (ja) 1999-03-18 2008-10-22 株式会社日立製作所 アクティブ記憶装置とその記憶制御方法及びこれを用いた異種データ統合利用システム
US6748448B1 (en) * 1999-12-13 2004-06-08 International Business Machines Corporation High performance internet storage access scheme
US6654831B1 (en) * 2000-03-07 2003-11-25 International Business Machine Corporation Using multiple controllers together to create data spans

Also Published As

Publication number Publication date
GB2378022B (en) 2005-02-23
US20050018709A1 (en) 2005-01-27
JP2007080282A (ja) 2007-03-29
JP2003067137A (ja) 2003-03-07
GB0210551D0 (en) 2002-06-19
US7023869B2 (en) 2006-04-04
GB2378022A (en) 2003-01-29

Similar Documents

Publication Publication Date Title
DE10220886A1 (de) Datenspeichersysteme mit verbesserten Netzwerkschnittstellen
DE102012210914B4 (de) Switch-Fabric-Management
DE69032673T2 (de) Verfahren und Vorrichtung zur dynamischen Verwaltung der Eingabe-/Ausgabeverbindungsmöglichkteiten
DE102004028808B4 (de) Speichersystem, das mit einem externen Speichersystem verbunden ist und Verfahren zum Verbinden derartiger Systeme
DE69636663T2 (de) System und Verfahren zur Zugriffsverteilung von Mehrfachspeichermatrixen zwischen Mehrfachwirtrechnersystemen
DE69913553T2 (de) Konfigurierung von systemeinheiten
DE60031499T2 (de) Verfahren zur Übertragung von Signalen der Typen "fibre-channel" und "non-fibre-channel" über ein gemeinsames Kabel
DE102005049055B4 (de) Verfahren, um Ereignisse in einem Systemereignisprotokoll in eine Reihenfolge zu bringen
DE69724834T2 (de) System für hochverfügbare datenspeicherung mit allgemein-adressiertem speicher
DE102012210582B4 (de) Verringern der Auswirkung des Ausfalls einer Vermittlungsstelle in einem Schaltnetzwerk mittels Schaltkarten
DE10124482B4 (de) Fehlertolerante Systemressource mit niedriger Latenzzeit, mit übergeordneter Protokollierung von Systemressourcentransaktionen und serverübergreifend gespiegelter Protokollierung von übergeordneten Systemressourcentransaktionen
DE69329743T9 (de) Computerverwaltungssystem und entsprechende Datenbank für Verwaltungsinformationen
DE602004008028T2 (de) Verfahren zum dynamischen Transferieren zwischen Servern für virtuelle Dateiserver
DE112014006605B4 (de) Speichersystem
DE602005002713T2 (de) Informationsverarbeitungssystem mit redundanten Pfaden und Zugriffsverfahren
DE10197179T5 (de) Fern-Spiegelung in einer geschalteten Umgebung
DE102004027672A1 (de) Speicherplattenarraysystem
DE10124514A1 (de) Fehlertolerante, gemeinsam genutzte Systemressource mit einem Hochverfügbarkeitskommunikationen bereitstellenden Kommunikationsdurchgang
DE102004013113A1 (de) Plattenarraysystem und Fehlerinformations-Steuerungsverfahren
DE10014448A1 (de) Speicherverwaltungssystem
DE10236179A1 (de) Speichersystem und Verfahren zur Verwendung desselben
DE19515661C2 (de) Halbleiter-Plattenvorrichtung
DE112013006549T5 (de) Computersystem und Datensteuerverfahren
DE102014112943B4 (de) Modulares Computersystem und Servermodul
DE102007033346A1 (de) Verfahren und Vorrichtung zur Administration von Computern

Legal Events

Date Code Title Description
8110 Request for examination paragraph 44
8139 Disposal/non-payment of the annual fee