-
Gebiet der
Erfindung
-
Die
Erfindung betrifft ein Verfahren und ein System zum Behandeln von
Overheadbytes in Telekommunikationsnetzwerken, die gemäß SDH-,
SONET- oder OTN-Datenübertragungshierarchien
arbeiten.
-
Hintergrund
der Erfindung
-
Internationale
Standards, welche die Zwecke und die Arten der Behandlung von Overheadbytes
in den oben erwähnten
Hierarchien bestimmen, gehen bezüglich
der Durchführung
der Behandlung in der Praxis nicht auf Einzelheiten ein. Dennoch
kann den Anforderungen, die durch die Standards dem Überwachen
von Datenströmen
(und in Verbindung mit dem Handhaben von Overheadinformationen)
auferlegt werden, nicht ohne spezifische technologische Entwicklungen
entsprochen werden, insbesondere im Hinblick auf Datenströme hoher
Ordnung, die hohe Bitraten haben. Die relevanten ITU-T-Standardempfehlungen
G.707 (03/96) und G.783 (04/97), welche die SDH-Übertragungshierarchien betreffen,
fegen dar, wie bestimmte Overheadbytes zu verarbeiten sind (beispielsweise
die Behandlung des ersten Overheadbytes J1 in dem SDH-Standardrahmen:
S. 9.3.1.1. in G.707 und 2.2.2.4 in G.783), es wurden aber keine
Lösungen
für das
Implementieren der Prozedur in irgendeinem besonderen SDH-Datenstrom vorgeschlagen.
-
Die
US-Patente mit den Nummern 5,465,252 und 5,600,648 betreffen das
Behandeln von SDH-SONET-Overheads und sogar von bestimmten Bytes
derartiger Overheads, aber beschreiben keine schnellen und ökonomischen
Arten des Behandelns von Overheads von Datenströmen hoher Ordnung.
-
Das
europäische
Patent
EP 559,090 A2 beschreibt
einen Server, der einen Multiplexer/Demultiplexer mit einer Leitungsvermittlung
kombiniert, um sowohl Hochgeschwindigkeits-Overheads als auch Daten
zu behandeln, die an den Server durch einen Crossconnect über eine
Schnittstelle gekoppelt sind, wobei mehrere Server mit dem Crossconnect
in einem Stern-, Maschen- oder Ringnetzwerk verbunden sein können.
-
Aufgabe der
Erfindung
-
Es
ist demnach die Aufgabe der vorliegenden Erfindung, ein schnell
agierendes und hardwareökonomisches
System zum Behandeln von Overheadbytes von SDH-, SONET- und OTN-Datenströmen hoher
Ordnung zur Verfügung
zu stellen.
-
Kurzer Abriss
der Erfindung
-
Die
obige Aufgabe kann durch das Bereitstellen eines Verfahrens und
eines Systems zum schnellen und ökonomischen
Behandeln von Overheadbytes eines eingehenden Datenstroms hoher Ordnung
erreicht werden, um einen entsprechenden ausgehenden Datenstrom
hoher Ordnung zu bilden. Das Verfahren wird üblicherweise bei einem Netzwerkelement
(NE) eines Telekommunikationsnetzwerks durchgeführt, das Datenströme hoher
Ordnung einsetzt.
-
Da
die Anzahl an Overheadbytes einen kleinen Teil der Gesamtzahl an
Bytes in verschiedenen SDH-, SONET- und OTN-Datenströmen bildet
und da die Informationsnutzlastbytes nicht die Overhead-Handhabung
benötigen,
können
alle Overheadbytes innerhalb der Zeit, in der die Nutzlastbytes weitergeleitet
werden, verarbeitet werden, so dass die OH-Behandlung des Datenstroms
beinahe online ausgeführt
wird.
-
Diese
Einschätzung
wurde von den Erfindern in dem vorgeschlagenen Verfahren und dem System
verwendet. Es sollte klar sein, dass jeder Komponentendatenstrom
des Datenstroms hoher Ordnung von dem Punkt seines Overheads verarbeitet
werden sollte. Es sollte auch klar sein, dass die für das Verarbeiten
von Overheadbytes jedes Komponentendatenstroms benötigte Hardware
relativ komplex ist. Andererseits sind die Hardwareeinheiten, die für das OH-Verarbeiten
von unterschiedlichen Komponentendatenströmen verwendet werden, tatsächlich identisch.
Gemäß dem besten
Wissen des Anmelders wurden derartige Hardwareeinheiten jedoch nie
für das
Handhaben von mehr als einem Komponentendatenstrom eines hochbitratigen
Datenstroms verwendet. Es ist festzuhalten, dass die heutzutage technologisch
mögliche
maximale Bitrate für
elektronische Systeme 311 MHz bei STM-16 ist, und deswegen wird
STM-16 üblicherweise
als Komponentendatenstrom des STM-256 (16 × STM-16 = STM-256) ausgewählt. In
dem heutzutage bekannten besten Modus wird der Overhead von einem
STM-256-Datenstrom hoher Ordnung durch das parallele Verarbeiten
von Overheads der 16 STM-16-Komponentenströme durch 16 identische Overhead-Maschinen behandelt.
Eine derartige Herangehensweise hat selbstverständlich einen großen Hardwarebedarf.
-
Im
Allgemeinen umfasst das vorgeschlagene Verfahren
- a)
Darstellen eines eingehenden Datenstroms hoher Ordnung als eine
Mehrzahl von parallel übertragenen
Komponentendatenströmen,
- b) Bereitstellen einer gemeinsamen Overheadverarbeitungseinheit
(COHPU), die dazu ausgelegt ist, Overheadbytes eines Einzelnen der
Komponentendatenströme
handzuhaben,
- c) Weiterleiten der COHPU-Overheadbytes des Komponentendatenstroms
der Reihe nach, während
Docketing-ID-Informationen für
jedes bestimmte Overheadbyte geführt
werden;
- d) Verarbeiten jedes der Overheadbytes in der COHPU und
- e) Modifizieren der Komponentendatenströme, um einen ausgehenden Datenstrom
hoher Ordnung zu erhalten, auf der Basis von Ergebnissen des Verarbeitens
und der ID-Informationen bezüglich
jedes der verarbeiteten Overheadbytes.
-
Die
Reihenfolge des Weiterleitens von OH-Bytes zu der COHPU ist vorzugsweise
zyklisch bezüglich
der Nummer eines bestimmten Komponentendatenstroms in der besagten
Mehrzahl und aufeinanderfolgend bezüglich des Ortes eines bestimmten
Overheadbytes in einem augenblicklich ausgewählten Komponentendatenstrom.
Eine umgekehrte Reihenfolge kann auch verwendet werden, würde aber
mehr Hardware benötigen
(Pufferspeicher).
-
Um
das 0H-Handhaben von Datenströmen hoher
Ordnung auf eine schnell agierende und hardwareökonomische Weise zu implementieren,
sollten die Bitrate der Komponentendatenströme und die Bitrate der COHPU-Operationen
als die maximal technologisch mögliche
Bitrate gewählt
werden, wohingegen die Bitrate des Übertragens von Daten zu der und
von der COHPU niedriger sein kann, während das Verarbeiten aller
Overheadbytes während
des bestimmten Datenstroms hoher Ordnung ermöglicht wird. Es kann eine Version,
bei der die Bitrate der Komponentendatenströme niedriger als die maximal technologisch
mögliche
ist, verwendet werden (beispiels weise die Bitrate von STM-4), sie
benötigt
aber mehr Hardware als die oben erwähnte bevorzugte.
-
Bei
der bevorzugten beispielhaften Ausführungsform ist die Bitrate
des Komponentendatenstroms für
die SDH- und SONET-Datenströme
wie etwa STM-64 oder STM-256
gleich der Bitrate der COHPU-Operation (311 MHz des STM-16) und
näherungsweise
viermal größer als
die Bitrate des Übertragens
von Daten zu und von der COHPU. Tatsächlich resultiert dieses beispielhaften
Verhältnis (1/4)
aus der Tatsache, dass in SDH-/SONET-Systemen, die die Bitrate von
311 MHz verwenden, Bytes nicht über
Schnittstellenmittel (I/F-Mittel) bei der maximale Geschwindigkeit
von 311 MHz übertragen werden
können,
da die Daten der Bytes einander auf Grund von Verzögerungen
beeinflussen würden,
die durch Leitungen der I/F-Schaltung eingebracht werden. Durch
das Reduzieren der Geschwindigkeit der internen Übertragung auf 1/4 der maximalen,
schaffen wir es noch immer, alle OH-Bytes in dem Datenstrom und
sogar einige zusätzliche
optionale Bytes handzuhaben. Bei OTN können die hauptsächlich in dem
System verwendeten zwischen den zweien liegenden Bitraten unterschiedlich
sein. Der gewählte Reduzierungsgrad
der maximal erlaubten Bitrate für den
IF-Bus sollte ein Handhaben von Standard-Overheadbytes und optional
einer Anzahl von zusätzlichen
Overheadbytes ermöglichen.
-
Der
gerade behandelte Datenstrom hoher Ordnung sollte als ein SONET-,
SDH- oder OTN-Rahmen aufgefasst werden, der mit der vorher bestimmten
hohen Frequenz übertragen
wird und einen vordefinierten Bereich mit Overheadbytes umfasst.
(Der Bereich besteht aus Overhead-Abschnitten der Komponentendatenströme, die
wiederum Overheadabschnitte mit so genannten Basisdatenströmen umfassen).
In dem Rahmen der vorliegenden Anwendung kann der Overheadbereich
(-abschnitt) jedoch nicht nur die Standard-Overheadbytes umfassen,
sondern auch diejenigen, die in der Overheadzone oder in der Nutzlast
positioniert sind, aber doch durch einen Kunden so definiert sind,
dass sie zusätzliche
Overheadinformationen – (so
genannte programmierte OH-Bytes) – tragen. Beispielsweise kann
der Datenstrom hoher Ordnung ein STM-256-Datenstrom sein, der als
16 parallele STM-16-Komponentendatenströme übertragen wird, die aus 768
Basisdatenströmen
SPS-1*gebildet sind: (256 × 3
STS-1's oder 16 × 48 STS-1's, wobei der STS-1
der Basisdatenstrom ist. *Der STS-1-Basisdatenstrom wird in SONET-Netzwerken
verwendet, für SDH-Netzwerke
ist er VC-3. Der Overheadbereich jedes Basisdatenstroms umfasst
9 feste OH-Bytes und 2 programmierbare OH-Bytes.
-
In
den OTN-Datenströmen
(wie etwa ODU-1, ODU-2, ODU-3) wird der Komponentendatenstrom durch
einen einzelnen Basisdatenstrom gebildet (das heißt, er ist
gleich dem Basisdatenstrom), so dass lediglich eine Overheadeinheit
durch einen bestimmten Abtastwertpuffer geleitet werden muss, der
einem bestimmten Komponentendatenstrom zugeordnet ist.
-
Im
Hinblick auf das Obenstehende können die
Schritte des Verfahrens wie folgt durchgeführt werden:
- a)
Definieren eines Basisdatenstroms des Komponentendatenstroms, wobei
der Basisdatenstrom mit seinem Nutzlastabschnitt und seinem Overheadabschnitt
ein Baustein des Komponentendatenstroms ist und der eingehende Datenstrom
hoher Ordnung aus N der Komponentendatenströme gebildet wird.
- b) Die COHPU, die in der Lage ist, einen Overhead des Komponentendatenstroms
zu verarbeiten, kann tatsächlich
eine Einheit bilden, die zum Verarbeiten des Overheads des Basisdatenstroms
in der Lage ist; zusätzlich
zu der COHPU, Bereitstellen eines Satzes von N Abtastwertpuffern
SB und eines Satzes von N Einfügepuffern IB.
- c) Bei der Bitrate des Komponentendatenstroms, allmähliches
Extrahieren von Overheadabschnitten der Basisdatenströme, die
jeden der Komponentendatenströme
bilden, und jeweiliges Speichern der Overheadabschnitte in N Abtastwertpuffern,
die den jeweiligen Komponentendatenströmen zugeordnet sind, während ID-Informationen des
Bytes durch Docketing jedes gespeicherten Overheadbytes, eines bestimmten
Basisdatenstroms und eines bestimmten Komponentendatenstroms, zu
dem er gehört,
gebildet werden; Übertragen
der OH-Bytes an die COHPU;
- d) Verarbeiten jedes Overheadbytes in der COHPU bei der Bitrate
des Komponentendatenstroms und
Erhalten von Ergebnisse des
Verarbeitens jedes bestimmten Bytes in der Form von zumindest einer
Anweisung, die von einer Liste ausgewählt ist, die Alarme, Operationen
mit dem bestimmten Overheadbyte in dem ausgehenden Datenstrom hoher
Ordnung sowie Operationen mit anderen Bytes in dem ausgehenden Datenstrom
hoher Ordnung umfasst;
- e) auf der Grundlage der Ergebnisse des Verarbeitens, Übertragen
von der COHPU die zumindest eine Anweisung bezüglich jedes Overheadbytes,
wobei das Übertragen
N Einfügepuffern
zur Verfügung
gestellt wird, die jeweils den N Komponentendatenströmen zugeordnet
sind, so dass die Anweisungen wiederum gemäß den ID-Informationen an den jeweiligen Einfügepuffern
ankommen; und
Ausführen
der Anweisungen bei den N jeweiligen Einfügepuffern, für die jeweiligen
Komponentendatenströme
der eingehenden Datenströmen
hoher Ordnung, wodurch man N Komponentendatenströme der ausgehenden Datenströme hoher Ordnung
erhält.
-
Durch
das Bereitstellen der obigen Operationen mit einem derartigen Verhältnis der
Geschwindigkeiten kann das Overhead-Handhaben erfolgreich durchgeführt werden,
während
der eingehende Datenstrom ein System durchläuft, das den Overhead handhabt.
Da die Menge an Nutzlastbytes in einem Datenstrom des Rahmen-Typs üblicherweise
größer als
die Menge an Overheadbytes in demselben Datenstrom ist, ermöglicht das
vorgeschlagene Verfahren das Handhaben aller Overheadbytes der Datenströme hoher
Ordnung nahezu online. Das System kann Teil eines Netzwerkelements
sein. Es sollte klar sein, dass das Verfahren (und das System) eine
effektive Hardwarenutzung ermöglichen,
was dem gleichförmigen
Verarbeiten der Overheadbytes von Komponentendatenströmen zu verdanken
ist, die den Datenstrom hoher Ordnung mittels der gemeinsamen Overheadverarbeitungseinheit
bilden.
-
Insbesondere
und vorzugsweise können
die Schritte des vorgeschlagenen Verfahrens durch die folgenden
Operationen ausgeführt
werden.
-
Der
Schritt des Darstellens (a) kann vorzugsweise als das Zusammenstellen
eines eingehenden Datenstroms hoher Ordnung, vorzugsweise STM-256,
als 16 Komponentendatenströme
STM-16 durchgeführt
werden, die parallel übertragen
werden, wobei jeder der Komponentendatenströme in 48 Basisdatenströme (Einheiten/"entities") STS-1 für die SONET-Hierarchie
(oder 48 VC-3 für
die SDH-Hierarchie)
aufgeteilt werden kann. Für
OTN-Systeme kann der Datenstrom hoher Ordnung durch 16 Komponentenströme aus ODU1,
4 Komponentenströme
aus ODU2 und einem einzigen ODU3 dargestellt werden.
-
Der
Schritt (c), der das allmähliche
Extrahieren und Speichern der OH-Abschnitte in den N Abtastwertpuffern
umfasst, wird byteweise durchgeführt,
während
die Kapazität
der Abtastwertpuffer relativ gering ist (sie kann lediglich ein
Byte betragen), um gerade die OH-Bytes, die zu den N jeweiligen Komponentenströme gehören, für ein weiteres
Zugreifen und Verarbeiten vorzubereiten.
-
Die
Operationen des allmählichen
Extrahierens und Speicherns werden von einem Schritt des Erzeugens
der ID-Informationen durch ein Docketing jedes der gespeicherten
OH-Bytes für
dessen weitere Identifikation in dem Handhabungsprozess begleitet,
wobei das Docketing die Anzeige des Ortes und des Typs jedes OH-Bytes
in dem Datenstrom hoher Ordnung umfasst, indem jedem bestimmten
OH-Byte folgende Nummern zugewiesen werden: des Komponentendatenstroms
(Abtastwertpuffer), des Basisdatenstroms (Einheit), zu dem das Byte
gehört,
und die Nummer (Position) des Bytes in dem Basisdatenstrom. Die
erhaltenen Docketing-Informationen (ID-Informationen) werden während des
gesamten Prozesses des OH-Handhabens
des eingehenden Datenstroms hoher Ordnung bewahrt.
-
Die
Operation des Übertragens
der Overheadabschnitte von den N Abtastwertpuffern zu der gemeinsamen
OH-Verarbeitungseinheit wird durch das sukzessive Zugreifen auf
die N Abtastwertpuffer in einer zyklischen Reihenfolge und durch
das Extrahieren jedes der Overheadbytes daraus für eine weitere Handhabung durchgeführt, während die
Docketing-Informationen bewahrt werden.
-
Der
Schritt (d) des Verarbeitens der OH-Bytes in der gemeinsamen OH-Verarbeitungseinheit
umfasst das sukzessive Weiterleiten jedes bestimmten OH-Bytes, das von den
N Abtastwertspeicherblöcken
zu einem Operatorblock extrahiert wird, entsprechend dem Typ des
bestimmten Overheadbytes und der Art des Verarbeitens, die für das Byte
benötigt
wird, wobei die Operatorblöcke
einen Teil der gemeinsamen Verarbeitungseinheit bilden. Es sollte
klar sein, dass nicht nur die ID-Informationen
(Docketing-Informationen) bestimmen, an welchen Operatorblock ein
bestimmtes OH-Byte zu senden ist. Eine Anzahl unterschiedlicher
OH-Bytes kann durch einen Operatorblock gehandhabt werden, wenn
die Art der Verarbeitung, die für
diese Bytes benötigt
wird, die gleiche ist. Der Schritt des Verarbeitens umfasst das
Handhaben der weitergeleiteten Overheadbytes in den jeweiligen Operatorblöcken bei
der Bitrate des Komponentendatenstroms.
-
Bei
dem obigen Verfahren erhält
man die Ergebnisse der OH-Verarbeitung in der Form von zumindest
einer Anweisung. Insbesondere soll die zumindest eine Anweisung
in einem bestimmten Basisdatenstrom ausgeführt werden und kann aus der
folgenden nicht erschöpfenden
Liste ausgewählt
werden, die umfasst: Alarme, die auf verschiedenen Ebenen des OH-Handhabungssystems
analysiert werden, eine Anweisung, ein bestimmtes Overheadbyte (OH-Byte),
so, wie es ist, zu übergeben,
eine Anweisung, ein bestimmtes OH-Byte zu verändern, eine Anweisung, einen
bestimmten Wert in einem bestimmten OH-Byte einzufügen, eine
Anweisung, den Ort eines bestimmten OH-Bytes in dem Basisdatenstrom
zu verändern,
eine Anweisung, nur "1", nur "0" oder ein anderes Muster in den gesamten
Rahmen des Basisdatenstroms einzufügen, etc.
-
Der
Schritt des Übertragens
der zumindest einen Anweisung von der gemeinsamen OH-Verarbeitungseinheit
umfasst das Korrelieren von Alarmen und das Akkumulieren von auf
ein bestimmtes OH-Byte anzuwendenden Anweisungen und Daten und das
Weiterleiten derselben an die N Einfügepuffer, die in der Lage sind,
OH- und andere Bytes in entsprechende N Komponentendatenströmen einzufügen.
-
Der
Schritt des Ausführens
der Anweisungen bei den N Einfügepuffern
umfasst das Einfügen
derartiger Bytes in die jeweiligen Komponentendatenströme des ausgehenden
Datenstroms hoher Ordnung, die das Ausführen der Anweisungen ermöglichen;
das Einfügen
wird unter Verwendung der Docketing-Informationen (ID-Informationen) durchgeführt.
-
Gemäß einem
zweiten Aspekt der Erfindung wird ein System zum Implementieren
des obigen Verfahrens des Handhabens von Overheadbytes eines eingehenden
Datenstroms hoher Ordnung zur Verfügung gestellt, der als N parallele
Komponentendatenströme
(jeder aus M Basisdatenströmen
aufgebaut) gebildet ist, um einen ausgehenden Datenstrom hoher Ordnung
zu erhalten.
-
Das
System umfasst:
einen Satz von N Abtastwertpuffern zum allmählichen
Extrahieren und Speichern von Overheadbytes der jeweiligen N Komponentendatenströme des eingehenden
Datenstroms hoher Ordnung und das Führen von ID-Informationen bezüglich der
in jedem der Abtastwertpuffer gespeicherten Bytes;
eine gemeinsame
Overheadverarbeitungseinheit ("COHPU
= common overhead processing unit") zum sukzessiven Verarbeiten der Overheadbytes,
die von den N Abtastwertpuffern während des Erzeugens und Führens vollständiger ID-Informationen bezüglich der
Bytes erhalten werden, um Anweisungen zum Modifizie ren jeweiliger
Komponentendatenströme
des ausgehenden Datenstroms hoher Ordnung zu erzeugen;
einen
Satz von N Einfügepuffern
zum allmählichen Modifizieren
der jeweiligen N Komponentendatenströme des ausgehenden Datenstroms
hoher Ordnung als Reaktion auf das Empfangen geeigneter Anweisungen
für jedes
verarbeitete Overheadbyte, begleitet von dessen ID-Informationen,
eine
Busschnittstelle, die in der Lage ist, die Overheadbytes von den
Abtastwertpuffern zu der gemeinsamen Overheadverarbeitungseinheit
(COHPU) zu übertragen
und die in der Lage ist, Anweisungen von der COHPU zu den Einfügepuffern
zu übertragen.
-
Die
Abtastwertpuffer werden jeweils mit internen Mikroprozessoren versehen,
um die Extraktion der Overheadbytes aus dem eingehenden Datenstrom
hoher Ordnung, das Speichern derselben in den Abtastwertpuffern
und das Docketing derselben zu steuern, um den Typ und den Ort des
Bytes in dem Abtastwertpuffer für
eine weitere Verarbeitung zu identifizieren. Die Kapazität der Abtastwertpuffer
ist relativ gering (sie kann lediglich ein Byte betragen), gerade
um die OH-Bytes, die zu den N jeweiligen Komponentenströme gehören, für ein weiteres
Zugreifen und Verarbeiten vorzubereiten (dies bedeutet, dass das
Extrahieren und Speichern der OH-Abschnitte in den N Abtastwertpuffern
byteweise durchgeführt
wird).
-
Insbesondere
und gemäß der bevorzugten Ausführungsform
ist die gemeinsame Verarbeitungseinheit COHPU in der Lage, Overheadbytes
eines Basisdatenstroms zu verarbeiten, der einen Baustein eines
beliebigen der Komponentendatenströme bildet; die COHPU ist für das Koordinieren
der zyklischen (zyklisch-sukzessiven) Übertragung der Overheadbytes
von den Abtastwertpuffern über
die Busschnittstelle, das Verteilen der empfangenen Overheadbytes
für eine
separate Handhabung derselben und auch für das Koordinieren und Übertragen
von Anweisungen von der COHPU über
die Busschnittstelle zu den Einfügepuffern
verantwortlich.
-
Wie
bereits oben erwähnt
wurde, umfassen die Anweisungen verschiedene Alarme und Reihenfolgen
für das
Handhaben der Overhead- oder anderer Bytes des ausgehenden Datenstroms.
Beide erhält
man durch das Verarbeiten der erhaltenen Overheadbytes unter Verwendung
von Regeln, die in der COHPU in einem so genannten Regel-RAM gespeichert
sind. Die gemeinsamen Verarbeitungseinheit COHPU ist demnach für das Bilden
der Anweisungen zu den Einfügepuffern
durch das Koordinieren von Alarmen in Kombination mit Reihenfolgen
bezüglich bestimmter
Bytes verantwortlich.
-
Die
COHPU ist vorzugsweise so programmiert, dass die Reihenfolge des
Empfangens der OH-Bytes von den Abtastwertpuffern zyklisch ist bezüglich der
Abtastwertpuffer, wohingegen sie sukzessive bezüglich der Overheadbytes in
einem ausgewählten
Abtastwertpuffer ist. Die Reihenfolge des Übertragens der Anweisungen
von der COHPU zu den Einfügepuffern
ist die gleiche, obwohl es mit einer bestimmten Verzögerung durchgeführt werden kann.
Da die Docketing-Informationen (ID-Informationen) zu der gemeinsamen Verarbeitungseinheit COHPU
von den Abtastwertpuffern weitergeleitet werden, ist die COHPU mit
Mitteln versehen (beispielsweise Hardware) zum Füllen der empfangenen ID-Informationen,
um die vollständigen
ID-Informationen bezüglich
der empfangenen Overheadbytes (OH-Bytes) zu bilden, um die Verarbeitung
weiter zu steuern und zu synchronisieren.
-
Die
Busschnittstelle ist in der Lage, alle Übertragungen mit den geeigneten
ID-Informationen durchzuführen. Für den Fall,
dass die COHPU bei der maximalen technologisch akzeptierbaren Bitrate
arbeitet, arbeitet die Busschnittstelle bei einer reduzierten Bitrate,
die noch das Verarbeiten von OH-Bytes des Datenstroms hoher Ordnung
durch die gemeinsame OH-Verarbeitungseinheit (COHPU) ermöglicht. Wenn
beispielsweise die COHPU bei einer Bitrate von 311 MHz arbeitet,
was momentan die maximale technologische Grenze ist, sollte der
Schnittstellenbus bei einer beliebigen niedrigeren Bitrate arbeiten, die
noch die vollständige
Verarbeitung der OH-Bytes des Datenstroms hoher Ordnung mittels
der gemeinsam verwendeten COHPU ermöglicht.
-
Die
Einfügepuffer
sind mit jeweiligen internen Mikroprozessoren versehen, die für das Ausführen der
Anweisungen, die von der COHPU in den Einfügepuffern empfangenen werden,
verantwortlich sind, beispielsweise für das Einfügen geeigneter Inhalte in Overhead-
oder andere Bytes des ausgehenden Datenstroms hoher Ordnung gemäß den Anweisungen. Für das Ausführen von
Anweisungen bezüglich Nicht-Overheadbytes sind
den Einfügepuffern
vorzugsweise entsprechende zusätzliche
Pufferspeicherblöcke
zugeordnet.
-
Das
oben beschriebene System verwendet teilweise Prinzipien der Parallelverarbeitung
und ist auf Grund dessen schnell. Dank des Vorhandenseins eines
gemeinsamen OHPU-Blocks ermöglicht
das beschriebene System die Verarbeitung aller Overheadbytes und
sogar zusätzlicher
Overheadbytes eines Datenstroms hoher Ordnung online und mit minimaler
Hardware. Die zusätzlichen
Overheadbytes sind als solche aufzufassen, die, gemäß den bestehenden
Standards, nicht obligatorisch zu verarbeiten sind, sondern eine
zusätzliche
Funktionalität
zur Verfügung
stellen würden,
falls sie mittels einer Hilfsinformationen geladen und verarbeitet
werden würden. Diese
zusätzlichen
Bytes zum Übertragen
und zum Verarbeiten zusätzlicher
Information können
aus Bereichen ausgewählt
sein, die in den Standards nicht als Overheadbereiche betrachtet
werden.
-
Weitere
Aspekte und Details der Erfindung werden aus den folgenden Zeichnungen
und der detaillierten Beschreibung ersichtlich werden.
-
Kurze Beschreibung
der Zeichnungen
-
Die
Erfindung wird im Folgenden unter Zuhilfenahme der folgenden, nicht
beschränkenden Zeichnungen
beschrieben, in denen:
-
1 ein
schematisches Blockdiagramm des Systems zum Handhaben von Overhead
von Datenströmen
hoher Ordnung gemäß der Erfindung
ist.
-
2 ein
Blockdiagramm einer Ausführungsform
der gemeinsamen Verarbeitungseinheit ist, die in 1 gezeigt
ist.
-
Detaillierte
Beschreibung der bevorzugten Ausführungsformen
-
1 zeigt
ein generalisiertes Blockdiagramm der Overheadmaschine 10,
die gemäß dieser bestimmten
Ausführungsform
dazu konstruiert ist, die Datenströme hoher Ordnung STM-256 handzuhaben.
Der eingehende STM-256 ist schematisch mit 12 markiert und durch
sechzehn (N = 16) Komponentendatenströme STM-16 dargestellt, die
parallel übertragen
werden. Die eingehenden Komponentendatenströme sind als STM-16(1), STM-16(2),
... STM-16(16) angezeigt. Der Zweck des Systems besteht darin, Overheadbytes
aller Komponentendatenströme
zu verarbeiten und, basierend auf den Ergebnissen der Verarbeitung,
einen abgehenden Datenstrom hoher Ordnung STM-256', markiert mit 14,
zu bilden. Jeder der eingehenden Komponentendatenströme wird
untersucht, um dessen Overheadbytes an einen korrespondierenden
Abtastwertpuffer aus einem Satz derartiger Puffer (allgemein markiert
mit 16) weiterzuleiten ("zu
extrahieren"). Im
Ergebnis speisen alle sechzehn Komponen tendatenströme jeweils
und allmählich
(byteweise) die Abtastpuffer SB 1, SB 2, ...SB 16 mit Overheadabschnitten
davon. In der Praxis erhält
und speichert jeder der Abtastwertpuffer (Byte für Byte) Overheadabschnitte
der Basisdatenströme,
die die korrespondierenden Komponentendatenstrom bilden, der dem
bestimmten Abtastwertpuffer zugehörig ist. In diesem bestimmten Beispiel
laufen Overheadabschnitte von 48 Basisdatenströmen STS-1 durch jeden der Abtastpuffer.
Die Abtastwertpuffer können
eine relativ geringe Kapazität
(sogar nur ein Byte) besitzen und sind dazu gedacht, die Overheadbytes
für eine
begrenzte Zeit zu halten – bis
zu einem Zeitpunkt, wenn ein bestimmtes Byte für die Verarbeitung hergenommen
wird. Die Abtastwertpuffer sind jeweils mit Mikroprozessoren (nicht
abgebildet) versehen, die beispielsweise die Extraktion der Overheadbytes
aus den Komponentendatenströmen
STM-16(1)... STM-16(16) steuern und das Docketing in den Puffern
führen.
-
Es
sollte klar sein, dass jeder Komponentendatenstrom des Datenstroms
hoher Ordnung von dem Punkt seines Overheads verarbeitet werden sollte.
Es sollte auch klar sein, dass die für das Verarbeiten von Overheadbytes
von jedem Komponentendatenstrom benötigte Hardware ziemlich komplex ist.
Andererseits sind die Hardwareeinheiten, die für die OH-Verarbeitung unterschiedlicher
Komponentendatenströme
(darüber
hinaus sogar von unterschiedlichen Basisdatenströmen) verwendet werden, tatsächlich identisch.
Gemäß dem besten
Wissen des Anmelders wurden jedoch derartige Hardwareeinheiten nie
für das
Handhaben von mehr als einem Komponentendatenstrom eines hochbitratigen
Datenstroms (beispielsweise STM-256) verwendet. Der Grund dafür liegt
in der Überlegung,
das Schnelligkeitsmerkmal zu verlieren, was jetzt als nicht gerechtfertigt
erscheint.
-
Bei
der in 1 veranschaulichten Ausführungsform werden die Overheadbytes
in den Abtastwertpuffern SB1... SB16 bei der Bitrate des Komponentendatenstroms
STM-16, das heißt,
bei 311 MHz, gespeichert. Diese Bytes werden dann Byte für Byte zu
einer gemeinsamen OH-Verarbeitungseinheit COHPU 20 (über einen
Schnittstellenbus 16) mit der Bitrate von 77 MHz, das heißt, viermal
langsamer als die Bitrate von STM-16, übertragen. Diese Bytes werden
aus den Abtastwertpuffern SB1...SB16 in einer zyklischen Reihenfolge
genommen, so dass alle Komponentendatenströme, die die Abtastwertpuffer speisen,
im Wesentlichen parallel gehandhabt werden. In einem Abtastwertpuffer,
auf den momentan zugegriffen wird, wird das erste verfügbare OH-Byte ausgewählt, so
dass die Reihenfolge innerhalb des Abtastwertpuffers sukzessiv ist.
Eine derartige Ausbildung ermöglicht
das Minimieren der Hardware der Abtastwertpuffer. Jedes der OH-Bytes
wird mit seiner ID-Information (Docketing- Information) (Pfeile 15) übertragen,
die einen Hinweis auf den Typ des Overheadbytes (d. h. seine Nummer
in einem Basisdatenstrom) und seinen Ort (d. h. die Nummer des Basisdatenstroms
in dem Komponentenstrom) umfasst. Die ID-Vervollständigung kann in der COHPU 20 durch
das Auffüllen
der Docketingdaten mittels der Nummer des Komponentendatenstroms,
zu dem das Byte gehört,
durchgeführt
werden.
-
Die
COHPU 20 arbeitet bei der hohen Geschwindigkeit von 311
MHz. Ergebnisse dieser Verarbeitung in der Einheit 20 werden
daraus über
den Schnittstellenbus 18 bei der niedrigeren Geschwindigkeit
von 77 MHz ausgegeben. Die Geschwindigkeit, die für die Interaktion
des Schnittstellenbus 18 mit den Abtastwertpuffern 16 einerseits
und der COHPU 20 andererseits gewählt ist, ermöglicht es, das
richtige Zeitgleichgewicht zwischen dem Prozess des Speisens der
Overhead-Handhabungseinheit 20 mit
Daten, dem Prozess des Handhabens der Daten in der Einheit 20 und
auch dem Prozess des Ausgebens der Ergebnisse der Verarbeitung von
der Einheit 20 über
den Schnittstellenbus 18 zu erhalten.
-
Die
COHPU-Einheit 20 stellt eine Verarbeitung jedes empfangenen
Overheadbytes sicher und führt
und verfolgt dessen ID-Informationen.
-
Die
Ergebnisse der Overhead-Verarbeitung, die man in der Einheit 20 erhält, werden
in der Form von Anweisungen ausgegeben, die man bei dem Handhaben
jedes der Overheadbytes erhält.
Gemäß den ID-Informationen,
die in der Einheit 20 für
jedes der OH-Bytes geführt
werden, werden die Anweisungen über
den Schnittstellenbus 18 zu den jeweiligen Einfügepuffern
IB1, IB2, ... IB16 eines Satzes 22 weitergeleitet (Pfeile 15).
Jeder der Einfügepuffer
ist dazu gedacht, die Anweisungen, die von der Einheit 20 erhalten
werden, unter Berücksichtigung
des Overheads- und anderer Bytes eines bestimmten Komponentendatenstroms
auszuführen,
der diesem Einfügepuffer
zugeordnet ist. Die Einfügepuffer
speichern lediglich die OH-Bytes, die in den Datenstrom einzufügen sind.
Die Kapazität
dieser Puffer ist die gleiche wie die der Abtastwertpuffer. Wenn
jedoch gemäß einer
bestimmten Anweisung ein beliebiges Muster in Nicht-OH-Bytes des
Stroms einzuführen ist,
werden zusätzliche
Mittel organisiert, um Informationen in andere durchlaufende Bytes
des ausgehenden Stromes einzufügen.
Für Operationen
mit Nicht-OH-Bytes des Stroms können
nämlich
die Einfügepuffer
mit jeweiligen zusätzlichen
Puffern (nicht abgebildet) versehen sein. Die ID-Informationen,
die mit den Anweisungen empfangen werden, ermöglichen es dem geeigneten Einfügepuffer
(etwa IB1), die richtigen Bytes von dem entsprechen den Komponentendatenstrom
(STM-16(1')) zu
detektieren und mit diesen die benötigten Operationen durchzuführen, d.h.
in den Strom die benötigten
Informationen einzufügen. Ähnliche
Operationen finden im Hinblick auf die zugeordneten zusätzlichen
Puffer statt, wenn geeignete Anweisungen empfangen werden. Beim Ausführen der
Anweisungen (die bei der Bitrate von 311 MHz auszuführen sind)
werden die relevanten Bytes in den entsprechenden Komponentendatenstrom
(etwa STM-16(1')
des ausgehenden Datenstroms hoher Ordnung 14 (STM-256')) eingefügt.
-
Die
Eigenschaften und der Zweck der Anweisungen, die von der gemeinsamen
OH-Verarbeitungseinheit 20 an
die Einfügeabtastwerte 22 ausgegeben
werden, werden in 2 detaillierter angegeben.
-
2 veranschaulicht
detaillierter ein Blockdiagramm der gemeinsamen Overheadverarbeitungseinheit
(COHPU) 20, um deren Struktur und Funktionen zu spezifizieren.
Die COHPU umfasst einen Overhead-Maschinencontroller (OMC), der
mit 24 markiert ist, mit "n" Operatorblöcken OP1,
OP2, ... OPn, allgemein mit 26 bezeichnet, einen Interrupt-Handler
IH 28, einen Alarm-Korrelierer AC 30, einen Maschinenschnittstellenblock
MPIF 32 und einen Hilfs-/Einfügeblock AUX/INS 34.
-
Der
OMC-Block 24 empfängt
sukzessive von dem Schnittstellenbus 18 Overheadbytes,
die jeweils mit ID-Informationen versehen sind, die anzeigen, zu welchem
Komponentendatenstrom (Abtastwertpuffer), zu welchem Basisdatenstrom
(Einheit) und zu welcher Art (Nummer des Bytes in der Einheit) es
gehört.
Die Informationen, die von den Abtastwertpuffern über den
Schnittstellenbus 18 übertragen
werden, sind schematisch mit Pfeilen 23 markiert. Gemäß einer
in dem OMC gespeicherten und Regel-RAM genannten Tabelle 38 wählt der
OMC einen Operatorblock OP1-OPn aus, an den das momentan empfangene
Byte für
die Verarbeitung weiterzuleiten ist. Es sollte festgehalten werden,
dass ein und dieselbe Art der Verarbeitung (ein und derselbe Operatorblock)
für mehr
als einen Overheadbyte des Basisdatenstroms geeignet sein kann.
Die Operatorblöcke 26 sind
für das
Durchführen
eines beliebigen Typs des Handhabens verantwortlich, der für das Verarbeiten
aller Overheadbytes des Basisdatenstroms, der für das System gewählt wurde,
benötigt
wird. In dem vorliegenden Beispiel ist der Basisdatenstrom der STS-1-Strom,
und die Operatorblöcke
OP1-OPn sind in der Lage, neun feste (standardisierte) Overheadbytes
und zwei zusätzliche
(programmierte) Overheadbytes dieser Einheit handzuhaben. Für den eingehenden
Datenstrom STM-256 wird demnach die COHPU ihre Verarbeitung für jedes
Overheadbyte in den 16 Komponentendatenströmen, die jeweils 48 Basisda tenströme (Einheiten)
umfassen, wiederholen: (9 + 2) × 48 × 16.
-
Beim
Verarbeiten eines spezifischen Overheadbytes in einem geeigneten
Operatorblock gibt er zumindest eine Anweisung heraus. Die Anweisung kann
aus einem Alarm bestehen, der an den Interrupt-Handler 28 weitergeleitet
wird (siehe Pfeile von OP1, OP2, OP3), einige Arten von Alarmen
werden an den Block der Alarmkorrelation 30 (siehe Pfeile von
OP5, OPn) gesendet. Die Alarme können
beispielsweise ein AIS – Alarmanzeigesignal
("AIS = alarm indication
signal"), EBER – übertroffene
Bitfehlerrate ("EBER
= exceeded bit error rate"),
SD – Signalverschlechterung
("SD = signal degrade"), etc. sein. Der
Alarmkorrelierer 30 gibt ein resultierendes Alarmsignal
an die AUX/INS-Einheit 34 aus. Alternativ oder zusätzlich hierzu
können
die Operatorblöcke spezifische,
in den ausgehenden Strom (siehe OP4) einzufügende Inhalte des Overheadbytes
herausgeben, und derartige Inhalte werden an den AUX/INS-Block 34 weitergeleitet
und zeitweise darin in einem Speicherpuffer 40 gespeichert.
Diese Option trifft auf Fälle
zu, in denen ein bestimmtes Overheadbyte in dem eingehenden Datenstrom
hoher Ordnung mit einer unterschiedlichen Information in dem ausgehenden
Strom gefüllt
werden soll. Aufgrund dieser Tatsache sollte der Speicherpuffer 40 des
Blocks 34 für
das Speichern von Informationen bei derartigen Vorkommnissen ausreichend
sein. Die COHPU 20 ist mit einem Schnittstellenblock 32 (MPIF – Mikroprozessorschnittstelle)
verbunden, der Alarme von dem Interrupt-Handler 28 und externe Befehle
von der äußeren zentralen
Verarbeitungseinheit (CPU, nicht abgebildet) empfängt, die
mit anderen Overheadmaschinen in dem System verbunden ist. Der äußere Prozessor
ist für
die Datensammlung für
eine Anzahl äußerer Zwecke
verantwortlich und für
das Weiterleiten von allgemeinen Anweisungen, wie etwa Konfigurationsreihenfolgen
(beispielsweise ob die OHM den Strom ohne Veränderungen (transparent) weiterleitet
oder die Ergebnisse der Verarbeitung einfügen sollte), an die Elemente
der OHM 10. Die MPIF 32 ist ein Instrument zum
Konfigurieren beliebiger Blöcke
der OHM von der CPU. Die MPIF beeinflusst beliebige Blöcke über ihren
korrespondierenden Konfigurations-RAM (nicht abgebildet). Auch sammelt
sie alle Alarme, um sie der CPU zu senden.
-
Der
OMC 24 und der AUX/INS 34 sind bilateral miteinander
verbunden. Der OMC hält
die ID-Informationen, während
der AUX empfangene Daten von den Operatoren/dem Alarmkorrelierer
für spezifische
Bytes speichert; in der Praxis frägt der OMC 24 den
AUX/INS 34 bzgl. Daten, die eine spezifische ID betreffen,
ab, empfängt
die angefragten Daten (Byteinhalte und/oder Reihenfolgen) vom Block 34 und
sendet sie an den entsprechenden Einfügepuffer mit den ID-Informationen
(Anweisungspfeile 46).
-
Mit
anderen Worten, die von der COHPU erzeugten Anweisungen 46 werden
aus Alarmen und Reihenfolgen bezüglich
Overheadbytes gebildet.
-
Die
Anweisungen 46, die von dem OMC 24 ausgegeben
werden, werden von geeigneten ID-Informationen begleitet und können beispielsweise
die folgenden Eigenschaften aufweisen:
- 1. Das
spezifizierte Overheadbyte soll ohne Veränderungen in den ausgehenden
Datenstrom weitergegeben werden;
- 2. Das spezifizierte Overheadbyte soll mit einem vorbereiteten
Datenwert (der Datenwert wird aus dem Speicherpuffer 40 gelesen
und an den geeigneten Einfügepuffer
im Umfang der Anweisung übertragen)
ersetzt werden;
- 3. Das spezifizierte Overheadbyte soll korrigiert werden (die
Korrektur ist der Anweisung beigefügt);
- 4. Alle Bytes in einem bestimmten Basisdatenstrom oder einem
bestimmten Komponentendatenstrom sollen mit lauter und "111", lauter "000" (Fälle allgemeiner
Alarme, wie etwa AIS) oder einem anderen Muster (etwa PRBS = "pseudo random binary
sequence"/binäre Pseudozufallssequenz)
gefüllt
werden.
-
Während die
COHPU 20 bei der Bitrate von 311 MHz arbeitet, werden die
Overheadbytes mit der ID (23) und den Anweisungen mit der
ID (46) bei der Bitrate von 77 MHz an die Einfügepuffer
(22, 1) übertragen, wo sie ausgeführt werden.
-
Die
Reihenfolge des Übertragens
von Daten von der COHPU zu den Einfügepuffern ist die gleiche wie
von den Abtastwertpuffern zu der COHPU, kann aber eine Verzögerung aufweisen,
die den Betrieb der Overheadmaschine nicht beeinflusst. Beispielsweise
benötigt
der OMC Daten bezüglich
eines bestimmten OH-Bytes. Wenn das Ergebnis für ein bestimmtes OH-Byte fertig
ist, wird es in ein kommendes relevantes Bytes des Stromes eingefügt. Wenn es
noch nicht fertig ist, wird das vorhergehende Resultat in den augenblicklichen
Rahmen des Stromes als Antwort auf die OMC-Anfrage eingefügt. Die äußere Prozessoreinheit
kann anordnen, die Overhead-Verarbeitung
zu vernachlässigen
und den eingehenden Datenstrom transparent zu übertragen, ohne irgendwelche
Veränderungen.
Die Resultate der Overhead-Handhabung
können
dann in dem äußeren Prozessor
für Statistik-,
Rechnungsstellung- und andere Zwecke gesammelt werden.