-
Die
Erfindung betrifft Speichervorrichtungen, die von einem Computer
in einem Computersystem zu verwendende Daten speichern, und spezieller
betrifft sie Speichervorrichtungen unter Verwendung einer Clusterstruktur.
-
Einhergehend
mit der drastischen Zunahme der in einem Computersystem behandelten
Datenmenge hat entsprechend die Kapazität von Daten speichernden Speichern
zugenommen. Als eine der Vorgehensweise zum Senken der Verwaltungskosten
bei Speichern großer
Kapazität
wurde ein Speichersystem dahingehend konzipiert, dass eine große Datenmenge
gemeinsam in einem einzelnen Speicher großer Kapazität und mit hohem Funktionsvermögen, hoher
Zuverlässigkeit
und hoher Anpassbarkeit gespeichert wird, statt dass die große Datenmenge
verteilt würde
und sie in vielen kleinen Speichern gespeichert würde. Durch
Senken der Anzahl der Speicher, die der Verwaltung unterliegen,
können
die Verwaltungskosten für
Speicher, wie die Ausfall/Wartungs-Verwaltungskosten, ge senkt werden.
-
Wenn
jedoch eine einzelne Speichervorrichtung dazu verwendet wird, eine
große
Datenmenge zu speichern, und wenn sie mit vielen Hosts verbunden
ist, ist die Anzahl der Steuerprozessoren und der Plattenlaufwerke,
die im Inneren der Speichervorrichtung angebracht sind, erhöht. Ferner
muss, da zwischen den zahlreichen Steuerprozessoren und Plattenlaufwerken
verknüpfte
Operationen hoher Geschwindigkeit erforderlich sind, die Geschwindigkeit interner
Busse und Steuerspeicher erhöht
werden, und es müssen
Konflikte zwischen vielen Steuerprozessoren vermieden werden. Jedoch
würde das
Erhöhen
der Geschwindigkeit interner Busse und von Steuerspeichern sowie
das Vermeiden von Konflikten zwischen Steuerprozessoren hinsichtlich
der Technologie und der Kosten sowohl bei der Hardware als auch
der Software zu extremen Herausforderungen führen.
-
Bei
einem Speichersystem kann eine Clustertechnologie angewandt werden,
um die oben beschriebenen Probleme zu lösen und um einen umfangreichen
Speicher großer
Kapazität
billig zu realisieren.
-
Ein
Cluster-Speichersystem besteht typischerweise aus mehreren relativ
kleinskaligen Speicherknoten, die über Systeme für wechselseitige
Verbindung, wie Switches, wechselseitig miteinander verbunden sind,
um dadurch eine Speichervorrichtung großer Kapazität zu realisieren. Es sind viele Konfigurationen
möglich,
um eine derartige Speichervorrichtung großer Kapazität aufzubauen. Jedoch sind sie
dahingehend gleich, dass von einem Cluster-Speichersystem empfangene
Eingabe/Ausgabe-Anforderungen an Speicherknoten verteilt werden,
die mit Zielvorrichtungen für
diese Anforderungen versehen sind, wobei jede derselben durch den jeweils
entsprechenden Speicherknoten verarbeitet wird. Im Allgemeinen sind
mehrere Module, wie eine Hostschnittstelle, ein Plattenlaufwerk,
Steuerprozessoren, ein Speicher, ein Steuerspeicher, ein Plattencache
und dergleichen, an jedem der Speicherknoten, wie einer normalen
Speichervorrichtung, angebracht, und diese Module sind über ein
internes Netzwerk mit dem jeweiligen Speicherknoten verbunden. An
jedem dieser Speicherknoten werden diese internen Module dazu verwendet,
Eingabe/Ausgabe-Anforderungen hinsichtlich des Plattenlaufwerks
zu verarbeiten.
-
Beim
oben beschriebenen Cluster-Speichersystem werden der Plattencache
und der Steuerspeicher in jedem Plattenlaufwerk nur von denjenigen Steuerprozessoren
gemeinsam genutzt, die im selben Speicherknoten vorhanden sind.
Daher können beim
oben beschriebenen Cluster-Speichersystem die Funktionserfordernisse
hinsichtlich interner Busse und der Speicherbandbreite gelindert
werden. Ferner kann eine Anzahl von Speicherknoten, deren Anzahl
zur von einem Computersystem benötigten Speicherkapazität passt,
verbunden sein, um ein Cluster-Speichersystem zu bilden. Durch diese
Vorgehensweise können
Speichervorrichtungen mit einer Anzahl verschiedener Kapazitäten von
großer
bis kleiner Kapazität
auf skalierbare Weise realisiert werden. Es sei darauf hingewiesen,
dass bei einem Cluster-Speichersystem Steuerinformation und Daten, wie
sie in Plattenlaufwerken gespeichert sind, über ein Inter-Verbindungssystem
zwischen Speicherknoten für
Datenkopplung, wie Datenvervielfältigung, und
interne Datenumordnung zwischen den Plattenlaufwerken ausgetauscht
werden können.
-
Wenn
eine neue Speichervorrichtung in ein vorhandenes Computersystem
eingesetzt wird, ist es, um die Vorrichtungs-Einsetzkosten zu senken,
effektiv, einen vorhandenen Speicher zu nutzen, der bereits von
einem Kunden in das Computersystem eingesetzt wurde. Um die gesamten
Daten in der vorhandenen Speichervorrichtung in einen neuen Speicher
zu übertra gen,
muss der neu eingesetzte Speicher mit einer Kapazität versehen
sein, die der der vorhandenen Speichervorrichtung entspricht, wodurch
die Speichereinsetzkosten erhöht
sind.
-
Gemäß einem
der bekannten Verfahren zum Verbinden mehrerer Speichervorrichtungen
wird eine erste Speichervorrichtung mit einer zweiten Speichervorrichtung
verbunden, und eine Vorrichtung (nachfolgend als "Logikvorrichtung" bezeichnet), die die
erste Speichervorrichtung für
eine höhere
Vorrichtung wie einen Host bereitstellt, wird dem Host über die
zweite Speichervorrichtung als Logikvorrichtung derselben bereitgestellt.
Wenn die zweite Speichervorrichtung vom Host eine Eingabe/Ausgabe-Anforderung
für einen
Zugriff auf eine Logikvorrichtung empfängt, führt sie eine Beurteilung dahingehend
aus, ob die Vorrichtung, auf die zuzugreifen ist, einer Logikvorrichtung
in der ersten Speichervorrichtung oder einer physikalischen Vorrichtung
innerhalb der zweiten Speichervorrichtung entspricht, und sie verteilt
die Eingabe/Ausgabe-Anforderung entsprechend dem Beurteilungsergebnis
an das korrekte Zugriffsziel.
-
Gemäß dem oben
beschriebenen herkömmlichen
Verfahren beurteilt, wenn die zweite Speichervorrichtung vom Host
eine Eingabe/Ausgabe-Anforderung für Zugriff auf eine Logikvorrichtung
der zweiten Speichervorrichtung empfängt, die einer Logikvorrichtung
der ersten Speichervorrichtung (die nachfolgend auch als "externe Vorrichtung" bezeichnet wird)
entspricht, der Steuerprozessor der zweiten Speichervorrichtung,
dass die Vorrichtung, auf die zuzugreifen ist, die externe Vorrichtung
ist, er schreibt die Adresseninformation um, und dann überträgt er die
Eingabe/Ausgabe-Anforderung an die erste Speichervorrichtung. Demgemäß besteht
hohe Wahrscheinlichkeit dafür,
dass das herkömmliche Verfahren
das Funktionsvermögen
der Eingabe/Ausgabe-Verarbeitung für eine Vorrichtung beeinträchtigt,
die hinsichtlich des Platten laufwerks ausgebildet ist, das innerhalb
der zweiten Speichervorrichtung (die nachfolgend auch als "interne Vorrichtung" bezeichnet wird)
vorhanden ist.
-
Wenn
z. B. eine Eingabe/Ausgabe-Verarbeitung für eine Logikvorrichtung der
zweiten Speichervorrichtung, die einer externen Vorrichtung der
ersten Speichervorrichtung entspricht, vom Steuerprozessor der zweiten
Speichervorrichtung ausgeführt
wird, wird die Betriebskapazität
des Steuerprozessors der zweiten Speichervorrichtung aufgebraucht.
-
US 6 542 961 B1 offenbart
ein Speichersystem gemäß dem Oberbegriff
des beigefügten
Anspruchs 1.
WO 02/093298
A2 beschreibt ein Server-Client-System, in dem ein Server
gespeicherte Daten auf Anfrage eines Clients bereitstellt. Weiterführender
Stand der Technik ist in den Druckschriften
US 6 529 976 B1 und
EP 1 132 805 A2 offenbart.
-
Die
Erfindung betrifft ein mit einem externen Speichersystem verbundenes
Speichersystem, wobei Eingabe/Ausgabe-Anforderungen von einem Host
an das externe Speichersystem weitergeleitet werden können.
-
Aufgabe
der Erfindung ist es, die Verarbeitungsbelastung des Speichersystems
zu senken und ein effektives und für die jeweilige Datenanfrage
des Hosts optimierbares Datenzugriffsverfahren bereitzustellen.
Diese Aufgabe ist durch das Speichersystem des Anspruchs 1 und das
Verfahren gemäß Anspruch
8 gelöst.
-
Eine
Ausführungsform
der Erfindung verfügt über ein
Speichersystem mit einem ersten, mit einem Computer verbundenen
Steuerabschnitt, einem zweiten Steuerabschnitt mit einer Speichereinrichtung
und einem Cachespeicher, einen dritten Steuerabschnitt, der mit
dem externen Speichersystem verbunden ist, und ein internes Netzwerk,
das den ersten, den zweiten und den dritten Steuerabschnitt verbindet.
-
Wenn
der erste Steuerabschnitt vom Computer eine Eingabe /Ausgabe-Anforderung
für einen Zugriff
auf die Speichervorrichtung im anderen Speichersystem empfängt, trifft
der erste Steuerabschnitt die Auswahl, diese über einen ersten Pfad, der
durch das interne Netzwerk und den dritten Steuerabschnitt gebildet
ist, oder über
einen zweiten Pfad, der durch das interne Netzwerk, den zweiten
Steuerabschnitt und den dritten Steuerabschnitt gebildet ist, an
das andere Speichersystem zu übertragen.
-
Andere
Merkmale und Vorteile der Erfindung werden aus der folgenden Beschreibung
in Verbindung mit den beigefügten
Zeichnungen, die beispielhaft verschiedene Merkmale von Ausführungsformen der
Erfindung veranschaulichen, ersichtlich werden.
-
1 zeigt
ein Beispiel einer Hardwarekonfiguration eines Speichersystems gemäß einer
Ausführungsform
der Erfindung.
-
2 zeigt
ein Beispiel einer Softwarekonfiguration eines Speichers gemäß einer
Ausführungsform
der Erfindung.
-
3 zeigt
ein Beispiel von Verwaltungsinformation für eine höhere Logikvorrichtung.
-
4 zeigt
ein Beispiel von Verwaltungsinformation für einen LU-Pfad.
-
5 zeigt
ein Beispiel von Verwaltungsinformation für eine niedrigere Logikvorrichtung.
-
6 zeigt
ein Beispiel von Verwaltungsinformation für eine physikalische Vorrichtung.
-
7 zeigt
ein Beispiel von Verwaltungsinformation für eine externe Vorrichtung.
-
8 zeigt
ein Beispiel einer Definitionsverarbeitung für eine externe Vorrichtung.
-
9 zeigt
ein Beispiel einer Definitionsverarbeitung für eine Logikvorrichtung.
-
10 zeigt
ein Beispiel einer Definitionsverarbeitung für einen LU-Pfad.
-
11 zeigt
ein Beispiel einer Anforderungs-Zuordnungsverarbeitung.
-
12 zeigt
ein Beispiel einer Befehlsverarbeitung.
-
13 zeigt
ein Beispiel einer (Write-After-Verarbeitung (Antwort auf eine Schreibanforderung
nach dem Einschreiben von Daten in einen Cache aber vor dem Einschreiben
in ein Plattenlaufwerk.
-
14 zeigt
ein Beispiel einer Verarbeitung zum Ändern der Verbindung einer
externen Vorrichtung.
-
15 zeigt
ein anderes Beispiel einer Verarbeitung zum Ändern der Verbindung einer
externen Vorrichtung.
-
16 zeigt
ein anderes Beispiel einer Anforderungs-Zuordnungsverarbeitung.
-
17 zeigt
ein anderes Beispiel eines Computersystems gemäß einer Ausführungsform der
Erfindung.
-
Nachfolgend
werden eine erste und eine zweite Ausführungsform aus Beispiele unter
verschiedenen Ausführungsformen
der Erfindung beschrieben.
-
Bei
einem Beispiel gemäß der ersten
Ausführungsform
der Erfindung wird, wenn eine externe Vorrichtung, die in einer
ersten Speichervorrichtung existiert, als Logikvorrichtung einer
zweiten Speichervorrichtung, die ein als Cluster konfiguriertes Speichersystem
ist, definiert wird, die Verbindungskonfiguration der externen Vorrichtung
hinsichtlich der zweiten Speichervorrichtung bestimmt, und eine Eingabe/Ausgabe-Anforderung
von einem Hostcomputer an die externe Vorrichtung wird auf Grundlage der
ermittelten Verbindungskonfiguration an ein geeignetes Übertragungsziel
verteilt.
-
Bei
einem Beispiel gemäß der zweiten
Ausführungsform
der Erfindung wird eine in der zweiten Speichervorrichtung eingeführte Verbindungskonfiguration
auf eine andere Verbindungskonfiguration umgeschaltet, und eine
Eingabe/Ausgabe-Anforderung
vom Hostcomputer an die externe Vorrichtung wird abhängig vom
Fortschritt der Verarbeitung zum Umschalten der Verbindungskonfiguration
an ein geeignetes Übertragungsziel
verteilt.
-
Es
ist zu beachten, dass sowohl bei der ersten als auch bei der zweiten
Ausführungsform
die zweite Speichervorrichtung, die ein als Cluster konfiguriertes
Speichersystem ist, mit der ersten Speichervorrichtung verbunden
ist, die eine externe Speichervorrichtung bildet, wobei die zweite
Speichervorrichtung über
eine Funktion verfügt,
die in der ersten Speichervorrichtung existierende externe Vorrichtung
dem Hostcomputer als Vorrichtung der zweiten Speichervorrichtung
bereitzustellen. Eine derartige Funktion wird nachfolgend als Verbindungsfunktion für einen
externen Speicher bezeichnet.
-
Im
Allgemeinen sind bei einer Speichervorrichtung unter Verwendung
von Plattenlaufwerken, insbesondere bei einer Speichervorrichtung,
die ein Plattenarray wie RAID (Redundant Array of Independent Disks)
steuert, die Plattenlaufwerke, die physikalische Vorrichtungen sind,
wie sie tatsächlich
an der Speichervorrichtung angebracht sind, mit logischen Plattenlaufwerken
korreliert, wie sie für
einen Host bereitzustellen sind (anders gesagt, die vom Host als
Plattenlaufwerke erkannt werden). Diese werden nachfolgend auch
als "Logikvorrichtung" bezeichnet. Unter
Verwendung einer externen Speicher-Verbindungsfunktion der zweiten
Speichervorrichtung erkennt diese die Logikvorrichtungen der ersten
Speichervorrichtung als externe Vorrichtungen, und sie korreliert
sie mit Logikvorrichtungen der zweiten Speichervorrichtung. Wenn
dann die zweite Speichervorrichtung eine Zugriffsanforderung vom Hostcomputer
empfängt,
beurteilt sie, ob eine Ziel-Logikvorrichtung, auf die zuzugreifen
ist und die durch in der Zugriffsanforderung enthaltene Information
spezifiziert ist, mit einer in der zweiten Speichervorrichtung vorhandenen
physikalischen Vorrichtung oder mit einer in der ersten Speichervorrichtung
existierenden externen Vorrichtung korreliert ist, und sie verteilt
die Zugriffsanforderung auf Grundlage des Beurteilungsergebnisses
an das geeignete Zugriffsziel.
-
In
diesem Fall kann, unabhängig
davon, ob eine Logikvorrichtung, die das Ziel der Eingabe/Ausgabe-Anforderung
vom Hostcomputer ist, mit einer in der zweiten Speichervorrichtung
existierenden internen Vorrichtung oder einer in der ersten Speichervorrichtung
existierenden externen Vorrichtung korreliert ist, diese Eingabe/Ausgabe-Anforderung
durch eine Logikvorrichtung der zweiten Speichervorrichtung verarbeitet
werden. Durch Verarbeiten der Zugriffsanforderung an die externe
Vorrichtung vom Hostcomputer unter Verwendung des Steuerprozessors
der zweiten Speichervorrichtung können für die externe Vorrichtung auch
Funktionen wie eine Datenkopierfunktion betreffend die zweite Speichervorrichtung
bereitgestellt werden. Im Ergebnis bietet das oben beschriebe ne
System Vorteile dahingehend, dass die Kosten zum Einführen der
zweiten Speichervorrichtung in das Computersystem gesenkt werden
können
und das höhere
Vorrichtungs-Funktionsvermögen
und eine Anzahl von Funktionen der zweiten Speichervorrichtung für Daten
genutzt werden können,
die in der Vorrichtung innerhalb der ersten Speichervorrichtung
gespeichert sind, während die
vorhandene erste Speichervorrichtung effektiv genutzt wird.
-
Wenn
jedoch Zugriffsanforderungen an die externe Vorrichtung durch den
Steuerprozessor der zweiten Speichervorrichtung verarbeitet werden,
wird das Funktionsvermögen
der in der zweiten Speichervorrichtung existierenden internen Vorrichtung
hinsichtlich der Eingabe/Ausgabe-Verarbeitung mit hoher Wahrscheinlichkeit
beeinträchtigt.
Wenn z. B., wie oben beschrieben, Verarbeitungsvorgänge betreffend
die externe Vorrichtung vom Steuerprozessor in der zweiten Speichervorrichtung
ausgeführt werden,
werden Operationsfähigkeiten
des Steuerprozessors in der zweiten Speichervorrichtung aufgebraucht.
Auch besteht, da ein Plattencache in der zweiten Speichervorrichtung
dazu verwendet wird, Daten zu speichern, die in der externen Vorrichtung gespeichert
sind, hohe Wahrscheinlichkeit dafür, dass in der internen Vorrichtung
gespeicherte Daten aus dem Plattencache gelöscht werden, was zu einer Verringerung
des Eingabe/Ausgabe-Funktionsvermögens aufgrund einer verringerten
Cache-Trefferrate führen
kann.
-
Es
kann unvermeidlich sein, dass Ressourcen wie der Steuerprozessor
und der Cachespeicher der zweiten Speichervorrichtung für die erste
Speichervorrichtung aufgebraucht werden, wenn Funktionen wie die
Datenkopierfunktion der zweiten Speichervorrichtung für die in
der ersten Speichervorrichtung vorhandene externe Vorrichtung verwendet
werden. Jedoch kann die erste Speichervorrichtung über eine
externe Vorrichtung verfügen,
für die
eine integrale Verwaltung mit der internen Vorrichtung in der zweiten
Speichervorrichtung als Logikvorrichtung derselben angesichts der
Integration von Operationsverwaltungsvorgängen erwünscht ist, wobei es jedoch
nicht erforderlich ist, die Funktionen der zweiten Speichervorrichtung
anzuwenden. Aus dem Gesichtspunkt des Systemfunktionsvermögens ist
es unerwünscht,
die Ressourcen der zweiten Speichervorrichtung für Verarbeitungsvorgänge betreffend den
Zugriff auf eine derartige externe Vorrichtung aufzubrauchen, entsprechend
derselben Weise wie bei Verarbeitungsvorgängen für andere externe Vorrichtungen,
bei denen die Funktionen der zweiten Speichervorrichtung angewandt
werden sollten. Auch müssen
die Funktionen der zweiten Speichervorrichtung nicht notwendigerweise
immer bei einer speziellen externen Vorrichtung angewandt werden. Wenn
z. B. Daten als Backup in der ersten Speichervorrichtung, die eine
externe Speichervorrichtung ist, unter Verwendung einer Datenkopierfunktion
der zweiten Speichervorrichtung gespeichert werden, wird die Funktion
der zweiten Speichervorrichtung bei der ersten Speichervorrichtung
angewandt, während
die Backupverarbeitung ausgeführt
wird, weswegen die Ressource der zweiten Speichervorrichtung aufgebraucht
wird. Nachdem jedoch die Backupverarbeitung abgeschlossen ist, ist
es wünschenswert,
dass die Ressource der zweiten Speichervorrichtung so wenig wie
möglich
aufgebraucht wird, wenn auf die externe Vorrichtung zugegriffen
wird, die die Backupdaten speichert.
-
Angesichts
des Vorstehenden betrifft die erste Ausführungsform der Erfindung, wie
sie unten beschrieben ist, eine Technologie, die eine Verbindungskonfiguration
auswählt,
wenn die erste Speichervorrichtung mit der zweiten Speichervorrichtung verbunden
wird und die Ausführungsformen
an die externe Vorrichtung durch die zweite Speichervorrichtung
abhängig
von der Verbindungskonfiguration verarbeitet. Außerdem betrifft die zweite
Ausführungsform
der Erfindung, wie sie unten beschrieben wird, eine Technologie
zum Ändern
einer zunächst ausgewählten Verbindungskonfiguration.
-
Die
erste Ausführungsform
wird nachfolgend unter Bezugnahme auf die 1 bis 14 und
die 17 beschrieben.
-
Die 1 zeigt
ein Beispiel einer Hardwarekonfiguration eines Computersystems gemäß einer Ausführungsform
der Erfindung. Das Computersystem verfügt über mindestens einen Hostcomputer (nachfolgend
als "Host" bezeichnet) 100,
einen Verwaltungsserver 110, einen Faserkanal-Switch 120, eine
einer zweiten Speichervorrichtung entsprechende Speichervorrichtung 130,
eine oder mehrere externe Speichervorrichtungen 180a, 180b (allgemein als "180" gekennzeichnet),
die jeweils einer ersten Speichervorrichtung entsprechen, und ein
Serviceterminal 190. Der Host 100 verfügt über einen
oder mehrere Ports 107, und die Speichervorrichtung 130 verfügt über einen
oder mehrere Ports 141. Der Host 100 und die Speichervorrichtung 130 sind über ihre jeweiligen
Ports mit Ports 121 des Faserkanal-Switchs 120 verbunden.
Ein Netzwerk aus dem Host 100 und der über den Faserkanal-Switch 120 angeschlossenen
Speichervorrichtung 130 wird als Storage Area Network (SAN)
bezeichnet. Ferner verfügen
die externen Speicher 180a und 180b über Ports 181, über die
sie mit der Speichervorrichtung 130 verbunden sind. Externe
Vorrichtungen, die aus innerhalb der externen Speichervorrichtungen 180a und 180b vorhandenen
Plattenlaufwerken bestehen, werden dem Host 100 durch die
Speichervorrichtung 130 als Logikvorrichtungen derselben
bereitgestellt. Auch sind der Host 100, der Faserkanal-Switch 120, die
Speichervorrichtung 130 und die externe Speichervorrichtung 180 über ein
IP-Netzwerk 175 mit einem Verwaltungsserver 110 verbunden,
und sie werden gemeinsam durch eine SAN-Verwaltungssoftware (nicht
dargestellt) verwaltet, die im Verwaltungsserver 110 abgearbeitet
wird. Es wird darauf hingewiesen, dass zwar die Speichervor richtung 130 gemäß der vorliegenden
Ausführungsform über das Serviceterminal 190 mit
dem Verwaltungsserver 110 verbunden ist, dass sie jedoch
auch so konfiguriert sein kann, dass sie direkt mit dem IP-Netzwerk 175 verbunden
ist.
-
Der
Host 100 ist ein Computer mit einer CPU 101, einem
Speicher 102 und anderen Komponenten. Software einschließlich eines
in einem Speicher 103 wie einem Plattenlaufwerk, einem
magnetooptischen Plattenlaufwerk oder dergleichen gespeicherten
Betriebssystem wird in den Speicher 102 gelesen, und die
CPU 101 liest die gespeicherte Software aus dem Speicher 102 und
führt sie
aus, um vorbestimmte Funktionen zu erzielen. Der Host 100 kann mit
einer Eingabevorrichtung 104 wie einer Tastatur, einer
Maus oder dergleichen sowie einer Ausgabevorrichtung wie einem Display 105 versehen
sein. Die Eingabevorrichtung 104 empfängt Eingaben, die z. B. durch
einen Hostverwaltungs-Administrator eingegeben werden, und die Ausgabevorrichtung
gibt Information gemäß Anweisung
durch die CPU aus. Auch verfügt
der Host 100 über
einen oder mehrere Ports 107 für Verbindung mit dem SAN sowie
einen oder mehrere Schnittstellen-Steuerabschnitte 106 für Verbindung
mit dem IP-Netzwerk 175.
-
Der
Verwaltungsserver 110 ist auch ein Computer, der über eine
CPU 111, einen Speicher 112 und dergleichen verfügt, und
Software, wie SAN-Verwaltungssoftware, die in einem Speicher 113,
wie einem Plattenlaufwerk, einem magnetooptischen Plattenlaufwerk
oder dergleichen, gespeichert ist, wird in den Speicher 112 eingespeichert,
und die CPU 111 liest die eingespeicherte Software und
führt sie
aus, um vorbestimmte Funktionen zu bewerkstelligen, wie die gesamte
Betriebs/Wartungs-Verwaltung des Computersystems. Wenn die SAN-Verwaltungssoftware
von der CPU 111 ausgeführt
wird, sammelt der Verwaltungsserver 110 verschiedene Informationen, wie
Konfigurationsinformation, Information zur Ressour cen-Nutzungsrate
und Funktionsfähigkeits-Überwachungsinformation
von jeder der Vorrichtungen innerhalb des Computersystems mittels seines
Schnittstellen-Steuerabschnitts 116 über das IP-Netzwerk 175.
Dann gibt der Verwaltungsserver 110 die gesammelte Information
an die Ausgabevorrichtung wie das Display 115 aus, um sie
dem Speicherverwaltungs-Administrator darzubieten. Auch empfängt der
Verwaltungsserver 110 Anweisungen, wie eine Betriebs/Wartungs-Anweisung, über die
Eingabevorrichtung 114, wie eine Tastatur, eine Maus oder
dergleichen vom Speicherverwaltungs-Administrator, und er überträgt diese über den
Schnittstellen-Steuerabschnitt 116 an jede der Vorrichtungen.
-
Der
Faserkanal-Switch 120 verfügt über mehrere Ports 121.
Jeder der Ports 121 ist entweder mit dem Port 107 des
Hosts 100 oder dem Port 141 der Speichervorrichtung 130 verbunden.
Der Faserkanal-Switch 120 verfügt über einen Schnittstellen-Steuerabschnitt 123, über den
er auch mit dem IP-Netzwerk 175 verbunden ist. Der Faserkanal-Switch 120 wird
auf solche Weise verwendet, dass ein Host 100 oder mehrere,
die mit ihm verbunden sind, auf den Speicher 120 zugreifen
können. Physikalisch
können
alle mit dem Faserkanal-Switch 120 verbundenen Hosts auf
den mit diesem verbundenen Speicher 130 zugreifen. Auch
verfügt
der Faserkanal-Switch 120 über eine Zonenbildungsfunktion,
die Kommunikationsvorgänge
von einem speziellen Port an einen anderen speziellen Port einschränkt. Unter
Verwendung der Zonenbildungsfunktion kann z. B. die Übertragung
von Zugriffsanforderungen innerhalb des Faserkanal-Switchs 120 so kontrolliert
werden, dass Zugriffe auf einen speziellen Port 141 eines
speziellen Speichers 130 auf einen speziellen Host 100 beschränkt sind.
Es kann eines von verschiedenen Verfahren dazu verwendet werden,
eine Kombination aus einem Verbindungsquelle-Port und einem Verbindungsziel-Port
zu kontrollieren. Zu derartigen Verfahren gehören ein solches unter Verwendung
von Port-IDs, die den Ports 121 des Faserkanal-Switchs 120 zugeordnet
sind, sowie ein Verfahren unter Verwendung von WWNs (World Wide
Names), die den Ports 107 der jeweiligen Hosts 100 und
den Ports 141 der Speichervorrichtungen 130 zugeordnet
sind.
-
Die
Speichervorrichtung 130 verfügt über Clusterkonfiguration, genauer
gesagt, eine Konfiguration, bei der mehrere Protokolladapter 140,
mehrere Cacheadapter 150 und ein Verwaltungsadapter 160 wechselweise über ein
internes Netzwerk 170 verbunden sind.
-
Jeder
der Protokolladapter 140 ist mit mehreren Ports 141,
einem oder mehreren Steuerprozessoren 142, einem Speicher 143 und
einem Netzwerkcontroller 144 für Verbindung mit dem internen
Netzwerk 170 versehen. Der Protokolladapter 140 führt Verarbeitungsvorgänge wie
eine Verarbeitung zum Spezifizieren einer Zugriffsziel-Vorrichtung
für eine vom
Port 141 empfangene Eingabe/Ausgabe-Anforderung, eine Verarbeitung
zum übertragen
einer Eingabe/Ausgabe-Anforderung oder von Daten über das interne
Netzwerk 170 an einen geeigneten Cacheadapter 150 oder
einen geeigneten Protokolladapter 140 oder dergleichen
aus. In diesem Fall berechnet der Steuerprozessor 142 die
Nummer einer höheren Logikvorrichtung,
die die Speichervorrichtung 130 auf Grundlage einer Port-ID
und einer LUN (Logical Unit Number = Nummer einer Logikeinheit)
in der Eingabe/Ausgabe-Anforderung an den Host liefert, und er spezifiziert
einen geeigneten Cacheadapter 150 sowie die Nummer einer
niedrigeren Logikvorrichtung oder einen geeigneten Protokolladapter 140 und
die Nummer einer externen Vorrichtung, entsprechend zur höheren Logikvorrichtung.
Dann überträgt der Steuerprozessor 142 die
Eingabe/Ausgabe-Anforderung, die Information enthält, die
dazu erforderlich ist, die Nummer der spezifizierten niedrigeren
Logikvorrichtung oder die Nummer der spezifizierten externen Vorrichtung
zu berechnen, an den Cacheadapter 150 oder den Protokolladapter 140,
der spezifiziert wurde. Auch kann der Protokolladapter 140 über den
Port 141 mit einer anderen Speichervorrichtung wie der
externen Speichervorrichtung 180 verbunden werden, und
er kann Eingabe/Ausgabe-Anforderungen, die über einen anderen Protokolladapter 140 empfangen
werden, oder solche, die vom Cacheadapter 150 empfangen
werden, an eine externe Speichervorrichtung übertragen, so dass Daten in diese
geschrieben oder aus ihr gelesen werden können.
-
Es
ist zu beachten, dass bei der vorliegenden Ausführungsform als Ports, die mit
einer Faserkanal-Schnittstelle mit SCSI (Small Computer System Interface),
wobei es sich um ein höheres
Protokoll handelt, als Ports 141 angenommen sind. Jedoch können Ports
verwendet werden, die mit einer anderen Netzwerkschnittstelle zum
Verbinden von Speichern kompatibel sind, wie einer IP-Netzwerkschnittstelle
mit SCSI, wobei es sich um ein höheres
Protokoll handelt.
-
Der
Cacheadapter 150 verfügt über einen oder
mehrere Ports 156, ein oder mehrere Plattenlaufwerke 157,
die mit den jeweiligen Ports verbunden sind, einen oder mehrere
Steuerprozessoren 152, Speicher 153, die dem jeweiligen
Steuerprozessor entsprechen, einen oder mehrere Plattencaches 154,
einen oder mehrere Steuerspeicher 155 sowie einen Netzwerkcontroller 151,
der mit dem internen Netzwerk 170 verbunden ist.
-
Die
Steuerprozessoren 152 verarbeiten Eingabe/Ausgabe-Anforderungen
für die
Plattenlaufwerke 157 im selben Cacheadapter 150,
die über
das interne Netzwerk 170 vom Netzwerkcontroller 151 empfangen
werden. Auch dann, wenn die Speichervorrichtung 130 dafür sorgt,
dass mehrere Plattenlaufwerke 157, wie ein Plattenarray,
als eine oder mehrere Logikvorrichtungen für den Host 100 erscheinen,
wobei dafür
gesorgt ist, dass das Plattenlaufwerk 157 nicht als einzelnes
Plattenlaufwerk erscheint, verwaltet der Steuerprozessor 152 Korre lationen
zwischen den Logikvorrichtungen und den physikalischen Vorrichtungen
oder den Plattenlaufwerken 157, und er führt Verarbeitungsvorgänge wie eine
Verarbeitung zum Wandeln einer Zugriffsanforderung für eine Logikvorrichtung
in eine Zugriffsanforderung für
die physikalische Vorrichtung oder das Plattenlaufwerk 157 aus.
Ferner führt
der Steuerprozessor 153 eine Anzahl von Verarbeitungsvorgängen aus,
um Datenkopplungsfunktionen wie eine Datenkopierfunktion, eine Datenumordnungsfunktion
und dergleichen zu realisieren.
-
Der
Plattencache 154 kann vorab Daten speichern, die häufig aus
dem Plattenlaufwerk 157 gelesen werden, um die Verarbeitungsgeschwindigkeit
für Zugriffsanforderungen
vom Host 100 zu erhöhen,
oder er speichert vorübergehend
vom Host 100 empfangene Schreibdaten ein. Wenn eine Write-After-Verarbeitung
(asynchrone Bereitstellungsaufhebung) unter Verwendung des Plattencaches 154 ausgeführt wird,
anders gesagt, wenn eine Antwort auf eine Schreibanforderung an
den Host 100 zurückgeliefert
wird, nachdem vom Host 100 empfangene Schreibdaten im Plattencache 154 gespeichert
wurden, bevor sie jedoch tatsächlich
in das Plattenlaufwerk 157 geschrieben werden, kann die
Adaptierbarkeit des Plattencaches 154 vorzugsweise verbessert werden,
um zu verhindern, dass in ihn geschriebene Daten verlorengehen,
bevor sie in das Plattenlaufwerk 157 durchgeschrieben werden,
z. B. unter Verwendung eines nichtflüchtigen Speichers als Plattencache 154 mit
Batteriebackup, wobei Daten dupliziert werden, um die Widerstandsfähigkeit
gegen Störungen
hinsichtlich der Medien, oder dergleichen, zu verbessern.
-
Der
Steuerspeicher 155 speichert Information zum Verwalten
des Plattenlaufwerks 157, einer physikalischen Vorrichtung,
die aus mehreren kombinierten Plattenlaufwerken 157 besteht,
und Vorrichtungen (externen Vorrichtungen) in einer externen Speichervorrichtung 180,
die über
den Protokolladapter 140 mit der Speichervorrichtung 130 verbunden
ist, und/oder Information zum Verwalten von Korrelationen zwischen
den externen Vorrichtungen oder den physikalischen Vorrichtungen
und den niedrigeren Logikvorrichtungen. Wenn die im Steuerspeicher 155 gespeicherte
Steuerinformation verlorengeht, kann nicht mehr auf im Plattenlaufwerk 157 gespeicherte
Daten zugegriffen werden. Demgemäß ist der
Steuerspeicher 155 vorzugsweise mit einer Struktur zum
Verbessern seiner Adaptierbarkeit versehen, z. B. unter Verwendung
eines nichtflüchtigen Speichers
mit Batteriebackup, zum Duplizieren von Daten zum Verbessern der
Widerstandsfähigkeit
gegenüber
Störungen
hinsichtlich Medien oder dergleichen.
-
Die
Speichervorrichtung 130 gemäß der vorliegenden Ausführungsform
versorgt den Host 100 mit mehreren kombinierten Plattenlaufwerken 157, die
als einzelne physikalische Vorrichtung definiert sind, oder mehreren
physikalischen Vorrichtungen (anders gesagt, mehreren kombinierten
Plattenlaufwerken 157, die mit einer einzelnen physikalischen Vorrichtung
oder mehreren physikalischen Vorrichtungen korreliert sind), wobei
eine niedrigere Logikvorrichtung und eine höhere Logikvorrichtung einer jeweiligen
physikalischen Vorrichtung zugewiesen sind. Jedoch kann dafür gesorgt
werden, dass jedes der Plattenlaufwerke 157 dem Host 100 als
eine physikalische Vorrichtung erscheint, der eine niedrigere und
eine höhere
Logikvorrichtung zugewiesen sind. Auch können mehrere physikalische
Vorrichtungen mit einer oder mehreren niedrigeren Logikvorrichtungen
korreliert sein, oder es können
mehrere niedrigere Logikvorrichtungen mit einer oder mehreren höheren Logikvorrichtungen
korreliert sein.
-
Der
Verwaltungsadapter 160 verfügt über einen oder mehrere Steuerprozessoren 162,
einen oder mehrere Speicher 163, die jeweils einem Steuerprozessor
entsprechen, einen oder mehrere Steuerspeicher 164, eine
Speichereinrichtung 165, einen mit dem internen Netzwerk 170 verbundenen
Netzwerkcontroller 161 und einen Schnittstellen-Steuerabschnitt 166.
Durch Lesen von in der Speichereinrichtung 165, wie einem
Festplattenlaufwerk gespeicherten Steuerprogrammen in den Speicher 163 und durch
Ausführen
derselben durch den Steuerprozessor 162 werden vorbestimmte
Verarbeitungsvorgänge
zum Verwalten der Konfiguration der Speichervorrichtungen 130 und
zur Störungsverwaltung
ausgeführt.
Der Steuerprozessor 162 überträgt Konfigurationsinformation,
wie sie dem Speicherverwaltungs-Administrator darzubieten ist, an
das über
den Schnittstellen-Steuerabschnitt 166 angeschlossene Serviceterminal 190,
er empfängt
von diesem Wartungs/Verwaltungs-Anweisungen,
wie sie vom Speicherverwaltungs-Administrator über das Serviceterminal 190 eingegeben
werden, und er ändert
die Konfiguration der Speichervorrichtung 130 entsprechend
den empfangenen Anweisungen. Die Konfigurationsinformation der Speichervorrichtung 130 wird im
Steuerspeicher 164 gespeichert. Der Steuerprozessor 162 des
Protokolladapters 140 oder der Steuerprozessor 152 des
Cacheadapters 150 kann auf die Konfigurationsinformation
im Steuerspeicher 164 Bezug nehmen oder sie aktualisieren,
so dass Konfigurationsinformation unter den Protokolladaptern und
den Cacheadaptern innerhalb der Speichervorrichtung 130 gemeinsam
genutzt werden kann. Wenn der Verwaltungsadapter 160 aufgrund
einer bestimmten Störung
betriebsunfähig
wird, kann auf die gesamte Speichervorrichtung 130 nicht
mehr zugegriffen werden. Aus diesem Grund ist jede der Komponenten
innerhalb des Verwaltungsadapters 160 vorzugsweise doppelt
vorhanden, und innerhalb der Speichervorrichtung 130 sind
vorzugsweise mehrere Verwaltungsadapter 160 vorhanden,
um den Verwaltungsadapter 160 selbst zu duplizieren. Alternativ kann
zusätzlich
eine Schnittstelle I/F auf einen oder mehrere Cacheadapter 150 vom
Serviceterminal 190 vorhanden sein, und der durch den Verwaltungsadapter 160 ausgeführte Steuerungsvorgang
kann unterteilt werden und vom Cacheadapter 150 und vom Serviceterminal
gemeinsam bewerkstelligt werden, so dass der Verwaltungsadapter 160 nur
aus dem Steuerspeicher 164 bestehen kann. Ferner kann Information
im Steuerspeicher 164 im Steuerspeicher 155 eines
oder mehrerer Cacheadapter 150 aufbewahrt werden, so dass
der Verwaltungsadapter 160 weggelassen werden kann.
-
Das
interne Netzwerk 170 verbindet den Protokolladapter 140,
den Cacheadapter 150 und den Verwaltungsadapter 160,
und es führt
das Senden und Empfangen von Daten, Steuerinformation und Konfigurationsinformation
zwischen den oben genannten Abschnitten aus. Mittels des internen
Netzwerks 170 kann der Verwaltungsadapter 160 Konfigurationsinformation
der Speichervorrichtung 130 an die innerhalb derselben
vorhandenen Protokolladapter 140 und Cacheadapter 150 verteilen,
und er kann die Konfiguration der Speichervorrichtung 130 dadurch
verwalten, dass er Konfigurationsinformation von den Protokolladaptern
und den Cacheadaptern 160 erhält. Auch kann der Host 100,
da das interne Netzwerk 170 Zugriffanforderungen zwischen
den Protokolladaptern 140 und den Cacheadaptern 150 überträgt, auf
eine beliebige der niedrigeren Logikvorrichtungen irgendeines der
Cacheadapter 150 über
irgendeinen der Ports 141 zugreifen. Es wird darauf hingewiesen,
dass das interne Netzwerk vorzugsweise angesichts der Verbesserung
der Adaptierbarkeit dupliziert wird.
-
Das
Serviceterminal 190 verfügt über eine CPU 192,
einen Arbeitsspeicher 193, einen Speicher 194,
einen mit dem Verwaltungsadapter 160 verbundenen Schnittstellen-Steuerabschnitt 191,
einen mit dem IP-Netzwerk 175 verbundenen Schnittstellen-Steuerabschnitt 157,
eine Eingabevorrichtung 195, die Eingaben des Speicherverwaltungs-Administrators
empfängt,
und eine Ausgabevorrichtung wie ein Display 196, das Konfigurationsinformation und
Verwaltungsinformation zur Speichervorrichtung 130 an den
Speicherverwaltungs-Admini strator ausgibt. Die CPU 192 liest
im Speicher 194 gespeicherte Speicherverwaltungsprogramme
in den Arbeitsspeicher 193 aus, und sie führt diese
aus, um dadurch auf Konfigurationsinformation, Anweisungs-Konfigurationsinformation
und Anweisungsoperationen zu speziellen Funktionen Bezug zu nehmen.
Die CPU 192 fungiert als Schnittstelle zur Wartung und
Verwaltung der Speichervorrichtung 130 zwischen dem Speicherverwaltungs-Administrator
oder dem Verwaltungsserver 110 und der Speichervorrichtung 130.
-
Es
wird darauf hingewiesen, dass das Serviceterminal 190 weggelassen
werden kann und die Speichervorrichtung 130 direkt mit
dem Verwaltungsserver 110 verbunden werden kann, wobei
sie unter Verwendung der in diesem gespeicherten Verwaltungssoftware
direkt verwaltet wird.
-
Die
externe Speichervorrichtung 180 verfügt über einen oder mehrere Ports 181,
die mit den Ports 141 der Protokolladapter 140 der
Speichervorrichtung 130 verbunden sind, einen Steuerprozessor 182,
einen Arbeitsspeicher 183, einen Plattencache 184,
ein oder mehrere Plattenlaufwerke 186 sowie einen oder
mehrere Ports 185, die mit den entsprechenden Plattenlaufwerken
verbunden sind. Der Steuerprozessor 182 führt im Arbeitsspeicher 183 gespeicherte
Programme aus, um dadurch an den Ports 181 empfangene Eingabe/Ausgabe-Anforderungen
für die
Plattenlaufwerke 186 zu verarbeiten. Bei der vorliegenden
Ausführungsform
verfügt
die externe Speichervorrichtung 180 über keine Clusterkonfiguration,
sondern sie besteht aus einer Speichervorrichtung mit einer Konfigurationsgröße, die kleiner
als die der Speichervorrichtung 130 ist. Jedoch kann die
externe Speichervorrichtung 180 aus einer Speichervorrichtung
mit derselben Konfiguration und derselben Größe wie denen der Speichervorrichtung 130 bestehen.
-
Auch
sind bei der in der 1 dargestellten vorliegenden
Ausführungsform
die Ports 141 der Speichervorrichtungen 130 und
die Ports 181 der externen Speichervorrichtungen 180 direkt
miteinander verbunden. Jedoch können,
wie es in der 17 dargestellt ist, die Ports 141 und
die Ports 181 über
den Faserkanal-Switch 120, der den Host 100 und
die Speichervorrichtung 130 verbinden, oder einen anderen
unabhängigen
Faserkanal-Switch verbunden sein. Jedoch wird in diesem Fall vorzugsweise
für eine
Zoneneinstellung im Faserkanal-Switch 120 gesorgt, um direkte
Zugriffe vom Host 100 auf die externen Speichervorrichtungen 180 zu
verhindern. Auch kann die externe Speichervorrichtung 180 eine
Plattenarrayvorrichtung mit einem Plattencache 184 sein,
wie die in der 17 dargestellte externe Speichervorrichtung 180a,
oder sie kann eine Gruppe einzelner Plattenlaufwerke sein, wie JBOD
(Just A Bunch Of Disks), die über
keinen Plattencache oder Steuerprozessor verfügt, wie die in der 17 dargestellte
externe Speichervorrichtung 180b.
-
Als
Nächstes
wird die Softwarekonfiguration der Speichervorrichtung 130 gemäß einer
Ausführungsform
der Erfindung beschrieben. Die 2 zeigt
ein Beispiel einer Softwarekonfiguration von Steuerinformation und
eines Programms für
Speichersteuerungs-Verarbeitungsvorgänge, wie sie in der Speichervorrichtung 130 und
dem Steuerspeicher des Serviceterminals 190 gespeichert
sind.
-
In
der folgenden Beschreibung werden der Einfachheit halber der Protokolladapter 140 als
PA (Protocol Adaptor), der Cacheadapter 150 als CA (Cache
Adaptor), der Verwaltungsadapter 160 als MA (Management
Adaptor) und das Serviceterminal 190 als SA (Service Terminal)
abgekürzt.
-
Auch
verfügt,
gemäß der vorliegenden
Ausführungsform,
die Speichervorrichtung 130 über die folgende Vorrichtungshie rarchie:
In jedem CA 150 ist ein Plattenarray aus mehreren Plattenlaufwerken 157 ausgebildet,
das durch den CA 150 als physikalischer Vorrichtung verwaltet
wird. Eine externe Vorrichtung, die eine Logikvorrichtung der mit
dem PA 140 verbundenen externen Speichervorrichtung 180 ist,
wird vom PA 140 erkannt und dann vom MA 160 verwaltet.
Im CA 150 ist jeder innerhalb desselben CA existierenden
physikalischen Vorrichtung oder jeder externen Vorrichtung, auf
die mittels desselben CA zugegriffen wird (anders gesagt, korreliert
der CA 150 jede physikalische Vorrichtung oder eine externe Vorrichtung
mit einer niedrigeren Logikvorrichtung) eine niedrigere Logikvorrichtung
zugewiesen. Die niedrigere Logikvorrichtung ist eine innerhalb jedes CA 150 verwaltete
Logikvorrichtung, und ihre Nummer wird in jedem CA 150 unabhängig verwaltet.
Die niedrigere Logikvorrichtung wird durch den MA 160 mit
einer höheren
Logikvorrichtung korreliert, und sie wird für den Host 100 als
Vorrichtung innerhalb der Speichervorrichtung 130 bereitgestellt.
Anders gesagt, erkennt der Host 100 eine höhere Logikvorrichtung
der Speichervorrichtung 130, und er greift unter Verwendung
der Information zum Identifizieren einer höheren Logikvorrichtung auf
die Daten zu, die in der Speichervorrichtung 130 oder der
externen Speichervorrichtung 180 gespeichert sind.
-
Als
Konfigurations-Verwaltungsinformation der Speichervorrichtung 130 sind
Verwaltungsinformation 201 für eine niedrigere Logikvorrichtung,
Verwaltungsinformation 202 für eine physikalische Vorrichtung
sowie Cache-Verwaltungsinformation 203 im Steuerspeicher 155 des
CA 150 gespeichert, und Verwaltungsinformation 204 für eine höhere Logikvorrichtung,
Verwaltungsinformation 205 für eine externe Vorrichtung
und LU-Pfad-Verwaltungsinformation 206 sind im Steuerspeicher 164 des
MA 160 gespeichert.
-
Die 3 zeigt
ein Beispiel der Verwaltungsinformation 204 für eine höhere Logikvorrichtung. Diese
Verwaltungsinformation 204 für eine höhere Logikvorrichtung beinhaltet,
für jede
höhere
Logikvorrichtung, einen Informationssatz, der von einer Nummer 31 einer
höheren
Logikvorrichtung bis zu einer Nummer 38 einer entsprechenden
externen Vorrichtung reicht. Es ist zu beachten, dass ein Umkonfigurations-Verwaltungszeiger 39 in
der 3 Information darstellt, wie sie bei der zweiten
Ausführungsform
verwendet wird. Bei der ersten Ausführungsform muss die Verwaltungsinformation 204 für eine höhere Logikvorrichtung
keinen Umkonfigurations-Verwaltungszeiger 39 enthalten.
-
Die
Nummer 31 der höheren
Logikvorrichtung ist eine Nummer, die der MA 160 der höheren Logikvorrichtung
zuweist, um sie zu identifizieren. Die Größe 32 speichert die
Kapazität
der höheren
Logikvorrichtung, die durch die Nummer 31 einer höheren Logikvorrichtung
spezifiziert ist. Ein Feld 33 zu einer entsprechenden CA-Nummer
und der Nummer einer niedrigeren Logikvorrichtung speichert die Nummer
derjenigen niedrigeren Logikvorrichtung, die mit der höheren Logikvorrichtung
korreliert, wie die Nummer des CA, zu dem die niedrigere Logikvorrichtung
gehört.
Wenn keine höhere
Logikvorrichtung definiert ist, wird als Eintrag im Feld 33 zur
Nummer des entsprechenden CA und zur Nummer der niedrigeren Logikvorrichtung
ein ungültiger
Wert eingetragen. Es ist zu beachten, dass die Nummer der niedrigeren
Logikvorrichtung eine Eintragsnummer in der Verwaltungsinformation 201 für eine niedrigere
Logikvorrichtung ist, wie sie im CA aufbewahrt wird, der die niedrigere
Logikvorrichtung verwaltet. Ein Vorrichtungszustand 34 speichert
Information, der den Zustand der höheren Logikvorrichtung anzeigt.
Der Zustand kann "on-line", off-line", "nicht vorhanden" oder "off-line-Störung" sein. Der Zustand "on-line" kennzeichnet einen
Zustand, in dem die höhere
Logikvorrichtung normalerweise arbeitet und in dem ein Host 100 auf
sie zugreifen kann. Der Zustand "off-line" zeigt einen Zustand
an, in dem die höhere Logikvorrichtung
definiert ist und normal arbeitet, jedoch aus einem bestimmten Grund,
weil z. B. kein LU-Pfad definiert ist, nicht von einem Host 100 auf
sie zugegriffen werden kann. Der Zustand "nicht vorhanden" kennzeichnet einen Zustand, in dem
die höhere Logikvorrichtung
nicht definiert ist und von einem Host 100 nicht auf sie
zugegriffen werden kann. Der Zustand "off-line-Störung" kennzeichnet einen Zustand, bei dem
in der höheren
Logikvorrichtung eine Störung
auftrat und ein Host 100 nicht auf sie zugreifen kann.
Bei der vorliegenden Ausführungsform
wird der Einfachheit der Beschreibung halber angenommen, dass vor
dem Versand des Erzeugnisses aus der Fabrik niedrigere Logikvorrichtungen
physikalischen Vorrichtungen, wie sie in den Plattenlaufwerken 157 ausgebildet
sind, zugewiesen werden, und diesen niedrigen Logikvorrichtungen
höhere
Logikvorrichtungen zugewiesen werden. Aus diesem Grund ist der Anfangswert
des Vorrichtungszustands 34 für jede höhere Logikvorrichtung, die
einer entsprechenden niedrigeren Logikvorrichtung zugewiesen wurde, "off-line", und der Anfangswert
des Vorrichtungszustands 34 für höhere Logikvorrichtungen, die
nicht die obigen sind, ist "nicht
vorhanden", da sie nicht
definiert sind.
-
Portnummer
in einem Feld 35 entspricht Information, die anzeigt, welcher
der mehreren Ports 141 mit der höheren Logikvorrichtung verbunden
ist, anders gesagt, Portkennungsinformation zu einem Port für Zugriff
auf die höhere
Logikvorrichtung. Die Portkennungsinformation ist eine eindeutige
Zahl, die jedem der Ports 141 innerhalb der Speichervorrichtung 130 zugewiesen
ist, und der Eintrag 35 zeichnet die Nummer des Ports 141 für die höhere Logikvorrichtung
mit der zugehörigen
definierten LUN auf. Auch sind Ziel-ID und LUN, wie sie im Eintrag 35 gespeichert
sind, Kennungen zum Kennzeichnen der höheren Logikvorrichtung. Bei
der vorliegenden Ausführungsform
werden die SCSI-ID, die für
Zugriff auf eine Vorrichtung von einem Hostcomputer an einer SCSI
verwendet wird, und LUN als Kennungen zum Kennzeichnen einer höheren Logikvorrichtung
verwendet.
-
Zugriffshostname 36 ist
ein Hostname der einen Host 100 kennzeichnet, der auf die
höhere
Logikvorrichtung zugreifen darf. Als Hostname kann irgendein Wert
verwendet werden, wenn er jeden Host 100 oder jeden Port 107 eindeutig
kennzeichnen kann, wie z. B. ein WWN (World Wide Name), der an einen
Port 107 eines Hosts 100 vergeben wird. Außerdem kann
die Speichervorrichtung 130 Verwaltungsinformation speichern,
die Attribute von WWNs der jeweiligen Ports 141 betrifft.
-
Vorrichtungszugriffsmodul 37 speichert
einen Wert "über CA" oder "PA direkt", was eine Verarbeitungskonfiguration
einer Eingabe/Ausgabe-Anforderung an die höhere Logikvorrichtung kennzeichnet. Der
Wert "über CA" wird eingetragen,
wenn die höhere
Logikvorrichtung nicht mit einer externen Vorrichtung korreliert
ist oder wenn sie zwar mit einer externen Vorrichtung korreliert
ist, jedoch für
eine Eingabe/Ausgabe-Anforderung
an sie eine Eingabe/Ausgabe-Verarbeitung durch den CA 150 ausgeführt werden
muss. Der Wert "PA
direkt" wird eingetragen, wenn
die höhere
Logikvorrichtung mit einer externen Vorrichtung korreliert ist und
Eingabe/Ausgabe-Anforderungen direkt über den PA 140 übertragen
werden können,
ohne dass der CA 150 durchlaufen wird.
-
Wenn
die höhere
Logikvorrichtung mit einer externen Vorrichtung korreliert ist,
ist in Nummer 38 der entsprechenden externen Vorrichtung
eine Kennzahl der externen Vorrichtung eingetragen, während ein
ungültiger
Wert eingetragen ist, wenn keine Korrelation mit einer externen
Vorrichtung besteht.
-
Die 4 zeigt
ein Beispiel der LU-Pfad-Verwaltungsinformation 206. Diese
enthält
Information zu einer effektiven LUN (Logical Unit Number), wie sie
für jeden
der Ports 141 des PA 140 innerhalb der Speichervorrichtung 130 definiert
ist. Ziel-ID/LUN 41 speichert die Adresse einer LUN, wie
sie für
jeden Port 141 definiert (zugewiesen) ist. Nummer 42 der entsprechenden
höheren
Logikvorrichtung speichert die Nummer derjenigen höheren Logikvorrichtung, der
die LUN zugewiesen ist. Zugriffshostname 43 speichert Information,
die den Host 100 kennzeichnet, der auf die LUN zugreifen
darf, wie sie für
den Port 141 definiert ist. Als den Host 100 kennzeichnende
Information kann z. B. eine WWN verwendet werden, wie sie für jeden
Port 107 des Hosts 100 vergeben ist.
-
Es
können
die LUNs mehrerer Ports 141 für eine höhere Logikvorrichtung definiert
(dieser zugewiesen) sein, und auf die höhere Logikvorrichtung kann über die
mehreren Ports 141 zugegriffen werden. In diesem Fall enthält Zugriffshostname 36 der Verwaltungsinformation 204 für die höhere Logikvorrichtung
einen Summensatz von Zugriffshostnamen 43 der LU-Pfad-Verwaltungsinformation 206 für die jeweiligen
LUNs der mehreren Ports 141.
-
Die 5 zeigt
ein Beispiel der Verwaltungsinformation 201 für eine niedrigere
Logikvorrichtung. Jeder CA 150 enthält, für jede der zu ihm gehörenden niedrigeren
Logikvorrichtung, einen Satz von Information als Verwaltungsinformation
für diese
niedrigere Logikvorrichtung, mit einer Nummer 51 für die niedrigere
Logikvorrichtung bis zu einer Nummer 55 für die entsprechende
höhere
Logikvorrichtung. Es wird darauf hingewiesen, dass ein Umkonfigurations-Verwaltungszeiger 56 in
der 5 Information darstellt, wie sie bei der zweiten
Ausführungsform verwendet
wird. Bei der ersten Ausführungsform
ist es für
den jeweiligen CA 150 nicht erforderlich, einen Umkonfigurations-Verwaltungszeiger 56 als
Teil der Information für
die niedrigere Logikvorrichtung zu speichern.
-
Die
Nummer 51 der Niedrigeren Logikvorrichtung registriert
eine Kennzahl zum Kennzeichnen einer niedrigeren Logikvorrichtung.
Größe 52 speichert
die Kapazität
der Niedrigeren Logikvorrichtung, wie sie durch diese Zahl spezifiziert
wird.
-
Nummer 53 der
entsprechenden Physikalischen/Externen Vorrichtung speichert die
Kennzahl einer physikalischen Vorrichtung innerhalb des CA 150,
der die niedrigere Logikvorrichtung verwaltet, oder die Kennzahl
einer externen Vorrichtung, die innerhalb der externen Speichervorrichtung 180 existiert,
die mit der niedrigeren Logikvorrichtung korreliert ist. Wenn der
niedrigeren Logikvorrichtung keine physikalische oder externe Vorrichtung
zugewiesen ist, wird im Eintrag 53 ein ungültiger Wert
eingetragen. Es wird darauf hingewiesen, dass die im Eintrag 53 registrierte
Vorrichtungsnummer die Eintragsnummer betreffend die Verwaltungsinformation 202 für eine physikalische
Vorrichtung sein kann, wie sie im CA 150 gespeichert ist,
der die niedrigere Logikvorrichtung verwaltet, oder die Eintragsnummer
der durch den MA gespeicherten Verwaltungsinformation 205 für eine externe
Vorrichtung.
-
Vorrichtungszustand 54 enthält Information (d.
h. einen Wert), der den Zustand der niedrigeren Logikvorrichtung
anzeigt. Die Werte können
dieselben wie die beim Vorrichtungszustand 34 in der Verwaltungsinformation 204 für eine höhere Logikvorrichtung
sein, und daher wird ihre Beschreibung weggelassen. In Nummer 55 der
entsprechenden Höheren
Logikvorrichtung ist die Nummer derjenigen höheren Logikvorrichtung eingetragen,
die mit der niedrigeren Logikvorrichtung in Korrelation steht.
-
Die 6 zeigt
ein Beispiel der Verwaltungsinformation 202 für eine physikalische
Vorrichtung zum Verwalten physikalischer Vorrichtungen, die aus den
Plattenlaufwerken 157 bestehen, innerhalb des CA 150.
Jeder CA 150 enthält,
für jede
der in ihm existierenden physikalischen Vorrichtungen, eine Gruppe
von Informationen, die die Nummer 61 der Physikalischen
Vorrichtung bis zu Größe auf der
Platte 69 enthält.
-
Nummer 61 für eine Physikalische
Vorrichtung registriert eine Kennzahl zum Kennzeichnen einer physikalischen
Vorrichtung. Größe 62 speichert die
Kapazität
der physikalischen Vorrichtung, die durch die Nummer 61 für eine Physikalische
Vorrichtung spezifiziert ist. Nummer 63 der entsprechenden Niedrigeren
Logikvorrichtung speichert die Nummer der niedrigeren Logikvorrichtung,
die vom CA 150 verwaltet wird, mit dem die physikalische
Vorrichtung korreliert ist und zu der sie gehört. Wenn die physikalische
Vorrichtung einer niedrigeren Logikvorrichtung zugeordnet ist, ist
im Eintrag 63 ein ungültiger
Wert eingetragen.
-
Vorrichtungszustand 64 enthält Information, die
den Zustand der physikalischen Vorrichtung anzeigt. Der Zustand
kann "on-line", "off-line", "nicht vorhanden" und "off-line-Störung" sein. Der Zustand "on-line" kennzeichnet einen
Zustand, in dem die physikalische Vorrichtung normal arbeitet und
sie einer niedrigeren Logikvorrichtung zugewiesen ist. Der Zustand "off-line" kennzeigt einen
Zustand an, in dem die physikalische Vorrichtung definiert ist und
normal arbeitet, sie jedoch keiner niedrigeren Logikvorrichtung
zugewiesen ist. Der Zustand "nicht
vorhanden" kennzeichnet
einen Zustand, in dem die physikalische Vorrichtung im Plattenlaufwerk 157 nicht
definiert ist. Der Zustand "off-line-Störung" kennzeichnet einen
Zustand, in dem in der physikali schen Vorrichtung eine Störung aufgetreten
ist, wobei sie keiner niedrigeren Logikvorrichtung zugewiesen werden kann.
Bei der vorliegenden Ausführungsform
ist der Einfachheit der Beschreibung halber angenommen, dass vor
dem Versand aus der Fabrik physikalische Vorrichtungen vorab in
den Plattenlaufwerken 157 ausgebildet werden, und sie niedrigeren
Logikvorrichtungen zugewiesen werden. Aus diesem Grund ist der Anfangswert
des Vorrichtungszustands 64 für jede verwendbare physikalische
Vorrichtung "off-line", und der Anfangswert
des Vorrichtungszustands 34 für andere physikalische Vorrichtungen
als die vorstehenden ist "nicht
vorhanden".
-
RAID-Konfiguration 65 enthält Information betreffend
die RAID-Konfiguration wie das RAID-Niveau und die Anzahl der Datenplatten
und der Paritätsplatten
der Plattenlaufwerke 157, denen die physikalische Vorrichtung
zugeordnet ist. In ähnlicher Weise
enthält
Streifengröße 66 die
Länge einer
Datenteileinheit (Streifen) in der RAID-Konfiguration. Plattennummernliste 67 enthält Kennzahlen
mehrerer Plattenlaufwerke 157, die eine RAID-Konfiguration
aufbauen, der die physikalische Vorrichtung zugeordnet ist. Die
Kennzahlen der Plattenlaufwerke 157 sind eindeutige Werte,
die vergeben sind, um sie jeweils innerhalb des CA 150 zu
kennzeichnen. Start-Offset-auf-der-Platte 68 und Größe-auf-der-Platte 69 speichern
Information, die anzeigt, welchem Bereich innerhalb jeder der Plattenlaufwerke 157 die
physikalische Vorrichtung zugeordnet ist. Bei der vorliegenden Ausführungsform sind
der Einfachheit der Beschreibung halber der Offset und die Größe in jedem
der Plattenlaufwerke 157, die die RAID-Konfiguration aufbauen,
für alle
physikalischen Vorrichtungen gleich.
-
Die 7 ist
ein Beispiel der Verwaltungsinformation 205 für eine externe
Vorrichtung zum Verwalten von Vorrichtungen innerhalb der externen Speichervorrichtung 180,
die mit der Speichervorrichtung 130 verbunden ist, wobei
Korrelation zu höheren
Logikvorrichtungen der Speichervorrichtung 130 oder sowohl
zu höheren
als auch zu niedrigeren Logikvorrichtungen besteht. Der MA 160 der
Speichervorrichtung 130 enthält für jede der innerhalb der externen
Speichervorrichtung 180 existierenden externen Vorrichtungen
einen Satz von Informationen, zu der die Nummer 71 einer
externen Vorrichtung bis Eine Liste 79 der Zielport-ID/Ziel-ID/LUN
gehören. Die
Nummer 71 einer externen Vorrichtung speichert einen eindeutigen
Wert innerhalb der Speichervorrichtung 130, der durch den
MA 160 derselben jeder externen Vorrichtung zugewiesen
wird. Größe 72 speichert
die Kapazität
der externen Vorrichtung, die durch die Nummer 71 für eine Externe
Vorrichtung spezifiziert ist.
-
Nummer 73 der
entsprechenden Höheren Logikvorrichtung
registriert die Nummer derjenigen höheren Logikvorrichtung innerhalb
der Speichervorrichtung 130, die mit der externen Vorrichtung
korreliert ist. Nummer 74 des entsprechenden CA/der Niedrigeren
Logikvorrichtung speichert die Nummer des CA der Speichervorrichtung 130,
die mit der externen Vorrichtung korreliert und Zugriffsanforderungen
zu einem Host an die externe Vorrichtung verarbeitet, sowie die
Nummer einer niedrigeren Logikvorrichtung, die mit der externen
Vorrichtung korreliert ist. Wenn der externen Vorrichtung keine
höhere
oder niedrigere Logikvorrichtung zugeordnet ist, wird als Eintrag 73 oder
Eintrag 74 ein ungültiger
Wert eingetragen.
-
Vorrichtungszustand 75 enthält Information, die
den Zustand der externen Vorrichtung anzeigt. Der Zustand kann auf
dieselbe Weise wie der Vorrichtungszustand 62 innerhalb
der Verwaltungsinformation 202 für eine physikalische Vorrichtung
definiert sein. Da die Speichervorrichtung 130 im Anfangszustand
mit keinerlei externer Vorrichtung 180 verbun den ist, ist
der Anfangswert von Vorrichtungszustand 75 "nicht vorhanden". Speicherkennung 76 enthält Kennungsinformation
zum Identifizieren derjenigen externen Speichervorrichtung 180,
in der die externe Vorrichtung untergebracht ist. Als Speicherkennungsinformation
kann eine Kombination aus Kennungsinformation des Verkäufers und
einer Herstell-Seriennummer,
wie sie vom Verkäufer
dem Speicher eindeutig zugewiesen wird, verwendet werden. Vorrichtungsnummer
im Externen Speicher 77 speichert eine Vorrichtungskennzahl,
wie sie jeder externen Vorrichtung durch die externe Speichervorrichtung 180 zugewiesen
wird, in der die externe Vorrichtung montiert ist. Es ist zu beachten,
dass die externe Vorrichtung eine Logikvorrichtung der externen Speichervorrichtung 180 ist,
weswegen der Eintrag 77 die Logikvorrichtungsnummer der
externen Speichervorrichtung 180 speichert.
-
Liste 78 einer
PA-Nummer/Initiatorport speichert die Kennzahl jedes der Ports 141 der
Speichervorrichtung 130, die auf die externe Vorrichtung
zugreifen können,
sowie die Kennzahl des PA 140, zu dem die Ports gehören. Wenn
durch mehrere Ports 141 auf die externe Vorrichtung zugegriffen
werden kann, sind im Eintrag 78 mehrere Portkennzahlen und
mehrere PA-Kennzahlen registriert.
-
Wenn
die externe Vorrichtung mit einer LUN definiert ist, um eine Korrelation
zu einem oder mehreren Ports 181 der externen Speichervorrichtung 180 zu
erstellen, enthält
Liste 79 von Zielport-ID/Ziel-ID/LUN einen oder mehrere
Port-IDs dieser Ports 181 sowie eine oder mehrere Ziel-IDs/LUNs,
denen die externe Vorrichtung zugeordnet ist. Wenn ein PA 140 der
Speichervorrichtung 130 auf eine externe Vorrichtung zugreift
(wenn ein PA 140 eine Eingabe/Ausgabe-Anforderung an eine externe
Vorrichtung überträgt), werden
Ziel-ID und LUN, wie sie durch die externe Speichervorrichtung 180,
zu der die externe Vorrichtung gehört, der letzteren zugewiesen werden,
als Information zum Kennzeichnen der externen Vorrichtung verwendet.
-
Als
Nächstes
werden unter erneuter Bezugnahme auf die 2 Information
und Programme, wie sie im Arbeitsspeicher 143 innerhalb
des PA 140, im Arbeitsspeicher 153 innerhalb des
CA 150 und im Arbeitsspeicher 163 innerhalb des
MA 160 der Speichervorrichtung 130 gespeichert
sind, sowie Information und Programme, wie sie im Arbeitsspeicher 193 innerhalb
des ST 190 gespeichert sind, beschrieben.
-
Auf
die in den Steuerspeichern 155 und 164 innerhalb
des CA 150 und des MA 160 gespeicherte Steuerinformation
kann durch den jeweiligen Steuerprozessor innerhalb des CA 150,
des PA 140 und des MA 160 zugegriffen werden,
und sie kann durch sie aktualisiert werden. Jedoch sind in diesem
Fall Zugriffe über
das interne Netzwerk 170 oder dergleichen erforderlich.
Demgemäß werden,
um das Funktionsvermögen
bei der Verarbeitung zu verbessern, Kopien von Steuerinformation,
die für
Verarbeitungsvorgänge
benötigt
werden, wie sie von jedem der Steuerprozessoren ausgeführt werden,
in den Arbeitsspeichern der relevanten Abschnitte (d. h. CA, PA
oder MA) aufbewahrt. Wenn durch irgendeinen dieser Abschnitte verwaltete
Steuerinformation aufgrund einer Konfigurationsänderung aktualisiert wird, teilt
der relevante Abschnitt dies den anderen Abschnitten über das
interne Netzwerk 170 mit, und die jüngste Information wird vom
Steuerspeicher des relevanten Abschnitts an die Arbeitsspeicher
der anderen Abschnitte geliefert. Es ist zu beachten, dass dann,
wenn Steuerinformation in einem Abschnitt aktualisiert wird, irgendein
anderes Verfahren dazu verwendet werden kann, eine derartige Aktualisierung an
die anderen Abschnitte mitzuteilen. Zum Beispiel kann in einem Steuerspeicher
für jeden
der Abschnitte ein Flag vorhanden sein, um anzuzeigen, ob für jede Konfigurationsinformation
im Steuerspeicher eine Aktualisie rung erfolgte, und jeder der Steuerprozessoren
in den jeweiligen Abschnitten kann auf das Flag Bezug nehmen, um
zu prüfen,
ob irgendeine Aktualisierung erfolgte, was jedesmal dann erfolgt, wenn
ein Verarbeitungsvorgang gestartet wird oder auf jeweilige Konfigurationsinformation
Bezug genommen wird.
-
Es
wird darauf hingewiesen, dass Steuerprogramme, wie sie auf den Steuerprozessoren
der jeweiligen Abschnitte laufen, in jeweiligen Arbeitsspeichern
der entsprechenden Abschnitte gespeichert sind, zusätzlich zu
den oben beschriebenen Kopien der Steuerinformation.
-
Bei
der vorliegenden Ausführungsform
werden nachfolgend Verfahren zum Steuern der Speichervorrichtung 130 und
der externen Speichervorrichtung 180 beschrieben, wobei
als Beispiele eine Verarbeitung zum Definieren externer Vorrichtungen, wie
sie innerhalb der externen Speichervorrichtung 180 existieren,
als Logikvorrichtungen der Speichervorrichtung 130, anders
gesagt, eine Verarbeitung zum Definieren von Logikvorrichtungen
und LU-Pfaden, sowie eine Verarbeitung zum Verarbeiten von Eingabe/Ausgabe-Anforderungen
vom Hostcomputer an die Logikvorrichtungen der Speichervorrichtung 130 mit
den so definierten externen Vorrichtungen verwendet werden.
-
Im
Arbeitsspeicher jedes der jeweiligen Abschnitte für die oben
beschriebenen Verarbeitungsvorgänge
sind zumindest die folgende Steuerinformation und Programme gespeichert.
Der Arbeitsspeicher 143 des PA 140 speichert eine
Kopie 240 der Verwaltungsinformation für eine höhere Logikvorrichtung, eine
Kopie 215 der Verwaltungsinformation für eine externe Vorrichtung,
eine Kopie 216 der LU-Pfad-Verwaltungsinformation, ein
Anforderungsumschaltprogramm 251, ein Programm 253 zum
Definieren einer externen Vorrichtung (Logikvorrichtung) sowie ein
LU-Pfad-Definierprogramm 252. Der Arbeitsspeicher 153 des
CA 150 speichert eine Kopie 211 der Verwaltungsinformation
für eine
niedrigere Logikvorrichtung, eine Kopie 212 der Verwaltungsinformation
für eine
physikalische Vorrichtung, eine Kopie 215 der Verwaltungsinformation
für eine
externe Vorrichtung, ein Befehlsverarbeitungsprogramm 254, ein
Logikvorrichtungs-Definitionsprogramm 255, ein Programm 257 zur
asynchronen Bereitstellungsaufhebung sowie ein Pfadumkonfigurierprogramm 256 für eine externe
Vorrichtung. Der Arbeitsspeicher 153 des MA 160 speichert
eine Kopie 210 der Verwaltungsinformation für die gesamte
Vorrichtung (anders gesagt, die Verwaltungsinformation für eine höhere Logikvorrichtung,
die Verwaltungsinformation für
eine niedrigere Logikvorrichtung, die Verwaltungsinformation für eine physikalische
Vorrichtung und die Verwaltungsinformation für eine externe Vorrichtung), ein
Logikvorrichtungs-Definitionsprogramm 255, ein LU-Pfad-Definitionsprogramm 252,
ein Definitionsprogramm 253 für eine externe Vorrichtung
sowie ein Pfad-Umkonfigurierprogramm 256 für eine externe Vorrichtung.
Der Arbeitsspeicher 193 des ST 190 speichert eine
Kopie 21 der Verwaltungsinformation für die gesamte Vorrichtung,
ein Logikvorrichtungs-Definitionsprogramm 255, ein LU-Pfad-Definitionsprogramm 252 und
ein Definitionsprogramm 253 für eine externe Vorrichtung.
-
Als
Nächstes
wird die Speichersteuerungsverarbeitung beschrieben, wie sie in
jedem der Abschnitte abgearbeitet wird. Eine Verarbeitung, bei der interne
Vorrichtungen, die innerhalb der Speichervorrichtung 130 existierende
physikalische Vorrichtungen sind, und Vorrichtungen einschließlich externer Vorrichtungen,
wie sie innerhalb der externen Speichervorrichtung 180 existieren,
einem speziellen Hostcomputer 100 zugewiesen werden, damit
dieser diese Vorrichtungen nutzen kann, kann allgemein in drei Verarbeitungen
aufgeteilt werden, nämlich
eine Definitionsverarbeitung 253 für eine externe Vorrichtung,
eine Logikvorrichtungs-Definitionsverarbeitung 255 und
eine LU-Pfad-Definitionsverarbeitung 252. (Es wird darauf
hingewiesen, dass bei der vorliegenden Ausführungsform jedem dieser Verarbeitungsvorgänge dieselbe
Bezugszahl zugewiesen ist, wie sie jedem der speziellen Programme
zugewiesen ist, die die entsprechenden Verarbeitungsvorgänge ausführen.)
-
Die 8 zeigt
ein Beispiel eines Verarbeitungsablaufs bei der Definitionsverarbeitung 253 für eine externe
Vorrichtung. Dabei handelt es sich um eine Verarbeitung zum Einführen von
Vorrichtungen in der externen Speichervorrichtung 180 als
externe Vorrichtungen unter Verwaltung durch die Speichervorrichtung 130.
-
Als
Erstes empfängt
das ST 190 eine von einem Speicherverwaltungs-Administrator
oder vom Verwaltungsserver 110 gelieferte Verbindungsanweisung
für Verbindung
mit externen Speichervorrichtungen 180, und es überträgt die Verbindungsanweisung
an den MA 160 (Schritt 801). Die Verbindungsanweisung
beinhaltet Information, die die anzuschließenden externen Speichervorrichtungen 180 spezifiziert,
z. B. WWNs von Ports 181 derselben oder Vorrichtungskennungsinformation,
wie sie aus Antworten auf einen an die externen Speichervorrichtungen 180 gelieferten
Abfragebefehl erhalten werden, oder beide vorstehende Werte, sowie
die Nummern von Ports 141 der Speichervorrichtung 130,
die mit den externen Speichervorrichtungen 180 zu verbinden ist.
-
Der
MA 160 empfängt
die Verbindungsanweisung für
einen externen Speicher, und sie überträgt diese, die die Information
zum Kennzeichnen der externen Speichervorrichtungen und die Nummern
der mit diesen zu verbindenden Ports enthält, an alle PAs 140,
die den Nummern der Ports 141 entsprechen, wie sie an die
Verbindungsanweisung angefügt
sind (Schritt 802).
-
Jeder
PA 140, der die Verbindungsanweisung für einen externen Speicher vom
MA 160 empfängt,
sucht nach anzuschließenden
externen Vorrichtungen 180, wobei er die Kennungsinformation zum
Identifizieren der externen Speichervorrichtungen 180,
wie sie an die Verbindungsanweisung angefügt ist, verwendet (Schritt 803).
Genauer gesagt, überträgt, wenn
der PA 140 die WWNs der Ports 181 vom MA als Kennungsinformation
für einen
externen Speicher erhält,
derselbe einen Abfragebefehl von den Ports 141, wie sie
durch die an die Verbindungsanweisung angefügten Portnummern spezifiziert sind,
an alle LUNs der Ports 181 der externen Speichervorrichtungen,
und er registriert Luns, die normale Antworten auf den Abfragebefehl
zurückgeliefert haben,
als Registrierkandidaten für
externe Vorrichtungen. Wenn der PA 140 als Kennungsinformation für einen
externen Speicher nur die Vorrichtungskennungsinformation vom MA 160 erhält, überträgt er einen
Abfragebefehl für
alle LUNs an Knotenports (die bereits beim Login der Knotenports
erkannt wurden) der externen Speichervorrichtungen 180,
wie durch alle Ports 141 des PA 140 erkannt. Für diejenigen Vorrichtungen
(LUNs), die normale Antworten auf den Abfragebefehl zurückgeliefert
haben, vergleicht der PA 140 die in den normalen Antworten
enthaltene Vorrichtungskennungsinformation mit den an die Verbindungsanweisung
angefügten
Werten, und er registriert diejenigen Vorrichtungen, die passende
Werte zeigen, als Registrierkandidaten für externe Vorrichtungen.
-
Dann
liefert jeder PA 140 eine Liste von Information zu den
erkannten Registrierkandidaten für
externe Vorrichtungen an den MA 160 zurück (Schritt 804).
Die Informationsliste enthält
Information, wie sie dazu erforderlich ist, die Verwaltungsinformation 205 für externe
Vorrichtungen für
jede der Registrierkandidaten für
externe Vorrichtungen zu erstellen.
-
Der
MA 160 listet die in der empfangenen Informationsliste
(zu den Registrierkandidaten für
externe Vorrichtungen) enthaltenen externen Vorrichtungen auf, und
er registriert die Vorrichtungsinformation in der Verwaltungsinformation 205 für externe Vorrichtungen,
und er informiert die anderen Abschnitte über die Tatsache, dass die
Vorrichtungsinformation aktualisiert wurde (Schritt 805).
Genauer gesagt, kann die Information, wie sie im Schritt 805 durch
den MA 160 in der Verwaltungsinformation 205 für eine externe
Vorrichtung registriert wird, die Nummer 71 der externen
Vorrichtung enthalten, die der MA 160 den externen Vorrichtungen
zugewiesen hat, die Größe 72,
wie sie aus Antworten auf den Abfragebefehl erhalten wird, die Speicherkennung 76 und die
Vorrichtungsnummer 77 im externen Speicher sowie die Liste 78 von
PA-Nummern/Initiatorportnummern und die Liste 79 von Zielport-ID/Ziel-ID/LUN, wie
dies vom PA 140 an den MA 160 mitzuteilen ist. Auch
trägt der
MA 160 als Einträge
der Nummer 73 für
die entsprechende höhere
Logikvorrichtung und als Eintrag 74 für die Nummer des entsprechenden CA/Nummer
der niedrigeren Logikvorrichtung ungültige Werte ein, da sie noch
nicht zugeordnet sind. Ferner wird als Vorrichtungszustand 75 der
Zustand "off-line" eingetragen.
-
Jeder
CA 150 und PA 140, der die Aktualisierungsmitteilung
der Verwaltungsinformation 205 für eine externe Vorrichtung
empfangen hat, liest diese, wie sie im Steuerspeicher 164 des
MA 160 gespeichert ist, in den eigenen jeweiligen Arbeitsspeicher ein.
Auch ruft das ST 190 die Verwaltungsinformation 205 für eine externe
Vorrichtung in ihren eigenen Arbeitsspeicher ab, und sie gibt eine
Abschlussmitteilung aus, um dem Speicherverwaltungs-Administrator
oder dem Verwaltungsserver 110, der die Anforderungsquelle
betreffend die Definitionsverarbeitung für eine externe Vorrichtung
ist, über
den Abschluss dieser Verarbeitung zu informieren (Schritt 806).
-
Bei
der vorliegenden Ausführungsform
ist eine Konfiguration verwendet, bei der der Speicherverwaltungs-Administrator
oder der Verwaltungsserver 110 eine Verbindungsanweisung
an die Speichervorrichtung 130 liefert und auch externe
Ziel-Speichervorrichtungen 180,
wie sie einzuführen
sind, spezifiziert. Jedoch kann der Speicherverwaltungs-Administrator
oder der Verwaltungsserver 110 an die Speichervorrichtung 130 nur
eine Verbindungsanweisung für
Verbindung mit der externen Speichervorrichtung 180 liefern,
und die Speichervorrichtung 130 kann alle Vorrichtungen
aller externen Speichervorrichtungen, wie sie durch alle Ports 141 erkannt
wurden, als externe Vorrichtungen registrieren. Alternativ liefert
der Speicherverwaltungs-Administrator oder der Verwaltungsserver 110 keine spezielle,
ausdrückliche
Verbindungsanweisung, sondern die Speichervorrichtung 130 registriert
alle Vorrichtungen, die zum Zeitpunkt, zu dem die externe Speichervorrichtung 180 mit
der Speichervorrichtung 130 verbunden wird, als externe
Vorrichtungen erkannt werden.
-
Die 9 zeigt
ein Beispiel eines Verarbeitungsablaufs bei der Logikvorrichtungs-Definitionsverarbeitung 255.
Dies ist eine Verarbeitung, wie sie bei Empfang einer Anweisung
vom Speicherverwaltungs-Administrator oder vom Verwaltungsserver 110 zum
Definieren höherer
und niedrigerer Logikvorrichtungen für die an der Speichervorrichtung 130 angebrachten
physikalischen Vorrichtungen oder die externen Vorrichtungen, die
durch die Definitionsverarbeitung 253 für eine externe Vorrichtung
definiert wurden, ausgeführt
wird.
-
Bei
Empfang einer Logikvorrichtungs-Definitionsanweisung vom Speicherverwaltungs-Administrator
oder vom Verwaltungsserver 110 überträgt das ST 190 die
Anweisung an den MA 160 (Schritt 901). An die
Logikvorrichtungs-Definitionsanweisung sind Nummern der physikalischen
Zielvorrichtungen oder der externen Zielvorrichtungen, denen die
Logikvorrichtungen zugeordnet sind, Nummern zuzuordnender höherer Logikvorrichtungen,
Nummern zuzuordnender niedrigerer Logikvorrichtungen sowie Nummern
von CA, die die niedrigeren Logikvorrichtungen verwalten, angefügt. Bei
der vorliegenden Ausführungsform
ist der Einfachheit der Beschreibung halber angenommen, dass eine
Logikvorrichtung einer physikalischen oder externen Vorrichtung
zugeordnet wird. Jedoch kann bei anderen Ausführungsformen eine Logikvorrichtung
einer Vorrichtungsgruppe zugeordnet werden, die aus zwei oder mehr
physikalischen oder externen Vorrichtungen besteht; oder zwei oder
mehr Logikvorrichtungen können
einer physikalischen oder externen Vorrichtung zugeordnet werden;
oder zwei oder mehrere Logikvorrichtungen können einer Vorrichtungsgruppe
zugeordnet werden, die aus zwei oder mehr physikalischen oder externen
Vorrichtungen besteht. Jedoch muss in jedem dieser Fälle Information,
die die Startposition und die Größe jeder
Logikvorrichtung innerhalb jeder physikalischen oder externen Vorrichtung
angibt, an die Verwaltungsinformation 201 für eine niedrigere Logikvorrichtung
angehängt
werden, und der Eintrag der Nummer der entsprechenden physikalischen/externen
Vorrichtung in der Verwaltungsinformation 201 für eine niedrigere
Logikvorrichtung muss mehrere Vorrichtungen aufnehmen, und der Eintrag
für die Nummer
der entsprechenden niedrigeren Logikvorrichtung in sowohl der Verwaltungsinformation 201 für eine physikalische
Vorrichtung als auch der Verwaltungsinformation 205 für eine Logikvorrichtung muss
mehrere Vorrichtungen aufnehmen.
-
Bei
Empfang der Logikvorrichtungs-Definitionsanweisung spezifiziert
der MA 160 auf Grundlage der an sie angehängten Information
einen Ziel-CA 150, und er überträgt die Logikvorrichtungs-Definitionsanweisung
an diesen (Schritt 902).
-
Im
Ziel-CA 150 wird für
die spezifizierte physikalische oder externe Vorrichtung eine niedrigere Logikvorrichtung
registriert (Schritt 903). Genauer gesagt, registriert
der Ziel-CA 150 für den Zielvorrichtungseintrag
in der Verwaltungsinformation 201 für eine niedrigere Logikvorrichtung
(d. h., als Eintrag, der der an die Logikvorrichtungs-Definitionsanweisung
angefügten
Nummer der niedrigeren Logikvorrichtung entspricht) die an die Logikvorrichtungs-Definitionsanweisung
angefügte
Nummer der niedrigeren Logikvorrichtung im Eintrag 51,
die Nummer der an die Logikvorrichtungs-Definitionsanweisung angefügten physikalischen
oder externen Vorrichtung im Eintrag 53, die Größe der niedrigeren
Logikvorrichtung im Eintrag 52 und die an die Logikvorrichtungs-Definitionsanweisung
angefügte
Nummer der höheren
Logikvorrichtung im Eintrag 55, und er trägt als Vorrichtungszustand 54 den
Zustand "on-line" ein. Auch werden
die Nummer des entsprechenden CA und die Nummer der niedrigeren
Logikvorrichtung der physikalischen oder externen Vorrichtung eingetragen,
und der Vorrichtungszustand wird auf "on-line" aktualisiert. Wenn die Registrierung
abgeschlossen ist, informiert der CA 150 den MA 160 darüber.
-
Als
Nächstes
weist der MA 160 der niedrigeren Logikvorrichtung, die
durch die Logikvorrichtungs-Definitionsanweisung spezifiziert wurde,
eine höhere
Logikvorrichtung zu, und er informiert die anderen Abschnitte darüber, dass
die Steuerinformation aktualisiert wurde (Schritt 904).
Genauer gesagt, trägt
der MA 160 als Vorrichtungseintrag in der Verwaltungsinformation 204 eine
höhere
Logikvorrichtung (d. h., als Eintrag, der der an die Logikvorrichtungs-Definitionsanweisung
angefügten
Nummer der höheren
Logikvorrichtung entspricht) die an die Logikvorrichtungs-Definitionsanweisung
angefügte Nummer
der höheren
Logikvorrichtung im Eintrag 31 ein, die Größe der höheren Logikvorrichtung
im Eintrag 32 ein, und die an die Logikvorrichtungs-Definitionsanweisung
angefügte
CA-Nummer und die Nummer der niedrigeren Logikvor richtung im Eintrag 33 ein,
und er stellt im Eintrag 33 den Vorrichtungszustand auf "off-line" ein. In den Einträgen 35 und 36 werden
ungültige
Werte eingetragen, da hierfür
noch keine Zuweisung erfolgte. Ferner wird, wenn die Logikvorrichtung
einer externen Vorrichtung zuzuordnen ist, die an die Logikvorrichtungs-Definitionsanweisung
angefügte
Nummer der externen Vorrichtung in den Eintrag 38 eingetragen,
und der Vorrichtungszugriffsmodus 37 wird als Anfangswert
auf "PA direkt" eingestellt. Darüber hinaus
wird, wenn die Logikvorrichtung einer externen Vorrichtung zuzuordnen
ist, die zugehörige
Nummer der höheren
Logikvorrichtung in der Verwaltungsinformation 205 für eine externe
Vorrichtung als Nummer 73 der entsprechenden höheren Logikvorrichtung
eingetragen. Dann informiert der MA 160 jeden PA 140 und
das ST 190 darüber,
dass die Steuerinformation aktualisiert wurde.
-
Nachdem
der PA 140 über
die Aktualisierung der Steuerinformation informiert wurde, liest
er die aktualisierte Information in den Arbeitsspeicher 143 ein.
Auch liest das ST 190, nachdem es über die Aktualisierung der
Steuerinformation informiert wurde, die aktualisierte Information
ein, und er liefert an die Anforderungsquelle, d. h. den Speicherverwaltungs-Administrator
oder den Verwaltungsserver 110, einen Abschlussbericht,
um über
den Abschluss der Logikvorrichtungs-Definitionsverarbeitung zu informieren
(Schritt 905).
-
Die 10 zeigt
ein Beispiel eines Verarbeitungsablaufs der LU-Pfad-Definitionsverarbeitung. Wenn
das ST 190 von einem Speicherverwaltungs-Administrator
oder vom Verwaltungsserver 110 eine LU-Pfad-Definitionsanweisung
empfängt, überträgt es diese
an den MA 160 (Schritt 1001). An die LU-Pfad-Definitionsanweisung
werden die Nummer eines Ports 141 und eine LUN, die die
Nummer der höheren
Ziel-Logikvorrichtung und eine LU definiert, sowohl Kennungsinformation
für den
Host 100 (z. B. die WWN des Ports 107 des Hosts 100), der
auf die LU zugreift, und ein Anforderungsfunktionsniveau betreffend
die höhere
Logikvorrichtung angehängt.
-
Als
Anforderungsfunktionsniveau kann eine Datenverknüpfungsfunktion wie eine Datenvervielfältigung,
eine Vorrichtungsumordnung oder dergleichen, die Anwendbarkeit einer
Funktion zum Erhöhen
der Zugriffsgeschwindigkeit unter Verwendung eines Cache-residenten
Zugriffs mittels einer Speicherung von Daten auf dem Cache und dergleichen spezifiziert
werden. Das Anforderungsfunktionsniveau kann einfach Information
spezifizieren, die anzeigt, ob die höhere Logikvorrichtung eine
Verarbeitung über
den CA 150 benötigt
oder nicht.
-
Der
MA 160 beurteilt auf Grundlage des Eintrags 38 in
der Verwaltungsinformation 204 für eine höhere Logikvorrichtung, die
die höhere
Logikvorrichtung betrifft, wie sie in der LU-Pfad-Definitionsanweisung definiert
ist, ob die Vorrichtung eine externe Vorrichtung ist oder nicht
(Schritt 1002), und er führt eine Pfadumkonfigurationsverarbeitung
für eine
externe Vorrichtung aus (Schritt 1003), wenn die Vorrichtung
eine externe Vorrichtung ist.
-
Wenn
die Pfadumkonfigurationsverarbeitung für die externe Vorrichtung abgeschlossen
ist oder wenn die in der LU-Pfad-Definitionsanweisung
spezifizierte höhere
Logikvorrichtung nicht mit einer externen Vorrichtung korreliert
ist, registriert der MA 160 einen LU-Pfad für die höhere Logikvorrichtung (Schritt 1004).
Genauer gesagt, trägt
der MA 160 die in der LU-Pfad-Definitionsanweisung spezifizierte
relevante Information im Eintrag 35 zur Portnummer, Ziel-ID,
LUN sowie im Zugriffshostnamen 36 des entsprechenden Vorrichtungseintrags
in der Verwaltungsinformation 204 für die höhere Logikvorrichtung ein,
und er trägt
die Konfigurationsinformation beginnend mit dem Eintrag 41 Ziel-ID/LUN
in freien Einträgen
der LU-Pfad-Verwaltungsinformation 206 für den in
der LU-Pfad-Definitionsanweisung spezifizierten LU-Pfad entsprechend
dieser LU-Pfad-Definitionsanweisung ein.
-
Wenn
die Registrier- und Einstellvorgänge abgeschlossen
sind, informiert der MA 160 die anderen Abschnitte über deren
Abschluss. Wenn der PA 140 diese Mitteilung empfängt, ruft
er die neu eingetragene und registrierte Information ab. Wenn das
ST 190 die Mitteilung empfängt, ruft es die neu eingetragene
und registrierte Information ab, und es gibt eine Abschlussmitteilung
zum Informieren über
den Abschluss an die Anforderungsquelle, d. h. den Verwaltungsserver 110 oder
den Speicherverwaltungs-Administrator aus (Schritt 1005).
-
Die 14 zeigt
ein Beispiel eines Verarbeitungsablaufs der Pfad-Umkonfigurationsverarbeitung 256 für eine externe
Vorrichtung. Bei der ersten Ausführungsform
wird, wenn für
eine höhere
Logikvorrichtung, die einer externen Vorrichtung entspricht, eine
LU-Pfaddefinition erfolgt, und wenn ermittelt wird, dass die externe
Vorrichtung eine Eingabe/Ausgabe-Verarbeitung über den CA 150 benötigt, die
auf Grundlage eines durch einen Speicherverwaltungs-Administrator
angeforderten Funktionsniveaus auszuführen ist, die Pfad-Umkonfigurationsverarbeitung 256 für eine externe
Vorrichtung ausgeführt,
um die Verbindungskonfiguration ausgehend von der direkten PA-Verbindung,
die dem Anfangszustand entspricht, umzuschalten.
-
Als
Erstes prüft
der MA 160 das Anforderungsfunktionsniveau für die Vorrichtung,
wie es an die LU-Pfad-Definitionsanweisung angefügt ist, und beurteilt, ob Eingabe/Ausgabe-Verarbeitungsvorgänge über den
CA 150 erforderlich sind (Schritt 1401).
-
Wenn
eine Datenverknüpfungsfunktion,
wie Datenvervielfälti gung,
Datenumanordnung oder dergleichen, eine Funktion unter Verwendung
eines Plattencaches, wie Cache-residenter Zugriff, oder dergleichen
als Anforderungsniveau eingetragen sind, oder wenn das Anforderungsfunktionsniveau spezifiziert,
dass direkte Verarbeitungsvorgänge
für den
CA 150 erforderlich sind, erfolgt eine Ermittlung dahingehend,
dass Eingabe/Ausgabe-Verarbeitungsvorgänge über den CA 150 erforderlich
sind. Falls erforderlich, wird, wenn aktuell als Vorrichtungszugriffsmodus 37 in
der Verwaltungsinformation 104 für eine höhere Logikvorrichtung der Zustand "PA direkt" registriert ist
(Schritt 1402), derselbe für die relevante Vorrichtung
auf "über CA" geändert (Schritt 1403).
Wenn beurteilt wird, dass keine Eingabe/Ausgabe-Verarbeitungsvorgänge über den
CA 150 erforderlich sind, oder wenn beurteilt wird, dass
solche zwar erforderlich sind, jedoch der Vorrichtungszugriffsmodus 37 aktuell
auf "über CA" eingestellt ist, erfolgt
keine Änderung
am Vorrichtungszugriffsmodus 37.
-
Mittels
der oben beschriebenen Verarbeitungsvorgänge kann die externe Vorrichtung
innerhalb der Speichervorrichtung 130 als höhere Logikvorrichtung
registriert werden, die durch diese Speichervorrichtung 130 verwaltet
wird.
-
Als
Nächstes
erfolgt eine Beschreibung hinsichtlich eines Verfahrens zum Verarbeiten
von Eingabe/Ausgabe-Anforderungen, wie sie vom Host 100 in
einem Zustand empfangen werden, in dem die externe Vorrichtung als
höhere
Logikvorrichtung für
die Speichervorrichtung 130 vorhanden ist. Das Verfahren
ist im Wesentlichen aus drei Verarbeitungsvorgängen zusammengesetzt, d. h.
einer im PA 140 ausgeführten
Anforderungsumschaltverarbeitung sowie einer Befehlsverarbeitung
und einer Verarbeitung für asynchrone
Bereitstellungsaufhebung, die im CA 150 ausgeführt werden.
Diese Verarbeitungsvorgänge werden
nachfolgend einzeln beschrieben.
-
Die 11 zeigt
ein Beispiel eines Verarbeitungsablaufs einer Anforderungsumschaltverarbeitung 251.
Dies ist eine Verarbeitung zum Umschalten von Eingabe/Ausgabe-Anforderungen
und Daten, wie sie am Port 141 im PA 140 vom Host 100 oder
der externen Speichervorrichtung 180 empfangen werden,
und Eingabe/Ausgabe-Anforderungen und Daten, wie sie am Netzwerkcontroller 144 vom
CA 150 oder einem anderen PA 140 empfangen werden,
auf geeignete Zielabschnitte, wie den CA 150 oder einen anderen
PA 140 bzw. den Host oder die externe Speichervorrichtung 180.
Wenn bei der Anforderungsumschaltverarbeitung 251 ein Befehlsrahmen
empfangen wird, wird auf die Vorrichtungs-Verwaltungsinformation
Bezug genommen, und es wird eine Entscheidung hinsichtlich des Übertragungsziels
des Rahmens getroffen; außerdem
wird hinsichtlich einer Übertragungssteuerung
für Datenrahmen,
wie sie bei Eingabe/Ausgabe-Verarbeitungsvorgängen ausgetauscht werden (was
einem "Austausch" im Faserkanal entspricht),
die durch den Befehl gestartet werden, Wegeleitungs-Steuerinformation
für die
Eingabe/Ausgabe-Verarbeitungsvorgänge registriert. Die Wegeleitungs-Steuerinformation
wird von jedem PA 140 unabhängig verwaltet, und sie enthält Kennungsinformation
für jeden
der Eingabe/Ausgabe-Vorgänge
(was "ID austauschen" entspricht, was
im Fall des Faserkanals in einem Rahmenkopf gespeichert ist), Information
zu einem Anforderungsquellenabschnitt und dessen Adresse, Information
zu einem Anforderungszielabschnitt und dessen Adresse und dergleichen.
Als Adressen der Anforderungsquelle des Anforderungsziels werden
die Quellen-ID und die Ziel-ID, wie sie in der Kopfinformation des
Befehlsrahmens enthalten sind, und LUNs verwendet, wenn es sich
um einen Faserkanal handelt. Es ist zu beachten, dass vom Host 100 als
LUN des Ports 141 auf die externe Vorrichtung und die physikalische Vorrichtung
zugegriffen wird, da der Host 100 auf diese, die innerhalb
der Speichervorrichtung 130 existieren, als Vorrichtungen
zugreift, wie sie von dieser Speichervorrichtung 130 verwaltet
werden.
-
Demgemäß enthält die Kopfinformation
des vom Host empfangenen Befehlsrahmens die Port-ID des Ports 141 als
Ziel-ID und die LUN am Port 141 als LU.
-
Wenn
der PA 140 den Befehlsrahmen vom Host empfängt und
Zugriffe im Modus "PA
direkt" erfolgen,
registriert er die Nummer eines entsprechenden PA 140 (anders
gesagt, desjenigen PA 140, der über einen Port verfügt, der
mit der externen Speichervorrichtung mit der externen Vorrichtung
verbunden ist), die Nummer des Ports 141, der mit der externen
Speichervorrichtung 180 verbunden ist, die Port-ID des
Ports 181 der externen Speichervorrichtung 180 sowie
die LUN der externen Vorrichtung, auf die am Port 181 zuzugreifen
ist, als Anforderungszielinformation in der Wegeleitungs-Steuerinformation.
-
Wenn
im Modus "über CA" Zugriffe erfolgen, registriert
der PA 140 die Kennzahl desjenigen CA 150, über den
Zugriffe erfolgen, sowie die Nummer der niedrigeren Logikvorrichtung,
die mit der höheren Logikvorrichtung
korreliert ist, die durch die Kopfinformation des Befehlsrahmens
angezeigt wird, als Anforderungsquelleninformation in der Wegeleitungs-Steuerinformation.
-
Es
ist zu beachten, dass die Wegeleitungs-Steuerinformation auch Wegeleitungsinformation
für Eingabe/Ausgabe-Anforderungen
vom CA 150, wie Eingabe/Ausgabe-Anforderungen an die externe
Vorrichtung, registriert. In diesem Fall werden als Sendequelleninformation
für die
Eingabe/Ausgabe-Anforderungen die Nummer der CA 150 und
Kennungsinformation, die die in diesem abgearbeitete Befehlsverarbeitung 254 spezifiziert,
abgespeichert.
-
Wenn
der PA 140 einen Faserkanalrahmen mit Daten und Befehlen
vom Port 141 oder vom Netzwerkcontroller 144 empfängt (Schritt 1101)
trennt er die Verarbeitungsvorgänge
entsprechend der Klassifizierung des Rahmens (Schritt 1102)
ab. Die Klassifizierung des Rahmens kann auf Grundlage von in ihm
enthaltenen Daten bestimmt werden.
-
Wenn
der Rahmen ein FCP-Befehlsrahmen ist, wird die Verarbeitung abhängig von
der Sendequelle des Rahmens abgetrennt (Schritt 1103).
Bei der vorliegenden Ausführungsform
kann der Befehlsrahmen über
zwei Pfade empfangen werden, nämlich
einen vom Host 100 über
den Port 141 sowie einen anderen vom CA 150, der
auf die externe Speichervorrichtung 180 zugreift, oder
von einem PA 140 über
den Netzwerkcontroller 144.
-
Als
Erstes nimmt der PA 140, wenn die Sendequelle der Host
ist, auf Grundlage der LUN, die die höhere Logikvorrichtung anzeigt,
auf die zuzugreifen ist, wie sie in der Kopfinformation des empfangenen Rahmens
enthalten ist, auf die LU-Pfad-Verwaltungsinformation
und die Verwaltungsinformation für
eine höhere
Logikvorrichtung Bezug, und er beurteilt, ob die höhere Logikvorrichtung
mit der externen Vorrichtung korreliert ist und ob der Vorrichtungszugriffsmodus
nicht "über CA" ist, anders gesagt,
ob der Vorrichtungszugriffsmodus bei der ersten Ausführungsform "PA direkt" ist. Wenn die höhere Logikvorrichtung
mit der externen Vorrichtung korreliert ist und der Vorrichtungszugriffsmodus "PA direkt" ist, erfolgt eine
weitere Ermittlung, wenn die Anforderungsklassifizierung des Befehls "CA-Verarbeitung nicht
erforderlich" ist.
Wenn alle vorstehenden Bedingungen erfüllt sind, erfolgt eine Ermittlung
dahingehend, dass die Zugriffskonfiguration der Anforderung "PA direkt" ist, und in anderen
Fällen
als dem obigen erfolgt eine Ermittlung dahingehend, dass die Zugriffskonfiguration
der Anforderung "über CA" ist (Schritt 1104–1105).
-
Im
Fall von Zugriffen "PA
direkt" nimmt der PA 140,
nachdem er den FCP-Befehlsrahmen empfangen hat, auf die Verwaltungsinformation 204 für eine höhere Logikvorrichtung
und die Verwaltungsinformation 205 für eine externe Vorrichtung
Bezug, er erhält
die Kennzahl des PA 140, der mit der externen Speichervorrichtung 180 verbunden
ist, die über
die externe Vorrichtung verfügt,
sowie Kennungsinformation zur externen Vorrichtung innerhalb der
externen Speichervorrichtung 180, wie die Zielport-ID, Ziel-ID,
die LUN und dergleichen der externen Vorrichtung, und er registriert
Wegeleitungs-Steuerinformation für
den Befehl mit diesen Werten als Anforderungsziel der Eingabe/Ausgabe-Verarbeitung
sowie die Sendequelle des Rahmens als Anforderungsquelle der Eingabe/Ausgabe-Verarbeitung
(Schritt 1106).
-
Im
Fall von Zugriffen "über CA" nimmt der PA 140 auf
die Verwaltungsinformation 204 für eine höhere Logikvorrichtung Bezug,
und er berechnet eine CA-Nummer, die derjenigen höheren Logikvorrichtung
entspricht, die das Zugriffsziel des empfangenen Befehlsrahmens
ist, und er registriert Wegeleitungs-Steuerinformation für den Befehl
mit dem oben genannten Wert als Anforderungsziel der Eingabe/Ausgabe-Verarbeitung
sowie die Sendequelle des Rahmens als Anforderungsquelle der Eingabe/Ausgabe-Verarbeitung
(Schritt 1107).
-
Indessen
ermittelt der PA 140 bei der Abtrennverarbeitung im Schritt 1103,
wenn die Sendequelle des Befehlsrahmens als anderer Abschnitt als der
Host 100 ermittelt wird, anders gesagt, es handelt sich
um den CA 150 oder einen anderen PA 140, dass
eine externe Vorrichtung der externen Speichervorrichtung 180,
wie in der Kopfinformation des Befehlsrahmens spezifiziert, das Übertragungsziel ist,
und er registriert Wegeleitungs-Steuerinformation für den Befehl
mit dem oben genannten Wert als Anforderungsziel der Eingabe/Ausgabe-Verarbeitung sowie
die Sendequelle des Rahmens als Anforde rungsquelle für die Eingabe/Ausgabe-Verarbeitung (Schritte 1108, 1109).
-
Indessen
nimmt der PA 140 in der Abtrennverarbeitung im Schritt 1102,
wenn die Klassifizierung des von ihm empfangenen Rahmens als Datenrahmen,
als Mitteilungsrahmen betreffend den Abschluss einer Empfangsvorbereitung
oder als Abschluss-Mitteilungsrahmen ermittelt wird, auf die Wegeleitungs-Steuerinformation
für Eingabe/Ausgabe-Verarbeitungsvorgänge, entsprechend
dem Rahmen Bezug, und er ermittelt ein Kommunikationsziel für den Abschnitt
der Sendequelle des Rahmens als Übertragungsziel
des Rahmens. Anders gesagt, erfolgt, wenn der PA 140 den
Rahmen von der externen Speichervorrichtung 180 empfängt, eine
Ermittlung dahingehend, dass ein anderer PA 140 oder der
CA 150, der mit dem Host 100 verbunden ist, der
die Anforderungsquelle für
die Eingabe/Ausgabe-Verarbeitung ist, das Übertragungsziel des Rahmens
ist; und wenn der PA 140 den Rahmen vom Host 100 empfängt, erfolgt
eine Ermittlung dahingehend, dass der CA 150, der das Anforderungsziel
für die
Eingabe/Ausgabe-Verarbeitung ist, oder ein anderer PA 140,
der mit der externen Speichervorrichtung 180 verbunden
ist, das Übertragungsziel
des Rahmens ist.
-
Ferner
erfolgt, wenn der PA 140 den Rahmen vom CA 150 oder
einem anderen PA 140 empfängt, eine Ermittlung dahingehend,
dass der Host 100 oder die externe Speichervorrichtung 180,
die das Kommunikationsziel der Eingabe/Ausgabe-Verarbeitung ist
(anders gesagt, das Anforderungsziel, wenn die Sendequelle des Rahmens
die Anforderungsquelle für
die Eingabe/Ausgabe-Verarbeitung ist), das Übertragungsziel des Rahmens
ist (Schritt 1110).
-
Wenn
das Übertragungsziel
des empfangenen Rahmens ermittelt ist, trennt der PA 140 die
Verarbeitung abhängig
vom Über tragungszielabschnitt ab
(Schritt 1111). Wenn das Übertragungsziel ein anderer
PA 140 ist, wird die Adresse des Übertragungsziels, wie sie in
der Wegeleitungs-Steuerinformation der Eingabe/Ausgabe-Anforderung
registriert ist, als Übertragungszieladresse
des Rahmens eingetragen (Schritt 1112). Anders gesagt,
wird, wenn das Übertragungsziel
die externe Vorrichtung ist, die Ziel-ID des empfangenen Rahmens
in die Zielport-ID (anders gesagt, die Port-ID des Ports 181)
der externen Vorrichtung, die als Anforderungsziel der Eingabe/Ausgabe-Verarbeitung
in der Wegleitungs-Steuerinformation registriert ist, umgeschrieben,
und die Adresseninformation, wie die LUN im Rahmen, wird in die
Adresse der externen Vorrichtung umgeschrieben (anders gesagt, die
LUN oder dergleichen, wie unter Bezugnahme auf die Verwaltungsinformation für eine externe
Vorrichtung erhalten); und wenn das Übertragungsziel der Host 100 ist,
wird die Ziel-ID des empfangenen Rahmens in die Port-ID des Ports 107 desjenigen
Hosts 100 umgeschrieben, der in der Wegeleitungs-Steuerinformation
als Anforderungsquelle der Eingabe/Ausgabe-Verarbeitung registriert ist.
-
Auch
wird, wenn das Übertragungsziel
der Host 100 oder die externe Speichervorrichtung 180 ist,
die mit dem Port 141 innerhalb des PA 140 verbunden
ist, die Adresse des Ports 141 als Sendequellenadresse
des Rahmens eingetragen (Schritt 1113).
-
Dann überträgt der PA 140,
nachdem er den Rahmen mit den Befehlen, den Daten, dem Abschlussbericht
zur Empfangsvorbereitung und dem Abschlussbereich empfangen hat,
den Rahmen an den Host 100 oder die externe Speichervorrichtung 180 oder
den CA 150 oder den PA 140, der das ermittelte Übertragungsziel
ist (Schritt 1114). Ferner wird, wenn der Rahmen, dessen Übertragung
abgeschlossen wurde, ein Abschlussberichtsrahmen ist, die Registrierung
der Wegeleitungs-Steuer information für die Eingabe/Ausgabe-Verarbeitung
freigegeben (Schritte 1115, 1116).
-
Auch
führt,
wenn der vom PA 140 empfangene Rahmen kein FCP-bezogener Rahmen
ist, der Steuerprozessor 142 des PA 140, der den
Rahmen empfangen hat, eine bekannte Verarbeitung als Knotenport
des Faserkanals aus (Schritt 1117).
-
Wenn,
als Ergebnis der Ausführung
der Anforderungsumschaltverarbeitung, das Übertragungsziel des Befehlsrahmens
als der CA 150 ermittelt wird, werden der Rahmen und andere
Information, wie die Nummer des Ziel-CA, auf den zuzugreifen ist, die
Nummer der niedrigeren Logikvorrichtung, die LBA und die ihr hinzugefügte Größe an den
CA 150 des Übertragungsziels übertragen.
Auch führt,
wenn ein auf den Befehlsrahmen folgender Datenrahmen an den CA 150 zu übertragen
ist, der Netzwerkcontroller des zugehörigen PA 140 bzw.
CA 150 eine Datenübertragung
aus, bei der er auf die bereits erstellte Befehlsabfolge achtet.
-
Die 12 zeigt
ein Beispiel eines Verarbeitungsablaufs einer Befehlsverarbeitung 254.
Diese dient zum Verarbeiten von Eingabe/Ausgabe-Anforderungen an
die niedrigere Logikvorrichtung am CA 150.
-
Als
Ergebnis der Anforderungsumschaltverarbeitung 251 wird
hinsichtlich des vom CA 150 empfangenen FCP-Befehls die
Befehlsklassifizierung überprüft (Schritt 1202).
Wenn die Anforderung betreffend den FCP-Befehl eine Leseanforderung
ist, erfolgt unter Bezugnahme auf die Cache-Verwaltungsinformation 203 eine
Ermittlung dahingehend, ob die zu lesenden Daten einem Treffer im
Plattencache 154 entsprechen (sie im Cache gespeichert
sind) (Schritt 1203); wenn ein Treffer vorliegt, wird in
einem Schritt 1208 eine Datenübertragung an den PA 140 gestartet.
-
Im
Fall eines Cache-Fehltreffers wird die Cache-Verwaltungsinformation 203 aktualisiert,
um einen Bereich im Plattencache 154 zu reservieren (Schritt 1204),
und es wird eine Bereitstellung von einer physikalischen oder externen
Vorrichtung, die die Daten speichert, in den Cache ausgeführt. Der
CA 150 kann unter Bezugnahme auf die Verwaltungsinformation 210 für eine niedrigere
Logikvorrichtung entscheiden, ob die Vorrichtung, die die Lesedaten speichert,
eine physikalische oder eine externe Vorrichtung ist (Schritt 1205).
-
Wenn
die Vorrichtung, die die Lesedaten speichert, eine physikalische
Vorrichtung ist, gibt der CA 150 eine Leseanforderung an
das Plattenlaufwerk 157 aus, das durch die Verwaltungsinformation 202 für eine physikalische
Vorrichtung spezifiziert wird, und er liest die Daten (Schritt 1206)
und speichert die gelesenen Daten im im Plattencache 154 reservierten
Bereich ab (Schritt 1207).
-
Wenn
die Vorrichtung, die die gelesenen Daten speichert, eine externe
Vorrichtung ist, nimmt der CA 150 auf die Verwaltungsinformation 205 für eine externe
Vorrichtung Bezug, und er spezifiziert aus dem Eintrag 78 den
Ziel-PA 140, auf den zuzugreifen ist, und er überträgt eine
Leseanforderung für
die externe Vorrichtung an diesen (Schritt 1210). Nachdem der
PA 140 die Leseanforderung empfangen hat, überträgt er diese über die
Anforderungsumschaltverarbeitung 251 an die externe Vorrichtung.
Der PA 140 empfängt
die gelesenen Daten von der externen Speichervorrichtung 180 als
Antwort, und er liefert sie an den CA 150 zurück. Der
CA 150 speichert die vom PA 140 empfangenen gelesenen
Daten im im Plattencache 154 reservierten Bereich ab (Schritte 1211, 1207).
-
Wenn
die gelesenen Daten im Plattencache 154 gespeichert sind, überträgt der CA 150 dieselben an
den PA 140, der die Sendequelle des FCP-Befehlsrahmens
ist (Schritt 1208); und der PA 140 überträgt die Daten über die
Anforderungsumschaltverarbeitung 251 an den Host.
-
Wenn
der vom PA 140 empfangene FCP-Befehlsrahmen das Schreiben
von Daten anfordert, beurteilt der CA 150, ob alte Daten,
die den Schreibdaten entsprechen, im Plattencache 154 gespeichert sind
oder nicht (1212), und im Fall eines Cache-Fehltreffers weist
er einen Bereich im Plattencache 154 zu (1213).
-
Als
Nächstes überträgt der CA 150 einen Übertragungsvorbereitungs-Abschlussbericht
an den PA 140, der die Übertragungsquelle
des FCP-Befehlsrahmens ist (Schritt 1214). Nachdem der
PA 140 den Übertragungsvorbereitungs-Abschlussbericht empfangen
hat, überträgt er diesen über die
Anforderungsumschaltverarbeitung 251 an den Host 100. Wenn
die Schreibdaten vom Host geliefert werden, überträgt der PA 140 dieselben
an den CA 150. Der CA 150 speichert die vom PA 140 empfangenen Schreibdaten
im im Plattencache 154 reservierten Bereich ab (Schritte 1215, 1216).
-
Auch
wird, wenn der vom CA 150 empfangene Befehl weder ein Lese-
und noch ein Schreibbefehl ist, z. B. wenn er ein Erfassungsbefehl,
wie ein Moduserfassungsbefehl, oder ein Diagnosebefehl ist, eine
geeignete Verarbeitung auf Grundlage der Spezifizierung des allgemeinen
SCSI-Speicher ausgeführt
(Schritt 1217).
-
Der
CA 150 berichtet an den mit dem Host 100 verbundenen
PA 140, und dieser überträgt einen Abschlussberichtsrahmen über die
Anforderungsumschaltverarbeitung 251 an den Host 100 (Schritt 1209).
-
Die 13 zeigt
ein Beispiel eines Verarbeitungsablaufs einer Verarbeitung für asynchrone
Bereitstellungsaufhebung (d. h. eine Write-after-Verarbeitung) 257.
Die Verarbeitung 257 für
eine asynchrone Bereitstellungsaufhebung ist eine Verarbeitung,
die als Ergebnis der Befehlsverarbeitung 254 durch den
CA 150 ausgeführt
wird, um im Plattencache 154 gespeicherte Daten auf das
Plattenlaufwerk 157 heraus zu schreiben. Die im Plattencache 154 aufrecht
erhaltenen Schreibdaten werden durch die Cache-Verwaltungsinformation 203 verwaltet.
Normalerweise werden Schreib- oder Lesedaten, wie sie von einer
Platte gelesen werden, mittels einer Schlange verwaltet, so dass ältere Daten
unter den Gesamtdaten sequenziell aus dem Plattencache 154 entfernt
werden.
-
Der
CA 150 wählt
die Daten, wie sie unter den verwalteten Daten tatsächlich auf
die Platte zu schreiben sind, durch das oben beschriebene herkömmliche
Verfahren aus (Schritt 1301), und er beurteilt auf Grundlage
der Verwaltungsinformation 201 für eine niedrigere Logikvorrichtung,
ob die Platte, die die Daten speichert, mit einer externen oder
einer physikalischen Vorrichtung korreliert ist (Schritt 1302).
-
Wenn
Schreibdaten in eine physikalische Vorrichtung geschrieben werden,
nimmt der CA 150 auf die Verwaltungsinformation 202 für eine physikalische
Vorrichtung Bezug, um eine Platte zu spezifizieren, auf die die
Daten zu schreiben sind, und er schreibt die Daten auf die spezifizierte
Platte (Schritt 1303).
-
Wenn
andererseits Schreibdaten in eine externe Vorrichtung zu schreiben
sind, nimmt der CA 150 auf die Verwaltungsinformation 205 für eine externe
Vorrichtung Bezug, um den PA 140 zu spezifizieren, der
mit der externen Speichervorrichtung verbunden ist, die über die
externe Vorrichtung verfügt, in
die die Schreibdaten geschrieben sind, und er über trägt eine Schreibanforderung
an diesen (1304). Nachdem der PA 140 die Schreibanforderung
empfangen hat, überträgt er diese über die
Anforderungsumschaltverarbeitung 251 an die externe Speichervorrichtung 180,
und dann empfängt
der PA 140 eine Übertragungsvorbereitungs-Abschlussmitteilung
von der externen Speichervorrichtung 180 als Antwort auf die
Schreibanforderung. Dann überträgt der PA 140 diese Übertragungsvorbereitungs-Abschlussmitteilung
an den CA 150, der die Sendequelle der Schreibanforderung
bildet. Nachdem der CA 150 die Übertragungsvorbereitungs-Abschlussmitteilung empfangen
hat, sendet er die Schreibdaten an den PA 140 (Schritte 1305, 1306).
Nachdem der PA 140 die Schreibdaten empfangen hat, überträgt er diese mittels
der Anforderungsumschaltverarbeitung 251 an die externe
Speichervorrichtung 180, die die Schreibdaten in die externe
Vorrichtung schreibt.
-
Nachdem
die Schreibdaten in die physikalische oder externe Vorrichtung geschrieben
sind, gibt der CA 150 den Bereich frei, der im Plattencache
die Schreibdaten speicherte (Schritt 1307).
-
Als
Nächstes
wird unter Bezugnahme auf die 15 und 16 eine
zweite Ausführungsform
der Erfindung beschrieben.
-
Bei
der zweiten Ausführungsform
wird eine Verbindungskonfiguration (anders gesagt, "PA direkt" oder "über CA", die einmal zum Zeitpunkt einer LU-Pfad-Definitionsoperation
für eine
einer externen Vorrichtung entsprechende höhere Logikvorrichtung bestimmt
wurde, entsprechend späteren Änderungen
des Funktionsanforderungsniveaus der Vorrichtung umgeschaltet. Es
wird darauf hingewiesen, dass selbst dann, wenn die Verbindungskonfiguration
umgeschaltet wird, kontinuierlich Eingabe/Ausgabe-Anforderungen
an die höhere
Logikvorrichtung vom Host empfangen werden.
-
Es
wird darauf hingewiesen, dass die zweite Ausführungsform im Wesentlichen über dieselbe Hardware
und Software wie die erste Ausführungsform
verfügt,
so dass nur Unterschiede zwischen den Ausführungsformen beschrieben werden.
-
Unter
Bezugnahme auf die 3 wird Verwaltungsinformation 204 für eine höhere Logikvorrichtung
gemäß der zweiten
Ausführungsform
beschrieben. Der Unterschied gegenüber der ersten Ausführungsform
besteht darin, dass zum Vorrichtungszugriffsmodul 37 zusätzlich zu
den Werten "PA direkt" und "über CA" der Wert "PA direkt läuft ab" hinzugefügt ist. Dieser Wert zeigt einen Übergangszustand
an, in dem die Verbindungskonfiguration der externen Vorrichtung
von "über CA" auf "PA direkt" umgeschaltet wird,
anders gesagt, wird im entsprechenden CA 150 gerade eine
Umschaltverarbeitung ausgeführt,
die unten beschrieben wird. Auch ist bei dieser zweiten Ausführungsform
ein Umkonfigurations-Verwaltungszeiger 39 zur Verwaltungsinformation 204 für die höhere Logikvorrichtung,
wie sie bei der ersten Ausführungsform
vorliegt, hinzugefügt. Dieser
Zeiger wird dann verwendet, wenn die höhere Logikvorrichtung im Zustand "PA direkt wird ausgeführt" vorliegt, wobei
es sich um Information handelt, die eine Kopfadresse eines Bereichs
angibt, betreffend den eine Verarbeitung zum Umschalten der Verbindungskonfiguration
in Bezug auf externe Abschnitte nicht abgeschlossen ist. Der Umkonfigurations-Verwaltungszeiger 39 wird
entsprechend dem Ablauf einer Cache-Fehltrefferverarbeitung im CA 150,
die unten beschrieben wird, aktualisiert.
-
Unter
Bezugnahme auf die 5 wird nun ein Beispiel zum
Aufbau der Verwaltungsinformation 201 für eine niedrigere Logikvorrichtung
gemäß der zweiten
Ausführungsform
beschrieben. Bei der zweiten Ausführungsform ist ein Umkonfigurations-Verwaltungszeiger 56 zur
entsprechenden Information 201 bei der ersten Ausführungsform
hinzugefügt. Einzelheiten
des Umkonfigurations-Verwaltungszeigers 56 sind dieselben,
wie sie für
die oben beschriebene Verwaltungsinformation 204 für eine höhere Logikvorrichtung
gelten. Der Umkonfigurations-Verwaltungszeiger 56 wird
ebenfalls abhängig
vom Fortschritt einer Cache-Fehlertrefferverarbeitung im CA 150 aktualisiert.
-
Die
Umkonfigurations-Verwaltungszeiger werden durch die Verwaltungsinformation
für eine höhere und
diejenige für
eine niedrigere Logikvorrichtung doppelt verwaltet, so dass die
Häufigkeit
von Aktualisierungen der Verwaltungsinformation 204 für eine höhere Logikvorrichtung
im MA 160 gesenkt werden kann. Wenn die Verwaltungsinformation 204 für eine höhere Logikvorrichtung
aktualisiert wird, müssen
alle PAs 140 innerhalb der Speichervorrichtung 130 aktualisierte
Information in die Arbeitsspeicher 143 einlesen. Daher
ist die Verringerung der Häufigkeit
von Aktualisierungen der Verwaltungsinformation 204 für eine höhere Logikvorrichtung
dahingehend effektiv, das Funktionsvermögen der Speichervorrichtung 130 aufrecht
zu erhalten.
-
Wenn
sich jedoch aktualisierte Information nicht sofort in jedem PA 140 widerspiegelt,
wenn die Verwaltungsinformation 204 für eine höhere Logikvorrichtung aktualisiert
wird, würde
jeder PA 140 bei einer Eingabe/Ausgabe-Anforderungsumschaltverarbeitung
auf einen alten Umkonfigurations-Verwaltungszeiger 39 Bezug
nehmen. Daher kann der PA 140 eine Eingabe/Ausgabe-Anforderung
selbst für
einen Bereich, für
den eine Cache-Fehltrefferverarbeitung abgeschlossen wurde, an den
CA 150 übertragen.
Demgemäß wird bei
der Befehlsverarbeitung 254 durch den CA 150 eine
Schreibanforderung für einen
Bereich, für
den eine Cache-Fehltrefferverarbeitung abgeschlossen wurde, nicht
durch eine Verarbeitung für
asynchrone Bereitstellungsaufhebung verarbeitet, sondern es kann ein
unmittelbares Einschreiben in eine physikalische oder externe Vorrichtung
erfolgen, so dass der Plattencache 154, wie er durch die
Cache-Fehltrefferverarbeitung verwendet wird, so schnell wie möglich nach
dieser freigegeben werden kann.
-
15 zeigt
ein Beispiel eines Verarbeitungsablaufs einer Pfad-Umkonfigurationsverarbeitung 256 für eine externe
Vorrichtung gemäß der zweiten
Ausführungsform
der Erfindung. Diese Verarbeitung wird vom MA 160 ausgeführt, wenn
im Host 100 eine externe Vorrichtung zugeordnet wird, die
einer höheren
Logikvorrichtung entspricht, und LU-Pfade definiert werden, und
wenn der MA 160 eine Anweisung zum Ändern des Funktionsanforderungsniveaus
für eine
höhere
Logikvorrichtung über
das ST 190 von einem Speicherverwaltungs-Administrator oder
vom Verwaltungsserver 110 empfängt.
-
Wenn
der MA 160 eine Anweisung zum Ändern des Funktionsanforderungsniveaus
empfängt, beurteilt
er, auf Grundlage dieser Anweisung, ob die Verbindungskonfiguration
einer durch die Information in der Anweisung spezifizierten höheren Logikvorrichtung "über CA" sein sollte oder nicht (Schritt 1701).
Wenn die Verbindungskonfiguration "über
CA" sein sollte,
beurteilt der MA 160 unter Bezugnahme auf die Verwaltungsinformation 204 für eine höhere Logikvorrichtung,
ob der Vorrichtungszugriffsmodus derselben aktuell auf den Modus "PA direkt" eingestellt ist
oder nicht (Schritt 1702). Wenn der Modus "PA direkt" ist, muss der MA 160 die
Verbindungskonfiguration der höheren
Logikvorrichtung von "PA
direkt" auf "über CA" umschalten. In diesem Fall ausgeführte Verarbeitungsvorgänge sind
dieselben wie diejenigen, die in der 14 zur
ersten Ausführungsform
angegeben sind (Schritt 1703). Wenn die Verbindungskonfiguration
bereits den Modus "über CA" einnimmt, ist keine Änderung
erforderlich, und demgemäß endet
die Verarbeitung.
-
Wenn
im Schritt 1701 die Verbindungskonfiguration der höheren Logikvorrichtung
der Modus "PA direkt" sein sollte, beurteilt
der MA 160 unter Bezugnahme auf die Verwaltungsinformation 204 für die höhere Logikvorrichtung,
ob der Vorrichtungszugriffsmodus derselben aktuell auf "über CA" oder "PA direkt" eingestellt ist (Schritt 1704).
-
Wenn
der Vorrichtungszugriffsmodus auf "über
CA" eingestellt
ist, muss der MA 160 die Verbindungskonfiguration von diesem
Modus auf "PA direkt" umschalten. In diesem
Fall ändert
der MA 160 als Erstes den Eintrag des Vorrichtungszugriffsmodus 37 in
der Verwaltungsinformation 204 für die höhere Logikvorrichtung auf "PA direkt wird ausgeführt" (Schritt 1705),
und er spezifiziert den CA 150, der eine niedrigere Logikvorrichtung
verwaltet, die mit der höheren
Logikvorrichtung korreliert ist, was unter Bezugnahme auf die Verwaltungsinformation 204 für die höhere Logikvorrichtung
erfolgt. Dann informiert der MA 160 den spezifizierten
CA 150 darüber,
dass die Verbindungskonfiguration der höheren Logikvorrichtung vom
Modus "über CA" auf den Modus "PA direkt" umgeschaltet wurde
(Schritt 1706).
-
Wenn
der CA 150 über
die Änderung
informiert ist, durchsucht er den Plattencache 154 nach den
gesamten Daten der entsprechenden niedrigeren Logikvorrichtung,
und er führt
eine Cache-Fehltrefferoperation für den Plattencache 154 aus;
anders gesagt, werden Daten, die in einer physikalischen oder externen
Vorrichtung nicht aktualisiert wurden, vom Plattencache 154 in
die entsprechende Vorrichtung geschrieben, um Daten innerhalb dieser
zu aktualisieren, und dann wird der den aktualisierten Daten zugeordnete
Cachebereich unmittelbar freigegeben. Die Suche wird unter Verwendung
der Cache-Verwaltungsinformation 203 sukzessive ausgehend
vom Kopf der niedrigeren Logikvorrichtungen ausgeführt, und
der Fortschritt der abzuschließenden Such-
und Cache-Fehltrefferverarbeitung wird dadurch verwaltet, dass die
Umkonfigurations-Verwaltungszeiger in den Verwaltungsinformationen
für die höhere und
die niedrigere Logikvorrichtung weiterschaltet (Schritt 1707).
-
Wenn
die Cache-Fehltrefferverarbeitung für den gesamten Bereich des
Plattencaches abgeschlossen ist, berichtet der CA 150 darüber an den MA 160 (Schritt 1708),
und dieser schaltet den Eintrag 37 für den Plattenzugriffsmodus
in der Verwaltungsinformation 204 für die höhere Logikvorrichtung auf "PA direkt" um, und er schließt die Pfad-Umkonfigurationsverarbeitung
für die
externe Vorrichtung ab.
-
Die 16 zeigt
ein Beispiel eines Verarbeitungsablaufs einer Anforderungsumschaltverarbeitung 251 gemäß der zweiten
Ausführungsform.
Im Vergleich mit der in der 11 veranschaulichten Anforderungsumschaltverarbeitung
zur ersten Ausführungsform
ist bei derjenigen der zweiten Ausführungsform ein weiterer Schritt
(Schritt 1818) hinzugefügt,
wenn der empfangene Faserkanalrahmen ein FCP-Befehlsrahmen ist,
die Sendequelle der Host ist, die Befehls-Zielvorrichtung eine externe
Vorrichtung ist, der Zugriffsmodus nicht "über
CA" ist und die Anforderungsklassifizierung
des Befehls "CA-Verarbeitung unnötig" ist. Im Schritt 1818 erfolgt
eine Ermittlung dahingehend, ob der Zugriffsmodus "PA direkt wird ausgeführt" ist und ob ein durch
die LBA innerhalb des Befehls und die Blocknummer gekennzeichneter
Zugriffsbereich hinter dem Umkonfigurations-Verwaltungszeiger 39 der
höheren
Logikvorrichtung liegt. Wenn der Zugriffsmodus nicht "PA direkt wird ausgeführt" ist oder der vom
PA 140 empfangene Befehl vor dem Umkonfigurations-Verwaltungszeiger 39 liegt,
anders gesagt, wenn der Befehl auf einen Bereich zielt, für den der
Zugriffsmodus auf "PA direkt" umgeschaltet wurde,
wird das Zugriffsziel als derjenige PA 140 bestimmt, der
mit der externen Speichervorrichtung 180 verbunden ist,
die über
die externe Vorrichtung verfügt
(Schritt 1806). Wenn dies nicht der Fall ist, anders gesagt,
wenn der Zugriffsmodus "PA
direkt wird ausgeführt" ist und das Zugriffsziel
im Bereich ist, für
den der Zugriffsmodus nicht umgeschaltet wurde, wird der Befehlsrahmen an
den CA 150 übertragen
(Schritt 1807).
-
Die
Erfindung ist nicht auf die oben beschriebenen speziellen Ausführungsformen
beschränkt, sondern
es können
viele Modifizierungen vorgenommen werden. Zum Beispiel verarbeitet
der CA 150 bei den vorliegenden Ausführungsformen selbst dann, wenn
der Zugriffsmodus einer höheren
Logikvorrichtung, die mit einer externen Vorrichtung korreliert
ist, "PA direkt" ist, empfangene
Befehle, wenn diese Diagnose- oder Erfassungsbefehle sind. Jedoch
kann der Prozessor 162 des MA 160 anstelle des
CA 150 diese Befehle verarbeiten. In diesem Fall können, wie es
bei den vorliegenden Ausführungsformen
beschrieben ist, alle externen Vorrichtungen direkt höheren Logikvorrichtungen
zugewiesen sein, ohne dass sie dem CA 150 und niedrigeren
Logikvorrichtungen zugewiesen wären.
-
Auch
sind z. B. bei der vorliegenden Ausführungsform der Host 100,
die Speichervorrichtung 130 und die externe Speichervorrichtung 180 wechselseitig über einen
Faserkanal verbunden. Jedoch können sie über ein
IP-Netzwerk unter Verwendung eines SCSI-Protokolls als höherem Protokoll
verbunden sein. In diesem Fall können
ein Netzwerk zwischen dem Host 100 und der Speichervorrichtung 130 sowie
ein Netzwerk zwischen der letzteren und der externen Speichervorrichtung 180 verschiedene
Arten von Netzwerken sein.
-
Auch
kann, wenn die externe Speichervorrichtung 180 eine Vorrichtung
ohne Redundanz ist, wie mit JBOD-Konfiguration, wie es durch die 17 veranschaulicht
ist, eine RAID-Kon figuration mit mehreren externen Vorrichtungen
am CA 150 der Speichervorrichtung 130 strukturiert
sein. Jedoch muss in einem solchen Fall im Stadium, in dem Logikvorrichtungen
definiert werden, der Zugriffsmodus für die höheren Logikvorrichtungen als "über CA" eingetragen werden, und die Korrelation
mehrerer externer Vorrichtungen zu einer niedrigeren Logikvorrichtung
muss durch die Verwaltungsinformation 201 für die niedrigere
Logikvorrichtung verwaltet werden; oder es muss Information zum
Verwalten des RAID aus externen Vorrichtungen neu bereitgestellt
und vom CA 150 verwaltet werden, und die Entsprechung zwischen
den externen Vorrichtungen der RAID-Konfiguration und den niedrigeren
Logikvorrichtungen muss durch die Verwaltungsinformation 201 für die niedrigere
Logikvorrichtung verwaltet werden.
-
Gemäß der Erfindung
kann ein Speichersystem mit einem anderen Speichersystem verbunden werden,
und Vorrichtungen innerhalb des anderen Speichersystems können für einen
Hostcomputer als Vorrichtung des eigenen Speichersystems bereitgestellt
werden, und es kann die Verarbeitungsbelastung des Speichersystems
verringert werden, zu der es durch Verarbeitungsvorgänge für die Vorrichtungen
innerhalb des anderen Speichersystem kommen kann. Auch kann die
Verbindungskonfiguration betreffend die Vorrichtungen innerhalb
des anderen Speichersystems von einem Modus auf einen anderen umgeschaltet
werden, während
vom Host kontinuierlich Eingabe/Ausgabe-Anforderungen empfangen werden.
-
Während die
obige Beschreibung spezielle Ausführungsformen der Erfindung
betrifft, ist es zu beachten, dass viele Modifizierungen vorgenommen werden
können,
ohne vom Grundgedanken der Erfindung abzuweichen. Die beigefügten Ansprüche sollen
derartige Modifizierungen abdecken, die in den wahren Schutzumfang
und den Grundgedanken der Erfindung fallen.
-
Die
vorliegend offenbarten Ausführungsformen
sind daher in jeder Hinsicht als veranschaulichend und nicht als
beschränkend
anzusehen, da der Schutzumfang der Erfindung durch die beigefügten Ansprüche statt
durch die vorstehende Beschreibung gegeben ist, weswegen alle Änderungen,
die in den Bedeutungsumfang und den Äquivalenzbereich der Ansprüche fallen,
von diesen umfasst sein sollen.