DE102012215436A1 - Optimierung der Verwendung eines gebündelten, an ein Netzwerk angeschlossenen Speichers (clustered network attached storage (NAS)) - Google Patents
Optimierung der Verwendung eines gebündelten, an ein Netzwerk angeschlossenen Speichers (clustered network attached storage (NAS)) Download PDFInfo
- Publication number
- DE102012215436A1 DE102012215436A1 DE102012215436A DE102012215436A DE102012215436A1 DE 102012215436 A1 DE102012215436 A1 DE 102012215436A1 DE 102012215436 A DE102012215436 A DE 102012215436A DE 102012215436 A DE102012215436 A DE 102012215436A DE 102012215436 A1 DE102012215436 A1 DE 102012215436A1
- Authority
- DE
- Germany
- Prior art keywords
- addresses
- nas
- node
- nodes
- client systems
- 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.)
- Ceased
Links
- 238000003860 storage Methods 0.000 title claims abstract description 35
- 238000000034 method Methods 0.000 claims abstract description 52
- 238000004590 computer program Methods 0.000 claims description 18
- 238000012544 monitoring process Methods 0.000 claims description 13
- 230000008569 process Effects 0.000 claims description 13
- 238000012545 processing Methods 0.000 claims description 13
- 230000003134 recirculating effect Effects 0.000 claims description 3
- 238000007726 management method Methods 0.000 description 79
- 101100025808 Caenorhabditis elegans nas-31 gene Proteins 0.000 description 34
- 230000006870 function Effects 0.000 description 11
- 238000010586 diagram Methods 0.000 description 10
- 238000005457 optimization Methods 0.000 description 4
- 239000000872 buffer Substances 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 230000003068 static effect Effects 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 239000000463 material Substances 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 239000013307 optical fiber Substances 0.000 description 2
- 238000004891 communication Methods 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 238000013073 enabling process Methods 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- XDDAORKBJWWYJS-UHFFFAOYSA-N glyphosate Chemical compound OC(=O)CNCP(O)(O)=O XDDAORKBJWWYJS-UHFFFAOYSA-N 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000010348 incorporation Methods 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1097—Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/202—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
- G06F11/2023—Failover techniques
- G06F11/2025—Failover techniques using centralised failover control functionality
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/202—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
- G06F11/2035—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant without idle spare hardware
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/2053—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
- G06F11/2094—Redundant storage or storage space
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3409—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
- G06F11/3433—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment for load management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3466—Performance evaluation by tracing or monitoring
- G06F11/3485—Performance evaluation by tracing or monitoring for I/O devices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
- G06F3/0613—Improving I/O performance in relation to throughput
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0614—Improving the reliability of storage systems
- G06F3/0617—Improving the reliability of storage systems in relation to availability
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0629—Configuration or reconfiguration of storage systems
- G06F3/0635—Configuration or reconfiguration of storage systems by changing the path, e.g. traffic rerouting, path reconfiguration
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/067—Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
- H04L41/0823—Configuration setting characterised by the purposes of a change of settings, e.g. optimising configuration for enhancing reliability
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/50—Address allocation
- H04L61/5007—Internet protocol [IP] addresses
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
- H04L67/1004—Server selection for load balancing
- H04L67/1023—Server selection for load balancing based on a hash applied to IP addresses or costs
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
- H04L67/1034—Reaction to server failures by a load balancer
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/40—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass for recovering from a failure of a protocol instance or entity, e.g. service redundancy protocols, protocol state redundancy or protocol service redirection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/202—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
- G06F11/2046—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant where the redundant components share persistent storage
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
- H04L67/1029—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers using data related to the state of servers by a load balancer
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Human Computer Interaction (AREA)
- Quality & Reliability (AREA)
- Computer Hardware Design (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Computer Security & Cryptography (AREA)
- Hardware Redundancy (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
Description
- Hintergrund
- Herkömmliche Optimierungstechnologien für einen gebündelten, an ein Netzwerk angeschlossenen Speicher (clustered network attached storage (NAS)) verwenden einen Lastausgleich zwischen allen Knoten des NAS, um die Anzahl und die Bandbreite von Knoten in dem gebündelten NAS-System auf ein Minimum zu reduzieren. In Fällen, in denen ein Knoten ausfällt, führen herkömmliche Optimierungstechnologien eine Neuverteilung der Arbeitslast unter den restlichen Knoten durch Verwendung einer statischen Arbeitslast-Zuweisung, eines das Umlaufverfahren einsetzenden Domänennamendienstes (domain name service (DNS) usw. durch. Den herkömmlichen Optimierungsmethoden mangelt es entweder an der Fähigkeit zum dynamischen Ausgleich der Arbeitslast unter den Knoten des NAS in dem Fall, dass ein Knoten ausfällt, oder sie erfordern die doppelte Bandbreite für jeden Knoten, um den NAS beim Ausfall eines (1) Knotens ausfallsicher zu machen.
- Kurzdarstellung
- Gemäß einer Ausführungsform der vorliegenden Erfindung weist ein Verfahren zur Optimierung der Verwendung eines gebündelten, an ein Netzwerk angeschlossenen Speichers (NAS) auf: Konfigurieren des gebündelten NAS, indem eine Anzahl A von Adressen festgelegt wird, die für eine Anzahl N von Knoten in dem gebündelten NAS erforderlich ist, um eine Lastmenge L für eine Anzahl P von Client-Systemen zu erzeugen, die mit dem gebündelten NAS verbunden sind, so dass es die Anzahl A von Adressen der Anzahl P von Client-Systemen ermöglicht, auf die Anzahl N von Knoten gleichmäßig zuzugreifen, um die Lastmenge L aufzuteilen, wobei jeder Knoten der Anzahl N von Knoten bei der Erzeugung einer entsprechenden Last, die zu einem jedem Knoten gehört, über eine entsprechende Menge h an Bandbreite verfügt; Konfigurieren eines entsprechenden Satzes von Adressen, die aus der Anzahl A von Adressen ausgewählt werden, so dass die Anzahl P von Client-Systemen während der Erzeugung der Lastmenge L durch die Anzahl P von Client-Systemen über den entsprechenden Satz von Adressen auf die Anzahl N von Knoten zugreift; und Verwalten des Dienstes des gebündelten NAS gleichzeitig mit der Erzeugung durch die Anzahl P von Client-Systemen, indem der Dienst der Anzahl N von Knoten in dem gebündelten NAS überwacht und optimiert wird, so dass der gebündelte NAS einen Ausfall eines Knotens in dem gebündelten NAS ausgleicht und der gebündelte NAS die Erzeugung der Lastmenge L durch die Anzahl P von Client-Systemen nahtlos bedient.
- Gemäß einer Ausführungsform der vorliegenden Erfindung weist ein Computerprogrammprodukt eine rechnerlesbare Hauptspeichereinheit auf, die einen rechnerlesbaren Programmcode enthält. Der rechnerlesbare Programmcode enthält Befehle, die, wenn sie von einem Prozessor eines Rechnersystems ausgeführt werden, ein Verfahren zur Optimierung der Verwendung eines gebündelten, an ein Netzwerk angeschlossenen Speichers (NAS) durchführen.
- Gemäß einer Ausführungsform der vorliegenden Erfindung weist ein Rechnersystem einen Prozessor, einen mit dem Prozessor verbundenen Hauptspeicher und eine mit dem Prozessor verbundene rechnerlesbare Speichereinheit auf, wobei die Speichereinheit Programmcode enthält, der so konfiguriert ist, dass er von dem Prozessor über den Hauptspeicher ausgeführt wird, um ein Verfahren zur Optimierung der Verwendung eines gebündelten, an ein Netzwerk angeschlossenen Speichers (NAS) durchzuführen.
- Gemäß einer Ausführungsform der vorliegenden Erfindung, ein Prozess zur Unterstützung von Rechnerinfrastruktur, wobei der Prozess die Bereitstellung von mindestens einem Support-Dienst für mindestens eines von Erzeugen, Einbinden, Unterbringen (Hosting), Verwalten und Einsetzen von rechnerlesbarem Code in einem Datenverarbeitungssystem aufweist, wobei der Code in Verbindung mit dem Datenverarbeitungssystem in der Lage ist, ein Verfahren zur Optimierung der Verwendung eines gebündelten, an ein Netzwerk angeschlossenen Speichers (NAS) durchzuführen.
- Kurze Beschreibung der verschiedenen Ansichten der Zeichnungen
-
1 stellt ein System10 zur Optimierung der Verwendung eines gebündelten, an ein Netzwerk angeschlossenen Speichers (NAS)31 gemäß Ausführungsformen der vorliegenden Erfindung dar. -
2 ist ein Flussdiagramm, das ein Verfahren zur Optimierung der Verwendung des gebündelten NAS31 von1 , wie es von dem Verwaltungsmodul32 durchgeführt wird, gemäß den Ausführungsformen der vorliegenden Erfindung zeigt. -
3 ist ein Flussdiagramm, welches NAS konfigurierende Schritte zeigt, die als Schritt100 des Verfahrens zur Optimierung der Verwendung des gebündelten NAS in2 gemäß den Ausführungsformen der vorliegenden Erfindung durchgeführt werden. -
4 ist ein Flussdiagramm, welches Schritte, die Adressen der Komponenten in dem NAS konfigurieren, sowie Client-Systeme, die auf den NAS zugreifen, zeigt, die als Schritt200 des Verfahrens zur Optimierung der Verwendung des gebündelten NAS in2 gemäß den Ausführungsformen der vorliegenden Erfindung durchgeführt werden. -
5 ist ein Flussdiagramm, das Erzeugungsschritte, die von jedem Client-System im Anschluss an die Konfiguration von Adressen von4 durchgeführt werden, zeigt, während das Verwaltungsmodul gleichzeitig den Schritt300 des Verfahrens zur Optimierung der Verwendung des gebündelten NAS in2 gemäß den Ausführungsformen der vorliegenden Erfindung durchführt. -
6 ist ein Flussdiagramm, das den Dienst des NAS verwaltende Schritte zeigt, die als Schritt300 des Verfahrens zur Optimierung der Verwendung des gebündelten NAS in2 gemäß den Ausführungsformen der vorliegenden Erfindung durchgeführt werden. -
7 ist ein Flussdiagramm, das Schritte, die die Netzwerkadresse unter den verbleibenden Knoten des NAS neu verteilen, wenn ein Knoten ausgefallen ist, zeigt, welche als Schritt400 des Verfahrens zur Optimierung der Verwendung des gebündelten NAS in2 gemäß den Ausführungsformen der vorliegenden Erfindung durchgeführt werden. -
8 ist ein Beispiel des Systems von1 zur Optimierung der Verwendung eines gebündelten NAS, an dem durch die Durchführung der Schritte100 und200 von2 gemäß Ausführungsformen der vorliegenden Erfindung die Erstkonfiguration durchgeführt wird. -
9 ist ein Beispiel des Systems von1 zur Optimierung der Verwendung eines gebündelten NAS, das die Neuverteilung von Adressen eines ausgefallenen Knotens durchführt, indem es den Schritt400 von6 im Anschluss an die in8 gezeigte Konfiguration von Adressen gemäß Ausführungsformen der vorliegenden Erfindung durchführt. -
10 stellt ein Rechnersystem dar, das zur Optimierung der Verwendung eines gebündelten NAS gemäß den Ausführungsformen der vorliegenden Erfindung verwendet wird. - Ausführliche Beschreibung
-
1 stellt ein System10 zur Optimierung der Verwendung eines gebündelten, an ein Netzwerk angeschlossenen Speichers (NAS)31 gemäß Ausführungsformen der vorliegenden Erfindung dar. - Das System
10 weist eine Anzahl P von Client-Systemen, ein Kundennetzwerk21 , den gebündelten NAS31 und einen Administrator41 auf. Zu Beispielen für das System können unter anderem Fast-Echtzeit-Erzeugungs-/Dienstsysteme gehören, die den gebündelten NAS31 als Datenablage in den Bereichen der Überwachung und Auswertung (monitoring and evaluation (M&E)), des Rundsendebetriebs, der Videoüberwachung usw. nutzen. Aufgrund der zeitkritischen Beschaffenheit dieser typischen Beispiele verbessert ein wirksamer Lastausgleich zwischen in Betrieb befindlichen Knoten in dem gebündelten NAS31 die Leistungsfähigkeit des Systems10 in dem Fall, dass ein Knoten des gebündelten NAS31 ausfällt, beträchtlich. - Ein i-tes Client-System Ci der Anzahl P von Client-Systemen, wobei i eine positive ganze Zahl in einem ersten einschließenden Bereich zwischen eins (1) und P ist, das heißt, [1...P], ist ein entsprechendes Rechnersystem, das ein entsprechendes Betriebssystem ausführt, welches kompatible Dateisystemprotokolle über digitale Datenübertragungskanäle unterstützt. Zu Beispielen für Betriebssysteme können unter anderem WindowsTM, Linux®, Unix® usw. gehören (Windows ist ein Warenzeichen der Microsoft Corporation in den Vereinigten Staaten von Amerika und in anderen Ländern; Linux ist ein eingetragenes Warenzeichen von Linus Torvalds in den Vereinigten Staaten von Amerika; und UNIX ist ein eingetragenes Warenzeichen von The Open Group in den Vereinigten Staaten von Amerika und in anderen Ländern.) Zu Beispielen für Dateisystemprotokolle können unter anderem das Common Internet File System (CIFS), das Network File System (NFS) usw. gehören.
- Das Kundennetzwerk
21 ist ein digitales Datenübertragungsnetzwerk, welches das Internet Protocol (IP) unterstützt, das die Client-Systeme mit dem gebündelten NAS31 verbindet. - Der gebündelte NAS
31 ist ein an ein Netzwerk angeschlossener Speicher, der das Aufteilen der Daten auf verschiedene Festplatten (Data Stripping) ermöglicht, indem ein verteiltes Dateisystem verwendet wird, das gleichzeitig auf mehreren Knoten des gebündelten NAS31 ausgeführt wird. Der gebündelte NAS31 ist ein Rechnerdatenspeicher auf Dateiebene, der bei der Bereitstellung des Datenzugriffs auf die Client-Systeme mit dem Kundennetzwerk21 verbunden ist und es den Knoten des gebündelten NAS31 ermöglicht, Daten und Metadaten über die Knoten oder physischen Platten des gebündelten NAS31 zu verteilen. Die Knoten des gebündelten NAS31 greifen ungeachtet der tatsächlichen Speicherplätze der Daten einheitlich auf Dateien zu, die auf einer beliebigen physischen Platte in dem gebündelten NAS31 gespeichert sind. Der gebündelte NAS31 verteilt im Umlaufverfahren dynamisch Adressen für Knoten des gebündelten NAS31 und führt eine Neuverteilung von Adressen eines fehlerhaften Knotens auf die verbleibenden funktionierenden Knoten durch. Der gebündelte NAS31 weist ein Verwaltungsmodul32 , eine Anzahl N von Knoten und mindestens eine physische Platte auf. Alle Komponenten des gebündelten NAS31 sind mittels digitaler Datenübertragungskanäle, die mit dem Kundennetzwerk21 verbunden sind, untereinander verbunden. - Das Verwaltungsmodul
32 führt gemäß vom Administrator41 bereitgestellter Eingaben die Konfiguration und die Überwachung des gebündelten NAS31 durch. Siehe die Beschreibung der nachstehenden2 in Bezug auf Schritte, die vom Verwaltungsmodul32 durchgeführt werden. In einer Ausführungsform der vorliegenden Erfindung wird das Verwaltungsmodul32 auf einem speziellen Verwaltungsknoten in dem gebündelten NAS31 ausgeführt, wobei sich der spezielle Verwaltungsknoten funktional und physisch von der Anzahl N der Knoten unterscheidet. - Ein j-ter Knoten Nj der Anzahl N von Knoten in dem gebündelten NAS
31 , wobei j eine positive ganze Zahl in einem zweiten einschließenden Bereich zwischen 1 und N ist, das heißt [1...N], stellt jeden Knoten dar, der die Funktion eines Mitglieds eines gebündelten Dateiservers für die Client-Systeme hat und den einheitlichen Zugriff auf Daten und Metadaten ermöglicht, welche auf der mindestens einen physischen Platte für die Client-Systeme gespeichert sind. Die Client-Systeme greifen auf jeden Knoten der Anzahl N von Knoten zu und kennzeichnen ihn durch die Verwendung einer entsprechenden Internet-Protocol-(IP-)Adresse. In dieser Beschreibung werden die Begriffe ”IP-Adresse” und ”Adresse” austauschbar verwendet. - Eine k-te physische Platte Dk der mindestens einen physischen Platte, wobei k eine positive ganze Zahl in einem dritten einschließenden Bereich zwischen 1 und Q ist, das heißt [1...Q], und wobei Q größer oder gleich eins (1) ist, stellt jede physische Platte des gebündelten NAS
31 dar. Jede physische Platte ist physisch mit den Knoten in dem gebündelten NAS31 verbunden und wird von den Knoten als ein Datenspeicher-Pool gemeinsam benutzt. - In einer Ausführungsform der vorliegenden Erfindung wird eine entsprechende Internet-Protocol-(IP-)Adresse unter funktionierenden Knoten des gebündelten NAS
31 dynamisch verteilt. Zuerst wird ein Satz von IP-Adressen im Umlaufverfahren unter des gebündelten NAS31 verteilt. Eine Anzahl von IP-Adressen in dem Satz ist N(N – 1), wobei N die Anzahl der Knoten in dem gebündelten NAS31 ist, die angibt, dass jeder Knoten Nj über eine Anzahl (N – 1) von IP-Adressen verfügt, die gleichmäßig für alle Knoten in dem gebündelten NAS31 verteilt sind. Wenn ein x-ter Knoten Nx während der Erzeugung ausfällt, wird eine x-te Gruppe mit einer Anzahl (N – 1) von IP-Adressen, die dem ausgefallenen Knoten Nx üblicherweise zugeteilt worden sind, im Umlaufverfahren auf die verbleibenden funktionierenden Knoten des gebündelten NAS31 neu verteilt, so dass selbst bei ausgefallenem Knoten Nx von der Anzahl P der Client-Systeme C1...Cp mit derselben Anzahl N(N – 1) von IP-Adressen wie vor dem Ausfall des Knotens auf den gebündelten NAS31 zugegriffen werden kann. In der selben Ausführungsform der vorliegenden Erfindung verteilt des gebündelten NAS31 eine entsprechende Arbeitslast auf dynamische Weise gleichmäßig über eine Anzahl (N – 1) von verbleibenden funktionierenden Knoten, indem die Adressen der Knoten neu zugewiesen werden, so dass ein durch den ausgefallenen Knoten verursachtes höheres Verkehrsaufkommen unter der Anzahl (N – 1) der verbleibenden funktionierenden Knoten gleichmäßig aufgeteilt wird, wobei der Aufteilungsbetrag N/(N – 1) beträgt. Wenn der gebündelte NAS31 fünf (5) oder mehr Knoten hat, sind ungefähr zwanzig Prozent (20%) an zusätzlicher Knotenleistung, ein einzelner zusätzlicher Knoten, ausreichend, um den gebündelten NAS31 beim Ausfall eines einzigen Knotens ausfallsicher zu machen, was eine deutliche Verbesserung gegenüber dem herkömmlichen Verfahren zur Kapazitätsverdopplung mit einer Adressenzuweisung im Umlaufverfahren oder einer statischen IP-Adressierung darstellt. - In derselben Ausführungsform der vorliegenden Erfindung weist das System
10 zweiundachtzig (82) Client-Systeme (C1,...Cp, P = 82) auf, die die Funktion von Video-Servern übernehmen, welche Datenströme von Überwachungskameras von einhundertzwanzig (120) kontrollierten Bereichen erfassen und die erfassten Datenströme auf dem gebündelten NAS31 aufzeichnen, wobei ein IBM® Scale Out Network Attached Storage (SONAS) mit (9) Knoten (N1,...Nn, N = 9) zum Einsatz kommt. (IBM ist ein Warenzeichen der International Business Machines Corporation in den Vereinigten Staaten von Amerika und anderen Ländern). IBM SONAS weist Knoten des gebündelten NAS31 im Umlaufverfahren auf dynamische Weise gleichmäßig eine Liste von IP-Adressen zu. IBM SONAS führt auch eine dynamische Neuverteilung von IP-Adressen eines fehlerhaften Knotens im Umlaufverfahren durch, indem es bei dem Versuch, den für jeden Knoten des gebündelten NAS31 notwendigen Bandbreitenpuffer zu begrenzen, IP-Adressen eines verbleibenden Knotens, der weniger IP-Adressen als andere Knoten hat, durch Verwendung einer Clustered Trivial Data Base (CTDB)31 angibt. In anderen Ausführungsformen der vorliegenden Erfindung können die Anzahl und die Last der Client-Systeme entsprechend dem Erzeugungstyp variieren, doch sind sie in ihren entsprechenden Konfigurationen im Allgemeinen beständig. Siehe die Beschreibung der nachstehenden8 und9 bezüglich eines Beispiels für die in derselben Ausführungsform der vorliegenden Erfindung vorgenommene Optimierung. - Dieselbe Ausführungsform der vorliegenden Erfindung bedient mit einer geringeren Anzahl von Knoten und geringeren Kosten bei der Bereitstellung eines ausfallsicheren NAS-Speichers beim Ausfall eines einzigen Knotens so viele Client-Systeme wie ein größeres gebündeltes NAS. Das Verfahren der vorliegenden Erfindung erfordert in Fällen von gebündelten NAS-Systemen mit mehr als fünf (5) Knoten höchstens zwanzig Prozent (20%) Durchsatzpuffer im Gegensatz zu einhundert Prozent (100%) Durchsatzpuffer der herkömmlichen Verfahren zur ausfallsicheren Nutzung bei gebündeltem NAS.
-
2 ist ein Flussdiagramm, das ein Verfahren zur Optimierung der Verwendung des gebündelten NAS31 von1 oben, wie es von dem Verwaltungsmodul32 durchgeführt wird, gemäß den Ausführungsformen der vorliegenden Erfindung zeigt. - Im Schritt
100 konfiguriert das Verwaltungsmodul den gebündelten NAS. Siehe die Beschreibung der nachstehenden3 bezüglich Einzelheiten der Konfiguration des NAS im Schritt100 . Anschließend fährt das Verwaltungsmodul mit Schritt200 fort. - Im Schritt
200 konfiguriert das Verwaltungsmodul Adressen der Komponenten in dem NAS und in Client-Systemen, die mit dem NAS verbunden sind. Siehe die Beschreibung der nachstehenden4 bezüglich Einzelheiten der Konfiguration von Adressen im Schritt200 . Siehe die Beschreibung der nachstehenden8 bezüglich eines Beispiels des Systems, das nach der Durchführung der Schritte100 und200 erstmals konfiguriert ist. Anschließend fährt das Verwaltungsmodul mit dem Schritt300 fort. - Im Schritt
300 verwaltet das Verwaltungsmodul einen Dienst, der von dem NAS durchgeführt wird, während die Client-Systeme gleichzeitig gemäß der nachstehenden5 durch Verwendung des NAS Arbeitslast erzeugen. Siehe die Beschreibung der nachstehenden6 bezüglich Einzelheiten der Konfiguration von Adressen im Schritt300 . Siehe die Beschreibung der nachstehenden9 bezüglich eines Beispiels des Systems, das bei der Durchführung des Schritts300 gerade die Übernahme der Funktionen eines einzelnen Knotens erfährt. Daraufhin beenden das Verwaltungsmodul sowie die Knoten des NAS den Betrieb. -
3 ist ein Flussdiagramm, das Schritte zeigt, die den an ein Netzwerk angeschlossenen Speicher des gebündelten NAS konfigurieren, welche als Schritt100 des Verfahrens zur Optimierung der Verwendung des gebündelten NAS in2 oben gemäß den Ausführungsformen der vorliegenden Erfindung durchgeführt werden. - Im Schritt
110 stellt das Verwaltungsmodul einen Typ des NAS fest, der aus {herkömmliches NAS, gebündeltes NAS} ausgewählt wird, wobei ”herkömmliches NAS” ein typisches NAS angibt und wobei ”gebündeltes NAS” ein gebündeltes NAS der vorliegenden Erfindung angibt. Wenn das Verwaltungsmodul feststellt, dass der Typ des NAS gebündelt ist, fährt das Verwaltungsmodul mit dem Schritt120 fort. Wenn das Verwaltungsmodul feststellt, dass der Typ des NAS herkömmlich ist, fährt das Verwaltungsmodul mit dem Schritt130 fort. - Im Schritt
120 stellt das Verwaltungsmodul fest, ob ein Bereich von Internet-Protocol-(IP-)Adressen im Umlaufverfahren zugewiesen wird. Wenn das Verwaltungsmodul feststellt, dass der Bereich der IP-Adressen im Umlaufverfahren zugewiesen wird, fährt das Verwaltungsmodul mit dem Schritt140 fort. Wenn das Verwaltungsmodul feststellt, dass der Bereich der IP-Adressen nicht im Umlaufverfahren zugewiesen wird, fährt das Verwaltungsmodul mit dem Schritt170 fort. - Im Schritt
130 gibt das Verwaltungsmodul eine feste Anzahl von Client-Systemen je herkömmlichem NAS an, indem ein Bandbreitenwert des herkömmlichen NAS durch einen durchschnittlichen Wert der maximalen Last eines einzelnen Client-Systems unter den Client-Systemen geteilt wird. Der herkömmliche NAS führt weder einen Lastausgleich noch eine Funktionsübernahme durch. Daraufhin beendet das Verwaltungsmodul die Konfiguration des herkömmlichen NAS. - In den Schritten
140 bis160 führt das Verwaltungsmodul eine dynamische Berechnung einer Anzahl von IP-Adressen (A) durch, die im Umlaufverfahren auf der Grundlage von verschiedenen Parametern des gebündelten NAS zugewiesen werden. Im Schritt140 berechnet das Verwaltungsmodul eine gesamte maximale Last (L), welche die gesamte Anzahl P der Client-Systeme während der Erzeugung erzeugen wird. Anschließend fährt das Verwaltungsmodul mit dem Schritt150 fort. - Im Schritt
150 berechnet das Verwaltungsmodul eine für die Erzeugung erforderliche Anzahl von Knoten (N) auf der Grundlage von sowohl der gesamten maximalen Last (L) des Schritts140 oben als auch einer maximalen Bandbreite (H) eines einzelnen Knotens, indem es N = Roundup(L/h) + 1 anwendet. Anschließend fährt das Verwaltungsmodul mit dem Schritt160 fort. - Im Schritt
160 berechnet das Verwaltungsmodul eine Anzahl von IP-Adressen (A) auf der Grundlage der im Schritt150 oben berechneten Anzahl von Knoten (N), indem es A = N(N – 1) anwendet. Anschließend beendet das Verwaltungsmodul die Konfiguration des gebündelten NAS, dessen Bereich von IP-Adressen im Umlaufverfahren zugewiesen wurde, und fährt mit Schritt200 von2 oben fort, um weiter Adressen für Knoten des gebündelten NAS zu konfigurieren, das über eine Anzahl A von mehreren IP-Adressen verfügt. - Im Schritt
170 weist das Verwaltungsmodul eine (1) IP-Adresse für jeden Knoten zu, indem es einen herkömmlichen Mechanismus in Form eines das Umlaufverfahren einsetzenden Domänennamendienstes (DNS) oder statische IP-Adressen verwendet. Der gebündelte NAS, der eine einzige IP-Adresse pro Knoten hat, führt weder einen Lastausgleich noch eine Funktionsübernahme wie in der vorliegenden Erfindung durch. Der gebündelte NAS, der eine einzige IP-Adresse pro Knoten hat, erfordert einen Durchsatz, der doppelt so hoch wie die aggregierte Last der Clients ist, um eine Funktionsübernahme zu sichern. Daraufhin beendet das Verwaltungsmodul die Konfiguration des gebündelten NAS, das eine einzige IP-Adresse pro Knoten hat. -
4 ist ein Flussdiagramm, welches Schritte, die Adressen der Komponenten in dem NAS konfigurieren, sowie Client-Systeme, die auf den NAS zugreifen, zeigt, die als Schritt200 des Verfahrens zur Optimierung der Verwendung des gebündelten NAS in2 oben gemäß den Ausführungsformen der vorliegenden Erfindung durchgeführt werden. - Im Schritt
210 startet das Verwaltungsmodul Knoten des gebündelten NAS, das im Schritt100 von2 oben konfiguriert wurde. Anschließend fährt das Verwaltungsmodul mit dem Schritt220 fort. - Im Schritt
220 verteilt das Verwaltungsmodul die Anzahl A = N(N – 1) der IP-Adressen einer Liste, die im Schritt160 von3 oben berechnet wurde, im Umlaufverfahren an die Anzahl N der Knoten des gebündelten NAS, die im Schritt150 von3 oben berechnet wurde. Jeder Knoten verfügt über einen entsprechenden Teil der Liste, der die Anzahl A der IP-Adressen, über die auf jeden Knoten zugegriffen wird, einzeln als im Umlaufverfahren verteilte Adressen aufführt. Siehe die Beschreibung von8 unten bezüglich eines beispielhaften Zustands der erstmaligen Verteilung von Adressen nach dem Schritt220 . Anschließend fährt das Verwaltungsmodul mit dem Schritt230 fort. - Im Schritt
230 belastet das Verwaltungsmodul jede Knotenadresse gleichmäßig mit der Lastmenge L/N, indem es jedem Client-System einen Satz von N aufeinanderfolgenden Adressen der Liste, die allen Knoten des gebündelten NAS entsprechen, im Umlaufverfahren zuweist. Daraufhin fährt das Verwaltungsmodul mit dem Schritt240 fort. - Im Schritt
240 ermöglicht das Verwaltungsmodul dem Client-System, mit der Durchführung der Erzeugung zu beginnen, wie in5 unten gezeigt ist. Dann beendet das Verwaltungsmodul die Konfiguration von Adressen des gebündelten NAS und fährt mit dem Schritt300 von2 oben zur Erzeugung fort, die der Erzeugung des Client-Systems von5 unten entspricht. -
5 ist ein Flussdiagramm, das Erzeugungsschritte, die von jedem Client-System im Anschluss an die Konfiguration von Adressen von4 oben durchgeführt werden, zeigt, während das Verwaltungsmodul gleichzeitig den Schritt300 des Verfahrens zur Optimierung der Verwendung des gebündelten NAS in2 oben gemäß den Ausführungsformen der vorliegenden Erfindung durchführt. - Sobald der gebündelte NAS in den Schritten
100 und200 von2 konfiguriert wurde, führt jedes Client-System die Schritte1010 ,1020 und1030 von5 unabhängig von den anderen durch, während es auf den gebündelten NAS zugreift, der von allen Client-Systemen gemeinsam benutzt wird. - Im Schritt
1010 öffnet ein Client-System eine erste Datei an einer ersten zugewiesenen IP-Adresse eines Knotens. Dann fährt das Client-System mit dem Schritt1020 fort. - Im Schritt
1020 öffnet das Client-System eine nächste Datei an einer nächsten zugewiesenen IP-Adresse eines Knotens im Umlaufverfahren, so dass jeder Knoten bei der Bedienung von Dateien für alle Client-Systeme gleichmäßig belastet wird. Anschließend fährt das Client-System mit dem Schritt1030 fort. - Im Schritt
1030 stellt das Client-System fest, ob es eine weitere Datei gibt, die zur Erzeugung geöffnet werden muss. Wenn das Client-System feststellt, dass es noch eine Datei gibt, die geöffnet werden muss, kehrt das Client-System in einer Schleife zurück zum Schritt1020 , um eine nächste ungeöffnete Datei auf einem entsprechenden Knoten zu öffnen. Wenn das Client-System feststellt, dass es keine weitere Datei gibt, die geöffnet werden muss, beendet das Client-System einen aktuellen Erzeugungszyklus. In dieser Beschreibung gibt die Erzeugung durch das Client-Systems das Öffnen einer Datei und Zugriffe an, indem entsprechend dem Erzeugungsbedarf Daten aus den geöffneten Dateien gelesen oder Daten in die geöffneten Dateien geschrieben werden. In dieser Beschreibung wird der Lese- und Schreibdurchsatz bei allen Dateien von allen Client-Systemen als homogen betrachtet und erfordert eine genau gleiche durchschnittliche Bandbreite. - Wenn alle Client-Systeme des NAS eine entsprechende nominale Erzeugungslast erreichen, ist der Arbeitslast-Durchsatz in allen Knoten des NAS gleichmäßig verteilt. Eine durchschnittliche Arbeitslast für einen Knoten wird als (L/N) berechnet, wobei L die gesamte maximale Last vom Schritt
140 oben ist und wobei N die Anzahl der für die Erzeugung notwendigen Knoten vom Schritt150 oben ist. Auch erhält jede Adresse einen Durchschnitt (1/N) einer durchschnittlichen maximalen einzelnen Arbeitslast für ein Client-System, die als (L/P) berechnet wird, wobei P die Anzahl der Client-Systeme ist, die von dem gebündelten NAS bedient werden sollen. -
6 ist ein Flussdiagramm, das Schritte zeigt, die den Dienst des gebündelten NAS verwalten und als Schritt300 des Verfahrens zur Optimierung der Verwendung des gebündelten NAS in2 oben gemäß den Ausführungsformen der vorliegenden Erfindung durchgeführt werden. - Im Schritt
310 beginnt das Verwaltungsmodul mit Lese- und/oder Schreiboperationen an geöffneten Dateien von allen Client-Systemen. Anschließend fährt das Verwaltungsmodul mit Schritt320 fort. - Im Schritt
320 verteilt das Verwaltungsmodul eine Speicher-Arbeitslast des gebündelten NAS gleichmäßig über alle Knoten des gebündelten NAS. Das Verwaltungsmodul verteilt auch eine Erzeugungslast aller Client-Systeme gleichmäßig. Anschließend fährt das Verwaltungsmodul mit Schritt330 fort. - Im Schritt
330 überwacht das Verwaltungsmodul den Status von Knoten, die sich in der Erzeugung befinden. Nachdem das Verwaltungsmodul eine Mitteilung über ein Vorkommnis an einem Knoten empfangen hat oder nach einer festen kurzen vorher festgelegten Zeitspanne fährt das Verwaltungsmodul mit Schritt340 fort. - Im Schritt
340 stellt das Verwaltungsmodul fest, ob ein (1) Vorkommnis an einem Knoten gemeldet worden ist, das zu einem Ausfall des Knotens führte. Wenn das Verwaltungsmodul feststellt, dass ein Knoten als Folge des Vorkommnisses an dem Knoten ausgefallen ist, fährt das Verwaltungsmodul mit Schritt400 der Neuverteilung zum Lastausgleich und der Neuverteilung von Adressen fort. Siehe die Beschreibung von7 nachstehend bezüglich Einzelheiten des Schritts400 der Neuverteilung. Wenn das Verwaltungsmodul feststellt, dass kein Vorkommnis an einem Knoten gemeldet wurde oder dass das Vorkommnis an dem Knoten nicht zu einem Ausfall des Knotens geführt hat, schaltet das Verwaltungsmodul zum Schritt350 . - Im Schritt
350 stellt das Verwaltungsmodul fest, ob die Erzeugung des gebündelten NAS beendet ist. Wenn das Verwaltungsmodul feststellt, dass die Erzeugung des gebündelten NAS fortgesetzt werden kann, kehrt das Verwaltungsmodul in einer Schleife zum Schritt330 oben zur weiteren Erzeugung und Überwachung zurück. Wenn das Verwaltungsmodul feststellt, dass die Erzeugung des gebündelten NAS beendet ist, fährt das Verwaltungsmodul mit dem Schritt360 fort, um das System zu beenden. Die Erzeugung des gebündelten NAS kann beendet sein, nachdem eine geplante tägliche Erzeugungsperiode abgelaufen ist, nachdem die Verarbeitung von allen Dateien der Client-Systeme abgeschlossen ist oder nachdem ein Befehl zur Beendigung von dem Administrator empfangen wurde. - Im Schritt
360 hält das Verwaltungsmodul die Client-Systeme an. Anschließend fährt das Verwaltungsmodul mit dem Schritt370 fort. - Im Schritt
370 hält das Verwaltungsmodul die Knoten des gebündelten NAS an. Dann beendet das Verwaltungsmodul die Erzeugung und Überwachung. -
7 ist ein Flussdiagramm, das Schritte, die die Netzwerkadresse unter den verbleibenden Knoten des gebündelten NAS neu verteilen, wenn ein Knoten ausgefallen ist, zeigt, welche als Schritt400 des Verfahrens zur Optimierung der Verwendung des gebündelten NAS in2 oben gemäß den Ausführungsformen der vorliegenden Erfindung durchgeführt werden. - Im Schritt
410 führt das Verwaltungsmodul eine Neuverteilung von (N – 1) Empfängern des ausgefallenen Knotens auf eine Anzahl von (N – 1) verbleibenden Knoten im Umlaufverfahren durch. Siehe die Beschreibung von9 nachstehend bezüglich eines Beispiels der Neuverteilung von Adressen, die gemäß Schritt420 nachstehend neu zugewiesen werden. Anschließend fährt das Verwaltungsmodul mit Schritt420 fort. - Im Schritt
420 weist das Verwaltungsmodul jedem Knoten der Anzahl (N – 1) an verbleibenden Knoten, die normal arbeiten, im Umlaufverfahren (N – 1) Adressen neu zu. Folglich bedient jeder Knoten der Anzahl (N – 1) an verbleibenden Knoten N Empfänger für eine Arbeitslast von L/(N – 1). Anschließend fährt das Verwaltungsmodul mit Schritt430 fort. - Im Schritt
430 führt das Verwaltungsmodul einen Neustart des ausgefallenen Knotens entsprechend Eingaben, die von dem Administrator bereitgestellt werden, durch. Dann fährt das Verwaltungsmodul mit Schritt440 fort. - Im Schritt
440 führt das Verwaltungsmodul eine Neuverteilung aller Knotenadressen im Umlaufverfahren durch, was eine Konfiguration von wiederhergestellten Adressen zur Folge hat, die mit dem Ergebnis aus Schritt220 von4 oben identisch ist. Daraufhin fährt das Verwaltungsmodul mit Schritt450 fort. - Im Schritt
450 weist das Verwaltungsmodul jedem Knoten des gebündelten NAS eine Anzahl von (N – 1) Adressen und eine entsprechende Arbeitslast von L/N neu zu, da alle N Knoten nach der Durchführung der Schritte430 und440 normal arbeiten und auf sie zugegriffen werden kann. Dann beendet das Verwaltungsmodul die Neuverteilung und fährt mit Schritt350 von6 oben fort. -
8 ist ein Beispiel des Systems von1 oben zur Optimierung der Verwendung eines gebündelten NAS, der durch die Durchführung der Schritte100 und200 von2 oben gemäß Ausführungsformen der vorliegenden Erfindung erstmals konfiguriert ist. - In diesem Beispiel gibt es zweiundachtzig (82) Client-Systeme, die mit dem gebündelten NAS, das über neun (9) Knoten verfügt, über ein Kundennetzwerk
21E verbunden sind. Folglich werden Parameter als P = 82 und N = 9 gesetzt. - Zuerst weist das Verwaltungsmodul jedem Knoten von (N = 9) Knoten eine Anzahl von (N – 1) Adressen, das heißt acht (8) Adressen je Knoten, im Umlaufverfahren zu. Somit beträgt die gesamte Anzahl an Adressen, die beim Zugriff auf Knoten des gebündelten NAS verwendet werden können, (A = N(N – 1) = 72). In diesem Beispiel wird ein j-ter Knoten Nj (N – 1 = 8) Adressen zugeordnet, die [j, j + N, j + 2N...(j + (N – 2)N)] aufweisen, wobei j eine positive ganze Zahl ist. Folglich kann auf einen ersten Knoten N1 mittels der Adressen {1, 10, 19, 28, 37, 46, 55, 64} zugegriffen werden, auf einen zweiten Knoten N2 kann mittels der Adressen {2, 11, 20, 29, 38, 47, 56, 65} zugegriffen werden, auf einen dritten Knoten N3 kann mittels der Adressen {3, 12, 21, 30, 39, 48, 57, 66} zugegriffen werden, auf einen vierten Knoten N4 kann mittels der Adressen {4, 13, 22, 31, 40, 49, 58, 67} zugegriffen werden, auf einen fünften Knoten N5 kann mittels der Adressen {5, 14, 23, 32, 41, 50, 59, 68} zugegriffen werden, auf einen sechsten Knoten N6 kann mittels der Adressen {6, 15, 24, 33, 42, 51, 60, 69} zugegriffen werden, auf einen siebten Knoten N7 kann mittels der Adressen {7, 16, 25, 34, 43, 52, 61, 70} zugegriffen werden, auf einen achten Knoten N8 kann mittels der Adressen {8, 17, 26, 35, 44, 53, 62, 71} zugegriffen werden, und auf einen neunten Knoten N9 kann mittels der Adressen {9, 18, 27, 36, 45, 54, 63, 72} zugegriffen werden.
- Nachdem es allen Knoten Adressen zugewiesen hat, weist das Verwaltungsmodul jedes Client-System von allen 82 Client-Systemen gleichmäßig einem entsprechenden Bereich einer Anzahl von (N = 9) Adressen zu, die Zugriffe auf alle neun (9) Knoten in dem gebündelten NAS ermöglichen, so dass jeder Knoten eine gleiche Anzahl von Client-Systemen bedient, ohne dass es zu einer erheblichen Abweichung der Arbeitslast von Knoten zu Knoten kommt. In diesem Beispiel verwendet ein i-tes Client-System Ci Knoten mit Adressen in einem i-ten Bereich von [((i – 1)N + 1) mod N(N – 1)...iN mod N(N – 1)], wobei i eine positive ganze Zahl ist. Folglich verwenden die Client-Systeme C1, C9, C17, C25, C33, C41, C49, C57, C65, C73, C81 Knoten mit Adressen in einem ersten Bereich von [1...(N = 9)], die Client-Systeme C2, C10, C18, C26, C34, C42, C50, C58, C66, C74, C82 verwenden Knoten mit Adressen in einem zweiten Bereich von [(N + 1 = 10)...(2N = 18)], die Client-Systeme C3, C11, C19, C27, C35, C43, C51, C59, C67, C75, verwenden Knoten mit Adressen in einem dritten Bereich von [(2N + 1 = 19)...(3N = 27)], die Client-Systeme C4, C12, C20, C28, C36, C44, C52, C60, C68, C76 verwenden Knoten mit Adressen in einem vierten Bereich von [(3N + 1 = 28)...(4N = 36)], die Client-Systeme C5, C13, C21, C29, C37, C45, C53, C61, C69, C77 verwenden Knoten mit Adressen in einem fünften Bereich von [(4N + 1 = 37)...(5N = 45)], die Client-Systeme C6, C14, C22, C30, C38, C46, C54, C62, C70, C78 verwenden Knoten mit Adressen in einem sechsten Bereich von [(5N + 1 = 46)...(6N = 54)], die Client-Systeme C7, C15, C22, C31, C39, C47, C55, C66, C71, C79 verwenden Knoten mit Adressen in einem siebten Bereich von [(6N + 1 = 55)...(7N = 63)] und die Client-Systeme C8, C16, C24, C32, C40, C48, C56, C64, C72, C80 verwenden Knoten mit Adressen in einem achten Bereich von [(7N + 1 = 64)...(8N = 72)].
-
9 ist ein Beispiel des Systems von1 oben zur Optimierung der Verwendung eines gebündelten NAS, das die Neuverteilung von Adressen eines ausgefallenen Knotens durchführt, indem es Schritt400 von6 oben im Anschluss an die in8 oben gemäß Ausführungsformen der vorliegenden Erfindung8 gezeigte Konfiguration von Adressen durchführt. - Zu einem Anfangszeitpunkt TI werden Adressen für Knoten in dem gebündelten NAS als
31E konfiguriert, wie in8 oben gezeigt ist. - Zu einem Funktionsübernahme-Zeitpunkt TF nach dem Anfangszeitpunkt TI werden Adressen für Knoten in dem gebündelten NAS als
31F konfiguriert, was neu verteilte Adressen für verbleibende Knoten des gebündelten NAS anzeigt. In diesem Beispiel war der erste Knoten N1, auf den mittels der Adressen {1, 10, 19, 28, 37, 46, 55, 64} zum Zeitpunkt TI zugegriffen werden konnte, ausgefallen und der erste Knoten N1 ist für kein Client-System in Betrieb. Die Adressen {1, 10, 19, 28, 37, 46, 55, 64}, die für den ersten Knoten N1 zugewiesen worden waren, werden im Umlaufverfahren auf die verbleibende Anzahl von (N – 1) Knoten Nj neu verteilt, wobei j eine positive ganze Zahl ist, die aus [2...9] ausgewählt wird. Jeder verbleibende Knoten Nj fügt zum Anfangszeitpunkt TI eine (j – 1)-te Adresse von den Adressen des ausgefallenen ersten Knotens N1 zu den entsprechenden Adressen eines jeden verbleibenden Knotens Nj hinzu, wie in31F von9 in Fettdruck dargestellt ist. Während eines Zeitraums zwischen dem Funktionsübernahme-Zeitpunkt TF und dem Zeitpunkt, zu dem die Wiederherstellung der Adressen durch die Durchführung der Schritte430 bis450 von7 oben fertiggestellt ist, stellt das gebündelte NAS den Client-Systemen Dienste bereit, indem es eine Anzahl von (N – 1 = 8) verbleibenden Knoten mit einer entsprechenden Anzahl (N = 9) von Adressen verwendet, so dass die Anzahl der Adressen, die den Client-Systemen für den Zugriff auf die Knoten des gebündelten NAS zur Verfügung stehen, d. h. A = N(N – 1) = 72, folglich gleich wie vor dem Ausfall des ersten Knotens N1 bleibt und folglich kein bestimmtes Client-System als Folge des Ausfalls des ersten Knotens N1 eine Leistungseinbuße erfährt. Jeder verbleibende Knoten Nj übernimmt eine Arbeitslast L/(N – 1 = 8), die den zusätzlichen, neu verteilten Adressen von dem ausgefallenen ersten Knoten N1 entspricht, was im Vergleich zu der anfänglichen Arbeitslast von L vor dem Ausfall des ersten Knotens eine entsprechend höhere, d. h. eine um 1/8 (12,5%) höhere Arbeitslast zur Folge hat. - Zu einem Neustart-Zeitpunkt TR nach dem Funktionsübernahme-Zeitpunkt TF werden die Adressen für Knoten in dem gebündelten NAS wiederhergestellt und auf die Adresskonfiguration zum Anfangszeitpunkt TI gesetzt, wie in
31E von9 gezeigt ist. - In einer Ausführungsform der vorliegenden Erfindung werden die Knoten des gebündelten NAS und entsprechend zugeordnete Adressen in einer Datenstruktur dargestellt, die als ”Gruppenadressmatrix” (”cluster address matrix”) bezeichnet wird und Spalten für jeden Knoten und Zeilen für Adressen, die jedem Knoten entsprechend zugeordnet sind, aufweist.
-
10 stellt ein Rechnersystem90 dar, das zur Optimierung der Verwendung eines gebündelten NAS gemäß Ausführungsformen der vorliegenden Erfindung verwendet wird. - Das Rechnersystem
90 weist einen Prozessor91 , eine Eingabeeinheit92 , die mit dem Prozessor91 verbunden ist, eine Ausgabeeinheit93 , die mit dem Prozessor91 verbunden ist, und Hauptspeichereinheiten94 und95 , die jeweils mit dem Prozessor91 verbunden sind, auf. In dieser Beschreibung stellt das Rechnersystem90 eine beliebige Art einer programmierbaren Datenverarbeitungsvorrichtung dar. - Die Eingabeeinheit
92 dient zum Empfang von Eingabedaten96 im Rechnersystem90 . Die Eingabeeinheit92 kann unter anderem eine Tastatur, eine Maus, ein Tastenblock, ein berührungsempfindlicher Bildschirm, ein Scanner, eine Spracherkennungseinheit, ein Sensor, eine Netzwerkschnittstellenkarte (network interface card (NIC)), ein Adapter für das Voice/video over Internet Protocol (VOIP), ein Funk-Adapter, ein Telefonadapter, ein Adapter für eine festgeschaltete Leitung usw. sein. Die Ausgabeeinheit93 wird verwendet, um von dem Rechnerprogrammcode97 erzeugte Ergebnisse an einen Benutzer des Rechnersystems90 zu übermitteln. Die Ausgabeeinheit93 kann unter anderem ein Drucker, ein Plotter, ein Rechnerbildschirm, ein Magnetband, eine austauschbare Festplatte, eine Diskette, eine NIC, ein VOIP-Adapter, ein Funk-Adapter, ein Telefonadapter, ein Adapter für eine festgeschaltete Leitung, ein Ton- und/oder Bildsignalgenerator, eine Licht emittierende Diode (LED) usw. sein. - Alle Komponenten der vorliegenden Erfindung können von einem Dienstanbieter, der die Installation oder die Einbindung von Datenverarbeitungsinfrastruktur in Bezug auf einen Prozess zur Optimierung der Verwendung des gebündelten NAS der vorliegenden Erfindung anbietet, installiert, verwaltet, bedient usw. werden. Folglich legt die vorliegende Erfindung einen Prozess zur Unterstützung einer Rechnerinfrastruktur offen, der das Einbinden, das Unterbringen, das Verwalten und das Einsetzen von rechnerlesbarem Code in einem Datenverarbeitungssystem (z. B. dem Datenverarbeitungssystem
90 ) aufweist, wobei der Code in Verbindung mit dem Datenverarbeitungssystem in der Lage ist, ein Verfahren zur Optimierung der Verwendung des gebündelten NAS durchzuführen. - In einer anderen Ausführungsform stellt die Erfindung ein Verfahren bereit, das die erfindungsgemäßen Prozessschritte auf der Grundlage von Abonnements, Werbung und/oder Gebühren durchführt. Das heißt, ein Dienstanbieter wie zum Beispiel ein Lösungsintegrator kann anbieten, einen Prozess zur Optimierung der Verwendung des gebündelten NAS der vorliegenden Erfindung zu erzeugen, zu verwalten, zu unterstützen usw. In diesem Fall kann der Dienstanbieter eine Rechnerinfrastruktur erzeugen, verwalten, unterstützen usw., welche die erfindungsgemäßen Prozessschritte für einen oder mehrere Kunden durchführt. Als Gegenleistung kann der Dienstanbieter im Rahmen eines Abonnements und/oder eines Gebührenvertrags Zahlungen von dem beziehungsweise den Kunden erhalten und/oder der Dienstanbieter kann Zahlungen aus dem Verkauf von Werbeinhalten an einen oder mehrere Dritte erhalten.
- Obwohl
10 das Rechnersystem90 als eine bestimmte Konfiguration aus Hardware und Software zeigt, kann jede beliebige Konfiguration aus Hardware und Software, die dem Fachmann bekannt sein dürfte, für die oben genannten Zwecke in Verbindung mit dem bestimmten Rechnersystem90 von10 verwendet werden. Die Hauptspeichereinheiten94 und95 können anstelle von gesonderten Hauptspeichereinheiten zum Beispiel auch Teile einer einzigen Hauptspeichereinheit sein. - Der Fachmann wird als vorteilhaft erkennen, dass Erscheinungsformen der vorliegenden Erfindung als ein System, ein Verfahren oder ein Computerprogrammprodukt realisiert werden können. Folglich können Erscheinungsformen der vorliegenden Erfindung die Form einer ganz in Hardware realisierten Ausführung, einer ganz in Software realisierten Ausführung (einschließlich Firmware, residenter Software, Mikrocode usw.) oder einer Ausführung annehmen, die Software- und Hardware-Erscheinungsformen kombiniert, die hier alle allgemein als eine ”Schaltung”, ein ”Modul” oder ein ”System” bezeichnet werden können. Überdies können Erscheinungsformen der vorliegenden Erfindung die Form eines Computerprogrammprodukts annehmen, das sich auf einem oder mehreren rechnerlesbaren Datenträger(n) befindet, auf dem beziehungsweise denen sich rechnerlesbarer Programmcode befindet.
- Jede beliebige Kombination aus einem oder mehreren rechnerlesbaren Datenträgern kann verwendet werden. Der rechnerlesbare Datenträger kann ein rechnerlesbarer Signaldatenträger oder ein rechnerlesbares Speichermedium sein. In dieser Beschreibung stellt der Begriff ”Speichereinheit”
94 ,95 ein rechnerlesbares Speichermedium dar. Ein rechnerlesbares Speichermedium kann zum Beispiel, ohne auf diese beschränkt zu sein, ein(e) elektronische(s), magnetische(s), optische(s), elektromagnetische(s), Infrarot- oder Halbleitersystem, -vorrichtung, -einheit oder eine beliebige geeignete Kombination des Vorstehenden sein. Zu konkreteren Beispielen (wobei die Liste keinen Anspruch auf Vollständigkeit erhebt) für das rechnerlesbare Speichermedium würden folgende gehören: eine elektrische Verbindung mit einer oder mehreren Leitungen, eine Diskette eines tragbaren Rechners, eine Festplatte, ein Direktzugriffsspeicher (RAM), ein Nur-Lese-Speicher (ROM), ein löschbarer programmierbarer Nur-Lese-Speicher (EPROM oder Flash-Speicher), ein Lichtwellenleiter, ein tragbarer Compact-Disk-Nur-Lese-Speicher (CD-ROM), eine optische Speichereinheit, eine magnetische Speichereinheit oder jede beliebige geeignete Kombination des Vorstehenden. Im Rahmen dieses Schriftstücks kann ein rechnerlesbares Speichermedium jedes physisch greifbare Medium sein, das ein Programm zur Verwendung durch ein Befehlsausführungssystem, eine Befehlsausführungsvorrichtung oder -einheit oder zur Verwendung in Verbindung mit einem Befehlsausführungssystem, einer Befehlsausführungsvorrichtung oder -einheit enthalten oder speichern kann. - Ein rechnerlesbarer Signaldatenträger kann ein übertragenes Datensignal mit einem darin enthaltenen rechnerlesbaren Programmcode, beispielsweise im Basisband oder als Teil einer Trägerwelle, enthalten. Solch ein übertragenes Signal kann eine beliebige einer Vielzahl von Formen einschließlich elektromagnetischer, optischer Formen oder jede beliebige geeignete Kombination dieser Formen, ohne auf diese beschränkt zu sein, annehmen.
- Bei einem rechnerlesbaren Signaldatenträger kann es sich um jeden beliebigen rechnerlesbaren Datenträger handeln, der kein rechnerlesbares Speichermedium ist und der ein Programm zur Verwendung durch oder zur Verwendung in Verbindung mit einem Befehlsausführungssystem, einer Befehlsausführungsvorrichtung oder -einheit übertragen, weiterleiten oder transportieren kann.
- Auf einem rechnerlesbaren Datenträger enthaltener Programmcode kann mittels eines geeigneten Mediums einschließlich eines drahtlosen Mediums, eines drahtgebundenen Mediums, eines Lichtwellenleiterkabels, mittels Hochfrequenz (HF) usw., ohne auf diese beschränkt zu sein, oder mittels jeder beliebigen geeigneten Kombination des Vorstehenden übertragen werden.
- Der Rechner-Programmcode
97 zur Durchführung von Operationen für Erscheinungsformen der vorliegenden Erfindung kann in einer beliebigen Kombination aus einer oder mehreren Programmiersprachen einschließlich einer objektorientierten Programmiersprache, wie beispielsweise Java, Smalltalk, C++ oder dergleichen, sowie in herkömmlichen prozeduralen Programmiersprachen wie beispielsweise der Programmiersprache ”C” oder in ähnlichen Programmiersprachen geschrieben sein. Die Ausführung des Rechner-Programmcodes97 kann vollständig auf dem Rechner des Benutzers, teilweise auf dem Rechner des Benutzers, als eigenständiges Software-Paket, teilweise auf dem Rechner des Benutzers und teilweise auf einem fernen Rechner oder vollständig auf dem fernen Rechner oder Server erfolgen. Im letzteren Szenario kann der ferne Rechner mit dem Rechner des Benutzers über jede beliebige Art eines Netzwerks einschließlich eines lokalen Netzwerks (LAN) oder eines Weitverkehrsnetzes (WAN) verbunden werden oder die Verbindung kann zu einem externen Rechner (zum Beispiel über das Internet mittels eines Internet-Dienstanbieters) hergestellt werden. - Erscheinungsformen der vorliegenden Erfindung sind mit Bezug auf Darstellungen in Flussdiagrammen und/oder Blockschaltbilder von Verfahren, Vorrichtungen (Systemen) und Computerprogrammprodukten gemäß Ausführungsformen der Erfindung beschrieben. Es versteht sich, dass jeder Block der Darstellungen in den Flussdiagrammen und/oder der Blockschaltbilder sowie Kombinationen aus Blöcken in den Darstellungen der Flussdiagramme und/oder den Blockschaltbildern mittels Rechnerprogrammbefehlen realisiert werden können. Der Begriff ”Rechnerprogrammbefehle” ist in dieser Beschreibung austauschbar mit dem Begriff ”Rechnerprogrammcode”
97 . Diese Rechnerprogrammbefehle können einem Prozessor eines Universalrechners, eines Rechners für spezielle Anwendungen oder einer anderen programmierbaren Datenverarbeitungsvorrichtung bereitgestellt werden, um eine Maschine so zu erzeugen, dass die Befehle, die über den Prozessor des Rechners oder einer anderen programmierbaren Datenverarbeitungsvorrichtung ausgeführt werden, ein Mittel zur Ausführung der Funktionen/Vorgänge erzeugen, die in dem Flussdiagramm und/oder dem Block oder den Blöcken der Blockschaltbilder angegeben sind. - Diese Rechnerprogrammbefehle können auch in einem rechnerlesbaren Speichermedium gespeichert werden, das einen Rechner, eine andere programmierbare Datenverarbeitungsvorrichtung oder andere Einheiten anweisen kann, auf eine bestimmte Art und Weise zu funktionieren, so, dass die in dem rechnerlesbaren Speichermedium gespeicherten Befehle einen Herstellungsgegenstand erzeugen, der Befehle enthält, die die Funktion/den Vorgang ausführen, welche beziehungsweise welcher in dem Flussdiagramm und/oder dem Block oder den Blöcken des Blockschaltbilds angegeben ist.
- Die Rechnerprogrammbefehle können auch auf einen Rechner, eine andere programmierbare Datenverarbeitungsvorrichtung oder auf andere Einheiten geladen werden, um die Durchführung einer Reihe von Betriebsschritten auf dem Rechner, einer anderen programmierbaren Vorrichtung oder auf anderen Einheiten zu bewirken, um einen von einem Rechner ausgeführten Prozess so zu erzeugen, dass die Befehle, die auf dem Rechner oder einer anderen programmierbaren Vorrichtung ausgeführt werden, Prozesse zur Ausführung der Funktionen/Vorgänge ermöglichen, die in dem Flussdiagramm und/oder dem Block oder den Blöcken des Blockschaltbilds angegeben sind.
- Das Flussdiagramm und die Blockschaltbilder in den Figuren zeigen die Architektur, die Funktionalität und die Betriebsweise von möglichen Ausführungsarten von Systemen, Verfahren und Computerprogrammprodukten gemäß verschiedenen Ausführungsformen der vorliegenden Erfindung. In dieser Hinsicht kann jeder Block in dem Flussdiagramm oder den Blockschaltbildern ein Modul, ein Segment oder einen Teil von Code darstellen, das beziehungsweise der einen oder mehrere ausführbare Befehle zur Ausführung der angegebenen logischen Funktion(en) aufweist. Es sei auch angemerkt, dass die in dem Block angegebenen Funktionen in manchen alternativen Ausführungsarten nicht in der in den Figuren angegebenen Reihenfolge auftreten können. In Abhängigkeit von der mit ihnen verbundenen Funktionalität können beispielsweise zwei Blöcke, die als aufeinanderfolgende Blöcke dargestellt sind, tatsächlich weitgehend gleichzeitig ausgeführt werden oder die Blöcke können manchmal in der umgekehrten Reihenfolge ausgeführt werden. Man wird auch feststellen, dass jeder Block der Blockschaltbilder und/oder der Darstellung in dem Flussdiagramm sowie Kombinationen aus Blöcken in den Blockschaltbildern und/oder der Darstellung in dem Flussdiagramm von Systemen, die auf Hardware für spezielle Anwendungen beruhen und die angegebenen Funktionen oder Vorgänge durchführen, oder von Kombinationen aus Hardware für spezielle Anwendungen und Rechnerbefehlen ausgeführt werden können.
- Die entsprechenden Strukturen, Materialien, Vorgänge und Gleichwertiges von allen Mitteln oder Schritten sowie Funktionselementen in den Ansprüchen sollen jedwede Struktur, jedwedes Material oder jedweden Vorgang zur Ausführung der Funktion in Kombination mit anderen beanspruchten Elementen, die im Einzelnen beansprucht werden, beinhalten. Die Beschreibung der vorliegenden Erfindung erfolgte zum Zweck der Veranschaulichung und Erläuterung, erhebt jedoch keinen Anspruch auf Vollständigkeit und ist auch nicht als auf die Erfindung in der offengelegten Form beschränkt zu verstehen. Viele Ab- und Veränderungen sind für den Fachmann erkennbar, ohne vom Umfang und Wesen der Erfindung abzuweichen. Die Ausführungsform wurde gewählt und beschrieben, um die Grundgedanken der Erfindung und die praktische Anwendung bestmöglich zu erklären und um anderen Fachleuten das Verständnis der Erfindung hinsichtlich verschiedener Ausführungsformen mit verschiedenen Änderungen, wie sie für die entsprechende vorgesehene Verwendung geeignet sind, zu ermöglichen.
Claims (12)
- Verfahren zur Optimierung einer Verwendung eines gebündelten, an ein Netzwerk angeschlossenen Speichers (NAS), das Verfahren aufweisend: Konfigurieren des gebündelten NAS, indem eine Anzahl A von Adressen und eine Anzahl N von Knoten festgelegt wird, die in dem gebündelten NAS erforderlich sind, um eine Lastmenge L für eine Anzahl P von Client-Systemen zu erzeugen, von denen jedes eine gleiche und konstante Last erzeugt, und die mit dem gebündelten NAS verbunden sind, so dass die Anzahl A von Adressen der Anzahl P von Client-Systemen ermöglicht, auf die Anzahl N von Knoten gleichmäßig zuzugreifen, um die Lastmenge L aufzuteilen, wobei jeder Knoten der Anzahl N von Knoten bei der Erzeugung einer entsprechenden Last, die zu einem jeden Knoten gehört, über eine entsprechende Menge h an Bandbreite verfügt; Konfigurieren eines entsprechenden Satzes von Adressen, die aus der Anzahl A von Adressen ausgewählt sind, so dass die Anzahl P von Client-Systemen während der Erzeugung der Lastmenge L durch die Anzahl P von Client-Systemen über den entsprechenden Satz von Adressen auf die Anzahl N von Knoten zugreift; und Verwalten eines Dienstes des gebündelten NAS gleichzeitig mit der Erzeugung durch die Anzahl P von Client-Systemen, indem der Dienst der Anzahl N von Knoten in dem gebündelten NAS überwacht und optimiert wird, so dass der gebündelte NAS einen Ausfall eines Knotens in dem gebündelten NAS ausgleicht und der gebündelte NAS die Erzeugung der Lastmenge L durch die Anzahl P von Client-Systemen nahtlos bedient.
- Verfahren nach Anspruch 1, das Konfigurieren des gebündelten NAS aufweisend: Festlegen von L, das eine maximale Lastmenge darstellt, welche die Anzahl P von Client-Systemen erzeugt, die von dem gebündelten NAS bedient werden sollen; Berechnen von N, das eine erforderliche Anzahl von Knoten in dem gebündelten NAS darstellt, um die berechnete Lastmenge L als N = L/h + 1 zu berechnen; und Berechnen von A, das eine Anzahl von Adressen darstellt, die für die berechnete Anzahl N von Knoten in dem gebündelten NAS erforderlich sind, als A = N(N – 1).
- Verfahren nach Anspruch 1, das Konfigurieren des entsprechenden Satzes von Adressen aufweisend: Verteilen der Anzahl A von Adressen über die Anzahl N von Knoten mittels des Umlaufverfahrens, wobei die Adressen in einer Liste von Adressen aufeinanderfolgend sind, so dass jeder Knoten einem entsprechenden Satz von (N – 1) Adressen zugeordnet ist und so dass beliebige zwei einzelne Adressen in dem entsprechenden Satz von (N – 1) Adressen um eine Anzahl N von Einträgen in der Liste der Adressen voneinander entfernt sind; Zuweisen eines entsprechenden Satzes von N aufeinanderfolgenden Adressen in der Liste zu jedem Client-System der Anzahl P von Client-Systemen im Umlaufverfahren, wobei die N aufeinanderfolgenden Adressen in der Liste jeweils einem jeden Knoten entsprechen, so dass jedes Client-System durch die Verwendung der N aufeinanderfolgenden Adressen in dem entsprechenden Satz Zugriff auf alle Knoten in dem gebündelten NAS hat, und so dass eine entsprechende Adresse für einen jeden Knoten die Lastmenge L/N für einen jeden Knoten einheitlich aufteilt.
- Verfahren nach Anspruch 1, das Verwalten aufweisend: Überwachen der Anzahl N von Knoten in dem gebündelten NAS während der Erzeugung durch die Anzahl P von Client-Systemen; beruhend auf der Überwachung Feststellen, dass ein erster Knoten der Anzahl N von Knoten ausgefallen ist; und Neuverteilen eines ersten Satzes von (N – 1) Adressen und einer entsprechenden Last, die zuvor dem ersten Knoten zugeordnet war, auf den Rest der (N – 1) Knoten des gebündelten NAS, so dass die Anzahl P von Client-Systemen durch Verwendung der Anzahl A von Adressen während der Erzeugung durch die Anzahl P von Client-Systemen auf den Rest der (N – 1) Knoten zugreift.
- Verfahren nach Anspruch 4, das Neuverteilen aufweisend: Verteilen des ersten Satzes von (N – 1) Adressen auf den Rest der (N – 1) normal arbeitenden Knoten im Umlaufverfahren, so dass jeder in Betrieb befindliche Knoten des Rests der (N – 1) Knoten einem entsprechenden neuen Satz von N Adressen zugeordnet wird und so dass der entsprechende neue Satz von N Adressen des Weiteren eine entsprechende zusätzliche Adresse von dem ersten Satz von (N – 1) Adressen für den ersten Knoten aufweist, die im Umlaufverfahren für einen jeden in Betrieb befindlichen Knoten ausgewählt wurden; Zuweisen einer entsprechenden Last, die einer jeden Adresse des ersten Satzes von (N – 1) Adressen zugeordnet ist, zu einem jeden in Betrieb befindlichen Knoten, so dass ein jeder in Betrieb befindliche Knoten den entsprechenden neuen Satz von N Adressen für die einheitlich aufgeteilte Last (L/(N – 1)) für die Erzeugung durch die Anzahl P von Client-Systemen bedient.
- Computerprogrammprodukt, aufweisend: eine rechnerlesbare Speichereinheit, die einen rechnerlesbaren Programmcode enthält, wobei der rechnerlesbare Programmcode Befehle enthält, die die Optimierung der Verwendung eines gebündelten, an ein Netzwerk angeschlossenen Speichers (NAS) durchführen, die Optimierung aufweisend: Konfigurieren des gebündelten NAS, indem eine Anzahl A von Adressen und eine Anzahl N von Knoten festgelegt wird, die in dem gebündelten NAS erforderlich sind, um eine Lastmenge L für eine Anzahl P von Client-Systemen zu erzeugen, von denen jedes eine gleiche und konstante Last erzeugt, und die mit dem gebündelten NAS verbunden sind, so dass die Anzahl A von Adressen der Anzahl P von Client-Systemen ermöglicht, auf die Anzahl N von Knoten gleichmäßig zuzugreifen, um die Lastmenge L aufzuteilen, wobei jeder Knoten der Anzahl N von Knoten bei der Erzeugung einer entsprechenden Last, die zu einem jeden Knoten gehört, über eine entsprechende Menge h an Bandbreite verfügt; Konfigurieren eines entsprechenden Satzes von Adressen, die aus der Anzahl A von Adressen ausgewählt werden, so dass die Anzahl P von Client-Systemen während der Erzeugung der Lastmenge L durch die Anzahl P von Client-Systemen über den entsprechenden Satz von Adressen auf die Anzahl N von Knoten zugreift; und Verwalten eines Dienstes des gebündelten NAS gleichzeitig mit der Erzeugung durch die Anzahl P von Client-Systemen, indem der Dienst der Anzahl N von Knoten in dem gebündelten NAS überwacht und optimiert wird, so dass der gebündelte NAS einen Ausfall eines Knotens in dem gebündelten NAS ausgleicht und der gebündelte NAS die Erzeugung der Lastmenge L durch die Anzahl P von Client-Systemen nahtlos bedient.
- Rechnersystem, das einen Prozessor, einen mit dem Prozessor verbundenen Hauptspeicher und eine mit dem Prozessor verbundene rechnerlesbare Speichereinheit aufweist, wobei die Speichereinheit Programmcode enthält, der so konfiguriert ist, dass er von dem Prozessor über den Hauptspeicher ausgeführt wird, um ein Verfahren zur Optimierung der Verwendung eines gebündelten, an ein Netzwerk angeschlossenen Speichers (NAS) durchzuführen, das Verfahren umfassend: Konfigurieren des gebündelten NAS, indem eine Anzahl A von Adressen und eine Anzahl N von Knoten festgelegt wird, die in dem gebündelten NAS erforderlich sind, um eine Lastmenge L für eine Anzahl P von Client-Systemen zu erzeugen, von denen jedes eine gleiche und konstante Last erzeugt, und die mit dem gebündelten NAS verbunden sind, so dass die Anzahl A von Adressen der Anzahl P von Client-Systemen ermöglicht, auf die Anzahl N von Knoten gleichmäßig zuzugreifen, um die Lastmenge L aufzuteilen, wobei jeder Knoten der Anzahl N von Knoten bei der Erzeugung einer entsprechenden Last, die zu einem jeden Knoten gehört, über eine entsprechende Menge h an Bandbreite verfügt; Konfigurieren eines entsprechenden Satzes von Adressen, die aus der Anzahl A von Adressen ausgewählt werden, so dass die Anzahl P von Client-Systemen während der Erzeugung der Lastmenge L durch die Anzahl P von Client-Systemen über den entsprechenden Satz von Adressen auf die Anzahl N von Knoten zugreift; und Verwalten eines Dienstes des gebündelten NAS gleichzeitig mit der Erzeugung durch die Anzahl P von Client-Systemen, indem der Dienst der Anzahl N von Knoten in dem gebündelten NAS überwacht und optimiert wird, so dass der gebündelte NAS einen Ausfall eines Knotens in dem gebündelten NAS ausgleicht und der gebündelte NAS die Erzeugung der Lastmenge L durch die Anzahl P von Client-Systemen nahtlos bedient.
- Prozess zur Unterstützung von Rechnerinfrastruktur, wobei der Prozess die Bereitstellung von mindestens einem Support-Dienst für mindestens eines von Erzeugen, Einbinden, Unterbringen, Verwalten und Einsetzen von rechnerlesbarem Code in einem Datenverarbeitungssystem aufweist, wobei der Code in Verbindung mit dem Datenverarbeitungssystem in der Lage ist, ein Verfahren zur Optimierung der Verwendung eines gebündelten, an ein Netzwerk angeschlossenen Speichers (NAS) durchzuführen, das Verfahren umfassend: Konfigurieren des gebündelten NAS, indem eine Anzahl A von Adressen und eine Anzahl N von Knoten festgelegt wird, die in dem gebündelten NAS erforderlich sind, um eine Lastmenge L für eine Anzahl P von Client-Systemen zu erzeugen, von denen jedes eine gleiche und konstante Last erzeugt, und die mit dem gebündelten NAS verbunden sind, so dass die Anzahl A von Adressen der Anzahl P von Client-Systemen ermöglicht, auf die Anzahl N von Knoten gleichmäßig zuzugreifen, um die Lastmenge L aufzuteilen, wobei jeder Knoten der Anzahl N von Knoten bei der Erzeugung einer entsprechenden Last, die zu einem jeden Knoten gehört, über eine entsprechende Menge h an Bandbreite verfügt; Konfigurieren eines entsprechenden Satzes von Adressen, die aus der Anzahl A von Adressen ausgewählt werden, so dass die Anzahl P von Client-Systemen während der Erzeugung der Lastmenge L durch die Anzahl P von Client-Systemen über den entsprechenden Satz von Adressen auf die Anzahl N von Knoten zugreift; und Verwalten eines Dienstes des gebündelten NAS gleichzeitig mit der Erzeugung durch die Anzahl P von Client-Systemen, indem der Dienst der Anzahl N von Knoten in dem gebündelten NAS überwacht und optimiert wird, so dass der gebündelte NAS einen Ausfall eines Knotens in dem gebündelten NAS ausgleicht und der gebündelte NAS die Erzeugung der Lastmenge L durch die Anzahl P von Client-Systemen nahtlos bedient.
- Computerprogrammprodukt nach Anspruch 6 oder Rechnersystem nach Anspruch 7 oder Prozess nach Anspruch 8, wobei das Konfigurieren des gebündelten NAS aufweist: Festlegen von L, das eine maximale Lastmenge darstellt, welche die Anzahl P von Client-Systemen erzeugt, die von dem gebündelten NAS bedient werden sollen; Berechnen von N, das eine erforderliche Anzahl von Knoten in dem gebündelten NAS darstellt, um die berechnete Lastmenge L als N = L/h + 1 zu berechnen; und Berechnen von A, das eine Anzahl von Adressen darstellt, die für die berechnete Anzahl N von Knoten in dem gebündelten NAS erforderlich sind, als A = N(N – 1).
- Computerprogrammprodukt nach Anspruch 6 oder Rechnersystem nach Anspruch 7 oder Prozess nach Anspruch 8, wobei das Konfigurieren des entsprechenden Satzes von Adressen aufweist: Verteilen der Anzahl A von Adressen über die Anzahl N von Knoten mittels des Umlaufverfahrens, wobei die Adressen in einer Liste von Adressen aufeinanderfolgend sind, so dass jeder Knoten einem entsprechenden Satz von (N – 1) Adressen zugeordnet ist und so dass beliebige zwei einzelne Adressen in dem entsprechenden Satz von (N – 1) Adressen um eine Anzahl N von Einträgen in der Liste der Adressen voneinander entfernt sind; Zuweisen eines entsprechenden Satzes von N aufeinanderfolgenden Adressen in der Liste zu jedem Client-System der Anzahl P von Client-Systemen im Umlaufverfahren, wobei die N aufeinanderfolgenden Adressen in der Liste jeweils einem jeden Knoten entspricht, so dass jedes Client-System durch die Verwendung der N aufeinanderfolgenden Adressen in dem entsprechenden Satz Zugriff auf alle Knoten in dem gebündelten NAS hat, und so dass eine entsprechende Adresse für einen jeden Knoten die Lastmenge L/N für einen jeden Knoten einheitlich aufteilt.
- Computerprogrammprodukt nach Anspruch 6 oder Rechnersystem nach Anspruch 7 oder Prozess nach Anspruch 8, wobei das Verwalten aufweist: Überwachen der Anzahl N von Knoten in dem gebündelten NAS während der Erzeugung durch die Anzahl P von Client-Systemen; beruhend auf der Überwachung Feststellen, dass ein erster Knoten der Anzahl N von Knoten ausgefallen ist; und Neuverteilen eines ersten Satzes von (N – 1) Adressen und einer entsprechenden Last, die zuvor dem ersten Knoten zugeordnet war, auf den Rest der (N – 1) Knoten des gebündelten NAS, so dass die Anzahl P von Client-Systemen durch Verwendung der Anzahl A von Adressen während der Erzeugung durch die Anzahl P von Client-Systemen auf den Rest der (N – 1) Knoten zugreift.
- Computerprogrammprodukt nach Anspruch 11 oder Rechnersystem nach Anspruch 11 oder Prozess nach Anspruch 11, wobei das Neuverteilen aufweist: Verteilen des ersten Satzes von (N – 1) Adressen auf den Rest der (N – 1) normal arbeitenden Knoten im Umlaufverfahren, so dass jeder in Betrieb befindliche Knoten des Rests der (N – 1) Knoten einem entsprechenden neuen Satz von N Adressen zugeordnet wird und so dass der entsprechende neue Satz von N Adressen des Weiteren eine entsprechende zusätzliche Adresse von dem ersten Satz von (N – 1) Adressen für den ersten Knoten aufweist, die im Umlaufverfahren für einen jeden in Betrieb befindlichen Knoten ausgewählt wurden; Zuweisen einer entsprechenden Last, die einer jeden Adresse des ersten Satzes von (N – 1) Adressen zugeordnet ist, zu einem jeden in Betrieb befindlichen Knoten, so dass ein jeder in Betrieb befindliche Knoten den entsprechenden neuen Satz von N Adressen für die einheitlich aufgeteilte Last (L/(N – 1)) für die Erzeugung durch die Anzahl P von Client-Systemen bedient.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP11290414.9 | 2011-09-15 | ||
EP11290414 | 2011-09-15 |
Publications (1)
Publication Number | Publication Date |
---|---|
DE102012215436A1 true DE102012215436A1 (de) | 2013-03-21 |
Family
ID=47137184
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE102012215436A Ceased DE102012215436A1 (de) | 2011-09-15 | 2012-08-30 | Optimierung der Verwendung eines gebündelten, an ein Netzwerk angeschlossenen Speichers (clustered network attached storage (NAS)) |
Country Status (3)
Country | Link |
---|---|
US (1) | US8751641B2 (de) |
DE (1) | DE102012215436A1 (de) |
GB (1) | GB2494764B (de) |
Families Citing this family (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10721269B1 (en) | 2009-11-06 | 2020-07-21 | F5 Networks, Inc. | Methods and system for returning requests with javascript for clients before passing a request to a server |
US9420049B1 (en) | 2010-06-30 | 2016-08-16 | F5 Networks, Inc. | Client side human user indicator |
US10454997B2 (en) * | 2012-09-07 | 2019-10-22 | Avigilon Corporation | Distributed physical security system |
US9430306B2 (en) * | 2013-10-08 | 2016-08-30 | Lenovo Enterprise Solutions (Singapore) Pte. Ltd. | Anticipatory protection of critical jobs in a computing system |
GB2520343A (en) | 2013-11-19 | 2015-05-20 | Ibm | A system having a cluster of communication controllers and a method for modification of the latter |
US20150293699A1 (en) | 2014-04-11 | 2015-10-15 | Graham Bromley | Network-attached storage enhancement appliance |
US9888064B2 (en) | 2015-02-11 | 2018-02-06 | International Business Machines Corporation | Load-balancing input/output requests in clustered storage systems |
WO2016161171A1 (en) | 2015-03-31 | 2016-10-06 | Avigilon Corporation | Security device capability discovery and device selection |
US9959109B2 (en) | 2015-04-10 | 2018-05-01 | Avigilon Corporation | Upgrading a physical security system having multiple server nodes |
US20170124159A1 (en) * | 2015-10-30 | 2017-05-04 | Netapp, Inc. | Techniques to process support data in a compute environment |
US9699244B2 (en) * | 2015-11-11 | 2017-07-04 | Weka.IO Ltd. | Load balanced network file accesses |
CN105511805B (zh) * | 2015-11-26 | 2019-03-19 | 深圳市中博科创信息技术有限公司 | 集群文件系统的数据处理方法和装置 |
US10560553B2 (en) * | 2016-09-14 | 2020-02-11 | International Business Machines Corporation | Assigning IP pools to file access protocols for NAS failover |
CN109245998A (zh) * | 2018-10-09 | 2019-01-18 | 郑州云海信息技术有限公司 | 一种访问nas的方法、系统及相关组件 |
CN116055496B (zh) * | 2022-12-30 | 2024-04-05 | 广州趣研网络科技有限公司 | 一种监控数据采集方法、装置、电子设备及存储介质 |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6470389B1 (en) * | 1997-03-14 | 2002-10-22 | Lucent Technologies Inc. | Hosting a network service on a cluster of servers using a single-address image |
US5983227A (en) * | 1997-06-12 | 1999-11-09 | Yahoo, Inc. | Dynamic page generator |
FI115358B (fi) * | 2001-11-05 | 2005-04-15 | Nokia Corp | Tilaton kuormanjako |
JP2003163689A (ja) * | 2001-11-28 | 2003-06-06 | Hitachi Ltd | ネットワーク連携情報処理システムおよびその複数負荷分散機間のアクセス移動方法 |
US8578053B2 (en) | 2002-12-05 | 2013-11-05 | Fujitsu Limited | NAS load balancing system |
US7937551B2 (en) * | 2003-01-21 | 2011-05-03 | Dell Products L.P. | Storage systems having differentiated storage pools |
US7606916B1 (en) | 2003-11-10 | 2009-10-20 | Cisco Technology, Inc. | Method and apparatus for load balancing within a computer system |
US7827262B2 (en) * | 2005-07-14 | 2010-11-02 | Cisco Technology, Inc. | Approach for managing state information by a group of servers that services a group of clients |
US7526668B2 (en) * | 2006-06-08 | 2009-04-28 | Hitachi, Ltd. | Failover method of remotely-mirrored clustered file servers |
US7613947B1 (en) | 2006-11-30 | 2009-11-03 | Netapp, Inc. | System and method for storage takeover |
US7949893B1 (en) * | 2008-04-30 | 2011-05-24 | Netapp, Inc. | Virtual user interface failover |
US8271652B2 (en) | 2008-07-24 | 2012-09-18 | Netapp, Inc. | Load-derived probability-based domain name service in a network storage cluster |
JP5429179B2 (ja) * | 2008-10-02 | 2014-02-26 | 日本電気株式会社 | ネットワークノードおよびその負荷分散方法 |
US20110252127A1 (en) * | 2010-04-13 | 2011-10-13 | International Business Machines Corporation | Method and system for load balancing with affinity |
-
2011
- 2011-09-28 US US13/247,312 patent/US8751641B2/en not_active Expired - Fee Related
-
2012
- 2012-08-30 DE DE102012215436A patent/DE102012215436A1/de not_active Ceased
- 2012-09-10 GB GB1216103.0A patent/GB2494764B/en active Active
Also Published As
Publication number | Publication date |
---|---|
GB2494764A (en) | 2013-03-20 |
GB2494764B (en) | 2013-08-07 |
GB201216103D0 (en) | 2012-10-24 |
US8751641B2 (en) | 2014-06-10 |
US20130073717A1 (en) | 2013-03-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE102012215436A1 (de) | Optimierung der Verwendung eines gebündelten, an ein Netzwerk angeschlossenen Speichers (clustered network attached storage (NAS)) | |
DE112018004349T5 (de) | Dynamische auswahl von bereitstellungskonfigurationen von softwareanwendungen | |
DE69030340T2 (de) | Makler für die Auswahl von Rechnernetzwerkservern | |
DE112018000193T5 (de) | Daten sequenziell in Zonen in einem verstreuten Speichernetzwerk speichern | |
DE112010004931T5 (de) | Mehrphasige Wiederherstellung von Dateisystemen mit SelektiverBedarfsweiser Verfügbarkeit von Daten( | |
DE60316141T2 (de) | Echtzeit-speicherbereichsnetzwerk | |
DE102016105589A1 (de) | Anwenden von Firmware-Updates in einem System mit Null-Stillstandszeit durch wahlweise Abschalten und Einschalten von Hardware unter Verwenden einer Hypervisor-Schicht | |
DE102015105884A1 (de) | Zuverlässige und deterministische Live-Migration von virtuellen Maschinen | |
DE102005051980B4 (de) | System und Verfahren zur Netzwerkübertragung eines Informationsverarbeitungssystem-Images | |
DE112010003144T5 (de) | Erweiterbare Grundstruktur zur Unterstützung verschiedener Einsatzarchitekturen | |
DE10255125A1 (de) | Dezentralisierte Automatische Testung von Grafischen Benutzerschnittstellen(GUI) von Software | |
DE112010004772T5 (de) | Verfahren und System zum Verwalten von Konfigurationen von Systemverwaltungsagentenin einer Verteilten Umgebung | |
DE112020000912T5 (de) | Verwalten von software-programmen | |
DE112020004651B4 (de) | Multi-tenant-etl-ressourcenaufteilung | |
DE112020004116T5 (de) | Dynamisches abändern der parallelität einer aufgabe in einer pipeline | |
DE112021000390T5 (de) | Anpassen der leistung eines datenverarbeitungssystems | |
DE112021003401T5 (de) | Schattenexperimente für serverlose multi-tenant-cloud-dienste | |
DE102016219854A1 (de) | Computersystem und Verfahren zum dynamischen Anpassen eines software-definierten Netzwerks | |
DE112017006993T5 (de) | System und Verfahren zum Erfassen einer Netztopologie | |
DE112021005636T5 (de) | Migrieren von komplexen legacy-anwendungen | |
DE112021003402T5 (de) | Blockchain-verwaltung von bereitstellungsfehlern | |
EP1711892A1 (de) | Verfahren zum betreiben einer anordnung mehrerer rechner bei einem rechnerausfall | |
DE102014116744B4 (de) | Management von Informationstechnologieressourcen | |
DE112018004415B4 (de) | Optimierung von cloud-ressourcen bei operationen in mehrstufigem speicher auf richtliniengrundlage | |
DE112021000619T5 (de) | Adaptive zustandsverwaltung für statusunabhängige services |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
R012 | Request for examination validly filed | ||
R082 | Change of representative |
Representative=s name: SPIES DANNER & PARTNER PATENTANWAELTE PARTNERS, DE Representative=s name: LIFETECH IP SPIES & BEHRNDT PATENTANWAELTE PAR, DE Representative=s name: SPIES & BEHRNDT PATENTANWAELTE PARTG MBB, DE Representative=s name: LIFETECH IP SPIES DANNER & PARTNER PATENTANWAE, DE |
|
R082 | Change of representative |
Representative=s name: LIFETECH IP SPIES & BEHRNDT PATENTANWAELTE PAR, DE Representative=s name: SPIES & BEHRNDT PATENTANWAELTE PARTG MBB, DE Representative=s name: LIFETECH IP SPIES DANNER & PARTNER PATENTANWAE, DE |
|
R016 | Response to examination communication | ||
R082 | Change of representative |
Representative=s name: LIFETECH IP SPIES & BEHRNDT PATENTANWAELTE PAR, DE Representative=s name: SPIES & BEHRNDT PATENTANWAELTE PARTG MBB, DE |
|
R082 | Change of representative |
Representative=s name: SPIES & BEHRNDT PATENTANWAELTE PARTG MBB, DE |
|
R002 | Refusal decision in examination/registration proceedings | ||
R003 | Refusal decision now final |