-
Die
vorliegende Erfindung betrifft ein Verfahren zur Kompression von
Daten, die in Paketen enthalten sind, die Protokolldateneinheiten
darstellen, die von Endgeräten über ein
Paketvermittlungsnetz ausgetauscht werden.
-
Insbesondere
betrifft die Erfindung ein Verfahren zur Kompression erster Datenpakete,
die von einem Endgerät
ausgesandt werden, in zweite Datenpakete, die durch ein Paketvermittlungsnetz übertragen
werden, wobei die ersten und die zweiten Pakete jeweils einen Kopf
enthalten, der eine konstante Länge
hat, und ein Datenfeld, das höchstens
eine Maximallänge
hat, wobei eine Nachricht, die vom Endgerät ausgesandt wird, aus K +
1 aufeinander folgenden ersten Paketen besteht, wobei K eine ganze
Zahl größer oder
gleich Eins ist und im Allgemeinen von einer Nachricht zur anderen
verschieden ist.
-
Ein
derartiges Verfahren beabsichtigt vor Allem, die Kosten einer Verbindung
zwischen zwei Endgeräten
zu verringern, indem die Anzahl zweiter Pakete im Vergleich zur
Anzahl der entsprechenden ersten Pakete verringert wird. Der Betreiber
des Paketvermittlungsnetzes, wie etwa des Netzes TRANSPAC (Handelsmarke), bestimmt
die Kosten einer Verbindung zwischen zwei Endgeräten in Abhängigkeit von einer Gebühreneinheit, die
Abrechnungssegment genannt wird, und die ein ganzzahliger Teiler
der Maximallänge
des Datenfeldes der Pakete im Netz sein kann. Typischerweise beträgt die Maximallänge der
Datenfelder 128 Bytes und ein Abrechnungssegment umfasst 64 Bytes.
Dementsprechend haben die Benutzer ein Interesse daran, die Anzahl an
Paketen oder übertragenen
Segmenten zu reduzieren und die übertragenen
Pakete oder die Hälften
der Datenfelder vollständig
zu füllen.
-
Die
Kompression muss außerdem
die Einschränkungen
berücksichtigen,
die durch das Paketvermittlungsnetz auferlegt werden. Die zweiten
Pakete komprimierter Daten müssen
ein mit den ersten Paketen identisches Format haben, damit das Netz
nicht weiß,
dass die Datenpakete eine Kompression erfahren haben. Mit anderen
Worten: Die Kompression muss für
das Format der Pakete transparent sein.
-
Die
Erfindung betrifft also nicht eine Datenkompression, die insbesondere
in einer DATAMISER-Einrichtung (Handelsmarke) angewandt wird, bei
der nicht nur die Daten in den Datenfeldern der ersten Pakete komprimiert
werden, sondern auch die Angaben, die in den Köpfen der ersten Pakete enthalten
sind. Die zweiten Pakete haben dann ein Format, das sich von dem
der ersten Pakete unterscheidet.
-
Um
diesem Nachteil Abhilfe zu schaffen, werden nur die Daten in jedem
der ersten Pakete komprimiert, so dass jedes zweite Paket den Kopf
eines ersten Paketes enthält
und die komprimierten Daten dieses ersten Paketes. Der Wirkungsgrad
einer derartigen Kompression ist jedoch sehr gering, da sich die
Anzahl der Pakete nicht verringert, und selten finden sich Datenfelder
zweiter Pakete, deren Länge
geringer ist, als eine halbe Maximallänge.
-
FR-A-2
687 259 schlägt
vor, die Zahl zweiter Pakete durch Ausführen der folgenden Schritte
weiter zu verringern:
- – Kompression der Datenfelder
erster Pakete einzeln nacheinander in komprimierte Datenfelder,
- – Einführen eines
Unterkopfes aus zwei Bytes, der jedem Feld komprimierter Daten vorangeht,
der erlaubt, das erste entsprechende Paket zu rekonstruieren, wobei
der Unterkopf besondere Bits umfasst, die im Kopf des ersten Paketes
enthalten sind, sowie die Länge
des Feldes komprimierter Daten,
- – Verkettung
der Felder komprimierter Daten mit ihren Unterköpfen in eine Folge verketteter
Daten, und
- – Zerteilen
der Folge verketteter Daten in Datenelemente mit der Maximallänge der
Pakete, und
- – Bilden
jedes zweiten Paketes mit einem Datenelement und einem Kopf, der
keinem der Köpfe
der ersten Pakete entspricht.
-
Dieses
zweite Verfahren weist noch einen Nachteil auf, der sich im vorangehenden
Verfahren findet. Die Daten werden paketweise komprimiert, unabhängig vom
Aufbau der Nachricht, auch Sequenz genannt, aus einer Folge erster
Pakete, d.h. die ganze Zahl K ist immer gleich Null. Eine Nachricht
ist nämlich
eine fortlaufende Folge von Zeichen, die von einem Endgerät ausgesandt
werden, die nur in Pakete aufgeteilt wird, um den Erfordernissen
der Vermittlung im Paketnetz zu genügen. Indem sie die Nachricht
als Dateneinheit höherer
Ebene, als der der Pakete, nicht berücksichtigen, können die
bekannten Verfahren eine Zeichenkette in einer Nachricht, die teilweise
am Ende eines gegebenen ersten Paketes und am Anfang eines dem gegebenen ersten
Paket folgenden ersten Paketes enthalten ist, nicht komprimieren.
-
Ein
Rekonstruktionsunterkopf wird systematisch jedem Feld komprimierter
Daten zugeordnet, d.h. jedem der ersten Datenpakete, und ist im
Datenfeld eines zweiten Paketes enthalten. Die Länge der komprimierten Daten
einer Nachricht in den Datenfeldern zweiter Pakete wird also durch
die Zahl an Unterköpfen
und also die erster Pakete der Nachricht verringert.
-
Schließlich sind
nach dem Verfahren von FR-A-2 687 259 die Unterköpfe der zweiten Pakete relativ zu
den Köpfen
der ersten Pakete unbestimmt, was die Transparenz des Kompressionsverfahrens
bezüglich des
Vermittlungsnetzes begrenzt. Insbesondere besondere Bits, wie die
Bits M und D entsprechend der Mitteilung X.25 der C. C. I. T. T.
in den Köpfen
der ersten Pakete werden nicht in die Köpfe der zweiten Pakete übertragen.
Beispielsweise kann das Netz zweite Pakete nicht gruppieren, um
die Größe der Gruppen
zweiter Pakete an die von Datenpaketen anzupassen, die in einem
Zielendgerät
verarbeitet werden. Empfangsbestätigungsanforderungen
erster Pakete, die in den Köpfen
der ersten Pakete enthalten sind, werden nicht in die Köpfe der
zweiten Pakete übertragen.
Damit kann das Netz fälschlich
eine Folge zweiter Pakete gruppieren, in deren Mitte eine Empfangsbestätigungsanforderung
vorgesehen ist (Bit D = „1").
-
Das
Hauptziel der Erfindung besteht darin, den Datenkompressionsfaktor
im Vergleich zu den oben genannten Verfahren zu erhöhen. Insbesondere
betrachtet die Erfindung als Dateneinheit jede Nachricht, die aus
K + 1 ersten Paketen besteht, wobei K eine ganze Zahl ist mit K ≥ 1.
-
Zu
diesem Zweck ist ein Kompressionsverfahren, wie es in der Einleitung
definiert wurde, durch die folgenden Schritte gekennzeichnet:
- – fortschreitende
Verkettung der Datenfelder der K + 1 ersten Pakete jeder Nachricht
zu verketteten Daten,
- – fortschreitende
Kompression der verketteten Daten jeder Nachricht zu komprimierten
Daten nach einem vorher festgelegten Kompressionsalgorithmus,
- – Einfügen eines
Nachrichtenendewortes am Ende der komprimierten Daten jeder Nachricht,
und
- – fortschreitende
Bildung zweiter Pakete mit Datenfeldern, die höchstens bis zur Maximallänge fortschreitend
mit den komprimierten Daten gefüllt
werden.
-
Die
Verkettung der Datenfelder der ersten Pakete in jeder Nachricht
vor jeglicher Kompression erlaubt es, die Zeichen einer Zeichenkette
zu vereinigen, die auf zwei aufeinander folgende erste Pakete verteilt
sind. Die Erkennung dieser Zeichenkette durch den Kompressionsalgorithmus
trägt dazu
bei, die Länge
der komprimierten Daten zu verringern. Nach der vorbekannten Technik
wird eine derartige Zeichenkette in mindestens zwei oder mehr Zeichenketten
zerlegt, die durch die beiden aufeinander folgenden ersten Pakete
getrennt werden.
-
Da
die Erfindung mit dem Nachrichten-Konzept verbunden ist, hat sie
auch zum Ziel, den Inhalt der Köpfe
jedes der ersten Pakete zu analysieren. Diese Analyse leitet die
Verkettung der Datenfelder in Abhängigkeit von den Nachrichten,
aber auch von besonderen Anforderungen des Endgerätes. Die
in den Köpfen der
ersten Pakete enthaltene wesentliche Information kann dann in die
Köpfe der
zweiten Pakete übertragen werden.
Unter diesen Bedingungen ist eine Kompressionsvorrichtung, die das
erfindungsgemäße Kompressionsverfahren
ausführt
und zwischen einem Endgerät
und einem Netzzugang eingefügt
ist, vollkommen transparent.
-
Im
Wesentlichen werden drei besondere Bits, M, D und Q, die in der
Mitteilung X.25 der C. C. I. T. T. definiert sind, analysiert.
-
Wenn
der Kopf jedes der ersten und zweiten Pakete ein erstes Bit M enthält, befindet
sich das erste Bit in den K ersten Paketen einer Nachricht in einem
ersten Zustand und befindet sich das erste Bit im letzten ersten
Paket der Nachricht in einem dem ersten Zustand entgegengesetzten
Zustand. In einer ersten Ausführungsform
befindet sich das erste Bit in den Köpfen zweiter Pakete, deren
Datenfeld die Maximallänge
hat und mit komprimierten Daten der Nachricht endet, im genannten
ersten Zustand, und das erste Bit im Kopf eines letzten zweiten
Paketes, das mindestens das Nachrichtenendewort der Nachricht enthält und mit
einem Nachrichtenendewort endet, befindet sich im entgegengesetzten
Zustand. In einer zweiten Ausführungsform
befindet sich das erste Bit in den Köpfen der zweiten Pakete systematisch
im genannten entgegengesetzten Zustand, da das Ende der Nachrichten
in den zweiten Paketen durch ein Nachrichtenendewort markiert ist.
-
Wenn
der Kopf jedes der ersten und zweiten Pakete ein zweites Bit D enthält, befindet
sich das zweite Bit in einem ersten Paket in einem ersten Zustand,
unabhängig
vom Zustand des ersten Bits im ersten Paket, wenn das genannte Endgerät eine Empfangsbestätigung empfangen
möchte,
die vom Zielendgerät
gesandt wird, das das erste Paket quittiert. Erfindungsgemäß werden
die Daten in einem ersten Paket, das ein zweites Bit im genannten
ersten Zustand enthält,
nicht mit den Daten jedes folgenden ersten Paketes verkettet und komprimiert,
die komprimierten Daten, die sich aus der Kompression der Daten
im ersten Paket, das das zweite Bit im genannten ersten Zustand
enthält,
ergeben, werden sofort in mindestens ein zweites Paket übertragen
und ein zweites Paket, das mindestens das Nachrichtenendewort enthält, das
auf die genannten komprimierten Daten folgt, die sich aus der Kompression
mit einem zweiten Bit im genannten ersten Zustand ergeben.
-
Wenn
der Kopf jedes der ersten und zweiten Pakete ein drittes Bit Q enthält, ändert das
dritte Bit seinen Zustand nur zwischen dem letzten ersten Paket
einer ersten Nachricht zum ersten Paket einer zweiten Nachricht,
die auf die erste Nachricht folgt. Erfindungsgemäß enthält das zweite Paket, das das
Nachrichtenendewort enthält,
das auf die sich aus der Datenkompression ergebenden komprimierten
Daten folgt, keine anderen Daten nach dem genannten Nachrichtenendewort,
und die dritten Bits der zweiten Pakete, die komprimierte Daten
enthalten, die aus der ersten und der zweiten Nachricht stammen,
haben jeweils die Zustände der
dritten Bits, die in den ersten Paketen der ersten und der zweiten
Nachricht enthalten sind.
-
Ein
anderes Ziel der Erfindung besteht darin, die Laufzeit der zweiten
Pakete zu optimieren oder eher darin, eine relativ kurze Laufzeit
des Paketes mit einer relativ geringen Anzahl zweiter Pakete pro
Zeiteinheit zu suchen. Zwei Lösungen
werden durch die Erfindung empfohlen.
-
Nach
einer ersten Lösung
umfasst das Verfahren die Auslösung
einer vorbestimmten Verzögerungsschaltung
im Wesentlichen in Reaktion auf die Einfügung jedes ersten Nachrichtenendewortes
in ein sich bildendes zweites Paket und die Übertragung des genannten sich
bildenden zweiten Paketes, wenn die Verzögerungszeit abgelaufen ist,
selbst wenn das sich bildende zweite Paket die Maximallänge nicht
erreicht hat. Das Datenfeld dieses zweiten Paketes, dessen Bildung
durch den Ablauf der Verzögerungszeit
abgebrochen wurde, wird dann durch ein Nachrichtenendewort abgeschlossen.
-
Nach
einer zweiten Lösung
umfasst das Verfahren die Auslösung
einer vorbestimmten Verzögerungsschaltung
im Wesentlichen sofort bei Beginn der Bildung jedes zweiten Paketes
und die Einfügung
eines Zwischenendewortes am Ende des Datenfeldes des genannten zweiten
Paketes, wenn die Verzögerungszeit
abgelaufen ist, selbst wenn das genannte zweite Paket die Maximallänge nicht
erreicht hat.
-
Die
vorbestimmte Verzögerungszeit
kann zwischen dem genannten Endgerät und einem anderen Endgerät, für das die
ersten Datenpakete bestimmt sind, vor Sendung der ersten Pakete
durch das genannte Endgerät
ausgehandelt werden.
-
Die
Erfindung betrifft auch ein Verfahren zur Dekompression zweiter
Datenpakete, die nach dem erfindungsgemäßen Kompressionsverfahren gebildet
wurden. Dieses Dekompressionsverfahren umfasst die folgenden Schritte:
- – fortschreitende
Verkettung der komprimierten Nachrichtendatenfelder, die den Nachrichtenendewörtern in
den zweiten Paketen vorangehen, zu Gruppen verketteter komprimierter
Daten,
- – Unterdrückung der
Nachrichtenendewörter
am Ende der Gruppen verketteter komprimierter Daten,
- – fortschreitende
Dekompression der Gruppen verketteter komprimierter Nachrichtendaten
in dekomprimierte Daten der Nachrichten nach einem Dekompressionsalgorithmus,
der zum vorher festgelegten Kompressionsalgorithmus reziprok ist,
und
- – fortschreitende
Bildung erster Pakete mit Datenfeldern, die höchstens bis zur Maximallänge fortschreitend mit
den dekomprimierten Daten von Nachrichten gefüllt werden.
-
Weitere
Merkmale und Vorteile der vorliegenden Erfindung werden beim Lesen
der folgenden Beschreibung mehrerer bevorzugter Ausführungsformen
der Erfindung unter Bezug auf die entsprechenden beigefügten Zeichnungen
deutlicher werden. Es zeigen:
-
1 ein
schematisches Blockdiagramm einer Verbindung zwischen zwei Teilnehmerdatenendgeräten mit
Kompressions-Dekompressionseinrichtungen
durch ein Paketvermittlungsnetz,
-
2 den
Aufbau in mehreren Ebenen der Schnittstellen einer Einrichtung mit
dem entsprechenden Endgerät
und dem Paketvermittlungsnetz,
-
3 das
bekannte Format eines Datenpaketes,
-
4 ein
Diagramm der wesentlichen Schritte des erfindungsgemäßen Kompressionsverfahrens, zwei
Nachrichten mit drei bzw. einem ersten Paket betreffend, in denen
das erste besondere Bit M gesetzt ist,
-
5 ein
Diagramm der wesentlichen Schritte des erfindungsgemäßen Kompressionsverfahrens,
vier Nachrichten mit einem, drei, einem bzw. einem ersten Paket
betreffend, in denen das erste und das zweite besondere Bit M und
D gesetzt sind, und
-
6 ein
Diagramm des ersten und des letzten wesentlichen Schrittes des erfindungsgemäßen Verfahrens,
Nachrichten betreffend, die zu den in 5 gezeigten
analog sind, in denen ein drittes besonderes Bit Q gesetzt ist.
-
Wie
in 1 dargestellt, werden die erfindungsgemäßen Kompressions-
und Dekompressionsverfahren in Kompressions- und Dekompressionsvorrichtungen 1A und 2A ausgeführt, die
in einer Einrichtung 3A vereinigt sind. Diese Einrichtung 3A ist
zwischen ein Endgerät
TA vom Typ Datenendeinrichtung DEE und, durch eine Zweirichtungs-Telephonleitung
LTA, einen Zugang zu einem Paketübertragungsnetz
RP vom Typ Datenübertragungseinrichtung
DÜE geschaltet.
Mindestens ein anderes Endgerät
TB ist über
eine Einrichtung 3B, die eine Kompressionsvorrichtung 1B und
eine Dekompressionsvorrichtung 2B enthält, durch eine Zweirichtungs-Telephonleitung
LTB mit dem Netz RP verbunden. Es wird davon ausgegangen, dass das
Endgerät TA
als Sendeendgerät
mit dem Endgerät
TB als Zielempfangsendgerät
die Verbindung aufnimmt, obwohl das Endgerät TA durch das Netz RP auch
mit einem oder mehreren anderen Endgeräten gleichzeitig in Verbindung stehen
kann.
-
Die
Endgeräte
TA und TB und das Paketübertragungsnetz
sind nach der Mitteilung X.25 der CCITT entworfen. Ein Endgerät kann ein
einfaches Teilnehmerendgerät
sein oder eine Gesamtheit von Endgeräten nach X.25, die durch eine
Paketvermittlungseinrichtung nach X.25 versorgt wird, wie in 1 durch
eine Kompressions-Dekompressionseinrichtung 3C gezeigt.
Die in den Einrichtungen 3A und 3B ausgeführten Kompressions-
und Dekompressionsverfahren beziehen sich auf eine Schnittstelle
zwischen den drei unteren Schichten und den vier oberen Schichten
nach den Prinzipien für
die Archiktur offener Systeme (Open System Interconnexion OSI),
die von der ISO (International Standard Organisation) aufgestellt
wurden. Diese Schnittstelle, wie in 2 dargestellt,
ist direkt über
der Schicht 3 angeordnet, die Netzschicht genannt wird, und die die
Herstellung und den Empfang von Verbindungen, sowie die Leitweglenkung
von Informationen zwischen Teilnehmerendgeräten durch das Netz sicherstellt.
Kompression und Dekompression erfolgen dadurch der Mitteilung X.25
entsprechend auf der Paketebene, unterhalb der Transportschicht,
die von einem Ende zum anderen den Informationsaustausch durch das
Netz steuert.
-
Wir
beziehen uns also im Folgenden auf Pakete, wie sie in der Mitteilung
X.25 definiert sind, als Protokolldateneinheiten, die ins Informationsfeld
der Rahmen der Leitungsebene eingesetzt werden, d.h. der Schicht
2 der OSI-Architektur, die Verbindungsschicht genannt wird. Wie
hierunter dargestellt wird, können
die Köpfe
der Pakete in den Einrichtungen geändert werden. Die Köpfe der
durch die Einrichtungen übertragenen Pakete
erfüllen
jedoch weiterhin die Mitteilung X.25. Da Kompression und Dekompression
nur auf Datenpakete angewandt werden, wird deren Format hierunter
unter Bezug auf 3 für eine sequentielle Nummerierung modulo
8 der Datenpakete in jeder Übertragungsrichtung
in einer virtuellen Festverbindung oder bei einer virtuellen Kommunikation
in Erinnerung gerufen.
-
Der
Kopf eines Datenpaketes umfasst drei Bytes. Die vier ersten Bits
des ersten Bytes und das zweite Byte stellen die Nummer NVL des
logischen Kanals, der virtuellen Festverbindung oder der virtuellen
Verbindung dar, über
die das Paket übermittelt
wird. Erfindungsgemäß sind die
Nummer NVL, sowie das fünfte
und sechste Bit auf „1" oder „0" des ersten Bytes
und das erste Bit auf „0" des dritten Bytes
im Kopf eines Datenpaketes unberührbar
und werden systematisch in die Köpfe
der Datenpakete übertragen,
die die Kompressionsvorrichtung 1A, 1B oder die
Dekompressionsvorrichtung 2A, 2B verlassen.
-
Das
dritte Byte umfasst eine Nummer der gerade in Sendung befindlichen
Paketfolge aus drei Bits P(S), die Werte von 0 bis 7 annimmt und
nacheinander jedesmal, wenn ein erstes Datenpaket vom Endgerät TA gesendet
wird, um eine Einheit modulo 8 erhöht wird. Die drei letzten Bits
des dritten Bytes enthalten eine Nummer der gerade in Empfang befindlichen
Paketfolge P(R), die in ein Paket eingesetzt wird, das vom Netz RP
gesendet werden soll und vom Empfangsendgerät TB stammt, das Datenpakete
vom anderen Endgerät TA
empfangen hat, nachdem das Endgerät TA Datenpakete gesendet hat,
die eine Nummer P(S) höchstens gleich
P(R)-1 enthalten und vom Endgerät
TB empfangen wurden. In Übereinstimmung
mit der Mitteilung X.25 werden die Nummern P(S) und P(R) in den
beiden Übertragungsrichtungen
durch eine Einrichtung entsprechend den erfindungsgemäß ausgeführten Verkettungen
und Gruppierungen geändert.
-
Der
Kopf eines Datenpaketes enthält
auch drei besondere Binärworte,
nämlich
drei besondere Bits M, D und Q, die sich im fünften Bit des dritten Bytes,
bzw. im siebten und achten Bit des ersten Bytes befinden. Da das
zweite und dritte besondere Bit D und Q seltener verwendet werden,
wird in einer ersten Variante angenommen, dass sie ohne Bedeutung
sind und auf den Wert „0" gesetzt sind.
-
Das
erste besondere Bit M ist mit dem Konzept der Datennachricht verbunden.
Eine Datennachricht, die eine Dateneinheit der Transportebene 4
darstellt, ist eine Folge zusammenhängender Daten, die in aufeinander
folgenden K vollständigen
und einem letzten Paket von einem Endgerät oder einem Zugang zum Paketvermittlungsnetz
gesandt werden, wobei K eine ganze Zahl größer oder gleich Null ist. Das
Bit M stellt eine Markierung für
folgende Daten dar, die in allen Datenpaketen auf „1" gesetzt ist, außer dem
letzten Paket der Nachricht, um anzugeben, dass im folgenden Paket
andere Daten der Nachricht folgen werden. Das Bit M im letzten Paket
der Nachricht, unabhängig
davon, ob die Nachricht aus einem einzigen vollständigen oder
unvollständigen
Paket besteht, was K = 0 entspräche,
oder aus mehreren Paketen, ist immer auf „0" gesetzt. Ein vollständiges Paket, auch volles Paket
genannt, ist ein Paket, dessen Datenfeld voll ist und eine Maximallänge LMAX
typischerweise gleich 128 oder 256 Bytes hat.
-
Für LMAX =
128 Bytes beispielsweise, wie im Schritt E0 in 4 gezeigt,
besteht während
einer gegebenen virtuellen Verbindung eine erste Nachricht ME1 aus
K + 1 = 3 ersten Paketen PT11, PT12 und PT13, die vom Endgerät TA ausgesandt
werden. Die Datenfelder DT11 und DT12 der beiden ersten Pakete PT11
und PT12 sind vollständig
und enthalten 128 Bytes. Das Datenfeld DT13 des letzten Paketes
PT13 der ersten Nachricht ME1 ist unvollständig und enthält beispielsweise
100 Bytes, also eine Nachricht ME1 von 356 Bytes. Eine zweite Nachricht
ME2 enthält
nur ein einziges Paket PT21, das unvollständig ist, wobei das Datenfeld DT21
dieses Paketes beispielsweise nur 70 Bytes enthält.
-
Die
Kompressionsvorrichtung 1A (siehe 1) und die
Dekompressionsvorrichtung 2A in ein und derselben Einrichtung 3A arbeiten
unabhängig
voneinander. Eine Kompression kann in der Vorrichtung 1A erfolgen
und eine Dekompression kann bei der Übertragungsrichtung von TA
nach TB in der Dekompressionsvorrichtung 2B in der anderen
Einrichtung 3B erfolgen, ohne das Kompression und Dekompression
in den Einrichtungen 3B bzw. 3A erfolgen. Beispielsweise
können
die Kompressionsvorrichtung 1B und die Dekompressionsvorrichtung 2A weggelassen
werden.
-
Außerdem sind
im Inneren einer Kompressionsvorrichtung 1A, 1B bzw.
einer Dekompressionsvorrichtung 2A, 2B die virtuellen
Leitungen und Verbindungen unabhängig
voneinander. Die Datenpakete bestimmter virtueller Leitungen und
Verbindungen, die eine Kompressions- bzw. Dekompressionsvorrichtung
durchlaufen, können
eine Kompression bzw. Dekompression erfahren; die Datenpakete anderer
virtueller Leitungen und Verbindungen können die Vorrichtung ohne Änderung
durchlaufen und werden als in der kompressionsfreien Betriebsart
bezeichnet.
-
Bei
Herstellung einer virtuellen Verbindung vom anrufenden Endgerät TA aus,
prüft die
Einrichtung 3A, ob das angerufene ferne Endgerät, wie etwa
das Endgerät
TB, über
eine Dekompressionsvorrichtung 2B verfügt, wenn die virtuelle Verbindung
mindestens unidirektionell ist, und die Pakete in der Richtung TA
nach TB komprimiert werden müssen,
und/oder über
eine Kompressionsvorrichtung 1B verfügt, wenn die virtuelle Verbindung
mindestens unidirektionell ist und die Pakete in der Richtung TB
nach TA komprimiert werden müssen, und/oder über Dekompressions-
und Kompressionsvorrichtungen 2B und 1B verfügt, wenn
die virtuelle Verbindung bidirektionell ist. Hierfür prüft die Einrichtung 3A die
Konfiguration des angerufenen Endgerätes TB durch Vergleich mit
den Endgerätadressen,
die in eine im Speicher programmierte Adressentabelle eingetragen
sind. Wenn das angerufene Endgerät über keine
Kompressions- und Dekompressionsvorrichtungen verfügt, sind
die Vorrichtungen 1A und 2A in der Einrichtung 3A für diese
virtuelle Verbindung inaktiv, die in der kompressionsfreien Betriebsart
stattfindet. Wie im Folgenden deutlich werden wird, wird der Kompressionsschritt
E2 in den 4 und 5 in der
kompressionsfreien Betriebsart ausgelassen.
-
Auf
diese Weise wird, wenn die Einrichtung 3A ein Anrufpaket
empfängt,
das vom anrufenden lokalen Endgerät TA gesendet wurde, die Verbindung
als komprimierbar betrachtet, wenn sich die Adresse des angerufenen
Endgerätes
TB, die im Anrufpaket erscheint, in der Adressentabelle befindet.
Ebenso wird, wenn die Einrichtung 3A ein Anrufpaket empfängt, das
durch das Netz RP vom fernen anrufenden Endgerät TB gesendet wurde, die Verbindung
als komprimierbar betrachtet, wenn die Adresse des anrufenden Endgerätes TB, die
im Anrufpaket enthalten ist, sich in der Adressentabelle befindet.
Wenn eines der Endgeräte
TA, TB eine Vermittlung ist, die mehrere Endgeräte versorgt, prüft die entsprechende
Einrichtung 3A, 3B ebenfalls, ob die Unteradresse
des anrufenden oder angerufenen Endgerätes sich in der Adressentabelle
befindet.
-
Danach,
sobald sich die Einrichtungen 3A und 3B erkannt
haben, handeln sie Parameter der Datenkompressionsfunktion aus,
wie etwa einen Parameter P0, der die Übertragungsrichtung/en,
in denen die Kompression verwendet wird, angibt, einen Parameter
P1, der die Anzahl der Codewörter angibt,
die die Größe der Codetabelle
darstellt, und einen Parameter P2, der die
maximale Zeichenkettenlänge
in Bytes angibt, entsprechend der Empfehlung V.42bis der CCITT,
Genf 1990. Typischerweise liegt der Parameter P2 zwischen 6 und 20.
-
Nach
einer bevorzugten Ausführungsform
sind drei progammierbare Größen von
Codetabellen D1, D2 und D3 von beispielsweise 40 kByte, 20 kByte
und 10 kByte vorgesehen. Die Anzahl an Codetabellen jeder Größe ist in
Abhängigkeit
von der Zahl zu komprimierender virtueller Leitungen reserviert.
Zwei Codetabellen sind für
die beiden Übertragungsrichtungen
jeder virtuellen Leitung oder Verbindung reserviert. Die Codetabellen
werden in Abhängigkeit
von der Auslastung der virtuellen Leitungen der Einrichtung und
von den empfangenen Aushandlungsparametern zugewiesen, wobei vorrangig
die Codetabellen großen
Umfangs zugewiesen werden.
-
Die
folgende Tabelle gibt die Größe der reservierten
Codetabellen in Abhängigkeit
von der Maximalzahl zu komprimierender virtueller Leitungen CV von
höchstens
160 für
einen Codetabellenspeicher an, der mindestens eine Kapazität von 80 × 40 = 3200
kByte hat, d.h. in der Praxis einen Speicher von 4 Mbyte.
-
-
Für 50 virtuelle
Leitungen CV beispielsweise verfügt
die Einrichtung über
60 Codetabellen D1 von 40 kByte und 40 Codetabellen D2 zu 20 kByte.
Der Kompressionsfaktor, der dem augenblicklichen Verhältnis aus der
Zahl von Bits in den empfangenen Paketen PT und der Zahl von Bits
in den gesendeten Paketen PR ist, ist umso größer, je größer der Umfang der Codetabellen
ist, und ändert
sich also in Abhängigkeit
von den gewählten
Codetabellengrößen und
also der Zahl zu komprimierender virtueller Leitungen und Verbindungen.
-
Parameter über die
Kompression und die Betriebsmittel werden in Anruf- und Anrufsbestätigungspaketen
ausgetauscht oder nach Herstellung der Verbindung zwischen den Endgeräten in Datenpaketen.
-
Nach
diesem protokollgemäßen Austausch
von Parametern und der Herstellung der Verbindung zwischen den Endgeräten TA und
TB wird das erfindungsgemäße Kompressionsverfahren
ausgeführt,
beispielsweise in der Kompressionsvorrichtung 1A der Einrichtung 3A,
auf die wir im Folgenden Bezug nehmen werden, wenn die Verbindung
mindestens in der Richtung von TA nach TB in der Kompressionsbetriebsart
erfolgt. Die Datenkompression verwendet einen festgelegten adaptativen
Algorithmus vom Typ ZIV-LEMPEL, der dem ähnlich ist, der in der Empfehlung
V.42bis spezifiziert wird.
-
Ein
derartiger Kompressionsalgorithmus kodiert redundante Ketten mehrerer
Zeichen aus 1 Byte in Codewörter
mit einer Länge
von 9 bis 12 Bits. Unterschiedliche Ketten-Codetabellen sind den
hergestellten virtuellen Leitungen und Übertragungswegen zugeordnet.
Jede Codetabelle wird in der normalen Betriebsart dynamisch in dem
Maße aktualisiert,
wie die Bytes der ersten Pakete, die das Endgerät TA verlassen, in der Kompressionsvorrichtung 1A empfangen
werden. Die Länge
der Codewörter
wird laufend mit der der Zeichenketten verglichen, um die Effektivität der Kompression
zu testen. Wenn der Kompressionsfaktor unzureichend ist, d.h. wenn
eine Gruppe von Codewörtern
deutlich weniger lang ist oder aber länger ist, als die entsprechende
Zeichenkette, geht die Kompressionsvorrichtung in die transparente
Betriebsart über.
In dieser transparenten Betriebsart werden die Daten in nicht-komprimierter
Form übermittelt,
nachdem die Einrichtung 3A diese Änderung der Betriebsart durch
Steuercodes der fernen Einrichtung 3B mitgeteilt hat. Die
Codetabelle zur hergestellten virtuellen Verbindung jedoch wird
in den Einrichtungen 3A und 3B weiter aktualisiert.
-
Erfindungsgemäß erfolgt
die Datenkompression nicht für
alle vom Endgerät
TA ausgesandten ersten Pakete PT unabhängig voneinander, sondern nachrichtenweise.
-
Wie
in 4 gezeigt, umfasst das erfindungsgemäße Kompressionsverfahren
im Wesentlichen drei Schritte E1, E2 und E3 nach einem Anfangsschritt
des Empfangs eines Paketes E0. Alle diese Schritte werden hierunter
nacheinander beschrieben, um das Verständnis des Verfahrens zu erleichtern.
In der Praxis erfolgen diese Schritte gleichzeitig parallel zueinander;
ein Byte in einem ersten Paket PT wird gegebenenfalls mit folgenden
Bytes, die eine Zeichenkette bilden, verkettet und komprimiert,
jedoch ohne den Empfang der anderen Bytes dieses ersten Paketes
oder eines folgenden ersten Paketes abzuwarten.
-
Wie
schon gesagt, wird angenommen, dass das Endgerät TA zunächst in einer gegebenen virtuellen Leitung
der Einrichtung 3A eine erste Nachricht ME1 aus drei ersten
Paketen PT11, PT12 und PT13 und eine zweite Nachricht ME2 aus einem
eintigen ersten Paket PT21 übermittelt,
wobei die Pakete PT13 und P21 beispielsweise nicht voll sind.
-
Im
Schritt E0 stellt die Kompressionsvorrichtung 1A insbesondere
eine Unterbrechung von Flaggeen fest und trennt in jedem empfangenen
ersten Paket PT11, PT12, PT13, PT21 den Kopf ET11, ET12, ET13, ET21
und die Datenfelder DT11, DT12, DT13, DT21. Im so abgetrennten Kopf
wird das fünfte
Bit M des dritten Bytes analysiert, um den folgenden Schritt E1
vorzubereiten.
-
Wenn
das Bit M eines ersten Paketes sich in einem ersten Binärzustand „1" befindet, wie das
Bit M in den Köpfen
ET11 und ET12 der ersten Pakete PT11 und PT12, werden die Daten
des Feldes DT11, DT12 des ersten Paketes mit den vorangehenden Daten
derselben Nachricht ME1 in Schritt E1 verkettet. Die Verkettung besteht
darin, die Daten der Nachricht in einen Eingangspufferspeicher einzutragen,
so dass sie nacheinander gelesen werden, um im folgenden Schritt
E2 fortschreitend die Kompression vorzunehmen und den Empfang der
Daten DT12, DT13 im folgenden ersten Paket PT12, PT13 abzuwarten.
Sobald das Bit M in einem folgenden ersten Paket, wie etwa dem Paket
PT13, in den dem ersten Binärzustand
entgegengesetzten Zustand „0" übergeht, was das letzte erste
Paket der ersten Nachricht ME1 anzeigt, wird die Verkettung der
Datenfelder DT11, DT12 und DT13 in den vorangehenden Paketen PT11
und PT12 und dem letzten empfangenen Paket PT13 im Eingangspufferspeicher
gestoppt. Damit sind im Schritt E1 die Daten DT11, DT12 und DT13
der ersten Nachricht ME1 verkettet, wie sie es ursprünglich vor
der Paketierung und Sendung als erste Pakete im Endgerät TA waren.
-
Wenn
sich das Bit M im Kopf eines ersten Paketes im Zustand „0" befindet, wie etwa
im Kopf ET21 des Paketes PT21, das auf ein Paket PT13 folgt, dessen
Bit M ebenfalls im Zustand „0" ist, bildet dieses
Paket alleine eine Nachricht ME2. Der Kopf ET21 wird einfach von
den Daten DT21 getrennt, die nacheinander in den Eingangspufferspeicher
eingetragen und im folgenden Schritt E2 verarbeitet werden, unabhängig von
den Daten in den vorangehenden und folgenden Paketen, die in der
Kompressionsvorrichtung 1A empfangen werden.
-
Im
folgenden Schritt E2 wird jede Zeichenkette, die durch Verkettung
wieder vereinigt ist, die teilweise am Ende des Datenfeldes DT11,
DT12 eines Paketes der Nachricht ME1 und teilweise am Anfang des
Datenfeldes DT12, DT13 des folgenden Paketes der Nachricht ME1 enthalten
war, in ein einziges Codewort konvertiert, was die Wirksamkeit der
Kompression verbessert.
-
Die
Gruppen verketteter Daten (DT11, DT12, DT13) und (DT21) werden nach
dem festgelegten Kompressionsalgorithmus vom Typ ZIV-LEMPEL nacheinander
und unabhängig
voneinander im Schritt E2 komprimiert. Die verketteten Daten DT11,
DT12 und DT13 der ersten Nachricht ME1 werden zu komprimierten Daten DC1
komprimiert, die unmittelbar von einem Nachrichtenendewort FM1 gefolgt
sind, das das Ende der ersten Nachricht anzeigt. Ein anderes Nachrichtenendewort
FM2 markiert ebenfalls das Ende der komprimierten Daten DC2 der
Daten DT21 der zweiten Nachricht ME2. Auf jedes Ende komprimierter
Daten, die aus einem ersten Paket hervorgegangen sind, das ein Bit
M = „0" enthält, folgt
ein Nachrichtenendewort FM.
-
Das
Nachrichtenendewort FM umfasst nur zwei Bytes, wenn die Kompressionsvorrichtung 1A in
der transparenten Betriebsart arbeitet. Wenn beispielsweise die
komprimierten Daten DC1 im Wesentlichen die gleiche Länge haben,
wie die Daten DT11, DT12 und DT13, d.h. wenn die Kompressionsvorrichtung 1A fest gestellt
hat, dass die Kompression der ersten Nachricht ME1 die Länge des
Datenfeldes der ersten Nachricht nicht verringert, werden die nicht
komprimierten Daten (DT11, DT12, DT13) = DC1 in Schritt E2 vom Nachrichtenendewort
zu zwei Byte gefolgt. Das Nachrichtenendewort besteht aus einem
Datenübertragungsumschaltungszeichen
und einen Sequenzende- d.h. Nachrichtenendesteuercode, wie sie in
der Empfehlung V.42bis definiert werden. Die nicht komprimierten
Daten werden dann erst nach Sendung eines Codewortes für den Übergang
in die transparente Betriebsart PMT von der Vorrichtung 1A zur
Vorrichtung 2B übertragen.
-
Wenn
die Kompressionsvorrichtung 1A in der Kompressionsbetriebsart
arbeitet, ist das Nachrichtenendewort FM1, FM2 ein Steuercodewort ähnlich dem
Code FLUSH nach der Empfehlung V.42bis. Das Wort FM1, FM2 umfasst
dann 9 bis 12 vorher festgelegte Bits.
-
Die
so komprimierten Daten DC1, DC2 mit dem entsprechenden Nachrichtenendewort
FM1, FM2 sind so verkettet, wie in 4 in Schritt
E2 dargestellt.
-
Im
folgenden Schritt E3 werden die Datenfelder zweiter Pakete PR1,
PR2 für
die Übertragung
ins Paketvermittlungsnetz RP nacheinander mit den in Schritt E2
komprimierten Daten gefüllt.
-
Nach
dem in 4 dargestellten Beispiel füllt ein erster Teil DC11 der
komprimierten Daten DC1 der ersten Nachricht ME1 mit der Maximallänge LMAX
vollständig
das zweite Paket PR1. In der Praxis beginnt die Bildung dieses zweiten
Paketes PR1 komprimierter Daten in Schritt E3 vor dem Ende des vollständigen Empfanges
des ersten Paketes PT11, das vom Endgerät TA übertragen wird. Danach wird
ein zweiter und letzter Teil DC12 der komprimierten Daten DC1 der
ersten Nachricht ME1 am Anfang des Datenfeldes des zweiten folgenden
Paketes PR2 mit dem Nachrichtenendewort FM1 eingeführt. Abgesehen
vom Verstreichen einer Verzögerungszeit
TEM werden die komprimierten Daten DC2 der zweiten Nachricht ME2
ebenfalls mit dem Ende der komprimierten Daten DC12 der ersten Nachricht
ME1 im zweiten Paket PR2 gruppiert. Nach 4 füllen die
Daten DC2 mit dem Nachrichtenendewort MF2 nicht vollständig das
Paket PR2. Diese Vorgänge
der Füllung
zweiter Pakete und der Gruppierung komprimierter Daten erfolgen
mit Hilfe von Ausgangswarteschlangen.
-
Wenn
die Länge
der Gesamtheit der Daten DC12 und DC2 und der Nachrichtenendewörter FM1
und FM2 größer ist,
als LMAX, werden beispielsweise die Daten DC2 teilweise in das Paket
PR2 eingeführt,
das dann voll ist, und teilweise in das folgende zweite Paket, das
gegebenenfalls nur das Nachrichtenendewort FM2 enthält.
-
Sobald
ein zweites Paket, wie etwa das Paket PR1, voll ist, wird dieses
von der Vorrichtung 1A ins Netz RP übertragen. Vorzugsweise wartet
ein zweites Paket jedoch nicht, vollständig gefüllt zu sein, um ins Netz RP übertragen
zu werden, da ein derartiges Warten die Übertragung blockieren könnte, indem
eine Nachricht nur teilweise übertragen
würde,
die mehrere zweite Pakete umfasst, und durch Verschiebung der Übertragung
des Endes der Nachricht.
-
Erfindungsgemäß wird eine
Verzögerungsschaltung
TEM1 in der Kompressionsvorrichtung 1A in Antwort auf die
Endflagge ausgelöst,
die auf ein letztes erstes Paket einer Nachricht folgt und also
gewissermaßen in
Reaktion auf das erste Nachrichtenendewort FM1, das in ein zweites
Paket, wie etwa das Paket PR2, eingefügt wurde. Solange die Verzögerungszeit
TEM1 nicht abgelaufen ist, wird das Paket PR2 mit den folgenden komprimierten
Daten gefüllt,
wie etwa den Daten DC2 mit dem entsprechenden Nachrichtenendewort
FM2, unabhängig
davon, ob die folgenden komprimierten Daten aus einer oder mehreren
Nachrichten stammen. Wenn das Paket PR2 vor Ablauf der Verzögerungszeit
TEM1 vollständig
gefüllt
ist und die Länge
LMAX erreicht, wird das volle Paket PR2 sofort ins Netz RP übertragen.
Wenn dagegen bei Ablauf der Verzögerungszeit
TEM1 das Paket PR2 teilweise mit komprimierten Daten gefüllt ist,
wird dieses ins Netz RP übertragen, ohne
die teilweise oder vollständige
Kompression der Daten der gerade in Empfang befindlichen Nachricht oder
der folgenden noch nicht empfangenen abzuwarten.
-
Die
Verzögerungszeit
TEM1 in der Kompressionsvorrichtung 1A ist programmierbar.
Sie liegt bei einer Übertragungsrate
von 9600 Bit/s und einer Standardmaximallänge von Paketdatenfeldern von
LMAX = 128 Bytes zwischen 100 und 300 ms. Sie kann vor Herstellung
der virtuellen Verbindung zwischen den Endgeräten ausgehandelt werden, um
sie an die Übertragungsraten
der virtuellen Leitungen und Verbindungen und die Merkmale der Kompression
anzupassen. Wenn die Verzögerungszeit
TEM1 lang ist, verringert sie die Zahl zweiter Pakete und also die
Anzahl an Abrechnungssegmenten, die ins Netz RP übertragen werden, auf Kosten
der Zeit für
den Übergang
der Pakete zwischen den Einrichtungen 3A und 3B.
Die Verzögerungszeit
TEM1 stellt gewissermaßen
die maximale Übergangszeit
einer Nachricht, nachdem die Kompressionsvorrichtung das letzte
erste Paket der Nachricht erhalten hat, dar.
-
Nach
einer zweiten Ausführung
wird die Verringerung der Übergangszeit
gegenüber
der Verringerung der Anzahl zweiter Pakete komprimierter Daten privilegiert.
Diese zweite Ausführung
ist interessant, wenn die Einrichtungen 3A, 3B mit
einem privaten Paketvermittlungsnetz als Netz RP verbunden sind,
in dem die Kosten einer Verbindung nicht nach der Anzahl an Abrechnungssegmenten
abgerechnet werden. Statt ein zweites Paket PR2 zwischen zwei Nachrichten
ME1 und ME2 zurückzuhalten,
wie in der vorangehenden ersten Ausführung, wird eine ebenfalls
programmierbare Verzögerungsschaltung
TEM2 sofort bei Beginn der Füllung
des Datenfeldes eines zweiten Paketes mit einer Verzögerungszeit
ausgelöst,
die der maximalen Übergangszeit eines
zweiten Paketes im Wesentlichen gleich ist und nicht der einer Nachricht,
unabhängig
vom Zustand des Bits M. So bewirkt, wie beispielsweise in einem
Schritt E3a, der den oben beschriebenen Schritt E3 ersetzt, in 4 gezeigt
wird, der Ablauf der zweiten Verzögerungszeit TEM2 während des
Empfangs der ersten Nachricht ME1 das Einfügen eines Zwischenendewortes
FI in ein erstes Paket PR1a nach dem Anfang DDC der komprimierten
Daten DC1. Das Zwischenendewort FI kann auf ein beliebiges Codewort
in den komprimierten Daten folgen. Danach füllt ein Zwischenteil IDC der
komprimierten Daten DC1 vollständig
ein zweites Paket PR2a während
einer Zeit, die geringer ist, als TEM2. Dann wird das Ende FDC der
Daten DC1 mit dem Nachrichtenendewort FM1 und den komprimierten
Daten DC2 der folgenden Nachricht mit dem Nachrichtenendewort FM2
in ein drittes zweites Paket PR3a übertragen, sofern das erste
Paket PT21 vor Ablauf der Verzögerungszeit
TEM2 empfangen und komprimiert ist, die durch die Füllung des
Paketes PR3a mit dem Ende FDC der komprimierten Daten DC1 ausgelöst wurde.
-
Im
Schritt E3 (oder E3a) werden die Köpfe der zweiten Pakete PR1,
PR2 (oder PR1a, PR2a, PR3a) so formatiert, wie 3 zeigt,
damit die Einrichtung 3A für die Verbindungen transparent
ist. Mit anderen Worten: Das Einfügen der Einrichtung 3A zwischen
das Endgerät 1A und
das Netz RP erfordert weder eine Anpassung des Netzes oder des Endgerätes, noch
eine Änderung
der Abonnementsparameter des Teilnehmerendgerätes 1A im Netz RP.
Wie 1 und 2 zeigen, simuliert die Einrichtung 3A an
ihrer Schnittstelle ITA mit dem Endgerät 1A das Netz RP und
an ihrer Schnittstelle IRA mit dem Netz RP das Endgerät TA. Insbesondere
ist die Einrichtung transparent für das besondere Bit M; sowie
für die
beiden anderen besonderen Bits Q und D, die in die Köpfe der
zweiten Pakete an dieselben Stellen gesetzt werden, wie in die Köpfe der ersten
Pakete.
-
Nach
einer ersten in 4 gezeigten Variante befindet
sich das Bit M im Kopf ER1, ER2a eines zweiten Paketes, das mit
komprimierten Daten DC11, IDC endet, die aus einer Nachricht ME1
stammen, im Zustand „1"; mit anderen Worten
wird das Bit M in einem zweiten Paket auf "1" gesetzt,
wenn das Datenfeld DC11, IDC des zweiten Paketes gleichzeitig die
Maximallänge
LMAX hat und nicht durch ein Nachrichtenendewort abgeschlossen ist.
Das Bit M ist also in den Köpfen
ER2, ER3a des letzten zweiten Paketes komprimierter Daten PR2, PR3a,
die komprimierte Daten einer Nachricht ME1 enthalten, im Zustand "0", wenn dieses letzte zweite Paket durch
ein Nachrichtenendewort FM2 abgeschlossen ist, das das Ende der
genannten Nachricht ME1 markiert oder einer folgenden Nachricht
ME2 (außer
in dem Fall, wo ein zweites Bit D auf „1" ist, wie wir unter Bezug auf 5 sehen
werden).
-
Das
Netz RP kann dann die Pakete komprimierter Daten gruppieren, bevor
es sie an die Dekompressionsvorrichtung 2B des fernen Zielendgerätes TB überträgt, wenn
dieses eine größere Paketmaximallänge verwendet,
als die im Sendeendgerät
TA verwendete Paketmaximallänge.
Wenn das Netz RP vom Endgerät TA
ein oder mehrere aufeinander folgende volle zweite Pakete mit dem
Bit M im Zustand „1" empfängt, gruppiert
das Netz die kom primierten Daten dieser Pakete. Das Netz überträgt ein zweites
Paket gruppierter Daten an die Vorrichtung 2B erst, nachdem
es dieses Paket gefüllt
hat oder erst nach Empfang dieses Paketes mit einem Bit M = „0", das die Nachricht
beendet.
-
Da
erfindungsgemäß das Ende
der komprimierten Daten einer Nachricht ME1 durch ein Nachrichtenendewort
FM1 im letzten zweiten Paket PR2, PR3a der komprimierten Nachricht
markiert wird, wird die Einstellung des Bits M in den Paketen komprimierter
Daten nach einer zweiten Variante nicht verwendet. Die Bits M in
allen zweiten Paketen sind dann systematisch auf „0" gesetzt. In der
dem fernen Endgerät
TB zugeordneten Dekompressionsvorrichtung 2B gibt das Fehlen
eines Nachrichtenendewortes FM am Ende eines vom Netz empfangenen
zweiten Paketes komprimierter Daten, wie ein Bit M = „1" in einem ersten
Paket, an, dass komprimierte Daten für dieselbe Nachricht in dem
dem empfangenen folgenden zweiten Paket folgen. Diese zweite Variante
verbietet jegliche Gruppierung von Paketen durch das Netz RP, um
die Übergangszeit
zu optimieren.
-
Die
Kompressions- und Dekompressionsvorrichtungen sind ebenfalls transparent
für ein
zweites besonderes Bit D, das auch Binärelement der Zustellungsbestätigung genannt
wird, das in der Mitteilung X.25 definiert wird. Im Zustand „1" gibt das Bit D an,
dass das Sendeendgerät
TA vom Zielendgerät
TB eine Empfangsbestätigung
von Teilnehmer zu Teilnehmer des gesendeten Paketes mit dem Bit
D = „1" mit Hilfe der Folgennummer
in Empfang stehender Pakete P(R) erhalten möchte. Dieser Mechanismus garantiert
dem Endgerät
TA, dass das Datenpaket vom Zielendgerät TB empfangen und quittiert
wurde.
-
Außerdem ist
ein Paket, wenn das Bit 0 im Kopf eines Paketes, das zu einer Nachricht
aus mehreren Paketen gehört
und das Bit für
folgende Daten M ebenfalls im Zustand „1" aufweist, im Zustand „1" ist, nicht unbedingt
voll und kann eine geringere Länge,
als die Maximallänge
LMAX haben, wie das Paket pt21 in 5.
-
5 zeigt
mehrere Beispiele von Kombinationen von Bits D und Q und von Datengruppierung,
wobei die Häufigkeit
des Bits D im Zustand „1" gewollt gegenüber der
Praxis erhöht
ist. Die Nachrichten me, die
ersten und zweiten Pakete pt und pr und die Felder nicht komprimierter
Daten dt und komprimierter
Daten dc sind durch kleinbuchstabige
Bezugszeichen analog denen bezeichnet, die in 4 verwendet
wurden. Es wird angenommen, dass das Endgerät TA vier Nachrichten aussendet:
eine erste Nachricht me1 mit einem ersten Paket pt1 ohne Empfangsbestätigungsanforderung
(D = 0), eine zweite Nachricht me2 mit K + 1 = 3 ersten Paketen
pt21, pt22 und pt23, wobei das Paket pt 21 ein Bestätigungsbit
D = „1" enthält, und
eine dritte und eine vierte Nachricht me3 und me4, die jeweils ein
erstes Paket pt3 und pt4 mit Bestätigungsbit D = „1" enthalten. Um die 5 zu
vereinfachen, werden die Verzögerungen
TEM1, TEM2 nicht betrachtet oder die entsprechenden zweiten Pakete
pr1 bis pr5 werden von der Kompressionsvorrichtung 1A reichlich
vor Verstreichen der entsprechenden Verzögerungszeiten übertragen.
-
Wenn
das Bit D sich in einem vollen oder nicht vollen, vom Endgerät TA gesandten
ersten Paket im Zustand „1" befindet, verbietet
es jegliche Verkettung und Kompression mit den Daten dt22 des folgenden
ersten Paketes pt22 in den Schritten E1 und E2 in der Kompressionsvorrichtung 1A.
Dieses Verbot wird in natürlicher
Weise angewandt, wenn das Bit M im empfangenen ersten Paket auf „0" ist, wie in Paket
pt31 oder pt41, aber auch, wenn das Bit M im empfangenen ersten
Paket auf „1" ist, wie im Paket
pt21, was anzeigt, das dieses zu einer Nachricht me2 gehört, die
im folgenden Paket pt22 fortgesetzt wird. Auf diese Weise wird mindestens das
Ende der komprimierten Daten dc21, dc31, dc41 des ersten Paketes,
das das Bit D auf „1" enthält, sofort in
ein zweites Paket pr2, pr4, pr5 mit einem Kopf übertragen, der den entsprechenden
Zustand des Bits M und Bit D = „1" enthält. Das Ende des Datenfeldes
des zweiten Paketes mit einem Bit D = „1" wird durch ein Endewort FM markiert,
unabhängig
vom Wert des Bits M in diesem zweiten Paket. Das zweite Paket, wie
etwa das Paket pr4, kann komprimierte Daten dc22 des Endes der vorangehenden
Nachricht me2, gefolgt von einem Nachrichtenendewort FM enthalten.
Nach einer anderen Möglichkeit,
die durch die komprimierten Daten dc21 des Paketes pt21 gezeigt
wird, beenden die komprimierten Daten des Paketes pt21, dessen Bit
D auf „1" ist, teilweise die
Füllung
eines vorangehenden zweiten Paketes pr1, dessen Bit D auf „0" ist und dessen Bit
M auf „1" ist, da das Paket
pr1 voll und durch die Daten dc21 abgeschlossen ist, die im folgenden
zweiten Paket pr2 der vorangehenden Nachricht me2 fortgesetzt werden,
und sind teilweise nur mit einem Nachrichtenendewort FM im folgenden
zweiten Paket pr2 enthalten, dessen Bit D auf „1" ist, um eine Quittierung des ersten
Paketes pt21 anzufordern, und dessen Bit M die Kopie des Bits M
des ersten Paketes pt21 ist. In dem dargestellten Beispiel ist das
Bit M des Paketes pr2 auf „1", wie das des Paketes
pt21, um anzuzeigen, dass die Daten der Meldung me2 im folgenden
zweiten Paket pr3 fortgesetzt werden.
-
Das
dritte besondere Bit Q, für
das die Kompressions- und Dekompressionsvorrichtungen ebenfalls transparent
sind, ist ein qualifizierendes Binärelement, das in der Mitteilung
X.25 definiert wird. Das Bit Q steht einem Benutzer eines sendenden
Endgerätes
zur Verfügung,
der Daten auf mehr als einer Ebene senden möchte, und erlaubt es, die auf
zwei Ebenen gesendeten Daten zu qualifizieren. Beispielsweise identifiziert das
Bit Q eine Teil nehmerprotokollebene im Vergleich mit höheren Ebenen,
wie etwa der Transportschicht, oder unterscheidet die eigentlichen
Daten von den Steuerinformationen des Verfahrens. Nach der Mitteilung X.25
setzt das sendende Endgerät
das Bit Q aller in einer vollständigen
Sequenz, d.h. in einer Nachricht, enthaltenen Datenpakete auf denselben
Wert. Wenn eine einzige Datenebene in einem logischen Kanal verwendet
wird, wird das Bit Q immer auf „0" gesetzt, wie in 4 angenommen.
-
Statt
den komprimierten Daten systematisch eine neue Information, wie
etwa einen Unterkopf in den zweiten Paketen, auf Kosten des Kompressionsfaktors
hinzuzufügen,
wird das Bit Q erfindungsgemäß in den eigentlichen
Kopf der zweiten Pakete pr mit komprimierten Daten dc eingesetzt.
-
Solange
das Bit „Q" in den ersten Paketen,
deren Daten komprimiert werden sollen, seinen Wert nicht ändert, nimmt
die Kompressionsvorrichtung 1A die Gruppierung der Daten
vor, d.h. die Verkettung, die Kompression und die Bildung zweiter
Pakete, wie oben in Bezug auf die Schritte E0 bis E3 oder E3a in
den 4 und 5 beschrieben. Sobald das Bit
Q in einem ersten vom Sendeendgerät TA gesandten Paket seinen Wert ändert, d.h.
vom Zustand „0" in „1" oder vom Zustand „1" in „0" übergeht, bewirkt diese Zustandsänderung des
Bits Q die Sendung des zweiten Paketes komprimierter Daten, das
gerade gebildet wird, d.h. nach Kompression der Daten des letzten
ersten Paketes, das der Zustandsänderung
des Bits Q vorangeht, und das Einfügen eines Nachrichtenendewortes
FM in das genannte zweite Paket, das gerade gebildet wird.
-
Beispielsweise
ist in der 6 ein Anfangsschritt E06 vorgesehen,
der sich vom Schritt E0 in 5 durch
Ersetzen des Bits Q = „0" in den beiden letzten
Nachrichten me3 und me4 durch ein Bit Q = „1" in den Nachrichten me3b und me4b unterscheidet.
Die Nachricht me3b unterscheidet sich von der Nachricht me3 durch
ein auf „0" gesetztes Bit D.
Die Nachricht me4b ist mit der Nachricht me4 identisch. Die nachrichtenweise Verkettung
und Kompression der Daten in den in 5 gezeigten
Schritten E1 und E2 bleiben unverändert. Im letzten Schritt der
Gruppierung und Übertragung
komprimierter Daten E3b in diesem in 6 gezeigten Beispiel
bleiben die zweiten Pakete pr1, pr2 und pr3, die dem Ende der komprimierten
Daten aus ersten Paketen mit dem Bit Q = „0" vorangehen, unverändert. Bevor das Bit Q, das
in den beiden ersten Nachrichten me1 und me2 auf „0" gehalten wurde,
ab Nachricht me3 auf „1" wechselt, werden
die letzten komprimierten Daten dc22, die der Zustandsänderung
von „0" zu „1" des Bits Q vorangehen,
sofort in ein zweites Paket pr4b übertragen, das das Ende der
Daten dc22, gefolgt vom Nachrichtenendewort FM für die zweite Nachricht me2, enthält. Danach
werden in einem folgenden zweiten Paket pr5b mit dem Bit Q im Zustand „1" die komprimierten Daten
dc31 des ersten folgenden Paketes pt31 der Nachricht me3b mit gegebenenfalls
den komprimierten Daten dc41 mindestens eines anderen folgenden
ersten Paketes pt41 der Nachricht me4b übertragen, wie in 6 dargestellt.
-
Schließlich empfängt vor Übertragung
ins Netz jedes zweite Paket in seinem Kopf von einem Ausgangszähler modulo
8 in der Kompressionsvorrichtung 1A eine Paketfolgennummer
P(S). Die Nummer unterscheidet sich von der Nummer P(S) in dem oder
den ersten Paketen, aus denen die komprimierten Daten hervorgegangen
sind, die im zweiten Paket enthalten sind, da die Kompressionsvorrichtung 1A natürlicherweise weniger
zweite Pakete sendet, als sie erste Pakete vom Endgerät empfängt. Beispielsweise
sind die Nummern P(S) in den in 4 dargestellten
ersten Paketen PT11, PT12, PT13 und PT21 7, 0, 1 und 2, während die Nummern
P(S) in den zweiten Paketen PR1 und PR2 4 und 5 sind.
-
Die
in einer Dekompressionsvorrichtung 2B ausgeführten Dekompressionsvorgänge fallen
ebenfalls in den Rahmen der Erfindung. Diese Vorgänge werden
aus den 4 bis 6 abgeleitet,
indem die Schritte E3 bis E0 von unten nach oben angeordnet werden.
In der Dekompressionsvorrichtung betreffen die Schritte E3, E2,
E1 und E0
- – den
Empfang der zweiten Pakete PR1, PR2,
- – die
fortschreitende Verkettung der Felder komprimierter Daten DC11,
DC12, DC2 der Nachrichten, die Nachrichtenendewörtern FM1, FM2 in den zweiten
Paketen vorangehen, zu Gruppen verketteter komprimierter Daten DC1,
DC2,
- – die
Unterdrückung
der Nachrichtenendewörter
FM1, FM2 am Ende der Gruppen verketteter komprimierter Daten,
- – die
fortschreitende Dekompression der Gruppen verketteter komprimierter
Daten DC1, DC2 der Nachrichten in dekomprimierte Daten der Nachrichten
(DT11, DT12, DT13); DT21 nach einem Dekompressionsalgorithmus, der
zum vorher festgelegten Kompressionsalgorithmus reziprok ist, und
- – die
fortschreitende Bildung erster Pakete PT11, PT12, PT13; PT21 mit
Datenfeldern DT11, DT12, DT13; DT21, die höchstens bis zur Maximallänge LMAX
in Abhängigkeit
von den Bits M, D und Q in den zweiten Paketen fortschreitend mit
den dekomprimierten Daten von Nachrichten gefüllt werden, wobei ein erstes Paket
nur dekomprimierte Daten einer Nachricht enthält.