-
Die
vorliegende Erfindung betrifft allgemein Kommunikation über Computernetzwerke
und insbesondere Kommunikation zwischen Komponenten computerisierter
Testsysteme über
ein Netzwerk.
-
Computer
und computerisierte Geräte
werden häufig
in Netzwerkkonfigurationen verwendet. Netzwerke erlauben mehreren
Benutzern, jeder mit einem separaten Computer, Information und Hardware-Betriebsmittel, wie
zum Beispiel Massenspeichersysteme, Drucker und Faxgeräte, miteinander
zu teilen.
-
Typische
Büroumgebungen
sind mit Computern ausgestattet, die mit lokalen Netzwerken (LANs) verbunden
sind, die nur einer relativ kleinen Anzahl von Computern oder computerisierten
Geräten
auf begrenztem Raum erlauben, Information auszutauschen. Im allgemeinen
gehören
Computer, die mit einem LAN verbunden sind, zu Benutzern innerhalb
einer Arbeitsgruppe.
-
Viele
Firmen haben Büros
in verschiedenen Gebäuden
oder mehrere Arbeitsgruppen in demselben Gebäude. Diese Firmen verwenden
im allgemeinen Weitverkehrsnetzwerke (WANs), um ihre Computer zu
vernetzen. Solche WANs werden häufig durch
Verbinden mehrerer LANs untereinander realisiert.
-
Verschiedene
Elemente bilden ein Netzwerk. Ein Element ist das physische Medium,
welches die tatsächliche
Verbindung ist, die es erlaubt, daß Information von einem Computer
zum anderen geleitet wird. Das physische Medium ist häufig ein
oder mehrere Kabel. Jedoch kann das physische Medium auch eine Funk-
oder Infrarotverbindung sein oder irgendeine andere Verbindung,
die es erlaubt, daß ein Bitstrom
zwischen computerisierten Geräten übertragen
wird.
-
Zusätzlich zu
einem physischen Medium erfordert jedes Netzwerk ein oder mehrere
Protokoll(e). Im allgemeinen ist ein Protokoll eine Menge von Regeln,
die alle Computer und computerisierten Geräte in einem Netzwerk verwenden,
um Informationspakete, die das Netzwerk durchlaufen, zu interpretieren.
Zum Beispiel könnte
ein Protokoll festlegen, wann es für einen bestimmten Computer
angemessen ist, ein Informationspaket zu versenden. Das Protokoll
könnte
auch das Format eines Informationspakets festlegen. Zum Beispiel
könnte
es eine Art und Weise der Erkennung eines Paketendes aufweisen und
eine Art und Weise der Erkennung, welcher Computer im Netzwerk dafür bestimmt
ist, das Paket zu empfangen. Auf einem höheren Niveau könnte das
Protokoll auch eine Art und Weise der Identifizierung festlegen,
welche Informationspakete logisch in eine Übertragung gruppiert werden.
-
LANs
haben normalerweise ein physisches Medium, bei dem alle Computer
und computerisierten Geräte
des LANs miteinander verbunden sind. Ein diesem physischen Medium
entsprechendes Protokoll ist normalerweise ein Rundfunk- bzw. Rundsende-Protokoll,
was bedeutet, daß jedes
Paket an jeden Computer gesendet wird. Ein solches Netzwerk wird
daher allgemein als Rundsende-Netzwerk bezeichnet. Jedes Paket,
das über
ein Rundsende-Netzwerk gesendet wird, enthält normalerweise Information,
die es jedem Computer oder computerisierten Gerät des Netzwerks erlaubt, zu
erkennen, ob das Paket für
dieses Gerät
bestimmt ist. Ethernet und Token Ring sind zwei Beispiele weithin verwendeter
Rundsende-Protokolle.
-
Das
Dokument von M. Koizumi "DCNP:
Data Communication Management System for Network Node Processors
in a Distributed Processing Environment", Globecom, USA, New York, IEEE, 1992, beschreibt
ein Verfahren für
hochzuverlässige
Rundsende- und Peer-to-Peer-Kommunikation zwischen Knoten über mehrere
LANs unter Verwendung von Socket-Schnittstellen-Erweiterungen. Dieses
Dokument offenbart ein Multicast-Netzwerk anstelle eines Rundsende-Netzwerks,
bei dem eine zusätzliche Adressierungsmethode
(Multicast-Gruppennummer) obligatorisch ist.
-
WANs
haben normalerweise ein physisches Medium, das eine direkte Verbindung
zwischen jedem Paar von Computern oder computerisierten Geräten, die
kommunizieren müssen,
bereitstellt. Ein diesem physischen Medium entsprechendes Protokoll
ist normalerweise ein "Punkt-zu-Punkt"-Protokoll. Ein solches
Netzwerk wird deshalb allgemein als Punkt-zu-Punkt-Netzwerk bezeichnet. Öffentliche Fernsprechwählnetzwerke
(PSTN) und X.25-Netzwerke sind zwei Beispiele für WANs, die Punkt-zu-Punkt-Protokolle
verwenden.
-
Da
die Anzahl der Kabel, die erforderlich ist, um jedes Paar von Computern
in einem Punkt-zu-Punkt-Netzwerk
zu verbinden, häufig
untragbar ist, werden mehrere Computer in einem Punkt-zu-Punkt-Netzwerk üblicherweise über einen Zentralcomputer
miteinander verbunden. Dieser Zentralcomputer kann sich in einem
LAN befinden. In diesem Fall wird normalerweise ein als "Terminalserver" bezeichnetes Gerät verwendet,
um die vielen Computer im Punkt-zu-Punkt-Netzwerk mit dem Zentralcomputer
im LAN zu verbinden.
-
Ein
Terminalserver hat normalerweise mehrere I/O-Ports und eine computerisierte
Vermittlungseinrichtung, die verwendet werden kann, um jeden Port
mit dem LAN zu verbinden. In ähnlicher
Weise können
mehrere Computer oder computerisierte Geräte in dem Punkt-zu-Punkt-Netzwerk
mit den Ports des Terminalservers verbunden werden. Da Terminalserver
verwendet werden können,
um LANs mit Punkt-zu-Punkt-Netzwerken zu verbinden, werden sie häufig als "Gateways" bezeichnet.
-
Um
Information von einem Computer im LAN an einen Computer in einem
Punkt-zu-Punkt-Netzwerk
zu senden, müssen
das LAN und das Punkt-zu-Punkt-Netzwerk im allgemeinen durch einen
Gateway verbunden sein. Ferner muß der Gateway im allgemeinen
fähig sein,
eine Punkt-zu-Punkt-Verbindung
mit dem Computer in dem Punkt-zu-Punkt-Netzwerk einzurichten. Zum Beispiel
kann ein Computer in dem LAN ein Paket über das LAN an den Gateway
senden. Ein Teil des Pakets gibt an, welcher Computer in dem Punkt-zu-Punkt-Netzwerk
die im Paket enthaltene Information empfangen soll, während der
Rest des Pakets die Information enthält. Falls der Gateway die Fähigkeit
besitzt, eine Punkt-zu-Punkt-Verbindung einzurichten,
dann kann der Gateway zuerst das Paket aus dem Rundsende-Protokoll,
das vom LAN verwendet wird, in das Punkt-zu-Punkt-Protokoll übersetzen,
das vom Punkt-zu-Punkt-Netzwerk
verwendet wird, die Punkt-zu-Punkt-Verbindung einrichten und dann
das übersetzte
Protokoll an den angegebenen Computer in dem Punkt-zu-Punkt-Netzwerk
senden.
-
Daten,
die von einem Computer in einem Punkt-zu-Punkt-Netzwerk an einen
Computer in einem LAN gesendet werden, durchlaufen im allgemeinen
einen umgekehrten Prozeß.
Zum Beispiel sendet der Computer ein Paket unter Verwendung des Punkt-zu-Punkt-Protokolls
an den Gateway. Das Paket muß hinreichende
Information aufweisen, um dem Gateway zu erlauben, ein Paket zu
erzeugen, das über
das LAN an den dafür
bestimmten Computer gesendet werden kann. Der Gateway sendet dann das
Paket unter Verwendung des erforderlichen Protokolls über das
LAN.
-
Wir
haben erkannt, daß dieser
Typ von Netzwerkarchitektur in Telekommunikations-Testnetzwerken verwendet
werden kann. In diesem Fall können mehrere
Computer und computerisierte Geräte
in einem Punkt-zu-Punkt-Netzwerk über Telefonleitungen und einen
Gateway mit einem Zentralcomputer in einem LAN verbunden sein. Insbesondere
kann das Punkt-zu-Punkt-Netzwerk ein PSTN sein, die computerisierten
Geräte
in dem Punkt-zu-Punkt-Netzwerk können
Fernmeßeinheiten
(MU) sein, und der Zentralcomputer in dem LAN kann eine Testsystem-Steuereinrichtung
(TSC) sein. Ferner kann jeder I/O-Port in dem Gateway und jede Fernmeßeinheit mit
dem PSTN durch Modems verbunden werden.
-
Wir
haben jedoch auch einige Mängel
in solchen Testnetzwerk-Architekturen erkannt. Erstens muß, damit
das Telekommunikations-Testnetzwerke richtig arbeitet, eine Möglichkeit
bestehen, Punkt-zu-Punkt-Verbindungen
zwischen der Test-Systemsteuereinrichtung und den Fernmeßeinheiten
anzubahnen. Aber Gateways wie die oben beschriebenen Terminalserver
haben oftmals nicht diese Fähigkeit.
Ferner können
sie, da diese Gateways normalerweise herkömmliche Systeme sind, nicht ohne
weiteres aufgerüstet
werden, um solche Fähigkeiten
bereitzustellen.
-
Auch
wenn der Gateway im Telekommunikations-Testnetzwerk fähig wäre, Punkt-zu-Punkt-Verbindungen mit
den Fernmeßeinheiten
einzurichten, könnte
es dies in einer nicht standardgemäßen Weise tun. Zum Beispiel
arbeiten Computer und computerisierte Geräte in einem Computernetzwerk
im allgemeinen unter Verwendung standardisierter Protokolle. Das
Rundsende-Protokoll und das Punkt-zu-Punkt-Protokoll, die oben erwähnt wurden, sind
zwei Beispiele für
Standardprotokolle, die normalerweise auf dem Modell der Kommunikation
offener Systeme (OSI) beruhen. Dies ist ein weithin akzeptierter
Rahmen von Standards für
die Kommunikation zwischen unterschiedlichen Computern unterschiedlicher
Hersteller. Testsystem-Steuereinrichtungen und Fernmeßeinheiten,
die unter Verwendung von Standardprotokollen arbeiten, können deshalb einfach
mit anderen Geräten
im LAN bzw. im PSTN kommunizieren, solange diese anderen Geräte auch zur
Verwendung von Standardprotokollen ausgelegt wurden.
-
Ferner
besteht eine Möglichkeit
der Kommunikation der Testsystemsteuereinrichtung mit den Fernmeßeinheiten
darin, zu bewirken, daß der
Gateway, der das LAN und das PSTN verbindet, Übersetzungen zwischen Rundsende-
und Punkt-zu-Punkt-Protokollen durchführt.
-
Jedoch
gibt es derzeit keine akzeptierten Standards für die Durchführung solcher
Protokollübersetzungen.
Dies ist ein Problem in Telekommunikations-Testnetzwerken, da unterschiedliche
Telefongesellschaften normalerweise unterschiedliche Netzwerkausrüstung verwenden.
Das bedeutet, daß Gateways,
die LANs und WANs unterschiedlicher Telefongesellschaften verbinden,
unterschiedliche kundenspezifische Software zur Durchführung solcher Protokollübersetzungen
oder zur anderweitigen Einrichtung der Kommunikation zwischen Komponenten in
den LANs und WANs verwenden. Folglich können die Testsystemsteuereinrichtungen
und Fernmeßeinheiten,
die mit diesen unterschiedlichen Gateways kommunizieren, auch nichtstandardgemäße kundenspezifische
Software erfordern. Kundenspezifische Testsystemsoftware für unterschiedliche
Netzwerkkonfigurationen zu haben, macht es sehr teuer, Testsystemausrüstung zu
installieren und zu warten.
-
Deshalb
wäre es
wünschenswert,
ein Testsystem zu haben, das bestehende Netzwerke verwenden kann,
darunter sowohl ein LAN als auch ein WAN. Solch ein Testsystem wäre fähig, Kommunikation
zwischen Testsystemkomponenten im LAN und im WAN unter Verwendung
akzeptierter Kommunikationsstandards einzurichten. Es wäre auch
wünschenswert,
dies zu erreichen, ohne daß Änderungen
von kundenspezifischer Software in den Netzwerken erforderlich sind.
-
ZUSAMMENFASSUNG
DER ERFINDUNG
-
Unter
Berücksichtigung
des oben erörterten Hintergrundes
ist es eine Aufgabe der Erfindung, Computerausrüstung bereitzustellen, die
einfach in ein mit Standardprotokollen arbeitendes Netzwerk einbezogen
werden kann.
-
Eine
weitere Aufgabe der Erfindung ist es, ein Testsystem bereitzustellen,
das einfach in bestehende Telekommunikationsnetzwerke integriert
werden kann.
-
Die
genannten und weitere Aufgaben werden durch Bereitstellung eines
Testsystems erreicht, das einen ersten Peer in einem LAN und wenigstens einen
zweiten Peer in einem WAN aufweist, wobei das LAN und das WAN durch
einen Gateway verbunden sind.
-
In
einer bevorzugten Ausführungsform
ist der erste Peer ein Client und der Gateway ist ein Terminalserver.
Der Client ist zum Einrichten einer virtuellen Pipe mit dem Terminalserver
und zum Weiterleiten der virtuellen Pipe an einen Client-Verbindungsmanager
programmiert. Dies erlaubt es dem Client-Verbindungsmanager, eine
Punkt-zu-Punkt-Verbindung zwischen dem ersten Peer und dem zweiten Peer
auszuhandeln.
-
Gemäß einem
Merkmal arbeiten der erste Peer, der Terminalserver und der zweite
Peer unter der Steuerung eines UNIX®-Betriebssystems.
-
Weitere
Aufgaben und Vorteile werden durch Berücksichtigung der folgenden
Beschreibung und Zeichnungen erkennbar.
-
KURZBESCHREIBUNG DER ZEICHNUNGEN
-
Die
Erfindung ist mit Bezug auf die folgende ausführlichere Beschreibung und
die beigefügten Zeichnungen
besser verständlich,
wobei diese folgendes zeigen:
-
1 ist
ein Blockschaltbild eines Telekommunikationsnetzwerks, das die Komponenten
eines Testsystems gemäß der Erfindung
enthält;
-
2 ist
eine ausführliche
Ansicht eines Teils des in 1 gezeigten
Blockschaltbilds, einschließlich
eines Teil-Blockschaltbilds von Softwarekonfigurationen in einer
Testsystem-Steuereinrichtung
und einem Terminalserver gemäß der Erfindung;
-
3 ist
eine ausführliche
Ansicht der Softwarekonfiguration der Testsystem-Steuereinrichtung gemäß der Erfindung;
-
4A bis 4C sind
vereinfachte Blockschaltbilder, die Beziehungen zwischen verschiedenen
in der Erfindung verwendeten Protokollen zeigen;
-
5 ist
ein Ablaufdiagramm, das ein Verfahren zur Kommunikationseinrichtung
zwischen der Testsystem-Steuereinrichtung in einem LAN und einer
Fernmeßeinheit
in einem WAN gemäß der Erfindung
darstellt; und
-
6 ist
eine alternative Ausführungsform eines
Telekommunikationsnetzwerks, das Testsystemkomponenten gemäß der Erfindung
einbezieht.
-
BESCHREIBUNG
DER BEVORZUGTEN AUSFÜHRUNGSFORM
-
1 zeigt
ein Telekommunikations-Testnetzwerk 100, das zum Ermitteln
und Lokalisieren von Störungen
in einem Telefonnetzwerk verwendet werden kann. Das Testnetzwerk 100 weist
ein öffentliches
Fernsprechwählnetzwerk
(PSTN) 110 und eine Vielzahl von Fernmeßeinheiten (MU), wie zum Beispiel
die MUs 112, 116 und 120, auf. Damit
die MUs 112, 116 und 120 Verbindungen
mit Telefonleitungen im PSTN 110 eingehen können, weisen
die MUs 112, 116 und 120 zugeordnete
Modems 114, 118 bzw. 122 auf.
-
Die
MUs 112, 116 und 120 werden zum Ermitteln
und Lokalisieren von Störungen
im PSTN 110 verwendet. Dem Fachmann ist bekannt, daß ein PSTN
im allgemeinen Hauptleitungen (nicht dargestellt), Teilnehmerleitungen
(nicht dargestellt) und Vermittlungseinrichtungen (nicht dargestellt)
aufweist, die die Hauptleitungen mit den Teilnehmerleitungen zur
Einrichtung von Telefonverbindungen verbinden. Diese Verbindungen
werden normalerweise unter Verwendung herkömmlicher Punkt-zu-Punkt-Verbindungen
eingerichtet. Ferner sind Hauptleitungen und Vermittlungseinrichtungspaare
im allgemeinen in einer Vielzahl von Vermittlungsstellen (nicht
dargestellt) angeordnet, die über das
gesamte PSTN verteilt sind.
-
Die
MUs 112, 116 und 120 können verwendet
werden, um verschiedene Parameter ausgewählter Teilnehmerleitungen zu
messen. Zum Beispiel können
die MUs 112, 116 und 120 Spannung, Strom, Widerstand,
Impedanz, Kapazität,
Induktivität,
Frequenz von Tönen
auf den Leitungen und in den Leitungen gespeicherte Ladung messen.
Die MUs 112, 116 und 120 können auch
Impulse erzeugen und daraus resultierende Signale auf den Leitungen
erfassen. Die MUs 112, 116 und 120 sind
deshalb vorzugsweise in entsprechenden Vermittlungsstellen im PSTN 110 angeordnet,
wo sie mit Vermittlungseinrichtungen gekoppelt sind, die sie mit
den ausgewählten
Teilnehmerleitungen verbinden, so daß sie erwünschte Messungen an den Leitungen
vornehmen können.
-
Das
Testnetzwerk 100 weist auch ein lokales Netzwerk (LAN) 102 auf,
das einen Computer 101, einen Terminalserver 106 und
eine Test-Systemsteuereinrichtung (TSC) 104 miteinander
verbindet. Das LAN 102 kann einen herkömmlichen Mehrfachzugriffs-Kanal
("Rundsende"-Protokoll) wie zum
Beispiel Ethernet oder Token Ring verwenden. Ferner besitzt der
Terminalserver 106 auch ein zugeordnetes Modem 108,
damit der Terminalserver 106 Verbindungen mit Telefonleitungen
im PSTN 110 herstellen kann.
-
Die
TSC 104 wird zur Steuerung der MUs 112, 116 und 120 und
zur Analyse von Daten, die von den MUs 112, 116 und 120 gesammelt
wurden, verwendet. Die TSC 104 sendet deshalb Befehle an
die MUs 112, 116 und 120 und empfängt im Gegenzug Meßdaten von
den MUs 112, 116 und 120 über den Terminalserver 106 und
die Telefonleitungen im PSTN 110. Die TSC 104 verarbeitet
dann die Daten, um Störungen
im Telefonnetzwerk zu ermitteln und zu lokalisieren, und meldet
Testergebnisse einem menschlichen Bediener, der Personal beordern
kann, um die Störungen
zu beheben.
-
Die
TSC 104, der Terminalserver 106, der Computer 101 und
das LAN 102 befinden sich normalerweise in einem technischen
Dienstleistungszentrum einer Telefongesellschaft (nicht dargestellt). Wie
bereits oben erwähnt,
sind Büroumgebungen traditionell
mit Computern ausgestattet, die mit einem LAN verbunden sind, wodurch
Computerbenutzer Information austauschen und Betriebsmittel, wie
zum Beispiel Massenspeichergeräte,
Drucker und Faxgeräte
miteinander teilen können.
Dementsprechend ist eine Vielzahl von Computern einschließlich des
Computers 101 und der Testsystemsteuereinrichtung 104 mit
dem LAN 102 im technischen Dienstleistungszentrum verbunden,
wodurch sie Daten austauschen und Betriebsmittel miteinander zu
teilen können.
-
Ausführliche
Information über
die bevorzugte Struktur und allgemeine Arbeitsweise der TSC 104 und
der MUs 112, 116 und 120 können dem
US-Patent Nr. 5699402 entnommen werden, das auf TERADYNE® Inc.,
Deerfield, IL, USA, übertragen
worden ist.
-
Es
wurde bereits erwähnt,
daß das
LAN 102 herkömmliche
Rundsendekanäle
verwenden kann und das PSTN 110 herkömmliche Punkt-zu-Punkt-Kanalverbindungen
verwenden kann. Das bedeutet, daß das LAN 102 und
das PSTN 110 unterschiedliche Protokolle zum Senden von
Informationspaketen an Geräte
verwenden müssen, die
mit ihren jeweiligen Netzwerken verbunden sind. Zum Beispiel kann
ein Rundsende-Protokoll mit dem LAN 102 verwendet werden,
um Informationspakete an den Computer 101, die TSC 104 und
den Terminalserver 106 zu senden. Ferner kann ein Punkt-zu-Punkt-Protokoll
(PPP) oder ein Internetprotokoll für serielle Leitungen (SLIP)
im PSTN 110 verwendet werden, um Informationspakete an
die MUs 112, 116 und 120 und den Terminalserver 106 zu senden.
-
Der
Terminalserver 106 wird verwendet, um zwei unterschiedliche
Typen von Netzwerken 102 und 110 miteinander zu
verbinden. Der Terminalserver 106 ist deshalb ein computerisiertes
Gerät,
das herkömmliche
Funktionen eines "Gateway" zwischen dem LAN 102 und
dem PSTN 110 ausführt.
Dementsprechend hat der Terminalserver 106 mehrere I/O-Ports
(nicht dargestellt) und eine computerisierte Vermittlungseinrichtung
(nicht dargestellt), um die Ports mit dem LAN 102 und dem
PSTN 110 zu verbinden.
-
Es
wurde auch bereits erwähnt,
daß die
TSC 104 Befehle an die MUs 112, 116 und 120 sendet
und im Gegenzug Meßdaten
von den MUs 112, 116 und 120 empfängt. Die
TSC 104 muß deshalb
Befehle und Daten mit den MUs 112, 116 und 120 über die Netzwerkumgebung
des LAN 102 und des PSTN 110 austauschen. Das
bedeutet, daß Punkt-zu-Punkt-Verbindungen über die
Umgebung des PSTN 110 erzeugt werden müssen, um Verbindungen zwischen
der TSC 104 und den MUs 112, 116 und 120 einzurichten.
Es ist ein bedeutender Vorteil der vorliegenden Erfindung, daß diese
Verbindungen unter Steuerung von Software hergestellt werden können, die
in die TSC 104 einprogrammiert wurde.
-
2 stellt
ein vereinfachtes Schaltbild einer Kommunikationsverbindung über das
LAN 102 unter Verwendung einer Socket-Schnittstelle einschließlich Sockets 224 und 226 dar.
Eine solche Socket-Schnittstelle
kann im allgemeinen eine UNIX®-Datei sein, die Netzwerkkommunikation
zwischen Anwendungen bereitstellt, die unter unterschiedlichen Betriebssystemen
laufen. Insbesondere wird die Socket-Schnittstelle einschließlich der
Sockets 224 und 226 verwendet, um eine Datei über das
LAN 102 zwischen der TSC 104 und dem Terminalserver 106 zu öffnen, wobei
beide vorzugsweise unter der Steuerung eines UNIX®-Betriebssystems arbeiten.
Ein Datei-Deskriptor für
die geöffnete
Datei kann dann von Anwendungen, die auf der TSC 104 und
dem Terminalserver 106 laufen, zum Senden und Empfangen
von Daten zwischen den Anwendungen verwendet werden.
-
Dementsprechend
ist die TSC 104 mit Software programmiert, die den Socket 224 an
einem Port (nicht dargestellt) der TSC 104 erzeugt und
den Socket 226 an einem Port (nicht dargestellt) des Terminalservers 106 erzeugt.
In der bevorzugten Ausführungsform
bindet die Software die Zieladressen für die Ports der TSC 104 und
des Terminalservers 106 an die Sockets 224 bzw. 226.
Dadurch ist es nicht mehr notwendig, die Zieladresse jedes Mal zu übergeben,
wenn die Socket-Schnittstelle zum Senden von Daten zwischen den
auf der TSC 104 und dem Terminalserver 106 laufenden
Anwendungen verwendet wird. Ferner fungiert der Socket 224 insofern
wie ein Client-Socket, als er Verbindungen zum Terminalserver-Socket 226 anbahnt,
wodurch er den auf dem TSC 104 und dem Terminalserver 106 laufenden
Anwendungen miteinander zu kommunizieren erlaubt.
-
4C ist
ein vereinfachtes Blockschaltbild, das die Beziehung zwischen Protokollen
zeigt, die zur Kommunikation zwischen den auf der TSC 104 und
dem Terminalserver 106 laufenden Anwendungen verwendet
werden. In der bevorzugten Ausführungsform
basieren die Protokolle auf dem Modell der Kommunikation offener
Systeme (OSI), das in sieben verschiedene Schichten miteinander
in Beziehung stehender Protokolle, einschließlich einer physischen Schicht,
einer Datensicherungsschicht, einer Netzwerkschicht, einer Transportschicht,
einer Sitzungsschicht, einer Präsentationsschicht
und einer Anwendungsschicht organisiert ist.
-
Verbindungen
zwischen dem Socket 224 und dem Socket 226 nutzen
die physische Schicht, die Datensicherungsschicht, die Netzwerkschicht und
die Transportschicht des OSI-Modells. Zum Beispiel kann die Transportschicht
das TCP (Übertragungssteuerungsprotokoll) 440 und
das UDP (Benutzer-Datagramm-Protokoll) 442 aufweisen.
Das TCP 440 wird vorzugsweise verwendet, um Daten zwischen
den Sockets 224 und 226 auszutauschen, und das
UDP 442 wird vorzugsweise verwendet, um Kommunikation zwischen
den Sockets 224 und 226 einzurichten und aufrechtzuerhalten.
-
Ferner
kann die Netzwerkschicht das Internetprotokoll (IP) 444 sein,
und die physische und Datensicherungsschicht kann das LAN-Protokoll
Ethernet 446 sein. Im allgemeinen wird ein Telekommunikationsprotokoll
entweder durch TCP/IP oder UDP/IP in die Transport- und die Netzwerkschicht
eingebunden und dann auf einer PPP-Datensicherungsschicht unter
Verwendung der Socket-Schnittstelle über Ethernet übertragen.
Diese Einbindung der TCP/IP- oder UDP/IP-Protokolle ist allgemein
als "Tunnelung" bekannt. Dementsprechend
werden die physische Schicht, die Datensicherungsschicht, die Netzwerkschicht
und die Transportschicht des OSI-Modells verwendet, um eine Verbindung
zwischen den Sockets 224 und 226 herzustellen.
-
3 stellt
eine Softwarekonfiguration der TSC 104 einschließlich eines
PPP-Verbindungsmanagers 328,
einer Pipe 330 und des Sockets 224 dar. Ein PPP-Verbindungsmanager
automatisiert im allgemeinen den Prozeß der Einrichtung von Punkt-zu-Punkt-Verbindungen
zwischen Computersystemen oder "Peers". Dementsprechend
wird der PPP-Verbindungsmanager 328 verwendet, um Punkt-zu-Punkt-Verbindungen
zwischen dem Peer TSC 104 und den entfernten Peers MUs 112, 116 und 120 einzurichten.
-
In
der bevorzugten Ausführungsform
ist der PPP-Verbindungsmanager 328 der systemeigene UNIX®-PPP-Verbindungsmanager,
welcher ein Verbindungsmanager für
das asynchrone Sicherungsprotokoll (Datenverbindungsprotokoll) ist.
Ferner wird eine PPP-Verbindungsmanager-Steuerungsschnittstelle 329 im
allgemeinen mit einem UNIX®-IP-Wähltreiber und einem UNIX®-PPP-Datenstrom-Modul verwendet,
um Punkt-zu-Punkt-Verbindungen zwischen Peers über ein Modem und eine Telefonverbindung
einzurichten. Dementsprechend wird der PPP-Verbindungsmanager 328 mit
einem Wähltreiber
und einem Datenstrom-Modul verwendet, um Punkt-zu-Punkt-Verbindungen
zwischen der TSC 104 und den MUs 112, 116 und 120 über das
PSTN 110 einzurichten.
-
Die
Pipe 330 ist vorzugsweise ein UNIX®-Pipe-Dienstprogramm,
das einen Kommunikationskanal zwischen zwei Prozessen herstellt.
Insbesondere wird die Pipe 330 verwendet, um zwei Dateien
zum Lesen und Schreiben zu öffnen.
Datei-Deskriptoren für
die geöffneten
Daten können
dann durch den Socket-Prozeß 224 und
den PPP-Verbindungsmanager 328 zum Senden und Empfangen
von Daten zwischen den Prozessen verwendet werden.
-
4A ist
ein vereinfachtes Blockschaltbild, das die Beziehung zwischen Protokollen
zeigt, die zur Kommunikation zwischen dem PPP-Verbindungsmanager 328 und
der Pipe 330 verwendet werden. Der Kanal zwischen dem PPP-Verbindungsmanager 328 und
der Pipe 330 nutzt die Datensicherungsschicht, die Netzwerkschicht
und die Transportschicht des OSI-Modells. Zum Beispiel kann die Transportschicht
das TCP 432 und das UDP 434 aufweisen. Erneut
wird das TCP 432 vorzugsweise für die Kommunikation von Daten
verwendet, und das UDP 434 wird für jede andere Kommunikation
zwischen dem PPP-Verbindungsmanager 328 und
der Pipe 330 verwendet.
-
Ferner
kann die Netzwerkschicht das IP 431 sein, und die Datenschicht
ist das PPP 433. Auf diese Weise können TCP/IP/PPP-Datenpakete
zwischen dem PPP-Verbindungsmanager 328 und der Pipe 330 ausgetauscht
werden.
-
Gleichermaßen ist 4B ein
vereinfachtes Blockschaltbild, das die Beziehung zwischen Protokollen
zeigt, die zur Kommunikation zwischen der Pipe 330 und
dem Socketprozeß 224 verwendet
werden. Dieser Kommunikationskanal verwendet ebenfalls TCP 436 und
UDP 438 in der Transportschicht, IP 435 in der
Netzwerkschicht und PPP 437 in der Datensicherungsschicht.
Auf diese Weise können TCP/IP/PPP-Datenpakete
zwischen der Pipe 330 und dem Socket 224 ausgetauscht
werden.
-
Es
wurde bereits beschrieben, daß TCP/IP/Ethernet-Datenpakete
zwischen der TSC 104 und dem Terminalserver 106 ausgetauscht
werden. Der Terminalserver 106 kann dann herkömmliche
Verfahren verwenden, um TCP/IP/PPP-Datenpaketen mit ausgewählten der
MUs 112, 116 und 120 über Punkt-zu-Punkt-Verbindungen
durch das PSTN 110 auszutauschen. Dementsprechend können Kommunikationsverbindungen
zwischen der TSC 104 und den MUs 112, 116 und 120 eingerichtet
werden, obwohl die TSC 104 sich in einem Rundsende-Netzwerk
befindet und die MUs 112, 116 und 120 sich
in einem Punkt-zu-Punkt-Netzwerk befinden.
-
Diese
Kommunikationsverbindungen zwischen der TSC 104 und den
MUs 112, 116 und 120 können begrifflich
als "virtuelle Punkt-zu-Punkt-Verbindungen" betrachtet werden.
Dies ist so, weil sie aus Sicht der TSC 104 und der MUs 112, 116 und 120 wie
Punkt-zu-Punkt-Verbindungen funktionieren. Jedoch sind sie keine
wirklichen Punkt-zu-Punkt-Verbindungen, weil sie nicht nur ein Punkt-zu-Punkt-Netzwerk,
wie etwa das PSTN 110, sondern auch ein Rundsende-Netzwerk,
wie etwa das LAN 102, umfassen.
-
In ähnlicher
Weise kann eine Vielzahl von virtuellen Punkt-zu-Punkt-Verbindungen
zwischen der TSC 104 und den MUs 112, 116 und 120 begrifflich als "virtuelle Punkt-zu-Punkt-Datenvermittlungseinrichtung" zwischen dem TSC-Peer
und den entfernten MU-Peers betrachtet werden. In diesem Fall können Mehrfachsockets
(nicht dargestellt) an unterschiedlichen Ports (nicht dargestellt)
des Terminalservers 106 erzeugt werden, und Zieladressen
für die unterschiedlichen
Ports können
an die Mehrfachsockets gebunden werden. Auf diese Weise kann der Socket 224 am
TSC-Peer Verbindungen zu ausgewählten
der Mehrfachsockets am Terminalserver 106 anbahnen, wodurch
er dem TSC-Peer erlaubt, Daten mit den entfernten MU-Peers auszutauschen.
Diese konzeptionelle Darstellung als "virtuelle Punkt-zu-Punkt-Datenvermittlungseinrichtung" verdeutlicht die
Einfachheit, mit der Kommunikationsverbindungen zwischen dem TSC-Peer
und den entfernten MU-Peers eingerichtet werden können, wenn
die TSC wie hier beschrieben programmiert wurde.
-
Ein
bevorzugtes Verfahren zur Einrichtung einer virtuellen Punkt-zu-Punkt-Verbindung
zwischen der TSC 104 und einer der MUs 112, 116 und 120 wird
gemäß der in 5 dargestellten
Prozedur implementiert, die unter Steuerung einer in der TSC 104 programmierten
Softwareanwendung durchgeführt werden
soll.
-
Zuerst
wird in Block 500 eine Socket-Schnittstelle zwischen einem
ersten Peer in einem LAN (vorzugsweise die TSC 104 im LAN 102)
und einem Gateway zwischen dem LAN und einem WAN (vorzugsweise der
Terminalserver 106, der das LAN 102 und das PSTN 110 verbindet)
geöffnet.
Insbesondere wird der Client-Socket 224 an einem Port der
TSC 104 erzeugt, und der Server-Socket 226 wird
an einem Port des Terminalservers 106 erzeugt. Es wurde bereits
erwähnt,
daß die
Zieladressen für
die Ports der TSC 104 und des Terminalservers 106 vorzugsweise
an die Sockets 224 bzw. 226 gebunden sind. Der
Client-Socket 224 kann deshalb eine Verbindung zum Server-Socket 226 herstellen,
wobei Daten über die
Socket-Schnittstelle weitergeleitet werden können. Diese Daten werden vorzugsweise
als TCP/IP/Ethernet-Datenpakete weitergeleitet.
-
Als
nächstes
wird in Block 502 eine Wählverbindung zwischen dem ersten
Peer im LAN und einem zweiten Peer im WAN (vorzugsweise eine der mit
dem PSTN 110 verbundenen MUs 112, 116 und 120)
hergestellt. Insbesondere ist der zweite Peer eine MU, die mit dem
Port des Terminalservers 106 verbunden ist, der dem Server-Socket 226 entspricht.
Ferner werden ein UNIX®-IP-Wähltreiber, ein Terminalserver-Modem 108 und
ein Modem 114, 118 oder 122 entsprechend
dem zweiten Peer verwendet, um die Wählverbindung zwischen der ersten Peer
und der zweiten Peer einzurichten.
-
In
Block 504 wird dann eine Pipe zwischen der Socket-Schnittstelle
und einem PPP-Verbindungsmanager
erzeugt, um Kommunikation zwischen der Socket-Schnittstelle und
dem PPP-Verbindungsmanager,
welcher vorzugsweise der systemeigene UNIX®-Verbindungsmanager
für das
asynchrone Sicherungsprotokoll ist, zu ermöglichen.
-
Ferner
wird in Block 506 ein TTY-Gerät auf die "Schreib-Seite" der Pipe-Schnittstelle verschoben,
und in Block 508 wird ein Datenstrom-Modul auf die "Lese-Seite" der Pipe-Schnittstelle
verschoben, wobei UNIX®-Systemaufrufe verwendet
werden. Dasselbe Datenstrom-Modul wird dann in Block 510 in
die Socket-Schnittstelle verschoben. Es wurde bereits erwähnt, daß eine Pipe-Konstruktion
im allgemeinen verwendet wird, um Dateien zum Lesen und Schreiben
zu öffnen,
und daß zwei
Prozesse im allgemeinen diese Daten zum Senden und Empfangen von
Daten zwischen den Prozessen verwenden. Die Pipe-Schnittstelle kann daher so betrachtet
werden, daß sie
eine Schreib-Seite hat, die der zum Schreiben von Daten verwendeten
Datei entspricht, und eine Lese-Seite, die der zum Lesen von Daten
verwendeten Datei entspricht.
-
Dementsprechend
tritt der PPP-Verbindungsmanager 328 mit der Schreib-Seite
der Pipe 330 in Verbindung, wenn er Daten an die Socket-Schnittstelle über die
Pipe 330 sendet. Weil der PPP-Verbindungsmanager 328 normalerweise
mit einem seriellen Terminal verwendet wird, wird das TTY-Gerät auf die
Schreib-Seite der Pipe 330 verschoben, wodurch es ein serielles
Terminal emuliert.
-
Man
beachte, daß das
TTY-Gerät
eine binäre,
zeichenorientierte 8-Bit-Schnittstelle zwischen dem PPP-Verbindungsmanager 328 und
der Pipe 330 bereitstellt. TCP/IP/PPP-Datenpakete werden daher
zwischen dem PPP-Verbindungsmanager 328 und der Pipe 330 über dieses
Schnittstelle ausgetauscht. Auf diese Weise werden asynchrone 8-Bit-Vollduplex-Verbindungen
zwischen der TSC 104 und den MUs 112, 116 und 120 eingerichtet.
-
Ferner
tritt die Socket-Schnittstelle mit der Lese-Seite der Pipe 330 in
Verbindung, wenn sie Daten vom PPP-Verbindungsmanager 328 empfängt. Da
die Socket-Schnittstelle Daten über
Ethernet weiterleitet, müssen
sowohl die Socket-Schnittstelle als auch die Pipe 330 IP-Protokolle über Ethernet
unterstützen.
Das in die Socket-Schnittstelle und die Lese-Seite der Pipe-Schnittstelle
verschobene Datenstrom-Modul verbindet das IP-Protokoll mit dem Ethernet,
so daß die
Pipe und die Socket-Schnittstelle in Verbindung treten können, um
zu kommunizieren.
-
Als
nächstes
wird in Block 512 der Datei-Deskriptor, der der Schreibdatei
entspricht, die von der Pipe-Schnittstelle geöffnet wurde, an den PPP-Verbindungsmanager
gesendet. Das erlaubt dem PPP-Verbindungsmanager 328,
Daten an die Socket-Schnittstelle über die Pipe 330 zu
senden. Ferner wird in Block 514 der Name des zweiten Peers
im WAN dem PPP-Verbindungsmanager übergeben. Insbesondere hat
der zweite Peer, welcher eine der MUs 112, 116 und 120 ist,
eine zugeordnete IP-Adresse, die der Name ist, der dem PPP-Verbindungsmanager 328 übergeben
wird.
-
Zum
Schluß wird
durch den PPP-Verbindungsmanager in Block 516 eine Punkt-zu-Punkt-Verbindung mit dem
zweiten Peer unter Verwendung herkömmlicher Verfahren ausgehandelt.
Der PPP-Verbindungsmanager 328 kann deshalb
eine Punkt-zu-Punkt-Verbindung zwischen der TSC 104 und
einer der MUs 112, 116 und 120 einrichten.
-
Man
beachte, daß die
Punkt-zu-Punkt-Verbindung zwischen der TSC 104 und der
MU alternativ von der MU ausgehandelt werden kann. In diesem Fall
muß die
MU zuerst den Deskriptor der Datei, die durch die Socket-Schnittstelle
geöffnet
worden ist, und die IP-Adresse der TSC 104 erhalten. Entweder der
PPP-Verbindungsmanager 328 oder die MU können deshalb
Punkt-zu-Punkt-Verbindungen zwischen der TSC 104 und der
MU einrichten. Vor allem können
diese Punkt-zu-Punkt-Verbindungen unter Verwendung der in 5 dargestellten
Prozedur in unterschiedlichen Telekommunikationsnetzwerken erzeugt
werden, ohne daß Veränderungen
an kundenspezifischer Software in den jeweiligen Gateways erforderlich
sind.
-
Aus
obiger Beschreibung folgt, daß die
vorliegende Erfindung Vorteile gegenüber alternativen Verfahren
des Tunnelns von PPP-Datenpaketen über virtuelle Punkt-zu-Punkt-Verbindungen
bietet, wie zum Beispiel dem Punkt-zu-Punkt-Tunnelprotokoll (PPTP)
und dem Schicht-Zwei-Tunnelprotokoll (L2TP).
-
Zum
Beispiel richtet das Verfahren gemäß der Erfindung virtuelle Punkt-zu-Punkt-Verbindungen unter
Verwendung von Verbindungsmanagement-Einrichtungen ausschließlich im
TSC- oder MU-Client ein. Es sind keine Verbindungsmanagement-Einrichtungen
am Terminalserver erforderlich. Ferner stellt das Verfahren eine
8-bittige zeichenorientierte Schnittstelle am Terminalserver zur
Verfügung.
Solche Erwägungen
sind wichtig, wenn der Terminalserver ein herkömmliches System ist, wie zum
Beispiel ein Gateway in einem Telekommunikationsnetzwerk, weil der
Terminalserver nicht modifiziert werden muß, um solche virtuellen Punkt-zu-Punkt-Verbindungen
zu unterstützen.
-
Hingegen
erfordern PPTP und L2TP Verbindungsmanagement-Einrichtungen sowohl
im Client als auch im Terminalserver. Ferner stellen PPTP und L2TP
dem Terminalserver paketorientierte Punkt-zu-Punkt-Schnittstellen zur Verfügung. Das bedeutet,
daß herkömmliche
Systeme, wie zum Beispiel Terminalserver, im allgemeinen modifiziert
werden müßten, um
PPTP und L2TP zu unterstützen.
-
Obwohl
nur eine Ausführungsform
beschrieben wurde, sind alternative Ausführungsformen oder Variationen
möglich.
Zum Beispiel wurde beschrieben, daß das Testnetzwerk 100 ein
PSTN 110 und eine Vielzahl von MUs 112, 116 und 120 aufweist. Dies
war jedoch nur ein erläuterndes
Beispiel. Das Testnetzwerk 100 kann alternativ andere Typen
von WANs, wie zum Beispiel X.25 oder Frame Relay, aufweisen.
-
Zum
Beispiel stellt 6 ein Testnetzwerk 600 dar,
das ein X.25-Netzwerk 610 und einen Terminalserver 606,
der ein X.25-Gateway ist, aufweist. Damit die MUs 612, 616 und 620 Verbindungen
mit dem Terminalserver 606 herstellen können, müssen die MUs 612, 616 und 620 und
der Terminalserver 606 zugeordnete PADs (Paketierer/Depaketierer-Einrichtungen) 614, 618, 622 bzw. 608 aufweisen.
-
Ferner
kann eine virtuelle Punkt-zu-Punkt-Verbindung zwischen der TSC 604 und
einer der MUs 612, 614 und 620 unter
Verwendung derselben in 5 dargestellten allgemeinen Prozedur
implementiert werden. Speziell kann eine Socket-Schnittstelle zwischen
der TSC 604 und dem Terminalserver 606 geöffnet werden,
eine Pipe kann zwischen der Socket-Schnittstelle und einem auf der TSC 604 programmierten
PPP-Verbindungsmanager erzeugt werden, und PPP-Verbindungen können zwischen
den MUs 612, 616, 620 und der TSC 604 ausgehandelt
werden. Auf diese Weise können
TCP/IP- oder UDP/IP-Datenpakete
zwischen der TSC 604 und den MUs 612, 616 und 620 über eine
nahtlose, asynchrone, zeichenorientierte Vollduplex-Schnittstelle
ausgetauscht werden. Die Terminalserver 106 und 606 können sogar
mit einem gewöhnlichen
LAN verbunden werden.