DE19983331B4 - Verfahren und Vorrichtung zum Bereitstellen einer Datenverwaltung für ein mit einem Netzwerk gekoppelten Speichersystem - Google Patents

Verfahren und Vorrichtung zum Bereitstellen einer Datenverwaltung für ein mit einem Netzwerk gekoppelten Speichersystem Download PDF

Info

Publication number
DE19983331B4
DE19983331B4 DE19983331T DE19983331T DE19983331B4 DE 19983331 B4 DE19983331 B4 DE 19983331B4 DE 19983331 T DE19983331 T DE 19983331T DE 19983331 T DE19983331 T DE 19983331T DE 19983331 B4 DE19983331 B4 DE 19983331B4
Authority
DE
Germany
Prior art keywords
storage system
request
devices
access
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
DE19983331T
Other languages
English (en)
Other versions
DE19983331T1 (de
Inventor
Steven M. Holliston Blumenau
Erez Brookline Ofer
John T. Mansfield Fitzgerald
James M. Franklin Mc Gillis
Mark C. Westboro Lippitt
Natan Brookline Vishlitzsky
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
EMC Corp
Original Assignee
EMC Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by EMC Corp filed Critical EMC Corp
Publication of DE19983331T1 publication Critical patent/DE19983331T1/de
Application granted granted Critical
Publication of DE19983331B4 publication Critical patent/DE19983331B4/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/468Specific access rights for resources, e.g. using capability register

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Storage Device Security (AREA)

Abstract

Ein Datenverwaltungsverfahren zum Verwalten eines Zugriffs auf eine Vielzahl von logischen Volumen in einem Speichersystem durch mindestens zwei mit dem Speichersystem durch ein Netzwerk gekoppelte Vorrichtungen, wobei das Speichersystem eine Vielzahl von Speichervorrichtungen umfasst, die in die Vielzahl von logischen Volumen unterteilt sind, und wobei das Verfahren die Schritte umfasst:
Empfangen von Verschlüsselungsinformation von einer der mindestens zwei Vorrichtungen an dem Speichersystem über das Netzwerk;
Übertragen eines erwarteten Zugriffsschlüssels zwischen dem Speichersystem und der mindestens einen der mindestens zwei Vorrichtungen, wobei der erwartete Zugriffsschlüssel mit der Verschlüsselungsinformation verschlüsselt ist;
Empfangen einer Anforderung von einer der mindestens zwei Vorrichtungen an dem Speichersystem über das Netzwerk, um auf mindestens eines der Vielzahl von logischen Volumen zuzugreifen, wobei die Anforderung die eine der mindestens zwei Vorrichtungen identifiziert und das mindestens eine der Vielzahl von logischen Volumen, und einen erwarteten Zugriffschlüssel enthält;
Bestimmen am Speichersystem, ob die eine der mindestens...

Description

  • Gebiet der Erfindung
  • Die Erfindung betrifft allgemein das Gebiet von Informationsspeichervorrichtungen und insbesondere ein Verfahren und eine Vorrichtung zum Verwalten eines Zugriffs auf Daten in einer Speichervorrichtung.
  • Beschreibung des Standes der Technik
  • Computersysteme umfassen allgemein einen oder mehrere Host-Prozessoren und ein Speichersystem zum Speichern von Daten, auf die durch den Host-Prozessor zugegriffen wird. Das Speichersystem kann einen oder mehrere Speichervorrichtungen (z.B. Plattenlaufwerke) umfassen, um die Speichererfordernisse des Host-Prozessors zu bedienen. Plattenlaufwerke (Plattenansteuereinheiten) können eine oder mehrere Platten eines Aufzeichnungsmediums enthalten, wie beispielsweise eines magnetischen Aufzeichnungsmediums oder eines optischen Aufzeichnungsmediums.
  • In einer typischen Computersystemkonfiguration stellt ein Bus eine Verbindung zwischen dem Host-Prozessor und dem Speichersystem bereit. Der Bus arbeitet in Übereinstimmung mit einem Protokoll, wie beispielsweise dem Small Component System Interconnect (SCSI)-Protokoll, das ein Format von zwischen dem Host-Prozessor und dem Speichersystem übermittelten Paketen vorschreibt. Da vom Host-Prozessor Daten benötigt werden, werden Anforderungen und Antworten zu und von dem Speichersystem über den Bus weitergeleitet.
  • Mit dem Anwachsen von vernetzten Computersystemen wurden multiple Hosts über ein Netzwerk mit einem gemeinsamen Datenspeichersystem verbunden. Fibre Channel ist ein Beispiel eines Netzwerks, das zum Bilden solch einer Konfiguration verwendet werden kann. Fibre Channel ist ein Netzwerkstandard, der es multiplen Initiatoren erlaubt, mit multiplen Zielen über das Netzwerk zu kommunizieren, wobei der Initiator und das Ziel eine beliebige mit dem Netzwerk verbundene Vorrichtung sein kann. Unter Verwendung eines Netzwerks ist eine Vielzahl von Hosts in der Lage, einen Zugriff auf ein einziges Speichersystem zu teilen. Ein Problem beim Koppeln von multiplen Hosts mit einem gemeinsamen Speichersystem ist die Verwaltung eines Datenzugriffs an dem Speichersystem. Da multiple Hosts Zugriff auf ein gemeinsames Speichersystem haben, kann jeder Host physikalisch in der Lage sein, auf Information zurückzugreifen, die für andere Host-Prozessoren proprietär (geheim) sein kann.
  • Unterschiedliche Techniken wurden implementiert, um einen Zugriff auf Daten an dem Speichersystem zu handhaben. Beispielsweise können bestimmte Abschnitte oder Zonen eines Speichers an dem Speichersystem für einen oder mehrere der Hosts bestimmt sein. Jedem Host wird darin "vertraut", dass er nur auf solche Abschnitte des Speichers zugreift, für die er Privilegien (Zugriffsrechte) hat. Ein solcher Ansatz ist jedoch anfällig für individuelle Handlungen an jedem der Hosts. Als eine Folge ist solch ein Datenverwaltungsverfahren möglicherweise nicht ausreichend, um Daten vor unberechtigtem Zugriff zu schützen.
  • Die GB 2 262 633 A beschreibt ein Datensicherheitssystem einschließlich Verarbeitungsvorrichtungen, einer Sicherheitsschaltung und einer Vielzahl von Dateien. Um einen Autorisierungszustand eines Prozessors festzustellen, bezieht sich die Sicherheitsschaltung auf eine Tabelle, die Statusindikatoren für referenzierte Quellprozessoren und gespeicherte Dateien hält. Durch eine Bezugnahme auf die Tabelle kann eine Autorisierung eines Prozessors für einen Dateizugriff festgestellt werden. Falls auf eine geschützte Datei zuzugreifen ist, kann eine geeignete Verschlüsselung durchgeführt werden.
  • Die US 4 919 545 beschreibt eine verteilte Sicherheitsprozedur für ein intelligentes Netzwerk, einschließlich einer Autorisierung eines Zugriffs auf ein Objekt durch einen in einem aufrufenden Knoten angeordneten Prozess. Ein ausführender Knoten sendet eine Capability und eine Signatur zum aufrufenden Knoten und ein Zugriff auf das Objekt wird nur autorisiert, wenn eine Testsignatur, gebildet an dem Ausführungsknoten, mit einer von dem aufrufenden Knoten empfangenen Signatur übereinstimmt.
  • Zusammenfassung der Erfindung
  • Es ist die Aufgabe der Erfindung, einen unautorisierten Zugriff auf ein Datenspeichersystem über ein Netzwerk zu verhindern.
  • Die Aufgabe der Erfindung wird durch den Gegenstand der Ansprüche 1 und 23 gelöst.
  • Ein Datenverwaltungsverfahren zum Verwalten eines Zugriffs auf ein Speichersystem durch mindestens zwei mit dem Speichersystem gekoppelte Vorrichtungen umfasst einen Schritt zum selektiven Bedienen, an dem Speichersystem, einer Anforderung von einer der mindestens zwei Vorrichtungen für einen Zugriff auf einen Abschnitt von Daten, die in dem Speichersystem gespeichert sind, unter Berücksichtigung von Konfigurationsdaten, die anzeigen, dass die eine der mindestens zwei Vorrichtungen autorisiert ist, auf den Datenabschnitt zuzugreifen.
  • Ein computerlesbares Medium umfasst eine erste Datenstruktur, um einen Zugriff durch eine Vielzahl von Vorrichtungen auf Volumen von Daten an einem Speichersystem zu verwalten, wobei die erste Datenstruktur eine Vielzahl von Datensätzen in Entsprechung zur Vielzahl von Vorrichtungen aufweist, wobei jeder Datensatz der Vielzahl von Datensätzen einer der Vielzahl von Vorrichtungen entspricht, und Konfigurationsinformation umfasst, die anzeigt, bezüglich welcher der Volumen des Speichersystems die eine der Vielzahl von Vorrichtungen für einen Zugriff autorisiert ist.
  • Ein Speichersystem umfasst mindestens eine in eine Vielzahl von Volumen unterteilte Speichervorrichtung, eine Konfigurationstabelle, um Konfigurationsdaten zu speichern, die anzeigt, welche der Vielzahl von mit dem Speichersystem gekoppelten Vorrichtungen autorisiert sind, auf ein jedes der Vielzahl von Volumen zuzugreifen, und einen Filter, um entsprechend den Konfigurationsdaten selektiv zu der mindestens einen Speichervorrichtung Zugriffsanforderungen auf die Vielzahl von Volumen weiterzuleiten, die von der Vielzahl von Vorrichtungen empfangen sind.
  • Kurze Beschreibung der Zeichnungen
  • Die 1A, 1B und 1C veranschaulichen beispielhafte Netzwerkkonfigurationen, in denen der Datenverwaltungsgesichtspunkt der vorliegenden Erfindung verwendet werden kann;
  • 2 veranschaulicht ein Ausführungsbeispiel eines Pakets, das zwischen Vorrichtungen verteilt werden kann, die in den Netzwerken von 1A, 1B oder 1C gekoppelt sind;
  • 3 veranschaulicht in einem Blockdiagramm gemäß einem Ausführungsbeispiel der vorliegenden Erfindung beispielhaft Elemente eines Host-Prozessors und Speichersystems, die in den Netzwerken der 1A, 1B oder 1C gekoppelt sein können, wobei das Speichersystem einen Adapter enthält, mit Elementen zum Filtern von Anforderungen, die durch den Host-Prozessor ausgegeben sind;
  • 4 zeigt ein Blockdiagramm eines Ausführungsbeispiels einer Konfigurationsdatenstruktur, die verwendet werden kann, um Filterinformation für eine Verwendung durch das Speichersystem von 3 zu speichern;
  • 5 zeigt ein Blockdiagramm eines Ausführungsbeispiels zum Filtern von Daten, das verwendet werden kann, um Anforderungen an dem Speichersystem von 3 zu filtern;
  • 6 veranschaulicht in einem Blockdiagramm gemäß einem Ausführungsbeispiel der vorliegenden Erfindung beispielhaft Bestandteile eines Host-Prozessors und Speichersystems, die in dem Netzwerk der 1S, 1B oder 1C gekoppelt sein können, wobei das Speichersystem eine Logik zum Authentisieren von Transaktionen durch den Host umfasst;
  • 7 veranschaulicht in einem Flussdiagramm ein Verfahren zum Verteilen von Verschlüsselungsschlüsseln zwischen einem Host-Prozessor und Speichersystem von 6, so dass die Verschlüsselungsschlüssel dazu verwendet werden können, die Identität des Host-Prozessors zu authentisieren;
  • 8A–C veranschaulichen Flussdiagramme eines Verfahrens zum Authentisieren der Identität eines Host-Prozessors, wenn eine Verbindung zwischen dem Host-Prozessor und einem Speichersystem von 6 eingerichtet wird, in Übereinstimmung mit einem Ausführungsbeispiel der vorliegenden Erfindung;
  • 9 veranschaulicht in einem Diagramm gemäß einem Ausführungsbeispiel der Erfindung beispielhaft Komponenten, die in einer Authentisierungstabelle des Speichersystems von 6 enthalten sein können und die verwendet werden können, um die Identität von Host-Prozessoren zu authentisieren;
  • 10 veranschaulicht in einem Flussdiagramm gemäß einem Ausführungsbeispiel der Erfindung ein Verfahren zum Durchführen einer Überprüfungssumme von Daten, die zwischen einem Initiator und einem Ziel in den Netzwerken von 1A, 1B und 1C übermittelt werden, um Datenübertragungen zu validieren; und
  • 11 veranschaulicht in einem Flussdiagramm gemäß einem Ausführungsbeispiel der vorliegenden Erfindung ein Verfahren zum Validieren einer Datenübertragung zwischen einem Initiator und einem Ziel unter Verwendung der Überprüfungssumme von 10.
  • Beschreibung der detaillierten Ausführungsbeispiele
  • Die vorliegende Erfindung betrifft ein Datenverwaltungsverfahren und eine Vorrichtung zum Verwalten eines Zugriffs durch eine Mehrzahl von Vorrichtungen (z.B. Host-Prozessoren, Dateiservern u.ä.) auf Daten an einer gemeinsamen Ressource (z.B. einem gemeinsamen Speichersystem). In Übereinstimmung mit einem Ausführungsbeispiel bedient die gemeinsame Ressource selektiv Anforderungen von den Vorrichtungen bezüglich Abschnitten der Daten an der gemeinsamen Ressource in Antwort auf Konfigurationsdaten, die den Abschnitten der Daten an der Ressource zugeordnet sind.
  • In einem Ausführungsbeispiel ist die gemeinsame Ressource in Volumen unterteilt. Konfigurationsdaten identifizieren, welche Volumen von Daten für einen Zugriff durch eine jede der mit der Ressource gekoppelten Vorrichtungen (z.B. über ein Netzwerk) zur Verfügung stehen. Die gemeinsame Ressource umfasst einen Filter, der selektiv eine Anforderung für ein Bedienen weiterleitet, in Abhängigkeit von der Identität der die Anforderung ausgebenden Vorrichtung und den Konfigurationsdaten, die dem Volumen zugeordnet sind, auf das ein Zugriff erwünscht ist. Der Filter leitet nur solche Anforderungen für Volumen weiter, für die die Vorrichtung Zugriffsrechte hat. Anforderungen für Volumen, für die die Vorrichtung keine Rechte hat, werden nicht bedient.
  • Ein Filtern von Anforderungen an der Ressource erlaubt es, die Steuerung der Datenverwaltung an einem Ort zu zentralisieren, anstatt sie im Netzwerk zu verteilen. Eine Zentralisierung der Datenverwaltungssteuerung am Speichersystem eliminiert die Notwendigkeit, den Zugriff auf das Speichersystem wünschenden Hosts darin zu vertrauen, dass sie nur auf bestimmte Abschnitte von Daten zugreifen.
  • In einem Ausführungsbeispiel der Erfindung kann zusätzlich zum Filtern von Anforderungen zur Unterstützung einer Datenverwaltung an der Ressource ein Sicherheitsschutz hinzugefügt werden, um weiter die Daten an der Ressource zu sichern. Da ein Filtern in Antwort auf die Identität der die Anforderung durchführenden Vorrichtung durchgeführt wird, kann eine Datensicherheit beeinträchtigt sein, falls eine Vorrichtung ihre Identität falsch darstellt, um Zugriff auf die Ressource zu erhalten. Zusätzlich können Datenübermittlungen zwischen der Vorrichtung und der Ressource gestört werden durch andere mit der Ressource gekoppelte Vorrichtungen (z.B. über ein Netzwerk). In einem Ausführungsbeispiel ist ein Authentisierungsverfahren und eine entsprechende Vorrichtung bereitgestellt, um zu verifizieren, dass die Vorrichtung, die als die die Anforderung ausgebende Vorrichtung dargestellt ist, wirklich die Vorrichtung ist, die die Anforderung ausgegeben hat. Das Authentisierungsverfahren kann daher implementiert werden, um Sicherheitsprobleme in Verbindung mit einer Vorrichtung zu vermeiden, die ihre Identität falsch darstellt, um Daten an der Ressource zu erhalten. In einem anderen Ausführungsbeispiel ist ein Validierungsverfahren und eine solche Vorrichtung bereitgestellt, um sicherzustellen, dass zwischen der Vorrichtung und der gemeinsamen Ressource übermittelte Information während einer Übermittlung nicht beschädigt wird (entweder unbeabsichtigterweise oder beabsichtigterweise).
  • Ein Datenverwaltungssystem zum Verwalten von Daten an einer Ressource kann eine beliebige oder alle diese Filter-, Authentisierungs-, und Validierungstechniken verwenden. Ein beispielhaftes System, in dem das Datenverwaltungsverfahren und eine solche Vorrichtung der vorliegenden Erfindung eingesetzt werden kann, ist in einem vernetzten Computersystem, in dem die Vorrichtungen mit dem Netzwerk gekoppelte Host-Prozessoren oder Dateiserver sind, und die gemeinsame Ressource ist ein Speichersystem (z.B. ein Plattenlaufwerkspeichersystem). Es wird darauf hingewiesen, dass die Verwendung eines Netzwerks, Host-Prozessors oder eines gemeinsamen Plattenlaufwerks keine Beschränkung der vorliegenden Erfindung darstellt, und dass solch eine Systemkonfiguration im Folgenden lediglich für Illustrationszwecke beschrieben wird.
  • In einem Ausführungsbeispiel können einer oder mehrere Hosts mit einem oder mehreren Speichersystemen unter Verwendung eines Netzwerks verbunden sein, wobei Anforderungen und Antworten zu und von den Speichersystemen über das Netzwerk in Übereinstimmung mit dem Protokoll des Netzwerks weitergeleitet werden. Zusätzlich kann jeder Host und jedes Speichersystem einen oder mehrere Ports (Portierungen) enthalten, um eine Schnittstelle mit dem Host oder Speichersystem zu einem entsprechenden einen oder mehreren Netzwerken zu bilden. Wie oben beschrieben, umfasst in einem Ausführungsbeispiel jedes Speichersystem in dem Netzwerk eine Logik zum Filtern von empfangenen Anforderungen, um Datenzugriffe auf das Speichersystem zu verwalten.
  • Ein beispielhaftes Netzwerk, in dem die vorliegende Erfindung verwendet werden kann, ist ein Fibre Channel Netzwerk, obwohl die vorliegende Erfindung nicht auf die Verwendung des Fibre Channel Netzwerks oder einer anderen speziellen Netzwerkkonfiguration beschränkt ist. Drei beispielhafte Fibre Channel Netzwerkkonfigurationen sind in den 1A, 1B und 1C veranschaulicht. 1A veranschaulicht ein in einer Schleifenkonfiguration angeordnetes Netzwerk 10, wobei alle Vorrichtungen in dem Netzwerk in einer einzigen Schleife miteinander gekoppelt sind. In 1A sind drei Host-Prozessoren 12, 14 und 16 gezeigt, die durch einen Netzknoten 18a als mit einem Speichersystem 20 gekoppelt gezeigt sind. Intern ist der Netzknoten in einer Schleifenkonfiguration angeordnet. Eine Kommunikation zwischen den Vorrichtungen wird über die Busse 15a15d durchgeführt, indem Datenpakete von einer Vorrichtung zur nächsten in der Schleife weitergeleitet werden. 1B veranschaulicht ein Netzwerk 30, das in einer Webkonfiguration (fabric configuration) angeordnet ist, wobei alle Vorrichtungen durch einen Netzknoten 18b miteinander verkoppelt sind. Intern ist der Netzknoten als eine Vermittlung ausgebildet. Eine Kommunikation zwischen Paaren der Vorrichtungen 12, 14, 16 und 20 in dem Netzwerk 30 wird durch den Netzknoten 18b gesteuert. Das Datenverwaltungsverfahren der vorliegenden Erfindung kann in Netzwerken verwendet werden, die in den Schleifen oder Webkonfigurationen der 1A und 1B angeordnet sind, oder alternativ in anderen Netzwerk- oder Ressource-Teilen der Konfigurationen. Beispielsweise kann der Datenverwaltungsgesichtspunkt in dem in 1C veranschaulichten Netzwerk verwendet werden. In 1C ist eine Host-/Speichersystemkonfiguration gezeigt, wobei das Speichersystem zwei Ports umfasst, von denen jeder eine Schnittstelle zwischen dem Speichersystem mit einem anderen Netzwerk bildet. In 1C ist ein erster Port (Port 0) mit einem Web-Netzwerk 30 und ein zweiter Port (Port 1) mit einem Schleifennetzwerk 10 gekoppelt.
  • Wie oben erwähnt, werden gemäß dem Datenverwaltungsgesichtspunkt der vorliegenden Erfindung Volumen von Daten des Speichersystems 20 konfiguriert, in Übereinstimmung mit der Identität der Host-Vorrichtungen, die mit dem Speichersystem gekoppelt sind. Die Konfigurationsdaten, die verwendet werden, um die Zuordnung von Volumen zu unterschiedlichen Hosts zu verwalten, können beispielsweise durch einen Systemadministrator des Netzwerks bereitgestellt werden. Der Systemadministrator überwacht die mit dem Netzwerk gekoppelten Host-Vorrichtungen und die am Speichersystem verfügbaren Volumen. Wenn eine neue Host-Vorrichtung in das Netzwerk eintritt, weist der Systemadministrator dem Host Speichersystem-Volumen zu. Die Anzahl von Volumen, die dem Host zugewiesen werden, kann auf einer angeforderten Anzahl von Volumen basieren, oder alternativ kann sie auf vorhergehenden Datenerfordernissen des Hosts basieren. Der Systemadministrator kann mittels Software implementiert sein, ausgeführt von einer der Vorrichtungen des Speichersystems in dem Netzwerk und kann eine grafische Nutzerschnittstelle enthalten, um es Nutzern zu ermöglichen, die Verfügbarkeit und Zuordnungen von Volumen zu unterschiedlichen Hosts im Netzwerk zu überwachen. Die vorliegende Erfindung ist nicht auf irgendeine bestimmte Implementierung der Systemadministration beschränkt.
  • Wenn eine Vorrichtung in das Netzwerk eintritt, fragt sie allgemein das Netzwerk ab, um die anderen mit dem Netzwerk gekoppelten Vorrichtungen zu identifizieren. Jede Vorrichtung, die der Anfrage antwortet, liefert einen oder mehrere Identifizierer für die Vorrichtung zurück. Beispielsweise kann der Identifizierer den World-Wide Name (WWN) (weltweiten Namen) enthalten, der der Vorrichtung durch den Hersteller des Adapter-Boards (Einschub) unter Verwendung einer Namengebungsübereinkunft zugeordnet ist. Der Identifizierer kann auf keinen Quellidentifizierer (ID) enthalten. Beide sind eindeutige Identifizierer für die Vorrichtung, jedoch ist der Quellidentifizierer allgemein ein kürzerer Identifizierer als der WWN. Der Quellidentifizierer kann die Vorrichtung identifizieren (z.B. einen Host-Prozessor) und den Port der Vorrichtung, der mit dem Netzwerk gekoppelt ist. Falls multiple Ports der bestimmten Vorrichtung mit dem Netzwerk gekoppelt sind, kann somit ein Identifizierer für jeden Port zurückgeliefert werden. Wenn ein Abfragebetriebsvorgang vervollständigt ist, hat jede der Vorrichtungen Kenntnis bezüglich der anderen mit dem Netzwerk gekoppelten Vorrichtungen. Sobald jede Vorrichtung Kenntnis bezüglich anderer Vorrichtungen im Netzwerk hat, kann diese Information verwendet werden, um Daten zwischen Vorrichtungen auszutauschen.
  • Anforderungen und Antworten zu und von dem Speichersystem 20 werden über die Netzwerke 10 und 30 in Übereinstimmung mit dem Netzwerkprotokoll weitergeleitet. Die Fibre Channel Verbindung ist in der Lage, multiple Schnittstellenbefehlssätze zu unterstützen. Demzufolge können die miteinander über das Fibre Channel Netzwerk gekoppelten Vorrichtungen unter Verwendung einer Anzahl von höherschichtigen Protokollen kommunizieren, einschließlich Internet Protocol (IP), Small Component System Interconnect (SCSI)-Protokoll oder irgendeinem einer Anzahl von anderen Protokollen, vorausgesetzt, dass die Schnittstellen bildenden Vorrichtungen Kenntnis bezüglich des Typs eines Protokolls haben, das auf der speziellen Fibre Channel Verbindung verwendet wird. Bestimmte Typen von Vorrichtungen sind aufgrund der Historie so ausgelegt, dass sie unter Verwendung bestimmter Protokolle kommunizieren. Beispielsweise haben Host-Prozessor-Vorrichtungen historischerweise mit Speichersystemen unter Verwendung des SCSI-Protokolls kommuniziert. Somit können die unter Verwendung des Fibre Channel Netzwerks gekoppelten Vorrichtungen miteinander unter Verwendung des Protokolls kommunizieren, das historischerweise verwendet wurde. Als eine Folge erfordern die Schnittstellen der Vorrichtungen wenig Veränderungen, um mit dem Fibre Channel Netzwerk zu koppeln.
  • Tunneltechniken werden typischerweise verwendet, um Pakete eines beliebigen Protokolltyps in Pakete umzuwandeln, die auf dem Fibre Channel Netzwerk weitergeleitet werden können. Unter Verwendung einer Tunnellung wird ein Paket, das in Übereinstimmung mit einem ersten Protokoll formatiert ist, in einem zweiten Paket verpackt, das in Übereinstimmung mit dem Fibre Channel Netzwerk Protokoll formatiert ist. Somit kann ein SCSI-Paket in einem Fibre Channel Paket durch einen Host-Prozessor oder ein Speichersystem verpackt sein, für eine Übermittlung über ein Fibre Channel Netzwerk. Ein Beispiel eines in Übereinstimmung mit einem SCSI-Protokoll formatierten Pakets, das in einem Fibre Channel Paket verpackt ist, ist in 2 veranschaulicht.
  • In 2 umfasst ein Fibre Channel Paket 50 einen Kopfbereichsabschnitt (Header-Abschnitt) 55 und einen Nutzlastabschnitt 60. Der Kopfbereichsabschnitt 55 umfasst ein Quell-ID-Feld 52, ein Ziel-ID-Feld 53 und ein Längenfeld 54. Das Quell-ID-Feld 52 identifiziert eine Vorrichtung in dem Netzwerk, das die Übermittlung des Pakets 50 initiiert hat. Das Ziel-ID-Feld 53 identifiziert eine Zielvorrichtung zum Empfang des Pakets in dem Netzwerk. Das Längenfeld 54 identifiziert eine Anzahl von Bytes in dem Paket. Zusätzlich können auch andere in der Fibre Channel Spezifikation definierte Felder in den Kopfabschnitt einbezogen sein, obwohl diese Felder hier für Klarheitszwecke ausgelassen sind.
  • Das Quell-ID-Feld 52 und das Ziel-ID-Feld 53 werden in dem beispielhaften System von 1C verwendet, um bestimmte Host-Prozessoren und das Speichersystem zu identifizieren. Wenn ein Host ein Anforderungspaket zum Speichersystem ausgibt, identifiziert die Quell-ID den Host und die Ziel-ID identifiziert das Speichersystem. In Übereinstimmung mit einem Ausführungsbeispiel der Erfindung verwendet das Speichersystem das Quell-ID-Feld 52 des Pakets, um in Konfigurationsdaten zu indizieren, die angeben, bezüglich welcher der Volumen von Daten der jeweilige Host das Recht für einen Zugriff hat.
  • Wie oben erwähnt, kann das Source-ID-Feld für einen auf das Speichersystem 20 zugreifenden Host dazu verwendet werden, den Host zu identifizieren, der die Anforderung ausgegeben hat, um die Konfigurationsdaten für den Host an dem Speichersystem zu indizieren. Die Konfigurationsdaten identifizieren die Abschnitte des Speichersystems, die für den Host zugänglich sind. Somit können die Konfigurationsdaten durch eine Filterlogik an dem Speichersystem dazu verwendet werden, selektiv die Anforderungen des Host zu bedienen. Beispielhafte Bestandteile eines Hosts und Speichersystems, die für eine Implementierung des Verfahrens und der Vorrichtung zum Filtern von Anforderungen, basierend auf einem Host-Identifizierer, verwendet werden können, werden nunmehr mit Bezug auf 3 bis 5 beschrieben.
  • Wie oben beschrieben, bestimmt in einem Ausführungsbeispiel der Erfindung das Speichersystem, auf Grundlage der Konfigurationsdaten, ob eine empfangene Anforderung bedient werden soll. Eine Kopie der Konfigurationsdaten kann in einem Speicher an dem Speichersystem gespeichert sein. Die Konfigurationsdaten können periodisch durch den Systemadministrator aktualisiert werden, wenn Hosts in das Netzwerk eintreten und es verlassen. Das Speichersystem umfasst auch eine Logik für eine Kommunikation über das Netzwerk und eine Filterlogik, die mit dem Speicher gekoppelt ist, der die Konfigurationsdaten speichert, um zu bestimmen, ob eine von dem Netzwerk empfangene Anforderung bedient werden soll. Das oben beschriebene Datenverwaltungssystem kann auf unterschiedliche Arten implementiert sein, und die vorliegende Erfindung ist nicht auf eine bestimmte Implementierung beschränkt. Für Klarheitszwecke ist jedoch in 3 ein Ausführungsbeispiel eines Host-Prozessors und Speichersystems veranschaulicht, das in der Lage ist, diese Datenverwaltungsfunktionalität bereitzustellen.
  • 3 veranschaulicht ein über ein Netzwerk 21 mit einem Speichersystem 20 gekoppelten Host-Prozessor 12. Das Netzwerk kann beispielsweise ein Fibre Channel Netzwerk sein, das auf eine beliebige der Konfigurationen der 1A1C angeordnet ist. Der Host-Prozessor kann eine Multi-Verarbeitungs-Einheit sein, einschließlich einer oder mehrerer Zentral-Verarbeitungseinheiten, wie beispielsweise der CPU 40, die durch einen lokalen Bus 43 mit einem Speicher 42 verbunden ist. Ein oder mehrere Host-Bus-Adapter (HBA) 45 und 45a sind zwischen dem Bus 43 und dem Netzwerk 21 gekoppelt.
  • Jeder Host-Bus-Adapter (HBA) 45 und 45a angeordnet, den Host-Prozessor 12 mit dem Netzwerk zu verbinden. Die HBAs 45 und 45a übersetzen von der CPU 40 empfangene Daten in das durch das Protokoll des Netzwerks vorgeschriebene Format.
  • Zusätzlich übersetzen die HBAs 45 und 45a von dem Netzwerk in Paketformat empfangene Daten in Daten in einem durch die CPU 40 verwendbarem Format.
  • Der Host-Bus-Adapter kann implementiert sein unter Verwendung einer Kobination einer auf dem HBA angeordneten Hardware und in dem HBA oder dem Speicher 42 gespeicherter Treiber-Software. Alternativ kann der Host-Bus-Adapter entweder insgesamt in Hardware oder Software implementiert sein. In einem Ausführungsbeispiel umfasst der HBA 45 einen Prozessor 41, der mit einem Speichersystem 49 gekoppelt ist. Der Prozessor 41 steuert den Fluss und ein Format von Daten in den HBA hinein und hinaus. Der Speicher 49 wird verwendet, um eine temporäre Speicherung von Daten bereitzustellen, wenn diese zu und von dem Netzwerk übermittelt werden. Der HBA erzeugt Pakete für eine Übermittlung über das Netzwerk 21, wobei jedes Paket ein Quell-ID-Feld enthält, das den bestimmten HBA identifiziert. Da an jedem Host multiple HBA enthalten sein können, können multiple Quell-ID mit dem gleichen Host assoziiert sein.
  • Das Speichersystem 20 umfasst Speichervorrichtugnen 38a38d, die eine oder mehrere Plattenlaufwerke enthalten können. Ein Zugriff auf die Speichervorrichtungen 38a38d wird unter Verwendung von Plattenadaptern 36a36d gesteuert, die unter Verwendung eines programmierten Prozessors implementiert sein können, oder durch eine spezielle Hardware-Anordnung. In dem in 3 veranschaulichten Ausführungsbeispiel ist für jede Speichervorrichtung 38a38d ein Plattenadapter bereitgestellt, obwohl alternativ ein Plattenadapter mit mehr als einer Speichervorrichtung gekoppelt sein kann. Zusätzlich können Plattenadapter sekundäre Verbindungen mit den Speichervorrichtungen 38a38d eines anderen Plattenadapters 36a36d enthalten, um eine Wiederherstellung nach einem Ausfall eines Plattenadapters durch Verschieben dessen Funktionen zum zweiten Plattenadapter zu ermöglichen.
  • Die Speichervorrichtungen 38a38d sind in Volumensätze unterteilt. Einer oder mehrere der Volumensätze können einem oder mehreren der HBA 45, 45a oder dem Host-Prozessor 12 zur Verfügung gestellt werden. In einem Ausführungsbeispiel werden Bezugnahmen auf die Volumen in den Speichervorrichtungen 38a38d durch die HBA unter Verwendung von Nummern logischer Einheiten (LUN) durchgeführt. Es muss keine eins-zu-eins Entsprechung zwischen den durch die Hosts bereitgestellten Nummern der logischen Einheiten und der physikalischen Adressen der Plattenvorrichtungen bestehen.
  • Eine Konfigurationsdatenbank 32 (3) speichert Information bezüglich welche der HBR Zugriff auf welche der Volumen haben. Wie oben erläutert, wird in einem Ausführungsbeispiel in der Konfigurationsdatenbank Information vom Systemadministrator empfangen und wird periodisch aktualisiert, wenn sich die Konfiguration des Netzwerks ändert.
  • Ein Beispiel der Datentypen, die in der Konfigurationsdatenbank 32 gespeichert sein können, umfassen eine Historientabelle 69. Die Historientabelle ist in einem Block für jeden der Ports des Speichersystems unterteilt. Jeder Block in der Historientabelle umfasst eine Liste von solchen Hosts, die den Port abgefragt haben, als sie in das Netzwerk eingetreten sind. Die Identifikationsinformation für jeden Host kann den WWN-Namen des Hosts enthalten, die Quell-ID des Hosts oder andere Aliase des Hosts. Diese Identifikationsinformation kann verwendet werden, wenn sich ein Host in das Speichersystem einlogt, um einen Identifizierer des Hosts mit Konfigurationsdaten für den Host abzustimmen.
  • Die Konfigurationsdatenbank 32 kann auch einen Kopfbereichsabschnitt 70 enthalten, um die HBAs den verfügbaren Ports am Speichersystem zuzuordnen. Ein Volumenzuordnungsabschnitt 72 kann für ein Zuordnen von logischem Volumen von Daten an dem Speichersystem 20 für unterschiedliche HBA bereitgestellt werden. Ein Zuordnungsabschnitt 74 ist für ein Zuordnen von LUN zu physikalischen Adressen der Platten bereitgestellt. Zusätzlich ist eine Filtertabelle 76 bereitgestellt, um zu steuern, welche HBA Zugriff auf welche der LUN haben. Die Filtertabelle 76 wird erzeugt unter Verwendung der Volumenzuweisung und Zuordnungs(mapping)information und umfasst einen Datensatz für jeden HBA, mit einem der Ports des Speichersystems gekoppelt. Eine beispielhafte Implementierung der Filtertabelle 76 wird in 4 bereitgestellt. Jeder Datensatz 76a76n umfasst den dem HBA zugeordneten WWN, ein Flag, das anzeigt, ob die in dieser Eintragung zugewiesenen Volumen gemeinsam genutzt werden, und eine LUN-Zuordnung, die angibt, auf welche der logischen Volumen der HBA zugreifen kann. In einem Ausführungsbeispiel ist die LUN-Zuordnung in der Form einer Bit-Maske, bei der ein Bit für jeden LUN in dem Speichersystem zugewiesen ist. In einem Ausführungsbeispiel ist ein Bit in der Bit-Maske gesetzt, um anzuzeigen, dass der zugehörige HBA, angezeigt durch den WWN, Zugriff auf die entsprechende LUN hat, obwohl alternativ das Bit gelöscht sein kann, um einen Zugriff anzuzeigen. Zusätzlich können auch alternative Ausführungsbeispiele verwendet werden, bei denen die zur Verfügung stehenden LUN unterschiedlich angezeigt sind.
  • Das Speichersystem 20 (3) umfasst auch eine Filter- und Adaptereinheit 34. Die Filter- und Adaptereinheit 34 übersetzt von dem Netzwerk empfangene Pakete in Datenblöcke und Steuerung für ein Weiterleiten zu den Plattenadaptern 36a36d. Zusätzlich führt die Filter- und Adaptereinheit 34 eine Filterfunktion durch, um sicherzustellen, dass nur solche HBA mit Zugriffsrechten auf die Volumen zugreifen können. Statt den HBA darin zu vertrauen, dass sie nur auf solche Volumen zugreifen, für die sie zugewiesen sind, steuert die Filter- und Adaptereinheit 34 Zugriffe auf die Platten durch ein Herausfiltern von nicht berechtigten Anforderungen.
  • In einem Ausführungsbeispiel umfasst die Filter- und Adaptereinheit 34 einen Prozessor 80, der mit einem Speicher 83 verbunden ist. Der Prozessor wird verwendet, um die Übermittlung und Übersetzung von Daten zwischen dem Speichersystem 20 und dem Netzwerk 21 zu steuern. Der Speicher 83 wird verwendet, um eine transiente Filtertabelle 84 zu speichern. Die transiente Filtertabelle ist in eine Anzahl von Tabellen unterteilt, eine für jeden Port des Speichersystems. Jedesmal, wenn ein HBA eine Verbindung mit dem Speichersystem 20 über einen der Ports initiiert, wird Filterinformation von der Filtertabelle 76 in die Konfigurationsdatenbank 32 an den geeigneten Eintrag in der transienten Filtertabelle 84 kopiert. Die Filterinformation kann eine Quell-ID des in den Port eingelogten HBA enthalten, ein Flag, das anzeigt, ob die diesem Eintrag zugehörigen Volumen gemeinsam genutzt werden, und eine LUN-Zuordnung für den in den Port eingelogten HBA, wobei die LUN-Zuordnung von der Filtertabelle 76 in der Konfigurationsdatenbank kopiert wird.
  • In einem Ausführungsbeispiel wird für jede Anforderung auf die Konfigurationsdaten in der transienten Filtertabelle 84 zugegriffen. Die Adresse der Anforderung wird in Bus-/Ziel-/LUN-Format bereitgestellt, wobei der Busabschnitt die Fibre Channel Netzwerkadresse des Speichersystems 20 anzeigt, der Zielabschnitt die Speichersystemportadresse anzeigt, und die LUN die Volumenadresse der Anforderung darstellt. Diese Adresse wird mit dem Eintrag in der transienten Filtertabelle 84 verglichen, die die dem HBA zugehörige LUN-Zuordnung enthält. Falls das Bit in der LUN-Zuordnung, zugehörig dem adressierten LUN, anzeigt, dass der HBA-Zugriff auf den LUN hat, wird die Anforderung zu den Plattenadaptern 36a36d für eine Bearbeitung weitergeleitet. Falls nicht, wird die Anforderung ignoriert.
  • Die Größe der transienten Filtertabelle 84 hängt von der Anzahl von an dem Speichersystem bereitgestellten Ports ab, der Anzahl von an jedem Port unterstützten HBA und der Anzahl von LUN in dem Speichersystem. Eine beispielhafte Konfiguration des Speichersystems 20 kann 16 Ports zum Zugreifen auf 4096 LUN enthalten, wobei jeder Port in der Lage ist, Zugriffe durch 32 unterschiedliche HBA zu unterstützen. Somit könnte die Zugriffszeit für jede I/O-Anforderung lang sein, wenn die transiente Filtertabelle 84 groß ist und sie in einem einzigen großen Speicher gespeichert ist.
  • Um die Antwortzeitleistung des Speichersystems 20 zu erhöhen, ist die transiente Filtertabelle 84 so angeordnet, dass sie ein schnelles Abrufen der Zugriffsinformation für jeden HBA erlaubt. Unter Bezugnahme auf 5 wird eine veranschaulichende Konfiguration der transienten Filtertabelle gezeigt. Die transiente Filtertabelle 84 ist als eine Anordnung (Array) von Datensätzen enthaltend gezeigt, wie beispielsweise Datensatz 400. Eine Spalte von Datensätzen ist für jeden LUN in dem Speichersystem bereitgestellt, in 5 als LUN0 bis LUNx numeriert, wobei x+1 die Anzahl von LUN in dem Speichersystem ist. Eine Zeile von Datensätzen ist für jeden Port am Speichersystem bereitgestellt. Jeder Datensatz umfasst eine Bit-Tabelle 402. Die Bit-Tabelle umfasst eine Anzahl von Bits entsprechend der Maximalanzahl von Vorrichtungen (HBA), die auf jeden Port zugreifen können. In 5 sind diese Bits als D1, D2 ... Dn bezeichnet, wobei n die Maximalanzahl von Vorrichtungen angibt, die mit einem Port gekoppelt sein können.
  • Während eines Betriebs, wenn eine I/O-Anforderung am Speichersystem 20 empfangen wird, wird die Adresse der I/O-Anforderung mit den Daten in der transienten Filtertabelle 84 verglichen. Die Adresse umfasst einen Identifizierer des HBA, der die Anforderung ausgegeben hat, und eine Adresse des Speichersystemabschnitts, auf den der Host zugreifen möchte. Diese Adresse umfasst allgemein eine Bus-/Ziel-/LUN-Kombination von Feldern. Das Bus-Feld ist die Basisadresse des Speichersystems 20 auf dem Netzwerk, das Ziel ist die Quell-ID des Ports des Speichersystems, an den die Anforderung gerichtet ist, wobei die LUN die logische Einheit bezeichnet, die durch die Anforderung adressiert ist. Die Zielinformation (Zeile) und LUN-Information (Spalte) wird verwendet, um in die transiente Filtertabelle zu indizieren, um einen der Datensätze zu erhalten. Die Quell-ID für die anfordernde Vorrichtung (z.B. HBA 45 in 3) wird dann verwendet, um auszuwählen eines der Bits in der Bit-Tabelle 402 des Datensatzes 400, ausgewählt durch die Bus-/Ziel-/LUN-Adresse, um zu identifizieren, ob oder ob nicht das Bit in der Tabelle gesetzt ist. Falls das Bit in der Tabelle gesetzt ist, dann wird die Anforderung zu den Plattenlaufwerken für eine Bearbeitung weitergeleitet. Falls nicht, wird die Anforderung fallengelassen.
  • Die transiente Filtertabelle 84 kann in einem. Speicher gespeichert sein, die in 3 veranschaulicht ist, oder kann alternativ mit Hardware implementiert sein. Während die oben beschriebene Konfiguration der transienten Datenbank ein Verfahren zum Zugreifen auf HBA und LUN-Zuordnungsinformation bereitstellt, können alternative Konfigurationen auch verwendet werden. Die vorliegende Erfindung ist nicht auf diese Implementierung beschränkt. Vielmehr kann eine beliebige Konfigurationsdatenbankanordnung verwendet werden, die ein Zuordnen von Daten erlaubt, die von der Datenbank unter Verwendung eines Quell-Identifizierers und einer Ressource-Adresse erhalten werden sollen.
  • Demzufolge wurde ein Datenverwaltungssystem beschrieben, das Volumen von Daten für Host-Prozessoren basierend auf Host-Identifizierern reserviert. In einem Ausführungsbeispiel ist das Datenverwaltungssystem erweitert, um einen Sicherheitsschutz durch ein Authentisieren jeder Anforderung bereitzustellen, um zu verifizieren, dass diese wirklich durch den Host gesendet wurde, der durch den an dem Speichersystem 20 empfangenen Host-Identifizierer bezeichnet ist. Eine Authentisierung von Verbindungen zu dem Speichersystem 20 sichert die jedem der Host-Prozessoren zugeordneten Datenvolumen, in dem verifiziert wird, dass der ein Datenvolumen anfragende Host wirklich der Host ist, der in der Source-ID des Anforderungspakets bezeichnet ist. Sich lediglich auf den Quell-Identifizierer des Host-Prozessors zu verlassen, ist möglicherweise keine ausreichende Sicherheitsmaßnahme. In einigen unsicheren Umgebungen kann ein Prozessor einen falschen Quell-Identifizierer ausgeben, in einem Versuch, auf privilegierte (geheime) Daten eines anderen Hosts zuzugreifen. Eine Authentisierung verifiziert somit, dass der Host-Prozessor auch der ist, der er vorgibt zu sein, und daher ihm ein Zugriff auf die Daten erlaubt werden sollte.
  • Um die Authentisierung von Host-Anforderungen zu unterstützen, gibt in einem Ausführungsbeispiel das Speichersystem eine Anzahl von eindeutigen, erwarteten Identifizierern an jeden HBA von jeder Host-Vorrichtung vor der Initiierung von Transaktionen durch die Host-Vorrichtung aus. Das Speichersystem hält eine Kopie der erwarteten Identifizierer. Wenn der der Host-Vorrichtung zugehörige HBA eine Serie von Transaktionen initiiert, leitet er die erwarteten Identifizierer, die von dem Speichersystem empfangen wurden, zurück zum Speichersystem. Das Speichersystem vergleicht jeden empfangenen Identifzierer mit dem erwarteten Identifizierer. Da das Speichersystem nur die Identifizierer zu dem speziellen HBA weiterleitet, der dem Host zugehörig ist, kann das Speichersystem, falls der richtige Identifizierer empfangen wird, verifizieren, dass in der Tat die Anforderung von dem angegebenen Host ausgegeben wurde. In einem Ausführungsbeispiel ist das Niveau eines Sicherungsschutzes weiter durch eine Verwendung einer Zufallszahl für jeden Identifizierer erhöht. In einem weiteren Ausführungsbeispiel wird ein Verschlüsselungsschlüssel, der nur dem Host und dem Speichersystem bekannt ist, verwendet, um den Identifizierer zu verschlüsseln, bevor er zum Speichersystem gesendet wird. Das Speichersystem kann dann den Identifizierer unter Verwendung des Verschlüsselungsschlüssels entschlüsseln. Ein Verschlüsseln der Identifizierer verhindert, dass andere mit dem Netzwerk gekoppelte Vorrichtungen den Identifizierer erhalten können und Zugriff auf privilegierte Daten erlangen können. Somit wird ein zweistufiges Authentisierungsniveau bereitgestellt, da jede Transaktion einen eindeutigen Identifizierer aufweist, nur dem ausgebenden Host bekannt, und der Identifizierer unter Verwendung eines eindeutigen Zugriffsschlüssels verschlüsselt wird, der nur dem HBA an dem Host bekannt ist.
  • In einem Ausführungsbeispiel wird die Identifiziererinformation zwischen den Vorrichtungen auf dem Netzwerk (z.B. dem Host und dem Speichersystem 20) unter Verwendung von ausgewählten Feldern des Pakets übermittelt. Mit Bezug auf das Beispielpaket von 2 sind in dem Nutzlastabschnitt 160 des Pakets 50 einige der Felder veranschaulicht, die verwendet werden, um in Übereinstimmung mit dem SCSI-Protokoll zu kommunizieren. Diese Felder umfassen einen Quell-Sitzungs-ID 162, einen Ziel-Sitzungs-ID 164 und ein Datenfeld 65. In Übereinstimmung mit dem SCSI-Protokoll werden der Quell-Sitzungs-ID und der Ziel-Sitzungs-ID verwendet, um eine Reihenfolge von Transaktionen zwischen einer initiierenden Vorrichtung und einem Ziel nachzuverfolgen. Das SCSI-Protokoll erlaubt, dass eine Anzahl von Transaktionen gleichzeitig zwischen einer initiierenden Vorrichtung und einer Zielvorrichtung aussteht. Beispielsweise kann ein Host-Initiator eine Anzahl von I/O-Anforderungen an unterschiedliche Volumen in einem Zielspeichersystem ausgeben. Abhängig von der Zugänglichkeit jedes der Volumen kann die Reihenfolge, in der die Antworten auf die Anforderungen zu dem Host zurückgegeben werden, sich von der Reihenfolge der ausgegebenen Anforderungen unterscheiden. Die Sitzungs-ID werden verwendet, um Anforderungen mit Antworten an dem Host auszurichten. Die Sitzungs-IDs, die für jede Transaktion bereitgestellt werden, können beliebige Zahlen sein, solange sie hinsichtlich einer gegebenen Zeitperiode eindeutig sind. Da die Sitzungs-ID eine beliebige Zahl sein kann, werden in einem Ausführungsbeispiel die Sitzungs-ID-Felder verwendet, um eindeutige Identifiziererinformation für jede Transaktion zu übermitteln.
  • Das oben beschriebene Authentisierungsverfahren kann auf eine Vielzahl von Arten implementiert werden, und die vorliegende Erfindung ist nicht auf eine bestimmte Implementierung beschränkt. Zum Zweck einer Veranschaulichung ist jedoch ein Ausführungsbeispiel eines Host-Prozessors 312 und eines Speichersystems 320 einschließlich von Bestandteilen zum Bereitstellen der oben beschriebenen Authentisierungsfunktionalität in 6 gezeigt. In 6 speichert der Host-Bus-Adapter 345 in seinem Speicher 349 eine Datenstruktur 60. Die Datenstruktur 60 umfasst für jedes mit dem HBA gekoppeltes Speichersystem 320 einen öffentlichen Schlüssel 61, einen privaten Schlüssel 62, einen Zugriffsschlüssel 63 und eine Liste 64 mit einer oder mehreren Zufallszahlen. Jeder der Schlüssel ist ein Feld von Bits, das für ein Verschlüsseln und Entschlüsseln von Daten unter Verwendung dem Fachmann bekannter Techniken verwendet werden kann. Eine Verschlüsselung und Entschlüsselung wird durchgeführt, indem die Bitwerte der Schlüssel auf Bitwerte von Daten angewendet werden, unter Verwendung von logischen, einem ausgewählten Verschlüsselungsalgorithmus zugehörigen Operationen. Der Zugriffsschlüssel ist ein Schlüssel, der dazu bestimmt ist, Authentisierungsdaten zu verschlüsseln und zu entschlüsseln, die zwischen dem HBA und dem zugeordneten Speichersystem übermittelt werden. In einem Ausführungsbeispiel wird ein anfänglicher Wert für den Zugriffsschlüssel 64 unter Verwendung des öffentlichen und privaten Schlüssels 62 bzw. 63 erhalten, wie im Folgenden detaillierter beschrieben wird.
  • Um eine Authentisierung zu unterstützen, umfasst das Speichersystem 320 eine Filter- und Adaptereinheit 334, die jede der mit Bezug auf 3 beschriebenen Merkmale enthalten kann, und eine Anzahl von weiteren Bestandteilen, um eine Authentisierung zu unterstützen. Die Filter- und Adaptereinheit 334 umfasst einen Zufallszahlengenerator 82, der verwendet wird, um Zufallszahlen zu erzeugen, die in dem Authentisierungsprozess für einen jeden der mit dem Speichersystem gekoppelten HBAs verwendet werden. Mit dem Zufallszahlengenerator 82 ist ein Verschlüssler/Entschlüssler 85 und ein Vergleicher 87 gekoppelt. Die transiente Filtertabelle 84, die Authentisierungstabelle 86, der Zufallszahlengenerator 82, der Verschlüssler/Entschlüssler 85 und Vergleicher 87 werden gemeinsam verwendet, um Verbindungen mit dem Speichersystem unter Verwendung eines unterhalb detaillierter beschriebenen Verfahrens zu authentisieren.
  • Wie oben beschrieben, umfasst das Authentisierungsverfahren die Übermittlung von Identifizierern zwischen dem Host 312 und dem Speichersystem 320 über das Netzwerk 21. In einem Ausführungsbeispiel werden die Identifizierer unter Verwendung eines Zugriffsschlüssels verschlüsselt, der an dem Host 312 und dem Speichersystem 320 gespeichert ist, obwohl dies nicht ein erfindungsgemäßes Erfordernis ist. 7 veranschaulicht ein Verfahren zum Verteilen eines Zugriffsschlüssels zum Host 312 und dem Speichersystem 320.
  • Zugriffsschlüssel können auf unterschiedliche Weise bereitgestellt werden, einschließlich eines Zuweisens von Zugriffsschlüsseln zum Speichersystem und Host-Prozessoren vor deren Eintritt in das Netzwerk. Alternativ kann ein Zugriffsschlüssel erhalten werden, nachdem der Host-Prozessor in das Netzwerk eingetreten ist, auf eine Weise, wie sie mit Bezug auf das Flussdiagramm von 7 beschrieben ist. In 7 sind durch den HBA 345 (6) durchgeführte Betriebsvrgänge auf der linken Seite der Figur veranschaulicht, durch das Speichersystem 320 durchgeführte Betriebsvorgänge sind auf der rechten Seite der Figur veranschaulicht, und Datenflüsse sind zwischen den zwei Seiten veranschaulicht. Im Schritt 100 erzeugt der HBA 345 (6) ein öffentliches und privates Schlüsselpaar. Dieses kann beispielsweise unter Verwendung bekannter Verschlüsselungssoftware durchgeführt werden, die durch die CPU 40 ausgeführt wird. Das öffentliche und private Schlüsselpaar ist für den HBA bestimmt und nicht zugänglich durch irgendeine andere mit dem Netzwerk 21 (6) gekoppelte Vorrichtung. Unter Verwendung des öffentlichen Schlüssels 61 verschlüsselte Daten können nur unter Verwendung des privaten Schlüssels 62 entschlüsselt werden, wohingegen durch den privaten Schlüssel 62 verschlüsselte Daten nur unter Verwendung des öffentlichen Schlüssels 61 entschlüsselt werden können.
  • Im Schritt 102 leitet der HBA 345 den öffentlichen Schlüssel 61 hinüber zum Speichersystem 320. Im Schritt 101 befindet sich das Speichersystem 320 in einer Schleife, auf den Schlüssel wartend. Wenn das Speichersystem 320 den öffentlichen Schlüssel im Schritt 101 empfängt, schreitet es zum Schritt 103 voran. Im Schritt 103, unter Verwendung des öffentlichen Schlüssels 61, verschlüsselt das Speichersystem 320 einen Zugriffsschlüssel für den HBA 345, leitet diesen verschlüsselten Zugriffsschlüssel 67 zurück zum HBA 345 über das Netzwerk 21 (6) und terminiert. Da der HBA 345 die einzige Vorrichtung in dem Netzwerk ist, die den privaten Schlüssel 62 hat, der verwendet werden muss, um irgendeine mit dem öffentlichen Schlüssel verschlüsselte Nachricht zu entschlüsseln, sind andere Vorrichtungen, die die Transaktionen auf dem Netzwerk überwachen, nicht in der Lage, den verschlüsselten Zugriffsschlüssel 67 zu entschlüsseln, der durch das Speichersystem 320 weitergeleitet wird. Wenn es im Schritt 105 festgestellt wird, dass der HBA 345 den verschlüsselten Zugriffsschlüssel 67 empfangen hat, schreitet der am HBA 345 laufende Prozess zum Schritt 106 voran, in dem der HBA 345 den verschlüsselten Zugriffsschlüssel unter Verwendung des privaten Schlüssels 62 decodiert. Zusätzlich speichert im Schritt 106 der HBA 345 den Zugriffsschlüssel in einer Datenstruktur 60 mit dem öffentlichen Schlüssel 61 und privaten Schlüssel 62 für eine spätere Kommunikation mit dem Speichersystem 320.
  • Sobald der Host-Prozessor den Zugriffsschlüssel empfangen hat, kann er mit dem Prozess beginnen, I/O-Anforderungen an das Speichersystem 320 auszugeben. Die Prozesse, mit welchen ein Host-Prozessor eine I/O-Anforderung ausgibt, und durch die eine I/O-Anforderung durch das Speichersystem 320 gemäß einem Ausführungsbeispiel der vorliegenden Erfindung bedient wird, wird nunmehr mit Bezug auf die Flussdiagramme von 8A–B und 9 beschrieben.
  • In 8A ist ein Flussdiagramm bereitgestellt, um ein Ausführungsbeispiel eines Verfahrens zu veranschaulichen, das durchgeführt werden kann, um eine Verbindung zwischen dem HBA 345 und dem Speichersystem 320 einzurichten. In 8A sind durch den HBA 345 durchgeführte Betriebsvorgänge auf der linken Seite der Figur veranschaulicht, und Betriebsvorgänge, die durch das Speichersystem 320 durchgeführt werden, sind auf der rechten Seite der Figur bezeichnet, und Datenflüsse dazwischen sind gezeigt. Im Schritt 110 verhandelt der HBA 345 hinsichtlich eines Zugriffs auf das Speichersystem 320. Im Schritt 120, wenn der HBA 345 erfolgreich verhandelt hat, gibt er einen Steuerdatenblock 112 an das Speichersystem 320 aus. Der Steuerdatenblock 112 umfasst die Quell-ID des HBA 345 und gibt die HBA-Anforderungen an, die durch das Speichersystem 320 bedient werden sollen. Wenn im Schritt 121 am Speichersystem 320 festgestellt wird, dass eine Anforderung von HBA aussteht, schreitet das Verfahren zum Schritt 122 voran, indem in Antwort auf die Host-Anforderung das Speichersystem 320 einen eindeutigen Identifizierer 114 zum HBA 345 weiterleitet. In einem Ausführungsbeispiel ist der Identifizierer eine Zufallszahl, die in der Ziel-Sitzungs-ID 64 des Nutzlastabschnitts 60 des Pakets 50, wie in 2 veranschaulicht, bereitgestellt ist. Nachdem das Speichersystem die Zufallszahl zum HBA weitergeleitet hat, verschlüsselt das Speichersystem 320 im Schritt 122a die Zufallszahl 114 unter Verwendung des Zugriffsschlüssels und speichert die verschlüsselte Zufallszahl für einen späteren Vergleich.
  • Wenn im Schritt 123 festgestellt wird, dass der HBA die Zufallszahl von dem Speichersystem 320 empfangen hat, verschlüsselt im Schritt 124 der HBA die Zufallszahl 114 unter Verwendung des Zugriffsschlüssels 63 (erhalten unter Verwendung des Prozesses von 7), und liefert die Zufallszahl als eine verschlüsselte Zahl 125 an das Speichersystem 320 zurück. Wenn im Schritt 126 festgestellt wird, dass das Speichersystem 320 eine Antwort erhalten hat, vergleicht im Schritt 127 das Speichersystem 320 die empfangene Zufallszahl 125 mit der vorhergehend verschlüsselten und lokal gespeicherten Version der Zufallszahl, erzeugt im Schritt 122. Der Vergleichszustand 128 wird an den HBA weitergeleitet. Falls keine Übereinstimmung vorliegt, ist in dem Speichersystem angezeigt, dass der Host nicht den richtigen Zugriffsschlüssel hat, und/oder dass der Host nicht die richtige Zufallszahl kennt, und die Verbindung zwischen dem Host-Prozessor und dem Speichersystem wird nicht authentisiert. Dem HBA wird nicht erlaubt, auf Daten an dem Speichersystem 320 zuzugreifen, und die Transaktion ist beendet. Falls eine Übereinstimmung vorliegt, hat der Host den richtigen Zugriffsschlüssel und die richtige Zufallszahl, und eine Verbindung zwischen dem HBA und dem Speichersystem wird authentisiert.
  • Sobald die Verbindung zwischen dem HBA und dem Speichersystem authentisiert wurde, kann der HBA eine I/O-Anforderung an das Speichersystem 320 für eine Bearbeitung senden. In einem Ausführungsbeispiel der Erfindung wird jede I/O-Transaktion unter Verwendung eines unterschiedlichen Identifizierers (z.B. einer Zufallszahl) authentisiert. Da das SCSI-Protokoll erlaubt, dass multiple Anforderungen von einem HBA zu einem gegebenen Zeitpunkt ausstehen, nachverfolgt der HBA die ausstehenden I/O-Anforderungen unter Verwendung einer Technik, die als Befehlsmarkeranfrage (command tag queuing) bezeichnet wird. Jeder I/O-Anforderung wird unter Verwendung des Sourcesitzungs-ID-Felds 62 (2) ein eindeutiger Marker zugewiesen. Wenn eine Antwort vom Speichersystem zurückgeleitet wird, wird der Marker in das Sitzungs-ID-Feld der Anforderung einbezogen, so dass die Antwortdaten mit der Anforderung unter Verwendung des Markers ausgerichtet werden können.
  • Die Maximalanzahl von I/O-Anforderungen, die für einen HBA zu einem beliebigen Zeitpunkt ausstehen können, wird in Übereinstimmung mit dem Befehlsmarkeranfrageprotokoll bestimmt. Da jeder I/O-Anforderung ein eindeutiger Identifizierer zugewiesen wird, sollte jeder HBA immer eine ausreichende Anzahl von Identifizierern halten, um sicherzustellen, dass ein Identifizierer für eine ausstehende Anforderung bereitgestellt werden kann. In Übereinstimmung mit einem Ausführungsbeispiel wird daher, wenn jede Vorrichtung sich in das Speichersystem einlogt, eine Liste von eindeutigen Identifizierern zur Vorrichtung weitergeleitet. Die Anzahl von Identifizierern in der Liste entspricht der Maximalanzahl von I/O-Anforderungen, die an der Vorrichtung ausstehen können, obwohl die vorliegende Erfindung nicht auf diese Zahl beschränkt ist. Wenn jede Vorrichtung eine Anforderung an das Speichersystem ausgibt, wird einer der Identifizierer von der Liste verwendet. Jedesmal, wenn das Speichersystem auf eine Anforderung antwortet, liefert es einen neuen Identifizierer zurück, der an dem unteren Ende der Liste gespeichert ist. Identifizierer werden in First-in-First-out-Reihenfolge von der Liste ausgewählt. Als eine Folge wird eine konstante Anzahl von Identifizierern an der Vorrichtung aufrechterhalten, um Befehlsmarkeranfrageprotokolle zu erfüllen.
  • Ein Ausführungsbeispiel eines Verfahrens zum Bereitstellen der Identifizierer für den Host ist unterhalb beschrieben. Da ein eindeutiger Identifizierer oder Zufallszahl jeder I/O-Anforderung zugeordnet ist, fragt zu Beginn einer I/O-Sequenz der HBA eine Anzahl von Zufallszahlen an, die gleich der Maximalanzahl von erlaubten ausstehenden I/O-Anforderungen ist. Die Liste von Zufallszahlen wird als Liste 64 in einer Datenstruktur 60 (6) des HBA 345 gespeichert und wird zusätzlich in der Authentisierungstabelle 86 der Filter- und Adaptereinheit 334 (6) des Speichersystems 320 gespeichert.
  • Unter kurzer Bezugnahme auf 9 wird ein Beispiel von Elementen gezeigt, die in der Authentisierungstabelle 86 (6) gespeichert sein können. Für jeden der HBAs, der mit dem Speichersystem 320 gekoppelt ist, wird eine Datenstruktur 89 bereitgestellt. Die Datenstruktur kann einen öffentlichen Schlüssel 89a enthalten, der eine Kopie des öffentlichen Schlüssels 61 ist, der durch den HBA bereitgestellt wurde, um den anfänglichen Zugriffsschlüssel 63 zu erhalten. Zusätzlich kann die Datenstruktur 89 einen Zugriffsschlüssel 89b enthalten, der eine Kopie des am HBA 345 gespeicherten Zugriffsschlüssels 63 ist. In einem Ausführungsbeispiel umfasst jede der Datenstrukturen weiter eine Liste von Zufallszahlen. Die Zufallszahlen an jedem Eintrag der Datenstruktur 89c entspricht einer Zufallszahl, die verwendet werden wird, um eine zugehörige Transaktion zu authentisieren. Wie die Zufallszahl verwendet wird, um eine Transaktion zu authentisieren, wird detaillierter mit Bezug auf 8b beschrieben.
  • In 8b gibt im Schritt 184 der HBA einen Steuerdatenblock 185 an das Speichersystem 320 aus. Der Steuerdatenblock 185 umfasst eine Steuerung zum Benachrichtigen des Speichersystems 320, dass der HBA im Begriff ist, eine I/O-Transaktion zu initiieren und dass die Verbindung authentisiert wurde. Wenn im Schritt 186 festgestellt wird, dass eine Anforderung empfangen wurde, decodiert das Speichersystem 320 die Anforderung, und im Schritt 187 leitet es ein Paket 188 einschließlich einer Liste von Zufallszahlen an den HBA 345 weiter. Im Schritt 187a verschlüsselt auch das Speichersystem 320 die erste Zufallszahl unter Verwendung des Zugriffsschlüssels und speichert die verschlüsselte Zahl lokal für einen späteren Vergleich mit der verschlüsselten Zahl, die in einer Anforderung von dem HBA empfangen wird.
  • Wenn im Schritt 189 festgestellt wird, dass der HBA das Paket 188 empfangen hat, prüft der HBA 345 im Schritt 190, ob eine ausstehende I/O-Anforderung vorliegt. Falls ja, verschlüsselt im Schritt 192 der HBA die erste Zufallszahl unter Verwendung des Zugriffsschlüssels, gespeichert im Feld 63 der Datenstruktur 60. Der HBA 345 fügt dann die verschlüsselte Zufallszahl in das Quell-Sitzungs-ID-Feld des I/O-Anforderungspakets ein und leitet das I/O-Anforderungspaket 194 an das Speichersystem 320 weiter.
  • Wenn im Schritt 195 am Speichersystem 320 festgestellt wird, dass ein I/O-Anforderungspaket empfangen wurde, vergleicht im Schritt 196 das Speichersystem die verschlüsselte Zufallszahl, empfangen in dem Quell-Sitzungs-ID-Feld des I/O-Anforderungspakets 194, mit der im Schritt 187 erzeugten, verschlüsselten Zufallszahl. Alternativ kann das Speichersystem 20 einfach die empfangene Zufallszahl entschlüsseln und sie mit der erwarteten Zufallszahl vergleichen. Falls eine Übereinstimmung vorliegt, bedient das Speichersystem 320 die I/O-Anforderung und leitet ein Antwortpaket 197 zurück zum HBA 345. Das Antwortpaket umfasst durch den HBA angeforderte Daten und eine neue Zufallszahl, die verwendet werden wird, wenn die Zahlen in der Liste 188 verbraucht sind. In einem Ausführungsbeispiel ist die neue Zufallszahl in dem Ziel-Sitzungs-ID-Feld bereitgestellt, während die vorhergehende, verschlüsselte Zufallszahl in dem Quell-ID-Feld für Nachverfolgungszwecke zurückgeliefert wird, obwohl die Verwendung von speziellen Feldern keine Beschränkung der vorliegenden Erfindung darstellt.
  • Wenn im Schritt 198 festgestellt wurde, dass eine Antwort von dem Speichersystem 320 empfangen wurde, extrahiert die HBA die nicht-verschlüsselte Zufallszahl vom Sitzungs-ID-Feld des Pakets 197 und speichert die Zufallszahl in der Datenstruktur 60. Der Prozess schreitet dann zum Schritt 190 voran, in dem der HBA die nächste I/O-Anforderung initiiert, unter Verwendung der nächsten Zufallszahl von der Zufallszahlenliste 64, verschlüsselt unter Verwendung des Zugriffsschlüssels.
  • Somit wird ein Verfahren bereitgestellt, in dem eindeutige. Identifizierer verwendet werden, um einen Host an einem Speichersystem zu authentisieren. Obwohl das Verfahren unter Verwendung von Zufallszahlen beschrieben wurde, versteht es sich, dass es kein Erfordernis der Erfindung ist, und dass eine beliebige Sequenz von Zahlen alternativ verwendet werden kann, die nicht ein sofort erfassbares Muster enthalten. Wie oben erläutert, kann mehr als ein HBA gleichzeitig mit dem Speichersystem 320 verbunden sein. Wenn Identifizierer an gekoppelte HBAs verteilt werden, wird somit deren Sequenz entsprechend unter der Mehrzahl von HBAs verteilt werden, die mit dem Speichersystem 320 verbunden sind, wodurch die Zahlenverteilung noch zufälliger erscheint und demzufolge sicherer. Obwohl Verschlüsselungstechniken beschrieben wurden, ist es zusätzlich kein Erfordernis der Erfindung, dass Identifizierer vor einer Übermittlung verschlüsselt werden müssen. Alternativ kann ein Authentisierungsverfahren verwendet werden, das nicht wie jede Anforderung Identifizierer einbezieht, sondern die gesamte Anforderung unter Verwendung des Zugriffsschlüssels verschlüsselt. Es wird auch erwogen, dass unterschiedliche Zugriffsschlüssel für jede Transaktion bereitgestellt werden können. Die vorliegende Erfindung kann eine beliebige Kombination dieser Authentisierungstechniken enthalten, und ist daher nicht auf die oben beschriebenen speziellen Ausführungsbeispiele beschränkt.
  • Die obigen Techniken können verwendet werden, um zu verifizieren, dass eine Verbindung zwischen einem Initiator und einem Ziel autorisiert ist. In einem weiteren Ausführungsbeispiel werden Verfahren auch verwendet, um sicherzustellen, dass die Daten, die an dem Ziel empfangen werden, die Daten sind, die durch den Initiator gesendet wurden. Demzufolge kann eine weitergehende Sicherheit erhalten werden, indem Validierungsverfahren angewendet werden, um sicherzustellen, dass Befehle und Daten nicht während einer Übermittlung von dem Initiator zum Ziel beschädigt werden. Das Validierungsverfahren kann bereitgestellt werden, um auszuschließen, dass andere mit dem Netzwerk gekoppelte Vorrichtungen Transaktionen zwischen dem Initiator und dem Ziel stören.
  • In Übereinstimmung mit einem weiteren Gesichtspunkt der Erfindung umfasst ein Verfahren zum Validieren einer Datenübertragung zwischen einer Quelle und einem Ziel über das Netzwerk einen Schritt zum Erhalten einer digitalen Signatur der Übermittlung sowohl am Ziel als auch am Initiator. Die digitale Signatur ist in der Form einer Prüfsumme. Jedes Byte von Daten, das zwischen einem Ziel und einem Initiator übermittelt wird, wird mit vorhergehenden Bytes der Übertragung unter Verwendung einer Prüffunktion (hashing function) kombiniert, um die Prüfsumme zu bilden. Die Prüffunktion kann beispielsweise eine Exklusiv-ODER-Funktion sein oder eine Abwandlung davon. Die in die Signatur einbezogenen Daten können ausschließlich Daten enthalten, die durch den Initiator zum Ziel geleitet werden, nur die Daten, die vom Ziel zum Initiator übermittelt werden, oder eine Kombination davon.
  • Mit Bezug auf 10 wird nun ein Flussdiagramm eines Ausführungsbeispiels eines Verfahrens zum Validieren einer Datenübertragung zwischen einem Initiator und einem Ziel gezeigt. Das Flussdiagramm ist ähnlich zu dem mit Bezug auf 8B beschriebenen, enthält jedoch Schritte zum Validieren der Datenübertragung. Im Schritt 200 wird am Initiator festgestellt, ob oder ob nicht irgendwelche I/O-Anforderungen vorliegen. Falls ja, verschlüsselt im Schritt 202 der Initiator die Zufallszahl, die der Transaktion zugeordnet ist, und leitet die I/O-Anforderung 203 mit der verschlüsselten Zufallszahl in der Quell-Sitzungs-ID zum Ziel. Wenn im Schritt 204 festgestellt wird, dass das Ziel die Anforderung empfangen hat, vergleicht im Schritt 205 das Ziel die empfangene, verschlüsselte Zahl mit der gespeicherten, verschlüsselten, erwarteten Zufallszahl, um eine Übereinstimmung festzustellen. Falls keine Übereinstimmung vorliegt, antwortet das Ziel nicht. Falls eine Übereinstimmung vorliegt, leitet im Schritt 206 das Ziel eine neue, verschlüsselte Zufallszahl und Antwortdaten zum Ziel. Im Schritt 206 fügt das Ziel auch die Antwortdaten in die existierende Prüfsumme ein (hashes), um eine neue Prüfsumme bereitzustellen, um die digitale Signatur der Datenübertragung zu bilden. Die Antwort 207 wird am Initiator im Schritt 208 empfangen. Im Schritt 209 fügt (hashes) der Initiator ebenfalls die Antwortdaten in die existierende Prüfsumme, um eine neue Prüfsumme bereitzustellen, um die digitale Signatur der Datenübertragung zu bilden. Der Vorgang des Ausgebens von I/O-Anforderungen und Erzeugens von Prüfsummen dauert für die Anzahl von Anforderungen in der Initiator-Zielverbindung an. Wenn im Schritt 200 festgestellt wird, dass keine weiteren Anforderungen vorliegen, schreitet der Vorgang zur Validierungsphase im Schritt 210 voran, in der 11 veranschaulicht.
  • Im Schritt 210 verschlüsselt der Initiator die Prüfsumme unter Verwendung des Zugriffsschlüssels und leitet die verschlüsselte Prüfsumme 212 an das Ziel weiter. Das Ziel empfängt die verschlüsselte Prüfsumme im Schritt 214. Im Schritt 216 entschlüsselt das Ziel die Prüfsumme, und im Schritt 218 vergleicht das Ziel die entschlüsselte Prüfsumme mit der durch das Ziel erzeugten Prüfsumme. Das Ziel sendet dann ein Statuspaket 220 an den Initiator, das anzeigt, ob die Prüfsummen übereinstimmten oder nicht. Falls im Schritt 222 festgestellt wird, dass die Transaktion gültig war (d.h. keine Daten beschädigt waren), dann ist die Verbindung zwischen dem Initiator und dem Ziel beendet. Falls der Status 220 anzeigt, dass die Transaktion nicht gültig war und dass die Daten beschädigt waren, berichtet der Initiator die Verbindung mit dem Ziel wieder ein und wiederholt die Datentransaktion.
  • Somit wurde ein Datenverwaltungsverfahren und Vorrichtungen beschrieben, die drei Schichten einer Datenverwaltung bereitstellen. Ein Filtern wird bereitgestellt, um sicherzustellen, dass jeder Host nur auf solche Datenvolumen zugreift, für die er Zugriffsrechte hat. Eine Sicherheit kann eingefügt werden unter Verwendung von Authentisierungsverfahren, um zu verifizieren, dass jede Anforderung wirklich durch den Host ausgegeben wurde, der in dem Identifizierer der Anforderung bezeichnet ist. Zuletzt kann eine Validierung bereitgestellt werden, um sicherzustellen, dass keine Daten während einer Übermittlung beschädigt wurden. Ein System, dass das Datenverwaltungsverfahren und die diesbezügliche Vorrichtung verwendet, kann einen oder mehrere dieser Schichten einer Datenverwaltung unabhängig voneinander enthalten, und somit ist die vorliegende Erfindung nicht auf ein System beschränkt, das alle oben erläuterten Datenverwaltungstechniken verwendet. Solch ein Datenverwaltungssystem stellt verbesserte Kontrolle bezüglich Datenzugriffen durch Nutzer an einem Host-Prozessor bereit, indem die Daten, auf die durch den Host-Prozessor zugegriffen werden kann, beschränkt werden. Während somit Nutzer an einem Host-Prozessor in der Lage sein können, auf alle Daten zuzugreifen, die dem Host-Prozessor zugewiesen sind (in Abhängigkeit von den dem Prozessor zugeordneten Rechten), sind weder die Nutzer noch sogar der Systemadministrator mit dem höchsten Zugriffsrecht am Host-Prozessor in der Lage, auf Daten zuzugreifen, die nicht dem Host durch das Speichersystem zugewiesen sind, unabhängig von den Privilegien des Nutzers an dem Host.
  • Obwohl die obige Erörterung ein beispielhaftes System betrifft, in dem ein Hostzugriff auf Daten an einem Speichersystem erlangt, können die oben beschriebenen Verfahren auf ein beliebiges System angewendet werden, in dem eine Ressource durch eine Mehrzahl von Vorrichtungen gemeinsam genutzt wird. Solche Systeme umfassen, sind jedoch nicht darauf beschränkt, beliebige Arten von Speichersystemen einschließlich Plattenlaufwerken, Bandlaufwerken, Dateiservern und ähnlichem. Hinsichtlich der detailliert beschriebenen verschiedenen Ausführungsbeispiele der vorliegenden Erfindung werden dem Fachmann unterschiedliche Abwandlungen und Verbesserungen offensichtlich werden. Solche Abwandlungen und Verbesserungen liegen im Gedanken und Umfang der Erfindung. Demzufolge stellt die vorhergehende Beschreibung nur ein Beispiel dar und ist nicht als beschränkend zu betrachten. Die Erfindung ist nur durch die folgenden Ansprüche und Äquivalente dazu definiert.

Claims (37)

  1. Ein Datenverwaltungsverfahren zum Verwalten eines Zugriffs auf eine Vielzahl von logischen Volumen in einem Speichersystem durch mindestens zwei mit dem Speichersystem durch ein Netzwerk gekoppelte Vorrichtungen, wobei das Speichersystem eine Vielzahl von Speichervorrichtungen umfasst, die in die Vielzahl von logischen Volumen unterteilt sind, und wobei das Verfahren die Schritte umfasst: Empfangen von Verschlüsselungsinformation von einer der mindestens zwei Vorrichtungen an dem Speichersystem über das Netzwerk; Übertragen eines erwarteten Zugriffsschlüssels zwischen dem Speichersystem und der mindestens einen der mindestens zwei Vorrichtungen, wobei der erwartete Zugriffsschlüssel mit der Verschlüsselungsinformation verschlüsselt ist; Empfangen einer Anforderung von einer der mindestens zwei Vorrichtungen an dem Speichersystem über das Netzwerk, um auf mindestens eines der Vielzahl von logischen Volumen zuzugreifen, wobei die Anforderung die eine der mindestens zwei Vorrichtungen identifiziert und das mindestens eine der Vielzahl von logischen Volumen, und einen erwarteten Zugriffschlüssel enthält; Bestimmen am Speichersystem, ob die eine der mindestens zwei Vorrichtungen autorisiert ist, auf das mindestens eine der Vielzahl von logischen Volumen zuzugreifen, basierend auf Konfigurationsdaten, die identifizieren, welche der mindestens zwei Vorrichtungen autorisiert sind, auf welche der Vielzahl von logischen Volumen zuzugreifen, wobei der Bestimmungsschritt einen Schritt umfasst, zu verifizieren, dass die eine der mindestens zwei in der Anfrage identifizierten Vorrichtungen die eine der mindestens zwei Vorrichtungen ist, die die Anforderung herausgegeben hat, basierend, mindestens teilweise, auf einem Vergleich zwischen dem angeforderten Zugriffsschlüssel und dem erwarteten Zugriffsschlüssel; und Weiterleiten der Anforderung, falls die eine der mindestens zwei Vorrichtungen autorisiert ist, auf das mindestens eine der Vielzahl von logischen Volumen zuzugreifen.
  2. Das Datenverwaltungsverfahren nach Anspruch 1, wobei das Speichersystem angeordnet ist, die Vielzahl von logischen Volumen zu speichern, und wobei die Konfigurationsdaten in dem Speichersystem in einer eine Vielzahl von Datensätzen enthaltenden Konfigurationstabelle gespeichert sind, wobei jeder der Datensätze einen Identifizierer umfasst, und Information, die anzeigt, welche der Vielzahl von logischen Volumen einer durch den entsprechenden Identifizierer identifizierten Vorrichtung zur Verfügung stehen: wobei die Anforderung einen Quell-Identifizierer umfasst, der die eine der mindestens zwei Vorrichtungen identifiziert, die die Anforderung initiiert hat, und eine Adresse für die mindestens eine der Vielzahl von logischen Volumen in dem Speichersystem; und wobei basierend auf Konfigurationsdaten, die dem Quell-Identifizierer und der Adresse des mindestens einen der logischen Volumen zugeordnet sind, bestimmt wird, ob die Anforderung zu bedienen ist.
  3. Das Datenverwaltungsverfahren nach Anspruch 2, wobei der Empfangsschritt ein Empfangen der Anforderung unter Verwendung eines Fibre Channel Protokolls umfasst.
  4. Das Datenverwaltungverfahren nach Anspruch 2, wobei der Bestimmungsschritt weiter einen Schritt umfasst, um einen in der Anforderung enthaltenen und nur der einen der mindestens zwei Vorrichtungen bekannten Identifizierer mit einem in dem Speichersystem gespeicherten eindeutigen Identifizierer zu vergleichen, um zu bestimmen, ob der bekannte Identifizierer und der eindeutigen Identifizierer übereinstimmen.
  5. Das Datenverwaltungsverfahren nach Anspruch 4, wobei der eindeutige Identifizierer durch einen Schlüssel verschlüsselt ist, der der einen der mindestens zwei Vorrichtungen, die die Anforderung herausgegeben hat, zugeordnet ist.
  6. Das Datenverwaltungsverfahren nach Anspruch 5, wobei der Schritt zum Verifizieren weiter einen Schritt umfasst zum Entschlüsseln eines Abschnitts der Anforderung an dem Speichersystem unter Verwendung eines Schlüssels, der der einen der mindestens zwei Vorrichtungen, die die Anforderung herausgegeben hat, zugeordnet ist.
  7. Das Datenverwaltungsverfahren nach Anspruch 1, wobei die eine der mindestens zwei Vorrichtugen ein Host-Prozessor ist, und wobei der Empfangsschritt den Schritt zum Empfangen der Anforderung von dem Host-Prozessor umfasst.
  8. Das Datenverwaltungsverfahren nach Anspruch 1, wobei die mindestens eine der mindestens zwei Vorrichtungen ein Dateiserver ist, und wobei der Empfangsschritt den Schritt zum Empfangen der Anforderung von dem Dateiserver umfasst.
  9. Das Datenverwaltungsverfahren nach Anspruch 1, wobei das Speichersystem eine Vielzahl von Plattenlaufwerken umfasst, und wobei der Bedienschritt den Schritt zum Weiterleiten der Anforderung an eine der Vielzahl von Plattenvorrichtungen umfasst.
  10. Das Datenverwaltungsverfahren nach Anspruch 1, weiter den Schritt umfassend: Validieren der Anforderung von der einen der mindestens zwei Vorrichtungen an dem Speichersystem, um zu verifizieren, dass die Anforderung während der Übermittlung nicht verändert wurde.
  11. Das Datenverwaltungsverfahren nach Anspruch 1, wobei die Konfigurationstabelle eine Vielzahl von Datensätzen enthält, die in einer Anordnung angeordnet sind, einschließlich einer Vielzahl von Zeilen entsprechend einer Anzahl von an dem Speichersystem verfügbaren logischen Volumen, und einer Anzahl von Spalten, die einer Anzahl von an dem Speichersystem verfügbaren Ports entspricht, und wobei jeder der Datensätze eine Bit-Tabelle umfasst, mit einem Bit entsprechend einer jeden Vorrichtung, die autorisiert ist, auf jeden der entsprechenden Ports zuzugreifen, und wobei der Schritt zum Bestimmen, ob die Anforderung bedient werden soll, die Schritte umfasst: Zugreifen auf einen Datensatz in der Konfigurationsdatenbank unter Verwendung der in der Anforderung bereitgestellten Adresse; und Vergleichen der Bit-Tabelle des angewählten Datensatzes mit dem Quell-Identifizierer, um festzustellen, ob ein Bit der Bit-Tabelle des angewählten Datensatzes angibt, dass die eine der mindestens zwei Vorrichtungen, die dem Quell-Identifizierer zugeordnet ist, Zugriff auf das logische Volumen des Speichersystems hat, das dem angewählten Datensatz zugeordnet ist.
  12. Das Datenverwaltungsverfahren nach Anspruch 1, weiter die Schritte umfassend: Bedienen einer ersten Anforderung, ausgegeben durch eine erste der mindestens zwei Vorrichtungen, für einen Zugriff auf ein erstes logisches Volumen des Speichersystems, in Antwort auf Konfigurationsdaten, die der ersten der mindestens zwei Vorrichtungen zugeordnet sind, und einer Adresse des ersten logischen Volumens, die in der ersten Anforderung spezifiziert ist; und Verhindern, dass eine zweite Anforderung, ausgegeben durch eine zweite der mindestens zwei Vorrichtungen, für einen Zugriff auf das erste logische Volumen des Speichersystems, bedient wird, in Antwort auf Konfigurationsdaten, die der zweiten der mindestens zwei Vorrichtungen zugeordnet sind, und der Adresse des ersten logischen Volumens, die in der zweiten Anforderung angegeben ist.
  13. Das Datenverwaltungsverfahren nach Anspruch 1, wobei der Empfangsschritt ein Empfangen der Anforderung durch mindestens einen Port des Speichersystems umfasst.
  14. Das Datenverwaltungsverfahren nach Anspruch 1, wobei das Small Component System Interconnect (SCSI)-Protokoll als ein Netzwerkprotokoll verwendet wird.
  15. Das Datenverwaltungsverfahren nach Anspruch 1, wobei das Internet Protocol (IP) als ein Netzwerkprotokoll verwendet wird.
  16. Das Datenverwaltungsverfahren nach einem der Ansprüche 14 oder 15, wobei mindestens ein Anforderungspaket vom Fibre Channel Typ über ein Fibre Channel Netzwerk empfangen wird.
  17. Ein computerlesbares Medium, umfassend eine erste Datenstruktur einschließlich Anweisungen, das Verfahren einer der Ansprüche 1 bis 16 auszuführen.
  18. Das computerlesbare Medium nach Anspruch 17, wobei das computerlesbare Medium ein Speicher des Speichersystems ist.
  19. Das computerlesbare Medium einer der Ansprüche 17 und 18, weiter umfassend: eine zweite Datenstruktur, umfassend eine Vielzahl von Datensätzen, die eine Kopie eines Unter-Satzes der Vielzahl von Datensätzen in der ersten Datenstruktur bilden, wobei die Untergruppe der Vielzahl von Datensätzen in der zweiten Datenstruktur Vorrichtungen entspricht, die in das Speichersystem eingelogt sind.
  20. Das computerlesbare Medium nach Anspruch 19, wobei die zweite Datenstruktur weiter umfasst: eine Anordnung von Datensätzen mit einer Vielzahl von Spalten entsprechend den Volumen von Daten an dem Speichersystem, und einer Vielzahl von Zeilen entsprechend einer Vielzahl von Ports des Speichersystems, wobei jeder Datensatz mindestens ein Bit enthält, das jeder der Vielzahl von Vorrichtungen entspricht.
  21. Das computerlesbare Medium nach Anspruch 19, wobei die Vielzahl von Datensätzen jeweils einen Identifizierer umfasst, der mindestens eine der Vielzahl von Vorrichtungen identifiziert.
  22. Das computerlesbare Medium nach Anspruch 21, wobei die Konfigurationsdaten mit dem Identifizierer indiziert werden, der die mindestens eine der Vielzahl von Vorrichtungen identifiziert.
  23. Ein Speichersystem, umfassend: eine Vielzahl von Speichervorrichtungen, die in eine Vielzahl von logischen Volumen unterteilt sind; eine Konfigurationstabelle, um Konfigurationsdaten zu speichern, die angeben, welche einer Vielzahl von mit dem Speichersystem über ein Netzwerk verbundenen Vorrichtungen autorisiert sind, auf ein jedes der Vielzahl von logischen Volumen zuzugreifen; eine Empfangsvorrichtung, um über das Netzwerk von einer der mindestens zwei Vorrichtungen Verschlüsselungsinformationen zu empfangen, eine Anforderung für einen Zugriff auf mindestens eines der Vielzahl von logischen Volumen, wobei die Anforderung die eine der mindestens zwei Vorrichtungen und das mindestens eine der Vielzahl von logischen Volumen identifiziert, und einen erwarteten zugriffsschlüssel; einen Filter, um zu bestimmen, ob die eine der mindestens zwei Vorrichtungen autorisiert ist, auf das mindestens eine der Vielzahl von logischen Volumen zuzugreifen, basierend auf Konfigurationsdaten, die angeben, welche der mindestens zwei Vorrichtungen autorisiert sind, auf welche der Vielzahl von logischen Volumen zuzugreifen, um zu verifizieren, dass die eine der mindestens zwei in der Anfrage identifizierten Vorrichtungen die eine der mindestens zwei Vorrichtungen ist, die die Anforderung herausgegeben hat, basierend, mindestens teilweise, auf einem Vergleich zwischen dem angeforderten Zugriffsschlüssel und dem erwarteten Zugriffsschlüssel, und um die Anforderung weiterzuleiten, falls die eine der mindestens zwei Vorrichtungen autorisiert ist, auf das mindestens eine der Vielzahl von logischen Volumen zuzugreifen.
  24. Die Speichervorrichtung nach Anspruch 23, wobei der Filter verhindert, dass eine Anforderung für ein Volumen durch das Speichersystem bedient wird, in Übereinstimmung mit den Konfigurationsdaten, die anzeigt, dass die eine der Vielzahl von Vorrichtungen, die die Anforderung ausgegeben hat, nicht autorisiert ist, auf das Volumen zuzugreifen.
  25. Das Speichersystem nach Anspruch 23, wobei die Konfigurationstabelle eine Anzahl von Datensätzen umfasst, wobei jeder Datensatz einen Identifizierer und eine Tabelle enthält, wobei die Tabelle angibt, auf welches Volumen des Speichersystems durch eine dem Identifizierer zugeordnete Vorrichtung zugegriffen werden kann, und wobei jede an dem Filter empfangene Anforderung einen Quell-Identifizierer enthält, der die eine der Vielzahl von Vorrichtungen identifiziert, die die Anforderung ausgegeben hat, und eine Adresse auf eine der Vielzahl von Volumen, und wobei der Filter weiter umfasst: einen Vergleicher, um jede Anforderung mit der Information in einem ausgewählten der Anforderung zugeordneten Datensatz in der Konfigurationstabelle zu vergleichen, um zu bestimmen, ob die eine der Vielzahl von Vorrichtungen, die die Anforderung ausgegeben hat, autorisiert ist, auf das Volumen zuzugreifen.
  26. Das Speichersystem nach Anspruch 25, wobei ein eindeutigenr Identifizierer in dem ausgewählten Datensatz dem in der Anforderung enthaltenen Quell-Identifizierer entspricht.
  27. Das Speichersystem nach Anspruch 24, wobei das Speichersystem und die Vielzahl von Vorrichtungen über das Netzwerk unter Verwendung eines Fibre Channel Netzwerkprotokolls kommunizieren.
  28. Das Speichersystem nach Anspruch 23, weiter umfassend: eine Vorrichtung zum Authentisieren jeder an dem Filter empfangenen Anforderung, um zu verifizieren, dass die eine der Vielzahl von Vorrichtungen, die in der Anforderung als Herausgeber der Anforderung bezeichnet ist, die Vorrichtung ist, die die Anforderung ausgegeben hat.
  29. Das Speichersystem nach Anspruch 23, weiter umfassend: eine Vorrichtung zum Validieren einer an dem Speichersystem empfangenen Anforderung, um zu verifizieren, dass die Anforderung während einer Übermittlung nicht verändert wurde.
  30. Das Speichersystem nach Anspruch 23, wobei die mindestens eine Speichervorrichtung eine Vielzahl von Plattenlaufwerken enthält.
  31. Das Speichersystem nach Anspruch 23, wobei mindestens eine der Vielzahl von Vorrichtungen ein Host-Prozessor ist.
  32. Das Speichersystem nach Anspruch 23, wobei eine der Vielzahl von Vorrichtungen ein Dateiserver ist.
  33. Das Speichersystem nach Anspruch 23, weiter einen Adapter mit einem Port umfassend, durch den eine oder mehrere der Anforderungen empfangen werden.
  34. Das Speichersystem nach Anspruch 23, wobei das Small Component System Interconnect (SCSI)-Protokoll als ein Netzwerkprotokoll verwendet wird.
  35. Das Speichersystem nach Anspruch 23, wobei das Internet Protocol (IP) als ein Netzwerkprotokoll verwendet wird.
  36. Das Speichersystem nach einem der Ansprüche 34 und 37, wobei ein oder mehrere Anforderungspakete vom Fibre Channel Typ über ein Fibre Channel Netzwerk empfangen werden.
  37. Das Speichersystem nach Anspruch 23, weiter eine Vorrichtung umfassend, um auf die Konfigurationsdaten unter Verwendung von Quell-Identifizierern zuzugreifen.
DE19983331T 1998-06-30 1999-06-16 Verfahren und Vorrichtung zum Bereitstellen einer Datenverwaltung für ein mit einem Netzwerk gekoppelten Speichersystem Expired - Fee Related DE19983331B4 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US09/107,618 US7756986B2 (en) 1998-06-30 1998-06-30 Method and apparatus for providing data management for a storage system coupled to a network
US09/107,618 1998-06-30
PCT/US1999/013628 WO2000000889A2 (en) 1998-06-30 1999-06-16 Method and apparatus for providing data management for a storage system coupled to a network

Publications (2)

Publication Number Publication Date
DE19983331T1 DE19983331T1 (de) 2001-06-13
DE19983331B4 true DE19983331B4 (de) 2006-01-19

Family

ID=22317517

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19983331T Expired - Fee Related DE19983331B4 (de) 1998-06-30 1999-06-16 Verfahren und Vorrichtung zum Bereitstellen einer Datenverwaltung für ein mit einem Netzwerk gekoppelten Speichersystem

Country Status (6)

Country Link
US (2) US7756986B2 (de)
JP (1) JP3779154B2 (de)
KR (1) KR100585368B1 (de)
DE (1) DE19983331B4 (de)
GB (1) GB2363492B (de)
WO (1) WO2000000889A2 (de)

Families Citing this family (211)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6542961B1 (en) * 1998-12-22 2003-04-01 Hitachi, Ltd. Disk storage system including a switch
US8321457B2 (en) 2000-09-08 2012-11-27 Oracle International Corporation Techniques for automatically developing a web site
US6487547B1 (en) 1999-01-29 2002-11-26 Oracle Corporation Database appliance comprising hardware and software bundle configured for specific database applications
US6845395B1 (en) * 1999-06-30 2005-01-18 Emc Corporation Method and apparatus for identifying network devices on a storage network
US6697359B1 (en) * 1999-07-02 2004-02-24 Ancor Communications, Inc. High performance switch fabric element and switch systems
US7237015B1 (en) * 1999-07-16 2007-06-26 Canon Kabushiki Kaisha System for setting location information in a device on a network
US7467211B1 (en) 1999-10-18 2008-12-16 Cisco Technology Inc. Remote computer system management through an FTP internet connection
US7437550B2 (en) 1999-12-02 2008-10-14 Ponoi Corp. System for providing session-based network privacy, private, persistent storage, and discretionary access control for sharing private data
EP1238486B1 (de) * 1999-12-10 2008-10-15 Qlogic Switch Products, Inc. Verfahren und Vorrichtung zur kreditbasierten Flusskontrolle in Fibre-Channel Systemen
GB2359153A (en) 2000-02-10 2001-08-15 Int Computers Ltd Device discovery in a shared data storage system
US7409543B1 (en) * 2000-03-30 2008-08-05 Digitalpersona, Inc. Method and apparatus for using a third party authentication server
US7337209B1 (en) 2000-04-28 2008-02-26 Sheer Networks, Inc. Large-scale network management using distributed autonomous agents
JP4719957B2 (ja) * 2000-05-24 2011-07-06 株式会社日立製作所 記憶制御装置及び記憶システム並びに記憶システムのセキュリティ設定方法
US6971016B1 (en) * 2000-05-31 2005-11-29 International Business Machines Corporation Authenticated access to storage area network
AU2001275252A1 (en) * 2000-06-05 2001-12-17 Qlogic Switch Products, Inc. Hardware-enforced loop-level hard zoning for fibre channel switch fabric
US7978695B2 (en) * 2000-06-05 2011-07-12 Qlogic Switch Products, Inc. Hardware-enforced loop and NPIV hard zoning for fibre channel switch fabric
US7225191B1 (en) * 2000-06-27 2007-05-29 Emc Corporation Method and apparatus for verifying storage access requests in a computer storage system with multiple storage elements
US6977927B1 (en) * 2000-09-18 2005-12-20 Hewlett-Packard Development Company, L.P. Method and system of allocating storage resources in a storage area network
US7114168B1 (en) * 2000-09-29 2006-09-26 Intel Corporation Method and apparatus for determining scope of content domain
US7203954B1 (en) * 2000-10-11 2007-04-10 Sony Corporation IP address discovery for cable modem in set-top box
US7089293B2 (en) * 2000-11-02 2006-08-08 Sun Microsystems, Inc. Switching system method for discovering and accessing SCSI devices in response to query
US7865596B2 (en) * 2000-11-02 2011-01-04 Oracle America, Inc. Switching system for managing storage in digital networks
DE10055250A1 (de) * 2000-11-08 2002-06-06 Siemens Ag Softwarewerkzeug zur Überwachung eines Automatisierungsgerätes auf Störungen
US20020103913A1 (en) * 2001-01-26 2002-08-01 Ahmad Tawil System and method for host based target device masking based on unique hardware addresses
WO2002071224A1 (en) * 2001-03-01 2002-09-12 Storeage Networking Technologies Storage area network (san) security
JP2002288108A (ja) * 2001-03-28 2002-10-04 Hitachi Ltd 外部記憶装置
US20020161596A1 (en) * 2001-04-30 2002-10-31 Johnson Robert E. System and method for validation of storage device addresses
US6996629B1 (en) * 2001-04-30 2006-02-07 Lsi Logic Corporation Embedded input/output interface failover
US6957279B2 (en) * 2001-04-30 2005-10-18 Lsi Logic Corporation Selectable logical identifier mapping
US7134122B1 (en) 2001-05-31 2006-11-07 Oracle International Corporation One click deployment
AU2002334947A1 (en) * 2001-06-14 2003-01-21 Cable And Wireless Internet Services, Inc. Secured shared storage architecture
AU2002354612A1 (en) * 2001-07-09 2003-01-29 Cable And Wireless Internet Services, Inc. Methods and systems for shared storage virtualization
JP2003046533A (ja) * 2001-08-02 2003-02-14 Nec Commun Syst Ltd ネットワークシステム、その認証方法及びそのプログラム
US7426553B1 (en) * 2001-08-02 2008-09-16 At&T Intellectual Property I, L.P. Provisioning data link connection identifiers in a communications network
US20030055932A1 (en) * 2001-09-19 2003-03-20 Dell Products L.P. System and method for configuring a storage area network
US20030061382A1 (en) * 2001-09-21 2003-03-27 Dell Products L.P. System and method for naming hosts in a distributed data processing system
US7430593B2 (en) * 2001-10-05 2008-09-30 International Business Machines Corporation Storage area network for topology rendering
US8060587B2 (en) * 2001-10-05 2011-11-15 International Business Machines Corporation Methods and apparatus for launching device specific applications on storage area network components
US20030154271A1 (en) * 2001-10-05 2003-08-14 Baldwin Duane Mark Storage area network methods and apparatus with centralized management
JP2003141054A (ja) * 2001-11-07 2003-05-16 Hitachi Ltd ストレージ管理計算機
US6978270B1 (en) * 2001-11-16 2005-12-20 Ncr Corporation System and method for capturing and storing operational data concerning an internet service provider's (ISP) operational environment and customer web browsing habits
US20030140128A1 (en) * 2002-01-18 2003-07-24 Dell Products L.P. System and method for validating a network
US7509405B2 (en) * 2002-01-30 2009-03-24 Hewlett-Packard Development Company, L.P. Method and apparatus for inferring topology of a network
US6988149B2 (en) * 2002-02-26 2006-01-17 Lsi Logic Corporation Integrated target masking
US20030189929A1 (en) * 2002-04-04 2003-10-09 Fujitsu Limited Electronic apparatus for assisting realization of storage area network system
JP2003316671A (ja) * 2002-04-19 2003-11-07 Hitachi Ltd ストレージネットワークの構成表示方法
US7398326B2 (en) * 2002-04-25 2008-07-08 International Business Machines Corporation Methods for management of mixed protocol storage area networks
US7707263B1 (en) * 2002-05-03 2010-04-27 Netapp, Inc. System and method for associating a network address with a storage device
US7519709B2 (en) * 2002-05-09 2009-04-14 Qwest Communications International Inc. Systems and methods for creating network architecture planning tools
US8335839B2 (en) * 2002-05-09 2012-12-18 Qwest Communications International Inc. Systems and methods for using network architecture planning tools
US20030226024A1 (en) * 2002-06-04 2003-12-04 Qwest Communications International Inc. Secure internet documents
US7047286B2 (en) * 2002-06-13 2006-05-16 International Business Machines Corporation Method of modifying a logical library configuration from a remote management application
US7330897B2 (en) * 2002-07-09 2008-02-12 International Business Machines Corporation Methods and apparatus for storage area network component registration
US7254778B2 (en) * 2002-08-27 2007-08-07 Sun Microsystems, Inc. System and method browsing a network topology using a character driven interface
JP2004102558A (ja) * 2002-09-09 2004-04-02 Murata Mach Ltd サーバ装置
US20040088432A1 (en) * 2002-10-31 2004-05-06 Hubbard Eric D. Management of attribute data
US20040085347A1 (en) * 2002-10-31 2004-05-06 Richard Hagarty Storage area network management
US8019840B2 (en) * 2002-10-31 2011-09-13 Hewlett-Packard Development Company, L.P. Storage area network mapping
JP4252301B2 (ja) * 2002-12-26 2009-04-08 株式会社日立製作所 記憶システム及びそのデータバックアップ方法
US20040199618A1 (en) * 2003-02-06 2004-10-07 Knight Gregory John Data replication solution
US8015266B1 (en) * 2003-02-07 2011-09-06 Netapp, Inc. System and method for providing persistent node names
US7222173B2 (en) 2003-02-10 2007-05-22 International Business Machines Corporation Limited knowledge of configuration information of a FICON controller
US20040199639A1 (en) * 2003-04-04 2004-10-07 Harris Mitchell N. Automated shared drive mapping
US7523235B2 (en) * 2003-06-11 2009-04-21 Lsi Corporation Serial Advanced Technology Attachment (SATA) switch
JP4335597B2 (ja) * 2003-06-30 2009-09-30 株式会社日立製作所 ストレージ管理システム
US8782097B2 (en) * 2003-07-25 2014-07-15 Honeywell International Inc. Multiple system compatible database system and method
US7565431B2 (en) * 2003-11-20 2009-07-21 International Business Machines Corporation Method, system, and program for determining information on a storage system in a network
US7475351B1 (en) * 2003-12-02 2009-01-06 Sun Microsystems, Inc. Interactive drag and snap connection tool
US7464100B2 (en) * 2003-12-24 2008-12-09 Sap Ag Reorganization-free mapping of objects in databases using a mapping chain
US20050154989A1 (en) * 2004-01-14 2005-07-14 Steven Maddocks User interface for a storage network
US20050154984A1 (en) * 2004-01-14 2005-07-14 Steven Maddocks Interface manager and methods of operation in a storage network
JP4554949B2 (ja) * 2004-01-23 2010-09-29 株式会社日立製作所 管理計算機および記憶装置の管理方法
GB2410402B (en) * 2004-01-23 2007-01-24 Rxtxtech Ltd A system and method for limiting simultaneous access to a network service
US7451212B2 (en) * 2004-03-17 2008-11-11 At&T Intellectual Property I, L.P. Logical port configuration system
US7549048B2 (en) * 2004-03-19 2009-06-16 Microsoft Corporation Efficient and secure authentication of computing systems
JP4698982B2 (ja) * 2004-04-06 2011-06-08 株式会社日立製作所 暗号処理を行うストレージシステム
US20050240727A1 (en) * 2004-04-23 2005-10-27 Shishir Shah Method and system for managing storage area networks
US7930377B2 (en) 2004-04-23 2011-04-19 Qlogic, Corporation Method and system for using boot servers in networks
US7669190B2 (en) * 2004-05-18 2010-02-23 Qlogic, Corporation Method and system for efficiently recording processor events in host bus adapters
US7577772B2 (en) * 2004-09-08 2009-08-18 Qlogic, Corporation Method and system for optimizing DMA channel selection
KR100678893B1 (ko) 2004-09-16 2007-02-07 삼성전자주식회사 객체 식별자를 이용하여 이동형 저장 장치에서 권리객체를 검색하는 방법 및 장치
US8166005B2 (en) * 2004-09-21 2012-04-24 Emc Corporation Pathname caching and protection of the root directory in a nested multilayer directory structure
US8918677B1 (en) * 2004-09-30 2014-12-23 Emc Corporation Methods and apparatus for performing data validation in a network management application
US7380030B2 (en) * 2004-10-01 2008-05-27 Qlogic, Corp. Method and system for using an in-line credit extender with a host bus adapter
US7478107B1 (en) * 2004-12-23 2009-01-13 Emc Corporation Methods and apparatus facilitating management of a SAN
US20060150247A1 (en) * 2004-12-30 2006-07-06 Andrew Gafken Protection of stored data
JP2006195703A (ja) * 2005-01-13 2006-07-27 Hitachi Ltd ディスクレス計算機の運用管理システム
JP4588486B2 (ja) * 2005-02-24 2010-12-01 株式会社日立製作所 計算機システム及び管理計算機とホスト計算機並びにボリューム管理方法
US7293116B2 (en) * 2005-03-24 2007-11-06 Xiv Ltd. Graphic user interface for a storage system
US7477949B2 (en) * 2005-03-24 2009-01-13 Xiv Ltd. Graphic user interface for a storage system
US9195397B2 (en) 2005-04-20 2015-11-24 Axxana (Israel) Ltd. Disaster-proof data recovery
CN100543691C (zh) * 2005-04-20 2009-09-23 阿克萨纳(以色列)有限公司 远程数据镜像系统
JP2007065780A (ja) * 2005-08-29 2007-03-15 Hitachi Ltd ストレージシステム及びストレージ装置
US7739605B2 (en) * 2005-09-09 2010-06-15 Netapp, Inc. System and/or method relating to managing a network
US7969966B2 (en) * 2005-12-19 2011-06-28 Alcatel Lucent System and method for port mapping in a communications network switch
US7840902B2 (en) * 2005-10-26 2010-11-23 Hewlett-Packard Development Company, L.P. Method and an apparatus for automatic creation of secure connections between segmented resource farms in a utility computing environment
JP4671353B2 (ja) * 2005-12-14 2011-04-13 株式会社日立製作所 ストレージ装置及びその制御方法
US8185639B2 (en) * 2006-01-03 2012-05-22 Emc Corporation Server identification in storage networks
US7702781B2 (en) * 2006-03-03 2010-04-20 Teoco Corporation System and method of storing data files at a remote storage facility
US20070268294A1 (en) * 2006-05-16 2007-11-22 Stephen Troy Eagen Apparatus and method for topology navigation and change awareness
US8717911B2 (en) * 2006-06-30 2014-05-06 Centurylink Intellectual Property Llc System and method for collecting network performance information
US8194643B2 (en) * 2006-10-19 2012-06-05 Embarq Holdings Company, Llc System and method for monitoring the connection of an end-user to a remote network
US9094257B2 (en) 2006-06-30 2015-07-28 Centurylink Intellectual Property Llc System and method for selecting a content delivery network
US8000318B2 (en) * 2006-06-30 2011-08-16 Embarq Holdings Company, Llc System and method for call routing based on transmission performance of a packet network
US8488447B2 (en) 2006-06-30 2013-07-16 Centurylink Intellectual Property Llc System and method for adjusting code speed in a transmission path during call set-up due to reduced transmission performance
US20080002711A1 (en) * 2006-06-30 2008-01-03 Bugenhagen Michael K System and method for access state based service options
US8289965B2 (en) * 2006-10-19 2012-10-16 Embarq Holdings Company, Llc System and method for establishing a communications session with an end-user based on the state of a network connection
US7948909B2 (en) * 2006-06-30 2011-05-24 Embarq Holdings Company, Llc System and method for resetting counters counting network performance information at network communications devices on a packet network
US8184549B2 (en) 2006-06-30 2012-05-22 Embarq Holdings Company, LLP System and method for selecting network egress
US7958368B2 (en) * 2006-07-14 2011-06-07 Microsoft Corporation Password-authenticated groups
US7761900B2 (en) * 2006-08-02 2010-07-20 Clarendon Foundation, Inc. Distribution of content and advertisement
US7940735B2 (en) * 2006-08-22 2011-05-10 Embarq Holdings Company, Llc System and method for selecting an access point
US8223654B2 (en) * 2006-08-22 2012-07-17 Embarq Holdings Company, Llc Application-specific integrated circuit for monitoring and optimizing interlayer network performance
US8407765B2 (en) * 2006-08-22 2013-03-26 Centurylink Intellectual Property Llc System and method for restricting access to network performance information tables
US8537695B2 (en) 2006-08-22 2013-09-17 Centurylink Intellectual Property Llc System and method for establishing a call being received by a trunk on a packet network
US8238253B2 (en) 2006-08-22 2012-08-07 Embarq Holdings Company, Llc System and method for monitoring interlayer devices and optimizing network performance
US8144586B2 (en) * 2006-08-22 2012-03-27 Embarq Holdings Company, Llc System and method for controlling network bandwidth with a connection admission control engine
US8619600B2 (en) 2006-08-22 2013-12-31 Centurylink Intellectual Property Llc System and method for establishing calls over a call path having best path metrics
US8274905B2 (en) 2006-08-22 2012-09-25 Embarq Holdings Company, Llc System and method for displaying a graph representative of network performance over a time period
US8125897B2 (en) * 2006-08-22 2012-02-28 Embarq Holdings Company Lp System and method for monitoring and optimizing network performance with user datagram protocol network performance information packets
US8576722B2 (en) * 2006-08-22 2013-11-05 Centurylink Intellectual Property Llc System and method for modifying connectivity fault management packets
US7843831B2 (en) 2006-08-22 2010-11-30 Embarq Holdings Company Llc System and method for routing data on a packet network
US8040811B2 (en) 2006-08-22 2011-10-18 Embarq Holdings Company, Llc System and method for collecting and managing network performance information
US8224255B2 (en) * 2006-08-22 2012-07-17 Embarq Holdings Company, Llc System and method for managing radio frequency windows
US8189468B2 (en) * 2006-10-25 2012-05-29 Embarq Holdings, Company, LLC System and method for regulating messages between networks
US8144587B2 (en) 2006-08-22 2012-03-27 Embarq Holdings Company, Llc System and method for load balancing network resources using a connection admission control engine
US8223655B2 (en) * 2006-08-22 2012-07-17 Embarq Holdings Company, Llc System and method for provisioning resources of a packet network based on collected network performance information
US8098579B2 (en) * 2006-08-22 2012-01-17 Embarq Holdings Company, LP System and method for adjusting the window size of a TCP packet through remote network elements
US8743703B2 (en) * 2006-08-22 2014-06-03 Centurylink Intellectual Property Llc System and method for tracking application resource usage
US9479341B2 (en) * 2006-08-22 2016-10-25 Centurylink Intellectual Property Llc System and method for initiating diagnostics on a packet network node
US8531954B2 (en) 2006-08-22 2013-09-10 Centurylink Intellectual Property Llc System and method for handling reservation requests with a connection admission control engine
US8107366B2 (en) * 2006-08-22 2012-01-31 Embarq Holdings Company, LP System and method for using centralized network performance tables to manage network communications
US8549405B2 (en) * 2006-08-22 2013-10-01 Centurylink Intellectual Property Llc System and method for displaying a graphical representation of a network to identify nodes and node segments on the network that are not operating normally
US20080049639A1 (en) * 2006-08-22 2008-02-28 Wiley William L System and method for managing a service level agreement
US8194555B2 (en) * 2006-08-22 2012-06-05 Embarq Holdings Company, Llc System and method for using distributed network performance information tables to manage network communications
US8015294B2 (en) 2006-08-22 2011-09-06 Embarq Holdings Company, LP Pin-hole firewall for communicating data packets on a packet network
US8199653B2 (en) * 2006-08-22 2012-06-12 Embarq Holdings Company, Llc System and method for communicating network performance information over a packet network
US8130793B2 (en) 2006-08-22 2012-03-06 Embarq Holdings Company, Llc System and method for enabling reciprocal billing for different types of communications over a packet network
US8228791B2 (en) 2006-08-22 2012-07-24 Embarq Holdings Company, Llc System and method for routing communications between packet networks based on intercarrier agreements
US7684332B2 (en) * 2006-08-22 2010-03-23 Embarq Holdings Company, Llc System and method for adjusting the window size of a TCP packet through network elements
US8307065B2 (en) 2006-08-22 2012-11-06 Centurylink Intellectual Property Llc System and method for remotely controlling network operators
US8750158B2 (en) 2006-08-22 2014-06-10 Centurylink Intellectual Property Llc System and method for differentiated billing
US8064391B2 (en) 2006-08-22 2011-11-22 Embarq Holdings Company, Llc System and method for monitoring and optimizing network performance to a wireless device
US20080098309A1 (en) * 2006-10-24 2008-04-24 Microsoft Corporation Managing virtual machines and hosts by property
US8146163B2 (en) * 2006-11-09 2012-03-27 International Business Machines Corporation Method and system for securing personal computing devices from unauthorized data copying and removal
US8307411B2 (en) * 2007-02-09 2012-11-06 Microsoft Corporation Generic framework for EAP
JP4863905B2 (ja) * 2007-03-02 2012-01-25 株式会社日立製作所 ストレージ利用排他方式
US8111692B2 (en) * 2007-05-31 2012-02-07 Embarq Holdings Company Llc System and method for modifying network traffic
US8799681B1 (en) 2007-12-27 2014-08-05 Emc Corporation Redundant array of encrypting disks
US8498417B1 (en) 2007-12-27 2013-07-30 Emc Corporation Automation of coordination of encryption keys in a SAN based environment where an encryption engine, device management, and key management are not co-located
US8588425B1 (en) 2007-12-27 2013-11-19 Emc Corporation Encryption key recovery in the event of storage management failure
KR100976602B1 (ko) 2008-01-24 2010-08-18 (주)닥터소프트 파일 전송 보안 방법 및 장치
US8930537B2 (en) 2008-02-28 2015-01-06 International Business Machines Corporation Zoning of devices in a storage area network with LUN masking/mapping
US9830278B1 (en) 2008-03-06 2017-11-28 EMC IP Holding Company LLC Tracking replica data using key management
US8068425B2 (en) 2008-04-09 2011-11-29 Embarq Holdings Company, Llc System and method for using network performance information to determine improved measures of path states
WO2010033877A1 (en) 2008-09-19 2010-03-25 Oracle International Corporation Storage-side storage request management
US8868831B2 (en) 2009-09-14 2014-10-21 Oracle International Corporation Caching data between a database server and a storage system
US10430338B2 (en) * 2008-09-19 2019-10-01 Oracle International Corporation Selectively reading data from cache and primary storage based on whether cache is overloaded
US8832235B1 (en) 2009-03-10 2014-09-09 Hewlett-Packard Development Company, L.P. Deploying and releasing logical servers
US9154385B1 (en) * 2009-03-10 2015-10-06 Hewlett-Packard Development Company, L.P. Logical server management interface displaying real-server technologies
US8549123B1 (en) 2009-03-10 2013-10-01 Hewlett-Packard Development Company, L.P. Logical server management
US9547455B1 (en) 2009-03-10 2017-01-17 Hewlett Packard Enterprise Development Lp Allocating mass storage to a logical server
US8676946B1 (en) 2009-03-10 2014-03-18 Hewlett-Packard Development Company, L.P. Warnings for logical-server target hosts
US20110012902A1 (en) * 2009-07-16 2011-01-20 Jaganathan Rajagopalan Method and system for visualizing the performance of applications
US9396289B2 (en) * 2009-09-29 2016-07-19 Unisys Corporation Method and apparatus for unrestricted reporting of alert states for managed objects, regardless of type
US20110078605A1 (en) * 2009-09-29 2011-03-31 Charles Griep Method and apparatus for displaying a monitored state with no explicit connection
WO2011067702A1 (en) * 2009-12-02 2011-06-09 Axxana (Israel) Ltd. Distributed intelligent network
US9389895B2 (en) * 2009-12-17 2016-07-12 Microsoft Technology Licensing, Llc Virtual storage target offload techniques
US11449394B2 (en) 2010-06-04 2022-09-20 Commvault Systems, Inc. Failover systems and methods for performing backup operations, including heterogeneous indexing and load balancing of backup and indexing resources
US8458511B2 (en) 2010-09-17 2013-06-04 Oracle International Corporation Fault isolation using code paths
JP5614293B2 (ja) 2011-01-12 2014-10-29 富士通株式会社 通信制御装置、通信システム、情報処理装置および通信制御方法
JP5788006B2 (ja) * 2011-04-28 2015-09-30 株式会社日立製作所 計算機システム及びその管理方法
CN102736990A (zh) * 2011-09-23 2012-10-17 新奥特(北京)视频技术有限公司 一种数据安全防控中的信息配置方法及装置
US10592416B2 (en) 2011-09-30 2020-03-17 Oracle International Corporation Write-back storage cache based on fast persistent memory
US8850322B2 (en) * 2011-11-18 2014-09-30 Verizon Patent And Licensing Inc. Customized diagrammatic view of a network topology
US20140156815A1 (en) * 2012-12-03 2014-06-05 Hitachi, Ltd. Storage system and method for managing configuration information thereof
US10380021B2 (en) 2013-03-13 2019-08-13 Oracle International Corporation Rapid recovery from downtime of mirrored storage device
US10489365B2 (en) * 2013-03-14 2019-11-26 Oracle International Corporation Predicate offload of large objects
US10528590B2 (en) 2014-09-26 2020-01-07 Oracle International Corporation Optimizing a query with extrema function using in-memory data summaries on the storage server
US10642837B2 (en) 2013-03-15 2020-05-05 Oracle International Corporation Relocating derived cache during data rebalance to maintain application performance
US9477276B2 (en) 2013-06-13 2016-10-25 Dell Products L.P. System and method for switch management
US9424443B2 (en) 2013-08-20 2016-08-23 Janus Technologies, Inc. Method and apparatus for securing computer mass storage data
US10229161B2 (en) 2013-09-20 2019-03-12 Oracle International Corporation Automatic caching of scan and random access data in computing systems
US9798655B2 (en) 2013-09-20 2017-10-24 Oracle International Corporation Managing a cache on storage devices supporting compression
WO2015056169A1 (en) 2013-10-16 2015-04-23 Axxana (Israel) Ltd. Zero-transaction-loss recovery for database systems
US9563518B2 (en) 2014-04-02 2017-02-07 Commvault Systems, Inc. Information management by a media agent in the absence of communications with a storage manager
US10379958B2 (en) 2015-06-03 2019-08-13 Axxana (Israel) Ltd. Fast archiving for database systems
EP3272063A4 (de) 2015-08-12 2018-12-05 Hewlett-Packard Enterprise Development LP Host-speicherauthentifizierung
US10863330B1 (en) * 2015-12-03 2020-12-08 Eta Vision Inc. Systems and methods for sensing, recording, analyzing and reporting environmental conditions in data centers and similar facilities
US11284544B1 (en) * 2015-12-03 2022-03-22 Eta Vision Inc. Systems and methods for sensing, recording, analyzing and reporting environmental conditions in data centers and similar facilities
US10856394B2 (en) * 2016-02-04 2020-12-01 Lutron Technology Company Llc Configuring a load control system
US10133667B2 (en) 2016-09-06 2018-11-20 Orcle International Corporation Efficient data storage and retrieval using a heterogeneous main memory
US10747630B2 (en) 2016-09-30 2020-08-18 Commvault Systems, Inc. Heartbeat monitoring of virtual machines for initiating failover operations in a data storage management system, including operations by a master monitor node
US10331573B2 (en) 2016-11-04 2019-06-25 Oracle International Corporation Detection of avoidable cache thrashing for OLTP and DW workloads
US10592326B2 (en) 2017-03-08 2020-03-17 Axxana (Israel) Ltd. Method and apparatus for data loss assessment
US10803039B2 (en) 2017-05-26 2020-10-13 Oracle International Corporation Method for efficient primary key based queries using atomic RDMA reads on cache friendly in-memory hash index
US10652025B2 (en) 2017-07-10 2020-05-12 Micron Technology, Inc. Secure snapshot management for data storage devices
US10719446B2 (en) 2017-08-31 2020-07-21 Oracle International Corporation Directly mapped buffer cache on non-volatile memory
US10956335B2 (en) 2017-09-29 2021-03-23 Oracle International Corporation Non-volatile cache access using RDMA
US10732836B2 (en) 2017-09-29 2020-08-04 Oracle International Corporation Remote one-sided persistent writes
US11086876B2 (en) 2017-09-29 2021-08-10 Oracle International Corporation Storing derived summaries on persistent memory of a storage device
US10802766B2 (en) 2017-09-29 2020-10-13 Oracle International Corporation Database with NVDIMM as persistent storage
US10565392B2 (en) * 2017-11-28 2020-02-18 International Business Machines Corporation Secure and verifiable update operations
US11016696B2 (en) * 2018-09-14 2021-05-25 Commvault Systems, Inc. Redundant distributed data storage system
US11200124B2 (en) 2018-12-06 2021-12-14 Commvault Systems, Inc. Assigning backup resources based on failover of partnered data storage servers in a data storage management system
US11157478B2 (en) 2018-12-28 2021-10-26 Oracle International Corporation Technique of comprehensively support autonomous JSON document object (AJD) cloud service
US10990596B2 (en) 2019-06-14 2021-04-27 Oracle International Corporation Non-disruptive referencing of special purpose operators for database management systems
US11200234B2 (en) 2019-06-14 2021-12-14 Oracle International Corporation Non-disruptive dynamic ad-hoc database catalog services
US11099956B1 (en) 2020-03-26 2021-08-24 Commvault Systems, Inc. Snapshot-based disaster recovery orchestration of virtual machine failover and failback operations
KR102255945B1 (ko) * 2020-08-18 2021-05-24 송상현 물품의 가격 자동산출을 통한 국제 무역 자동 전산 시스템
US11645175B2 (en) 2021-02-12 2023-05-09 Commvault Systems, Inc. Automatic failover of a storage manager

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2262633A (en) * 1991-12-20 1993-06-23 Uken Data security.
US5737523A (en) * 1996-03-04 1998-04-07 Sun Microsystems, Inc. Methods and apparatus for providing dynamic network file system client authentication

Family Cites Families (67)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB1601956A (en) 1978-03-02 1981-11-04 Marconi Co Ltd Multiprocessor data processing systems
US4280176A (en) 1978-12-26 1981-07-21 International Business Machines Corporation Memory configuration, address interleaving, relocation and access control system
US4652990A (en) 1983-10-27 1987-03-24 Remote Systems, Inc. Protected software access control apparatus and method
US4672572A (en) * 1984-05-21 1987-06-09 Gould Inc. Protector system for computer access and use
JPS63301336A (ja) * 1987-05-31 1988-12-08 Fujitsu Ltd デ−タ管理情報の格納方式
JPH01106245A (ja) * 1987-10-20 1989-04-24 Nec Corp ボリュームマップ表示方式
US4919545A (en) * 1988-12-22 1990-04-24 Gte Laboratories Incorporated Distributed security procedure for intelligent networks
US5560008A (en) 1989-05-15 1996-09-24 International Business Machines Corporation Remote authentication and authorization in a distributed data processing system
US5226120A (en) * 1990-05-21 1993-07-06 Synoptics Communications, Inc. Apparatus and method of monitoring the status of a local area network
JP2562378B2 (ja) 1990-07-04 1996-12-11 シャープ株式会社 記録装置
US5315657A (en) * 1990-09-28 1994-05-24 Digital Equipment Corporation Compound principals in access control lists
US5768552A (en) * 1990-09-28 1998-06-16 Silicon Graphics, Inc. Graphical representation of computer network topology and activity
JPH04270436A (ja) 1990-12-25 1992-09-25 Fuji Xerox Co Ltd ネットワークシステム
US5321695A (en) 1991-05-01 1994-06-14 Hewlett-Packard Company Port arrival identification for computer network packets
JPH05181609A (ja) 1992-01-06 1993-07-23 Nec Corp パーソナルコンピュータシステム
US5276735A (en) 1992-04-17 1994-01-04 Secure Computing Corporation Data enclave and trusted path system
US5235642A (en) 1992-07-21 1993-08-10 Digital Equipment Corporation Access control subsystem and method for distributed computer system using locally cached authentication credentials
US5469576A (en) * 1993-03-22 1995-11-21 International Business Machines Corporation Front end for file access controller
US5455953A (en) * 1993-11-03 1995-10-03 Wang Laboratories, Inc. Authorization system for obtaining in single step both identification and access rights of client to server directly from encrypted authorization ticket
US5771354A (en) * 1993-11-04 1998-06-23 Crawford; Christopher M. Internet online backup system provides remote storage for customers using IDs and passwords which were interactively established when signing up for backup services
WO1995013583A1 (en) 1993-11-09 1995-05-18 Conner Kenneth H First come memory accessing without conflict
US5598470A (en) 1994-04-25 1997-01-28 International Business Machines Corporation Method and apparatus for enabling trial period use of software products: Method and apparatus for utilizing a decryption block
JPH07325785A (ja) 1994-06-02 1995-12-12 Fujitsu Ltd ネットワーク利用者認証方法および暗号化通信方法とアプリケーションクライアントおよびサーバ
JPH0884140A (ja) 1994-09-12 1996-03-26 Nippon Telegr & Teleph Corp <Ntt> 加入者認証方法
JPH08305662A (ja) 1995-05-02 1996-11-22 Fujitsu Ltd クライアント認証システムおよび方法
US5860137A (en) 1995-07-21 1999-01-12 Emc Corporation Dynamic load balancing
US5941947A (en) 1995-08-18 1999-08-24 Microsoft Corporation System and method for controlling access to data entities in a computer network
US5742759A (en) * 1995-08-18 1998-04-21 Sun Microsystems, Inc. Method and system for facilitating access control to system resources in a distributed computer system
US5930786A (en) 1995-10-20 1999-07-27 Ncr Corporation Method and apparatus for providing shared data to a requesting client
US5864843A (en) 1995-10-20 1999-01-26 Ncr Corporation Method and apparatus for extending a database management system to operate with diverse object servers
US5771291A (en) 1995-12-11 1998-06-23 Newton; Farrell User identification and authentication system using ultra long identification keys and ultra large databases of identification keys for secure remote terminal access to a host computer
JP3609562B2 (ja) * 1996-11-15 2005-01-12 株式会社日立製作所 ネットワーク管理システム
US5852715A (en) 1996-03-19 1998-12-22 Emc Corporation System for currently updating database by one host and reading the database by different host for the purpose of implementing decision support functions
US5751965A (en) * 1996-03-21 1998-05-12 Cabletron System, Inc. Network connection status monitor and display
US5991876A (en) 1996-04-01 1999-11-23 Copyright Clearance Center, Inc. Electronic rights management and authorization system
US6101497A (en) 1996-05-31 2000-08-08 Emc Corporation Method and apparatus for independent and simultaneous access to a common data set
US5727146A (en) 1996-06-04 1998-03-10 Hewlett-Packard Company Source address security for both training and non-training packets
US5999930A (en) * 1996-08-02 1999-12-07 Hewlett-Packard Company Method and apparatus for distributed control of a shared storage volume
US5889952A (en) * 1996-08-14 1999-03-30 Microsoft Corporation Access check system utilizing cached access permissions
US5959994A (en) * 1996-08-19 1999-09-28 Ncr Corporation ATM/SONET network enhanced as a universal computer system interconnect
JP2982702B2 (ja) 1996-08-30 1999-11-29 日本電気株式会社 ディスク装置
US6026293A (en) 1996-09-05 2000-02-15 Ericsson Inc. System for preventing electronic memory tampering
JP3156623B2 (ja) 1997-01-31 2001-04-16 日本電気株式会社 ファイバチャネルファブリック
US6075860A (en) 1997-02-19 2000-06-13 3Com Corporation Apparatus and method for authentication and encryption of a remote terminal over a wireless link
US6105027A (en) * 1997-03-10 2000-08-15 Internet Dynamics, Inc. Techniques for eliminating redundant access checking by access filters
WO1998040850A2 (en) * 1997-03-13 1998-09-17 Whitney Mark M A system for, and method of, off-loading network transactions from a mainframe to an intelligent input/output device, including off-loading message queuing facilities
US6061726A (en) * 1997-05-27 2000-05-09 Novell, Inc. Dynamic rights assignment apparatus and method using network directory services
JP3228182B2 (ja) * 1997-05-29 2001-11-12 株式会社日立製作所 記憶システム及び記憶システムへのアクセス方法
US6272631B1 (en) 1997-06-30 2001-08-07 Microsoft Corporation Protected storage of core data secrets
US6157378A (en) * 1997-07-02 2000-12-05 At&T Corp. Method and apparatus for providing a graphical user interface for a distributed switch having multiple operators
JP3920971B2 (ja) 1997-08-29 2007-05-30 富士フイルム株式会社 データ通信システムおよび方法
US6202156B1 (en) 1997-09-12 2001-03-13 Sun Microsystems, Inc. Remote access-controlled communication
US6061794A (en) 1997-09-30 2000-05-09 Compaq Computer Corp. System and method for performing secure device communications in a peer-to-peer bus architecture
US6041346A (en) * 1997-10-17 2000-03-21 Ateon Networks, Inc. Method and system for providing remote storage for an internet appliance
US6061753A (en) 1998-01-27 2000-05-09 Emc Corporation Apparatus and method of accessing target devices across a bus utilizing initiator identifiers
US6631477B1 (en) 1998-03-13 2003-10-07 Emc Corporation Host system for mass storage business continuance volumes
US6263445B1 (en) 1998-06-30 2001-07-17 Emc Corporation Method and apparatus for authenticating connections to a storage system coupled to a network
US6209002B1 (en) 1999-02-17 2001-03-27 Emc Corporation Method and apparatus for cascading data through redundant data storage units
US6370626B1 (en) 1999-04-30 2002-04-09 Emc Corporation Method and apparatus for independent and simultaneous access to a common data set
JP2001001426A (ja) * 1999-06-23 2001-01-09 Canon Aptex Inc ラベル製造装置およびラベル製造方法
US6343324B1 (en) 1999-09-13 2002-01-29 International Business Machines Corporation Method and system for controlling access share storage devices in a network environment by configuring host-to-volume mapping data structures in the controller memory for granting and denying access to the devices
US6401178B1 (en) 1999-12-23 2002-06-04 Emc Corporatiion Data processing method and apparatus for enabling independent access to replicated data
US6684209B1 (en) 2000-01-14 2004-01-27 Hitachi, Ltd. Security method and system for storage subsystem
US6754682B1 (en) 2000-07-10 2004-06-22 Emc Corporation Method and apparatus for enabling consistent ancillary disk array storage device operations with respect to a main application
WO2002008870A2 (en) 2000-07-26 2002-01-31 David Dickenson Distributive access controller
US7260636B2 (en) 2000-12-22 2007-08-21 Emc Corporation Method and apparatus for preventing unauthorized access by a network device
US6718352B1 (en) 2001-03-20 2004-04-06 Emc Corporation Methods and apparatus for managing a data set stored on a data storage device

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2262633A (en) * 1991-12-20 1993-06-23 Uken Data security.
US5737523A (en) * 1996-03-04 1998-04-07 Sun Microsystems, Inc. Methods and apparatus for providing dynamic network file system client authentication

Also Published As

Publication number Publication date
JP2002529804A (ja) 2002-09-10
DE19983331T1 (de) 2001-06-13
US7756986B2 (en) 2010-07-13
GB0100445D0 (en) 2001-02-21
GB2363492B (en) 2003-04-30
US20030115324A1 (en) 2003-06-19
WO2000000889A3 (en) 2001-12-20
GB2363492A (en) 2001-12-19
JP3779154B2 (ja) 2006-05-24
KR100585368B1 (ko) 2006-06-01
WO2000000889A2 (en) 2000-01-06
KR20010053341A (ko) 2001-06-25
US6839747B1 (en) 2005-01-04

Similar Documents

Publication Publication Date Title
DE19983331B4 (de) Verfahren und Vorrichtung zum Bereitstellen einer Datenverwaltung für ein mit einem Netzwerk gekoppelten Speichersystem
DE10125952B4 (de) Authentifizierter Zugang zu einem Storage Area Network
US6263445B1 (en) Method and apparatus for authenticating connections to a storage system coupled to a network
DE10197063B4 (de) Verfahren und Einrichtung zum Verhindern eines unberechtigen Zugriffs durch ein Netzwerkgerät
EP1290530B1 (de) Verschlüsseln von abzuspeichernden daten in einem iv-system
DE102007033615B4 (de) Verfahren und Vorrichtung zum Umwandeln von Authentisierungs-Token zur Ermöglichung von Interaktionen zwischen Anwendungen
DE602004002401T2 (de) Verfahren und vorrichtung zur erweiterung der netzwerksicherheit in einem verteilten dateisystem
DE69835416T2 (de) Verfahren zur sicheren ausführung eines fernmeldebefehls
DE69029759T2 (de) Flexible Schnittstelle für Beglaubigungsdienste in einem verteilten Datenverarbeitungssystem
US6968463B2 (en) System for controlling access to resources in a storage area network
DE112005001654B4 (de) Verfahren zum Übermitteln von Direct-Proof-Privatschlüsseln an Geräte mittels einer Verteilungs-CD
DE60221113T3 (de) Verfahren und system für die fernaktivierung und -verwaltung von personal security devices
DE112020004289T5 (de) Einrichten einer sicherheitszuordnung und einer berechtigungsprüfung zum sichern einer datenübertragung zwischen einem initiator und einem antwortenden
DE60203277T2 (de) Verfahren und system zur authentifizierung eines personal security device gegenüber mindestens einem fernrechnersystem
DE112019000136T5 (de) Objektspeichersystem mit sicherer objektreplikation
DE112020004286T5 (de) Einrichten einer sicherheitszuordnung und einer berechtigungsprüfung zum sichern einer datenübertragung zwischen einem initiator und einem antwortenden
DE112020003699B4 (de) Gleichzeitige aktivierung von verschlüsselung auf einem betriebspfad an einem speicheranschluss
EP1773081A1 (de) Freischaltung von Hardware in einem Managementsystem
DE602005003631T2 (de) Ausschluss der Passwortaufdeckung bei Attributzertifikatausgabe
DE102018111081A1 (de) Verfahren zum Sichern eines Datenaustausches in einer verteilten Infrastruktur
DE10024347B4 (de) Sicherheitsservice-Schicht
EP3785416B1 (de) Verfahren zur anbindung eines endgerätes in eine vernetzbare rechner-infrastruktur
DE112020003731T5 (de) Gleichzeitige aktivierung von verschlüsselung auf einem betriebspfad an einem host-speicheranschluss
DE102018102608A1 (de) Verfahren zur Benutzerverwaltung eines Feldgeräts
DE112020003720T5 (de) Zugriffsverwaltung zur aktivierung von sicherheit auf einem host-system

Legal Events

Date Code Title Description
8110 Request for examination paragraph 44
8125 Change of the main classification

Ipc: G06F 1214

8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee