DE60001210T2 - Verfahren und Vorrichtung zur Datenkomprimierung von Netzwerkdatenpaketen - Google Patents
Verfahren und Vorrichtung zur Datenkomprimierung von NetzwerkdatenpaketenInfo
- Publication number
- DE60001210T2 DE60001210T2 DE60001210T DE60001210T DE60001210T2 DE 60001210 T2 DE60001210 T2 DE 60001210T2 DE 60001210 T DE60001210 T DE 60001210T DE 60001210 T DE60001210 T DE 60001210T DE 60001210 T2 DE60001210 T2 DE 60001210T2
- Authority
- DE
- Germany
- Prior art keywords
- packets
- packet
- history
- vector
- compressed
- 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
Links
- 238000000034 method Methods 0.000 title claims description 63
- 238000013144 data compression Methods 0.000 title description 11
- 238000007906 compression Methods 0.000 claims description 115
- 230000006835 compression Effects 0.000 claims description 110
- 238000004891 communication Methods 0.000 claims description 41
- 230000005540 biological transmission Effects 0.000 claims description 19
- 238000012790 confirmation Methods 0.000 claims description 5
- 238000012545 processing Methods 0.000 claims description 2
- 108091006146 Channels Proteins 0.000 description 28
- 238000004422 calculation algorithm Methods 0.000 description 10
- 230000006837 decompression Effects 0.000 description 10
- 230000000694 effects Effects 0.000 description 10
- 230000006870 function Effects 0.000 description 10
- 238000010586 diagram Methods 0.000 description 7
- 230000008569 process Effects 0.000 description 6
- 230000002411 adverse Effects 0.000 description 4
- 230000008901 benefit Effects 0.000 description 4
- 230000008859 change Effects 0.000 description 4
- 238000009795 derivation Methods 0.000 description 4
- 238000013461 design Methods 0.000 description 4
- 238000004088 simulation Methods 0.000 description 4
- 239000000835 fiber Substances 0.000 description 3
- 238000013459 approach Methods 0.000 description 2
- 230000001419 dependent effect Effects 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 238000011156 evaluation Methods 0.000 description 2
- 108091081062 Repeated sequence (DNA) Proteins 0.000 description 1
- 238000012669 compression test Methods 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 238000009429 electrical wiring Methods 0.000 description 1
- 230000005670 electromagnetic radiation Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000005713 exacerbation Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M7/00—Conversion 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/30—Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
- H03M7/3084—Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction using adaptive string matching, e.g. the Lempel-Ziv method
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Detection And Prevention Of Errors In Transmission (AREA)
Description
- Die vorliegende Erfindung betrifft allgemein die Datenkomprimierung und insbesondere die Verbesserung der Komprimierung von Daten in Paketnetzen.
- Bei herkömmlichen Datenkomprimierungsverfahren und -systemen wird ein Strom digitaler Daten in einen komprimierten Strom codiert und der komprimierte Codestrom wieder in einen entsprechenden Original- Datenstrom decodiert. Der Codestrom wird als "komprimiert" bezeichnet, da der Strom typischerweise aus einer kleineren Anzahl von Codes als im Original- Datenstrom enthaltenen Symbolen besteht. Solche kleineren Codes können vorteilhafterweise in einem entsprechend kleineren Speicherraum als die ursprünglichen Daten gespeichert werden. Weiterhin kann der komprimierte Codestrom in einer entsprechend kürzeren Zeit als die unkomprimierten Originaldaten in einem Kommunikationssystem, z. B. einem drahtgebundenen, drahtlosen oder faseroptischen Kommunikationssystem, übertragen werden. Der Bedarf an Datenübertragungs- und Speicherungskapazität in den heutigen Kommunikationsnetzen steigt stetig. So spielt die Datenkomprimierung eine wesentliche Rolle bei den meisten modernen Übertragungsprotokollen und Kommunikationsnetzen.
- Es ist wohlbekannt, daß zwei Klassen von Komprimierungsverfahren, die bei der Komprimierung von Daten nützlich sind, sogenannte Komprimierung für besondere Anwendungen und Komprimierung für allgemeine Anwendungen sind. Komprimierungsverfahren für besondere Anwendungen sind zum Komprimieren von besonderen Datenarten ausgelegt und, sind häufig relativ kostengünstig zu realisieren. Beispielsweise gehören zu wohlbekannten Komprimierungsverfahren für besondere Anwendungen Lauflängencodierung, Nullunterdrückungscodierung, Nullkompressionscodierung und Musteraustausch. Da diese Verfahren Daten komprimieren, die typischerweise gemeinsame Eigenschaften und Redundanzen besitzen, weisen diese Verfahren im allgemeinen relativ kleine Kompressionsverhältnisse auf. Ein Kompressionsverhältnis ist bekannterweise das Maß der Länge der komprimierten Codes relativ zu der Länge der Originaldaten. Kompressionsverfahren für besondere Anwendungen neigen jedoch bei der Komprimierung von Daten einer allgemeineren Beschaffenheit, d. h. Daten, die kein hohes Maß an gemeinsamen Eigenschaften und dergleichen besitzen, dazu, unwirksam zu sein.
- Demgegenüber sind Kompressionsverfahren für allgemeine Anwendungen nicht dafür ausgelegt, spezifisch eine Datenart zu komprimieren und werden häufig während des eigentlichen Komprimierungsvorgangs an unterschiedliche Datenarten angepaßt. Einige der am besten bekannten und nützlichsten Kompressionsverfahren für allgemeine Anwendungen stammen aus einer von J. Ziv und A. Lempel entwickelten Gruppe von Algorithmen, die in der Technik gewöhnlich als "Lempel-Ziv-Codierung" bezeichnet werden. Insbesondere Ziv et al., "A Universal Algorithm for Sequential Data Compression" (Ein Universalalgorithmus für sequentielle Datenkomprimierung), IEEE Transactions on Information Theory, IT-23 (3): 337-343, Mai 1977 (wo der gewöhnlich als "LZ1" bezeichnete Algorithmus beschrieben wird) und Ziv et al., "Compression of Individual Sequences Via Variable-Rate Coding" (Komprimierung einzelner Folgen über Codierung mit veränderlicher Rate), IEEE Transactions on Information Technology, IT-24 (5): 530- 536, September 1978 (wo der allgemein als "LZ2" bezeichnete Algorithmus beschrieben wird). Die Datenkomprimierungsverfahren LZ1 und LZ2 sind in der Technik wohlbekannt und brauchen hier nicht ausführlich besprochen zu werden.
- Kurz gesagt basiert der (in der Technik auch als "LZ77" bezeichnete und bekannte) Datenkompressionsvorgang LZ1 auf dem Grundsatz, daß eine wiederholte Zeichenfolge durch eine Bezugnahme auf ein früheres Auftreten der Folge, d. h. entsprechende Folgen, ersetzt werden kann. Die Bezugnahme, z. B. ein Zeiger, enthält typischerweise eine Anzeige der Position des früheren Auftretens, z. B. ausgedrückt als ein Byte-Versatz vom Anfang der wiederholten Folge, und die Anzahl von Zeichen, d. h. die gepaarte Länge, die wiederholt werden. Typischerweise werden die Bezugnahmen als Paare "[Versatz, Länge]" entsprechend der herkömmlichen LZ1- Codierung dargestellt. Demgegenüber wird durch (in der Technik auch als "LZ78" bezeichnete und bekannte) LZ2- Kompression ein Strom von Eingangsdatenzeichen in codierte Werte zerlegt, die auf einer adaptiv wachsenden Nachschlagetabelle bzw. einem adaptiv wachsenden Verzeichnis basieren, die bzw. das während der Komprimierung erzeugt wird. Das heißt, mit LZ2 werden keine Entsprechungen an irgendeiner Byte-Grenze und mit einer beliebigen Länge wie bei der LZ1-Codierung gefunden, sondern stattdessen wird, wenn eine Quellkette einem Verzeichniswort entspricht, dem Verzeichnis ein neues Wort zugefügt, das aus dem paarigen Wort zuzüglich dem nachfolgenden Quellenkettenbyte besteht. Nach der LZ2-Codierung werden Entsprechungen als Zeiger oder Indexe zu den Worten im Verzeichnis codiert.
- Wie oben erwähnt gibt es in der Technik reichlich Kompressionsverfahren, die sich von den durch die LZ1- und LZ2-Algorithmen verkörperten Grundsätzen ableiten. Beispielsweise ist von Terry A. Welch (siehe T. A. Welch, "A Technique for High Performance Data Compression" (Ein Verfahren für Hochleistungs- Datenkomprimierung), IEEE Computer, Seiten 8-19, Juni 1984, und durch das Welch am 10. Dezember 1985 erteilte US-Patent Nr. 4,558,302 der LZ2-Codierungsvorgang später in den wohlbekannten Kompressionsvorgang "Lempel-Ziv-Welch" ("LZW") verfeinert worden. Beide Kompressionsverfahren LZ2 und LZW basieren auf der Erzeugung und Verwendung einer sogenannten Kettentabelle, die Ketten von Eingangszeichen in Codes mit fester Länge abbildet. Insbesondere wird durch diese Kompressionsverfahren ein Strom von Datenzeichen durch serielles Durchsuchen des Zeichenstroms und Erzeugen von Codes auf der Grundlage von Folgen von angetroffenen Symbolen, die entsprechenden, vorher in der Tabelle, d. h. dem Verzeichnis, gespeicherten längstmöglichen Ketten entsprechen, in einen komprimierten Strom von Codes komprimiert. Bei jeder Herstellung einer Entsprechung und Erzeugung eines Codesymbols speichert der Vorgang auch einen neuen Ketteneintrag im Verzeichnis, der die gepaarte Folge im Datenstrom zuzüglich dem nächsten im Datenstrom angetroffenen Zeichensymbol umfaßt.
- Man kann erkennen, daß, wie oben angeführt, das Wesentliche bei der Lempel-Ziv-Codierung im Auffinden von Ketten und Teilketten besteht, die im ursprünglichen Datenstrom, z. B. in einem zu übertragenden Dokument, wiederholt werden. Die wiederholten Phrasen in dem zu komprimierenden Dokument werden durch einen Zeiger auf eine Stelle ersetzt, wo sie früher in dem ursprünglichen Datenstrom, z. B. Dokument, aufgetreten sind. Als solches erfordert die Decodierung von Daten, z. B. einem auf diese Weise komprimierten Text, einfach das Ersetzen der Zeiger durch den bereits decodierten Text, auf den er zeigt. Es ist wohlbekannt, daß ein Haupt-Auslegungsfaktor bei der Verwendung von Lempel-Ziv-Codierung darin besteht, zu bestimmen, ob man eine Grenze festlegen sollte, wie weit zurück ein Zeiger reichen kann, und was diese Grenze sein sollte. Ein weiterer Auslegungsfaktor der Lempel-Ziv-Codierung besteht darin, welche Teilketten innerhalb der gewünschten Grenze das Ziel eines Zeigers darstellen könnten. Das heißt, die Reichweite eines Zeigers im früheren Text kann uneingeschränkt sein, d. h. ein sogenanntes wachsendes Fenster, oder kann auf ein Fenster mit fester Größe der vorigen "N"-Zeichen beschränkt sein, wobei N typischerweise im Bereich von mehreren Tausend Zeichen, z. B. 3 Kilobyte, liegt. Nach dieser Codierung werden Wiederholungen von Ketten nur dann entdeckt und komprimiert, wenn beide im Fenster erscheinen. Man wird erkennen, daß die hinsichtlich derartiger Lempel-Ziv-Codierungsauslegungsentscheidungen angestellten Betrachtungen einen Kompromiß zwischen Geschwindigkeit, erforderlichem Speicherraum und Kompressionsverhältnis darstellen.
- Kompression ist eine bedeutende Überlegung bei der Verbesserung von Netzwirkungsgraden. Wenn beispielsweise die verfügbaren Rechnerressourcen, d. h. die Datenverarbeitungserfordernisse im Vergleich zu der verfügbaren Netzbandbreite groß sind, ist es am vorteilhaftesten, Datenpakete vor ihrer Übertragung über das Netz zu komprimieren. Selbstverständlich muß das eigentliche Kompressionsverfahren hinsichtlich der Geschwindigkeit und Gesamtkompression sorgfältig ausgewählt werden. Das heißt, ein Kompressionsverfahren, das zu langsam ist, wird die Netzleistung verringern und ein unwirksames Kompressionsverfahren wird jegliche möglichen Übertragungsgewinne begrenzen.
- Die Frage des Netzwirkungsgrades wird weiterhin durch die Tatsache verkompliziert, daß viele Paketnetze eigentlich unzuverlässig sind. Das heißt, gegenwärtige wohlbekannte Paketnetze, z. B. das Internet, lassen Pakete routinemäßig fallen oder ordnen durch das Netz übertragene Pakete um und verursachen damit Datenübertragungsfehler. Wenn beispielsweise das Kompressionsverfahren gewisse Abhängigkeiten zwischen Paketen einführt und das Netz danach diese Pakete fallen läßt oder umordnet, ist der Empfänger aufgrund der Wechselbeziehungen zwischen Paketen möglicherweise nicht in der Lage, ein bestimmtes Paket zu dekomprimieren, wenn ein vorheriges Paket verlorengegangen ist. Um solche Probleme zu lindern, werden daher gewisse wohlbekannte Ansätze benutzt: (1) Verbesserung der Netzzuverlässigkeit, wodurch hinsichtlich des Internets ein zuverlässigerer Ende- Ende-Transportschicht-Dienst angewandt werden kann, z. B. das wohlbekannte Übertragungssteuerungsprotokoll (TCP - Transmission Control Protocol), um Pakete auf der Transportebene zu komprimieren; (2) Benutzung zustandsloser Komprimierung, wobei jedes Paket getrennt komprimiert wird und dadurch sichergestellt wird, daß jedes Paket am Empfänger dekomprimiert werden kann; und (3) Streaming-Kompression, bei der zuverlässige Abgabe angenommen und ein Rücksetzmechanismus eingesetzt wird, wenn diese Annahme verletzt wird. Insbesondere wird, wenn ein Paket verlorengeht, vom Empfänger jedes nachfolgende Paket solange verworfen, bis die Kompression rückgesetzt ist. Nach dem Rücksetzen sind zukünftige Pakete nicht von vorhergehenden Paketen abhängig und die Dekompression kann normal weitergeführt werden. Zwei wohlbekannte Streaming- Kompressionsverfahren umfassen das Kompressionssteuerungsprotokoll PPP (Point-to-Point Protocol) und das IP-Kopfteil-Kompressionsprotokoll, das für Pakete des UDP (User Datagram Protocol) eingesetzt wird.
- Die oben beschriebenen Paket-Kompressionsverfahren sind beim Lindern der aus Paket-Wechselbeziehungen entstehenden Probleme nützlich, stellen aber gewisse andere Komplikationen dar. Beispielsweise erfordert das Komprimieren von Paketen auf der Transportebene eine Ende-Ende-Nutzung und erfordert typischerweise eine gewisse Höhe an Mitwirkung durch die Anwendung während der Übertragung. Auf ähnliche Weise wird, während zustandsloser Kompression ein Maß an Robustheit verleiht, durch das Attribut der Paketunabhängigkeit der zustandslosen Kompression das verwirklichte Kompressionsverhältnis verringert, da bei einer derartigen Kompression die Daten in einem einzelnen Paket untersucht werden. So kann beispielsweise dieser Kompressionsansatz nicht die größe Menge an Redundanz beseitigen, die typischerweise in Netzkopfteilen von benachbarten Paketen vorkommt. Während weiterhin Streamingkompression größere Kompressionsverhältnisse bereitstellt, wird durch diese Kompressionsverfahren die Wirkung des Paketverlustes vervielfacht, indem bei Verlust eines Pakets im Netz bewirkt wird, daß der Empfänger mehrere weitere Pakete verliert. Bei Netzen niedriger Zuverlässigkeit, z. B. dem Internet, wird durch diesen vervielfachenden Paketeffekt die Nützlichkeit der Verwendung von Streamingkompression verringert.
- Es besteht daher ein Bedarf an einem Kompressionsverfahren, das größere Robustheit und erhöhte Kompressionsverhältnisse ohne die nachteiligen Wirkungen voriger Kompressionsverfahren bereitstellt.
- In US-A 4730348 ist ein Datenkompressionssystem offenbart, bei dem Eingangsdaten unter Verwendung einer ausgewählten mehrerer von Kodierungstabellen kodiert werden, von denen jede ein Verfahren zum Kodieren von Daten unter Verwendung von Codes definiert, deren Länge sich im ungekehrten Verhältnis zur Häufigkeit von Dateneinheiten in einer vordefinierten Datenmenge verändert. Jedesmal wenn eine Auswertung der kodierten Daten anzeigt, daß die Daten nicht wirksam komprimiert werden, ruft das System einen Tabellenwechsler zum Auswählen von derjenigen unter den Kodierungstabellen auf, die die Bitlänge der kodierten Daten für eine vorgewählte Probe der Eingangsdaten minimiert. Wenn eine neue Tabelle ausgewählt wird, wird den kodierten Daten ein Tabellenwechselcode hinzugefügt, der der ausgewählten Tabelle entspricht. Weiterhin baut ein dynamischer Tabellenbauer eine in die Menge verfügbarer Kodierungstabellen einzuschließende neue Kodierungstabelle unter Verwendung eines vorgewählten Teils der vorher kodierten Eingangsdaten, bei dem eine Auswertung der kodierten Daten anzeigt, daß eine neue Kodierungstabelle die Kompression verbessern wird. Jede Datenkomprimierungseinheit enthält einen Datendekodierer zum Dekodieren von durch die andere Einheit über den Kanal gesendeten kodierten Daten. So benutzt der Datendekodierer eine den Kodierungstabellen entsprechende Menge von Dekodierungstabellen, Mittel zum Auswählen einer neuen Tabelle, wenn ein Tabellenwechselcode empfangen wird, und Mittel zum Bauen einer neuen Dekodierungstabelle, wenn sie einen Tabellenwechselcode empfängt, der anzeigt, daß die dem Tabellenwechselcode folgenden kodierten Daten unter Verwendung einer neuen Kodierungstabelle kodiert wurden.
- Die Erfindung entspricht den unabhängigen Ansprüchen, wobei bevorzugte Ausführungsformen in den abhängigen Ansprüchen aufgeführt sind.
- Ein Aspekt der Erfindung richtet sich auf ein Kommunikationsverfahren und eine Kommunikationseinrichtung, wodurch Paket-Paket-Kompression ermöglicht wird und dadurch größere Robustheit und erhöhte Kompressionsverhältnisse ohne die nachteiligen Wirkungen, z. B. den Effekt der Vervielfachung von Paketverlusten, vorheriger Komprimierungsverfahren erreicht werden. Nach einem Aspekt der Erfindung wird ein ausgewählter Vergangenheitszustand eingesetzt, der als Funktion eines sogenannten Bestätigungsvektors bestimmt wird. Nach einem Aspekt der Erfindung enthält der Bestätigungsvektor Informationen in bezug auf die Kennzeichnung von Paketen, die in einer vorherigen Übertragung über einen Kommunikationskanal erfolgreich empfangen worden sind. Das heißt nach einem Aspekt der Erfindung ist der Paketvergangenheitszustand ein mit einem entsprechenden Paket verbundener ausgewählter Vergangenheitszustand. Als solche ist eine erste Seite des Kommunikationskanals, z. B. die Senderseite, ausgestattet mit und in Kenntnis gewisser Informationen darüber, welche Pakete von der zweiten Seite des Kommunikationskanals, z. B. der Empfängerseite, erfolgreich empfangen worden sind. Der Dekomprimierer wiederum ist ebenfalls ausgestattet mit und in Kenntnis der ausgewählten Vergangenheit, um eine wirkungsvolle Dekomprimierung der übertragenen komprimierten Pakete vom Sender zu ermöglichen. Das heißt Dekomprimierung tritt als Funktion dessen ein, welche Pakete als Vergangenheit benutzt wurden, d. h. des ausgewählten Vergangenheitszustandes, während der Komprimierung derartiger Pakete. Als solche arbeiten der Komprimierer und Dekomprimierer (beidseitig des Kommunikationskanals) zusammenwirkend durch ausgewählte Vergangenheitszustands- und Bestätigungsaspekte der Erfindung dahingehend, verbesserte Komprimierung über einen Kommunikationskanal zu erreichen.
- Nach der bevorzugten Ausführungsform der Erfindung werden die Pakete kodiert und ihnen ein Kopfteil vorangestellt, der mindestens einen Vergangenheitsvektor enthält, wobei dieser Vergangenheitszustand den mit einem Paket verbundenen entsprechenden Vergangenheitszustand kennzeichnet. Weiterhin wird nach einem Aspekt der Erfindung der Bestätigungsvektor hergestellt und zum Sender übermittelt, wodurch der spezifische Komprimierungsalgorithmus am Sender die vom Komprimierungsalgorithmus benutzte Vergangenheit auf die Pakete begrenzen kann, die erfolgreich empfangen wurden. So ist nach der bevorzugten Ausführungsform der als die Vergangenheit benutzte die Pakete kennzeichnende Vektor im komprimierten Paket enthalten und ermöglicht damit dem Empfänger, den zum Dekomprimieren des Pakets notwendigen Paketvergangenheitszustand wieder herzustellen.
- Vorteilhafterweise werden nach einem Aspekt der Erfindung gesteigerte Robustheit und größere Kompressionsverhältnisse mit einer großen Vielzahl von Komprimierungsverfahren oder Kommunikationskanalanordnungen erreicht. Das heißt die Grundsätze der Erfindung sind von einem beliebigen bestimmten Komprimierungsverfahren unabhängig, und die Vorteile der Benutzung der verschiedenen Aspekte der Erfindung werden daher mit einer großen Vielzahl von Komprimierungsmethodiken und Kommunikationskanalkonfigurationen erreicht.
- Fig. 1 zeigt ein Blockschaltbild eines beispielhaften Systems zum Komprimieren und Dekomprimieren von Daten;
- Fig. 2 zeigt ein Flußdiagramm von beispielhaften Operationen zum Komprimieren von Daten nach einem Aspekt der Erfindung und nützlich in dem beispielhaften System der Fig. 1;
- Fig. 3 zeigt einen beispielhaften, nach den beispielhaften erfindungsgemäßen Operationen der Fig. 2 komprimierten Paketstrom;
- Fig. 4 zeigt ein Flußdiagramm von beispielhaften Operationen zum Dekomprimieren von Daten nach einem Aspekt der Erfindung und nützlich im beispielhaften System der Fig. 1; und
- Fig. 5 zeigt Komprimierungsergebnisse für verschiedene Paketgrößen als Vergleich zwischen bekannten Komprimierungsverfahren und der Komprimierung entsprechend den verschiedenen Aspekten der Erfindung.
- In dieser Beschreibung werden gleiche Elemente, Blöcke, Bauteile oder Abschnitte in den Figuren sofern nicht anders erwähnt mit denselben Bezugsbezeichnungen bezeichnet.
- Ein Aspekt der Erfindung richtet sich auf ein Kommunikationsverfahren und eine Kommunikationseinrichtung, wodurch Paket-Paket-Kompression ermöglicht wird und dadurch größere Robustheit und erhöhte Kompressionsverhältnisse ohne die nachteiligen Wirkungen, z. B. den Effekt der Vervielfachung von Paketverlusten, vorheriger Komprimierungsverfahren erreicht werden. Nach einem Aspekt der Erfindung wird ein ausgewählter Vergangenheitszustand eingesetzt, der als Funktion eines sogenannten Bestätigungsvektors bestimmt wird. Nach einem Aspekt der Erfindung enthält der Bestätigungsvektor Informationen in bezug auf die Kennzeichnung von Paketen, die in einer vorherigen Übertragung über einen Kommunikationskanal erfolgreich empfangen worden sind. Das heißt nach einem Aspekt der Erfindung ist der Paketvergangenheitszustand ein mit einem entsprechenden Paket verbundener ausgewählter Vergangenheitszustand. Als solche ist eine erste Seite des Kommunikationskanals, z. B. die Senderseite, ausgestattet mit und in Kenntnis gewisser Informationen darüber, welche Pakete von der zweiten Seite des Kommunikationskanals, z. B. der Empfängerseite, erfolgreich empfangen worden sind. Der Dekomprimierer wiederum ist ebenfalls ausgestattet mit und in Kenntnis der ausgewählten Vergangenheit, um eine wirkungsvolle Dekomprimierung der übertragenen komprimierten Pakete vom Sender zu ermöglichen. Das heißt Dekomprimierung tritt als Funktion dessen ein, welche Pakete als Vergangenheit benutzt wurden, d. h. des ausgewählten Vergangenheitszustandes, während der Komprimierung derartiger Pakete.
- Die verschiedenen Aspekte der vorliegenden Erfindung können in Form von Verfahren und Einrichtungen zur Ausübung dieser Verfahren ausgeführt werden. Auch kann die Erfindung in Form von Programmcode ausgeführt sein, der in sachlichen Medien wie beispielsweise Floppydisketten, CD-ROMs, Festplatten oder einem beliebigen sonstigen maschinelesbaren Speichermedium ausgeführt ist, wobei die Maschine zu einer Einrichtung zur Ausübung der Erfindung wird, wenn der Programmcode in die Maschine wie einem Computer eingeladen und von ihr ausgeführt wird. Die Erfindung kann auch in Form von Programmcode, beispielsweise in einem Speichermedium, ausgeführt sein, der in eine Maschine eingeladen und/oder von ihr ausgeführt wird oder über irgendein Übertragungsmedium wie über elektrische Verdrahtung oder Verkabelung, über Faseroptik oder über elektromagnetische Strahlung übertragen wird, wobei, wenn der Programmcode in eine Maschine wie beispielsweise einem Computer eingeladen und von ihr ausgeführt wird, die Maschine zu einer Einrichtung zur Ausübung der Erfindung wird. Bei Implementierung auf einem Universalprozessor kombinieren sich die Programmcodesegmente mit dem Prozessor zur Bereitstellung einer einmaligen Vorrichtung, die wie spezifische Logikschaltungen arbeitet.
- In Fig. 1 ist ein Blockschaltbild eines beispielhaften Systems 100 zum Komprimieren und Dekomprimieren von Daten dargestellt. Das System 100 ist unter anderem für die Übertragung und das Empfangen von Informationen über ein Übertragungsmittel, z. B. Draht, drahtlos oder Glasfaser, um nur einige zu nennen, nützlich. Weiterhin ist das System 100 als Alternative zum Aufzeichnen von Informationen auf und Ablesen von Informationen aus beispielsweise einem magnetischen Mittel wie beispielsweise Computer-Diskettenlaufwerken oder einem optisch lesbaren Medium wie beispielsweise CD-ROMs nützlich. Dabei ist es möglich, entsprechend der Erfindung komprimierte Daten auf einem beschreibbaren Mittel einschließlich eines magnetischen Mittels, z. B. Magnetplattenlaufwerken, und eines optisch beschreibbaren Mittels, z. B. CD-ROMs aufzuzeichnen. In der Fig. 1 wird ein Eingangsdatenstrom 105, z. B. Text, für den Eingangsdatencodierer 110 bereitgestellt. Wie ausführlicher unten besprochen, wird vom Eingangsdatencodierer 110 entsprechend einem Aspekt der Erfindung der Eingangsdatenstrom durch Anwenden von Paket-Paket-Kompression mit veränderlichem Vergangenheitszustand vorverarbeitet und codiert. Die verschiedenen, diesem Codierungsvorgang zugewandten Aspekte der Erfindung werden ausführlicher unten mit besonderer Bezugnahme auf die in Fig. 2 gezeigten beispielhaften Operationen beschrieben.
- Fortfahrend mit der Besprechung des beispielhaften Systems 100 der Fig. 1 wird der entsprechend einem Aspekt der Erfindung erzeugte codierte Eingangsdatenstrom 115 zum Komprimierer 120 weitergeleitet. Vom Komprimierer 120 wird nach der bevorzugten Ausführungsform der Erfindung eine Kompressionsmethodik, z. B. Lempel-Ziv-Kompression zum Komprimieren des codierten Eingangsdatenstroms 115 auf die komprimierten Daten 125 angewandt. Wie oben erwähnt ist wiederum zu beachten, daß zum Komprimieren des codierten Eingangsdatenstroms 115 entsprechend der Erfindung und zum Realisieren der vorteilhaften Aspekte der hier beschriebenen Erfindung eine beliebige Lempel- Ziv-Kompression benutzt werden kann. Die komprimierten Daten 125 werden dann vom Kanalcodierer 130 codiert, um kanalcodierte Informationen 135 zu erzeugen. Man wird erkennen, daß Kanalcodierung der komprimierten Information Informationen hinzufügt, um Fehlererkennung und/oder -korrektur bei dem Datenablesevorgang zu ermöglichen. Zu herkömmlichen Kanalcodierungsverfahren gehören wohlbekannte Reed-Solomon-Codierung, bei der eine Folge von Symbolen codiert wird, wobei jedes Symbol durch ein oder mehrere Datenbit dargestellt wird. Diese Symbole werden dann vom Modulationscodierer 140 modulationscodiert, der den modulierten Datenstrom 145 erzeugt, der eine Kanalfolge definiert, die über einen Kommunikationskanal übertragen oder auf dem Medium 150 aufgezeichnet wird.
- Während der Übertragung bzw. Aufzeichnung des Datenstroms werden häufig Rauschen und Störung in den Kanal/das Medium 150 eingeführt. Dabei empfangen der Modulationsdecodierer 155 und Kanaldecodierer 160 den modulierten Datenstrom 145 mit dem Rauschen und kehren auf wohlbekannte Weise die Codierungsvorgänge des Kanalcodierers 130 bzw. Modulationscodierers 140 um. Der Datenstrom vom Kanaldecodierer 160 entspricht den vom Komprimierer 120 erzeugten komprimierten Daten 125. Dieser Datenstrom wird dann erfindungsgemäß vom Dekomprimierer 165 dekomprimiert und vom Datendecodierer 170 decodiert, wodurch wie ausführlich unten anhand der Fig. 4 beschrieben der Ausgangsdatenstrom 175 entsteht.
- Die verschiedenen Aspekte der Erfindung richten sich auf die Realisierung verbesserter Kompressionsrobustheit und Kompressionsverhältnisse. Fig. 2 zeigt ein Flußdiagramm beispielhafter Operationen 200 zum Komprimieren von Daten entsprechend einem Aspekt der Erfindung und von Nutzen in dem beispielhaften System der Fig. 1 wie oben beschrieben. Insbesondere wird ein Eingangsdatenstrom empfangen, und die erfolgreich empfangenen Pakete werden untersucht (siehe Fig. 2, Block 210). Entsprechend diesem Aspekt der Erfindung ermöglicht die Untersuchung der erfolgreich empfangenen Pakete die Erkennung eines Paketvergangenheitszustandes als Funktion des Bestätigungsvektors (siehe Fig. 2, Block 220). Nach den bevorzugten Ausführungsformen der Erfindung ist der Paketvergangenheitszustand eine vorhergehende Menge von Paketen, aus denen die Kompression des gegenwärtigen Pakets bestimmt wird. Beispielsweise ist hinsichtlich der Lempel-Ziv 77- Kompression der Vergangenheitszustand eine direkte Korrelation mit dem in dieser Lempel-Ziv-Kompression benutzten sogenannten Verzeichnis. Interessanterweise besteht ein Hauptunterschied zwischen der obenerwähnten zustandslosen Kompression und der Streaming-Kompression von Netzpaketen in dem bestimmten, von jedem Verfahren benutzten Vergangenheitszustand. Das heißt, bei zustandsloser Kompression wird kein Vergangenheitszustand benutzt, während bei Streaming-Kompression ein beliebiges vorhergehendes Paket als Vergangenheit zulässig ist. Diese Unterschiede gelten weiterhin hinsichtlich der Grundsätze der Erfindung.
- Insbesondere ist nach der bevorzugten Ausführungsform der Erfindung der Paketvergangenheitszustand ein ausgewählter Vergangenheitszustand hinsichtlich bestimmter Pakete, die erfolgreich über den Kommunikationskanal, z. B. durch Empfängerseite bzw. den Empfänger, empfangen worden sind. Der Empfänger wiederum wird mit der ausgewählten Vergangenheit beliefert und darüber in Kenntnis gesetzt, um eine wirkungsvolle Dekomprimierung der übertragenen komprimierten Pakete zu ermöglichen. Vorteilhafterweise wird nach diesem Aspekt der Erfindung durch Verwendung des ausgewählten Paket-Paket-Vergangenheitszustandes die Kompressionsrobustheit und das Kompressionsverhältnis gegenüber vorherigen Streaming-Kompressionsverfahren verbessert, die an den ihnen eigenen Paketverlusten leiden.
- Nach Identifizieren des ausgewählten Paketvergangenheitszustandes wie oben angeführt, wird dieser Vergangenheitszustand zum Codieren gewisser Informationen in die auf Übertragung vom Sender wartenden Pakete eingesetzt. Insbesondere werden entsprechend der bevorzugten Ausführungsform der Erfindung die einzelnen Pakete als Funktion des damit verbundenen entsprechenden Paketvergangenheitszustandes codiert (siehe Fig. 2, Block 230). Nach einer Ausführungsform der Erfindung wird jedem Paket ein Kopfteil vorangestellt, der beispielsweise einen Vergangenheitsvektor enthält, der die mit diesem Paket verbundene entsprechende Paketvergangenheit identifiziert. Die Aufmerksamkeit kurz der Fig. 3 zuwendend, wird ein beispielhafter Paketstrom 300 dargestellt, der entsprechend den beispielhaften Operationen der Fig. 2 komprimiert ist. Nach der Ausführungsform der Fig. 3 enthält der Paketkopf zusätzliche Posten wie beispielsweise eine Folgenummer und den Bestätigungsvektor. Das heißt, entsprechend weiteren Ausführungsformen der Erfindung kann der oben erwähnte Bestätigungsvektor als Teil des Paketkopfes übertragen werden. Der Fachmann wird erkennen, daß die Bestimmung, ob der Bestätigungsvektor (wie oben beschrieben) getrennt von den codierten Paketen oder als Teil des Paketkopfes übertragen wird, eine Sache der Auslegungswahl ist, wobei die Grundsätze der Erfindung in beiden Zusammenhängen gleicherweise gelten. Beispielsweise kann der Bestätigungsvektor an den Sender unter Verwendung eines sogenannten "Huckepack"- Verfahrens übertragen werden, wenn ein Datenstrom in der entgegengesetzten Richtung vom Empfänger zum Sender besteht.
- Beispielsweise enthält der Paketstrom 300 eine Reihe von Paketen (z. B. als Pakete 305-315 gezeigtes Paket 1 bis Paket n in der Fig. 3). Zusätzlich enthält dieses Paket einen Kopfteil (z. B. jeweils als Kopfteile 320- 330 dargestellte H&sub1; bis Hn in der Fig. 3). Weiterhin ist beispielhafterweise der Kopfteil 320 ausführlicher mit der codierten Folgenummer 335, dem Vergangenheitsvektor 340 und dem Bestätigungsvektor 345 dargestellt.
- Entsprechend der bevorzugten Ausführungsform wird die Folgenummer, z. B. Folgenummer 335, sowohl vom Sender als auch vom Empfänger zum Identifizieren von entsprechend den Grundsätzen der Erfindung komprimierten Paketen benutzt. Die zum Codieren der Folgenummer benutzte Anzahl von Bit muß ausreichen, um die wohlbekannten nachteiligen Folgen eines sogenannten "wrapping" (Wirksprungs) während der zum Durchlaufen des gesamten Netzes benötigten maximalen Zeit zu vermeiden. Beispielhafterweise ist die Folgenummer 335 als 24 Bit lang dargestellt.
- Weiterhin beschreibt der Vergangenheitsvektor, z. B. Vergangenheitsvektor 340, entsprechend der bevorzugten Ausführungsform die Menge vorheriger bei der Kompression benutzter Pakete, d. h. den ausgewählten Vergangenheitszustand. Hinsichtlich der bevorzugten Ausführungsform der Erfindung, die die Bestätigungspakete für die Vergangenheitsbestimmung benutzt, kann bezüglich der doppelten Laufzeit des Netzes zwischen der Übertragungszeit eines Pakets und der Zeit, wenn das Paket als Vergangenheit benutzt wird, eine zeitliche Verzögerung eintreten. Dabei wird entsprechend der bevorzugten Ausführungsform der Erfindung der Vergangenheitsvektor unter Verwendung eines Offsets und einer Bitmaske codiert, so daß der Offset von der Folgenummer des Pakets abgezogen wird, um die Folgenummer des Pakets mit der jüngsten Vergangenheit festzustellen. Durch die Bitmaske werden zusätzliche Vergangenheitspakete identifiziert, die diesem Paket mit der jüngsten Vergangenheit direkt vorangehen. Beispielhafterweise enthält hinsichtlich des Kopfteils 320 der Vergangenheitsvektor 340 8 Bit Offset und 8 Bit Maske, wodurch der Vergangenheitszustand auf höchstens 9 aufeinanderfolgende Pakete innerhalb der letzten 233 begrenzt wird.
- Wie oben erwähnt enthält der Paketkopf der Ausführungsform der Fig. 3 auch den Bestätigungsvektor, z. B. Bestätigungsvektor 345, der eine Menge kürzlich empfangener Pakete beschreibt. Der Bestätigungsvektor enthält zumindest die Folgenummer des zuletzt empfangenen Pakets und eine Bitmaske, die den Zustand der direkt vorangegangenen Pakete beschreibt. Beispielsweise ist der Bestätigungsvektor 345 32 Bit lang, um 24 Bit für die Folgenummer und 8 Bit für die zugehörige Maske abzudecken.
- Uns wieder der Fig. 2 zuwendend stehen nach der Codierung der Pakete als Funktion ihrer entsprechenden Paketvergangenheitszustände (siehe Fig. 2, Block 230) entsprechend den Grundsätzen der Erfindung diese Pakete zur weiteren Kompression bereit. Wie oben ausgeführt besteht ein Vorteil der vorliegenden Erfindung darin, daß sie im Zusammenhang mit einer Vielzahl bestehender Kompressionsverfahren angewandt werden kann. Wie beispielsweise ausführlicher unten beschrieben verbessern die Grundsätze der Erfindung die Kompression eines Paketstroms, auf den die wohlbekannte LZ77-Kompression angewandt wird, oder das wohlbekannte Kompressionsverfahren "Deflate". So stehen nach Anwendung des ausgewählten Kompressionsverfahrens auf die codierten Pakete (siehe Fig. 2, Block 240) die komprimierten Pakete zur Übertragung bereit (siehe Fig. 2, Block 250).
- Nach einem Aspekt der Erfindung ist erkannt worden, daß durch Verwenden eines ausgewählten Vergangenheitszustandes als Funktion der Pakete zur Übertragung über ein Netz die Bereitstellung eines eleganten Kompressionswerkzeuges erzielt wird, mit dem verbesserte Datenkompression realisiert werden kann. Dabei ist nach einem Aspekt der Erfindung der mit einem jeweiligen Paket verbundene Paketvergangenheitszustand ein ausgewählter Vergangenheitszustand, in dem die Übertragungsseite, d. h. der Sender, mit gewissen Informationen darüber, welche Pakete von der Empfängerseite, d. h. dem Empfänger, erfolgreich empfangen worden sind, beliefert wird und darüber in Kenntnis gesetzt wird. Die Empfängerseite wiederum wird ebenfalls mit dem mit diesen Paketen verbundenen ausgewählten Vergangenheitszustand beliefert und darüber in Kenntnis gesetzt, um eine wirkungsvolle Dekomprimierung der übertragenen komprimierten Pakete vom Sender zu ermöglichen. Dabei wirken der Sender und der Empfänger über Aspekte des ausgewählten Vergangenheitszustandes und der Bestätigung nach der Erfindung zusammen, um eine verbesserte Kompression über den Kommunikationskanal zu erreichen.
- Insbesondere wird entsprechend einem Aspekt der Erfindung der Bestätigungsvektor im Zusammenhang mit dem bestimmten Kompressionsalgorithmus eingesetzt, so daß der Sender die vom Kompressionsalgorithmus benutzte Vergangenheit auf diejenigen Pakete begrenzen kann, die richtig empfangen werden. So ist entsprechend einer Ausführungsform der Erfindung der die als Vergangenheit benutzten Pakete identifizierende Vektor im komprimierten Paket enthalten und ermöglicht damit dem Empfänger, den zum Dekomprimieren des Pakets notwendigen Paketvergangenheitszustand wiederzugewinnnen. Nach weiteren Ausführungsformen der Erfindung wird der Bestätigungsvektor getrennt von den komprimierten Paketen übertragen. Während weiterhin die hier aufgeführten beispielhaften Ausführungsformen der Deutlichkeit halber eine Anordnung mit einem einzelnen Kommunikationskanal besprechen, sollte man verstehen, daß die Grundsätze der Erfindung auf gleiche Weise auf Anordnungen und Konfigurationen mit mehreren Kommunikationskanälen anwendbar sind. Vorteilhafterweise wird entsprechend diesem Aspekt der Erfindung durch Verwendung des ausgewählten Vergangenheitszustandes die Kompressionsrobustheit und das Kompressionsverhältnis gegenüber vorherigen Streaming- Kompressionsverfahren verbessert, die an der ihnen eigenen Verschlimmerung der Paketverluste leiden.
- Vor der Beschreibung gewisser beispielhafter Kompressionsprüfungsergebnisse, die weiter ausführlich die Vorteile verschiedener Aspekte der Erfindung darstellen, werden nunmehr die Dekomprimierungsaspekte der Erfindung wie oben aufgeführt besprochen. Fig. 4 zeigt besonders ein Flußdiagramm beispielhafter Operationen 400 zum Dekomprimieren von Daten entsprechend einem weiteren Aspekt der Erfindung. Insbesondere wird aus dem empfangenen komprimierten Strom von Paketen (siehe Fig. 4, Block 410) der Vergangenheitsvektor auf paketweise Basis abgeleitet (siehe Fig. 4, Block 420). Beispielhafterweise beschreibt der folgende Pseudocode die Ableitung dieser Posten entsprechend einer Ausführungsform der Erfindung:
- Wie zu erkennen ist, kann der oben beschriebene Pseudocode vom Fachmann zur Entwicklung verschiedener Programme, z. B. eines Computerprogramms in der wohlbekannten Programmierungssprache C, zur Ausführung in einem Prozessor zum Implementieren der Erfindung benutzt werden. Aus der Ableitung des Vergangenheitsvektors wird der Vergangenheitszustand des der Dekomprimierung unterworfenen Pakets identifiziert (siehe Fig. 4, Block 430). Nach weiteren Ausführungsformen der Erfindung kann die Ableitung auch die Ableitung des Bestätigungsvektors und der Folgenummer aus dem Paketkopf einschließen.
- Entsprechend der bevorzugten Ausführungsform der Erfindung kann die Dekomprimierung des gegenwärtigen Pakets als Funktion des entsprechenden Vergangenheitszustandes fortschreiten (siehe Fig. 4, Block 440). Dabei wird das gegenwärtige unkomprimierte Paket zu dem gegenwärtig im empfangenen Paketzustand (siehe Fig. 4, Block 450) des entsprechenden Dekomprimierers, z. B. des Dekomprimierers an der Empfangsseite des bestimmten Kommunikationskanals, hinzugefügt und dadurch die Menge empfangener Pakete aktualisiert. Abschließend wird nach der Dekomprimierung des gegenwärtigen Pakets der Bestätigungsvektor aufgebaut und zurück zum Sender übertragen (siehe Fig. 4, Block 460). Wie schon aufgeführt, beschreibt der Bestätigungsvektor die Menge jüngst empfangener Pakete und wird vom Sender zum Komprimieren von zukünftigen Paketen in Verbindung mit dem ausgewählten Vergangenheitszustand entsprechend einem Aspekt der Erfindung benutzt werden.
- Zur weiteren Darstellung der verschiedenen Aspekte der Erfindung und ihrer Vorteile wurden die Grundsätze der Erfindung im Zusammenhang mit gewissen Komprimierungssimulationen angewandt, bei denen zwei wohlbekannte obenerwähnte Komprimierungsformate benutzt wurden. Insbesondere wurde das Komprimierungsformat Deflate im Zusammenhang mit einer vorbestimmten Folge von Datenpaketen benutzt. Wie wohlbekannt ist, ist Deflate ein weit verbreitetes Komprimierungsformat, das die Grundlage für viele wohlbekannte Dateiformate wie beispielsweise "gzip", "zip" und "png" bildet, um nur einige zu nennen. Bei Deflate werden LZ77- und Huffmann-Kodierungen kombiniert und es ist im Zusammenhang mit Netzprotokollen mit PPP benutzt worden. Trotz des vorliegenden Ausführungsbeispiels wurde die wohlbekannte und öffentlich über das Internet unter http:www.cdrom.com/pub/infozip/zlib. erhältliche Zlib-Implementierung von Deflate benutzt, wobei die Komprimierungshöhe auf den Vorgabewert von sechs (6) eingestellt wurde.
- Insbesondere wurden vierzehn gewöhnlich benutzte Dateien aus dem wohlbekannten Calgary Corpus (einem vielfach benutzten Standardreferenzwerk zur Auswertung der Wirksamkeit von Komprimierungsalgorithmen, z. B. T. C. Bell et al., Modeling for text compression (Modellierung für Textkomprimierung), Computing Surveys 21(4): 557-591, Dezember 1989) zur Kennzeichnung eines Eingangsdatenstroms zur Komprimierung benutzt. Es wurde eine Bytefolge durch Verkettung der vierzehn Calgary Corpus-Dateien in alphabetischer Reihenfolge und Aufteilen des Eingangsstroms in Pakete fester Größe von 1600-Byte-Paketen bzw. 125-Byte-Paketen erstellt. Wie oben aufgeführt enthält ein Aspekt der Erfindung Bestätigungen von über Kommunikationskanäle übertragenen Paketen. Bei den Beispielen der vorliegenden Komprimierungssimulation werden die Bestätigungen als am Komprimierer über verschiedene Bestätigungs-, d. h. Paketverzögerungen ankommend modelliert.
- In dem Ausführungsbeispiel wird die Auswirkung von Verzögerung auf die Anzahl von Ausgabebit pro Eingabebyte für die entsprechende Paketgröße von 1600 Byte und 125 Byte verglichen. Insbesondere zeigt Fig. 5 Simulationsergebnisse 500 und 510 für derartige entsprechende Paketgrößen als Vergleich zwischen einem bekannten zustandslosen Komprimierungsverfahren, siehe z. B. zustandslose Komprimierungsergebnisse 520, einem bekannten Streaming-Komprimierungsverfahren, siehe z. B. Streaming-Komprimierungsergebnisse 530, und Komprimierung nach den Grundsätzen der Erfindung, hier zweckdienlicherweise als sogenannte "bestätigte Komprimierung (Ack)" bezeichnet, siehe z. B. Ack- Ergebnisse 540. Wie aus Simulationsergebnissen 500 und 510 zu erkennen ist, liefern Ack-Ergebnisse 540 wesentlich größere Komprimierung als zustandslose Ergebnisse 520, aber nicht so große wie Streaming- Ergebnisse 530. Man wird natürlich erkennen, daß Streaming-Ergebnisse 530 die Auswirkung von Paketverlusten nicht berücksichtigen, die wie schon aufgeführt einer derartigen Komprimierung eigen sind. Demgegenüber werden die nach den Grundsätzen der Erfindung erreichten Ack-Ergebnisse 540 durch einen etwaigen derartigen Paketverlust nicht bedeutend beeinflußt.
- Durch das Obige werden nur die Grundsätze der vorliegenden Erfindung dargestellt. Man wird daher erkennen, daß der Fachmann in der Lage sein wird, verschiedene Anordnungen auszuarbeiten, die, obwohl hier nicht ausdrücklich beschrieben oder dargestellt, die Erfindung entsprechend den Ansprüchen verwirklichen. Weiterhin sollen alle hier aufgeführten Beispiele und bedingte Sprache im Prinzip ausdrücklich nur für Lehrzwecke bestimmt sein, um dem Leser bei dem Verständnis der Grundsätze der Erfindung und der durch die Anmelderin beigetragenen Ideen zur Fortbildung der Technik behilflich zu sein, und sind so auszulegen, daß sie keine Einschränkung solcher spezifisch aufgeführten Beispiele und Bedingungen darstellen. Weiterhin sollen alle hiesigen Aufführungen von Grundsätzen, Aspekten und Ausführungsformen der Erfindung sowie spezifische Beispiele derselben sowohl strukturelle als auch funktionelle Entsprechungen derselben umfassen. Zusätzlich ist beabsichtigt, daß solche Entsprechungen sowohl gegenwärtig bekannte Entsprechungen als auch zukünftig entwickelte Entsprechungen, d. h. alle entwickelten Elemente, die ungeachtet der Struktur dieselbe Funktion durchführen, einschließen.
- So wird der Fachmann beispielsweise erkennen, daß die vorliegenden Blockschaltbilder konzeptmäßige Ansichten beispielhafter Schaltungen darstellen, die die Grundsätze der Erfindung verkörpern. Auf ähnliche Weise wird man erkennen, daß alle Flußdiagramme, Zustandsübergangsdiagramme, Pseudocodes, Programmcodes und dergleichen verschiedene Vorgänge darstellen, die im wesentlichen in einem computerlesbaren Medium dargestellt und so durch einen Computer, eine Maschine oder einen Prozessor ausgeführt werden können, ganz gleich, ob ein derartiger Computer, eine derartige Maschine oder ein derartiger Prozessor ausdrücklich dargestellt ist oder nicht.
Claims (30)
1. Datenkommunikationsverfahren mit Aufteilen des
Eingangs-Datenstroms in eine Mehrzahl von Paketen
und Komprimieren der Mehrzahl von Paketen in einen
komprimierten Datenstrom (240); gekennzeichnet
durch, vor dem Schritt des Komprimierens,
Kennzeichnen eines entsprechenden
Paketvergangenheitszustandes für bestimmte der Pakete als
Funktion mindestens eines Bestätigungsvektors
(210); und
Codieren der bestimmten der Mehrzahl von Paketen
als Funktion der damit verbundenen entsprechenden
Paketvergangenheit (230).
2. Verfahren nach Anspruch 1, wobei der mit dem Paket
verbundene entsprechende
Paketvergangenheitszustand als Funktion einer Mehrzahl von empfangenen
Paketen gekennzeichnet wird.
3. Verfahren nach Anspruch 2, wobei die Mehrzahl
empfangener Pakete Pakete darstellen, die vordem
von einem Empfänger ohne einen Übertragungsfehler
empfangen worden sind.
4. Verfahren nach Anspruch 2, wobei jedes Paket einen
entsprechenden Paketkopf (320) aufweist, der
mindestens einen Vergangenheitsvektor (340)
enthält, der den entsprechenden
Paketvergangenheitszustand des Pakets kennzeichnet.
5. Verfahren nach Anspruch 3, wobei der
Bestätigungsvektor durch den Empfänger erzeugt wird.
6. Verfahren nach Anspruch 3, wobei der
Bestätigungsvektor eine Folgenummer des bestimmten empfangenen
Pakets enthält, das zuletzt empfangen wurde.
7. Verfahren nach Anspruch 4, wobei der Paketkopf
eine Folgenummer (335) enthält, die ein bestimmtes
empfangenes Paket kennzeichnet.
8. Verfahren zum übertragen eines
Kommunikationsstroms zwischen einer Sendestelle und einer
Empfangsstelle über einen Kommunikationskanal, mit
folgendem:
Ausführen des Verfahrens nach Anspruch 1 an der
Sendestelle, wobei der erste Bestätigungsvektor
durch die Sendestelle von der Empfangsstelle
empfangen wird und mit jedem Paket ein Paketkopf
verbunden ist, der mindestens einen
Vergangenheitsvektor enthält, der den entsprechenden
Paketvergangenheitszustand des Pakets kennzeichnet; und
Übertragen des komprimierten Datenstroms über den
Kommunikationskanal von der Sendestelle zur
Empfangsstelle.
9. Verfahren nach Anspruch 8, wobei der mit dem Paket
verbundene entsprechende
Paketvergangenheitszustand als Funktion einer Mehrzahl empfangener
Pakete an der Empfängerstelle gekennzeichnet wird.
10. Verfahren nach Anspruch 9, wobei der erste
Bestätigungsvektor eine Folgenummer eines
bestimmten empfangenen Pakets enthält, das zuletzt von
der Empfangsstelle empfangen wurde.
11. Verfahren nach Anspruch 9, wobei bei der
Komprimierung der Pakete Lempel-Ziv-Codierung eingesetzt
wird.
12. Verfahren nach Anspruch 8, weiterhin mit
folgendem:
Empfangen des komprimierten Datenstroms an der
Empfangsstelle (410),
Entnehmen des mit den bestimmten der Pakete (420)
verbundenen entsprechenden
Vergangenheitszustandes; und
Dekomprimieren des komprimierten Datenstroms zum
Wiedergewinnen der Mehrzahl von Paketen (440),
wobei die bestimmten der codierten Pakete als
Funktion der damit verbundenen entnommenen
Paketvergangenheit dekomprimiert werden.
13. Verfahren nach Anspruch 12, weiterhin mit
Aktualisieren eines empfangenen Paketzustandes als
Funktion der dekomprimierten Pakete (450).
14. Verfahren nach Anspruch 13, weiterhin mit Aufbauen
eines zweiten Bestätigungsvektors (460), der einen
Empfang der dekomprimierten Pakete durch die
Empfangsstelle bestätigt; und
Übertragen des zweiten Bestätigungsvektors von der
Empfängerstelle zu der Sendestelle.
15. Verfahren zum Wiedergewinnen von Daten aus einem
komprimierten Datenstrom, mit folgendem:
Empfangen des komprimierten Datenstroms, der eine
Mehrzahl codierter Pakete enthält; gekennzeichnet
durch:
Kennzeichnen eines entsprechenden, mit bestimmten
der codierten Pakete (430) verbundenen
Vergangenheitszustandes; und
Dekomprimieren des komprimierten Datenstroms zum
Wiedergewinnen der Daten (440); wobei die
bestimmten, der codierten Pakete als Funktion der
damit verbundenen entsprechenden
Paketvergangenheit dekomprimiert werden.
16. Verfahren nach Anspruch 15, weiterhin mit
Aktualisieren eines empfangenen Paketzustandes als
Funktion der Pakete, die dekomprimiert werden.
17. Verfahren nach Anspruch 16, weiterhin mit Aufbauen
eines Bestätigungsvektors (460); und
Übertragen des Bestätigungsvektors von einem
Empfänger zu einem Sender, wobei der Empfänger und
der Sender den komprimierten Datenstrom über
mindestens einen Kommunikationskanal austauschen.
18. Datenkommunikationseinrichtung mit folgendem:
einem Empfänger zum Empfangen eines Datenstroms
zur Übertragung durch die Einrichtung, wobei der
Datenstrom eine Mehrzahl von Paketen umfaßt; und
einem Komprimierer (120) zum Komprimieren der
Pakete in einen komprimierten Datenstrom;
gekennzeichnet durch:
einen Codierer (110) zum Kennzeichnen einer
Mehrzahl von Paketvergangenheitszuständen als Funktion
mindestens eines Bestätigungsvektors, wobei jeder
Paketvergangenheitszustand mit einem
entsprechenden der Pakete verbunden ist, und zum Codieren der
Mehrzahl von Paketen als Funktion der Mehrzahl von
Vergangenheitszuständen.
19. Datenkommunikationseinrichtung nach Anspruch 18,
weiterhin mit einem Sender (130, 140) zum
Übertragen des komprimierten Datenstroms über
einen Kommunikationskanal (150).
20. Datenkommunikationseinrichtung nach Anspruch 19,
wobei der Kommunikationskanal Teil eines Internets
ist.
21. Datenkommunikationseinrichtung nach Anspruch 18,
weiterhin mit einem Dekomprimierer (165) zum
Empfangen eines Eingangs-Datenstroms, wobei der
Eingangs-Datenstrom eine Mehrzahl komprimierter
Pakete enthält, Kennzeichnen eines entsprechenden
mit bestimmten der komprimierten Pakete
verbundenen Vergangenheitszustandes und Dekomprimieren
der Mehrzahl komprimierter Pakete, wobei die
bestimmten der komprimierten Pakete als Funktion
der damit verbundenen entsprechenden
Paketvergangenheit dekomprimiert werden.
22. Datenkommunikationseinrichtung nach Anspruch 21,
wobei der Dekomprimierer mindestens einen
Bestätigungsvektor zur Übertragung von der
Datenkommunikationseinrichtung aufbaut.
23. Datenkommunikationseinrichtung nach Anspruch 22,
wobei der Bestätigungsvektor einen Empfang der
dekomprimierten Pakete durch die
Datenkommunikationseinrichtung bestätigt.
24. Datenkommunikationseinrichtung nach Anspruch 18,
wobei der Komprimierer zum Komprimieren der Pakete
in den komprimierten Datenstrom Lempel-Ziv-
Codierung benutzt.
25. Einrichtung zum Verarbeiten eines komprimierten
Digitalsignals mit folgendem:
einem Empfänger (155, 160) zum Empfangen des
komprimiertem Digitalsignals aus dem
Kommunikationskanal; und
einem Dekomprimierer (165) zum Dekomprimieren des
empfangenen komprimierten Digitalsignals und
Wiedergewinnen des Eingangsstroms digitaler Daten
aus dem dekomprimierten Digitalsignal; dadurch
gekennzeichnet, daß
der Dekomprimierer zum Dekomprimieren eines
Signals geeignet ist, das durch folgendes erzeugt
wurde: Aufteilen eines Eingangsstroms von
Digitaldaten in eine Mehrzahl von Paketen; Kennzeichnen
eines entsprechenden Paketvergangenheitszustandes
für bestimmte der Pakete als Funktion mindestens
eines Bestätigungsvektors; Codieren der bestimmten
der Pakete als Funktion der damit verbundenen
entsprechenden Paketvergangenheit, wobei jedes Paket
mit einem Paketkopf verbunden ist, der mindestens
einen Vergangenheitsvektor enthält, der den
entsprechenden Paketvergangenheitszustand des Pakets
kennzeichnet; und Komprimieren der codierten
Pakete in das komprimierte Digitalsignal.
26. Einrichtung nach Anspruch 25, wobei die bestimmten
der Pakete aus dem komprimierten Digitalsignal als
Funktion der entsprechenden damit verbundenen
Paketvergangenheit dekomprimiert werden.
27. Einrichtung nach Anspruch 26, wobei der
Dekomprimierer einen Bestätigungsvektor aufbaut und den
Bestätigungsvektor von einem Empfänger zu einem
Sender überträgt, wobei der Empfänger und der
Sender das komprimierte Digitalsignal über den
Kommunikationskanal austauschen.
28. Einrichtung nach Anspruch 27, wobei die Operation
des Komprimierens der Pakete Lempel-Ziv-Codierung
benutzt.
29. Einrichtung nach Anspruch 27, wobei der
Dekomprimierer den entsprechenden
Vergangenheitszustand des zugehörigen Pakets bei seiner
Dekomprimierung aktualisiert.
30. Maschinenlesbares Medium, auf dem eine Mehrzahl
von Anweisungen gespeichert sind, die Anweisungen
enthalten, die bei ihrer Ausführung durch eine
Maschine die Maschine zum Durchführen eines
Verfahrens nach einem der Ansprüche 1 bis 17
veranlassen.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US09/527,315 US6388584B1 (en) | 2000-03-16 | 2000-03-16 | Method and apparatus for data compression of network packets |
Publications (2)
Publication Number | Publication Date |
---|---|
DE60001210D1 DE60001210D1 (de) | 2003-02-20 |
DE60001210T2 true DE60001210T2 (de) | 2003-08-21 |
Family
ID=24100973
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE60001210T Expired - Lifetime DE60001210T2 (de) | 2000-03-16 | 2000-10-23 | Verfahren und Vorrichtung zur Datenkomprimierung von Netzwerkdatenpaketen |
Country Status (5)
Country | Link |
---|---|
US (1) | US6388584B1 (de) |
EP (1) | EP1134900B1 (de) |
JP (1) | JP3875502B2 (de) |
CA (1) | CA2334442C (de) |
DE (1) | DE60001210T2 (de) |
Families Citing this family (48)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6624761B2 (en) | 1998-12-11 | 2003-09-23 | Realtime Data, Llc | Content independent data compression method and system |
US6604158B1 (en) | 1999-03-11 | 2003-08-05 | Realtime Data, Llc | System and methods for accelerated data storage and retrieval |
US6601104B1 (en) | 1999-03-11 | 2003-07-29 | Realtime Data Llc | System and methods for accelerated data storage and retrieval |
AU3919300A (en) * | 1999-03-25 | 2000-10-09 | Motorola, Inc. | Point to point protocol multiplexing/demultiplexing method and apparatus |
SE521700C2 (sv) * | 1999-05-21 | 2003-11-25 | Ericsson Telefon Ab L M | Metod för att minska mängden överförd data då ett signaleringsmeddelande skickas fler än en gång mellan två noder i ett TCP/IP-baserat nät |
US6711164B1 (en) * | 1999-11-05 | 2004-03-23 | Nokia Corporation | Method and apparatus for performing IP-ID regeneration to improve header compression efficiency |
US7181608B2 (en) | 2000-02-03 | 2007-02-20 | Realtime Data Llc | Systems and methods for accelerated loading of operating systems and application programs |
KR100612003B1 (ko) * | 2000-02-26 | 2006-08-11 | 삼성전자주식회사 | 통신망에서 비트 스트림 송수신 장치 및 그 방법 |
US6856651B2 (en) | 2000-07-25 | 2005-02-15 | Peribit Networks, Inc. | System and method for incremental and continuous data compression |
EP1895663A3 (de) * | 2000-07-25 | 2008-06-11 | Juniper Networks, Inc. | System und Verfahren für die schrittweise und kontinuierliche Datenkompression |
ATE397346T1 (de) | 2000-07-25 | 2008-06-15 | Juniper Networks Inc | Netzwerkarchitektur und verfahren zur transparenten online-querschnittskodierung und zum transport von netzwerkkommunikationsdaten |
WO2002028107A2 (en) * | 2000-09-28 | 2002-04-04 | Nokia Corporation | Enhanced header compression profile |
US9143546B2 (en) | 2000-10-03 | 2015-09-22 | Realtime Data Llc | System and method for data feed acceleration and encryption |
US8692695B2 (en) | 2000-10-03 | 2014-04-08 | Realtime Data, Llc | Methods for encoding and decoding data |
US7386046B2 (en) | 2001-02-13 | 2008-06-10 | Realtime Data Llc | Bandwidth sensitive data compression and decompression |
US7245405B2 (en) * | 2001-04-11 | 2007-07-17 | Hughes Network Systems, Llc | Method and system for performing stateless compression of messages |
DE10124706A1 (de) * | 2001-05-18 | 2002-11-21 | Alcatel Sa | Verfahren zur Weiterleitung von Datenpaketen in Routern von Kommunikationsnetzen |
DE10212656A1 (de) | 2002-03-21 | 2003-10-02 | Scm Microsystems Gmbh | Selektive Verschlüsselung von Multimediadaten |
US7359974B1 (en) * | 2002-03-29 | 2008-04-15 | Packeteer, Inc. | System and method for dynamically controlling aggregate and individual packet flow characteristics within a compressed logical data tunnel |
JP3800171B2 (ja) * | 2002-12-24 | 2006-07-26 | 日本電気株式会社 | ストア命令実行制御方式、および、ストア命令実行制御方法 |
US6750791B1 (en) | 2003-02-07 | 2004-06-15 | Nokia Corporation | Method and device for text data compression |
JP4887618B2 (ja) * | 2004-11-19 | 2012-02-29 | 日本電気株式会社 | ストレージシステムとそのレプリケーション方法並びにプログラム |
US7630394B2 (en) * | 2005-04-14 | 2009-12-08 | Ramot At Tel-Aviv University Ltd. | Method, apparatus and computer-readable code for data compression of network packets |
US8804765B2 (en) * | 2005-06-21 | 2014-08-12 | Optis Wireless Technology, Llc | Dynamic robust header compression |
US7970015B2 (en) | 2005-09-12 | 2011-06-28 | Hob Gmbh & Co. Kg | Method for transmitting a message by compressed data transmission between a sender and a receiver via a data network |
US20070264989A1 (en) * | 2005-10-03 | 2007-11-15 | Rajesh Palakkal | Rendezvous calling systems and methods therefor |
US7620870B2 (en) * | 2005-11-22 | 2009-11-17 | Cisco Technology, Inc. | Data compression method and system |
US8254262B1 (en) * | 2006-03-31 | 2012-08-28 | Verint Americas, Inc. | Passive recording and load balancing |
EP2033384A2 (de) * | 2006-06-14 | 2009-03-11 | Divitas Networks, Inc. | Inhaltsbasierte adaptive jitter-behandlung |
US7480500B1 (en) | 2006-06-14 | 2009-01-20 | Divitas Networks, Inc. | Divitas protocol proxy and methods therefor |
US20090016333A1 (en) * | 2006-06-14 | 2009-01-15 | Derek Wang | Content-based adaptive jitter handling |
US20080317241A1 (en) * | 2006-06-14 | 2008-12-25 | Derek Wang | Code-based echo cancellation |
US20080140767A1 (en) * | 2006-06-14 | 2008-06-12 | Prasad Rao | Divitas description protocol and methods therefor |
US7565159B2 (en) * | 2006-06-14 | 2009-07-21 | Divitas Networks, Inc. | Methods and arrangement for implementing an active call handover by employing a switching component |
US7660793B2 (en) | 2006-11-13 | 2010-02-09 | Exegy Incorporated | Method and system for high performance integration, processing and searching of structured and unstructured data using coprocessors |
US20090215438A1 (en) * | 2008-02-23 | 2009-08-27 | Ajay Mittal | Methods for performing transparent callback |
US7953881B1 (en) * | 2008-06-12 | 2011-05-31 | Juniper Networks, Inc. | Network characteristic-based compression of network traffic |
US20100222053A1 (en) * | 2009-02-27 | 2010-09-02 | Girisrinivasarao Athulurutirumala | Arrangement and methods for establishing a telecommunication connection based on a heuristic model |
US9998749B2 (en) * | 2010-10-19 | 2018-06-12 | Otoy, Inc. | Composite video streaming using stateless compression |
US8897298B2 (en) * | 2011-11-02 | 2014-11-25 | Qualcomm Incorporated | Systems and methods for compressing headers and payloads |
US10121196B2 (en) | 2012-03-27 | 2018-11-06 | Ip Reservoir, Llc | Offload processing of data packets containing financial market data |
US9990393B2 (en) | 2012-03-27 | 2018-06-05 | Ip Reservoir, Llc | Intelligent feed switch |
US11436672B2 (en) | 2012-03-27 | 2022-09-06 | Exegy Incorporated | Intelligent switch for processing financial market data |
WO2015028087A1 (en) * | 2013-08-30 | 2015-03-05 | Huawei Technologies Sweden Ab | Mitigation of signalling congestion in a wireless network |
WO2018119035A1 (en) | 2016-12-22 | 2018-06-28 | Ip Reservoir, Llc | Pipelines for hardware-accelerated machine learning |
EP3970107A4 (de) | 2019-05-14 | 2023-01-11 | Exegy Incorporated | Verfahren und systeme zur erzeugung und verteilung von handelssignalen aus finanzmarktdaten |
CN110518917B (zh) * | 2019-07-17 | 2023-01-03 | 华东计算技术研究所(中国电子科技集团公司第三十二研究所) | 基于Huffman编码的LZW数据压缩方法及*** |
CA3207052A1 (en) | 2021-02-16 | 2022-08-25 | Timothy GORHAM | Methods and systems for low latency automated trading |
Family Cites Families (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4464650A (en) | 1981-08-10 | 1984-08-07 | Sperry Corporation | Apparatus and method for compressing data signals and restoring the compressed data signals |
US4558302A (en) | 1983-06-20 | 1985-12-10 | Sperry Corporation | High speed data compression and decompression apparatus and method |
US4730348A (en) | 1986-09-19 | 1988-03-08 | Adaptive Computer Technologies | Adaptive data compression system |
US5146221A (en) | 1989-01-13 | 1992-09-08 | Stac, Inc. | Data compression apparatus and method |
CA2065578C (en) | 1991-04-22 | 1999-02-23 | David W. Carr | Packet-based data compression method |
US5442350A (en) | 1992-10-29 | 1995-08-15 | International Business Machines Corporation | Method and means providing static dictionary structures for compressing character data and expanding compressed data |
US5550540A (en) | 1992-11-12 | 1996-08-27 | Internatioal Business Machines Corporation | Distributed coding and prediction by use of contexts |
US5369605A (en) | 1993-07-07 | 1994-11-29 | Dell Usa, L.P. | Incremental search content addressable memory for increased data compression efficiency |
US5521597A (en) | 1993-08-02 | 1996-05-28 | Mircosoft Corporation | Data compression for network transport |
JP3397431B2 (ja) | 1994-03-16 | 2003-04-14 | 富士通株式会社 | データ圧縮方法および装置ならびにデータ復元方法および装置 |
US5701125A (en) | 1994-06-15 | 1997-12-23 | The United States Of America As Represented By The United States Department Of Energy | Method for compression of data using single pass LZSS and run-length encoding |
US5572206A (en) | 1994-07-06 | 1996-11-05 | Microsoft Corporation | Data compression method and system |
US5572209A (en) | 1994-08-16 | 1996-11-05 | International Business Machines Corporation | Method and apparatus for compressing and decompressing data |
EP0718980A1 (de) | 1994-12-20 | 1996-06-26 | International Business Machines Corporation | Verfahren zur Kompression von Daten für individuelle Folgen eines Datenstroms mit Hilfe eines Wörterbuches und Vorrichtung dafür |
US5608396A (en) | 1995-02-28 | 1997-03-04 | International Business Machines Corporation | Efficient Ziv-Lempel LZI data compression system using variable code fields |
US5663721A (en) | 1995-03-20 | 1997-09-02 | Compaq Computer Corporation | Method and apparatus using code values and length fields for compressing computer data |
US5815097A (en) * | 1996-05-23 | 1998-09-29 | Ricoh Co. Ltd. | Method and apparatus for spatially embedded coding |
US5703581A (en) | 1996-06-14 | 1997-12-30 | Lucent Technologies Inc. | Method and apparatus for data compression and decompression |
US5831558A (en) | 1996-06-17 | 1998-11-03 | Digital Equipment Corporation | Method of compressing and decompressing data in a computer system by encoding data using a data dictionary |
US6121903A (en) * | 1998-01-27 | 2000-09-19 | Infit Communications Ltd. | On-the-fly data re-compression |
CA2260289A1 (en) | 1998-01-29 | 1999-07-29 | Steven Michael Bellovin | A method of improving data compression over unreliable underlying networks |
US6216175B1 (en) * | 1998-06-08 | 2001-04-10 | Microsoft Corporation | Method for upgrading copies of an original file with same update data after normalizing differences between copies created during respective original installations |
US6301394B1 (en) * | 1998-09-25 | 2001-10-09 | Anzus, Inc. | Method and apparatus for compressing data |
US6236341B1 (en) * | 2000-03-16 | 2001-05-22 | Lucent Technologies Inc. | Method and apparatus for data compression of network packets employing per-packet hash tables |
-
2000
- 2000-03-16 US US09/527,315 patent/US6388584B1/en not_active Expired - Lifetime
- 2000-10-23 DE DE60001210T patent/DE60001210T2/de not_active Expired - Lifetime
- 2000-10-23 EP EP00309337A patent/EP1134900B1/de not_active Expired - Lifetime
-
2001
- 2001-02-07 CA CA002334442A patent/CA2334442C/en not_active Expired - Lifetime
- 2001-03-16 JP JP2001076121A patent/JP3875502B2/ja not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
JP3875502B2 (ja) | 2007-01-31 |
CA2334442A1 (en) | 2001-09-16 |
CA2334442C (en) | 2005-07-26 |
JP2001298369A (ja) | 2001-10-26 |
EP1134900B1 (de) | 2003-01-15 |
DE60001210D1 (de) | 2003-02-20 |
EP1134900A1 (de) | 2001-09-19 |
US6388584B1 (en) | 2002-05-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE60001210T2 (de) | Verfahren und Vorrichtung zur Datenkomprimierung von Netzwerkdatenpaketen | |
DE60000912T2 (de) | Verfahren und Vorrichtung zur Datenkomprimierung von Netzwerkdatenpaketen unter Verwendung von paketweisen Hash Tabellen | |
DE10301362B4 (de) | Blockdatenkompressionssystem, bestehend aus einer Kompressionseinrichtung und einer Dekompressionseinrichtung, und Verfahren zur schnellen Blockdatenkompression mit Multi-Byte-Suche | |
DE60000380T2 (de) | Verfahren und Vorrichtung zur Datenkompression | |
DE69024629T2 (de) | Vorrichtung zur kompression von datenlängen und datenfolgen | |
DE3850192T2 (de) | Verfahren und Vorrichtung zur Fehlerkorrektur bei gespeicherten Daten. | |
DE69027606T2 (de) | Vorrichtung zur datenkompression | |
DE69527679T2 (de) | Verfahren zur Datenkomprimierung und -Dekomprimierung | |
DE68925798T2 (de) | Datenverdichtung | |
DE4340591C2 (de) | Datenkompressionsverfahren unter Verwendung kleiner Wörterbücher zur Anwendung auf Netzwerkpakete | |
DE69805849T2 (de) | Ein vorwärtsfehlerkorrektionssystem für packetbasierte echtzeitmedien | |
DE69704362T2 (de) | Datenkompressions-/dekompressionssystem anhand sofortiger zeichenfolgensucheverschachtelter wörterbuchaktualisierung | |
EP1303966B1 (de) | Header-kompressionsverfahren für netzwerkprotokolle | |
EP2326013B1 (de) | Verfahren und Anordnung zur arithmetischen Enkodierung und Dekodierung mit Verwendung mehrerer Tabellen | |
DE69925151T2 (de) | Effiziente normalisierung vom trelliszustandsmetrischem wert | |
EP1258085B1 (de) | Verfahren zum anpassen der einem turbo-codierer zuzuführenden datenblöcke und entsprechende kommunikationsvorrichtung | |
DE69834695T2 (de) | Verfahren und Vorrichtung zur Datenkompression | |
DE3750390T2 (de) | Simultane Fehlererkennung bei der Kodierung durch arithmetische Datenkodierung. | |
DE69826971T2 (de) | Übertragungssystem mit kodierer variabler länge | |
DE69524999T2 (de) | Verfahren zum Komprimieren und Dekomprimieren von Dateien | |
DE69328811T2 (de) | Opcode abhängige Komprimierung für ein Window-System. | |
EP1286471B1 (de) | Verfahren zur Kompression von Daten | |
DE19539343A1 (de) | Verfahren zur Fehlerbehandlung eines digitalen Bitdatenstroms, der von einem Sender zu einem Empfänger übertragen wird | |
DE10131801B4 (de) | Verfahren zur Datenkompression und Navigationssystem | |
EP0958685B1 (de) | Verfahren und schaltungsanordnung zur übertragung ausgewählten signalpunkten einer signalkonstellation |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8364 | No opposition during term of opposition |