DE69913152T2 - Ersetzen von Sonderzeichen in einem Datenstrom - Google Patents

Ersetzen von Sonderzeichen in einem Datenstrom Download PDF

Info

Publication number
DE69913152T2
DE69913152T2 DE69913152T DE69913152T DE69913152T2 DE 69913152 T2 DE69913152 T2 DE 69913152T2 DE 69913152 T DE69913152 T DE 69913152T DE 69913152 T DE69913152 T DE 69913152T DE 69913152 T2 DE69913152 T2 DE 69913152T2
Authority
DE
Germany
Prior art keywords
data element
control data
data elements
replacement
additional
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
DE69913152T
Other languages
English (en)
Other versions
DE69913152D1 (de
Inventor
Rob Pieterse
Antonius Leonard ROOS VAN RAADSHOOVEN
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Koninklijke KPN NV
Original Assignee
Koninklijke KPN NV
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Koninklijke KPN NV filed Critical Koninklijke KPN NV
Application granted granted Critical
Publication of DE69913152D1 publication Critical patent/DE69913152D1/de
Publication of DE69913152T2 publication Critical patent/DE69913152T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L25/00Baseband systems
    • H04L25/38Synchronous or start-stop systems, e.g. for Baudot code
    • H04L25/40Transmitting circuits; Receiving circuits
    • H04L25/45Transmitting circuits; Receiving circuits using electronic distributors
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L25/00Baseband systems
    • H04L25/38Synchronous or start-stop systems, e.g. for Baudot code
    • H04L25/40Transmitting circuits; Receiving circuits
    • H04L25/49Transmitting circuits; Receiving circuits using code conversion at the transmitter; using predistortion; using insertion of idle bits for obtaining a desired frequency spectrum; using three or more amplitude levels ; Baseband coding techniques specific to data transmission systems
    • H04L25/4906Transmitting circuits; Receiving circuits using code conversion at the transmitter; using predistortion; using insertion of idle bits for obtaining a desired frequency spectrum; using three or more amplitude levels ; Baseband coding techniques specific to data transmission systems using binary codes
    • H04L25/4915Transmitting circuits; Receiving circuits using code conversion at the transmitter; using predistortion; using insertion of idle bits for obtaining a desired frequency spectrum; using three or more amplitude levels ; Baseband coding techniques specific to data transmission systems using binary codes using pattern inversion or substitution

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • Spectroscopy & Molecular Physics (AREA)
  • Theoretical Computer Science (AREA)
  • Communication Control (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)
  • Circuits Of Receivers In General (AREA)
  • Stereo-Broadcasting Methods (AREA)
  • Camera Data Copying Or Recording (AREA)
  • Devices For Indicating Variable Information By Combining Individual Elements (AREA)
  • Digital Computer Display Output (AREA)

Description

  • Die Erfindung betrifft ein Verfahren zur Übertragung einer Zeile von Datenelementen, welche Zeile normale Datenelemente und Steuerdatenelemente umfasst, wobei das Verfahren umfasst:
    • – Erfassen der besagten Steuerdatenelemente innerhalb der besagten Zeile, und
    • – Markieren von jedem Steuerdatenelement durch Liefern eines zusätzlichen Datenelementes zu der zu übertragenden Zeile.
  • Solch ein Verfahren ist aus der Praxis bekannt.
  • Wenn Zeilen von Datenelementen übertragen werden, tritt das Problem auf, dass für spezifische Datenelemente durch irgendeine Einrichtung eine spezifische Steuerbedeutung hinzugefügt wird, oder dass aus technischen Gründen ein spezifisches Datenelement nicht umfasst sein darf. So kann der hexadezimale Code „FF" (entsprechend dem binären Code „11111111", und damit ein Byte ist, welches nur aus Einsen besteht) durch die Ausrüstung als Steuerzeichen interpretiert werden. Falls solch ein Steuerdatenelement unter den Datenelementen ist, welche zu übertragen sind, kann dies bei der Übertragung Probleme bedingen, da die Datenelemente für die Ausrüstung nicht transparent sind, d. h. die Wirkung der Ausrüstung beeinflussen können.
  • Es ist bekannt, solche Steuerdatenelemente auf dem übertragungsseitigen Ende des Übertragungsweges zu markieren, beispielsweise durch eine Verdoppelung. Bei dem oben genannten Beispiel würde das Datenelement „FF" in „FFFF" verdoppelz werden. In diesem Zu sammenhang ist die Ausrüstung im Übertragungsweg so ausgestaltet, dass alle doppelten Steuerdatenelemente nicht als Steuerzeichen oder ähnliches interpretiert werden. Auf dem empfangsseitigen Ende des Übertragungsweges werden die doppelten Steuerdatenelemente entpackt, um das einzelne Steuerdatenelement wieder zu erhalten: „FFFF" wird wieder zu „FF".
  • Das besagte bekannte Verfahren hat den Nachteil, dass die Anzahl der zu übertragenden Datenelemente in wesentlicher Weise ansteigen kann, da jedes Steuerdatenelement verdoppelt wird. Zusätzlich ist es notwendig, dass jede Ausrüstung in dem Übertragungsweg so ausgestaltet ist, um doppelte Steuerdatenelemente zu ignorieren und nur einzelne Steuerdatenelemente zu interpretieren. Da die besagten Steuerdatenelemente in diesem bekannten Verfahren in jedem Fall übertragen werden, können leicht Fehler auftreten.
  • Ein Ziel und Aufgabe der vorliegenden Erfindung ist es, die Nachteile des Standes der Technik zu vermeiden und ein Verfahren gemäss Anspruch 1 anzugeben, um Datenelemente zu übertragen, welche den Ausschluss von Steuerdatenelementen aus dem Übertragungsweg in einer wiederholbaren Weise ermöglichen.
  • Ein weiteres Ziel der Erfindung ist es, ein Verfahren zur Übertragung von Datenelementen anzugeben, welches den Ausschluss von Steuerdatenelementen aus der Übertragung ermöglicht, ohne wesentlich die Zahl der zu übertragenden Datenelemente zu erhöhen.
  • Zu diesem Zweck wird ein Verfahren der im Oberbegriff genannten Art gemäss der vorliegenden Erfindung so ausgestaltet, dass
    • – das zusätzliche Datenelement einen Positionshinweis auf das erste Steuerdatenelement in der Abfolge von Datenelementen der Zeile umfasst,
    • – jedes Steuerdatenelement durch ein Eratzdatenelement ersetzt wird, welches einen Positionshinweis auf das nächste Steuerdatenelement umfasst, und
    • – ein Ersatzdatenelement nicht einem Steuerdatenelement entspricht.
  • Durch das Ersetzen von jedem Steuerdatenelement durch ein Ersatzdatenelement, das selber keine Steuerdatenelemente umfasst, werden alle Steuerdatenelemente aus der Zeile entfernt. Wenn zusätzlich am Ort des entfernten Steuerdatenelementes die angewandten Ersatzdatenelemente einen Positionshinweis umfassen, ist es möglich, an dem empfangsseitigen Ende festzustellen, wo Steuerdatenelemente aus der Zeile entfernt worden sind. Da es im wesentlichen nur notwendig ist, ein einzelnes zusätzliches Datenelement für einen Positionshinweis des ersten Steuerdatenelementes in der Zeile zu übertragen, wird die Zeile nur um ein Datenelement vergrössert, unabhängig von der Anzahl der Steuerdatenelemente.
  • Es ist festzustellen, dass aus der US-A-5,363,098 einige analoge Vorgehensweisen mit der vorliegenden Erfindung beschrieben werden, und insbesondere ein Verfahren zur Komprimierung, Dekomprimierung und Manipulation von Bitmaps beschrieben ist. Das Bitmap ist entlang Byte-Grenzen angeordnet. Jedes ausgerichtete Byte ist als ein Füll-Byte (GBYTE für gap byte) klassifiziert, wenn alle Bits des Bytes den gleichen logischen Wert speichern. Sonst wird das Byte als Map-Byte (MBYTE) klassifiziert. Benachbarte Bytes der selben Klasse werden gruppiert. Gruppen von Füll-Bytes werden in einer Einzelabfolge von Bytes als Zähler der Anzahl von Bits gezählt, die in den gruppierten Füll-Bytes umfasst sind. Map bytes werden in der Einzelabfolge dupliziert und nicht mit einer Zahl in Zusammenhang gebracht. Die besagte Offenbarung löst aber nicht, wie die vorliegende Erfindung es tut, das Prob lem der (Steuer-)Zeichen wie dem Hexcode „FF", der die Wirkung und Arbeit der Computerausrüstung steuern oder beeinträchtigen kann.
  • Das Verfahren gemäss der Erfindung ist vorzugsweise in solch einer Weise auszuführen, dass der Positionshinweis auf das nächste Steuerdatenelement eine relative Position in Bezug auf ein Ersatzdatenelement umfasst. Durch das Anwenden einer relativen Position, d. h. in Bezug auf das vorausgegangene Ersatzdatenelement, anstelle einer absoluten Position, d. h. in Bezug auf das zusätzliche Datenelement, wird der Positionshinweis im Allgemeinen einen kleineren Wert aufweisen, so dass weniger Bits ausreichen können.
  • Falls der Positionshinweis des nächsten Steuerdatenelementes nicht fähig ist, in einem zusätzlichen oder Ersatzdatenelement eingebracht zu werden, wird das Verfahren gemäss der Erfindung vorzugsweise in solch einer Weise ausgeführt, dass mindestens ein weiteres zusätzliches Datenelement, welches einen weiteren Positionshinweis umfasst, in die Zeile eingefügt wird. Der weitere Positionshinweis kann auf die Position des nächsten Steuerdatenelementes hinweisen oder die Position von einem anderen weiteren zusätzlichen Datenelement. In dieser Art und Weise können Positionen von Steuerdatenelementen voneinander entfernt werden, deren Positionshinweise die Anzahl von Bitpositionen übertreffen könnten, die in einem zusätzlichen Datenelement verfügbar sind.
  • In diesem Zusammenhang wird das Verfahren in vorteilhafter Weise in solch einer Weise ausgeführt, dass das mindestens weitere zusätzliche Datenelement in der Zeile an der am weitesten entfernten Position eingefügt wird, dessen Positionshinweis fähig ist, in einem zusätzlichen oder Ersatzdatenelement eingebracht zu werden. Im Ergebnis ist die Position eines Steuerdatenelementes fähig, durch so wenig wie mögliche weitere Zusatzdatenelemente ausgeführt zu werden.
  • Es ist auch möglich, das Verfahren gemäss der vorliegenden Erfindung in solch einer Weise auszuführen, dass abgesehen von einem Positionshinweis auch ein Längenhinweis umfasst wird, der die Anzahl von Datenelementen nennt, die von dem Positionshinweis eingenommen werden. Unter Einsatz eines solchen Längenhinweises ist und könnte die Anzahl von Bitpositionen, die für den Positionshinweis verfügbar sind, in einer einfachen Art und Weise erweitert werden.
  • Die Steuerdatenelemente können alle vom gleichen Typ sein. Dies bedeutet, dass nur ein Steuerdatenelement vorhanden ist, dies aber mehrmals in einer Zeile auftreten kann.
  • Es ist auch möglich, dass die Steuerdatenelemente von verschiedenen Typen sind. In diesem Falle bestehen verschiedene, zueinander unterschiedliche Steuerdatenelemente, die einmal oder mehrere Male in einer Zeile auftreten können Das Verfahren gemäss der Erfindung wird dann vorteilhaft in solch einer Weise ausgeführt, dass ein Ersatzdatenelement zusätzlich einen Typenhinweis eines Ersatz-Steuerdatenelementes umfasst. Der Typenhinweis ist vorzugsweise in solch einer Weise ausgewählt, dass ein Entsprechen mit einem Steuerdatenelement ausgeschlossen ist. Mit anderen Worten hat der Typenhinweis ein (Bit-)Muster, welches unabhängig von dem Wert des Positionshinweises nicht fähig ist, jegliche Steuerdatenelemente zu liefern.
  • Um zu verhindern, dass ein Positionshinweis in Kombination mit Nicht-Steuerdatenelementen in ungewollter Form ein Steuerdatenelement bilden könnte, wird das Verfahren gemäss der Erfindung vorteilhafterweise in solch einer Weise ausgeführt, dass ein Datenelement als ein Steuerdatenelement markiert wird, falls das Datenelement einem Teil eines Steuerdatenelementes entspricht. In diesem Zusammenhang ist die Länge dieses Teiles plus die Länge des selben Datenelementes vorteilhafterweise gleich zur Länge eines Steuerdatenelementes.
  • Aus Sicherheitsgründen wird im Vorgriff vorteilhafterweise angenommen, dass ein Positionshinweis Teil eines Steuerdatenelementes ist.
  • Um zu verhindern, dass mindestens ein Teil des zusätzlichen Datenelementes fähig ist, durch ein empfangenes Datenelement ersetzt zu werden, womit im Ergebnis der Positionshinweis überschrieben werden könnte, wird das Verfahren gemäss der Erfindung vorzugsweise in solch einer weise ausgeführt, dass, falls der Positionshinweis in dem zusätzlichen Datenelement einen kleineren Wert als die Länge des zusätzlichen Datenelementes aufweist, der Wert durch einen Hilfswert bis auf die besagte Länge erhöht wird, und dass das betreffende Ersatzdatenelement das Datenelement ersetzt, welches an der Position beginnt, die benachbart zu dem zusätzlichen Datenelement ist. Bei dieser Vorgehensweise wird die Länge des Ersatzdatenelementes vorzugsweise durch den Hilfswert vermindert.
  • Ein Datenelement kann grundsätzlich eine zufällige, vorzugsweise vorbestimmte Anzahl von Bits umfassen. Die Erfindung kann auch auf Situationen angewandt werden, bei denen ein Datenelement genau 8 Bits (1 Byte) umfasst.
  • Ein weiteres Ziel der vorliegenden Erfindung ist es, Vorrichtungen und ein System zur Umsetzung des Verfahrens anzugeben.
  • Die Erfindung wird nun in grösserem Detail unter Bezugnahme auf die beigefügten Figuren beschrieben. Es zeigen:
  • 1 eine schematische Darstellung einer Zeile von Bytes, die Übereinstimmung mit der Erfindung bearbeitet und übertragen wird in;
  • 2 eine schematische Darstellung eines möglichen zusätzlichen oder Ersatzdatenelementes;
  • 3 eine schematische Darstellung einer Zeile von Bits, die in Übereinstimmung mit der Erfindung übertragen wird;
  • 4 eine schematische Darstellung eines Systems zum Übertragen von Zeilen in Übereinstimmung mit der Erfindung; und
  • 5 eine schematische Darstellung einer Vorrichtung zum Übertragen von Zeilen in Übereinstimmung mit der Erfindung.
  • Die Zeile 1, die nur beispielhaft in der 1 dargestellt ist, umfasst eine Anzahl von Datenelementen, von denen jeweils eines 1 Byte umfasst. Die Werte der Datenelemente werden hexadezimal angegeben und können wie in dem Beispiel der 1 Werte von 00 (= dezimale 0) bis FF (= dezimale 255) annehmen. Der Wert FF kann jedoch von gewissen Vorrichtungen als ein Steuercode (wie beispielsweise „Ende der Nachricht") erkannt werden, womit im Ergebnis ein Datenelement, welches diesen Wert aufweist, als Steuerdatenelement 12 angesehen werden wird. Die verbleibenden Datenelemente der Zeile 1 werden als normale Datenelemente 11 bezeichnet.
  • Da das Übertragen der Steuerdatenelemente 12 zu Problemen führen könnte, werden diese in Übereinstimmung mit der Erfindung von der Übertragung in reproduzierbarer Weise ausgeschlossen. Auf dem übertragungsseitigen Ende eines Übertragungsweges wird die Verarbeitung der Zeile wie folgt durchgeführt:
    • a. Zu Beginn wird die Position des ersten Steuerdatenelementes bestimmt (in einer dem Fachmann bekannten Art und Weise). In dem dargestellten Beispiel nimmt das erste Steuerdatenelement die dritte Position in der Zeile ein.
    • b. Dann wird zu der Zeile, in dem dargestellten Beispiel zu Beginn, ein zusätzliches Datenelement hinzugefügt, welches den besagten Positionshinweis umfasst, welcher das Steuerdatenelement markiert.
    • c. Nachfolgend wird die Position eines möglichen nächsten Steuerdatenelementes (12') bestimmt. Die besagte Position ist vorzugsweise die relative Position in Bezug auf das vorangegangene Steuerdatenelement, da für den Hinweis der relativen Position im Allgemeinen weniger Bits erforderlich sind.
    • d. In Übereinstimmung damit wird das vorangegangene Steuerdatenelement 12 durch ein Ersatzdatenelement 14 ersetzt, welches den Positionshinweis des nächsten Steuerdatenelements 12 umfasst. Falls kein nächstes Steuerdatenelement 12 besteht, wird der Positionshinweis zu 0.
    • e. Schliesslich werden die Schritte c. und d. wiederholt, bis alle Steuerdatenelemente ersetzt worden sind und die in dieser Art und Weise verarbeitete Zeile übertragen oder gespeichert worden ist.
  • In dieser Art und Weise werden alle Steuerdatenelemente durch ein Ersatzdatenelement 14 ersetzt, welches die Position des nächsten Steuerdatenelementes angibt. Zu der Zeile wird in diesem Falle nur ein Datenelement hinzugefügt, nämlich das zusätz liche Datenelement 13. Der Positionshinweis kann durch eine Zahl angegeben werden, die die relative Position des nächsten Steuerdatenelementes angibt. Ein Positionshinweis ist ein Teil eines zusätzlichen oder Ersatzdatenelementes und kann vollkommen mit diesem übereinstimmen.
  • Wie aus der 1 erkannt werden kann, dienen Positionshinweise als Zeiger auf eine verbundene Liste, wobei jedes Element der Liste jeweils auf die Position des nächsten Elementes hinweist.
  • Mit dem Einsatz von Datenelementen einer Länge von einem Byte kann der Positionshinweis maximal 255 sein. Da es wünschenswert ist, dass ein Ersatzdatenelement nicht einem Steuerdatenelement 12 entspricht, wird in diesem Fall der Wert 255 (= FF in hexadezimaler Schreibweise) ausgeschlossen. Es ist natürlich möglich, dass auch der relative Positionshinweis eine Zahl grösser als 254 ergibt. In diesem Fall sind verschiedene Lösungen möglich.
  • Eine erste Lösung in dem Fall, dass der Positionshinweis zum nächsten Steuerdatenelement (12') nicht fähig ist, innerhalb eines zusätzlichen oder Ersatzdatenelementes eingebracht zu werden, kann mindestens ein weiteres zusätzliches Datenelement 15 in die Zeile 1 eingebracht werden. Hier kann das zulässige Datenelement 14, welches auf die Position des weiteren zusätzlichen Datenelementes zeigt, den hexadezimalen Wert FE (= dezimal 254) aufweisen. Falls notwendig, können weitere zusätzliche Datenelemente 15 in der Zeile eingefügt werden, wobei der letzte auf die Position eines Ersatzdatenelementes 14 zeigt.
  • Gemäss einer zweiten Lösung kann ausgehend von einem Positionshinweis P ein zusätzliches oder Ersatzdatenelement (13, 14) einen Längenhinweis L enthalten, der auf die Anzahl von Datenelementen oder Bits, die von dem Positionshinweis eingenommen wer den, und/oder, wie oben beschrieben, auf einen Typenhinweis (T) des Ersatzsteuerdatenelementes (12, 12') hinweist. Dies ist in schematischer Weise in der 2 dargestellt. In diesem Fall kann ein Positionshinweis beispielsweise 2 oder 3 Bytes umfassen, womit im Ergebnis eine relative Position angezeigt werden kann, die sehr viel grösser als 254 ist. In dieser Art und Weise kann das Einfügen in eine Zeile von einem oder mehreren weiteren Datenelementen 15 vermieden werden. Um fähig zu sein, die Kombination eines Positions- oder Längenhinweises als solchen zu erkennen, wird der Längenhinweis vorzugsweise von einer Markierung M vorangegangen, der beispielsweise dem Wert FD (= 253 dezimal) entspricht. In diesem Zusammenhang muss der besagte Wert für den Positionshinweis ausgeschlossen werden, womit im Ergebnis der Positionshinweis in dem dargestellten Beispiel höchstens den Wert FC (= 252 dezimal) aufweisen kann.
  • Auf dem empfangsseitigen Ende des Übertragungsweges kann die ursprüngliche Zeile 1 wie folgt rekonstruiert werden:
    • a. Das Datenelement, welches zuerst in der Zeile auftritt, wird als zusätzliches Datenelement 13 interpretiert, was auf die Position des ersten Ersatzdatenelementes 14 hinweist.
    • b. Das Datenelement, welches sich in der betreffenden Position befindet, wird als Ersatzdatenelement 14 interpretiert, was auf die Position des nächsten Ersatzdatenelementes 14 hinweist. Das Ersatzdatenelement 14 wird. durch ein Datenelement ersetzt, welches den ausgeschlossenen Wert (FF) hat.
    • c. Schritt b. wird wiederholt, bis ein Ersatzdatenelement 14 gefunden wird, welches einen Positionshinweis mit dem Wert 0 aufweist.
  • In dieser Art und Weise kann die ursprüngliche Zeile in einer einfachen Art und Weise wiederhergestellt werden. In dem Schritt b. ist es möglich, falls notwendig, weitere zusätzliche Datenelemente aufzunehmen, was unter Einsatz der entsprechenden Werte (FE, FD) festgestellt werden kann.
  • Wie in der 3 dargestellt, können Datenelemente jede Anzahl von Bits umfassen. Im Beispiel der 3 umfasst eine Zeile 256 Bits und die folgenden Datenelemente sollten nicht auftreten:
    • – 32 Nullen.
    • – 32 Einsen.
    • – 32 Elemente in einer kontinuierlich wechselnden Zeile, startend mit einer Null (31 0/1 Übergänge).
    • – 32 Elemente in einer kontinuierlich alternierenden Zeile mit einer beginnenden Eins (31 1/0 Übergänge).
  • Dies sind die Steuerdatenelemente in diesem Beispiel, die in der Zeile von 256 Bits ersetzt werden müssen.
  • Grundsätzlich kann das Markieren und Ersetzen von Steuerdatenelementen, wie bei diesem Ausführungsbeispiel, in der gleichen Art und Weise wie in dem Ausführungsbeispiel nach 1 stattfinden. Während in dem Beispiel der 1 ein Prüffenster angewandt wird, welches eine Grösse von genau einem Byte hat, welches Byte für Byte schrittweise die Zeile entlang geführt wird, muss im Beispiel der 3 ein 32-Bit Prüffenster C angewandt werden, welches in Schritten von 1 Bit entlang der Zeile geführt wird. Das Prüffenster C, in dem die Übereinstimmung mit der Zeile 1 und ein Steuerdatenelement überprüft wird, hat höchstens die Länge eines Steuerdatenelementes. Ein Ersatzdatenelement kann kleiner als das Prüffenster sein. In diesem Beispiel werden 32-Bit Ersatzdatenelemente eingesetzt, die einen Positionshin weis von beispielsweise 8 Bit umfassen. Verschiedene verbleibende Bits können für einen Hinweis, welcher festhält, welches der vier Steuerdatenelemente ersetzt worden ist, und für ein Muster durchbrechendes Codieren eingesetzt werden, wie es weiter unten erklärt werden wird.
  • Wann immer ein Steuerdatenelement festgestellt wird, wird es durch ein Ersatzdatenelement ersetzt, welches auf die Position des nächsten Ersatzdatenelementes hinweist. Die Werte der vier Steuerdatenelemente sind Werte, die für die Ersatzdatenelemente ausgeschlossen sind.
  • Es kann das Problem auftreten, dass, falls ein zusätzliches Datenelement, zusammen mit den nachfolgenden Bits der Zeile auftritt, ein zusätzliches Datenelement liefert. So kann es der Fall sein beispielsweise, falls das zusätzliche Datenelement nur einen Positionshinweis gleich Null umfasst und die ursprüngliche Zeile mit Nullen beginnt.
  • Eine erste Lösung für dieses Problem ist es, die Länge des Prüffensters in solch einer Weise zu wählen, dass es kleiner ist als der Unterschied zwischen der Länge des zusätzlichen (oder Ersatz-)Datenelementes und der Länge des Steuerdatenelementes. In dem Beispiel der 3 würde die Länge des Prüffensters dann höchstens 24 Bits umfassen, da ein Steuerdatenelement von 32 Bit (beispielsweise 32 Nullen) immer durch ein 24-Bit-Prüffenster festgestellt werden kann, unabhängig davon, wie die 8-Bit Werte des zusätzlichen Datenelementes aussehen.
  • Eine zweite Lösung für dieses Problem ist das Initialisieren einer Prozedur zum Auffinden eines Steuerdatenelements in solch einer Art und Weise, dass das Auftreten von möglicherweise ungünstigen Werten des zusätzlichen Datenelementes in Betracht ge zogen wird. Das Überprüfen auf Steuerdatenelemente wird vorzugsweise durch Zähler ausgeführt, beispielsweise durch das Zählen von Nullen, Einsen, 0/1-Paaren und 1/0-Paaren, und die zurückgesetzt werden, falls ein anderer Wert auftritt. Bei diesem Beispiel kann die Prozedur initialisiert werden, indem all diesen Zählern zu Beginn der Zeile der ursprüngliche Wert 8 gegeben wird.
  • Die oben genannten Lösungen können einzeln oder in Kombination angewandt werden.
  • Eine aussergewöhnliche Situation kann auftreten, falls der Positionshinweis des zusätzlichen Datenelementes auf sich selbst zeigt, falls es im Beispiel einen Wert im Bereich zwischen 1 und 8 hat (die ersten 8 Bits der Zeile erweitert durch das zusätzliche Datenelement). In diesem Fall könnte das zusätzliche Datenelement und der Positionshinweis in ihm überschrieben werden. Dies kann kompensiert werden durch Verarbeitung des Positionshinweises des zusätzlichen Datenelementes in einer Steuerart.
  • Falls der Positionshinweis auf sich selbst zeigt, d. h. in dem Beispiel einen Wert zwischen 1 und 8 aufweist, wird der Wert durch einen Hilfswert erhöht, dass der Positionshinweis den Wert 8 hat und damit nicht länger auf sich selber zeigt. Um diese Verschiebung des Ersatzdatenelementes, welches sich aus der genannten Art und Weise ergibt, zu kompensieren, wird letzteres durch eine Länge abgekürzt, die diesem Hilfswert entspricht.
  • Unter der Annahme beispielsweise, dass der Positionshinweis ursprünglich gleich 3 ist, mit anderen Worten, für ein Steuerdatenelement wird angenommen, dass es mit dem dritten Bit des zusätzlichen Datenelementes beginnt (es ist festzuhalten, dass vorzugsweise angenommen wird, dass das zusätzliche Datenelement ein Bitmuster aufweist, welches zu der Ausbildung eines Steuerdatenelementes beiträgt, solch ein Bitmuster muss aber nicht vorhanden sein). Der Hilfswert ist dann (8 minus 3) = 5. Der Positionshinweis wird auf 8 ergänzt und das Ersatzdatenelement sollte über eine Länge von 5 Bits verkürzt werden. Dies wird vorzugsweise durchgeführt durch Weglassen von 5 Bits der Bit-Positionen 5 bis 12 des zusätzlichen Datenelementes 5.
  • Auf dem empfangsseitigen Ende wird bei einem solchen Ausführungsbeispiel geprüft, ob der Positionshinweis des zusätzlichen Datenelementes auf sich selber zeigt, d. h. einen Wert von weniger als 8 in dem dargestellten Beispiel aufweist. Falls dies der Fall ist, wird für das Ersatzdatenelement angenommen, mit der achten Position der (zugeführten) Zeile zu beginnen, wobei der Hilfswert aus dem Wert des Positionshinweises ermittelt wird und die Länge des Ersatzdatenelementes durch den Hilfswert verkürzt wird.
  • Das Rekonstruieren der ursprünglichen Zeile wird dann unter entsprechender Beachtung des oben Gesagten durchgeführt.
  • Ein Ersatzdatenelement kann auch ein Steuerdatenelement zusammen mit vorausgehenden oder nachfolgenden Bits bilden.
  • Eine Lösung wird erreicht durch Anwenden eines musterbrechenden Codes in den zusätzlichen und/oder Ersatzdatenelementen. Durch Anwenden eines Codes 1100 (binär gesehen) in jedem zusätzlichen und/oder Ersatzdatenelement in dem dargestellten Beispiel wird ein mögliches Muster von ausschliesslich Einsen, ausschliesslich Nullen, oder ein alternierendes Auftreten von Einsen und Nullen durchbrochen. Die Zeile umfasst beispielsweise die Bits:
    ... 1 0000 0000 0000 0000 0000 0000 0000 0000 ...,
    ersetzt wird durch:
    ... 1 0011 0011 0011 0011 pppp pppp 0011 0011 ...,
    wobei die Bits „pppp pppp" den Positionshinweis des nächsten Steuerdatenelementes entsprechen. Unabhängig von dem Wert der Bits „pppp pppp" wird ein Steuerdatenelement ausgeschlossen.
  • Der musterbrechende Code ist vorzugsweise ein Hinweis auf das Steuerdatenelement, welches zu ersetzen ist. In dem in der 3 dargestellten Beispiel werden die folgenden binären Codes angewandt:
    32 Nullen: 0011
    32 Einsen: 1100
    31 0/1 Übergänge: 0110
    31 1/0 Übergänge: 1001.
  • Auf dem empfangsseitigen Ende wird das ursprüngliche Steuerdatenelement auf der Basis dieses Codes ersetzt.
  • Das in der 4 schematisch dargestellte System 100 zur Übertragung von Zeilen von Datenelementen umfasst ein Telekommunikationsnetzwerk 101, eine (beispielsweise digitale) Datenquelle 102, ein Datenziel 103, eine erste Verarbeitungsvorrichtung 104 und eine zweite Verarbeitungsvorrichtung 105. In der ersten Verarbeitungsvorrichtung 104 werden Zeilen von in der Datenquelle 102 erzeugten Datenelementen in Übereinstimmung mit der Erfindung verarbeitet. Das Verarbeiten umfasst das Markieren und vorzugsweise das Entfernen von Steuerdatenelementen. Die verarbeiteten Zeilen werden über das Kommunikationsnetzwerk 101 zu der zweiten Verarbeitungsvorrichtung 105 übertragen. In der zweiten Verarbeitungsvorrichtung 105 werden die Zeilen in Übereinstimmung mit der Erfindung rekonstruiert, wonach sie an das Ziel 103 übertragen werden. Es ist wohlverstanden, dass das System 100 mehrere erste Verarbeitungsvorrichtungen 104 und zweite Verarbeitungsvorrichtungen 105 umfassen kann. Obwohl die Verarbeitungsvorrichtungen 104 und 105 in diesem Beispiel zum Übertragen und/oder Empfangen geeignet sind, ist es auch möglich, verschiedene Übertragungs-/Empfangsvorrichtungen einzusetzen.
  • Eine erste Verarbeitungsvorrichtung 104 umfasst beispielsweise einen Eingangspuffer 110 zum Empfang von Zeilen von Datenelementen. Diese Vorrichtung umfasst ferner eine Verarbeitungseinheit 111, die mit dem Eingangspuffer 110 verbunden ist. In einem Register 126 werden Bitmuster gespeichert, die fähig sind, Steuerdatenelemente zu bilden. In einem Vergleicher 112, der mit dem Eingangspuffer 110 und dem Register 126 verbunden ist, werden die Inhalte des Eingangspuffers 110 mit den Bitmustern des Registers 126 verglichen. Die Ergebnisse dieses Vergleiches werden an die Zähler 121, 122, 123 und 124 ausgegeben, welche beispielsweise Einsen, Nullen, 1/0-Übergänge und 0/1-Übergänge umfassen. Ein Vergleicher 125, der mit den Zählern 121 bis 124 verbunden ist, umfasst die Länge eines Steuerdatenelementes. Falls ein spezifisches Bitmuster eine gewisse Anzahl von Malen aufgetreten ist, liefert der Vergleicher 125 ein Signal an die Verarbeitungseinheit 111. Letztere ersetzt dann das Steuerdatenelement durch ein Ersatzdatenelement. Musterbrechende Codes, aus denen ein Ersatzdatenelement erzeugt werden kann, können im vorhinein in den Prozessor 111 oder in einem mit diesem verbundenen Speicher eingebaut werden, was in der 5 nicht dargestellt ist.
  • Ein Register 126 umfasst möglicherweise Beispiele von Steuerdatenelementen, die in konsekutiver Weise mit der Zeile verglichen werden.
  • Die Verarbeitungseinheit 111, die zusätzliche und Ersatzdaten elemente erzeugt und diese in der Zeile einbaut, falls notwendig, wird ferner mit einem Ausgangspuffer 119 verbunden. Der Ausgangspuffer 119 kann mit den nicht weiter dargestellten Übertragungsmitteln verbunden sein.
  • Es ist wohlverstanden, dass eine zweite Verarbeitungsvorrichtung 105 in ähnlicher Weise aufgebaut sein kann.
  • Welche Datenelemente als „Steuer-Datenelemente" bezeichnet werden, wird vorzugsweise im vorhinein festgelegt, beispielsweise zur Zeit, zu der das betreffende Kommunikationssystem initialisiert wird. Es ist aber auch möglich, dass Datenelemente in der Zeile als „Steuer-Datenelemente" bezeichnet werden und damit als auszuschliessende Datenelemente. Zu diesem Zweck, bevor die Zeile übertragen wird, wird ein Ausschlusshinweis übertragen, der vorzugsweise in codierter Form angibt, welche Datenelemente auszuschliessen sind.
  • Es ist wohlverstanden, dass der Fachmann verschiedene Änderungen und Ergänzungen einbringen kann, ohne den Rahmen der vorgelegten Erfindung zu verlassen.

Claims (20)

  1. Verfahren zur Übertragung einer Zeile (1) von Datenelementen, welche Zeile (1) normale Datenelemente (11) und Steuerdatenelemente (12, 12') umfasst, wobei das Verfahren umfasst: – Erfassen der besagten Steuerdatenelemente (12, 12') innerhalb der besagten Zeile, und – Markieren des ersten Steuerdatenelementes (12) in der Abfolge von Datenelementen der Zeile durch Liefern eines zusätzlichen Datenelementes (13) zu der zu übertragenden Zeile, dadurch gekennzeichnet, dass – das zusätzliche Datenelement (13) einen Positionshinweis (P) auf das erste Steuerdatenelement (12) in der Abfolge von Datenelementen der Zeile umfasst, – jedes Steuerdatenelement (12, 12') durch ein Eratzdatenelement (14, 15) ersetzt wird, welches einen Positionshinweis (P') auf das nächste Steuerdatenelement (12') umfasst, und – ein Ersatzdatenelement (14, 15) nicht einem Steuerdatenelement (12) entspricht.
  2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass der besagte Positionshinweis (P') innerhalb dass Ersatzdatenelementes (14) auf das nächste Steuerdatenelement (12') eine relative Position in Bezug auf das besagte Ersatzdatenelement (14) umfasst.
  3. Verfahren nach Anspruch 1 oder 2, dadurch gekennzeichnet, dass, falls der Positionshinweis (P') des besagten nächsten Steuerdatenelementes (12') nicht fähig ist, in einem zusätzlichen oder Ersatzdatenelement eingebracht zu werden, mindestens ein weiteres zusätzliches Datenelement (15), welches einen wei teren Positionshinweis (P'') umfasst, in die Zeile (1) eingefügt wird.
  4. Verfahren nach Anspruch 3, dadurch gekennzeichnet, dass das mindestens eine weitere zusätzliche Datenelement (15) in der Zeile (1) an der am weitesten entfernten Position eingefügt wird, dessen Positionshinweis (P) fähig ist, in einem zusätzlichen oder Ersatzdatenelement eingebracht zu werden.
  5. Verfahren nach einem der vorstehenden Ansprüche, dadurch gekennzeichnet, dass ein zusätzliches oder Ersatzdatenelement (13, 14) abgesehen von einem Positionshinweis (P) auch einen Längenhinweis (L) umfasst, der die Anzahl von Datenelementen nennt, die von dem Positionshinweis (P) eingenommen werden.
  6. Verfahren nach einem der vorstehenden Ansprüche, dadurch gekennzeichnet, dass ein Ersatzdatenelement (14) zusätzlich einen Typhinweis (T) eines Ersatz-Steuerdatenelementes (12) umfasst.
  7. Verfahren nach Anspruch 6, dadurch gekennzeichnet, dass der Typhinweis in solch einer Weise ausgewählt ist, dass ein Entsprechen mit einem Steuerdatenelement (12) ausgeschlossen ist.
  8. Verfahren nach einem der vorstehenden Ansprüche, dadurch gekennzeichnet, dass ein Datenelement (11) als ein Steuerdatenelement (12) markiert wird, falls das Datenelement einem Teil eines Steuerdatenelementes (12) entspricht.
  9. Verfahren nach Anspruch 8, dadurch gekennzeichnet, dass die Länge dieses Teiles plus die Länge des Datenelementes (11) gleich zur Länge eines Steuerdatenelementes (12) ist.
  10. Verfahren nach einem der vorstehenden Ansprüche, dadurch ge kennzeichnet, dass im Vorgriff angenommen wird, dass ein Positionshinweis (P; P') Teil eines Steuerdatenelementes (12) ist.
  11. Verfahren nach einem der vorstehenden Ansprüche, dadurch gekennzeichnet, dass, falls der Positionshinweis (P) in dem zusätzlichen Datenelement (13) einen kleineren Wert als die Länge des zusätzlichen Datenelementes aufweist, der Wert durch einen Hilfswert bis auf die besagte Länge erhöht wird, und dass das betreffende Ersatzdatenelement (14) das Datenelement ersetzt, welches an der Position beginnt, die benachbart zu dem zusätzlichen Datenelement (13) ist.
  12. Verfahren nach Anspruch 11, dadurch gekennzeichnet, dass die Länge des Ersatzdatenelementes (14) vorzugsweise durch den Hilfswert vermindert wird.
  13. Verfahren nach einem der vorstehenden Ansprüche, wobei die Zeile (1) in ein Datenpaket mit einem Kopf übertragen wird, dadurch gekennzeichnet, dass das zusätzliche Datenelement (13) direkt nach dem Kopf übertragen wird.
  14. Verfahren nach einem der vorstehenden Ansprüche, dadurch gekennzeichnet, dass ein Datenelement (11; 12; 13; 14) genau ein Byte umfasst.
  15. Vorrichtung mit Mitteln zum Ausführen der Schritte des Verfahrens nach einem der vorstehenden Ansprüche, gekennzeichnet durch einen Eingangspuffer (110) zum Empfang von Datenelementen; Vergleichermittel (112, 121124, 125) zum Vergleichen von Datenelementen, die Steuerdatenelemente erhalten haben, eine Verarbeitungseinheit (111) zum Ersatz von Steuerdatenelementen durch Ersatzdatenelemente und Übertragungsmittel (11) zum Übertragen von verarbeiteten Datenelementen.
  16. Vorrichtung nach Anspruch 15, dadurch gekennzeichnet, dass die Vergleichermittel (112, 121124) mindestens einen Zähler (121124) zum Zählen von Mustern aufweisen.
  17. Vorrichtung nach Anspruch 15 oder 16, dadurch gekennzeichnet, dass die Verarbeitungseinheit (111) einen Mikroprozessor umfasst.
  18. Vorrichtung zum Empfang von Datenelementen, die mit einer Vorrichtung (104) nach Anspruch 15 übertragen worden sind, gekennzeichnet durch einen Eingangspuffer, Erfassungsmittel zum Erfassen von Positionshinweisen und Verarbeitungsmittel zum Ersetzen von Datenelemente durch Steuerdatenelemente an Positionen, auf die durch Positionshinweise hingewiesen wird.
  19. Vorrichtung nach Anspruch 18, dadurch gekennzeichnet, dass die Erfassungsmittel zusätzlich zum Erfassen von zusätzlichen Datenelementen angeordnet sind.
  20. System (100) zum Übertragen von Datenelementen, mit einem Kommunikationsnetzwerk (101), mit einer ersten Vorrichtung (104) gemäss Anspruch 15 zum Übertragen von verarbeiteten Datenelementen, und mit einer zweiten Vorrichtung (105) gemäss Anspruch 18 zum Empfangen von Datenelementen, die über die besagte erste Vorrichtung (104) übertragen worden sind, über das besagte Kommunikationsnetzwerk (101).
DE69913152T 1998-07-29 1999-07-08 Ersetzen von Sonderzeichen in einem Datenstrom Expired - Lifetime DE69913152T2 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
NL1009763A NL1009763C2 (nl) 1998-07-29 1998-07-29 Werkwijze en stelsel voor het overdragen van een reeks data-elementen met uitsluiting van bepaalde bijzondere data-elementen.
NL1009763 1998-07-29
PCT/EP1999/004927 WO2000007338A1 (en) 1998-07-29 1999-07-08 Replacement of special characters in a data stream

Publications (2)

Publication Number Publication Date
DE69913152D1 DE69913152D1 (de) 2004-01-08
DE69913152T2 true DE69913152T2 (de) 2004-09-02

Family

ID=19767580

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69913152T Expired - Lifetime DE69913152T2 (de) 1998-07-29 1999-07-08 Ersetzen von Sonderzeichen in einem Datenstrom

Country Status (9)

Country Link
US (1) US6369723B1 (de)
EP (1) EP1101335B1 (de)
JP (1) JP3423692B2 (de)
AT (1) ATE255309T1 (de)
AU (1) AU5159199A (de)
CA (1) CA2334561C (de)
DE (1) DE69913152T2 (de)
NL (1) NL1009763C2 (de)
WO (1) WO2000007338A1 (de)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6737992B1 (en) * 2000-03-28 2004-05-18 Prismtech Limited Method, apparatus, and article for GIOP message compression/decompression
US8364815B2 (en) 2005-03-18 2013-01-29 Riverbed Technology, Inc. Reliability and availability of distributed servers
US7120666B2 (en) 2002-10-30 2006-10-10 Riverbed Technology, Inc. Transaction accelerator for client-server communication systems
US8176186B2 (en) * 2002-10-30 2012-05-08 Riverbed Technology, Inc. Transaction accelerator for client-server communications systems
US20060248194A1 (en) 2005-03-18 2006-11-02 Riverbed Technology, Inc. Connection forwarding
WO2008005629A2 (en) * 2006-05-26 2008-01-10 Riverbed Technology, Inc. Throttling of predictive acks in an accelerated network communication system
NZ549548A (en) * 2006-08-31 2009-04-30 Arc Innovations Ltd Managing supply of a utility to a customer premises
TWI384377B (zh) * 2008-12-04 2013-02-01 Ind Tech Res Inst 資料編碼及解碼方法
JP6834327B2 (ja) * 2016-10-06 2021-02-24 富士通株式会社 符号化プログラム、符号化装置および符号化方法

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5363098A (en) * 1993-10-25 1994-11-08 Digital Equipment Corporation Byte aligned data compression
US5678043A (en) * 1994-09-23 1997-10-14 The Regents Of The University Of Michigan Data compression and encryption system and method representing records as differences between sorted domain ordinals that represent field values
US5809341A (en) * 1996-03-29 1998-09-15 Nimishakvi; Hanumanthrao V. Circuit for transmitting received character when detection signal is not activated and transmitting substitute character when the detection signal is activated
US5818447A (en) * 1996-06-06 1998-10-06 Microsoft Corporation System and method for in-place editing of an electronic mail message using a separate program
US6373884B1 (en) * 1997-03-11 2002-04-16 Motorola, Inc. Method and apparatus for transmitting data
US5835036A (en) * 1997-05-12 1998-11-10 Cisco Systems Co. Method of encoding data for transmission

Also Published As

Publication number Publication date
NL1009763C2 (nl) 2000-02-01
CA2334561C (en) 2004-03-16
JP2002521966A (ja) 2002-07-16
CA2334561A1 (en) 2000-02-10
EP1101335A1 (de) 2001-05-23
EP1101335B1 (de) 2003-11-26
DE69913152D1 (de) 2004-01-08
JP3423692B2 (ja) 2003-07-07
WO2000007338A1 (en) 2000-02-10
US6369723B1 (en) 2002-04-09
ATE255309T1 (de) 2003-12-15
AU5159199A (en) 2000-02-21

Similar Documents

Publication Publication Date Title
DE3606869C2 (de) Vorrichtung zur Datenkompression
DE69829088T2 (de) Verfahren und Vorrichtung zur Übertragung von Datenrahmen
EP0645913A2 (de) Verfahren und Schaltungsanordnung zum Übertragen von ATM-Zellen über virtuelle Pfade
DE2423719A1 (de) Schaltungsanordnung zur ueberwachung der leistung eines multiprozessor-rechners
DE1499201B2 (de) Schaltungsanordnung zur Umwandlung von Informationen in gepackter Bytedar stellung in eine ungepackte Darstellung
DE2722124A1 (de) Anordnung zum feststellen des prioritaetsranges in einem dv-system
DE69913152T2 (de) Ersetzen von Sonderzeichen in einem Datenstrom
EP1886434A1 (de) Verfahren zur übertragung von daten zur steuerung einer hgüanlage
EP0856792A2 (de) Verfahren zur sicheren Darstellung eines Bildes auf einem Monitor
EP3682610A1 (de) Verfahren und vorrichtung zum erkennen eines angriffs auf ein serielles kommunikationssystem
DE3411015C2 (de)
DE3718472C2 (de)
DE102010026392B4 (de) Verfahren zur sicheren Parametrierung eines Sicherheitsgeräts
EP0535396A1 (de) Verfahren zur Bitfehlerreduktion in digitalen Kommunikationssystemen
DE3113189C2 (de) Vorrichtung zur Umsetzung von digitalen Zeichencodes, die von einem Datenverarbeitungssystem empfangen oder geliefert werden
DE2360788A1 (de) Elektronische datenverarbeitungsanlage
EP0840229B1 (de) Vorrichtung und Verfahren zur Selektion von Adressenwörtern
EP0840230B1 (de) Vorrichtung und Verfahren zur Selektion von Adressenwörtern mittels Demultiplex-Decodierung
EP1111864B1 (de) Kodierung von Haupt- und Zusatzinformationen in einem Bussystem
DE4401852C1 (de) Verfahren zum Empfang eines Codes und als Codeträger dienender Transponder
DE3924266A1 (de) Verfahren zum betrieb einer signaltechnisch sicheren schnittstelle
DE60212465T2 (de) Protokoll zur übertragung von digitalen nachrichten
WO2002071223A1 (de) Fehlertolerante rechneranordnung und verfahren zum betrieb einer derartigen anordnung
EP3317856B1 (de) Verfahren zum überprüfen der richtigkeit von einer darstellung von bilddaten auf einem anzeigemittel und anzeigeeinrichtung
EP1241835B1 (de) Empfangseinrichtung für einen CAN-Bus

Legal Events

Date Code Title Description
8364 No opposition during term of opposition