DE60304938T2 - Kompression von Protokollnachrichten in einem Mobilfunksystem - Google Patents

Kompression von Protokollnachrichten in einem Mobilfunksystem Download PDF

Info

Publication number
DE60304938T2
DE60304938T2 DE60304938T DE60304938T DE60304938T2 DE 60304938 T2 DE60304938 T2 DE 60304938T2 DE 60304938 T DE60304938 T DE 60304938T DE 60304938 T DE60304938 T DE 60304938T DE 60304938 T2 DE60304938 T2 DE 60304938T2
Authority
DE
Germany
Prior art keywords
message
session
compression
substring
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 - Fee Related
Application number
DE60304938T
Other languages
English (en)
Other versions
DE60304938D1 (de
Inventor
Marlboro Mooi Choo Chuah
Highland Park Tingfang Ji
Aurora Subhasis Laha
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.)
Nokia of America Corp
Original Assignee
Lucent Technologies Inc
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 Lucent Technologies Inc filed Critical Lucent Technologies Inc
Application granted granted Critical
Publication of DE60304938D1 publication Critical patent/DE60304938D1/de
Publication of DE60304938T2 publication Critical patent/DE60304938T2/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • 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
    • 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
    • H03M7/3084Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction using adaptive string matching, e.g. the Lempel-Ziv method
    • H03M7/3088Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction using adaptive string matching, e.g. the Lempel-Ziv method employing the use of a dictionary, e.g. LZ78
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/1066Session management
    • H04L65/1101Session protocols
    • H04L65/1104Session initiation protocol [SIP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/1066Session management
    • H04L65/1069Session establishment or de-establishment
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/04Protocols for data compression, e.g. ROHC
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/54Store-and-forward switching systems 
    • H04L12/56Packet switching systems
    • H04L12/5601Transfer mode dependent, e.g. ATM
    • H04L2012/5603Access techniques
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/1066Session management
    • H04L65/1101Session protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/329Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Business, Economics & Management (AREA)
  • General Business, Economics & Management (AREA)
  • Multimedia (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Telephonic Communication Services (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Mobile Radio Communication Systems (AREA)

Description

  • QUERVERWEIS AUF VERWANDTE ANMELDUNGEN
  • Diese Anmeldung ist mit einer gleichzeitig eingereichten Anmeldung von Chuah et al. mit dem Titel "Binary Protocol For Session Initiation in a Wireless Communications System" verwandt.
  • ALLGEMEINER STAND DER TECHNIK
  • 1. Gebiet der Erfindung
  • Die vorliegende Erfindung betrifft Kommunikationen und spezieller die Kompression von Protokollnachrichten für ein drahtloses Kommunikationssystem.
  • 2. Beschreibung des Standes der Technik
  • Von der Allgemeinheit werden gewöhnlich zwei Kommunikationstechnologien verwendet, die Zellulartelefonie und das Internet. Die Zellulartelefonie stellt ihren Benutzern die Freiheit von Mobilität zur Verfügung – die Möglichkeit, unabhängig vom Standort mit einer ausreichenden Dienstqualität erreicht zu werden. Der wichtigste Dienst, der durch Zellulartelefonie bereitgestellt wird, ist jedoch Sprache. Während Flexibilität für alle Arten von Anwendungen (Sprache, Daten, Video, Audio usw.) die Stärke des Internets war, lag sein Schwerpunkt bei fest geschalteten Verbindungen und relativ großen Endgeräten, und die Qualität einiger Dienste (wie etwa der Internettelefonie) war im Allgemeinen gering. Im Ergebnis des technischen Fortschritts verschmelzen Internet- und Zellulartechnologien. Zukünftige Zellular-"Telefone" können einen IP-Stapel (Internet-Protokoll) enthalten und Voice over IP unterstützen, zusätzlich zu Web-Browsing, E-Mail usw. Im Grunde genommen wird das Internet mobil, oder Zellularfunksysteme werden zu wesentlich mehr als Telefonie, je nachdem, von welchem Standpunkt aus man es betrachtet.
  • 1 zeigt ein herkömmliches Netz 10, welches in ein Funkzugangsnetz (Radio Access Network, RAN) 12 und ein Kernnetz (Core Network, CN) 14 unterteilt werden kann. Das RAN 12 umfasst die Ausrüstung, die verwendet wird, um drahtlose Schnittstellen 16a-b zwischen einer drahtlosen Einheit 18a-b und dem Netz 10 zu unterstützen. Das RAN 12 enthält Node Bs oder Basisstationen 20a-c, die über Übertragungsstrecken (Iub-Übertragungsstrecken) 21a-c mit Funknetz- oder Basisstationssteuerungen (Radio Network Controllers, RNCs) 22a-c verbunden sind. Die Schnittstelle zwischen der Basisstation und der RNC wird als die Iub-Schnittstelle oder Übertragungsstrecke (Link) bezeichnet, und die Schnittstelle zwischen zwei RNCs wird als die Iur-Schnittstelle bezeichnet. Gegenwärtig basieren sowohl die Iub- als auch die Iur-Schnittstellen auf ATM (Asynchronous Transfer Mode), und zwischen Node Bs und RNCs sind ATM-Vermittlungen zulässig.
  • Das Kernnetz 14 enthält die Netzelemente, welche leitungsbasierte Kommunikation sowie paketbasierte Kommunikation unterstützen. Beim Aufbauen eines Leitungskanals, um leitungsbasierte Übermittlungen zwischen der drahtlosen Einheit 18b und einem öffentlichen Telefonwählnetz (Public Switched Telephone Network, PSTN) 24 oder einer anderen drahtlosen Einheit abzuwickeln, empfängt (über die Aufwärtsverbindung) und sendet (über die Abwärtsverbindung) die Basisstation 20b die codierten Informationen (leitungsvermittelte Sprache oder leitungsvermittelte Daten) über die drahtlose Schnittstelle oder Übertragungsstrecke 16b. Die RNC 22b ist für Rahmenauswahl, Verschlüsselung und Behandlung von Mobilität im Zugangsnetz verantwortlich. Die RNC 22b leitet die leitungsvermittelte Sprache oder leitungsvermittelten Daten über ein Netz wie etwa ein ATM/IP-Netz zu einer 3G Mobilfunkvermittlungsstelle (Mobile Switching Center, MSC) 30 weiter. Die 3G-MSC 30 ist für die Verbindungsabwicklung und Makromobilität auf der MSC-Ebene verantwortlich. Die 3G-MSC 30 stellt die Konnektivität zwischen der drahtlosen Einheit 18b und dem PSTN 24 her.
  • Gebräuchliche Begriffe auf diesem technischen Gebiet sind "all-IP" und "IP all the way". Diese Begriffe betreffen beide den Fall, in dem ein IP durchgehend verwendet wird, selbst wenn der Weg Zellularfunk-Übertragungsstrecken enthält und IP auch über den/die Funkabschnitt (e) verwendet wird. Dies wird für alle Arten von Verkehr durchgeführt, sowohl die Benutzerdaten (z.B. Sprache oder Streaming) als auch die Steuersignalisierungsdaten, entweder mit SIP (Session Initiation Protocol) oder RTSP (Real Time Streaming Protocol). Ein Vorteil hiervon ist die durch IP erreichte Dienstflexibilität, kombiniert mit der Freiheit, die durch kontinuierliche Mobilität gewährleistet wird. Der Nachteil ist der relativ große Overhead, den die IP-Protokoll-Familie normalerweise mit sich bringt, z.B. infolge von umfangreichen Headern und textbasierten Signalisierungsprotokollen.
  • In Zellularsystemen sollten die knappen Funkressourcen auf eine effiziente Weise genutzt werden. Es sollte möglich sein, eine ausreichende Anzahl von Benutzern pro Zelle zu unterstützen, da andernfalls die Kosten unannehmbar hoch werden. Das Frequenzspektrum und somit die Bandbreite sind bei Zellularfunk-Übertragungsstrecken kostbare Ressourcen und sollten sorgfältig genutzt werden.
  • Die ROHC (RObust Header Compression) Arbeitsgruppe hat das Problem der Reduzierung des Bandbreitenbedarfs für die Header-Teile von Real Time Protocol (RTP), User Datagram Protocol (UDP) und IP-Paketen erfolgreich gelöst. Nachdem dieses Hindernis beseitigt wurde, eröffnen sich neue Möglichkeiten für die Erhöhung der Leistungsfähigkeit des mobilen Internets. Eine von ihnen betrifft Anwendungs-Signalisierungsprotokolle.
  • Normalerweise werden Protokolle wie etwa SIP, RTSP und SDP (Session Description Protocol) verwendet, um Anwendungen in einem mobilen Internet einzurichten und zu steuern. Die Protokollnachrichten haben jedoch einen großen Umfang und verursachen aufgrund dessen, dass sie vom Typ "Anforderung/Antwort" sind, Verzögerungen. Eine Kompression dieser Nachrichten würde die Frequenzökonomie verbessern und die Durchlauf zeit verkürzen.
  • Das SIP ist ein Anwendungsschichtprotokoll zum Aufbauen, Ändern und Beenden von Multimediasitzungen oder -verbindungen. Zu diesen Sitzungen gehören Internet-Multimediakonferenzen, Internet-Telefonie und ähnliche Anwendungen. SIP kann entweder über TCP (Transmission Control Protocol) oder UDP verwendet werden. SIP ist ein textbasiertes Protokoll, das ISO 10646 in UTF-8-Codierung verwendet.
  • Das SDP kann verwendet werden, um Multimediakonferenzen bekannt zu machen und Konferenzadressen und für Konferenztools spezifische Informationen zu übermitteln. Das SDP wird auch für allgemeine Zwecke der Beschreibung von Multimediasitzungen in Echtzeit verwendet. SDP wird im Nachrichtenrumpf von SIP- und RTSP-Nachrichten transportiert. SDP ist textbasiert und verwendet den ISO 10646 Zeichensatz in UTF-8-Codierung.
  • Das RTSP ist ein Protokoll der Anwendungsebene zum Steuern der Zustellung von Daten mit Echtzeiteigenschaften wie etwa Audio und Video. RTSP kann UDP oder TCP (oder ein anderes Protokoll) als Transportprotokoll verwenden. RTSP ist textbasiert und verwendet den ISO 10646 Zeichensatz in UTF-8-Codierung.
  • Die obigen Protokolle weisen viele Ähnlichkeiten auf. Diese Ähnlichkeiten haben Auswirkungen auf Lösungen der Probleme, die sie im Zusammenhang mit dem Zellularfunkzugang erzeugen. Ihre Ähnlichkeiten beinhalten Folgendes:
    • • Anforderungs- und Antwort-Eigenschaften. Wenn ein Absender eine Anforderung sendet, verbleibt er im Ruhezustand, bis er eine Antwort empfangen hat; folglich werden normalerweise mehrere Umlaufzeiten benötigt, um eine SIP-, SDP- oder RTSP-Sitzung abzuschließen.
    • • Sie sind ASCII-basiert. Somit werden, um den Wert 230 darzustellen, 3·8 = 24 Bits verwendet. Im Vergleich hierzu würde eine binäre Darstellung desselben Wertes nur 8 Bits erfordern.
    • • Sie besitzen einen großen Umfang, um den Sitzungsteilnehmern die notwendigen Informationen zur Verfügung zu stellen.
  • SIP und RTSP haben viele Namen von Header-Feldern, Verfahren und Zustandscodes gemeinsam. Ihre Verkehrsverläufe sind ebenfalls ähnlich. Die Signalisierung wird hauptsächlich während der Phase des Verbindungsaufbaus durchgeführt. Für SIP bedeutet dies, dass der größte Teil der Signalisierung durchgeführt wird, um eine Telefonverbindung oder Multimediasitzung aufzubauen. Für RTSP bedeutet es, dass der größte Teil der Signalisierung vor der Übertragung von Anwendungsdaten durchgeführt wird.
  • Die Notwendigkeit, die durch die Nachrichten der Signalisierungsprotokolle verursachten Probleme zu lösen, wird klar, wenn man eine typische SIP/SDP-Verbindungsaufbau-Sequenz über einen Mobilfunkkanal mit geringer Bandbreite betrachtet und die Ergebnisse eines einfachen Beispiels der Systemkapazität studiert. Diese Ergebnisse weisen darauf hin, dass eine Erhöhung der Systemkapazität auch durch Verringerung der Größe der einzelnen Protokollnachrichten erzielt würde.
  • 2 zeigt ein Beispiel einer SIP-Signalisierung zwischen zwei Endpunkten mit einer drahtlosen Verbindung zwischen ihnen und die resultierende Laufzeit unter bestimmten Annahmen hinsichtlich des Systems.
  • Die Einweg-Laufzeit (One Way Delay) wird gemäß der folgenden Gleichung berechnet: Einweg-Laufzeit = Nachrichtengröße [in bit]/Geschwindigkeit der Verbindung [in bit/s] + RTT [in s]/2 Glg. (1)wobei RTT die Umlaufzeit (Round Trip Time) ist.
  • Es wurden folgende Werte verwendet:
    RTT/2: 70 ms
    Geschwindigkeit der Verbindung 9,6 kbps
  • Die Formel für die Laufzeit in Glg. (1) beruht auf einer Approximation des WCDMA (Wideband Code Division Multiple Access) Funkzugangsverfahrens für Sprachdienste. Zum Beispiel werden Laufzeiten, die durch eventuelle nochmalige Übertragungen aufgrund von Fehlern verursacht werden, ignoriert.
  • Die Anwendung von Glg. (1) auf die einzelnen SIP/SDP-Nachrichten, die in dem Beispiel von 2 dargestellt sind, ergibt eine Gesamtlaufzeit von 4130 ms von der ersten SIP/SDP-Nachricht bis zur letzten. Das RSVP- und Sitzungs-Management (Funkträger-Aufbau), das in 2 dargestellt ist, erhöht die Gesamtlaufzeit unter Verwendung von Glg. (1) um ungefähr 1,5 Sekunden. Es kann jedoch auch RSVP- und SM-Signalisierung vor der SIP INVITE Nachricht vorhanden sein, um den Funkträger einzurichten, wodurch weitere 1,5 Sekunden hinzukommen würden.
  • Die TSG (Technical Specification Group) hat einen Vergleich zwischen einem GSM (Global System for Mobi les) Edge (Enhanced Data Rates for Global Evolution) Radio Access Network (GERAN) Verbindungsaufbau unter Verwendung von SIP und einem gewöhnlichen GSM Verbindungsaufbau durchgeführt. Für einen typischen GSM Verbindungsaufbau beträgt die Zeit ungefähr 3,6 Sekunden, und in dem Fall, wenn SIP verwendet wird, dauert der Verbindungsaufbau ungefähr 7,9 Sekunden.
  • Bei einer ersten Lösung zur Verkürzung der Dauer des Verbindungsaufbaus bei Verwendung von SIP werden ein dynamisches Wörterbuch und der LZSS (Lempel-Ziv-Storer-Szymanski) Kompressionsalgorithmus verwendet. Das dynamische Wörterbuch wird geführt, solange zu dem Kontext gehörende Pakete ankommen. Die Bestimmung, ob ein Paketfluss noch aktiv ist, kann unter Verwendung eines Timers oder ausgehend von der Semantik des Protokolls erfolgen. Bei dieser Lösung werden 2 Bytes Overhead für jede komprimierte Nachricht erzeugt.
  • Bei dieser ersten Lösung beinhaltet die Kompression die folgenden Schritte:
    • 1. Die Nachricht an das Wörterbuch anhängen und die erweiterte Datei mit Hilfe von LZSS komprimieren.
    • 2. Den Teil der komprimierten Datei, welcher dem Wörterbuch entspricht, von dem Teil trennen, welcher der Nachricht entspricht. Dies ist möglich, da LZSS die Datei von links nach rechts verarbeitet und der Teil, welcher bereits komprimiert worden ist, sich nicht ändert, wenn mit der Kompression fortgefahren wird. Das heißt, das Komprimieren des Wörterbuches selbst liefert denselben Ausgang wie das Komprimieren desselben mit einer daran angehängten Nachricht (abgesehen von der komprimierten Nachricht).
  • Bei dieser ersten Lösung beinhaltet die Dekompression die folgenden Schritte:
    • 1. Die komprimierte Nachricht an das komprimierte Wörterbuch anhängen und die erweiterte Datei dekomprimieren.
    • 2. Die Nachricht von dem Wörterbuch trennen. Dies ist möglich, weil die Grenze des Wörterbuches bekannt ist und die Nachricht an das Wörterbuch angehängt ist.
  • Die Leistungsfähigkeit dieser ersten Lösung ist folgende. Der Kompressionsfaktor der ersten Nachricht ist 1,5, und die Kompressionsfaktoren der nachfolgenden Nachrichten betragen zwischen 3,1 und 8,3, in Abhängigkeit vom Operationsmodus des Kompressors und des Dekompressors. In einem Modus mit begrenztem Kontakt kann der Dekompressor Nachrichten vom Kompressor quittieren, so dass der Kompressor sicherstellen kann, dass der Dekompressor dasselbe Wörterbuch hat wie der Kompressor. In einem Modus mit vollständigem Kontakt sind der Kompressor und der Dekompressor eine Entität und nutzen das Wörterbuch gemeinsam, so dass sowohl gesendete als auch empfangene Nachrichten für den Kompressionsprozess verwendet werden können.
  • Bei einer zweiten Lösung wird als Kompressionsalgorithmus LZJH (Lempel-Ziv-Jeff-Heath) verwendet. Bei dieser zweiten Lösung werden ein im Voraus geladenes Wörterbuch und ein Mehrpaket-Modus verwendet, wobei das Wörterbuch unter Verwendung vorhergehender Nachrichten und anschließender Verwendung des LZJH Kompressionsalgorithmus aktualisiert wird. Diese zweite Lösung kann die erste Nachricht um einen Faktor von 2,8 reduzieren.
  • Insgesamt beträgt, wenn SIP-Nachrichten einzeln unter Verwendung eines Algorithmus vom Lempel-Ziv-Typ komprimiert werden, der Kompressionsfaktor rund 1,5. Mit einem im Voraus geladenen statischen Wörterbuch liefern die meisten herkömmlichen Kompressionsalgorithmen einen Kompressionsfaktor von weniger als 3 für SIP-Nachrichten. Wenn ein Codebuch mittels der ersten INVITE-Nach richt belegt wird, verbessern Algorithmen vom Lempel-Ziv-Typ den Kompressionsfaktor auf Werte nahe bei 5.
  • Somit wird eine bessere Lösung benötigt, um Signalisierungsverzögerung und benötigte Bandbreite weiter zu verbessern, wenn sowohl Bandbreitenanforderungen des Systems als auch Dienstaufbauzeiten berücksichtigt werden.
  • Liefke H. et al.: "XMILL: an Efficient Compressor for XML Data", SIGMOD Record, Association for Computing Machinery, New York, USA, Bd. 29, Nr. 2, Juni 2000 (2000-06), Seiten 153-164, XP001002286 hat die Anwendung von Kompression für Daten vom XML-Typ und für spezielle Datentypen, die in einem binären Format codiert sind, zum Gegenstand, einschließlich eines Wörterbuch-Codierprozesses. In diesem Artikel wird auf Tags Bezug genommen, die in XML verwendet werden. Tags werden in XML verwendet, um die Struktur von Daten innerhalb eines Dokuments zu definieren, und XML-Dokumente bestehen aus Tags, Attributen und Datenwerten. Der Kompressionsalgorithmus, der durch diesen Artikel beschrieben wird, wird XMill genannt und basiert auf dem Komprimieren von XML-Dokumenten. Dieser Prozess beinhaltet eine XML-Datei, die aus Tags und Attributen besteht, die einer Wörterbuch-Codierung zu unterziehen sind (denen ein ganzzahliger Wert zuzuweisen ist), und End-Tags werden durch ein Token (/) ersetzt. Die Tags werden wörterbuch-codiert, während den Datenwerten Container zugewiesen werden, die alle als ganze Zahlen codiert werden.
  • Jian Jun Wu et al.: "Lightweight SIP/SDP Compression Scheme (LSSCS)", Proceedings of the SPIE, SPIE, Bellingham, VA, USA, Bd. 4586, 12. November 2001 (2001-11-12), Seiten 67-76, XP008005555 hat die Anwendung eines Leichten SIP/SDP Kompressionsschemas (LSSCS) zum Gegenstand. Dieser Kompressionsalgorithmus wird auf der Anwendungsschicht durchgeführt, indem er auf die SIP/SDP Datennachrichten einwirkt, indem er redundante Informationen durch Verwendung von im Voraus gecacheten Daten, die zuvor gespeichert oder in einer früheren SIP-Nachricht gesendet wurden, entfernt. Der LSSCS Prozess kann über Luftschnittstellen (RF) angewendet werden.
  • Bei der unter der Bezeichnung SCRIBE bekannten Skalierbaren, Robusten Effizienten wörterbuchbasierten Kompression (Scalable, Robust Efficient Dictionary-based Compression), welche von Liu Z. et al. in einer Network Working Group Internet Draft, 18. Juli 2001, XP-002274129 (http://www.watersprings.org/pub/id/draftliu-rohc-scribe-01.txt) beschrieben wird, enthält ein dreiteiliges Wörterbuch einen statischen Teil, einen profilspezifischen Teil und einen dynamischen Teil. Beim Komprimieren oder Dekomprimieren einer Nachricht benutzt das Kompressions-/Dekompressionsschema das dreiteilige Wörterbuch, um unnötige Textstrings aus einer Nachricht zu entfernen bzw. entfernte Textstrings in eine Nachricht einzufügen.
  • KURZDARSTELLUNG DER ERFINDUNG
  • Ein Verfahren gemäß der Erfindung ist so beschaffen, wie in Anspruch 1 dargelegt. Bevorzugte Ausführungsformen sind in den abhängigen Ansprüchen dargelegt.
  • Die vorliegende Erfindung hat eine Nachrichtenkompression zum Gegenstand, welche die Dauer des Verbindungsaufbaus durch Anwendung von Mehrpaket-Kompressionsalgorithmen zum Komprimieren der Nachrichten verkürzt.
  • Die vorliegende Erfindung hat außerdem ein Verfahren, eine Vorrichtung, ein System und Software zum Durchführen der Kompression von Protokollnachrichten in einem drahtlosen Kommunikationssystem zum Gegenstand. Bei der vorliegenden Erfindung wird ein Kompressionsalgorithmus benutzt, welcher binäre Codierung, Schablonen, sitzungsspezifische Codebücher und/oder herkömmliche Lempel-Ziv-basierte Algorithmen kombiniert. Bei der vorliegenden Erfindung werden außerdem eine Nachrichtenkennung und die binäre Codierung bestimmter Felder wie etwa einer Adresse des Diensteanbieters, einer Benutzerkennung des rufenden Teilnehmers, eines Benutzernamens des rufenden Teilnehmers, einer Benutzerkennung des gerufenen Teilnehmers und eines Benutzernamens des gerufenen Teilnehmers benutzt, und es wird das IPv4 Format für Domainnamen verwendet. Die vorliegende Erfindung ermöglicht außerdem das binäre Codieren numerischer Werte für bestimmte Felder. Durch die vorliegende Erfindung werden außerdem ein sitzungsspezifisches Codebuch, ein modifizierter Indizierungsmechanismus, Codebuchmanagement und Session History (Sitzungsvorgeschichte) bereitgestellt. Ferner werden durch die vorliegende Erfindung eine flexible Schablone mit Unterfeldern mit fester und variabler Länge sowie eine flexible Schablone mit optionalen Feldern bereitgestellt. Ferner wird durch die vorliegende Erfindung universelle verlustfreie Textkompression bereitgestellt. Bei einer beispielhaften Ausführungsform wird durch die vorliegende Erfindung eine bessere Kompression durch die Verwendung eines sitzungsspezifischen Codebuches und eines optionalen Wörterbuches am SIP-Server/Media Duplicator erzielt. Die binäre Codierung numerischer Felder trägt außerdem dazu bei, die Größe von IP-Adressen, Kennungen rufender Teilnehmer, Sitzungskennungen usw. zu reduzieren. Die vorliegende Erfindung beinhaltet außerdem eine flexible Schablonenstruktur und ermöglicht die Verwendung fester Längen für ausgewählte Schablonenfelder und codiert ein Feld mit variabler Länge entweder mit Längenindikatoren oder mit Begrenzern. Die vorliegende Erfindung ermöglicht außerdem, optionale Felder in Schablonen einzufügen, um die Gesamtanzahl der Schablonen, die in einem Speicher gespeichert werden müssen, zu verringern.
  • In einer beispielhaften Ausführungsform hat die vorliegende Erfindung ein Verfahren zum Komprimieren einer Textnachricht für eine Übertragung zum Gegenstand, welches das Parsing von Textstrings und das Codieren numerischer Werte mit der binären Darstellung und das Analysieren der Werte des Textstrings und das Belegen eines sitzungsspezifischen Codebuches mit Teilstrings aus den Werten umfasst. Bei einer anderen beispielhaften Ausführungsform hat die vorliegende Erfindung ein Verfahren zum Komprimieren einer Nachricht für eine Übertragung zum Gegenstand, welches umfasst: Parsing der Nachricht mit einer Schablone und Erzeugen mindestens eines Teilstrings, der zu übertragen ist; Parsing des mindestens einen Teilstrings mit Einträgen in einem sitzungssspezifischen Codebuch und Erzeugen eines ersten Teils der komprimierten Nachricht; Belegen des sitzungssspezifischen Codebuches mit Einträgen für unbekannte Feldwerte; Parsing eventueller Teilstrings ohne Match (Übereinstimmung) mit Einträgen aus einem ersten statischen Wörterbuch und Erzeugen eines zweiten Teils der komprimierten Nachricht; Parsing eventueller Teilstrings, die noch immer ohne Match sind, mit Einträgen aus einem zweiten statischen Wörterbuch und Erzeugen eines dritten Teils der komprimierten Nachricht; Komprimieren eines Restes der Teilstrings mit einem Kompressionsalgorithmus; und Kombinieren des ersten Teils, des zweiten Teils und des dritten Teils der komprimierten Nachricht, um eine komprimierte Nachricht zur Übertragung zu erhalten.
  • KURZBESCHREIBUNG DER ZEICHNUNGEN
  • Weitere Aspekte und Vorteile der vorliegenden Erfindung können beim Studium der nachfolgenden ausführlichen Beschreibung und unter Bezugnahme auf die Zeichnungen ersichtlich werden, wobei:
  • 1 ein allgemeines Blockschaltbild einer herkömmlichen Netzarchitektur zeigt;
  • 2 Verzögerungen der SIP-Signalisierung zeigt, wenn angenommen wird, dass die Verbindungsgeschwindigkeit 9600 bps und die Umlaufzeit 140 ms beträgt;
  • 3 eine beispielhafte Architektur zum Durchführen einer Kompression bei einer beispielhaften Ausführungsform der vorliegenden Erfindung zeigt;
  • 4 einen beispielhaften Rahmen für die Nachrichtenkompression bei einer beispielhaften Ausführungsform der vorliegenden Erfindung zeigt;
  • 5 eine schablonenbasierte Codierung bei einer beispielhaften Ausführungsform der vorliegenden Erfindung zeigt;
  • 6 ein Beispiel des Herstellens einer Verbindung durch einen Benutzer A zu einem Benutzer B bei einer beispielhaften Ausführungsform der vorliegenden Erfindung zeigt;
  • 7 die Ergebnisse der Kompression zeigt, die bei einer beispielhaften Ausführungsform der vorliegenden Erfindung erzielt wurden.
  • AUSFÜHRLICHE BESCHREIBUNG
  • 3 zeigt die Umgebung, in welcher die Kompression/Dekompression von SIP-Nachrichten der vorliegenden Erfindung durchgeführt werden kann. Wie in 3 dargestellt, sind zwei Entitäten 10, 12 durch einen physikalischen Kanal 14 getrennt. Jede Entität 10, 12 enthält eine physikalische Schicht 16, eine IP-Schicht 18, eine UDP/TCP-Schicht 20, die Kompressions-/Dekompressionsschicht 22 der vorliegenden Erfindung und eine SIP-Schicht 24.
  • 4 zeigt einen Rahmen für die Nachrichtenkompres sion bei einer beispielhaften Ausführungsform der vorliegenden Erfindung. Innerhalb der Kompressions-/Dekompressionsschicht 22 umfassen die Entitäten 10 und 12 einen Kompressor 100, ein Codebuch 102 und einen Dekompressor 104, durch welche ursprüngliche Nachrichten 106, komprimierte Nachrichten 108 und dekomprimierte Nachrichten 110 geleitet werden.
  • Wie in 2 dargestellt, dient der Kompressionsmechanismus der vorliegenden Erfindung als die Schicht 22 zwischen den SIP-Anwendungen 24 und dem UDP und/oder TCP 20. Der Zweck der Kompression ist es, die Gesamtmenge der über den physikalischen Kanal 14 übertragenen Daten zu verringern und somit die Verzögerung zu verringern.
  • Kompressionsalgorithmen funktionieren gut mit Apriori-Informationen über die ursprüngliche Nachricht. SIP-Nachrichten innerhalb einer Sitzung nutzen viele gemeinsame Informationen, wie etwa die Benutzeradressen und Portnummern.
  • SIP-Nachrichten weisen viele sich wiederholende Header auf, welche leicht komprimiert werden können. Kompressionsalgorithmen können entweder mit im Voraus geladenen Wörterbüchern oder mit dynamischen Wörterbüchern oder mit Schablonen arbeiten. Ein beispielhaftes statisches Wörterbuch für SIP-Nachrichten ist nachfolgend dargestellt.
  • In dem beispielhaften statischen Wörterbuch: sind erforderliche Zwischenräume mit <sp> bezeichnet, sind erforderliche Wagenrückläufe mit <cr> bezeichnet, sind erforderliche Zeilenvorschübe mit <lf> bezeichnet. Alle anderen möglichen Zwischenräume, Wagenrückläufe, Zeilenvorschübe usw. sind zu ignorieren, wenn dieses beispielhafte statische Wörterbuch verwendet wird.
  • Figure 00150001
  • Eine Schablone ist eine Tabelle von geordneten Strings. Im Unterschied zu Wörterbüchern müssen keine festen Header-Informationen übertragen werden, wodurch sich die Nachrichtengröße noch weiter verringert. Für jeden Typ von Nachrichten kann eine Standardschablone definiert werden. Das Folgende ist ein Beispiel einer schablonenbasierten Codierung.
  • 5 ist ein Beispiel einer schablonenbasierten Codierung. Die Schablone weist eine Schablonenkennung (TID), vier statische Felder (ss0, ss2, ss4 und ss6) und drei leere Felder (b1, b3 und b5) auf. Es wird angenommen, dass alle leeren Felder variable Längen haben. Der Einfachheit halber werden die ausfüllenden Teilstrings (ss1, ss3 und ss5) in der Form <Länge, Wert> codiert. Ebenfalls der Einfachheit halber wird angenommen, dass der Wert die nicht komprimierte Form des ursprünglichen Teilstrings ist.
  • Im Vergleich zu einer wörterbuchbasierten Kompression kann mit einer schablonenbasierten Kompression eine höhere Effizienz der Kompression erzielt werden, da die Positions- und Längeninformationen der statischen Teile bereits in einer Schablone gespeichert worden sind und nicht übertragen werden müssen.
  • Schablonen können für jeden Typ von Nachrichten definiert werden. Wenn die Anzahl der Schablonen zunimmt, kann der mit den Schablonen zusammenhängende Speicherplatz zu einem Problem werden. Stattdessen kann auch ein zusätzliches Feld in eine Schablone eingefügt werden. Jedem Header kann einer Headerkennung (HID) zugewiesen werden. Dann kann das zusätzliche Feld in den komprimierten String als <HID|Lx|ssx> an der gewünschten Position eingefügt werden.
  • Wie in früheren Untersuchungen gezeigt wurde, ist der Kompressionsfaktor der ersten INVITE-Nachricht selbst bei einer schablonenbasierten Herangehensweise nicht signifikant. Da Kenntnisse über den Inhalt von SIP/SDP-Feldern vorhanden sind, ist es möglich, die Leistungsfähigkeit der Kompression gegenüber allgemeinen Kompressionsalgorithmen wie etwa Kompressionsalgorithmen vom Lempel-Ziv-Typ zu verbessern.
  • Für bestimmte ausgewählte Werte von SIP-Feldern kann ein optionales statisches Wörterbuch verwendet werden. Dieses Wörterbuch könnte typische SDP-Werte enthalten, wie etwa "IN IP4" für die Felder <Netztyp><Adresstyp> einer typischen Internetsitzung. Die meisten UIDs (Benutzerkennungen) können durch 4 Bytes dargestellt werden. Ein Diensteanbieter hat normalerweise weniger als 256 Millionen Teilnehmer, daher können die 4 signifikantesten Bits verwendet werden, um eine Dienstean bieterkennung darzustellen, und die restlichen Bits, um einen Benutzernamen darzustellen. Wenn in einem Feld ein numerischer Wert erwartet wird, kann eine binäre Darstellung verwendet werden.
  • Das Kompressionsverfahren kann bei einer beispielhaften Ausführungsform der vorliegenden Erfindung wie folgt zusammengefasst werden:
    • 1) Die Nachricht mit einer übereinstimmenden Schablone parsen und die Teilstrings erzeugen, welche übertragen werden müssen.
    • 2) Die Teilstrings mit einem sitzungsspezifischen Codebuch parsen (als leer initialisiert) und einen Teil der komprimierten Nachricht erzeugen.
    • 3) Das sitzungsspezifische Codebuch mit unbekannten Feldwerten belegen.
    • 4) Die Teilstrings ohne Match mit einem statischen Wörterbuch parsen und einen Teil der komprimierten Nachricht erzeugen.
    • 5) Die Teilstrings ohne Match mit dem optionalen statischen Wörterbuch parsen und einen Teil der komprimierten Nachricht ausgeben.
    • 6) Den Rest der Teilstrings mit LZSS parsen.
    • 7) Die Ausgänge der Schritte 2) und 4)–6) zu der endgültigen komprimierten Nachricht kombinieren.
  • Es ist anzumerken, dass manchen Teilstrings in einer Schablone eine Standardlänge nach der Kompression zugewiesen werden kann, was eine Reduzierung um ein Byte für jedes Feld bewirkt. Es kann ein vordefiniertes Escape-Zeichen verwendet werden, um die Längenänderung zu markieren.
  • Der oben umrissene beispielhafte Kompressionsalgorithmus wird weiter unten auf verschiedene Beispiele angewendet, in denen eine erfolgreiche einfache SIP-zu-SIP-Verbindung aufgebaut wird, wie in 6 dargestellt.
  • Beispiel 1 – Details der Nachricht
    Figure 00180001
  • Bei Anwendung von Schritt 1 wird die Nachricht einem Parsing mit einer übereinstimmenden Schablone unterzogen, und es werden die Teilstrings erzeugt, welche übertragen werden müssen. In Beispiel 1 lautet das Ergebnis von Schritt 1 wie folgt:
    Figure 00180002
    Figure 00190001
  • Wenn man die Kommentare entfernt, sind die resultierenden Teilstrings folgende:
    Figure 00190002
  • Bei Anwendung von Schritt 2 werden die Teilstrings einem Parsing mit einem sitzungsspezifischen Codebuch (als leer initialisiert) unterzogen, um einen Teil der komprimierten Nachricht zu erzeugen. Da das sitzungsspezifische Codebuch leer ist, wird kein Ausgang erzeugt.
  • Bei Anwendung von Schritt 3 wird das sitzungsspezifische Codebuch mit unbekannten Feldwerten belegt. Das resultierende sitzungsspezifische Codebuch wird für die Kompression nachfolgender Nachrichten verwendet. In Beispiel 1 hat das resultierende sitzungsspezifische Codebuch die in Tabelle 1 dargestellte Form.
    Figure 00200001
    Tabelle 1
  • Zu Tabelle 1 ist anzumerken, dass jeder Header nicht auf einen einzigen Eintrag beschränkt ist. Ferner werden nicht alle unbekannten Felder verwendet, um das Codebuch zu belegen, da einige sich möglicherweise nicht wiederholen, wie etwa die Ankündigungsnummer in SDP. Das sitzungsspezifische Codebuch kann dann verwendet werden, um nachfolgende Nachrichten derselben Sitzung zu komprimieren/dekomprimieren. Es ist anzumerken, dass ein Codebuchmanagement hilfreich sein kann. Zum Beispiel wird, wenn ein Match (Übereinstimmung) mit dem Eintrag gefunden wird, ein Byte verwendet, um den Header im Sitzungsprofil anzugeben, und ein anderes Byte wird verwendet, um zu spezifizieren, für welchen Eintrag für den Header ein Match gefunden wurde.
  • Bei Anwendung von Schritt 4 werden die Teilstrings ohne Match einem Parsing mit einem standardmäßigen statischen Wörterbuch wie etwa dem oben angegebenen unterzogen, und es wird ein Teil der komprimierten Nachricht erzeugt. In Beispiel 1 wird, da alle Header und viele konstante Werte in der Schablone enthalten sind, kein zusätzlicher Ausgang durch Parsing mit dem standardmä ßigen statischen Wörterbuch erzeugt.
  • Bei Anwendung von Schritt 5 werden Teilstrings ohne Match einem Parsing mit dem statischen Wörterbuch unterzogen, und es wird ein Teil der komprimierten Nachricht ausgegeben.
    Figure 00210001
    Tabelle 2
  • In Beispiel 1 ist das Ergebnis von Schritt 5 37 oder 32 Bytes.
  • Es ist anzumerken, dass alle Domainnamen in dem optionalen statischen Wörterbuch bei allen SIP-Entitäten gespeichert werden können. In Beispiel 1 wird 1 Byte für jeden Domainnamen zugewiesen. Gleichzeitig kann eine Benutzeradresse von 4 Byte der sendenden SIP-Entität zugewiesen werden, wenn das Gerät initialisiert wird.
  • Bei Anwendung von Schritt 6 wird der Rest der Teilstrings mit einem beispielhaften Kompressionsalgorithmus wie etwa LZSS komprimiert.
  • Die TID kann mit 1 Byte dargestellt werden. Die Benutzerkennung (der String vor '@' in der Benutzeradresse) ist 5 Bytes lang, und der Benutzername (LittleGuy) ist 10 Bytes lang. In Beispiel 1 werden nach Kompression mit LZSS maximal 16 Bytes erzeugt.
  • Bei Anwendung von Schritt 7 werden die Ausgänge der Schritte 2 und 4–6 zu der endgültigen komprimierten Nachricht kombiniert. Dies ergibt 37 oder 32 Bytes, plus die 16, die nach Kompression mit LZSS erzeugt wurden. 37 + 16 = 53 Bytes, oder 32 + 16 = 48 Bytes,was einem Kompressionsfaktor von
    423/53 = 8,0; 423/48 = 8.8
    entspricht.
  • Die folgenden Beispiele beschreiben die Schritte für nachfolgende Nachrichten. Beispiel 2 – Details der Nachricht
    Figure 00220001
  • Nach dem Decodieren der Nachricht F1 aus Beispiel 1 hat Benutzer B das Codebuch mit dem Inhalt der INVITE-Nachricht belegt.
  • Bei Anwendung von Schritt 1 auf Beispiel 2 werden die folgenden Teilstrings erzeugt:
    Figure 00230001
  • Bei Anwendung von Schritt 2 auf Beispiel 2 werden die Teilstrings einem Parsing mit einem sitzungsspezifischen Codebuch unterzogen, wie in Tabelle 3 dargestellt.
    Figure 00230002
    Tabelle 3
  • Es wird eine Teilsumme von 8 Bytes erhalten.
  • Wenn angenommen wird, dass der Algorithmus in einem Modus mit vollständigen Kontakt ausgeführt wird, bei dem der Kompressor und der Dekompressor das Codebuch 102 gemeinsam nutzen, kann, nachdem UserA die kompri mierte INVITE-Nachricht sendet, der Dekompressor 104 bei UserA auch auf das sitzungsspezifische Codebuch zugreifen. Wenn die INVITE-Nachricht von UserB empfangen wird, belegt sie dessen sitzungsspezifisches Codebuch, welches dann identisch mit dem bei UserA ist. Daher kann, wenn die Nachricht (100 trying) komprimiert und dekomprimiert wird, das sitzungsspezifische Codebuch verwendet werden.
  • Bei Anwendung von Schritt 3 wird das sitzungsspezifische Codebuch belegt. In diesem Beispiel sind keine neuen Strings vorhanden.
  • Bei Anwendung von Schritt 4 entdeckt das standardmäßige statische Wörterbuch keine Matches, was eine zweite Teilsumme von 0 Bytes ergibt.
  • Bei Anwendung von Schritt 5 wird ein Parsing mit dem optionalen statischen Wörterbuch durchgeführt, das Tabelle 4 liefert, was eine dritte Teilsumme von 3 Bytes ergibt.
    Figure 00240001
    Tabelle 4
  • Bei Anwendung von Schritt 6 wird der Rest der Teilstrings mit LZSS oder einem anderen beispielhaften Kompressionsalgorithmus komprimiert.
  • TID ist ein Schablonenindex von einem Byte, was eine vierte Teilsumme von 1 Byte ergibt.
  • Bei Anwendung von Schritt 7 werden die Ausgänge kombiniert, was 8 + 0 + 3 + 1 = 12 Bytesergibt, was einem Kompressionsfaktor von 187/12 = 15,6 entspricht.
  • Beispiel 3 – Details der Nachricht
    Figure 00250001
  • Bei Anwendung derselben Vorgehensweise wie oben für Beispiel 2 umfasst die resultierende Nachricht 12 Bytes, und der Kompressionsfaktor beträgt 187/12 = 15,6.
  • Beispiel 4 – Details der Nachricht
    Figure 00250002
  • Figure 00260001
  • Bei Anwendung von Schritt 1 auf Beispiel 4 werden die folgenden Teilstrings erzeugt:
    Figure 00260002
  • Bei Anwendung von Schritt 2 auf Beispiel 4 werden die Teilstrings einem Parsing mit dem sitzungsspezifischen Codebuch unterzogen, das in Tabelle 5 dargestellt ist, was eine erste Teilsumme von 16 Bytes ergibt:
    Figure 00260003
    Figure 00270001
    Tabelle 5
  • Bei Anwendung von Schritt 3 auf Beispiel 4 wird das sitzungsspezifische Codebuch wie in Tabelle 6 angegeben belegt:
    Figure 00270002
    Tabelle 6
  • Bei Anwendung von Schritt 4 auf Beispiel 4 wird in dem statischen Wörterbuch kein Match gefunden, was eine zweite Teilsumme von 0 Bytes ergibt.
  • Bei Anwendung von Schritt 5 auf Beispiel 4 werden mehrere Matches entdeckt, wie unten in Tabelle 7 angegeben, was eine dritte Teilsumme von 14 Bytes ergibt.
  • Figure 00280001
    Tabelle 7
  • Bei Anwendung von Schritt 6 auf Beispiel 4 wird der Rest des Teilstrings, ein Schablonenindex von einem Byte für die TID, mit LZSS komprimiert, was eine weitere Teilsumme von 1 Byte ergibt.
  • Das Kombinieren der Ausgänge für Beispiel 4 ergibt 16 + 14 + 1 = 31 Bytes, was einem Kompressionsfaktor von 403/31 = 13 entspricht. Beispiel 5 – Details der Nachricht
    Figure 00280002
  • Bei Anwendung derselben Vorgehensweise wie oben für Beispiel 2 umfasst die resultierende Nachricht 12 Bytes, und der Kompressionsfaktor beträgt 197/12 = 16,4. Beispiel 6 – Details der Nachricht
    Figure 00290001
  • Bei Anwendung von Schritt 1 auf Beispiel 6 werden die folgenden Teilstrings erzeugt:
    Figure 00290002
  • Bei Anwendung von Schritt 2 auf Beispiel 6 werden die Teilstrings einem Parsing mit dem sitzungsspezifischen Codebuch unterzogen, das in Tabelle 8 dargestellt ist, was eine erste Teilsumme von 10 Bytes ergibt.
  • Figure 00290003
  • Figure 00300001
    Tabelle 8
  • Bei Anwendung von Schritt 3 auf Beispiel 6 wird das sitzungsspezifische Codebuch wie in Tabelle 9 angegeben belegt.
  • Figure 00300002
    Tabelle 9
  • Bei Anwendung von Schritt 4 auf Beispiel 6 werden in dem standardmäßigen statischen Wörterbuch keine Matches gefunden, was eine zweite Teilsumme von 0 Bytes ergibt. Bei Anwendung von Schritt 5 auf Beispiel 6 wird ein Parsing mit dem optionalen statischen Wörterbuch durch geführt, das Tabelle 10 liefert, was eine dritte Teilsumme von 4 Bytes ergibt.
  • Figure 00310001
    Tabelle 10
  • Bei Anwendung von Schritt 6 auf Beispiel 6 wird der Rest der Teilstrings, ein Schablonenindex von einem Byte für die TID, mit LZSS komprimiert, was eine weitere Teilsumme von 1 Byte ergibt.
  • Das Kombinieren der Ausgänge für Beispiel 6 ergibt 10 + 4 + 1 = 15 Bytes, was einem Kompressionsfaktor von 197/15 = 13,1 entspricht.
  • Beispiel 7 – Details der Nachricht
    Figure 00310002
  • Bei Anwendung derselben Vorgehensweise wie oben für Beispiel 2 umfasst die resultierende Nachricht 12 Bytes, und der Kompressionsfaktor beträgt 181/12 = 15,1.
  • 7 zeigt die mit dem Verfahren der vorliegenden Erfindung erzielten Kompressionsfaktoren für andere Nachrichten.
  • Kurz zusammengefasst, wird bei früheren Untersuchungen, bei denen sitzungsspezifische Codebücher verwendet werden, das Codebuch mit den Feldern in den Nachrichten so, wie sie sind, belegt und mit dem Feld "From" ("Von") indexiert. Bei beispielhaften Ausführungsformen der vorliegenden Erfindung werden die Feldwerte zusätzlich zu dem gesamten Feld analysiert, und es werden Schlüsselwörter extrahiert. Infolgedessen erzeugt das Codebuch der vorliegenden Erfindung mehr Matches bei einer nur mäßigen Erhöhung des Speicherplatzbedarfes.
  • Ferner wurde bei früheren Untersuchungen ein direktes Nachschlagen der Benutzeradressen in einer Tabelle wegen des hohen Speicherplatzbedarfes und der langen Suchzeit vermieden. Ferner wird eine Nachschlagtabelle für Domainnamen in dem optionalen statischen Wörterbuch bei allen SIP-Entitäten gespeichert. Da die Anzahl der Diensteanbieter, welche einen Push-to-Talk-Dienst zur Verfügung stellen, sehr begrenzt ist, kann 1 Byte für jeden Domainnamen zugewiesen werden.
  • Bei einem Push-to-Talk-Dienst befindet sich der SIP-Server/Proxy-Server/Umleitungsserver auf der Netzseite, wobei angenommen wird, dass er ausreichend leistungsstark ist, um eine vollständige Benutzeradressensuche durchzuführen. Somit wird jeder Benutzeradresse eine binäre Kennung mit 4 Bytes zugewiesen. Diese 4-Byte-Kennung wird auch jeder SIP-Entität zugewiesen, wenn das Gerät initialisiert wird. Folglich kann ein mobiles Gerät in der INVITE-Nachricht einfach seine Adresse durch diese 4-Byte-Kennung ersetzen.
  • Ferner ist, obwohl die vorliegende Erfindung in Verbindung mit Kompression beschrieben wurde, für einen Durchschnittsfachmann leicht einzusehen, dass die Schritte bei der Dekompression umgekehrt zu den oben beschriebenen Schritten bei der Kompression auszuführen sind.
  • Die vorliegende Erfindung könnte außerdem ein sitzungsübergreifendes Wörterbuch-Merkmal implementieren. Wenn ein Gerät so programmiert ist, dass es die jüngere Vorgeschichte der Benutzeradressen speichert, ist eine weitere Reduzierung der INVITE-Nachricht für spätere Sitzungen zu erwarten. Außerdem können für jene Benutzer, welche Gruppendienste kaufen, Diensteanbieter eine kleine Nachschlagtabelle zur Verfügung stellen, welche eine Benutzeradresse auf eine binäre Kennung mit 4 Bytes abbildet. Bei dieser Vorgehensweise kann eine Kompression der Benutzeradresse (unter Verwendung der binären Kennung mit 4 Bytes) sogar für die erste INVITE-Nachricht erfolgen.
  • Bei der vorliegenden Erfindung wird ein Kompressionsalgorithmus benutzt, welcher binäre Codierung, Schablonen, ein sitzungsspezifisches Codebuch und/oder herkömmliche Lempel-Ziv-Algorithmen kombiniert. Die resultierenden komprimierten SIP-Nachrichten besitzen ungefähr 1/10 der Größe der ursprünglichen Nachrichten.
  • Wie oben dargelegt wurde, ist dieser Gewinn ein Ergebnis eines oder mehrerer der oben beschriebenen Merkmale der vorliegenden Erfindung. Diese Merkmale beinhalten die Verwendung einer Nachrichtenkennung, die binäre Codierung selektiver Felder wie etwa der Adresse des Diensteanbieters, der Benutzerkennung des rufenden Teilnehmers, des Benutzernamens des rufenden Teilnehmers, der Benutzerkennung des gerufenen Teilnehmers und des Benutzernamens des gerufenen Teilnehmers sowie ein IPv4-Format für Domainnamen. Diese Merkmale beinhalten außerdem die binäre Codierung ausgewählter numerischer Werte, die Verwendung eines sitzungsspezifischen Codebuches und einen modifizierten Indexierungsmechanismus. Ferner gehören zu diesen Merkmalen ein Codebuchmanagement und eine Sitzungsvorgeschichte. Ferner gehören zu diesen Merkmalen eine flexible Schablone mit Feldern mit fester und variabler Länge sowie eine flexible Schablone mit optionalen Feldern. Eine oder mehrere Kombinationen der obigen Merkmale ermöglichen es, eine universelle verlustfreie Textkompression sicherzustellen.
  • Ferner enthält, wie oben beschrieben, jede SIP-Entität sowohl einen Kompressor 100 als auch einen Dekompressor 104. Daher könnten Informationen von dem Kompressor 100 und dem Dekompressor 104 gemeinsam genutzt werden, um die Nachrichtengrößen weiter zu reduzieren.
  • Obwohl die oben angegebenen Beispiele in Verbindung mit SIP-Protokoll-Nachrichten beschrieben wurden, sind diese Beispiele ebenso für SDP, RTSP oder ein beliebiges anderes bekanntes oder später entwickeltes Protokoll anwendbar.
  • Ferner sind, obwohl die Merkmale der vorliegenden Verbindung in Verbindung mit einem Verfahren beschrieben wurden, diese Merkmale auch auf eine Vorrichtung, ein System und Softwareanwendungen anwendbar, und die Umsetzung der Lehren der vorliegenden Patentanmeldung in einer Vorrichtung, einem System oder Software könnte durch einen Durchschnittsfachmann realisiert werden.

Claims (6)

  1. Verfahren zum Komprimieren einer Textnachricht, wobei das Verfahren umfasst: Parsing der Textnachricht mit einer Schablone, um mindestens einen Teilstring zu erzeugen, der zu übertragen ist; Parsing des mindestens einen Teilstrings mit einem sitzungsspezifischen Codebuch, um einen ersten Teil einer komprimierten Nachricht zu erzeugen; Belegen des sitzungsspezifischen Codebuches mit unbekannten Feldwerten, falls der mindestens eine Teilstring nach Parsing des mindestens einen Teilstrings mit dem sitzungsspezifischen Codebuch ohne Match ist; Parsing des mindestens einen Teilstrings mit einem ersten statischen Wörterbuch, um einen zweiten Teil der komprimierten Nachricht zu erzeugen, falls der mindestens eine Teilstring nach Parsing des mindestens einen Teilstrings mit dem sitzungsspezifischen Codebuch ohne Match ist; Parsing des mindestens einen Teilstrings mit einem zweiten statischen Wörterbuch, um einen dritten Teil der komprimierten Nachricht zu erzeugen, falls der mindestens eine Teilstring nach Parsing des mindestens einen Teilstrings mit einem ersten statischen Wörterbuch noch immer ohne Match ist; Komprimieren eines Restes der Teilstrings mit einem Kompressionsalgorithmus; und Kombinieren des ersten Teils, des zweiten Teils und des dritten Teils der komprimierten Nachricht, um eine komprimierte Nachricht zur Übertragung zu erhalten.
  2. Verfahren zum Komprimieren einer Textnachricht nach Anspruch 1, wobei für jeden Typ von Nachricht eine andere Schablone zur Verfügung gestellt wird.
  3. Verfahren zum Komprimieren einer Textnachricht nach Anspruch 1, wobei das sitzungsspezifische Codebuch für die erste komprimierte Nachricht leer ist und Einträge hinzugefügt werden, wenn die einzelnen Nachrichten komprimiert werden.
  4. Verfahren zum Komprimieren einer Textnachricht nach Anspruch 1, wobei die komprimierte Nachricht zur Übertragung eine Session Initiation Protocol "SIP", Session Description Protocol "SDP" oder Realtime Streamlining Protocol "RTSP" Nachricht "RTSP" ist.
  5. Verfahren nach Anspruch 1, wobei mindestens jeweils ein Eintrag in dem ersten und dem zweiten statischen Wörterbuch binär codiert ist.
  6. Verfahren nach Anspruch 1, wobei der Kompressionsalgorithmus ein Kompressionsalgorithmus vom Lempel-Ziv-Typ ist.
DE60304938T 2002-06-17 2003-05-22 Kompression von Protokollnachrichten in einem Mobilfunksystem Expired - Fee Related DE60304938T2 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US172504 2002-06-17
US10/172,504 US7143191B2 (en) 2002-06-17 2002-06-17 Protocol message compression in a wireless communications system

Publications (2)

Publication Number Publication Date
DE60304938D1 DE60304938D1 (de) 2006-06-08
DE60304938T2 true DE60304938T2 (de) 2006-12-14

Family

ID=29717773

Family Applications (1)

Application Number Title Priority Date Filing Date
DE60304938T Expired - Fee Related DE60304938T2 (de) 2002-06-17 2003-05-22 Kompression von Protokollnachrichten in einem Mobilfunksystem

Country Status (5)

Country Link
US (1) US7143191B2 (de)
EP (1) EP1376878B1 (de)
JP (1) JP2004096717A (de)
KR (1) KR20040002566A (de)
DE (1) DE60304938T2 (de)

Families Citing this family (64)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7155173B2 (en) * 2001-03-14 2006-12-26 Nokia Corporation Method and system for providing a context for message compression
JP4317403B2 (ja) * 2002-08-09 2009-08-19 パナソニック株式会社 ヘッダ圧縮装置及びヘッダ圧縮方法
US6667700B1 (en) * 2002-10-30 2003-12-23 Nbt Technology, Inc. Content-based segmentation scheme for data compression in storage and transmission including hierarchical segment representation
US7525994B2 (en) 2003-01-30 2009-04-28 Avaya Inc. Packet data flow identification for multiplexing
US20040187083A1 (en) * 2003-03-18 2004-09-23 Tracey Bryan D. System and method for reducing the size of wireless communications
US7412541B1 (en) * 2003-07-18 2008-08-12 Core Mobility, Inc. Tokenized compression of session initiation protocol data
US20050071459A1 (en) * 2003-09-26 2005-03-31 Jose Costa-Requena System, apparatus, and method for providing media session descriptors
US7831491B2 (en) * 2003-11-05 2010-11-09 Chicago Mercantile Exchange Inc. Market data message format
US20050096999A1 (en) 2003-11-05 2005-05-05 Chicago Mercantile Exchange Trade engine processing of mass quote messages and resulting production of market data
US20050111426A1 (en) * 2003-11-26 2005-05-26 Samsung Electronics Co., Ltd. Wireless network and wireless access terminals using optimized transmission of SYNC_ID parameter
US7348904B2 (en) 2004-02-19 2008-03-25 Telefonaktiebolaget Lm Ericsson (Publ) Selective updating of compression dictionary
US7447211B1 (en) * 2004-03-23 2008-11-04 Avaya Inc. Method and apparatus of establishing a communication channel using protected network resources
IL162305A (en) * 2004-06-02 2010-06-16 Eci Telecom Ltd Method, device and system for transmitting ethernet packets
GB2416092B (en) * 2004-07-07 2007-03-14 Motorola Inc A cellular communication system, a network element and a method of operation therefor
US7417943B2 (en) * 2004-08-11 2008-08-26 Sonim Technologies, Inc. Dynamic compression training method and apparatus
US7680100B1 (en) 2004-09-30 2010-03-16 Avaya Inc. Internet protocol appliance manager
US8195212B2 (en) * 2004-11-02 2012-06-05 Rockstar Bidco Lp Push-to-talk optimization
US20060139869A1 (en) * 2004-12-29 2006-06-29 Matusz Pawel O Extended compression arrangements within telecommunication systems and associated methods
US7984163B2 (en) * 2005-01-13 2011-07-19 Flash Networks, Inc. Method and system for optimizing DNS queries
KR101106749B1 (ko) * 2005-01-19 2012-01-18 삼성전자주식회사 바이너리 메시지 포맷 및 바이너리 메시지 포맷의프로토콜을 이용한 통신 시스템
KR100677445B1 (ko) * 2005-03-15 2007-02-02 엘지전자 주식회사 텍스트 기반의 sip 메시지를 송수신하는 무선통신 시스템 및 처리방법
JP4126307B2 (ja) * 2005-03-16 2008-07-30 株式会社コガネイ 循環水の浄化方法とその装置
US8511558B2 (en) * 2005-04-12 2013-08-20 Sandisk Il Ltd. Smartcard power management
GB2427803A (en) * 2005-06-29 2007-01-03 Symbian Software Ltd E-mail/text message compression using differences from earlier messages or standard codebooks with specific message supplements
GB0513433D0 (en) * 2005-06-30 2005-08-10 Nokia Corp Signal message compressor
GB0513432D0 (en) * 2005-06-30 2005-08-10 Nokia Corp Signal message compression
CN101223699A (zh) * 2005-07-21 2008-07-16 易斯普维 压缩与解压缩结构化文档的方法和装置
US7844957B2 (en) * 2005-08-19 2010-11-30 Sybase, Inc. Development system with methodology providing optimized message parsing and handling
WO2007028122A2 (en) * 2005-09-02 2007-03-08 Nortel Networks Limited Sip header reduction
TW200715871A (en) * 2005-10-12 2007-04-16 Ind Tech Res Inst Method and recording format for image compression
US7567586B2 (en) 2005-10-31 2009-07-28 Microsoft Corporation Above-transport layer message partial compression
US8553724B2 (en) 2005-12-13 2013-10-08 Telefonaktiebolaget Lm Ericsson (Publ) Enhanced dynamic compression
US7738448B2 (en) * 2005-12-29 2010-06-15 Telefonaktiebolaget Lm Ericsson (Publ) Method for generating and sending signaling messages
US20080037509A1 (en) * 2006-06-30 2008-02-14 George Foti Method and communications node for creation and transmission of user specific dictionary for compression and decompression of messages
US8644314B2 (en) * 2006-09-07 2014-02-04 Kyocera Corporation Protocol and method of VIA field compression in session initiation protocol signaling for 3G wireless networks
CN101170538B (zh) 2006-10-24 2013-01-16 国际商业机器公司 用于改善sip解析性能的方法和装置
JP4976109B2 (ja) * 2006-11-09 2012-07-18 三菱電機株式会社 Sipメッセージ圧縮解凍モジュール生成装置、通信装置およびsipメッセージ圧縮解凍方法
US7796592B2 (en) * 2006-11-13 2010-09-14 At&T Mobility Ii Llc Optimizing static dictionary usage for signal, hypertext transfer protocol and bytecode compression in a wireless network
US20080115125A1 (en) * 2006-11-13 2008-05-15 Cingular Wireless Ii, Llc Optimizing static dictionary usage for signal compression and for hypertext transfer protocol compression in a wireless network
US20080120428A1 (en) * 2006-11-21 2008-05-22 Sprint Communications Company L.P. Unique compressed call identifiers
US7817630B2 (en) * 2006-12-18 2010-10-19 Telefonaktiebolaget Lm Ericsson (Publ) Method, communications node, and memory for dynamic dictionary updating and optimization for compression and decompression of messages
US8792476B2 (en) * 2007-03-16 2014-07-29 Cellco Partnership Methods, apparatuses, and computer program products for processing session related protocol signaling messages
US20110010465A1 (en) * 2007-07-18 2011-01-13 Andrea G Forte Methods and Systems for Providing Template Based Compression
US7746250B2 (en) 2008-01-31 2010-06-29 Microsoft Corporation Message encoding/decoding using templated parameters
CN101227432B (zh) * 2008-02-04 2011-01-26 中国移动通信集团公司 一种消息转换方法、接入方法、装置及系统
US8667175B2 (en) 2008-03-13 2014-03-04 Cisco Technology, Inc. Server selection for routing content to a client using application layer redirection
US7953881B1 (en) * 2008-06-12 2011-05-31 Juniper Networks, Inc. Network characteristic-based compression of network traffic
FR2972320B1 (fr) * 2011-03-03 2013-10-18 Ass Pour La Rech Et Le Dev De Methodes Et Processus Ind Armines Codage de donnees sans perte pour communication bidirectionnelle dans une session collaborative d'echange de contenu multimedia
US20140149605A1 (en) * 2012-11-26 2014-05-29 Saravana Annamalaisami Systems and methods for dictionary based compression
US9405015B2 (en) 2012-12-18 2016-08-02 Subcarrier Systems Corporation Method and apparatus for modeling of GNSS pseudorange measurements for interpolation, extrapolation, reduction of measurement errors, and data compression
US9250327B2 (en) 2013-03-05 2016-02-02 Subcarrier Systems Corporation Method and apparatus for reducing satellite position message payload by adaptive data compression techniques
WO2016076773A1 (en) * 2014-11-12 2016-05-19 Telefonaktiebolaget L M Ericsson (Publ) Methods and devices for negotiating session descriptor parameters
US20160142937A1 (en) * 2014-11-14 2016-05-19 Qualcomm Incorporated Techniques for compressing session initiation messages using templates for evolved data compression scheme (edcs)
US9763026B2 (en) 2015-06-10 2017-09-12 Motorola Solutions, Inc. Method of and server for communicating with a remote device in a machine to machine wireless communication network
US11288739B2 (en) 2015-10-12 2022-03-29 Chicago Mercantile Exchange Inc. Central limit order book automatic triangulation system
US11164248B2 (en) 2015-10-12 2021-11-02 Chicago Mercantile Exchange Inc. Multi-modal trade execution with smart order routing
US9807205B2 (en) * 2015-11-02 2017-10-31 Cisco Technology, Inc. Header compression for CCN messages using dictionary
US10498683B2 (en) 2016-07-20 2019-12-03 At&T Intellectual Property I, L.P. Compressed message sets for storage efficiency
CN106790462B (zh) * 2016-12-08 2019-12-06 东软集团股份有限公司 短句传输方法及系统、服务器、发送客户端、接收客户端
JP7003443B2 (ja) * 2017-05-16 2022-01-20 富士通株式会社 符号化プログラム、符号化装置および符号化方法
US10506388B1 (en) * 2018-06-27 2019-12-10 Harris Global Communications, Inc. Efficient short message compression
CN109067781B (zh) * 2018-09-18 2021-04-16 重庆金美通信有限责任公司 一种提高eigrp协议报文信息容量的方法
CN109885636B (zh) * 2019-02-18 2021-04-16 中国联合网络通信集团有限公司 一种用户画像方法和服务器
EP4369780A1 (de) * 2021-08-06 2024-05-15 Huawei Technologies Co., Ltd. Datenkompressionsverfahren und -system in einem biou-kommunikationssystem und zugehörige vorrichtung

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3277792B2 (ja) 1996-01-31 2002-04-22 株式会社日立製作所 データ圧縮方法および装置
US5953503A (en) * 1997-10-29 1999-09-14 Digital Equipment Corporation Compression protocol with multiple preset dictionaries
FI107000B (fi) * 1999-02-17 2001-05-15 Nokia Mobile Phones Ltd Otsikon pakkaaminen reaaliaikaisissa palveluissa
US6883035B2 (en) * 2000-11-16 2005-04-19 Telefonaktiebolaget Lm Ericsson (Publ) System and method for communicating with temporary compression tables
US6985965B2 (en) * 2000-11-16 2006-01-10 Telefonaktiebolaget Lm Ericsson (Publ) Static information knowledge used with binary compression methods
US6963587B2 (en) * 2000-11-16 2005-11-08 Telefonaktiebolaget Lm Ericsson (Publ) Communication system and method utilizing request-reply communication patterns for data compression
US6950445B2 (en) * 2000-11-16 2005-09-27 Telefonaktiebolaget Lm Ericsson (Publ) Communication system and method for shared context compression
US20030120813A1 (en) * 2001-12-21 2003-06-26 Ishita Majumdar Apparatus and method for optimizing message sizes of textual protocols used in multimedia communications
US6976081B2 (en) * 2002-01-30 2005-12-13 Motorola, Inc. Session initiation protocol compression

Also Published As

Publication number Publication date
EP1376878A1 (de) 2004-01-02
US20030233478A1 (en) 2003-12-18
US7143191B2 (en) 2006-11-28
DE60304938D1 (de) 2006-06-08
EP1376878B1 (de) 2006-05-03
KR20040002566A (ko) 2004-01-07
JP2004096717A (ja) 2004-03-25

Similar Documents

Publication Publication Date Title
DE60304938T2 (de) Kompression von Protokollnachrichten in einem Mobilfunksystem
DE60014852T2 (de) Headerkompression in echtzeitdiensten
DE60122773T2 (de) Verfahren und vorrichtung zur verarbeitung von datenpaketen
DE60007829T2 (de) Kopfkomprimierung für General Packet Radio Service Tunnel Protokoll (GTP)
DE69927243T2 (de) Verfahren und Vorrichtung für Telekommunikationen mit Internet-Protokoll
DE602005000984T2 (de) Verfahren und Vorrichtung zur Speicherung von Eingangs-Filterkriterien und zur Spezifizierung von Triggerpunkt-Vorlagen zum Zeitpunkt der Diensteimplementierung
DE60316094T2 (de) Verfahren, Vorrichtung und System für die Komprimierung von verlängerten Kopffeldern
DE602005002831T2 (de) Verfahren zur Bereitstellung einer Echtzeitkommunikationsverbindung
DE60221905T2 (de) Verfahren zum senden von verbindungsorientierten oder verbindungslosen daten
DE60108514T2 (de) Definieren einer nachrichtenkopf-datenfeldkomprimierung für eine datenpaketverbindung
DE60022391T2 (de) System und verfahren zur erzielung einer robusten ip/udp/rtp-paketkopf-komprimierung in der gegenwart unzuverlässiger netze
EP2890082B1 (de) Verfahren zum Betreiben eines Mobilfunknetzes
DE60116998T2 (de) In zugangstechnologie integrierte header-komprimierung
DE60017442T2 (de) Spärliche rückkoppelung in drahtlosen systemen die hohe verzögerung und niedrige bandbreite aufweisen
DE60204544T2 (de) Kompressionsverfahren, -sender und -empfänger für funkdatenkommunikation
DE60314169T2 (de) Kopfteilkomprimierungsverfahren
EP1994714B1 (de) Verfahren zur zuordnung von zumindest einer nutzdatenverbindung zu zumindest einer multiplexverbindung
DE60215480T2 (de) Vorrichtung zur generierung einer multimediadatei für ein telekommunikationsendgerät und multimediadatei dafür
EP1761081A1 (de) Kommunikationssystem, Vermittlungsknoten-Rechner und Verfahren zur Bestimmung eines Kontrollknotens
DE60219263T2 (de) Überwachung und Übertragung von QOS-Daten in einem Telekommunikationsnetzwerk
DE60308195T2 (de) Optimierte Übertragung von Textbeispiel-Formatbeschreibungen für &#34;streaming timed text&#34;
DE10017062A1 (de) Verfahren zum Betreiben eines Mobilfunknetzes
EP1301000B1 (de) Kanalzuweisung von Kontrolldaten und Nutzdaten in drahtlosen Kommunikationssystemen
DE102005027247B4 (de) Kommunikationseinrichtungen, Verfahren zum Bilden einer Transportprotokoll-Nachricht und Verfahren zum Verarbeiten einer Transportprotokoll-Nachricht
EP1458161A1 (de) Verfahren und Vorrichtung für die Interoperabilität zwischen den Präsenz-Services gemäss dem Wireless Village Standard und dem IP Multimedia Subsystem Standard

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee