-
Die
vorliegende Erfindung bezieht sich auf eine Netzwerkgerätekonfiguration.
Insbesondere bezieht sich die Erfindung auf Gerätekonfiguration in einer verteilten
Umgebung.
-
Allgemein
gesagt besteht ein Computernetzwerk aus einer Anzahl von verbundenen
Geräten, wie
z. B. Desktopcomputern, Servern und Peripheriegeräten, einschließlich Druckern,
Kopierern, Scannern, Faxmaschinen, Multifunktionsgeräten und
elektronischen Speichergeräten.
Jedes Gerät
weist eine Anzahl von Einstellungen auf, die von Zeit zu Zeit konfiguriert
werden müssen.
Diese Einstellungen umfassen IP-Adressen
(IP = Internet Protocol); Teilnetzmasken; IP-Gateway-Adressen; Proxy-Server-Zuordnungen;
Gemeinschaftsnamen; Gerätepaßwörter; Positionsbeschreibungen;
Systemkontakt; Rahmentypauswahl; Protokollstapelauswahl; Druckauflösung; Duplexen;
und Papierablageauswahl, um nur einige zu nennen. Eine einzelne
Einstellung für
bestimmte Attribute, wie z. B. das IP-Gateway und die Teilnetzmaske
können über mehrere
Geräte
angewendet werden. Für
Geräte,
wie z. B. Drucker, werden unterschiedliche Einstellungen für Papierablageausgabe
und Druckauflösung
für jedes Gerät individuell
angewendet.
-
In
der Vergangenheit erforderte die Konfiguration das physikalische
Zugreifen auf jedes Gerät und
das Eingeben der gewünschten
Einstellungen durch ein Steuerbedienfeld oder eine andere Schnittstelle,
die durch das Gerät
geliefert wird. Wenn sich die Anzahl der Geräte auf dem Netzwerk erhöht, erhöht sich
damit auch die Schwierigkeit beim Verwalten der Konfiguration der
Geräte.
Dies trifft insbesondere zu, wenn sich die räumliche Ausdehnung des Netzwerks
erweitert. Bei heutigen Firmen ist es nicht unüblich, daß sich ein Netzwerk über Gebäude, über Bundesstaaten
oder sogar über
Länder
erstreckt – was
einen physikalischen Zugriff schwierig, wenn nicht sogar unmöglich macht.
Folglich haben sich Verfahren und Systeme zum entfernten Zugreifen
auf und Konfigurieren von Netzwerkgeräten entwickelt.
-
Ein
Lösungsansatz
umfaßt
das Einbetten eines Webservers in jedes Gerät zum Verwalten der Konfiguration
dieses Geräts.
Unter Verwendung eines herkömmlichen
Webbrowsers kann ein Systemadministrator nach der Adresse des speziellen
Geräts
suchen (browsen). Der eingebettete Webserver sendet eine Webseite
zurück,
die es dem Administrator ermöglicht,
Konfigurationseinstellungen für
dieses Gerät
auszuwählen.
Während
dies eine Fernkonfiguration ermöglicht,
erfordert es, daß der
Administrator manuell zu jedem Gerät browst und jedes Gerät nacheinander
konfiguriert.
-
Eine
zweite Lösung
umfaßt
das Plazieren von Netzwerkgeräten
unter die Steuerung einer Geräteverwaltungssoftwareanwendung,
wie z. B. Web JetAdminTM von Hewlett-Packard.
Die Software wird normalerweise auf einem Netzwerkserver oder einer Workstation
installiert. Unter Verwendung eines herkömmlichen Browsers kann ein
Systemadministrator zu der Geräteverwaltungsanwendung
browsen, die wiederum mit den Netzwerkgeräten kommuniziert, wodurch es
dem Administrator ermöglicht
wird, die Konfigurationseinstellungen auszuwählen, die entweder bei einem
Gerät angewendet
werden sollen, oder gleichzeitig bei einer Gruppe von Geräten. Wenn
neue Geräte
verfügbar
werden, muß die
Geräteverwaltungssoftware
aktualisiert werden, um eine Konfigurationsunterstützung für jedes
neue Gerät
zu liefern.
-
Was
benötigt
wird ist ein System zum gleichzeitigen Konfigurieren einer Gruppe
von Netzwerkgeräten,
das nicht die Installation und Wartung einer Softwareanwendung erfordert,
wenn neue Geräte
in dem Netzwerk verfügbar
werden.
-
In
HP Web JetAdmin-Referenzhandbuch, Auszug S. 1-36, Hewlett-Packard
Company, (C)1996-2001, beruhend auf Copyright von 1995-1998 J.-L.
Gailly & M. Adler;
eHB wird ein Konfigurations-Tool für die Konfiguration einer Vielzahl von
unterschiedlichen Geräten
beschrieben.
-
In
UpnP(TM) Device Architecture, Vers. 1.0.
08 Jun 2000, (C)1999-2000 Contr. Members of the UPnP Forum, S. 1-43,
http://www.upnp.orq/download/UPnPDA10_20000613.htm; eHB wird beschrieben,
ausgehend von einem Computer eines Administrators über ein
Netzwerk die aktuelle Konfiguration eines ausgewählten Gerätes zu erfragen und gegebenenfalls
zu verändern.
-
G.
Zioulas et al.: The BaBar Online Datebases, Internat. Conf. on Computing
in High-Energy Physics and Nuclear Physics, (CHEP 2000), 2000, S.1-4
+ Bib., http://chep2000.pd.infn.it/paper/pap-b112.pdf, Bibliograpy
gemäß: „Energy
Citations Database",
http//www.osti.gov/energycitations/product.bibiio.jsp?osti_id=830517;
eHB beschreibt die Verwendung von Datenbanken zur Speicherung von
Konfigurationsparametern.
-
Die
oben genannten Druckschriften ist nicht zu entnehmen, daß ein zu
konfigurierendes Primärgerät selbst
Konfigurationslogik für
die eigene Konfiguration und die Konfiguration von Sekundärgeräten sammelt,
eine Benutzerschnittstelle mit benutzerzugreifbaren Steuerungen
erzeugt, bevor Konfigurationseinstellungen durch das Primärgerät oder das oder
die Sekundärgeräte verwendet
werden, für
das die betreffende Konfigurationseinstellung ausgewählt wurde.
-
Es
ist die Aufgabe der vorliegenden Erfindung, Verfahren und Vorrichtungen
zu schaffen, die eine einfache Konfiguration von Netzwerkgeräten eines
Netzwerks ermöglichen.
-
Diese
Aufgabe wird durch ein Verfahren gemäß Anspruch 1 oder 7, durch
ein Computerprogrammprodukt gemäß Anspruch
12 und durch ein System gemäß Anspruch
18 oder 24 gelöst.
-
Dementsprechend
bezieht sich die vorliegende Erfindung auf das Konfigurieren von
Geräten in
einem Computernetzwerk. Die Konfiguration umfaßt das Einleiten einer Konfigurationssitzung
in einem Primärgerät, die bewirkt,
daß das
Primärgerät Konfigurationslogik
für das
Primärgerät und eines oder
mehrere Sekundärgeräte sammelt.
Das Primärgerät erzeugt
dann eine Benutzerschnittstelle mit benutzerzugreifbaren Steuerungen
zum Auswählen und
Zurückgeben
von Konfigurationseinstellungen für das Primär- und die Sekundärgeräte. Jede
ausgewählte
Konfigurationseinstellung wird dann an das Primär- oder Sekundärgerät, für das es
ausgewählt wurde,
zurückgesendet
und angewendet.
-
Die
vorliegende Erfindung schafft ein Verfahren zum Konfigurieren von
Geräten
in einem Computernetzwerk, das ein Einleiten einer Konfigurationssitzung
für ein
Primärgerät, ein Sammeln
von Konfigurationslogik durch das Primärgerät für das Primärgerät und eines oder mehrere Sekundärgeräte, wobei die
Konfigurationslogik für
jedes Gerät
Informationen zum Erzeugen einer Benutzerschnittstelle zum Konfigurieren
dieses Gerätes
aufweist, ein Erzeugen einer Benutzerschnittstelle entsprechend
der gesammelten Konfigurationslogik mit benutzerzugreifbaren Steuerungen
zum Auswählen
und Zurückgeben
von Konfigurationseinstellungen für das Primärgerät und das Sekundärgerät oder die
Sekundärgeräte; und
ein Verwenden jeder ausgewählten
Konfigurationseinstellung, die angewendet werden soll, durch das
Primärgerät oder das
Sekundärgerät oder die
Sekundärgeräte, für das dieselbe
ausgewählt
wurde, umfaßt.
-
Die
vorliegende Erfindung schafft ferner ein Verfahren zum Konfigurieren
von Netzwerkgeräten, das
ein Einleiten einer Primärkonfigurationssitzung auf
einem Primärkonfigurationsserver,
der die Konfiguration eines Primärkonfigurationsgeräts verwaltet, ein
Einleiten einer Sekundärkonfigurationssitzung durch
den Primärkonfigurationsserver
auf einem Sekundärkonfigurationsserver,
der die Konfiguration eines Sekundärgeräts verwaltet, wobei der Primärkonfigurationsserver
Konfigurationslogik für
das Primärkonfigurationsgerät und für das Sekundärkonfigurationsgerät sammelt,
wobei die Konfigurationslogik für jedes
Gerät Informationen
zum Erzeugen einer Benutzerschnittstelle zum Konfigurieren dieses
Gerätes aufweist,
ein Erzeugen einer Benutzerschnittstelle entsprechend der gesammelten
Konfigurationslogik durch den Primärkonfigurationsserver, die
benutzerzugreifbare Steuerungen zum Auswählen und Zurückgeben
von Konfigurationseinstellungen für die Primär- und Sekundär-Konfigurationsgeräte aufweist,
und ein Verwenden jeder ausgewählten
Konfigurationseinstellung durch das Primär- oder Sekundär-Gerät, für das dieselbe
ausgewählt
wurde.
-
Die
vorliegende Erfindung schafft ein Camputerprogrammprodukt zum Konfigurieren
von Netzwerkgeräten,
wobei das Produkt ein computernutzbares Medium mit computerlesbaren
Befehlen auf demselben umfaßt,
zum Einleiten einer Primärkonfigurationssitzung
für ein
Primärgerät, zum Einleiten einer
Sekundärkonfigurationssitzung
durch das Primärgerät für ein Sekundärgerät, zum Sammeln
von Konfigurationslogik durch das Primärgerät für das Primärgerät und für das Sekundärgerät, wobei
die Konfigurationslogik für
jedes Gerät
Informationen zum Erzeugen einer Benutzerschnittstelle zum Konfigurieren
dieses Gerätes
aufweist, und zum Erzeugen einer Benutzerschnittstelle entsprechend
der gesammelten Konfigurationslogik mit benutzerzugreifbaren Steuerungen
zum Auswählen
von Konfigurationseinstellungen für das Primärgerät und das Sekundärgerät oder die
Sekundärgeräte.
-
Die
vorliegende Erfindung schafft ein System zum Konfigurieren von Netzwerkgeräten, das
eine Primärkonfigurationsmaschine,
die auf einem Primärgerät arbeitet,
wobei die Konfigurationsmaschine wirksam ist, um eine Konfigurationslogik
für das
Primärgerät und ein
oder mehrere Sekundärgeräte zu sammeln,
wobei die Konfigurationslogik für
jedes Gerät
Informationen zum Erzeugen einer Benutzerschnittstelle zum Konfigurieren
dieses Gerätes
aufweist, und einen Primärschnittstellengenerator,
der in elektronischer Kommunikation mit der Konfigurationsmaschine
ist, wobei der Schnittstellengenerator wirksam ist, um eine Benutzerschnittstelle
entsprechend der durch die Primärkonfigurationsmaschine gesammelten
Konfigurationslogik zu erzeugen, die benutzerzugreifbare Steuerungen
zum Auswählen und
Zurückgeben
von Konfigurationseinstellungen für das Primärgerät und das Sekundärgerät oder die Sekundärgeräte aufweist,
umfaßt.
-
Die
vorliegende Erfindung schafft ferner ein System zum Konfigurieren
von Netzwerkgeräten, das
einen Sekundärkonfigurationsserver,
der wirksam ist, um eine oder mehrere Konfigurationseinstellungen
mindestens eines Sekundärgeräts zu verwalten,
und einen Primärkonfigurationsserver
in elektronischer Kommunikation mit dem Sekundärkonfigurationsserver, wobei
der Primärkonfigurationsserver wirksam
ist, um eine oder mehrere Konfigurationseinstellungen eines Primärgeräts zu verwalten,
um Konfigurationslogik für
das Primärgerät und für das Sekundärgerät zu sammeln
und um eine Benutzerschnittstelle entsprechend der durch die Primärkonfigurationsmaschine
gesammelten Konfigurationslogik zu erzeugen, die benutzerzugreifbare
Steuerungen zum Auswählen
und Zurückgeben
von Konfigurationseinstellungen für das Primärgerät und das Sekundärgerät oder die
Sekundärgeräte aufweist,
umfaßt.
-
Bevorzugte
Ausführungsbeispiele
der vorliegenden Erfindung werden nachfolgend Bezug nehmend auf
die beiliegenden Zeichnungen näher
erläutert.
Es zeigen:
-
1 eine
schematische Darstellung eines Computernetzwerks, das ein Clientgerät, ein Primärgerät und mehrere
sekundäre
Geräte
umfaßt,
und das ein System darstellt, in dem die Erfindung implementiert
werden kann;
-
2 ein
Blockdiagramm des Netzwerks von 1, bei dem
der erfindungsgemäße Gerätekonfigurationsprozeß in eine
Software eingebaut ist, die auf dem Primär- und Sekundärnetzwerkgerät gemäß einem
Ausführungsbeispiel
der vorliegenden Erfindung läuft;
-
3 ein
Blockdiagramm, das ferner die logischen Komponenten eines Sekundärkonfigurationsservers
von 2 darstellt;
-
4 ein
Blockdiagramm, das ferner die logischen Komponenten des Primärkonfigurationsservers
von 2 darstellt;
-
5 ein
Flußdiagramm
eines Ausführungsbeispiels
des erfindungsgemäßen Verfahrens;
-
6 ein
Flußdiagramm,
das sich über
das Flußdiagramm
von 7 erstreckt, bei dem Webserver in die Primär- und Sekundärgeräte eingebettet sind;
-
7 ein
Blockdiagramm, das einen möglichen
Kommunikationsweg zwischen dem Client-, dem Primär- und den Sekundärgeräten darstellt;
-
8 ein
Blockdiagramm, das einen zweiten möglichen Kommunikationsweg zwischen
dem Client-, dem Primär-
und den Sekundärgeräten darstellt;
und
-
9 eine
beispielhafte Bildschirmanzeige, die eine Benutzerschnittstelle
gemäß einem
Ausführungsbeispiel
der vorliegenden Erfindung darstellt.
-
Glossar:
die folgenden Begriffe werden in der gesamten nachfolgenden detaillierten
Beschreibung verwendet.
-
Programm:
eine organisierte Liste von elektronischen Befehlen, die, wenn sie
ausgeführt
werden, bewirkt, daß sich
ein Gerät
auf eine vorbestimmte Weise verhält.
Ein Programm kann viele Formen annehmen. Beispielsweise kann es
Software sein, die auf dem Plattenlaufwerk eines Computers gespeichert
ist. Es kann Firmware sein, die auf Nur-Lese-Speicher geschrieben
ist. Es kann als eine Schaltung oder eine Zustandsmaschine, die
jede oder eine Kombination einer Anzahl von Technologien verwenden,
in Hardware eingebaut sein. Diese Technologien können diskrete Logikschaltungen
mit Logikgattern zum Implementieren von verschiedenen Logikfunktionen
auf das Anlegen von einem oder mehreren Datensignalen hin, anwendungsspezifische
integrierte Schaltungen mit geeigneten Logikgattern, programmierbare
Gatterarrays (PGA), feldprogrammierbare Gatterarrays (FPGA) oder
andere Komponenten umfassen, sind aber nicht darauf beschränkt.
-
Client-Server:
ein Interaktionsmodell in einem verteilten System, bei dem ein Programm,
das auf einem Netzwerkgerät
arbeitet, eine Anforderung an ein Programm sendet, das auf einem
anderen Netzwerkgerät
arbeitet, und auf eine Antwort wartet. Das anfordernde Programm
wird als „Client" bezeichnet, während das
Gerät,
auf dem der Client arbeitet, als „Clientgerät" bezeichnet wird. Das antwortende Programm
wird als der „Server" bezeichnet, während das
Gerät,
auf dem der Server arbeitet, als das „Servergerät" bezeichnet wird. Der Server ist verantwortlich
für das
Zurückgeben
von angeforderten Informationen zu dem Client. Bei jedem bestimmten
Netzwerk kann es mehrere Clienten und mehrere Server geben. Ein
einzelnes Gerät
kann eine Programmierung enthalten, die es ihm ermöglicht,
sowohl als ein Clientgerät
als auch als ein Servergerät
zu arbeiten.
-
Benutzerschnittstelle:
die Verbindung zwischen einem Benutzer und einem Computerprogramm,
das Sätze
von Befehlen oder Menüs
liefert, durch die ein Benutzer mit einem Programm kommuniziert.
Beispielsweise zeigt bei dem oben definierten Client-Server-Modell
das Clientgerät
im allgemeinen die Benutzerschnittstelle zum Kommunizieren mit Programmen
an, die auf einem Servergerät
arbeiten. Eine Benutzerschnittstelle liefert einem Benutzer Steuerungen
zum Auswählen
von Optionen, Erteilen von Befehlen und Eingeben von Text. Die angezeigten
Steuerungen können
viele Formen aufweisen. Sie können
Drucktasten, Wahltasten, Textfelder, Rollbalken oder Pull-Down-Menüs umfassen,
die unter Verwendung einer Tastatur und/oder eines Zeigegeräts, wie
z. B. einer Maus, die mit einem Clientgerät verbunden ist, zugreifbar
sind. Bei einer nicht graphischen Umgebung können die Steuerungen Befehlszeilen
umfassen, die es dem Benutzer erlauben, Textbefehle einzugeben.
-
Konfigurationslogik:
die Informationen, die verwendet werden, um eine Benutzerschnittstelle zum
Konfigurieren eines Netzwerkgerätes
zu erzeugen. Diese Informationen können Daten auf den Steuerungen,
die angezeigt werden sollen; Bereiche von akzeptierbaren Werten
für eine
spezielle Konfigurationseinstellung; einen Standardwert für eine Konfigurationseinstellung;
und andere Informationen umfassen, die sich auf die Konfiguration
eines Netzwerkgerätes
beziehen.
-
Einführung: Bei
einer Computernetzwerkumgebung sieht sich ein Systemadministrator
oder ein anderer Benutzer von Zeit zu Zeit der Aufgabe des Konfigurierens
einer beliebigen Anzahl von Geräten gegenüber, die
mit dem Netzwerk verbunden sind. Ein Netzwerkgerät kann jede Maschine oder Komponente
sein, die auf jede beliebige Weise mit einem Computernetzwerk verbunden
ist. Diese Geräte
können
Computer-Workstationen
umfassen, einschließlich
Desktop- und Laptop-Computer,
persönliche
Datenassistenten oder andere Handflächencomputern, Server, Peripheriegeräte, wie
z. B. elektronische Speichergeräte,
Drucker, Kopierer, Faksimilemaschinen, Scanner und auch Fertigstellungsgeräte, wie
z. B. Binder und Sortierer. Da Privathaushalte und Büros immer
mehr automatisiert werden, können
diese Geräte
sogar Haushaltsgeräte
umfassen, wie z. B. eine Mikrowelle, einen Kühlschrank, eine Alarmanlage,
oder jedes andere mit dem Netzwerk verbundene Werkzeug.
-
Es
wird davon ausgegangen, daß die
nachfolgend beschriebenen Ausführungsbeispiele
der Erfindung die Aufgabe der Netzwerkkonfiguration erleichtern
durch:
- (1) Versehen jedes Netzwerkgerätes mit
einem Server, der die Fernverwaltung seiner eigenen Konfiguration
ermöglicht;
und
- (2) Versehen von zumindest einem Netzwerkgerät mit einem verbesserten Server,
der es diesem Gerät
ermöglicht,
Konfigurationslogik von den anderen Netzwerkgeräten zu sammeln, und dann eine
gemeinsame Benutzerschnittstelle zum Konfigurieren von jedem dieser
Geräte
zu erzeugen.
-
In
der ganzen nachfolgenden Beschreibung wird das verbesserte Netzwerkgerät als ein
Primärgerät bezeichnet,
während
die anderen Geräte
als Sekundärgeräte bezeichnet
werden. Es wird angemerkt, daß mehr
als ein primäres
Netzwerkgerät
auf einem bestimmten Netzwerk arbeiten kann.
-
Obwohl
die verschiedenen Ausführungsbeispiele
der Erfindung, die hierin offenbart sind, mit Bezugnahme auf das
Computernetzwerk 10 beschrieben werden, das in 1 schematisch
gezeigt ist, ist die Erfindung nicht auf die Verwendung mit dem Netzwerk 10 beschränkt. Die
Erfindung kann in jedes Computersystem implementiert werden oder
mit demselben verwendet werden, bei dem es notwendig oder wünschenswert
ist, mehrere Netzwerkgeräte
zu konfigurieren. Die folgende Beschreibung und die Zeichnungen
stellen nur einige beispielhafte Ausführungsbeispiele der Erfindung
dar. Andere Ausführungsbeispiele,
Formen und Einzelheiten können durchgeführt werden,
ohne von der Wesensart und dem Schutzbereich der Erfindung abzuweichen,
der in den Ansprüchen
ausgedrückt
ist, die dieser Beschreibung folgen.
-
Mit
Bezugnahme auf 1 stellt das Netzwerk 10 im
allgemeinen jedes lokale oder weite Netz dar, bei dem eine Vielzahl
von unterschiedlichen elektronischen Geräten verbunden sind. Das Netzwerk 10 umfaßt ein Clientgerät 12,
typischerweise eine Personalcomputerworkstation. Das Clientgerät 12 kann
jedes Gerät
umfassen, das in der Lage ist, eine Benut zerschnittstelle zu liefern.
Das Netzwerk 10 umfaßt
außerdem
ein Primärgerät 14 und
Sekundärgeräte 16.
Obwohl die Geräte 14 und 16 in 1 als
Drucker, Scanner und Computerworkstation dargestellt sind, können dieselben
jedes konfigurierbare Gerät
darstellen, das auf dem Netzwerk 10 vorliegt.
-
Eine
Kommunikationsverbindung 18 verbindet das Clientgerät 12 und
die Netzwerkgeräte 14 und 16.
Die Kommunikationsverbindung 18 stellt im allgemeinen ein
Kabel, eine drahtlose Verbindung oder eine Fernverbindung über eine
Telekommunikationsverbindung, eine Infrarotverbindung, eine Hochfrequenzverbindung
oder jeden anderen Verbinder oder jedes andere System dar, das eine
elektronische Kommunikation zwischen den Geräten 12, 14 und 16 liefert.
Die Kommunikationsverbindung 18 kann ein Intranet, das
Internet oder eine Kombination von beiden darstellen. Der Weg, der
von der Verbindung 18 zwischen den Geräten 12, 14 und 16 in
der schematischen Ansicht von 1 verfolgt
wird, stellt den logischen Kommunikationsweg zwischen diesen Geräten dar,
und nicht notwendigerweise den physikalischen Weg zwischen den Geräten. Die
Geräte 12, 14 und 16 können an
jedem Punkt mit dem Netzwerk verbunden sein, und der geeignete Kommunikationsweg
kann logisch zwischen den Geräten
erstellt werden.
-
Komponenten:
Die logischen Komponenten eines Ausführungsbeispiels des erfindungsgemäßen Gerätekonfigurationssystems
werden nun mit Bezugnahme auf die Blockdiagramme von 2-4 beschrieben.
In 2 ist die Erfindung in den Primärkonfigurationsserver 20 eingebaut,
der auf dem Primärgerät 14 läuft oder
anderweitig mit demselben kommuniziert. Wie nachfolgend detaillierter
beschrieben wird, ist der Primärkonfigurationsserver
ein Programm, das eine Fernkonfiguration des Primärgeräts 14 ermöglicht und
zum Ermöglichen
einer Netzwerkkommunikation für
die Fernkonfiguration der Sekundärgeräte 16 dient.
Die Sekundärkonfigurationsserver 22,
die jeweils auf einem Sekundärgerät 16 arbeiten
oder ander weitig mit demselben kommunizieren, sind Programme, die
die Fernkonfiguration der Sekundärgeräte 16 ermöglichen.
Das Clientgerät 12 liefert
eine Benutzerschnittstelle zum Konfigurieren der Primär- und Sekundärgeräte 14 und 16.
Das Clientgerät 12 umfaßt im allgemeinen
einen Bildschirm oder ein anderes geeignetes Anzeigegerät 24 und eine
Tastatur und/oder ein Zeigegerät,
wie z. B. eine Maus oder ein anderes geeignetes Eingabegerät 26. Der
Client 28 ist ein Programm, um zu bewirken, daß das Anzeigegerät 24 eine
gewünschte
Benutzerschnittstelle anzeigt, und zum Übertragen von Befehlen zu dem
Primärkonfigurationsserver 20.
Obwohl das Clientgerät 12 als
ein Gerät
dargestellt ist, das von den Primär- und Sekundärgeräten 14 und 16 getrennt
ist, kann folglich die Funktion des Clientgeräts 12 in jedes Netzwerkgerät eingebaut
werden, das in der Lage ist, eine Benutzerschnittstelle zu liefern,
die Primär-
und Sekundärgeräte 14 und 16 umfassen kann.
Um eine Netzwerkkommunikation zwischen den Geräten 12, 14 und 16 zu
ermöglichen,
umfaßt jedes
eine Netzwerkschnittstelle 30.
-
In 3 sind
die logischen Komponenten des Sekundärkonfigurationsservers 22 dargestellt, die
den Sekundärschnittstellengenerator 32 und
die Sekundärkonfigurationsmaschine 34 umfassen.
Der Sekundärschnittstellengenerator 32 ist
verantwortlich für
das Erzeugen und Verfügbarmachen
von Konfigurationslogik für
sein entsprechendes Sekundärgerät 16.
Die Sekundärkonfigurationsmaschine 34 ist
verantwortlich für
das Konfigurieren des Sekundärgeräts 16.
Es wird erwägt,
daß die
Sekundärkonfigurationsserver 22 Webserver
sind, in diesem Fall Sekundärwebserver,
die in Sekundärgeräte 16 eingebettet
sind oder anderweitig auf denselben arbeiten. Jedes Sekundärgerät weist
eine Webseite auf, die unter Verwendung der Konfigurationslogik
für dieses
Gerät erzeugt
wird. Jedes Sekundärgerät hat außerdem einen
einzigartigen Netzwerkidentifizierer, wie z. B. eine IP (Internet
Protocol) -Adresse, die es einem Webserver ermöglicht, auf die Webseite für dieses Gerät zuzugreifen
und die ausgewählten
Konfigurationseinstellungen zurückzusenden.
-
Obwohl
nachfolgend beschriebene zusätzliche
Funktionen bereitgestellt werden, wird außerdem erwägt, daß der Primärkonfigurationsserver 20 ein Webserver
ist, in diesem Fall ein Primärwebserver, der
in das Primärgerät 14 eingebettet
ist oder anderweitig auf demselben arbeitet. Das Primärgerät 14 weist
außerdem
eine Webseite auf, die unter Verwendung der Konfigurationslogik
für das
Primärgerät erzeugt
wurde. Die Webseite wird einem einzigartigen Netzwerkidentifizierer
zugeordnet, der es einem Webbrowser ermöglicht, auf die Webseite des
Primärgeräts 14 zuzugreifen,
und ausgewählte
Konfigurationseinstellungen zurückzusenden.
Der Begriff Webserver umfaßt
jedes Programm, das Dokumente, die im allgemeinen als Webseiten
bezeichnet werden, über
ein Netzwerk, wie z. B. das World Wide Web, sendet. Webseiten können in
einer Anzahl von Formaten gesendet werden, einschließlich, aber nicht
beschränkt
auf HTML (Hyper-Text Markup Language), ASP (Active Server Pages)
und JSP (Java Server Pages). Das U.S.-Patent Nr. 6,170,007 lehrt die
Verwendung von eingebetteten Webservern in Netzwerkgeräten und
ist hiermit durch Bezugnahme aufgenommen.
-
In 4 sind
die logischen Komponenten des Primärkonfigurationsservers 20 dargestellt,
die den Primärschnittstellengenerator 36 und
die Primärkonfigurationsmaschine 38 umfassen.
Die Primärkonfigurationsmaschine 38 umfaßt eine
Sekundärgerätedatenbank 40,
einen Aktualisierungsdienst 42, einen Sekundärgerätlokalisierer 44,
einen Sekundärgeräteübersetzer 46,
und einen Einstellungsverwalter 48. Die Sekundärgerätedatenbank 40 speichert die
Netzwerkadressen für
Sekundärgeräte 16.
Der Sekundärgerätlokalisierter 44 kommuniziert über das Netzwerk 10,
beispielsweise unter Verwendung von SNMP (Simple Network Management
Protocol= einfaches Netzwerkverwaltungsprotokoll) und identifiziert
die Netzwerkadresse oder einen anderen Identifizierer von jedem
Sekundärgerät 16.
Der Aktualisierungsdienst 42 aktualisiert die Sekundärgerätedatenbank 40 mit
Netzwerkadressen, die durch den Sekundärgerätlokalisierer 44 identifiziert
wurden und noch nicht in der Datenbank 40 enthalten sind.
-
Mit
der Netzwerkadresse für
jedes Sekundärgerät erstellt
der Sekundärgeräteübersetzer 46 unter
Verwendung von TCP/IP (Transmission Control/Internet Protocol) eine
Kommunikationsverbindung mit jedem Sekundärkonfigurationsserver 22. Wo
die Sekundärkonfigurationsserver 22 Webserver sind,
fordert der Übersetzer 46,
der als ein Webbrowser arbeitet, die Webseite für jedes Sekundärgerät 16 an.
Alternativ kann der Sekundärgerätübersetzer 46 PML
(Peripheral Management Language = Peripheriegeräteverwaltungssprache) verwenden,
um von den Sekundärkonfigurationsservern 22 eine
Konfigurationslogik wiederzugewinnen. PML ist ein transaktionsorientiertes
Protokoll, das entworfen wurde, um eine asynchrone Peripheriesteuerung
und Überwachungsfähigkeiten
zu unterstützen,
unter Verwendung eines objektorientierten Anforderungs-Antwort-Mechanismus.
-
Der
Primärschnittstellengenerator 36 kompiliert
die Konfigurationslogik, die von den Sekundärkonfigurationsservern 22 gesammelt
wird, mit der Konfigurationslogik für das Primärgerät und erzeugt eine gemeinsame
Benutzerschnittstelle zum Konfigurieren von Primär- und Sekundärgeräten 14 und 16.
Wo die Server 20 und 22 Webserver sind, parst bzw.
analysiert der Primärschnittstellengenerator 36 die
Webseite jedes Sekundärgeräts und erzeugt
eine Primärwebseite,
die benutzerzugreifbare Steuerungen zum Auswählen und Zurückgeben
von Konfigurationseinstellungen für die Primär- und Sekundär-Geräte 14 und 16 enthält. Der
Sekundärgerätübersetzer 46 ist
ebenfalls verantwortlich für
das Zurückgeben
derjenigen Konfigurationseinstellungen, die für die Sekundärgeräte 16 ausgewählt wurden,
an jeden Sekundärkonfigurationsserver 22.
Der Einstellungsverwalter 48 ist verantwortlich für das Anwenden
dieser Konfigurationseinstellungen, die für das Primärgerät 14 ausgewählt wurden.
-
Die
Blockdiagramme von 1-6 zeigen
die Architektur, Funktionalität
und den Betrieb einer Implementierung des Gerätekonfigurationssystems. Falls
er in Software eingebaut ist, kann jeder Block ein Modul, ein Segment
oder einen Codeabschnitt darstellen, der einen oder mehrere ausführbare Befehle
umfaßt,
um die spezifizierte(n) logische(n) Funktion(en) zu implementieren.
Falls er in Hardware eingebaut ist, kann jeder Block eine Schaltung
oder eine Anzahl von verbundenen Schaltungen darstellen, um die
spezifizierte(n) logische(n) Funktion(en) zu implementieren.
-
Obwohl
angedacht ist, daß der
Primärkonfigurationsserver 20 in
das Primärgerät 14 eingebettet ist
oder anderweitig auf demselben arbeitet, muß der Primärkonfigurationsserver 20 nur
in der Lage sein, über
das Netzwerk 10 mit dem Primärgerät 14 zu kommunizieren. Ähnlich dazu
müssen
die Sekundärkonfigurationsserver 22 nur
in der Lage sein, über das
Netzwerk mit den Sekundärgeräten zu kommunizieren.
In der Tat kann ein Sekundärkonfigurationsserver
verantwortlich sein für
das Konfigurieren von mehr als einem Sekundärgerät 16.
-
Das
Dokumenterzeugungssystem kann außerdem in jedem computerlesbaren
Medium für
die Verwendung mit oder in Verbindung mit einem Befehlsausführungssystem
eingebaut sein, wie z. B. einem Computer/Prozessor-basierten System
oder einem anderen System, das die Logik von dem computerlesbaren
Medium abrufen oder erhalten und die darin enthaltenen Befehle ausführen kann.
Das computerlesbare Medium kann jedes von einer Vielzahl von physikalischen
Medien umfassen, wie z. B. elektronische, magnetische, optische,
elektromagnetische, Infrarot-, oder Haltleitermedien. Spezifischere Beispiele
eines geeigneten computerlesbaren Mediums würden eine tragbare magnetische
Computerdiskette, wie z. B. Disketten oder Festplatten, einen Direktzugriffsspeicher
(RAM), einen Nur-Lese-Speicher (ROM), einen löschbaren programmierbaren Nur-Lese-Speicher
oder eine tragbare CD umfassen, sind aber nicht darauf begrenzt.
-
Verwendung:
Die Verwendung des erfindungsgemäßen Gerätkonfigurationssystems
wird nun mit Bezugnahme auf die Flußdiagramme von 5 und 6,
die logischen Kommunikationswege, die in 7 und 8 dargestellt
sind, und die beispielhafte Bildschirmansicht von 9 beschrieben.
Beginnend mit 5 sendet das Clientgerät 12 eine
Konfigurationsanforderung an den Primärkonfigurationsserver 20,
wodurch eine Primärkonfigurationssitzung
einleitet wird (Schritt 60). Antwortend darauf sendet der
Primärkonfigurationsserver 20 Konfigurationsanforderungen
an einen oder mehrere der Sekundärkonfigurationsserver 22,
wodurch eine oder mehrere Sekundärkonfigurationssitzungen
eingeleitet werden (Schritt 62). Die Sekundärkonfigurationsserver 22 senden
eine Konfigurationslogik für
jedes entsprechende Sekundärgerät 16 zurück, was
es dem Primärschnittstellengenerator 36 ermöglicht, diese
Konfigurationslogik mit Konfigurationslogik für das Primärgerät 12 zu parsen und
kompilieren, und somit eine Benutzerschnittstelle zu erzeugen, die
zu dem Clientgerät 12 zurückgesendet
wird (Schritt 64). Auf dem Anzeigegerät 24 stellt der Client 28 eine
Benutzerschnittstelle dar, die es einem Systemadministrator oder
einem anderen Benutzer ermöglicht,
Konfigurationseinstellungen auszuwählen und zurückzusenden,
die an die Primär-
und Sekundärnetzwerkgeräte angewendet
werden sollen (Schritt 66).
-
Mit
Bezugnahme auf 6 wird angenommen, daß der oben
beschriebene Gerätekonfigurationsprozeß normalerweise
durch einen Webbrowser, der als Client 28 auf dem Clientgerät 12 funktioniert, eingeleitet
wird, während
die Primär-
und Sekundärkonfigurationsserver 20 und 22 als
Webserver arbeiten. Bei diesem Ausführungsbeispiel wird eine Primärkonfigurationssitzung
eingeleitet (Schritt 60 in 5) durch Öffnen des
Browsers (Schritt 60A) und Eingeben der Netzwerkadresse
für den
Primärkonfigurationsserver 20 (Schritt 60B).
Die Netzwerkadresse kann die Form einer IP (Internet Protocol)-Adresse,
eines URL (Uniform Resource Locator = Einheitsresourcenlokator)
oder jedes anderen funktionalen Identifizierers annehmen. Antwortend
darauf leitet der Primärkonfigurationsserver 20 unter
Verwendung des Sekundärgeräteübersetzers 46 Sekundärkonfigurationssitzungen
ein (Schritt 62 in 5), durch Browsen
zu den Netzwerkadressen der Sekundärkonfigurationsserver 22 (Schritt 62A).
Diese Adressen können
von der Sekundärgerätedatenbank 40 ausgewählt werden,
oder unter Verwendung des Sekundärgerätlokalisierers 46 direkt
von den Sekundärgeräten 16 erhalten
werden. Alternativ kann der Primärkonfigurationsserver 20 eine
Benutzerschnittstelle mit benutzerzugreifbaren Steuerungen erzeugen, die
es einem Benutzer ermöglichen,
Netzwerkadressen für
ausgewählte
Sekundärkonfigurationsserver einzugeben
und zurückzusenden.
Jeder Sekundärkonfigurationsserver 22 sendet
dann eine Konfigurationslogik in der Form einer Webseite zurück, die
einem speziellen Sekundärgerät 16 entspricht
(Schritt 62B).
-
Die
Primärkonfigurationsmaschine 38 erzeugt
dann eine Benutzerschnittstelle (Schritt 64 von 5)
durch Kompilieren der Konfigurationslogik, die in den Webseiten
für die
Sekundärgeräte 16 zurückgesendet
wird, mit Konfigurationslogik für
das Primärgerät 14 (Schritt 64A).
Die kompilierte Konfigurationslogik wird in eine Primärwebseite
plaziert, die durch den Webbrowser 28 auf dem Clientgerät 12 angezeigt
wird (Schritt 64B). Die Primärwebseite enthält benutzerzugreifbare
Steuerungen zum Auswählen
und Zurückgeben
von Konfigurationseinstellungen für Primär- und Sekundärgeräte 14 und 16.
-
Vorzugsweise
können
eine oder mehrere ausgewählte
Einstellungen auf zwei oder mehr Primär- und/oder Sekundärnetzwerkgeräte angewendet werden.
Beispielsweise können
eine Anzahl von Netzwerkgeräten 14 und 16 Konfigurationseinstellungen
für Attribute,
wie z. B. Teilnetzmaske, Gerätpaßwort und
Systemkontakt, gemeinschaftlich verwenden. Folglich wäre es ineffizient,
von einem Benutzer zu verlangen, die gleiche Einstellung für mehrere
Geräte
wiederholt einzugeben. Selbst wenn Attributeinstellungen geliefert
wer den, die für
jedes Gerät
einmalig sind, ist es trotzdem nicht praktisch, zu jedem Gerät unabhängig zu
browsen. Die U.S.-Patentanmeldung mit der Seriennummer 09/550540
mit dem Titel „Dynamic
User Interface for Device Management Applications", eingereicht am
14. April 2000, offenbart ein Verfahren zum Erzeugen einer Benutzerschnittstelle
zum Auswählen
und Zurückgeben
einer einzigen Konfigurationseinstellung, die über zwei oder mehr Netzwerkgeräte angewendet
werden soll. Die Anmeldung 550540 offenbart auch Verfahren zum Anzeigen
von Steuerungen zum Auswählen
und Zurückgeben
von Konfigurationseinstellungen, die für jedes Netzwerkgerät einmalig
sind. Die Anmeldung 550540 ist hierin durch Bezugnahme aufgenommen.
-
Wenn
der Webbrowser die Primärwebseite auf
dem Clientgerät 12 anzeigt,
wählt der
Benutzer die gewünschte
Konfigurationseinstellungen für
jedes Netzwerkgerät
aus. Der Webbrowser sendet die ausgewählten Einstellungen an den
Primärserver 20 zurück. Der
Sekundärgerätübersetzer 46 sendet
ausgewählte
Sekundärgerätkonfigurationseinstellungen zurück, die
durch jeden entsprechenden Sekundärkonfigurationsserver angewendet
werden sollen (Schritt 66A). Der Einstellungsverwalter 48 wendet dann
die Konfigurationseinstellungen an, die für das Primärgerät 14 ausgewählt wurden
(Schritt 66B).
-
Bei
dem Beispiel, das mit Bezugnahme auf 6 beschrieben
ist, wirkt der Primärkonfigurationsserver 20 als
ein Proxy, der alle Kommunikation zwischen dem Clientgerät 12 und
den Sekundärgeräten 16 ermöglicht – der logische
Kommunikationsweg für
denselben ist in 7 dargestellt. Alternativ kann der
Primärschnittstellengenerator 36 auf
das Einleiten einer Primärkonfigurationssitzung
hin (Schritt 60 in 5) eine
gerahmte Webseite erzeugen und an den Browser auf dem Clientgerät 12 zurückgeben. Eine
gerahmte Webseite ist eine Webseite, die den Anzeigebereich des
Browsers in zwei oder mehr Abschnitte oder Rahmen unterteilt. Der
tatsächliche
Inhalt jedes Rahmens wird nicht durch die gerahmte Webseite selbst
geliefert. Die gerahmte Webseite sendet statt dessen für jeden
Rahmen eine Netzwerkadresse zum Zugreifen auf eine spezifizierte
Webseite, die in diesen Rahmen angezeigt werden soll. Der logische
Kommunikationsweg wird für
dieses Ausführungsbeispiel
ist in 8 dargestellt. Der Primärkonfigurationsserver 20 erhält die Netzwerkadressen
für die
Sekundärgeräte 16 von
der Sekundärgerätedatenbank 40 oder
direkt von den Sekundärgeräten 16 unter
Verwendung des Sekundärgerätlokalisierers 46.
Der Primärschnittstellengenerator 36 erzeugt
dann eine gerahmte Webseite unter Verwendung der Netzwerkadresse
für das
Primär-
und jedes Sekundärnetzwerkgerät 14 und 16,
wodurch eine einzige Benutzerschnittstelle zum Konfigurieren der Netzwerkgeräte 14 und 16 erzeugt
wird. Jeder Rahmen zeigt benutzerzugreifbare Steuerungen zum Auswählen und
direkten Zurückgeben
von Konfigurationseinstellungen zu einem speziellen Netzwerkgerät 14 oder 16 an.
-
9 stellt
ein Beispiel einer Benutzerschnittstelle 70 dar, die in
Schritt 64 erzeugt wird. Die Benutzerschnittstelle 70 wird
unter Verwendung des Client 28, in diesem Fall ein Webbrowser,
auf dem Clientgerät 12 angezeigt.
Unter Verwendung von Pull-Down-Menüs 72, 74 und 76 wählt der
Benutzer das Gerät
oder die Geräte
aus, die konfiguriert werden sollen. Das Textfeld 78 zeigt
die Geräte
an, die mit den gewählten
Kriterien übereinstimmen.
Steuerungen 80 ermöglichen
es dem Benutzer, Konfigurationseinstellungen für die Geräte einzugeben, die in dem Textfeld 78 aufgelistet
sind. Wenn der Benutzer fertig ist, wählt er den Wahlknopf 82 aus,
um die ausgewählten
Einstellungen auf die Geräte
im Feld 78 anzuwenden.
-
Obwohl
die Flußdiagramme
von 5 und 6 jeweils eine spezifische Reihenfolge
der Ausführung
zeigen, kann sich die Reihenfolge der Ausführung von der dargestellten
unterscheiden. Beispielsweise kann die Reihenfolge der Ausführung von
zwei oder mehr Blöcken
bezüglich
der gezeigten Reihenfolge verwürfelt
werden. Außerdem
können zwei
oder mehr Blöcke,
die in 5 oder 6 nacheinanderfolgend ge zeigt
sind, gleichzeitig oder mit teilweiser Gleichzeitigkeit ausgeführt werden.
Alle solchen Variationen liegen innerhalb des Schutzbereichs der
vorliegenden Erfindung. Darüber
hinaus ist die Bildschirmanzeige von 9 lediglich
beispielhaft. Es gibt viele mögliche
Layout- und Steuerungskonfigurationen für eine Benutzerschnittstelle,
die es einem Benutzer ermöglicht,
Konfigurationseinstellungen auszuwählen und zurückzusenden. 9 liefert lediglich
ein Beispiel.