-
Die
vorliegende Erfindung bezieht sich auf die Übertragungsnetze mit Paketvermittlung,
die dazu bestimmt sind, für
die Sicherheit kritische Informationen mit besonderen Anforderungen
bezüglich der
Garantie und der Weiterleitungszeit zu transportieren. Solche Sicherheits-Übertragungsnetze
haben viele mögliche
Anwendungsgebiete, darunter die Verbindung der Bordgeräte eines
Luftfahrzeugs für den
Austausch von Anweisungen und kritischen Informationen.
-
Ein Übertragungsnetz
mit Paketvermittlung wird allgemein als ATM-Netz oder vermitteltes
Ethernet bezeichnet, wobei das Kürzel
ATM aus dem Englischen für "Asynchronous Transfer
Mode" kommt. Es besteht
aus einer Gruppe von Vermittlungsstellen oder Verbindungsknoten,
die durch verkabelte oder nicht verkabelte Übertragungsverbindungen verbunden
sind, die eine Vernetzung des Raums bilden, in dem die Entitäten verteilt
sind, die miteinander kommunizieren sollen.
-
Um über ein Übertragungsnetz
mit Paketvermittlung übertragen
zu werden, muss eine Information zwei aufeinander folgende Formatierungen
erfahren: eine digitale Formatierung und eine analoge Formatierung.
-
Die
digitale Formatierung hat zum Ziel, die zu übertragende Information von
den Paketvermittlern manipulierbar zu machen. Nach einer Digitalisierung der
zu übertragenden
Information führt
sie zur Bildung von Paketen von Binärdaten oder Datagrammen, die
ein bestimmtes Format beachten, mit einem oder mehreren Feldern
von Mitteilungs-Binärdaten und
einem oder mehreren Feldern von Dienst-Binärdaten, die verschiedene Anweisungen
enthalten, die für
das Routen innerhalb des Netzes nützlich sind, darunter Kennungen
der Zielentitäten
der Pakete.
-
Die
analoge Formatierung betrifft die Pakete oder Datagramme, die aus
der digitalen Formatierung entstehen, denen sie die Form eines elektrischen
oder optischen Übertragungssignals
verleiht, das an die physikalischen Eigenschaften der Übertragungsverbindungen
angepasst ist, die die Vermittlungsstellen des Netzes miteinander
und mit den kommunizierenden Entitäten verbinden.
-
Die
Paketübertragungsnetze
unterscheiden sich hauptsächlich
voneinander durch die Verwendung von Paketen variabler Größe (64 bis
1518 Bytes) für
die Ethernet-Netze und durch die Verwendung von Paketen fester Größe für die ATM-Netze. Nachfolgend
wird angenommen, dass die Größe der Pakete
beliebig ist, was es ermöglicht,
allgemein zu bleiben.
-
Ein
Netzvermittler führt
hauptsächlich
durch:
- – eine
Erfassung und eine Demodulation, auf der Ebene jedes seiner Eingangs-Ausgangs-Ports, der Übertragungssignale,
die über
die Übertragungsverbindungen
zu ihm gelangen, an die er direkt angeschlossen ist, um den zu ihm
gelangenden Informationen wieder die Form von Datagrammen zu verleihen,
- – eine
vorübergehende
Speicherung in einem Pufferspeicher der von allen seinen Eingangs-Ausgangs-Ports empfangenen
Datagramm-Verkehre, in Erwartung der Ausführung der Routing-Operationen
zu einem oder mehreren Ausgangsports des Vermittlers,
- – eine
Analyse der Dienst-Binärdaten
jedes Datagramms, um daraus ein Diffusionsprofil abzuleiten, das
den oder die Ausgangsports bestimmt, zu denen das betrachtete Datagramm
geroutet werden soll,
- – die
Durchführung,
sobald wie möglich,
des Diffusionsprofils, die aus einer Wiedergewinnung des betrachteten
Datagramms im Pufferspeicher und seiner Präsentation an den gewünschten Ausgangsports
besteht, und
- – die
Remodulation der Datagramme auf der Ebene der Ausgangsports, um
ihnen die Form eines Übertragungssignals
zu geben, das an ihre Weiterleitung auf den Übertragungsverbindungen angepasst
ist, die mit den Ausgangsports verbunden sind.
-
Um
diese verschiedenen Tasks zu erfüllen, weist
ein Paketvermittler im Allgemeinen an der Peripherie in Höhe jedes
seiner Eingangs-Ausgangs-Ports eine individuelle Modulator/Demodulator-Schaltung,
genannt MAC-Schaltung (Medium Access Control), die die Schnittstelle
in beiden Richtungen zwischen den intern zirkulierenden Datagrammen
und den ihnen extern entsprechenden Übertragungssignalen auf den
physikalischen Verbindungen des Netzes gewährleistet, die direkt an den
betrachteten Eingangs-Ausgangs-Port angeschlossen sind, sowie einen
logischen Automat zur Sendewartenschlangenverwaltung, der die Konflikte
zwischen den Wiederaussendungsanfragen von Datagrammen löst, die
zu nahe beieinander liegen, um augenblicklich erfüllt zu werden,
und zentral einen Pufferspeicher auf, der aus einem Arbeitsspeicher
mit Mehrfachzugriff besteht, der die vom Paketvermittler empfangenen
Datagramme während
der Zeit ihres Routens speichert, wobei eine zentrale Ablaufsteuerung die
Adressierung des Pufferspeichers liefert, um ihn nach Art mehrerer
Umlaufspeicherbänke
arbeiten zu lassen, eine Bank pro Eingangsport, und wobei ein zentraler
Routing-Automat ein Diffusionsprofil bestimmt, d.h. die Liste der
Eingangs-Ausgangs-Ports des Netzvermittlers, über die ein Datagramm wieder ausgesendet
werden soll, die in Abhängigkeit
von der Lokalisierung des betroffenen Paketvermittlers innerhalb
des Übertragungsnetzes
mit Paketvermittlung und von den Dienstdaten dieses Datagramms, hauptsächlich die
Identitäten
der Zielentitäten,
erstellt wird.
-
Das
Stellen des Sicherheitsaspekts in den Vordergrund führt dazu,
in einem Übertragungsnetz mit
Paketvermittlung Maßnahmen
zu verwenden, die dazu tendieren, die Weiterleitung einer Information
in einer maximalen Frist so gut wie möglich zu garantieren, selbst
im Fall eines Notbetriebs, indem die Staugefahren des Netzes so
weit wie möglich
beseitigt werden. Sie greifen auf zwei Ebenen, derjenigen der Pakete
oder Datagramme, und derjenigen der virtuellen Pfade, denen die
Datagramme innerhalb des Netzes folgen, wobei ein virtueller Pfad
einem besonderen Fluss von Informationen zugeteilt ist, der die
gleichen Sendeentitäten
und Zielentitäten
hat und durch die Augenblickszustände definiert wird, die die
Vermittler des Netzes annehmen, wenn sie von den Datagrammen durchquert
werden, die zu diesem Informationsfluss gehören.
-
Die
stauverhindernden Sicherheitsmaßnahmen
des Netzes, die auf der Ebene der Datagramme ergriffen werden, bestehen
darin, die Integrität
und die Frische der Datagramme während
ihres Aufenthalts innerhalb der Paketvermittler des Netzes, aller Paketvermittler
oder nur einiger von ihnen, zu überprüfen und
die Datagramme zurückzuweisen,
die nicht integer sind oder zu lange in einem Paketvermittler verweilt
haben, um die Übertragungsverbindungen
des Netzes nicht unnütz
durch Datagramme zu verstopfen, die für die Zielentitäten unverwertbar geworden
sind.
-
Die
Integritätsüberprüfung eines
Datagramms basiert auf der Übereinstimmung
des Datagramms, wie es auf der Ebene eines Paketvermittlers des
Netzes wahrgenommen wird, mit einer in seinen Dienst-Binärdaten befindlichen
Beschreibung, die aus Informationen über den Typ des Pakets oder
Redundanzinformationen besteht, die von einem Fehlerkorrekturcode
geliefert werden.
-
Die
Frischeüberprüfung eines
Datagramms auf der Ebene eines Paketvermittlers basiert auf dem Vergleich
der laufenden Zeit mit dem Empfangsdatum des Datagramms durch den
betrachteten Paketvermittler. Wenn ein Datagramm zu lange in einem Paketvermittler
verweilt, ehe es weitergesendet wird, läuft der Paketvermittler Gefahr,
dass seine Speicherungsmöglichkeiten überschritten
werden und dass es Verwechslungen von Datagrammen gibt. Es muss also
jeder Bezug auf ein Datagramm beseitigt werden, sobald sein Aufenthalt
in einem Paketvermittler dazu tendiert, sich anormal zu verlängern.
-
Die
stauverhindernden Sicherheitsmaßnahmen
des Netzes, die auf der Ebene eines virtuellen Pfads vorgenommen
werden, sind von zwei Arten. Sie bestehen einerseits darin, zu überprüfen, ob
ein Datagramm beim seinem Durchgang durch einen Paketvermittler
wirklich einem genehmigten virtuellen Pfad folgt, andernfalls wird
es zurückgewiesen, um
die Übertragungsverbindungen
nicht unnütz
mit Paketen zu verstopfen, die nicht korrekt von den Zielentitäten verwertet
werden, da sie schlecht geroutet sind, und andererseits auf den
Ebenen der verschiedenen Paketvermittler die Durchsätze der
virtuellen Pfade unter den genehmigten Maxima zu halten, indem,
falls nötig,
Entlastungen durch autoritäre Entfernung
der überzähligen Datagramme
durchgeführt
werden, um einen Betriebsfehler einer Sendeentität oder eines Paketvermittlers
nur auf die virtuellen Pfade zu beschränken, die ihm zugewiesen sind, siehe
zum Beispiel die Veröffentlichung
EP 0 472 408 , die eine Lösung vorschlägt, die
es ermöglicht, den
Fluss von über
einen virtuellen Pfad übertragenen
Paketen zu überwachen.
-
Die Überprüfung der
Entsprechung eines Datagramms und des virtuellen Pfads, über den
es auf der Ebene eines Paketvermittlers geht, basiert auf der Überprüfung der
Kompatibilität
des Ports, über
den das Datagramm auf der Ebene eines Paketvermittlers empfangen
wird, mit dem virtuellen Pfad, der ursprünglich dem Datagramm zugewiesen
wurde und der sich aus Dienst-Binärdaten, die im Datagramm enthalten
sind, die die Zielentitäten
des Datagramms markieren, und ggf. weiteren Dienst-Binärdaten ableitet,
die die Sendeentität
oder den Typ des Datagramms markieren.
-
Der
Halt des Datendurchsatzes eines virtuellen Pfads unter den genehmigten
Maxima auf den Ebenen der verschiedenen Paketvermittler, die er durchquert,
besteht aus einer Überwachung
seines realen Durchsatzes auf den Ebenen dieser Paketvermittler,
durch ein Anzeigen der Datagramme, die er weiterleitet, ein Anzeigen,
das die Tatsache berücksichtigt,
dass die Datagramme, die oft mit einer regelmäßigen Taktfolge von einer Sendeentität gesendet werden,
aufgrund des möglichen
Vorhandenseins von Warteschlangen auf der Ebene der Paketvermittler
mit einem mehr oder weniger starken Jitter behaftet sein können, und
aus einer autoritären
Begrenzung des realen Durchsatzes unter dem maximalen Durchsatz
durch Entfernen der überzähligen Datagramme.
-
Diese
Maßnahmen
zielen darauf ab, die Gefahren eines Verlusts oder einer Weiterleitungsverzögerung der
Informationen aufgrund eines Staus im Netz zu beseitigen. Andere
Maßnahmen
haben zum Ziel, dafür
zu sorgen, dass die Informationen, die trotz der ergriffenen Vorsichtsmaßnahmen
ihre Integrität
im Lauf der Weiterleitung verloren haben, zurückgewiesen werden, um Übertragungsleitungen nicht
zu verstopfen und unnötig
Verarbeitungszeit in den Paketvermittlern zu beanspruchen.
-
Da
es interessant ist, die Anzahl von im zentralen Pufferspeicher eines
Paketvermittlers gespeicherten Datagrammen so weit wie möglich zu
reduzieren, ist es vorteilhaft, die Integritätsüberprüfung eines Datagramms auf der
Ebene des Eingangsports durchzuführen, über den
es zum betrachteten Paketvermittler kommt. Dadurch kann es nämlich vor
seiner Präsentation
im zentralen Pufferspeicher beseitigt werden, wenn eine mangelnde
Integrität
festgestellt wird. Die Funktion der Integritätsüberprüfung jedes empfangenen Pakets
wird dann den MAC-Schaltungen anvertraut, deren Aufbau in dieser
Hinsicht angepasst ist.
-
Für alle anderen
stauverhindernden Sicherheitsmaßnahmen
des Netzes ist es aus Kostengründen
vorteilhaft, ihre Anwendungen dem zentralen Routing-Automat anzuvertrauen.
Dies erhöht
aber stark die Arbeitslast des zentralen Routing-Automaten und setzt
eine konsequente Erhöhung
von dessen Rechenleistung voraus.
-
Die
vorliegenden Erfindung hat zum Ziel, die Anwendung von stauverhindernden
Sicherheitsmaßnahmen
durch einen zentralen Automaten zu vereinfachen, der innerhalb eines
Paketvermittlers mit dem Routing beauftragt ist.
-
Sie
hat ebenfalls auf der Ebene der Paketvermittler eines Paketübertragungsnetzes
eine kostengünstigere
Ausführung
von stauverhindernden Sicherheitsmaßnahmen zum Ziel, die die Sicherheit des
Netzes verstärken.
-
Sie
hat ein Taskverwaltungsverfahren für einen Routing-Automaten eines Paketvermittlers
zum Gegenstand, der Teil eines gesicherten Paketvermittlungs-Übertragungsnetzes ist und mehrere
Eingangsports und mehrere Ausgangsports aufweist, die als Zugriff
auf eingehende und ausgehende Datenverkehre dienen, die über extern
an den Paketvermittler angeschlossene physikalische Übertragungsverbindungen
in Form von Datagramme enthaltenden Übertragungssignalen gehen,
wobei die Datagramme Mitteilungs-Binärdaten und Dienst-Binärdaten enthalten,
die Routing-Anweisungen enthalten, die es ermöglichen, für jedes Datagramm einen so genannten "virtuellen" Pfad zu definieren,
der innerhalb des Paketübertragungsnetzes
verfolgt werden muss, um zum Ziel zu gelangen. Dieses Taskverwaltungsverfahren
ist dadurch bemerkenswert, dass es einerseits darin besteht, den
Routing-Automaten mit einer im Arbeitsspeicher gespeicherten Tabelle
von lokalen Deskriptoren der virtuellen Pfade zu versehen, die über den
betrachteten Paketvermittler gehen, wobei ein einem gegebenen virtuellen
Pfad zugeteilter lokaler Deskriptor ein Diffusionsprofil, das die
Ausgangsports des betrachteten Paketvermittlers verzeichnet, die
vom betroffenen virtuellen Pfad verwendet werden, ein Eingangsprofil,
das die Eingangsports des Paketvermittlers verzeichnet, die vom
betroffenen virtuellen Pfad verwendbar sind, Informationen über Form-
und Durchsatzzwänge,
die den Datagrammen auferlegt werden, die über den betroffenen virtuellen
Pfad gehen, und Chronologie-Informationen enthält, die es ermöglichen,
das frühstmögliche Datum
für eine
zulässige
Ankunft des nächsten
Datagramms zu bestimmen, das über
den betroffenen virtuellen Pfad geht, und andererseits darin besteht,
die Verarbeitungszeit des Routing-Automaten in eine wiederholte
Folge von Zeitschlitzen aufzuteilen, von denen bestimmte zwischen
den verschiedenen Eingangsports verteilt sind, wobei jeder Schlitz
individuell einem besonderen Eingangsport zugeteilt und für Operationen
reserviert ist, die Teil der Routing-Verarbeitung der über seinen
Zuteilungs-Eingangsport
empfangenen Datagramme ist, wobei diese Verarbeitung für ein Datagramm
darin besteht:
- – im Arbeitsspeicher den lokalen
Deskriptor des dem empfangenen Datagramm zugeteilten virtuellen
Pfads zu lesen, der in der Tabelle der lokalen Deskriptoren mittels
Dienstdaten ermittelt wird, die aus dem empfangenen Datagramm entnommen
werden,
- – im
Datagramm stauverhindernde Sicherheitsüberprüfungen durchzuführen, die
sein Empfangsdatum durch den Paketvermittler, die Identität des Eingangsports,
der ihm dazu gedient hat, auf den Paketvermittler zuzugreifen, und
die im gelesenen lokalen Deskriptor enthaltenen Informationen berücksichtigen,
- – entweder,
wenn eine der vorhergehenden Überprüfungen negativ
ist, das in Verarbeitung befindliche Datagramm zurückzuweisen,
- – oder,
wenn alle vorhergehenden Überprüfungen positiv
sind, die Informationen des gelesenen lokalen Deskriptors bezüglich des
Empfangsdatums des in Verarbeitung befindlichen Datagramms auf das
Voreilungsguthaben für
das nächste über den
betroffenen virtuellen Pfad gehende Datagramm zu aktualisieren,
und das in Verarbeitung befindliche Datagramm an den Ausgangsports,
die im Diffusionsprofil des gelesenen lokalen Deskriptors verzeichnet
sind, für
die Wiederaussendung dieses Datagramms durch diese Ausgangsports
anzubieten.
-
Vorteilhafterweise
bestehen die stauverhindernden Sicherheitsüberprüfungen darin:
- – die
Zugehörigkeit
des Eingangsports, der dem in Verarbeitung befindlichen Datagramm
für den
Zugriff zum Paketvermittler gedient hat, zum Empfangsprofil des
gelesenen lokalen Deskriptors zu überprüfen,
- – zu überprüfen, dass
das Alter des Empfangsdatums des in Verarbeitung befindlichen Datagramms
bezüglich
des laufenden Datums einen bestimmten Schwellwert nicht überschreitet,
und
- – zu überprüfen, dass
das Empfangsdatum des in Verarbeitung befindlichen Datagramms innerhalb der
Grenzen liegt, die vom maximal genehmigten Durchsatz für den dem
gelesenen lokalen Deskriptor entsprechenden virtuellen Pfad erlaubt werden,
unter Berücksichtigung
des Werts seines Phasenvoreilungsguthabens.
-
Vorteilhafterweise
haben die lokalen Deskriptoren virtueller Pfade alle die gleiche
Länge.
-
Vorteilhafterweise
sind die lokalen Deskriptoren virtueller Pfade in mindestens einem
Wort organisiert, das von einem Fehlererfassungs- und Korrekturcode
geschützt
wird, der es ermöglicht,
die einfachen Fehler zu erfassen und zu korrigieren, und die Mehrfachfehler
zu erfassen, wobei Zeitschlitze in der Verarbeitungszeit des Routing-Automaten
für Dienstbarkeits-Tasks
reserviert sind, darunter eine periodische Überprüfung der Integrität der Elemente
der Tabelle der lokalen Deskriptoren, ihre mögliche Korrektur oder ihre
Ungültigmachung
im Fall des Überschreitens
der Korrekturmöglichkeiten,
wobei die Ungültigmachung
eines lokalen Deskriptors darin besteht, ihm einen spezifischen
Wert zu verleihen, der für
seine Ungültigkeit
repräsentativ
ist.
-
Vorteilhafterweise
umfasst die Dienstbarkeits-Task, die der Überprüfung der Integrität der lokalen
Deskriptoren gewidmet ist, die Erfassung der ungültig gemachten lokalen Deskriptoren
und ihr Überschreiben
ausgehend von einem Archivierungsspeicher, der sich im betrachteten
Paketvermittler oder an einer anderen Stelle des Übertragungsnetzes
mit Paketvermittlung befindet.
-
Vorteilhafterweise
ist der für
eine Ungültigkeit
eines lokalen Deskriptors eines virtuellen Pfads repräsentative
spezifische Wert auf der Ebene des Diffusionsprofils angeordnet
und entspricht einem ungenutzten Diffusionsprofil, wie einem leeren
Diffusionsprofil.
-
Vorteilhafterweise
gehört
zu den Dienstbarkeits-Tasks, für
die Zeitschlitze in der Verarbeitungszeit des Routing-Automaten
reserviert sind, die Initialisierung der Tabelle der lokalen Deskriptoren
bei Betriebsbeginn des Paketvermittlers, wobei diese Initialisierung
durch ein Eintragen in den Arbeitsspeicher ausgehend von Daten erfolgt,
die aus einem Archivierungsspeicher entnommen werden, der im Paketvermittler
lokalisiert ist oder nicht.
-
Vorteilhafterweise
gehört
zu den Dienstbarkeits-Tasks, für
die Zeitschlitze in der Verarbeitungszeit des Routing-Automaten
reserviert sind, im Fall der Verwendung einer Zeitskala über einen
begrenzten Horizont eine Überprüfung der
Kommensurabilität,
bezüglich
der laufenden Zeit, der in den lokalen Deskriptoren vorhandenen
Daten, was zu einer expliziten Signalisierung der Daten führt, die
sich als inkommensurabel erweisen.
-
Vorteilhafterweise
sind die Diffusionsprofile, die in den lokalen Deskriptoren eines
virtuellen Pfads vorhanden sind, auf die Gestaltung des Übertragungsnetzes
mit Paketvermittlung fixiert, mit Ausnahme eines Bits, das für einen
möglichen
Ausgangsport reserviert ist, der Wartung zugeteilt ist, dessen Wert vom
Routing-Automat verändert
werden kann.
-
Vorteilhafterweise
liegt ein lokaler Deskriptor eines virtuellen Pfads in einem Standardformat
vor, das aus vier aufeinanderfolgenden Binärwörtern besteht: einem Wort von
Variablen und drei Wörtern
von Konstanten:
- – wobei das Wort von Variablen,
das im Wesentlichen der Datierung gewidmet ist, beim Auftreten jedes
neuen Datagramms, das dem betroffenen virtuellen Pfad zugewiesen
ist, überschrieben
wird und hauptsächlich
Variable bezüglich
des Empfangsdatums des letzten Datagramms, das zum betrachteten
Paketvermittler über
den gleichen betroffenen virtuellen Pfad gelangt ist, und bezüglich des
Phasenvoreilungsguthabens enthält,
von dem das neue aufgetretene Datagramm profitiert, wobei diese
zwei Informationen ggf. in Form einer einzigen Variablen zusammengefasst
werden können,
die das früheste
Datum für
eine zulässige Ankunft
des nächsten
Datagramms ausdrückt,
- – ein
erstes Wort von Konstanten bezüglich hauptsächlich des
maximalen Durchsatzes und des maximal zugelassenen Jitters für den betrachteten
virtuellen Pfad auf der Ebene des betroffenen Paketvermittlers und
der maximal genehmigten Länge
für das
Datagramm,
- – ein
zweites Wort von Konstanten mit einem Empfangsprofil, das die Eingangsports
des betroffenen Paketvermittlers verzeichnet, die berechtigt sind,
ein dem betrachteten virtuellen Pfad zugeteiltes Datagramm zu empfangen,
und
- – ein
drittes Wort von Konstanten eines Diffusionsprofils, das die Ausgangsports
des betroffenen Paketvermittlers verzeichnet, der ein dem betrachteten
virtuellen Pfad zugeteiltes Datagramm weiter befördern soll.
-
Vorteilhafterweise
liegt ein lokaler Deskriptor eines virtuellen Pfads entweder in
einem Standardformat oder in einem speziellen Format vor:
das
Standardformat, das aus vier aufeinanderfolgenden Binärwörtern besteht:
ein Wort von Variablen und drei Wörter von Konstanten, wobei
das hauptsächlich der
Datierung gewidmete Wort von Variablen beim Auftreten jedes neuen
Datagramms, das dem betroffenen virtuellen Pfad zugeteilt ist, überschrieben
wird und hauptsächliche
Variable bezüglich
des Empfangsdatums des letzten über
den gleichen betroffenen virtuellen Pfad zum betrachteten Paketvermittler gelangten
Datagramms und des Phasenvoreilungsguthabens enthält, von
dem das neue aufgetretene Datagramm profitiert, ein erstes Wort
von Spezifizierungs-Konstanten bezüglich hauptsächlich des
maximal zulässigen
Durchsatzes und des maximal zulässigen
Jitters für
den betrachteten virtuellen Pfad auf der Ebene des betroffenen Paketvermittlers
und der maximal genehmigten Länge
für das
Datagramm, ein zweites invariantes Wort von Empfangsprofil-Konstanten,
das die Eingangsports des betroffenen Paketvermittlers verzeichnet,
die berechtigt sind, ein dem betrachteten virtuellen Pfad zugewiesenes
Datagramm zu empfangen, und ein drittes Wort von Diffusionsprofil-Konstanten,
das die Ausgangsports des betroffenen Paketvermittlers verzeichnet,
die ein dem betrachteten virtuellen Pfad zugeteiltes Datagramm weiter
befördern
sollen, und das spezielle Format, das sich von dem Standardformat
dadurch unterscheidet, dass das zweite Empfangsprofilwort eine Definition
aufweist, die auf einen einzigen Port des Empfangsprofils reduziert
ist, und an der Stelle, die von der reduzierten Definition des Empfangsprofils frei
gelassen wird, einen Adressierungsindex aufweist, der es ermöglicht,
auf ein Wort von Datierungsvariablen zu zeigen, das mehreren virtuellen
Pfaden gemeinsam ist.
-
Vorteilhafterweise
sind in den zwei Formaten eines lokalen Deskriptors eines virtuellen
Pfads: das Standardformat und das spezielle Format, alle Wörter durch
einen Code der individuellen Erfassung und Fehlerkorrektur geschützt.
-
Vorteilhafterweise
sind in den zwei Formaten eines lokalen Deskriptors eines virtuellen
Pfads: das Standardformat und das spezielle Format, alle Wörter von
Konstanten individuell vor Fehlern geschützt, zuerst durch einen Hamming-Code,
der ihre Adresse im Arbeitspeicher und ihren Inhalt kombiniert,
und dann durch einen Erfassungs- und Fehlerkorrekturcode.
-
Vorteilhafterweise
umfasst in den zwei Formaten eines lokalen Deskriptors eines virtuellen Pfads:
das Standardformat und das spezielle Format, das Wort von Spezifikationskonstanten
eine Kennung des betroffenen Formattyps.
-
Vorteilhafterweise
umfasst in den zwei Formaten eines lokalen Deskriptors eines virtuellen Pfads:
das Standardformat und das spezielle Format, das Wort von Datierungsvariablen
ein Feld von Variablen, das für
die Registrierung der Zurückweisungssituationen
bestimmt ist.
-
Vorteilhafterweise
weist in den zwei Formaten eines lokalen Deskriptors eines virtuellen
Pfads: das Standardformat und das spezielle Format, das Wort von
Datierungsvariablen einen Marker auf, der es ermöglicht, dem vom Wort von Diffusionsprofil-Konstanten definierten
Diffusionsprofil einen Ausgangsport hinzuzufügen oder nicht, der den Wartungsoperationen
zugeteilt ist.
-
Vorteilhafterweise
umfasst in den zwei Formaten eines lokalen Deskriptors eines virtuellen Pfads:
das Standardformat und das spezielle Format, das Wort von Spezifikationskonstanten
ein Feld, das einer relativen Prioritätsinformation zwischen den
virtuellen Pfaden einer Tabelle von lokalen Deskriptoren gewidmet
ist.
-
Vorteilhafterweise
wird der spezifische Wert, der für
die Ungültigkeit
eines lokalen Deskriptors eines virtuellen Pfad im Standardformat
oder im speziellen Format repräsentativ
ist, durch eine Einsrückstellung
ihrer drei Wörter
von Konstanten erhalten.
-
Vorteilhafterweise
weist in Gegenwart einer Tabelle von lokalen Deskriptoren virtueller
Pfade, die dem Standardformat und dem speziellen Format entsprechen,
die wiederholte Folge von Zeitschlitzen, die den verschiedenen Eingangsports
individuell während
eines Verarbeitungszyklus des Routing-Automaten bewilligt werden,
für den
gleichen Eingangsport einen Zeitschlitz, der den Lesezugriffen auf
die Wörter
von Konstanten des adressierten lokalen Deskriptors und der Berücksichtigung
der in ihnen enthaltenen Information zugeteilt ist, dann einen Zeitschlitz
des Lesezugriffs auf ein Wort von Variablen entweder des adressierten
lokalen Deskriptors, im Fall eines Standardformats, oder ggf., im
Fall des speziellen Formats, eines anderen Deskriptors, der mit
Hilfe des Ansteuerungsindex ermittelt wird, zugeteilt ist, und der
Verwertung der in diesem Wort von Variablen enthaltenen Informationen,
und schließlich einen
Zeitschlitz des Überschreibens
zur Aktualisierung des gelesenen Worts von Variablen auf, Zeitschlitze,
die mit Zeitschlitzen vermischt werden können, die anderen Eingangsports
zugewiesen sind, um eine Multitask-Ausführung
der Elementaroperationen zu erlauben, die durch ein Routing impliziert werden,
und die globale Routing-Zeit der Gesamtheit der empfangenen Datagramme
zu reduzieren.
-
Vorteilhafterweise,
wenn der Paketvermittler einen zentralen Pufferspeicher aufweist,
der zyklisch von einer Adressen-Ablaufsteuerung schreibgetastet wird,
die ihn nach Art mehrerer Umlaufspeicher arbeiten lässt, einem
Umlaufspeicher pro Eingangsport, der dem durch diesen Port eingehenden
Informationsverkehr zugeteilt ist, liefert die Adressen-Ablaufsteuerung
ebenfalls die wiederholte Folge von Zeitschlitzen, die die Verarbeitungszeit
des Routing-Automaten zwischen den verschiedenen Eingangsports des
Paketvermittlers verteilt, so dass der Tastzyklus des Pufferspeichers
und die wiederholte Folge der Zeitschlitze der Verteilung der Verarbeitungszeit
des Routing-Automaten synchronisiert werden.
-
Weitere
Merkmale und Vorteile der Erfindung gehen aus der nachfolgenden
Beschreibung einer Ausführungsform
hervor, die als Beispiel angegeben wird. Diese Beschreibung bezieht
sich auf die Zeichnung. Es zeigen:
-
1 ein
Beispiel der Topologie eines Paketübertragungsnetzes,
-
2 ein
Beispiel einer Architektur eines Paketvermittlers,
-
die 3 und 4 Formate,
in denen für das
Routing nützliche
Informationseinheiten gespeichert sind, Einheiten, die als lokale
Deskriptoren eines virtuellen Pfads bezeichnet werden,
-
die 5a bis 5d Zeitdiagramme,
die den Ablauf von Operationen veranschaulichen, die durchgeführt werden,
um die Überprüfung zu
ermöglichen,
dass der maximal genehmigte Durchsatz für einen virtuellen Pfad nicht überschritten
wird, und
-
6 ein
Ablaufbeispiel, das verwendbar ist, um den Betrieb eines Automaten
zu verwalten, der das Routen der Pakete oder Datagramme auf der Ebene
eines Knotens des Übertragungsnetzes
gewährleistet.
-
1 zeigt
verschiedene Gruppen von Geräten 10 bis 18,
die untereinander über
ein Übertragungsnetz
mit Paketvermittlung 20 kommunizieren. Die Gruppen von
Geräten 10 bis 18 haben
eine unterschiedliche Größe und sind
geographisch über eine
Zone verstreut, die vom Übertragungsnetz
mit Paketvermittlung 20 abgedeckt wird. Das Übertragungsnetz
mit Paketvermittlung 20 wird durch eine Verknüpfung von
Verbindungsknoten oder Paketvermittlern 20, die durch Kreise
dargestellt werden, und von physikalischen Übertragungsverbindungen dargestellt,
die von Geradensegmenten dargestellt werden, die die Paketvermittler
miteinander und mit den Geräten
verbinden, schematisiert. Jedes von einem Rechteck dargestellte
Gerät ist
an das Übertragungsnetz
mit Paketvermittlung 20 auf der Ebene eines oder mehrerer
Paketvermittler, die sich in der Nähe befinden, über ein
nicht dargestelltes spezialisiertes Endgerät und eine oder mehrere physikalische Übertragungsleitungen
angeschlossen.
-
Für ihre Handhabung
innerhalb eines Paketübertragungsnetzes
erfahren die von den Geräten ausgetauschten
Mitteilungen zwei aufeinanderfolgende Formatierungen: zunächst eine
Digitalisierung, die ihnen das Aussehen einer Folge von Binärdaten verleiht,
gefolgt von einer Verpackung der erhaltenen Folge von Binärdaten in
Form eines oder mehrerer aufeinander folgender Pakete oder Datagramme,
die an die Routing-Verarbeitungen
angepasst sind, die innerhalb der Paketvermittler durchgeführt werden,
und dann eine Formatierung der Datagramme in elektrische oder optische Übertragungssignale
für ihre
Weiterleitungen über
die physikalischen Verbindungsleitungen.
-
Die
Datagramme bestehen aus einer Folge von Mitteilungs-Binärdaten,
der eine Folge von Dienst-Binärdaten vorausgeht,
die für
ihr Routen innerhalb der durchquerten Paketvermittler nützliche Informationen
enthalten. Sie beachten ein besonderes Format oder Protokoll, das
an die Eigenschaften der kombinatorischen und/oder sequentiellen
logischen Schaltungen angepasst ist, die die Weiterleitungen innerhalb
der Paketvermittler durchführen.
-
Die
elektrischen oder optischen Signale, die zur Weiterleitung der Datagramme
auf den physikalischen Übertragungs-Verbindungsleitungen
verwendet werden, die die Paketvermittler miteinander und mit den
Geräten
verbinden, sind an die physikalischen Eigenschaften der verwendeten
Verbindungen angepasst.
-
An
den Enden der Übertragungsleitungen, unabhängig davon,
ob auf der Ebene der Endgeräte, die
die Geräte
an das Netz anschließen,
oder auf der Ebene der Eingangs-Ausgangs-Ports der Paketvermittler,
findet man Demodulations- und Modulationsschaltungen, die die Umwandlung
eines über
eine physikalische Verbindung empfangenen Übertragungssignals in sein
entsprechendes Datagramm, und umgekehrt die Umwandlung eines auf
der Ebene eines Geräteterminals
oder eines Paketvermittlers manipulierten Datagramms in ein Übertragungssignal
gewährleisten,
das an die physikalischen Übertragungsverbindungen
angepasst ist.
-
Ein
auf der Ebene eines Eingangs-Ausgangs-Ports eines Paketvermittlers
empfangenes und demoduliertes Datagramm muss innerhalb dieses Paketvermittlers
zu einem oder mehreren anderen Eingangs-Ausgangs-Ports geroutet
werden, um auf einer oder mehreren anderen physikalischen Übertragungsverbindungen
wieder ausgesendet zu werden, die direkt an diesen Paketvermittler
angeschlossen sind, um es seinem Endziel oder seinen Endzielen anzunähern. Dieser
Routing genannte Vorgang ist die Haupt-Task, die von einem Paketvermittler übernommen
wird. Ihre Ausführung
kann eine variable Zeit in Anspruch nehmen, die von den Verstopfungen
der Ausgangsports zur Weitersendung abhängt, da mehrere Datagramme
gleichzeitig von dem gleichen Paketvermittler auf mehreren seiner Eingangsports
empfangen werden können
und für ihre
Weitersendungen auf den gleichen Ausgangsport geroutet werden müssen, was
einen Stau auf der Ebene des Ausgangsports bewirken kann, der eine vorübergehende
Speicherung der eingehenden Datenverkehre und eine Warteschlangenverwaltung
auf der Ebene der Ausgangsports bedingt, um einen Verlust von Datagrammen
zu vermeiden.
-
2 stellt
eine mögliche
Architektur für
einen Paketvermittler 1 dar. Dieser kommuniziert über Eingangs-Ausgangs-Ports
e/s 21, 22, 23 mit anderen Paketvermittlern
oder mit Geräten,
die über
ein- oder zweidirektionale physikalische Übertragungsverbindungen an
sein Netz angeschlossen sind. In der Figur sind drei Eingangs-Ausgangs-Ports
e/s 21, 22, 23 dargestellt, aber ihre
Zahl ist nicht begrenzt. Diese Zahl ist an die Zahl von Anschlüssen angepasst,
die für
den betrachteten Paketvermittler vorgesehen sind, wobei ein Eingangs-Ausgangs-Port
die Schnittstelle mit einer zweidirektionalen physikalischen Übertragungsverbindung
oder mit zwei eindirektionalen physikalischen Übertragungsverbindungen gewährleistet,
von denen eine auf der Sendeseite und die andere auf der Empfangsseite
verwendet wird.
-
Im
dargestellten Beispiel gewährleistet
der Eingangs-Ausgangs-Port
e/s 21 die Schnittstelle mit einer zweidirektionalen physikalischen Übertragungsverbindung,
und die Eingangs-Ausgangs-Ports 22 und 23 die
Schnittstelle mit zwei eindirektionalen physikalischen Übertragungsverbindungen,
von denen eine auf der Empfangsseite und die andere auf der Sendeseite
verwendet wird. Das Gewährleisten der
Schnittstelle besteht darin, die Modulations- und Demodulations-Tasks
und eine Task der Verwaltung einer Liste von Paketen durchzuführen, die
auf eine Weitersendung warten. Die Modulationstask besteht darin,
die weiterzusendenden Pakete in die Form eines Übertragungssignals mit den
physikalischen Eigenschaften zu bringen, die an diejenigen der Übertragungsverbindung
angepasst sind, die beim Senden verwendet wird und zum betroffenen
Eingangs-Ausgangs-Port führt.
Die Demodulationstask besteht darin, die Pakete zu entnehmen, die
in den Übertragungssignalen
enthalten sind, die auf der physikalischen Übertragungsverbindung empfangen werden,
die auf der Empfangsseite verwendet wird und zum betroffenen Eingangs-Ausgangs-Port
e/s führt.
Die Wartelisten-Verwaltungstask besteht darin, die weiterzusendenden
Pakete eines nach dem anderen in eine Schlange zu bringen, wenn
sie mit zu schneller Taktfolge hinsichtlich des Durchsatzes der beim
Weitersenden verwendeten physikalischen Übertragungsverbindung ankommen.
-
Ein
Eingangs-Ausgangs-Port e/s ist mit den inneren Verarbeitungsschaltungen
des Paketvermittlers, den er bestückt, über einen Datenempfangskanal,
einen Datensendekanal und mehrere Kontrollports verbunden. Über den
Datenempfangskanal vr stellt er seinem Paketvermittler den eingehenden Verkehr
von Binärdaten
zur Verfügung,
der über
die physikalische Übertragungsverbindung,
die er kontrolliert, zum Paketvermittler gelangt. Der Datensendekanal
ve ermöglicht
ihm, die Datagramme zu empfangen, die er weitersenden soll und die
von anderen inneren Schaltungen des Paketvermittlers kommen. Die
Kontrollports, darunter ein Routing-Anfrageport rr, ein Zuteilungsport
von Paketen at und ein Anforderungsport für zu sendende Pakete re, dienen
für die Verwaltungen
des Empfangs der Pakete, des Weitersendens der Pakete und der Warteschlange
der weiterzusendenden Pakete.
-
Außer seinen
Eingangs-Ausgangs-Ports e/s 21, 22, 23 weist
der Paketvermittler auf: einen Pufferspeicher 30, der verwendet
wird, um über
einen gewissen Zeitraum die Verkehre von eingehenden Daten zu speichern,
eine Ablaufsteuerung 40, die die Adressierung des Pufferspeichers 30 und
die Zugriffe auf diesen verwaltet, einen Routing-Automat 50 und einen
Anweisungsspeicher 60, aus dem der Routing-Automat 50 seine
Weisungen schöpft.
-
Der
Pufferspeicher 30 ist eine Sammlung von Umlaufspeichern,
deren Vorhandensein durch die Verpflichtung, Wartelisten auf der
Ebene der Eingangs-Ausgangs-Ports
e/s zum Weitersenden der Pakete zu verwalten, und in geringerem
Maße durch die
Verarbeitungszeit der Routing-Anfragen bedingt wird. Jeder Umlaufspeicher
ist für
das Schreiben an einem bestimmten eingehenden Datenverkehr, also an
einem bestimmten Eingangs-Ausgangs-Port e/s reserviert, kann aber
in gleicher Weise von allen Eingangs-Ausgangs-Ports e/s gelesen werden.
-
Der
Pufferspeicher 30 ist ein Arbeitsspeicher, der aus einer
Einheit von Registerbänken
mit Längen gleich
derjenigen der Binärwörter besteht,
die von den Eingangs-Ausgangs-Ports 21, 22, 23 geliefert werden,
eine Länge,
die in Abhängigkeit
von der Verarbeitungskapazität,
in einer Operation, der digitalen Schaltungen abhängt, die
im Paketvermittler verwendet werden. Diese Einheit von Registerbänken wird
in ebenso viele getrennte Gruppen aufgeteilt, wie es Eingangs-Ausgangs-Ports
gibt, wobei jede Gruppe im Schreibbetrieb einem besonderen Eingangs-Ausgangs-Port
zugeteilt ist, der zyklisch mit einer ausreichenden Geschwindigkeit
schreibgetastet wird, um den binären
Durchsatz des Datenverkehrs auszuhalten, dem er zugeteilt ist, und
auf Anfrage durch die Einheit der Eingangs-Ausgangs-Ports gelesen
wird.
-
Die
Ablaufsteuerung 40 gewährleistet
die Adressierung des Pufferspeichers 30 derart, dass er wie
eine Einheit von Umlaufspeichern arbeitet. Hierzu teilt sie jedem
Eingangs-Ausgangs-Port des Paketvermittlers einen invarianten periodischen Schreibzugriffsrahmen
auf eine aufgezwungene Gruppe von Registerbänken des Pufferspeichers und einen
periodischen Lesezugriffsrahmen auf eine wählbare Gruppe von Registerbänken zu,
in der gleichen Tastordnung wie der beim Schreiben verwendet periodische
Rahmen, aber mit einer Phasenverzögerung, die der Wahl des Eingangs-Ausgangs-Port überlassen
wird.
-
Der
Routing-Automat 50 ist eine Schaltung mit einer kombinatorischen
und/oder sequentiellen Logik, zum Beispiel mit Mikroprozessor, die
die von den verschiedenen Eingangs-Ausgangs-Ports e/s 21, 22, 23 gesendeten
Routing-Anfragen verarbeitet, um daraus die Routing-Profile zu entnehmen,
die jedem Datagramm zugeteilt sind, das gerade vom Paketvermittler
empfangen wird, und ausgehend von diesen Routing- Profilen Anweisungen oder Diffusionsprofile
zu erzeugen, die die Eingangs-Ausgangs-Ports e/s des Paketvermittlers
verzeichnen, die die Datagramme weitersenden sollen.
-
Der
Anweisungsspeicher 60 enthält die notwendigen Informationen
für den
Routing-Automat, um seine Task auszuführen. Wie beim. Pufferspeicher
wird seine Adressierung von der Ablaufsteuerung 40 verwaltet.
-
Der
von einem Datagramm innerhalb des Netzes genommene Weg, um von dem
Gerät,
das es gesendet hat, zu den Zielgeräten zu gelangen, wird durch
die Konfigurationen der Paketvermittler in den Zeitpunkten definiert,
in denen es sie durchquert. Dieser Weg wird virtueller Pfad genannt.
Er wird A priori bei der Gestaltung des Netzes in Abhängigkeit von
den Lokalisierungen des Sendegeräts
und des oder der Zielgeräte
definiert. Allgemein kann ein virtueller Pfad, der innerhalb eines Übertragungsnetzes mit
Paketvermittlung ein Sendegerät
mit einem oder mehreren Zielgeräten
verbindet, einen Weg haben, dessen Verlauf sich langsam im Lauf
der Zeit in Abhängigkeit
von den Anweisungen eines Verkehrsregelungsorgans entwickelt, das
versucht, die Aktivitätsgrade
der verschiedenen Paketvermittler des Netzes auszugleichen. Unabhängig davon,
ob die Verläufe
der virtuellen Pfade fixiert sind oder nicht, können sie in einer Zeitskala
als invariant angesehen werden, die sehr viel größer ist als diejenige der Weiterleitungszeit
eines Datagramms. Das ermöglicht es,
lokal eineindeutig auf der Ebene eines Paketvermittlers jedem virtuellen
Pfad, der durch diesen Paketvermittler geht, ein vordefiniertes
Diffusionsprofil zu verleihen, das alle Ausgangsports verzeichnet,
die die Datagramme weitersenden sollen, so dass es die Haupttask
eines Routing-Automaten ist, ausgehend von den Dienstdaten, die
in diesem Datagramm enthalten sind, den virtuellen Zugehörigkeitspfad
des Datagramms zu bestimmen, das gerade geroutet wird, und in einem
lokalen Anweisungsspeicher (60, 2) das entsprechende
Diffusionsprofil zu suchen.
-
Da
die Betonung auf die Sicherheit bezüglich der Garantie und der
Weiterleitungsdauer der Informationen innerhalb des Übertragungsnetzes
mit Paketvermittlung gelegt wird, werden auf der Ebene des Netzes
selbst und seiner Paketvermittler oder bestimmter von ihnen verschiedene
Vorsichtsmaßnahmen
ergriffen, um jede Gefahr der Sättigung
der von den Informationen durch das Netz hindurch genommenen Pfade
zu unterdrücken,
die den Verlust von Datagrammen oder inakzeptable Verzögerungen
bei ihren Übertragungen
bewirken kann.
-
Auf
der Ebene des Netzes selbst sind die Verläufe der virtuellen Pfade fixiert,
um das Netz deterministisch zu gestalten und die Vorab-Analyse seines
Verhaltens in jeder Situation, auf der seine Dimensionierung beruht,
zu erleichtern, die das vorhersehbare Maximum der Aktivität des Netzes
in einer normalen Betriebssituation berücksichtigen und Minimum-Durchsätze für die verschiedenen
es durchquerenden Pfade garantieren muss, und dies unabhängig von
den Aktivitäten
der anderen virtuellen Pfade.
-
Auf
der Ebene der Paketvermittler oder mancher von ihnen werden die
Integritäten,
die Längen ihrer
Verweildauern und ihre Zugehörigkeit
zum angekündigten
virtuellen Pfad der durchgehenden Datagramme überprüft, wobei jedes Datagramm,
das den Überprüfungen nicht
standhält,
zurückgewiesen wird,
während
die lokalen Durchsätze
der virtuellen Pfade überwacht
und durch eine autoritäre
Zurückweisung
der überzähligen Datagramme
auf die zugelassenen Werte begrenzt werden.
-
Die Überprüfung der
Integrität
eines durch einen Paketvermittler gehenden Datagramms erfolgt auf
der Ebene des Eingangsports, über
den es zum Paketvermittler kommt. Diese Überprüfung erfolgt allgemein mit
Hilfe eines zyklischen redundanten Codes (CRC), indem der Rest dieses
Codes, der auf dem durchgehenden Datagramm erstellt wird, mit dem
Wert dieses Rests verglichen wird, der beim Senden dieses Datagramms
erstellt und mit ihm in seinen Dienstdaten übertragen wurde.
-
Die
anderen Sicherheitsmaßnahmen
auf der Ebene eines Paketvermittlers werden vom Routing-Automat
angewendet, der sie zusätzlich
zu seiner Routing-Task übernimmt.
Um diese Übernahme zu
vereinfachen, wird vorgeschlagen, im Anweisungsspeicher 60 keine
einfache Tabelle der Diffusionsprofile, die den durch den Paketvermittler
gehenden virtuellen Pfaden zugeteilt sind, sondern eine Tabelle
von lokalen Deskriptoren virtueller Pfade zu speichern, die zusätzlich zu
den Diffusionsprofilen, die den durch den Paketvermittler gehenden
virtuellen Pfaden zugeteilt sind, Informationen enthalten, die für die Ausführung dieser
Sicherheitsmaßnahmen
nützlich
sind. Diese lokalen Deskriptoren eines virtuellen Pfads können ein
Standardformat oder ein spezielles Format haben.
-
Ein
lokaler Deskriptor eines virtuellen Pfads im Standardformat enthält Variable
und Konstanten, die auf der Ebene eines Paketvermittlers den betroffenen
virtuellen Pfad individuell betrachtet differenzieren, unabhängig von
den anderen virtuellen Pfaden, die durch den gleichen Paketvermittler
gehen, während
ein lokaler Deskriptor eines virtuellen Pfads im speziellen Format
eine Teilzusammenlegung mehrerer virtueller Pfade aus der Sicht
der Sicherheitsmaßnahmen
erlaubt, indem er ihnen gemeinsame Variable zuteilt.
-
Die 3 und 4 zeigen
ein Beispiel dieser Formate lokaler Deskriptoren eines virtuellen Pfads.
In diesem Beispiel bestehen die lokalen Deskriptoren eines virtuellen
Pfads je aus vier aufeinander folgenden Binärwörtern mit 36 Bits, von denen die
Basisadresse im Anweisungsspeicher 60 den betroffenen virtuellen
Pfad identifiziert. Die Basisadressen der lokalen Deskriptoren eines
gegebenen virtuellen Pfads können
in den Anweisungsspeichern der verschiedenen Paketvermittler die
gleichen sein, wobei der einzige behaltene Wert als Kennung für den virtuellen
Pfad im ganzen Netz dient und in den Dienstdaten der Datagramme
wieder aufgenommen wird, um ihre virtuellen Zuteilungspfade zu ermitteln. Diese
Identität
der Adressen, auf der Ebene aller Paketvermittler, der lokalen Deskriptoren,
die den gleichen virtuellen Pfad betreffen, ermöglicht es, für die Paketvermittler
eine Struktur zu verwenden, die von ihren Lokalisierungen innerhalb
des Netzes unabhängig
ist, und diese Lokalisierung nur auf einer Programmierebene zu verwenden.
-
Wie
man in 3 sehen kann, weist ein lokaler Deskriptor eines
virtuellen Pfads im Standardformat ein erstes Binärwort 100 mit
sechsunddreißig Bits
auf, das aus einem Feld von Variablen und drei Binärwörtern 110, 120 und 130 von
sechsunddreißig Bits
besteht, die zusammen ein Feld von Konstanten bilden.
-
Das
Feld von Variablen des ersten Binärworts 100, gezeigt
auf weißem
Hintergrund, enthält verschiedene
Variablen, darunter:
-
- – das
Datum 101 des letzten im betrachteten Paketvermittler angekommenen
Datagramms, dem der betroffene virtuelle Pfad zugeteilt ist, der
in seinen Dienstdaten erscheint, wobei dieses Datum mit sechzehn
Bits in einem ersten Teil des Felds von Variablen codiert ist, das
mit dem englischen Begriff "Last
Arrival Date" gekennzeichnet ist
und dazu dient, das früheste
Ankunftsdatum des nächsten
Datagramms zu schätzen,
das dem betroffenen virtuellen Pfad zugeteilt ist, in Abhängigkeit
vom maximal genehmigten Datendurchsatz für den betroffenen virtuellen
Pfad,
- – ein
Phasenvoreilungsguthabenwert 102, der ein Maß der zugelassenen
Phasenvoreilungstoleranz bezüglich
des geschätzten
Datums für
das Ankunftsdatum des nächsten
Datagramms angibt, das dem betroffenen virtuellen Pfad zugeteilt
ist, eine Toleranz, die durch das zugelassenen Jitter für den betroffenen
virtuellen Pfad auf der Ebene des betrachteten Paketvermittlers
berechtigt ist, wobei dieser Phasenvoreilungsguthabenwert mit neun
Bits in einem zweiten Teil des Felds von Variablen codiert ist,
der durch den englischen Begriff "Account Value" gekennzeichnet ist, (die Felder 101 und 102 können in
Form eines einzigen Felds zusammengefasst werden, das das früheste Datum
der Ankunft des nächsten
Datagramms ausdrückt.
Dies hat den Vorteil, über
mehr Bits zu verfügen,
um diese einzige Variable zu codieren, und folglich eine genauere
Codierung zu erlauben),
- – eine
Zählung 103 von
Ausnahmesituationen (Zurückweisung
eines Datagramms, zum Beispiel), die von den Datagrammen angetroffen werden,
die durch den betrachteten und dem betroffenen virtuellen Pfad zugeteilten
Paketvermittler gehen, wobei diese Zählung von Ausnahmesituationen
mit drei Bits in einem dritten Teil des Felds von Variablen codiert
ist, der mit dem Buchstaben C gekennzeichnet ist,
- – ein
Marker-Bit 104, das die Hinzufügung oder nicht eines Test-Ausgangsports
in das Diffusionsprofil des betroffenen virtuellen Pfads anzeigt,
wobei dieses Marker-Bit einen vierten Teil des Felds von Variablen
belegt, der mit dem Buchstaben M gekennzeichnet ist, und
- – ein
Rest 105 eines Erfassungs- und Fehlerkorrekturcodes, der
im ersten Binärwort 100 beim Senden
des Datagramms erstellt wird, wobei dieser Rest eines Erfassungscodes
mit sieben Bits in einem fünften
und letzten Teil des Felds von Variablen codiert ist, der mit den
Buchstaben EDC gekennzeichnet ist.
-
Das
erste 110 der drei Binärwörter, die
dem Feld von Konstanten gewidmet ist, enthält verschiedene Konstanten,
darunter:
- – eine
Formatkennung 111, die anzeigt, ob man sich in Gegenwart
eines Standardformats oder eines speziellen Formats befindet, wobei
diese Kennung mit einem Bit und auf dem Pegel Null für den laufenden
Fall der Beschreibung des Standardformats in einem ersten Teil des
Binärworts 110 codiert
ist, der mit dem Kürzel
A0 gekennzeichnet ist,
- – ein
Prioritätswert 112,
der eine Prioritätsskala liefert,
die die relativen Größen der
virtuellen Pfade präzisiert,
die durch den betrachteten Paketvermittler gehen, und der zur Organisation
der Warteschlangen von weiterzusendenden Datagrammen dient, die
sich auf der Ebene der Ausgangsports des betrachteten Paketvermittlers
befinden, wobei dieser Prioritätswert
mit drei Bits in einem zweiten Teil des Binärworts 110 codiert
ist, der mit dem Buchstaben P gekennzeichnet ist,
- – ein
maximaler zugewiesener Bandbreitenwert 113, der zum Beispiel
der maximal zulässigen
Anzahl pro Zeiteinheit von Datagrammen entspricht, von denen angenommen
wird, dass sie maximale Länge
haben, die dem betrachteten virtuellen Pfad zugeteilt sind, wobei
dieser maximale zugewiesene Bandbreitenwert mit drei Bits in einem dritten
Teil des Binärworts 110 codiert
ist, der mit dem Kürzel
BAG gekennzeichnet ist,
- – ein
tolerierter Jitterwert 114, der dem maximal zulässigen Jitter
für den
betroffenen virtuellen Pfad entspricht, betrachtet auf der Ebene
des betroffenen Paketvermittlers, wobei dieser maximale Jitterwert
mit sieben Bits in einem vierten Teil des Binärworts 110 codiert
ist, der mit dem englischen Begriff "BAG jitter" gekennzeichnet ist,
- – eine
tolerierte maximale Länge 115 für die Datagramme,
die dem betrachteten virtuellen Pfad zugeteilt sind, wobei diese
maximale Datagrammlänge
mit elf Bits in einem fünften
Teil des Binärworts 110 codiert
ist, der mit der englischen Abkürzung "Max. Length" gekennzeichnet ist,
- – ein
Rest eines Hamming-Codes 116, der die Daten des Binärworts 110 in
Kombination mit der Adresse des lokalen Deskriptors eines betrachteten
virtuellen Pfads verriegelt, wobei dieser Rest eines Hamming-Codes
mit vier Bits in einem sechsten Teil des Binärworts 110 codiert
ist, der mit dem Kürzel
HC1 gekennzeichnet ist, und
- – ein
Rest eines Erfassungs- und Fehlerkorrekturcodes 117, der
an die sechs ersten Teile des Binärworts 110 angelegt
wird, wobei dieser Rest eines Erfassungs- und Fehlerkorrekturcodes
mit sieben Bits in einem siebten Teil des Binärworts 110 codiert
ist, der mit dem Kürzel
EDC gekennzeichnet ist.
-
Das
zweite 120 der drei dem Feld von Konstanten gewidmeten
Binärwörter enthält drei
Konstanten:
- – eine erste Konstante, die
aus dem Empfangsprofil 121 besteht, das auf der Ebene des
betrachteten Paketvermittlers dem betroffenen virtuellen Pfad zugeteilt
ist, wobei dieses Empfangsprofil in einem ersten Teil des Binärworts 120 mit
fünfundzwanzig
Bits codiert ist, der mit dem englischen Begriff "Reception Profil" gekennzeichnet ist,
- – eine
zweite Konstante, die aus einem Rest eines Hamming-Codes 122 besteht,
der die Daten des Binärworts 120 verriegelt,
wobei dieser Rest eines Hamming-Codes in einem zweiten Teil des
Binärworts 120 mit
vier Bits codiert ist, der mit dem Kürzel HC1 gekennzeichnet ist,
und
- – eine
dritte Konstante, die aus einem Rest eines Erfassungs- und Fehlerkorrekturcodes 123 besteht,
der an die zwei ersten Teile des Binärworts 120 angelegt
wird, wobei dieser Rest eines Erfassungs- und Fehlerkorrekturcodes in einem dritten Teil
des Binärworts 120 mit
sieben Bits codiert ist, der mit dem Kürzel EDC gekennzeichnet ist.
-
Das
dritte und letzte 130 der drei Binärwörter, die dem Feld von Konstanten
gewidmet sind, enthält drei
Konstanten:
- – eine erste Konstante, die
aus dem Diffusionsprofil 131 besteht, das auf der Ebene
des betrachteten Paketvermittlers dem betroffenen virtuellen Pfad
zugeteilt ist, wobei dieses Empfangsprofil in einem ersten Teil
des Binärworts 130 mit
fünfundzwanzig
Bits codiert ist, der mit dem englischen Begriff "Diffusion Profile" gekennzeichnet ist,
- – eine
zweite Konstante, die aus einem Rest eines Hamming-Codes 132 besteht,
der die Daten des Binärworts 130 in
Kombination mit der Adresse des lokalen Deskriptors eines betrachteten
virtuellen Pfads verriegelt, wobei dieser Rest eines Hamming-Codes in einem zweiten
Teil des Binärworts 130 mit
vier Bits codiert ist, der mit dem Kürzel HC2 gekennzeichnet ist,
und
- – eine
dritte Konstante, die aus einem Rest eines Erfassungs- und Fehlerkorrekturcodes 133 besteht,
der an die zwei ersten Teile des Binärworts 130 angelegt
wird, wobei dieser Rest eines Erfassungs- und Fehlerkorrekturcodes in einem dritten Teil
des Binärworts 130 mit
sieben Bits codiert ist, der mit dem Kürzel EDC gekennzeichnet ist.
-
Wie
man in 4 sehen kann, weist ein lokaler Deskriptor eines
virtuellen Pfads im speziellen Format wie ein lokaler Deskriptor
eines virtuellen Pfads im Standardformat ein erstes Binärwort 200 mit sechsunddreißig Bits
auf, das aus einem Feld von Variablen und drei Binärwörtern 210, 220 und 230 mit sechsunddreißig Bits
besteht, die zusammen ein Feld von Konstanten bilden.
-
Sein
erstes Binärwort 200,
das dem Feld von Variablen gewidmet ist, sowie das erste 210 und
das dritte 230 seiner drei folgenden Binärwörter, die
dem Feld von Konstanten gewidmet sind, haben den gleichen Aufbau
wie die Binärwörter 100, 110, 140,
die ihnen im Standardformat entsprechen, abgesehen davon, dass die
Formatkennung 211, die sich im ersten Teil des zweiten
Binärworts 210 befindet,
auf der Ebene eine Charakteristik für das spezielle Format ist.
-
Der
Hauptunterschied zwischen Standardformat und speziellem Format liegt
in der Ebene des dritten Binärworts 220,
bei dem die aus dem mit fünfundzwanzig
Bits codierten Empfangsprofil bestehende Konstante ersetzt ist durch:
- – eine
Konstante 221, genannt "Empfangskanal", die aus einem reduzierten
Empfangsprofil besteht, das nur einen einzigen Eingangsport anzeigt,
der für
ein dem betroffenen virtuellen Pfad zugeteiltes Datagramm genehmigt
ist, wobei dieser Empfangskanal in einem ersten Teil des Binärworts 220 mit
fünf Bits
codiert ist, der mit dem englischen Ausdruck "Receive Channel" markiert ist,
- – vier
Stopfbits 222, und
- – eine
Konstante 223, genannt "Adressierungsindex", die aus einem Adressierungsindex
besteht, der im Anweisungsspeicher 60 auf das Feld von Variablen
(erstes Binärwort)
eines anderen lokalen Deskriptors eines virtuellen Pfads zeigt.
-
Der
Routing-Automat verwendet die Reste eines Hamming-Codes und eines Fehlererfassungscodes
EDC bei jedem seiner Lesevorgänge,
in dem Anweisungsspeicher, eines oder mehrerer Binärwörter eines
lokalen Deskriptors, um sich der Integrität der entnommenen Informationen
zu vergewissern, ehe er sie verwendet, und aktualisiert sie jedes
Mal, wenn er eine Eintragung in den Anweisungsspeicher vornimmt.
-
Wenn
er ein Datagramm verarbeiten soll, das an einem Eingangsport seines
Paketvermittlers empfangen wurde, beginnt der Routing-Automat 50 damit,
aus den Dienstdaten des Datagramms oder der das Datagramm betreffenden
Routing-Anfrage, die vom Eingangsport gemacht wird, der es empfangen
hat und der seine Integrität
festgestellt hat, die Identität
des virtuellen Pfads, dem das Datagramm bei seinem Senden zugeteilt
wurde, zu entnehmen. Wenn diese Identität erfasst ist, bedient er sich
ihrer, um im Anweisungsspeicher 60 die Felder von Variablen
und von Kostanten des lokalen Deskriptors zu lesen, der dem betroffenen
virtuellen Pfad zugeteilt ist. Dann führt er mit Hilfe der gelesenen
variablen und Konstanten die Überprüfungen der
Entsprechung des Datagramms mit den Eigenschaften des virtuellen
Pfads, dem es zugeteilt ist, durch, um das Datagramm zurückzuweisen,
wenn die Überprüfungen nicht
schlüssig
sind, oder das Feld von Variablen des abgefragten lokalen Deskriptors
zu aktualisieren und das Datagramm innerhalb des Paketvermittlers
zu routen, wenn die Überprüfungen schlüssig sind.
-
Um
die Entsprechung eines Datagramms, das durch seinen Paketvermittler
geht, mit dem diesem Datagramm bei seinem Aussenden zugeteilten virtuellen
Pfad zu überprüfen, führt der
programmierbare Automat 50, nachdem er im Anweisungsspeicher 60 seines
Paketvermittlers den lokalen Deskriptor eines virtuellen Pfads gelesen
hat, der dem virtuellen Zuteilungspfad des Datagramms entspricht, drei
verschiedene Operationen durch. Während zwei ersten Operationen überprüft er die
Zugehörigkeit des
Eingangsports des Paketvermittlers, der für das Datagramm als Zugriff
zur Strecke des virtuellen Zuteilungspfads gedient hat, und die
Beachtung der maximalen Länge,
die von seinem virtuellen Zuteilungspfad zugelassen wird, durch
das Datagramm. während
der dritten Operation vergewissert er sich, dass die Übertragung
des durchgehenden Datagramms bis zum Paketvermittler auf der Ebene
des Paketvermittlers, für
den virtuellen Pfad, dem das Datagramm zugeteilt ist, keine Überschreitung
des genehmigten maximalen Durchsatzes impliziert hat.
-
Die Überprüfung der
Zugehörigkeit
des Eingangsports, der dem Datagramm gedient hat, um in den Paketvermittler
einzudringen, zu der Strecke, die für den dem Datagramm zugeteilten
virtuellen Pfad bei seinem Senden durch das Übertragungsnetz genehmigt ist,
besteht für
den Routing-Automat darin, sich zu vergewissern, dass dieser Eingangsport
im Empfangsprofil 121 des gelesenen lokalen Deskriptors
verzeichnet ist, wenn dieser im Standardformat ist, oder dem Empfangskanal 221 des
gelesenen lokalen Deskriptors entspricht, wenn dieser im speziellen
Format ist.
-
Die Überprüfung der
Beachtung durch das Datagramm, das gerade im Paketvermittler geroutet wird,
der vom ihm zugeteilten virtuellen Pfad maximal zugelassenen Länge besteht
für den
Routing-Automat darin, die effektive Länge des Datagramms mit der
Anweisung maximaler Länge 115 zu
vergleichen, die sich im ersten Wort 110, 210 eines
Felds von Konstanten des gelesenen lokalen Deskriptors befindet.
-
Die Überprüfung der
Frische des Datagramms, das gerade im Paketvermittler geroutet wird,
besteht darin, die Zeit, seit der es sich im Paketvermittler aufhält, durch
Bewertung des Zeitintervalls, der das laufende Datum von seinem
Empfangsdatum auf der Ebene des Eingangsports trennt, über den
es zum Paketvermittler gelangt ist, und durch Vergleich dieser Verweilzeit
mit einem Schwellwert zu schätzen, über den
hinaus das Datagramm zurückgewiesen
wird. Der Schwellwert wird, wie die Kapazität des Pufferspeichers, bei
der Dimensionierung des Paketübertragungsnetzes
festgelegt. Auf der Ebene des Paketvermittlers ermöglicht diese
Frischeüberprüfung, sich
zu vergewissern, dass das Datagramm im Pufferspeicher, der als Umlaufspeicher
arbeitet, kein Überschreiben
durch neuere Datagramme erfahren hat.
-
Die Überprüfung der
Nichtüberschreitung, beim
Zugriff des Datagramms auf den Paketvermittler, des maximal genehmigten
Durchsatzes für
den dem Datagramm bei seinem Senden zugeteilten virtuellen Pfad
besteht für
den Routing-Automat darin, das Zeitintervall zu bestimmen, das den
Zeitpunkt des Empfangs des Datagramms von dem Zeitpunkt des Empfangs
des Datagramms trennt, das ihm auf dem gleichen virtuellen Pfad
direkt vorausgeht, und zu schätzen,
ob dieses Trennzeitintervall mit dem maximal für den betrachteten virtuellen
Pfad zulässigen
Durchsatz kompatibel ist, dies unter Berücksichtigung einer mittleren
Jitter-Toleranz
und des tatsächlich
festgestellten augenblicklichen Jitters. Alternativ, in dem Fall,
in dem man gewählt
hat, eine einzige Variable zu codieren (das früheste Ankunftsdatum des nächsten Datagramms),
genügt
es, das laufende Datum mit dem im entsprechenden variablen Feld
gespeicherten Datum zu vergleichen, um das Akzeptieren oder Zurückweisen
des neuen Datagramms zu bestimmen.
-
Die
Bestimmung des Zeitintervalls, das den Empfangszeitpunkt durch den
Paketvermittler, zu dem der Routing-Automat gehört, des geroutet werdenden Datagramms
vom Empfangszeitpunkt des vorhergehenden Datagramms trennt, auf
der Ebene des gleichen Paketvermittlers auf dem gleichen virtuellen
Pfad, erfolgt durch Subtrahieren des Empfangdatums 101 des
letzten Datagramms, das als "Last
Arrival Date" im
Feld von Variablen 100, 200 des gelesenen Deskriptors
angezeigt ist, vom Empfangsdatum des gerade geroutet werdenden Datagramms,
das von dem Eingangsport geliefert wird, der dem Datagramm als Zugang
gedient hat.
-
Eine
Anweisung einer maximal bewilligten Bandbreite "BAG",
die einem virtuellen Pfad auf der Ebene eines Paketvermittler zugewiesen
und durch eine maximale Anzahl pro Zeiteinheit von Datagrammen ausgedrückt wird,
von denen angenommen wird, dass sie eine maximale Länge haben,
wird beachtet, sobald das mittlere Zeitintervall, das auf der Ebene
des betrachteten Paketvermittlers zwei aufeinander folgende Datagramme
trennt, die über
den betroffenen virtuellen Pfad gehen, höher ist als sein Umkehrwert.
-
Das
mittlere Zeitintervall, das auf der Ebene eines Paketvermittlers
zwei aufeinander folgende Datagramme trennt, die über den
gleichen virtuellen Pfad gehen, ist nicht direkt zugänglich für die Messung
aufgrund der Möglichkeit
eines Jitters, das einen regelmäßigen Durchsatz
von einen virtuellen Pfad durchlaufenden Datagrammen aufgrund ihrer Durchquerungen,
auf der Ebene der Paketvermittler, von Weitersendungs-Warteschlangen beeinträchtigen
kann, deren Größen in Abhängigkeit
von den augenblicklichen Durchsätzen
anderer virtueller Pfade fluktuieren, die sich die gleichen Ausgangsports
teilen.
-
Dieses
Jitter, das den Augenblickswert des Trennzeitintervalls beeinflusst,
aber nicht den mittleren Wert, kann von einem Routing-Automat folgendermaßen berücksichtigt
werden:
Er beginnt damit, ausgehend von der Anweisung der maximal
bewilligten Bandbreite, die als "BAG" im Feld von Konstanten
des gelesenen Deskriptors angezeigt ist, ein nominales Mindesttrennzeitintervall
dn min zu berechnen, das in Abwesenheit
eines Jitters zwei Datagramme beachten müssen, die auf dem betrachteten
virtuellen Pfad aufeinander folgen. Er misst anschließend das
effektive Trennzeitintervall, das zwischen dem Empfang, auf der
Ebene seines Paketvermittlers, des gerade geroutet werdenden Datagramms
und desjenigen existiert, das auf dem gleichen virtuellen Pfad direkt
vor ihm liegt. Dann überprüft er in
Abhängigkeit
vom Verlauf und von der zugelassenen Jitter-Toleranz, die als "BAG Jitter" im Feld von Konstanten
des gelesenen Deskriptors angezeigt ist, dass der effektiv gemessene
Wert des Trennzeitintervalls es ermöglicht, mittelfristig denjenigen
des nominalen Mindesttrennzeitintervalls dn min zu beachten.
Diese Überprüfung besteht
darin, das Empfangsdatum des gerade geroutet werdenden Datagramms
mit seinem erwarteten Empfangsdatum in Abwesenheit eines Jitters
zu vergleichen, dann die in den Trennzeitintervallen der verschiedenen
Datagramme, die vorher dem gleichen virtuellen Pfad gefolgt sind,
festgestellten Phasenverschiebungen algebraisch zu addieren, wobei
die voreilenden Phasenverschiebungen von einem zu Beginn am Empfangsdatum
eines Datagramms, das als Bezug genommen wird, erstellten Phasenvoreilungsguthaben subtrahiert
und die verzögerten
Phasenverschiebungen dazu addiert werden, und nur dann ein Datagramm
zu behalten, wenn bei seinem Empfang der Augenblickswert der algebraischen
Summe der festgestellten Phasenverschiebungen den genehmigten Jitter-Prozentsatz
nicht übersteigt.
Die Verwaltung der algebraischen Summe der Phasenverschiebungen
erfolgt im Laufe des Empfangs von Datagrammen auf dem betroffenen
virtuellen Pfad mittels der Menge 102 mit der Bezeichnung "Account Value" des Worts von Variablen 100 oder 200 eines
lokalen Deskriptors, der in jedem Zeitpunkt das maximale Phasenvoreilen
oder genehmigte Phasenvoreilungsguthaben für das nächste kommende Datagramm darstellt.
Dieses Phasenvoreilungsguthaben wird auf seinem Maximum initialisiert,
das vom zugelassenen Jitter zum Empfangszeitpunkt eines als Bezug
genommenen Datagramms erlaubt wird, und dann von der festgestellten
Phasenvoreilung abgezogen oder zur festgestellten Phasenverzögerung beim
Empfang jedes späteren
Datagramms hinzugefügt,
wobei sein Übergang
ins Negative eine Überschreitung
des maximal genehmigten Durchsatzes für den betroffenen virtuellen
Pfad ausdrückt
und das Zurückweisen
des betroffenen Datagramms impliziert.
-
Die
Diagramme der 5a bis 5d veranschaulichen
den Ablauf der Operationen, die bei dieser überprüfung durchgeführt werden,
je nachdem, ob das zu routende Datagramm in Voreilung oder Verzögerung zu
seinem erwarteten Empfangsdatum ist. Diese Diagramme bestehen aus
einem Paar von Zeitachsen, auf die verschiedene Zeitdauern eingetragen
wurden, gemessen ausgehend von einer Anfangsposition pr,
die als Bezug genommen wird und die dem Empfangsdatum eines vorher
empfangenen und als Bezug genommenen Datagramms entspricht. Zu diesen
Zeitdauern gehören:
- – die
Dauer dn min des nominalen Mindesttrennzeitintervalls,
die zur Position pn min führt, die
dem erwarteten Empfangsdatum für
das nächste
Datagramm in Abwesenheit eines Jitters entspricht,
- – die
Mindestuntergrenze dl min für das effektive Trennzeitintervall
zwischen zwei aufeinanderfolgenden Datagrammen unter Berücksichtigung der
Jitter-Toleranz, eine Grenze, die zur Position p1
min führt,
- – die
Untergrenze da min, die effektiv an das
Trennzeitintervall angelegt wird, das zwischen dem zu routenden
Datagramm und demjenigen gemessen wird, das ihm auf dem gleichen
virtuellen Pfad vorausgeht, eine Grenze, die zur Position pa min führt,
die dem frühesten
Datum für
eine zulässige Ankunft
des zu routenden Datagramms entspricht und die in das Wort von Variablen
anstelle des Empfangsdatums des letzten gerouteten Datagramms und
des Phasenvoreilungsguthabens des gerade gerouteten Datagramms eingetragen werden
kann, und die Dauer dm des Trennzeitintervalls, die effektiv zwischen
dem zu routenden Datagramm und demjenigen gemessen wird, das ihm
auf dem gleichen virtuellen Pfad direkt vorausging, eine Dauer,
die zur Position pm führt.
-
Wie
man vorher gesehen hat, kann die Dauer dn min des
nominalen Mindesttrennzeitintervalls gleich dem Umkehrwert der Anweisung
der bewilligten maximalen Bandbreite "BAG" genommen
werden, wenn diese in einer maximalen Anzahl von Datagrammen pro
Zeiteinheit ausgedrückt
wird.
-
Die
untere Mindestgrenze dl min für das effektive
Trennzeitintervall zwischen zwei aufeinander folgenden Datagrammen
unter Berücksichtigung
der Jitter-Toleranz wird gleich der Dauer dn min des
Mindesttrennzeitintervalls, verringert um den zugelassenen Jitter-Prozentsatz,
genommen, der in der Anweisung "BAG
Jitter" angezeigt
ist.
-
Die
Untergrenze da min, die effektiv an das Trennzeitintervall
angelegt wird, das zwischen dem zu routenden Datagramm und demjenigen
gemessen wird, das ihm auf dem gleichen virtuellen Pfad vorausging,
entspricht dem Phasenvoreilungsguthaben. Sie wird ausgehend von
den effektiven Empfangsdaten der Datagramme bestimmt, die dem zu routenden
Datagramm auf dem gleichen virtuellen Pfad vorausgingen, und erhalten
ausgehend von der Dauer dn min des nominalen Mindesttrennzeitintervalls,
vervollständigt
durch die algebraische Summe der hinzugefügten Abweichungen (Phasenverzögerung)
oder abgezogenen Abweichungen (Phasenvoreilung), die an den Trennzeitintervallen
der verschiedenen Datagramme festgestellt werden, die dem gleichen
virtuellen Pfad gefolgt sind. Das Phasenvoreilungsguthaben ist so
begrenzt, dass die Untergrenze da min in
dem Bereich [dl min, dn
min] bleibt und auf ihr Maximum initialisiert wird, so dass
bei jeder Änderung
des Bezugsdatagramms die Untergrenze da min den
Wert der Mindestuntergrenze dl min annimmt.
-
Die Überprüfung der
Nichtüberschreitung, beim
Zugriff des Datagramms auf den Paketvermittler, des maximal genehmigten
Durchsatzes für
den dem Datagramm bei seinem Senden zugeteilten virtuellen Pfad,
besteht für
den Routing-Automat, nachdem er das effektive Zeitintervall gemessen
hat, das den Empfangszeitpunkt des Datagramms von demjenigen des
Empfangs des Datagramms trennt, das ihm direkt auf dem gleichen
virtuellen Pfad vorausgeht, und von den im lokalen Deskriptor des
virtuellen Pfads enthaltenen Informationen den Wert der Untergrenze
da min abgeleitet hat, darin, zu überprüfen, dass
das gemessene Trennzeitintervall größer ist als der Wert, der für die Untergrenze
da min gefunden wurde, eine Überprüfung, die
darauf hinausläuft,
festzustellen, dass das Phasenvoreilungsguthaben positiv bleibt,
und, wenn dies der Fall ist, einerseits den Wert der Untergrenze
da min, oder, was auf das Gleiche hinausläuft, des
Phasenvoreilungsguthabens zu aktualisieren, indem in seine Berechnung
das zu routende Datagramm eingeführt
wird, und andererseits effektiv das Routen des betroffenen Datagramms
durchzuführen,
oder, wenn dies nicht der Fall ist, das gerade geroutete Datagramm
zurückzuweisen
und das nächste
Datagramm, das über
den betroffenen virtuellen Pfad kommt, als neuen Bezug zu nehmen,
bei gleichzeitiger Neuinitialisierung des Werts der Untergrenze
da min.
-
Im
Fall der 5a tritt das zu routende Datagramm
in einem Zeitpunkt pm vor dem erwarteten Empfangsdatum
Pn min, aber innerhalb der vom tolerierten
Jitter erlaubten Grenzen auf, da es bezüglich der Untergrenze da min verzögert ist. Die erste Zeitachse 300 stellt
die Situation vor der Überprüfung der Nichtüberschreitung,
während
des Empfangs des zu routenden Datagramms, des maximal genehmigten Durchsatzes
für seinen
virtuellen Pfad dar und weist einen Wert da min der
effektiven Untergrenze für
das bestimmte Trennzeitintervall auf, ohne das zu routende Datagramm
zu berücksichtigen.
Die zweite Zeitachse 310 stellt die Situation nach der
schlüssigen Überprüfung der
Nichtüberschreitung,
während
des Empfangs des zu routenden Datagramms, des maximal genehmigten
Durchsatzes für
seinen virtuellen Pfad und der Aktualisierung des Werts da min der effektiven Untergrenze für das Trennzeitintervall
durch Berücksichtigung
des gerade geroutet werdenden Datagramms dar. Da das gerade geroutete
Datagramm bezüglich
des erwarteten Empfangsdatums voreilend war, hat sich der Wert pa min der effektiven Untergrenze für das Trennzeitintervall
erhöht.
-
Im
Fall der 5b liegt das zu routende Datagramm
in einem Zeitpunkt pm vor, der bezüglich des erwarteten
Empfangsdatums pn min voreilt, außerhalb der
vom tolerierten Jitter erlaubten Grenzen, da voreilend bezüglich der
Untergrenze pa min. Es wird also zurückgewiesen.
Die erste Zeitachse 320 stellt die Situation vor der Überprüfung der
Nichtüberschreitung, während des
Empfangs des zu routenden Datagramms, des maximal genehmigten Durchsatzes
für seinen
virtuellen Pfad dar und weist einen Wert da min der
effektiven Untergrenze für
das bestimmte Trennzeitintervall ohne Berücksichtigung des zu routenden Datagramms
auf. Die zweite Zeitachse 330 veranschaulicht die Situation
nach der nicht schlüssigen Überprüfung
der Nichtüberschreitung,
während
des Empfangs des zu routenden Datagramms, des maximal genehmigten
Durchsatzes für
seinen virtuellen Pfad, und den Empfang eines neuen Datagramms, das
als Bezug genommen wird. Der Wert da min der
effektiven Untergrenze für
das Trennzeitintervall wird initialisiert und auf den Pegel desjenigen
der unteren Mindestgrenze dl min gebracht.
-
Im
Fall der 5c liegt das zu routende Datagramm
in einem Zeitpunkt pm verzögert zum
erwarteten Empfangsdatum pn min, aber in
den vom tolerierten Jitter erlaubten Grenzen vor. Die erste Zeitachse 340 veranschaulicht
die Situation vor der Überprüfung der
Nichtüberschreitung,
während
des Empfangs des zu routenden Datagramms, des maximal genehmigten
Durchsatzes für
seinen virtuellen Pfad und weist einen Wert da
min der effektiven Untergrenze für das bestimmte Trennzeitintervall
ohne Berücksichtigung
des zu routenden Datagramms auf. Die zweite Zeitachse 350 veranschaulicht
die Situation nach der schlüssigen Überprüfung der
Nichtüberschreitung,
während
des Empfangs des zu routenden Datagramms, des maximal genehmigten
Durchsatzes für
seinen virtuellen Pfad und Aktualisierung des Werts da
min der effektiven Untergrenze für das Trennzeitintervall durch
Berücksichtigung
des gerade geroutet werdenden Datagramms. Da das gerade geroutet
werdende Datagramm bezüglich
des erwarteten Empfangsdatums verzögert war, hat sich der Wert
da min der effektiven Untergrenze für das Trennzeitintervall
verringert, bleibt aber größer als
der Wert der Mindestuntergrenze dl min.
-
Im
Fall der 5d tritt das zu routende Datagramm
in einem Zeitpunkt pm auf, der bezüglich des erwarteten
Empfangsdatums dn min über die vom tolerierten Jitter
erlaubten Grenzen hinaus verzögert
ist. Die erste Zeitachse 360 veranschaulicht die Situation vor
der Überprüfung der
Nichtüberschreitung,
während
des Empfangs des zu routenden Datagramms, des maximal genehmigten
Durchsatzes für
seinen virtuellen Pfad und weist einen Wert da
min der effektiven Untergrenze für das Trennzeitintervall auf,
der ohne Berücksichtigung
des zu routenden Datagramms bestimmt wird. Die zweite Zeitachse 360 veranschaulicht
die Situation nach einer schlüssigen Überprüfung der
Nichtüberschreitung,
während
des Empfangs des zu routenden Datagramms, des maximal genehmigten
Durchsatzes für
seinen virtuellen Pfad und Aktualisierung des Werts da
min der effektiven Untergrenze für das Trennzeitintervall, durch
Berücksichtigung
des Datagramms, das gerade geroutet wird. Da das gerade geroutet
werdende Datagramm bezüglich
des erwarteten Empfangsdatums verzögert war, hat sich der Wert
da min der effektiven Untergrenze für das Trennzeitintervall
verringert. Er hat sich aber nicht so weit verringert, wie er es
hätte tun
sollen, da er den Wert der Mindestuntergrenze dl min nicht
unterschreiten kann.
-
Um
seine Tasks auszuführen,
ist die Verarbeitungszeit des Routing-Automaten in eine wiederholte
und invariante Folge von Zeitschlitzen aufgeteilt, die zwischen
den Eingangsports des Paketvermittlers und dem Routing-Automat selbst
aufgeteilt und spezifischen elementaren Tasks zugewiesen sind. Die
meisten dieser Zeitschlitze dienen den Integritätsüberprüfungen und dem Routen der verschiedenen
Datagramme, die an die Eingangsports des Paketvermittlers gelangen.
Sie werden individuell den verschiedenen Eingangsports, und für den gleichen
Eingangsport einer spezifischen elementaren Task bewilligt, die
der Ausführung
einer besonderen logischen kombinatorischen und/oder sequentiellen Verarbeitung
entspricht, die isoliert oder parallel zu einer Lese- oder Schreiboperation
von Daten im Anweisungsspeicher durchgeführt wird. Die verbleibenden
Zeitschlitze, die in der Minderheit sind, sind für Tasks der Verwaltung oder
Dienstbarkeit reserviert, wie die Programmierung des Anweisungsspeichers, die Überprüfung der
Integrität
seiner Daten mit ihren möglichen
Korrekturen oder ihren Ausgrenzungen. Diese Verwaltungstasks entsprechen
wie die spezifischen elementaren Tasks der Ausführung einer besonderen logischen
kombinatorischen und/oder sequentiellen Verarbeitung, die isoliert
oder parallel zu einer Lese- oder Schreiboperation von Daten in
dem Anweisungsspeicher durchgeführt
wird.
-
6 zeigt
ein Beispiel einer wiederholten invarianten Folge von Zeitschlitzen,
die verwendet werden können,
um im Rahmen eines Paketvermittlers, der fünfundzwanzig Eingangsports
aufweist, die Aktivität
eines Routing-Automaten zu organisieren, der fähig ist, im Anweisungsspeicher
in einem Taktimpuls ein Binärwort
von sechsunddreißig
Bits mit der Dimension der Binärwörter zu
lesen oder zu schreiben, die die lokalen Deskriptoren bilden. In
dieser 6 sind die Eingangsports der Zuteilung der Zeitschlitze
einzeln von Null bis fünfundzwanzig nummeriert.
Von der wiederholten Folge von Zeitschlitzen wird angenommen, dass
sie in 256 Taktimpulsen abläuft, die in den Spalten 400, 410, 420 und 430 aufgezählt sind.
Sie weist gegenüber
diesen Spalten Zeitschlitze auf, die Lese- oder Schreiboperationen
im Anweisungsspeicher gewidmet sind, gedoppelt als Hintergrundtask
von Verarbeitungen einer kombinatorischen und/oder Softwarelogik,
nämlich
RFi, RVi, WVi für
die Integritätsüberprüfungen und
die Routing-Operationen der Datagramme, die an die verschiedenen
Eingangsports des Paketvermittlers gelangen, nämlich RM1, WM1, RM2, WM2, RA
und WA für Überprüfungen und
Reparaturen der Integrität
der lokalen Deskriptoren, die im Anweisungsspeicher gespeichert
sind, für
eine Programmierung oder für
eine Wartung, sowie nicht gekennzeichnete Zeitschlitze, die nur
der Ausführung
von kombinatorischen und/oder sequentiellen Logikverarbeitungen
gewidmet sind.
-
Der
Routing-Automat greift auf den Routing-Speicher zu, wenn:
- – Zeitschlitze
RFi, die dem Lesen des Felds von Konstanten des lokalen Deskriptors
eines virtuellen Pfads zugeteilt sind, der dem von einem vom Eingangsport
mit der Nummer i empfangenen Datagramm angesagten virtuellen Pfad
entspricht. Jeder von ihnen besetzt drei Taktimpulse, die der notwendigen
Zeit entsprechen, um die drei Binärwörter des Felds von Konstanten
eines lokalen Deskriptors zu lesen;
- – Zeitschlitze
RVi, die dem Lesen des Felds von Variablen des lokalen Deskriptors
des virtuellen Pfads zugeteilt sind, der von dem vom Eingangsport
i empfangenen Datagramm angesagt wird. Jeder von ihnen besetzt einen
einzigen Taktimpuls, da ein Variablenfeld nur ein einziges Binärwort in
einem lokalen Deskriptor besetzt;
- – Zeitschlitze
WVi, die dem Schreiben für
eine Aktualisierung des Felds von Variablen des lokalen Deskriptors
des virtuellen Pfads zugeteilt sind, der von dem vom Eingangsport
i empfangenen Datagramm angesagt wird. Jeder von ihnen besetzt einen
einzigen Taktimpuls, da ein Variablenfeld nur ein einziges Binärwort in
einem lokalen Deskriptor besetzt;
- – Zeitschlitze
RA, RM1 und RM2, die einem Lesezugriff eines kompletten lokalen
Deskriptors zugeordnet sind. Sie besetzen je vier Taktimpulse, da ein
lokaler Deskriptor drei Binärwörter enthält, und
- – Zeitschlitze
WA, WM1 und WM2, die einem Schreibzugriff eines kompletten lokalen
Deskriptors zugeteilt sind. Sie besetzen je vier Taktimpulse, einen
Taktimpuls pro Binärwort
des lokalen Deskriptors.
-
Die
Kopplung als Taskhintergrund, von kombinatorischen und/oder sequentiellen
Logikverarbeitungen an bereits erfassten Daten, mit den Lese- und Schreiboperationen
im Anweisungsspeicher ermöglicht
es, den Einfluss der Begrenzung des Schreib- und Lesedurchsatzes
des Anweisungsspeichers auf die Ausführung durch den Routing-Automat
der verschiedenen Tasks, die ihm anvertraut sind, zu reduzieren,
während
die Zeitschlitze, die nur kombinatorischen und/oder sequentiellen
Logikverarbeitungen gewidmet sind, es ermöglichen, die Verarbeitungen einer
kombinatorischen und/oder sequentiellen Logik zu beenden, die während vorherigen
Zeitschlitzen begonnen wurden, wobei sie Logikverarbeitungen und
Zugriff zum Anweisungsspeicher koppeln, wenn sie sich bezüglich der
Erfassungen und der Wiederherstellungen von Daten im Anweisungsspeicher verzögern.
-
Um
von den Vorteilen dieser Kopplung zu profitieren arbeitet der Routing-Automat
an zwei Datagrammen gleichzeitig, die in verschiedenen Verarbeitungsstadien
genommen werden. Die Zeitschlitze RVi und WVi (mit 0 < i < 24), die den Lese-
und Schreibzugriffen des Felds von Variablen des lokalen Deskriptors
des virtuellen Pfads entsprechen, angesagt durch ein am Eingangsport
i empfangenes Datagramm, und die am Ende der Verarbeitung verwendet
werden, umrahmen den Zeitschlitz RF(i + 1), der dem Lesezugriff
des Felds von Konstanten des lokalen Deskriptors des virtuellen
Pfads entspricht, angesagt durch das am Eingangsport i + 1 empfangene Datagramm,
und der zu Beginn der Verarbeitung verwendet wird.
-
Die
Zeitschlitze RFi, RVi und WVi umrahmen den Zeitbereich, in dem die
Verarbeitung eines zu routenden Datagramms, das vom Eingangsport
mit der Nummer i präsentiert
wird, d.h. genauer die Überprüfungen der
Entsprechung des Datagramms den Anweisungen des virtuellen Pfads,
den es beansprucht, und sein Routing durchgeführt werden.
-
Die
Zeitbereiche, die von den Zeitschlitzen RM1 und WM1 bzw. RM2 und
WM2 begrenzt werden, sind für
Programmierungs- und Abfragezugriffe, die beim Start des Paketvermittlers
verwendet werden, um den Anweisungsspeicher zu initialisieren und
dann, während
des Betriebs des Paketvermittlers, für eine Wartung des Schaltnetzes
auf der Ebene des betroffenen Paketvermittlers reserviert, insbesondere
für die
Verwaltung des Marker-Bits 104, das dem Diffusionsprofil
eines virtuellen Pfads einen Testport hinzufügt oder nicht, der es ermöglicht,
auf den Verkehr des virtuellen Pfads durch Mess- oder Speicherinstrumente
zuzugreifen.
-
Während der
Zeitbereiche, die von den Zeitschlitzen RA und WA begrenzt werden,
führt der
Routing-Automat eine Überprüfung der
Kommensurabilität
des Datagramm-Empfangsdatums,
genannt "Last Arrival
Time", das im Feld
von Variablen eines lokalen Deskriptors vorhanden ist, mit der laufenden
Zeit durch, um die Zweideutigkeiten zu vermeiden, die aus der Codierung
der Zeit entstehen, die auf einem notwendigerweise begrenzten Horizont
erfolgt. Diese Überprüfung der
Kommensurabilität
besteht für
jeden analysierten lokalen Deskriptor darin, die Differenz zwischen
dem Empfangsdatum "Last
Arrival Time" und
der laufenden Zeit zu bilden und sich zu vergewissern, dass sie
unter einem Schwellwert bleibt, der gleich einem Grenzbruchteil
der Codierdynamik der Zeit genommen wird. So lange dies der Fall
ist, werden die zwei Zeiten als kommensurabel bezeichnet, und die Überprüfung endet
in diesem Stadium. Sobald die Differenz sich als größer als
der Schwellwert erweist, können
die zwei Datencodierungen schnell inkommensurabel werden, aufgrund
einer Gefahr des Überlaufens
des Zeitzählers.
Um diese Gefahr zu vermeiden, ersetzt eine spezifische Codierung
der Inkommensurabilität
das Datagramm-Empfangsdatum "Last
Arrival Time", und
die algebraische Summe der Abweichungen "Account Value" wird auf ihrem maximalen Wert positioniert.
Die spezifische Codierung der Inkommensurabilität wird anschließend vom Routing- Automat wie eine
Anweisung interpretiert, das nächste
empfangene Datagramm als neuen Bezug für die Überprüfung der Nichtüberschreitung
des maximal genehmigten Durchsatzes für den virtuellen Pfad zu nehmen.
-
Die Überprüfung der
Kommensurabilität
des Datagramm-Empfangsdatums "Last Arrival Time", das im Feld von
Variablen eines lokalen Deskriptors vorhanden ist, muss ausreichend
häufig
durchgeführt werden,
um zu garantieren, dass jeder der lokalen Deskriptoren eines virtuellen
Pfads, die im Anweisungsspeicher gespeichert sind, mindestens zweimal
pro Drehung des Zeitzählers
ausgewertet wird. Wenn man eine einzige Variable verwendet, um das früheste Ankunftsdatum
des nächsten
Datagramms zu codieren, erfolgt die Erfassung einer Inkommensurabilität, wenn
der Absolutwert der Differenz zwischen dem laufenden Datum und dem
in der Variablen gespeicherten Datum größer wird als ein besonderer
Wert, der selbst als höher
als der größte BAG-Zwang
gewählt
wird, erhöht
um das maximale Jitter. Man wählt
zum Beispiel einen Wert gleich dem Viertel der Codierdynamik, um
die Herstellung zu vereinfachen. Es genügt nämlich, die Subtraktion der zwei
Daten durchzuführen
und die zwei höhergewichtigen
Bits des erhaltenen Ergebnisses zu vergleichen. Wenn sie gleich
sind, werden die zwei Daten kommensurabel genannt, wenn sie entgegengesetzt
sind, hat die in der Variablen codierte Zeit aufgehört, mit
der laufenden Zeit kommensurabel zu sein und muss also ausdrücklich als
solche codiert werden. Natürlich
muss die Task der Erfassung der Inkommensurabilität jede Variable
mit einer Periode von weniger als die Hälfte der Codierdynamik auswerten.
-
Außer dieser Überprüfung der
Kommensurabilität
wird das von den Zeitschlitzen RA und WA begrenzte Zeitintervall
auch verwendet, um zyklisch die Integrität aller lokalen Deskriptoren
zu überprüfen, die
im Anweisungsspeicher gespeichert sind, sie im Fall eines einfachen
Fehlers zu korrigieren und sie im Fall von Mehrfachfehlern ungültig zu
machen. Man nutzt nämlich
das Lese- und Schreibtasten der lokalen Deskriptoren, das für die Überprüfung der
Kommensurabilität
durchgeführt
wird, um die Kompatibilität
jedes der Wörter
der lokalen Deskriptoren mit dem Rest des Erfassungs- und Fehlerkorrekturcodes EDC
zu überprüfen, den
er enthält.
Normalerweise muss der neu berechnete Rest dem gespeicherten Rest
entsprechen. Wenn eine Differenz auftritt, ermöglicht diese aufgrund der Eigenschaften
des Erfassungs- und Fehlerkorrekturcodes, einen isolierten Fehler
auszumachen und ihn zu korrigieren, oder eine Vielzahl von Fehlern
anzuzeigen. Bei einem korrigierbaren isolierten Fehler ermöglicht der
Zeitschlitz WA, der das Verarbeitungszeitintervall abschließt, ein Überschreiben
einer korrigierten Version des lokalen Deskriptors in dem Anweisungsspeicher.
Bei Mehrfachfehlern, die die Korrekturmöglichkeiten des Codes EDC überschreiten,
ermöglicht
der das Verarbeitungszeitintervall beendende Zeitschlitz WA ein Überschreiben
einer ungültig
gemachten Version des lokalen Deskriptors im Anweisungsspeicher.
Diese ungültig
gemachte Version kann verschiedene Konfigurationen haben, vorausgesetzt,
sie ist für
den Routing-Automat erkennbar. Sie kann zum Beispiel ein Feld von
Konstanten mit einem oder allen seinen Binärwörtern auf Eins aufweisen. Ein
Wert ganz auf Eins eines Binärworts
eines lokalen Deskriptors ist nicht unbedingt gültig vom Standpunkt des Hamming-Codes, aber dies
hat keine Folgen, da es genau die Aufgabe des Hamming-Codes ist,
einen lokalen Deskriptor im Fall einer Nichtübereinstimmung zwischen dem
angesagten und dem neu berechneten Rest ungültig zu machen.