DE60034473T2 - Verfahren und einrichtung zur effizienten datenübertragungskontrolle in einem drahtlosen sprache-über-daten kommunikationssystem - Google Patents

Verfahren und einrichtung zur effizienten datenübertragungskontrolle in einem drahtlosen sprache-über-daten kommunikationssystem Download PDF

Info

Publication number
DE60034473T2
DE60034473T2 DE60034473T DE60034473T DE60034473T2 DE 60034473 T2 DE60034473 T2 DE 60034473T2 DE 60034473 T DE60034473 T DE 60034473T DE 60034473 T DE60034473 T DE 60034473T DE 60034473 T2 DE60034473 T2 DE 60034473T2
Authority
DE
Germany
Prior art keywords
segment
bits
vocoder
data
sensitive information
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
DE60034473T
Other languages
English (en)
Other versions
DE60034473D1 (de
Inventor
James M. San Diego BROWN
Yu-Dong San Diego YAO
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.)
Qualcomm Inc
Original Assignee
Qualcomm 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 Qualcomm Inc filed Critical Qualcomm Inc
Application granted granted Critical
Publication of DE60034473D1 publication Critical patent/DE60034473D1/de
Publication of DE60034473T2 publication Critical patent/DE60034473T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/64Hybrid switching systems
    • H04L12/6418Hybrid transport
    • 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/60Network streaming of media packets
    • H04L65/70Media network packetisation
    • 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/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • H04L69/163In-band adaptation of TCP data exchange; In-band control procedures
    • 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/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • H04L69/164Adaptation or special uses of UDP protocol
    • 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/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • H04L69/166IP fragmentation; TCP segmentation
    • 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/64Hybrid switching systems
    • H04L12/6418Hybrid transport
    • H04L2012/6421Medium of transmission, e.g. fibre, cable, radio, satellite
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/64Hybrid switching systems
    • H04L12/6418Hybrid transport
    • H04L2012/6472Internet
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/64Hybrid switching systems
    • H04L12/6418Hybrid transport
    • H04L2012/6481Speech, voice
    • 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/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • 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/24Negotiation of communication capabilities

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Multimedia (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Communication Control (AREA)
  • Time-Division Multiplex Systems (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)
  • Reduction Or Emphasis Of Bandwidth Of Signals (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Description

  • Hintergrund der Erfindung
  • I. Gebiet der Erfindung
  • Die vorliegende Erfindung betrifft allgemein das Gebiet der drahtlosen Kommunikationen bzw. Nachrichtenübermittlungen und spezieller das Vorsehen eines effizienten Verfahrens und einer effizienten Vorrichtung zum Übertragen bzw. Senden zeitsensitiver Information in einem drahtlosen Sprache-über-Daten-(voice-over-data)-Kommunikationssystem.
  • II. Hintergrund
  • Das Gebiet der drahtlosen Kommunikationen weist viele Anwendungen auf, einschließlich drahtloser Telefone, Funkruf bzw. Paging, drahtloser Ortsanschlussleitungen (wireless local loops) und Satellitenkommunikationssysteme. Eine besonders wichtige Anwendung sind zellulare Telefonsysteme für mobile Teilnehmer bzw. Abonnenten. (Der Ausdruck „zellulare" Systeme umfasst so wie er hier verwendet wird sowohl zellulare als auch PCS-Frequenzen.) Verschiedene Luftschnittstellen sind für derartige zellulare Telefonsysteme entwickelt worden, einschließlich Frequenz-Multiplex-Vielfach-Zugriff (frequency division multiple access, FDMA), Zeit-Multiplex-Vielfach-Zugriff (time division multiple access, TDMA) und Code-Multiplex-Vielfach-Zugriff (code division multiple access, CDMA). In Verbindung damit sind verschiedene nationale und internationale Standards entwickelt worden, einschließlich fortgeschrittenem Mobiltelefondienst (Advanced Mobile Phone Service, AMPS), Globales System für Mobilfunk (Global System for Mobile, GSM) und Interim Standard 95 (IS-95). Im Speziellen ist IS-95 und seine Ableitungen wie z.B. IS-95A, IS-95B (oft gemeinsam als IS-95 bezeichnet), ANSI J-STD-008, IS-99, IS-657, IS-707 und andere durch die Telecommunication Industry Association (TIA) und andere wohlbekannte Standardgremien veröffentlicht.
  • Zellulare Telefonsysteme, die gemäß der Nutzung des IS-95 Standards konfiguriert sind, setzen CDMA Signalverarbeitungstechniken ein zum Vorsehen eines hocheffizienten und robusten zellularen Telefondienstes. Ein exemplarisches zellulares Telefonsystem, das im wesentlichen gemäß der Nutzung des IS-95 Standards konfiguriert ist, ist beschrieben im U.S. Patent Nr. 5,103,459 mit dem Titel „System and Method for Generating Signal Waveforms in a CDMA Cellular Telephone System", das an den Rechteinhaber der vorliegenden Erfindung übertragen worden ist. Das vorgenannte Patent illustriert Sende- bzw. Übertragungs- oder Vorwärtsverbindungs-Signalverarbeitung in einer CDMA Basisstation. Exemplarische Empfangs- oder Rückwärtsverbindungssignalverarbeitung in einer CDMA Basisstation ist beschrieben in der U.S. Anmeldung mit der Seriennummer 08/987,172 , eingereicht am 9. Dezember 1997 mit dem Titel „MULTICHANNEL DEMODULATOR", die an den Rechteinhaber der vorliegenden Erfindung übertragen worden ist. In CDMA Systemen ist die Leistungsregelung auf der Luftschnittstelle eine entscheidende Aufgabe. Ein exemplarisches Verfahren zur Leistungssteuerung in einem CDMA System ist beschrieben in dem U.S. Patent Nr. 5,056,109 mit dem Titel „Method and Apparatus for Controlling Transmission Power in a CDMA Cellular Mobile Telephone System" das an den Rechteinhaber der vorliegenden Erfindung übertragen worden ist und hierin durch Bezugnahme aufgenommen ist.
  • Bei den Interim-Standards IS-99 und IS-657 (im Folgenden gemeinsam als IS-707 bezeichnet) kann ein IS-95-konformes Kommunikationssystem sowohl Sprach- als Datenkommunikationsdienste vorsehen. Die Datenkommunikationsdienste erlauben es, dass digitale Daten zwischen einem Sender und einem oder mehreren Empfängern über eine drahtlose Schnittstelle bzw. ein drahtloses Interface ausgetauscht werden. Beispiele der Art der digitalen Daten, die typischerweise unter Verwendung des IS-707 Standards gesendet werden, umfassen Computerdateien und elektronische Post. In letzter Zeit sind Datenprotokolle wie z.B. jene, die durch IS-707 spezifiziert sind, genutzt worden zum Senden bzw. Übertragen von zeitsensitiver Information wie z.B. Audio- oder Videoinformation. Übertragen von zeitsensitiver Information unter Verwendung von Datenprotokollen ist vorteilhaft bei Anwendungen wie Verschlüsselung und Verteilung der Audioinformation an eine Anzahl von Computern über ein großes Computernetzwerk wie z.B. das Internet.
  • In Übereinstimmung mit dem IS-707 Standard, welcher IS-707.4 für asynchrone Datendienste und IS-707.5 für Paketdatendienste umfasst werden die zwischen einem Sender und einem Empfänger ausgetauschten Daten in diskreten Paketen verarbeitet, die anderweitig bekannt sind, als Datenpakete oder Datenrahmen oder einfach als Rahmen. Um die Wahrscheinlichkeit zu erhöhen, dass ein Rahmen während einer Datenübertragung erfolgreich übertragen wird, setzt IS-707 ein Funkverbindungsprotokoll (radio link protocol, RLP) ein zum Nachverfolgen der erfolgreich übertragenen Rahmen und zum Durchführen einer erneuten Rahmenübertragung, wenn ein Rahmen nicht erfolgreich übertragen worden ist. Zusätzlich zu dem RLP werden auch Datenprotokolle höherer Schichten genutzt zum Sicherstellen, dass Rahmen erfolgreich empfangen werden. Zum Beispiel wird das wohlbekannte TCP Protokoll in einer asynchronen Datendienstumgebung genutzt (wie in IS-707.4 erläutert) und das UDP Protokoll wird in einer Paketdatendienstumgebung genutzt (wie in IS-707.5 erläutert) und zwar zusätzlich zu dem RLP Protokoll.
  • Eines der primären Probleme des Übertragens von zeitsensitiver Information unter Verwendung von Datenprotokollen ist die Verzögerung oder Latenz, die durch die nichtkontinuierliche Art von Datenkommunikationen verursacht wird. Verzögerungen von mehr als einigen wenigen hundert Millisekunden können zu Unterbrechungen bei der zeitsensitiven Information die übertragen wird, führen. Wenn Daten übertragen werden, wie z.B. Computerdateien, werden Zeitverzögerungen leicht toleriert aufgrund der nicht Echt-Zeit Art der Daten. Zeitsensitive Information muss jedoch in der Reihenfolge kontinuierlich empfangen werden um genau wiederhergestellt zu werden.
  • An einem Sender bzw. Übertragunger stützen sich die oben erwähnten TCP und UDP Protokolle auf Füllen eines TCP oder UDP Segments mit einer gewählten Anzahl von Bits, häufig als eine minimale Segmentgröße bezeichnet, so wie dann Senden des Segments. Falls eine große Menge an Daten zur Übertragung in einem Sprache-über-Daten-System (voice-over-data system) verfügbar ist, kann eine Verzögerung eingeführt werden, beim Konvertieren der verfügbaren zeitsensitiven Information in zahlreiche TCP oder UDP Segmente. Andererseits, falls eine kleine Menge an zeitsensitiver Information, die zu übertragen ist, vorhanden ist, wird ein TCP oder UDP Segment nicht unmittelbar erzeugt werden, außer die Menge an vorhandener zeitsensitiver Information ist groß genug um das Segment zu füllen. Dies führt auch eine Zeitverzögerung in den Übertragungsprozess ein.
  • Falls die minimale TCP oder UDP Segmentgröße so gewählt wird, dass sie relativ groß ist, wird die Latenz zunehmen, aufgrund der Tatsache dass ein Segment nur übertragen wird, falls die minimale Segmentgröße erfüllt ist. Andererseits, falls die minimale Segmentgröße als relativ klein gewählt wird, wird ein signifikanter Verbrauch von Verarbeitungsressourcen in dem Sender auftreten zum Verarbeiten der zahlreichen Segmente, die zur Übertragung selbst einer kleinen Menge an Information notwendig sind.
  • Was deshalb erforderlich ist, sind ein Verfahren und Vorrichtung zum Optimieren der Segmentgröße sodass zeitsensitive Information ohne eine Änderung von bestehenden Datenprotokollen problemlos übertragen wird.
  • Die TCP Patenveröffentlichung WO 99/33230 „Nokia" offenbart ein Verfahren zum Übertragen von Daten in einem Telekommunikationssystem das wenigstens ein paketvermitteltes Übertragungsnetzwerk aufweist, in dem Daten in Paketen mit einer Standardlänge übertragen werden, wobei die Anzahl derartiger Standardlängen im Voraus bestimmt wird.
  • Zusammenfassung der Erfindung
  • Die vorliegende Erfindung, wie in den angehängten Ansprüchen dargelegt, ist ein Verfahren und eine Vorrichtung für effiziente Datenübertragung in einem drahtlosen Sprache-über-Daten-Kommunikationssystem.
  • In dem exemplarischen Ausführungsbeispiel werden TCP Segmente zur Übertragung von zeitsensitiver Information, im Allgemeinen Audio-Information, genutzt und zwar unter Verwendung eines asynchronen Datenformats gemäß IS-707.4 und UDP Segmente werden für die Übertragung von Audio-Information unter Verwendung eines Paketdatenformats gemäß IS-707.5 genutzt. In einem ersten Ausführungsbeispiel der vorliegenden Erfindung, das durch die Ansprüche nicht abgedeckt ist, werden eine erste Segmentgröße und eine zweite Segmentgröße gewählt. Die erste Segmentgröße repräsentiert eine minimale Segmentgröße, die übertragen werden kann. Die zweite Segmentgröße repräsentiert eine maximale Segmentgröße, die übertragen werden kann. Ein Segment wird erzeugt und übertragen wann immer eine Anzahl von zeitsensitiver Information zur Übertragung verfügbar ist, die es erlaubt, dass ein Segment konstruiert werden kann, das eine Segmentgröße zwischen der minimalen Segmentgröße und der maximalen Segmentgröße besitzt. Ein Segment von irgendeiner Größe bis zu der maximalen Segmentgröße wird auch erzeugt und übertragen wann immer zeitsensitive Information verfügbar ist zur Übertragung und eine Bestätigungsnachricht durch den Sender empfangen wird.
  • In einem zweiten Ausführungsbeispiel der vorliegenden Erfindung, das durch die Ansprüche nicht abgedeckt ist, werden Segmente erzeugt und übertragen bei vorherbestimmten Zeitintervallen im Allgemeinen mit Bezug auf eine Anzahl von Vocoder-Rahmen, die zur Übertragung verfügbar sind. Dieses Ausführungsbeispiel ist entgegengesetzt zu Protokollen nach dem Stand der Technik in dem Segmente zu regulären Zeitintervallen übertragen werden, statt dass sie davon abhängen, dass das Segment mit einer minimalen Anzahl von Bytes gefüllt wird, bevor eine Übertragung stattfinden kann. In der Erfindung werden in einem Sender bzw. Übertrager der einen Vocoder mit variabler Rate bzw. Geschwindigkeit nutzt Bits zu niederratigen Vocoder-Rahmen addiert um das Verhältnis von maximaler Vocoder-Rahmengröße zu minimaler Vocoder-Rahmengröße zu verringern. Testen hat ergeben, dass wenn dieses Verhältnis verringert wird, bestimmte Audio-Verzerrungen reduziert oder eliminiert werden, wie z.B. Silbenausfällen beim Start von Sätzen.
  • Kurze Beschreibung der Zeichnungen
  • 1 stellt ein erstes Ausführungsbeispiel der vorliegenden Erfindung dar wie sie innerhalb eines Übertragers bzw. Senders genutzt wird, der in einem Sprache-über-Daten-Kommunikationssystem genutzt wird;
  • 2 stellt dar, wie Vocoder-Rahmen mit variabler Rate in TCP Segmente durch einen TCP Prozessor konvertiert werden, der in dem Sender der 1 genutzt wird; und
  • 3 ist ein Flussdiagramm, dass das Verfahren des ersten Ausführungsbeispiels der vorliegenden Erfindung detailliert darstellt.
  • Detaillierte Beschreibung der bevorzugten Ausführungsbeispiele
  • Die hierin beschriebenen Ausführungsbeispiele sind beschrieben worden mit Bezug auf ein drahtloses Kommunikationssystem, das gemäß der Nutzung von CDMA Signalverarbeitungstechniken der IS-95 und der IS-707 Interim-Standards betrieben wird. Während die vorliegende Erfindung besonders geeignet ist zur Nutzung innerhalb eines derartigen Kommunikationssystems sollte es klar sein, dass die vorliegende Erfindung in verschiedenen anderen Arten von Kommunikationssystemen eingesetzt werden kann, die Information in diskreten Paketen übertragen, wobei die Pakete anderweitig bekannt sind als Segmente, Datenpakete, Datenrahmen oder einfach als Rahmen und zwar einschließlich sowohl drahtlosen als auch drahtgebundenen Kommunikationssystemen, Computernetzwerken und satellitenbasierten Kommunikationssystemen. Zusätzlich sind durchweg in der Beschreibung verschiedene wohlbekannte Systeme in Blockform dargelegt. Dies wird aus Gründen der Klarheit gemacht.
  • Verschiedene drahtlose Kommunikationssysteme die heutzutage genutzt werden, setzen fixe Basisstationen ein, die mit mobilen Einheiten, bzw. Mobileinheiten kommunizieren, unter Verwendung einer Luftschnittstelle bzw. eines Luftschnittstellen-Interfaces oder eines drahtlosen Kommunikationskanals. Derartige drahtlose Kommunikationssysteme umfassen AMPS (analog), IS-54 (Nordamerikanisches TDMA), GSM (globales System für mobile Kommunikationen, TDMA) und IS-95 (CDMA). In einem bevorzugten Ausführungsbeispiel wird die vorliegende Erfindung in einem CDMA System implementiert.
  • 1 illustriert ein Blockdiagramm eines Senders bzw. Übertragers 100, der in einem Sprache-über-Daten-Kommunikationssystem genutzt wird. Ein Sprache-über-Daten-Kommunikationssystem, wie hierin beschrieben bezieht sich auf irgendein Kommunikationssystem in dem zeitsensitive Informationen in Datensegmenten, Segmenten, Datenpaketen oder Rahmen unter Verwendung von Datenprotokollen übertragen wird. Beispiele von zeitsensitiver Information umfasst Audio-Information, wie z.B. menschliche Sprache oder Video-Information, wie z.B. Fernsehsignale oder Filme. Der Ausdruck „Sprache-über-Daten" (voice-over-data) bezieht sich im Allgemeinen auf ein Kommunikationssystem welches menschliche Sprache oder Sprache überträgt bzw. sendet und zwar unter Verwendung vordefinierter Datenprotokolle, wie z.B. den wohlbekannten TCP oder UDP Datenprotokollen.
  • Der Sender 100 ist gezeigt, konfiguriert zur Nutzung in einem exemplarischen Ausführungsbeispiel der vorliegenden Erfindung. Ein derartiger Sender 100 kann in einer Basisstation oder in einem Mobiltelefon angeordnet sein, wie es in einem drahtlosen Kommunikationssystem verwendet wird. Es sollte klar sein, dass 1 ein vereinfachtes Blockdiagramm eines vollständigen Senders ist und dass andere funktionale Blöcke zum Zwecke der Klarheit weggelassen worden sind. Der Sender 100, wie in 1 gezeigt, soll nicht beschränkt sein auf irgendeine bestimmte Art von Sendemodulation, Protokoll oder Standard. Zusätzlich können die Funktionen von jedem Block sich in einem einzelnen oder in mehreren Prozessoren befinden, die vorprogrammierte Instruktionssätze ausführen, können sich in einem oder mehreren ASICs be finden oder können sich in diskreten Verarbeitungselementen befinden, die alle in der Technik wohlbekannt sind.
  • Wie in 1 gezeigt, wird zeitsensitive Information, im Allgemeinen im analogen Format, an einen Analog-zu-Digital-(A/D)-Umwandler bzw. -Konverter 102 geliefert. Der A/D 102 nutzt wohlbekannte Techniken zum Transformieren der zeitsensitiven Information in ein digitalisiertes Signal. A/D 102 kann Tiefpassfilterung, Abtastung, Quantisierung und binäre Codierung der zeitsensitiven Information durchführen zum Erzeugen des digitalisierten Signals, wie es in der Technik wohlbekannt ist.
  • Das digitalisierte Signal wird dann an einen Vocoder 104 geliefert. Der Vocoder 104 ist eine wohlbekannte Einrichtung zum Komprimieren des digitalisierten Sprachsignals zum Minimieren der Bandbreite, die zur Übertragung erforderlich ist. Der Vocoder 104 erzeugt aufeinanderfolgende Vocoder-Rahmen, anderweitig bekannt als Datenrahmen, für gewöhnlich bei regulären Zeitintervallen, wie z.B. alle 20 Millisekunden in dem exemplarischen Ausführungsbeispiel, obwohl andere Zeitintervalle alternativ genutzt werden könnten. Die Länge von jedem Datenrahmen ist deshalb 20 Millisekunden.
  • Eine Art auf die viele Vocoder bzw. Sprachcodierer, die Signalkomprimierung maximieren, ist durch Detektieren von Perioden mit Ruhe bzw. Stille in einem Sprachsignal. Z.B. bieten Pausen in menschlicher Sprache zwischen Sätzen, Wörtern und sogar zwischen Silben eine Gelegenheit für viele Vocoder zum Komprimieren der Bandbreite des Sprachsignals beim Erzeugen eines Datenrahmens, der darin wenig oder keine Information enthält.
  • Vocoder können weiter verbessert werden durch Codieren von Datenrahmen mit variablen Datenraten bzw. -geschwindigkeiten. Ein Beispiel eines derartigen Vocoders mit variabler Rate ist zu finden in dem U.S. Patent mit der Nummer 5,414,796 (dem '796 Patent) mit dem Titel „VARIABLE RATE VOCODER" an den Rechteinhaber der vorliegenden Erfindung übertragen. Wenn wenig oder keine Information zur Übertragung verfügbar ist, erzeugen Voco der mit variabler Rate Datenrahmen mit reduzierten Datenraten, erhöhen somit die Übertragungskapazität des drahtlosen Kommunikationssystems. In dem durch das '796 Patent beschriebenen Vocoder mit variabler Rate weisen die Datenrahmen Daten mit entweder dem Vollen, einer Hälfte, einem Viertel oder einem Achtel der Datenrate der höchsten Vocoder-Codierungsrate auf.
  • Durch den Vocoder 104 erzeugte Datenrahmen werden in einer Warteschlange 106 oder einem sequentiellen Speicher gespeichert, um später digital moduliert und dann zur drahtlosen Übertragung hochkonvertiert zu werden. Die Warteschlange 106 ist ein Speicher zum Speichern sequentieller Vocoder-Rahmen von dem Vocoder 104 um dann die Vocoder-Rahmen an einen TCP Prozessor 108 auf einer Basis mit gleicher Reihenfolge (first in, first out basis bzw. fifo-basis) geliefert zu werden. In der vorliegenden Erfindung werden die Vocoder-Rahmen in Datenpakete durch den TCP Prozessor 108 vor der Übertragung codiert, weil Datenpakete für derartige Anwendungen einfach manipuliert werden können, Anwendungen wie Sprachverschlüsselung unter Verwendung von beispielsweise Verschlüsselungstechniken mit einem öffentlichen Schlüssel. Die Datenpakete können auch unmittelbar zwischen einem großen Verbund von Computernetzwerken, wie z.B. dem Internet, übertragen werden.
  • Die in der Warteschlange 106 gespeicherten Vocoder-Rahmen werden an den TCP Prozessor 108 geliefert, wo sie in Datenpakete transformiert werden, wobei die Datenpakete anderweitig bekannt sind als Datensegmente, TCP Segmente oder einfach als Segmente die geeignet sind für die bestimmte Art des in einem Computernetzwerk wie z.B. dem Internet verwendeten Datenprotokolls. Z.B. werden in dem exemplarischen Ausführungsbeispiel die Rahmen von der Warteschlange 106 in TCP Segmente formatiert. TCP ist ein wohlbekanntes Datenprotokoll das genutzt wird zum Senden bzw. Übertragen von Daten über große öffentliche Computernetzwerke, wie z.B. dem Internet. Andere wohlbekannte Datenprotokolle können alternativ genutzt werden, wie z.B. das UDP Datenprotokoll. Der TCP Prozessor 108 kann eine Hardware-Einrichtung sein, entweder diskret oder integriert oder er kann einen Mikro prozessor aufweisen, auf dem ein Software-Programm abläuft das speziell entworfen ist zum Transformieren von Vocoder-Rahmen in Datensegmente, die geeignet sind für das spezielle vorhandene Datenprotokoll.
  • 2 illustriert wie Vocoder-Rahmen mit variabler Rate, die in der Warteschlange 106 gespeichert sind, durch den TCP Prozessor 108 in TCP Segmente konvertiert werden. Ein Datenstrom 200 repräsentiert die Inhalte der Warteschlange 106, gezeigt als eine Folge von sequentiellen Vocoder-Rahmen, wobei jeder Vocoder-Rahmen eine Rahmenlänge von 20 Millisekunden besitzt. Es sollte klar sein, dass andere Vocoder Vocoder-Rahmen erzeugen könnten, die Rahmenlängen mit einer größeren oder kleineren Dauer besitzen.
  • Wie in 2 gezeigt, enthält jeder Vocoder-Rahmen eine Anzahl von Informations-Bits abhängig von der Datenrate für den bestimmten Rahmen. in dem vorliegenden Beispiel der 2 enthalten Vocoder-Rahmen die folgende Anzahl von Daten-Bits: 192 für einen Rahmen mit voller Rate bzw. einen Vollratenrahmen, 96 Bits für einen Rahmen mit halber Rate bzw. einen Halbratenrahmen, 48 Bits für einen Rahmen mit viertel Rate bzw. einen Viertelratenrahmen, und 24 Bits für einen Rahmen mit Achtelrate bzw. einen Achtelratenrahmen. Wie oben erörtert repräsentieren Rahmen, die höhere Datenraten besitzen Perioden mit Sprachaktivität, während Rahmen, die niedrigere Datenraten besitzen repräsentativ sind für Perioden mit weniger Sprachaktivität oder Stille.
  • Der TCP Prozessor 108 füllt einen TCP Rahmen sequentiell mit Bits, die in jedem Vocoder-Rahmen von der Warteschlange 106 enthalten sind. Beispielsweise, in 2 werden die 192 Bits, die in einem Vocoder-Rahmen 202 enthalten sind, zuerst innerhalb eines TCP Segments 218 platziert, dann die 96 Bits vom Vocoder-Rahmen 204 usw. bis 536 Bits innerhalb des TCP Segments 218 platziert worden sind. Man beachte, dass ein Vocoder-Rahmen 212 zwischen dem TCP Segment 218 und einem TCP Segment 220 aufgeteilt bzw. gesplittet wird, und zwar so wie es nötig ist, um das TCP Segment 218 mit 536 Bits zu füllen.
  • Es sollte klar sein, das TCP Segmente durch den TCP Prozessor 108 nicht auf eine kontinuierliche Art und Weise erzeugt werden und zwar aufgrund der Art der Rahmen des Vocoders mit variabler Rate und aufgrund der Verarbeitungsfähigkeiten des Prozessors 110. In dem ersten Fall, falls keine Information zur Übertragung in der Warteschlange 106 verfügbar ist, wird eine lange Reihe mit niederratigen Vocoder-Rahmen durch den Vocoder 104 erzeugt werden. Deshalb sind viele niederratige Vocoder-Rahmen erforderlich zum Füllen der 536 Bits, die für ein TCP Segment erforderlich sind und somit wird ein TCP Segment langsamer erzeugt werden. Im Gegensatz dazu, falls hohe Sprachaktivität vorhanden ist, wird eine Reihe mit hochratigen Vocoder-Rahmen durch den Vocoder 104 erzeugt werden. Deshalb werden relativ wenige Vocoder-Rahmen erforderlich sein zum Füllen der 536 Bits, die für einen TCP Segment notwendig sind, somit wird ein TCP Segment schneller erzeugt werden.
  • In dem zweiten Fall ist der Prozess des Erzeugens von TCP Segmenten einer von mehreren gleichzeitigen Prozessen, die innerhalb des Senders 100 stattfinden. Im Allgemeinen koordiniert der Prozessor 110 die verschiedenen Aktivitäten die innerhalb des Senders 100 stattfinden auf einer sequentiellen Grundlage. Das heißt jeder Prozess der innerhalb des Senders 100 stattfinden, wird in einer vorher definierten Sequenz durchgeführt, was es zulässt, dass Notfallprozesse bzw. Prozesse unerwarteter Ereignisse, auch Interrupts bzw. Unterbrechungen genannt, stattfinden. Als Ergebnis werden TCP Segmente nur erzeugt wenn der Prozessor 110 die sequentielle Liste mit anderen Prozessen, die durchgeführt werden müssen, durchgeführt hat. Deshalb werden die TCP Segmente durch den TCP Prozessor nur zu diskreten Zeitintervallen erzeugt, wenn dies durch den Prozessor 110 angewiesen wird.
  • Die TCP Segmente sind dadurch gekennzeichnet, dass sie eine Dauer besitzen, die durch die Anzahl von Bits, die innerhalb jedes Segments enthalten sind, gemessen wird. Wie in 2 gezeigt, kann eine typische TCP Segmentlänge 536 Bits sein, obwohl andere TCP Segmente eine größere oder kleinere Anzahl von Bits besitzen können. Die Länge eines TCP Segments wird im Allgemeinen zwischen einem Sender und einem Empfänger ausgehandelt und zwar vor dem Beginn der Kommunikationen. Derartige Aushandlungen sind in der Technik wohl bekannt. Beispielsweise beschreiben IS-707.4 und die Internet Engineering Task Force RFC 793 Details wie eine TCP Segmentgröße ausgehandelt wird. In Kommunikationssystemen nach dem Stand der Technik wird die Segmentlänge gewählt basierend auf dem Bedarf Datenrahmen vom Sender zum Empfänger effizient zu übertragen.
  • In der vorliegenden Erfindung sind zwei Segmentgrößen definiert. Eine erste Segmentgröße repräsentiert eine minimale Segmentgröße, die übertragen werden kann. Eine zweite Segmentgröße repräsentiert eine maximale Segmentgröße, die übertragen werden kann. Die zweite Segmentgröße ist äquivalent zu der Segmentgröße nach dem Stand der Technik und wird zwischen einem Sender und einem Empfänger vor dem Start der Kommunikationen ausgehandelt. Die erste Segmentgröße ist vordefiniert und in einem Speicher 112 innerhalb des Senders 100 gespeichert.
  • Ein TCP Segment wird erzeugt und gesendet, wann immer eine Menge an zeitsensitiver Information, die in der Warteschlange 106 verfügbar ist, es erlaubt das ein Segment konstruiert wird, dass eine Segmentgröße zwischen der minimalen Segmentgröße und der maximalen Segmentgröße besitzt. Ein Segment, das irgendeine Größe bis zu der maximalen Segmentgröße besitzt, wird auch erzeugt und gesendet wann immer eine zeitsensitive Information zur Übertragung verfügbar ist, und eine Bestätigungsnachricht durch den Sender 100 empfangen wird. Dies wird unten detaillierter beschrieben.
  • Wie vorher bemerkt, werden TCP Segmente im Allgemeinen nicht auf einer kontinuierlichen Grundlage erzeugt. Der Segmenterzeugungsprozess findet statt als einer von vielen parallelen Prozessen, die innerhalb des Senders 100 ablaufen. Im Allgemeinen weist der Sender 100 den Prozessor 110 auf, der die verschiedenen Aktivitäten koordiniert, die innerhalb des Senders 100 stattfinden. Als Ergebnis findet die Segmenterzeugung nur statt, wenn der Prozessor 110 andere Funktionen durchgeführt hat, die eine höhere Priorität als der Segmenterzeugungsprozess besitzen, oder wenn der Segmenterzeugungsprozess sequentiell in der Liste mit Funktionen auftaucht, die durch den Prozessor 110 durchgeführt werden müssten.
  • Wenn der Prozessor 110 bestimmt, dass der Segmenterzeugungsprozess durchzuführen ist, instruiert er den TCP Prozessor zum Bestimmen, ob ausreichend Daten in den Vocoder-Rahmen, die innerhalb der Warteschlange 106 gespeichert sind, verfügbar sind zum Erzeugen eines TCP Segments das eine Segmentgröße besitzt, die größer ist als oder gleich ist der minimalen Segmentgröße, wie vorher bestimmt und gespeichert, innerhalb des Speichers 112. Falls dem so ist, wird ein TCP Segment kreiert, das eine minimale Anzahl von Bits besitzt, die gleich der minimalen Segmentgröße ist, und eine maximale Größe besitzt, die gleich der maximalen Segmentgröße ist, wie sie zwischen dem Sender 100 und einem Empfänger ausgehandelt worden ist. Falls überschüssige Daten bzw. Excess-Daten, die zu übertragen sind, in der Warteschlange 106 oberhalb der maximalen Segmentgröße verbleiben, wird ein zweites TCP Segment erzeugt, falls ein Segment das wenigstens die minimale Segmentgröße besitzt von den Excess-Daten erzeugt werden kann. Falls dem so ist, wird ein zweites TCP Segment erzeugt. Falls dem nicht so ist, verbleiben die Excess-Daten in der Warteschlange 106 gespeichert, bis der Prozessor 110 den TCP Prozessor wiederum instruiert, die Menge an gespeicherten Daten in der Warteschlange 106 zu bestimmen. Es ist wahrscheinlich, dass zusätzliche Vocoder-Rahmen erzeugt und innerhalb der Warteschlange 106 während der Zeit gespeichert werden, während der der Prozessor 110 andere notwendige Funktionen innerhalb des Senders 100 durchführt.
  • Die vorliegende Erfindung minimiert die Probleme der Latenz, die durch diskontinuierliche Übertragung von Daten die in der Warteschlange 106 darauf warten übertragen zu werden, verursacht wird. In Systemen nach dem Stand der Technik wurden Daten nicht übertragen bis die vordefinierte Warteschlangengröße erfüllt worden ist. Ein relativ großer Zeitbetrag könnte vergehen, bis genügend Daten, die Warteschlange 106 mit genügend Daten gefüllt haben, um die vorherbestimmte minimale Segmentgröße zu erfüllen. Deshalb könnten relativ große Verzögerungen in die Übertragung von zeitsensitiven Daten eingeführt werden. Die vorliegende Erfindung minimiert diese Latenz durch Nutzen eines Ansatzes mit zwei Segmentgrößen. Die minimale Segmentgröße erlaubt es, dass TCP Segmente schneller erzeugt werden, somit mit einer regelmäßigeren Rate. Vocoder-Rahmen, die in der Warteschlange 106 auf Übertragung warten, werden schneller Übertragen aufgrund der kleineren Datenmenge, die zum Kreieren eines Segments erforderlich ist. Ein zweiter Vorteil des Ansatzes mit zwei Segmentgrößen ist, dass größere Segmente gesendet werden können, wenn eine große Datenmenge erzeugt und in der Warteschlange 106 gespeichert wird. In diesem Fall werden Segmente erzeugt, die eine Segmentgröße gleich der maximalen Segmentgröße besitzen. Dies erlaubt eine effizientere Verarbeitung und reduziert den Überhang, der mit der Erzeugung von vielen TCP Segmenten assoziiert ist.
  • Zusätzlich zum Generieren und Übertragen von Segmenten, wie oben beschrieben, kann ein Segment erzeugt werden, wann immer eine Bestätigungsnachricht durch den Sender 100 empfangen wird. Bestätigungsnachrichten werden bei einigen Datenprotokollen wie z.B. TCP genutzt, um einen Sender zu benachrichtigen, wenn ein Segment oder ein Batch bzw. Stapel mit Segmenten ohne Fehler empfangen worden ist. Bei derartigen Systemen wird ein Timer, der innerhalb eines Senders lokalisiert ist, gestartet, wann immer ein Segment oder Stapel mit Segmenten gesendet wird. Wenn ein Segment oder Stapel mit Segmenten ohne Fehler an einen Empfänger empfangen wird, wird eine Bestätigungsnachricht durch den Empfänger erzeugt und an den Sender gesendet, um den Sender darüber zu informieren, dass das Segment oder der Stapel mit Segmenten richtig empfangen worden ist. Falls eine Bestätigungsnachricht durch den Sender nicht innerhalb einer vorherbestimmten Zeitdauer empfangen worden ist, werden das Segment oder der Stapel mit Segmenten erneut gesendet.
  • Wenn eine Bestätigungsnachricht durch einen Sender empfangen wird, zeigt sie an, dass die Übertragungskanalqualität zwischen dem Sender und einem Empfänger gut ist, und dass die Fehlerwahrscheinlichkeit bei der Übertragung niedrig ist. Wenn eine Bestätigungsnachricht durch den Sender 100 empfangen wird, instruiert in der vorliegenden Erfindung der Prozessor 110 den TCP Prozessor zum Erzeugen eines TCP Segments und zwar egal wie viele Daten in der Warteschlange 106 gespeichert sind. Deshalb können TCP Segmente erzeugt werden, die eine Segmentgröße von weniger als der minimalen Segmentgröße besitzen, bis zu einer maximalen Größe der maximalen Segmentgröße.
  • In einem zweiten Ausführungsbeispiel der vorliegenden Erfindung das durch die Ansprüche nicht abgedeckt ist, werden TCP Segmente erzeugt und bei vorherbestimmten Zeitintervallen gesendet, im Allgemeinen mit Bezug auf eine Anzahl von Vocoder-Rahmen die zur Übertragung verfügbar sind. Dieses Ausführungsbeispiel ist entgegengesetzt zu Protokollen nach dem Stand der Technik in welchen Segmente zu regelmäßigen Zeitintervallen gesendet werden, und zwar eher als abhängig von dem Füllen des Segments mit einer minimalen Anzahl von Bytes bevor eine Übertragung stattfinden kann.
  • Wie oben beschrieben, führt der Prozessor 110 mehrere Prozesse innerhalb des Senders 100 auf einer sequentiellen Grundlage durch. An einem vorherbestimmten Punkt während der Sequenz instruiert der Prozessor 110 den TCP Prozessor zum Erzeugen von einem oder mehreren TCP Segmenten, falls genügend Daten in der Warteschlange 106 vorhanden sind. In diesem Ausführungsbeispiel, falls eine vorher bestimmte Anzahl von Vocoder-Rahmen innerhalb der Warteschlange 106 gespeichert worden sind, wird ein TCP Segment durch den TCP Prozessor 108 erzeugt. In dem exemplarischen Ausführungsbeispiel ist die vorher bestimmte Anzahl von Vocoder-Rahmen 10 Rahmen. Dieses Ausführungsbeispiel eliminiert die Übertragungsverzögerungen, die assoziiert sind mit dem Warten auf eine vorher bestimmte Anzahl von Bits, die in der Warteschlange 106 verfügbar sein müssen, vor dem Erzeugen eines TPC Segments. Deshalb werden TCP Segmente auf einer regelmäßigeren Grundlage erzeugt, dadurch die Latenz und andere Probleme die mit irregulären Datenübertragungen nach dem Stand der Technik assoziiert sind, reduzierend.
  • In der vorliegenden Erfindung werden in einem Sender der einen Vocoder mit variabler Rate nutzt, Bits zu niederratigen Vocoder-Rahmen addiert um das Verhältnis der maximalen Vocoder-Rahmengröße zur minimalen Vocoder-Rahmengröße zu reduzieren. Testen hat gezeigt, dass wenn dieses Verhältnis verringert wird, bestimmte Audio-Verzerrungen reduziert und eliminiert werden, wie z.B. Silbenverluste am Beginn von Sätzen.
  • In der Erfindung, wenn Vocoder-Rahmen durch den Vocoder 104 erzeugt werden, addiert der Prozessor 110 zufällige Bits zu jedem Vocoder-Rahmen der nicht eine vorherbestimmte Anzahl von Bits enthält, d.h. niederratige codierte Vocoder-Rahmen. Bits werden addiert, bis die Anzahl von Bits, die innerhalb des Vocoder-Rahmens enthalten sind, gleich der vorherbestimmten Anzahl von Bits ist. Das Addieren von Bits zu den niederratigen codierten Vocoder-Rahmen erlaubt größere Uniformität bei der durchschnittlichen Anzahl von Bits in jedem Vocoder-Rahmen der in der Warteschlange 106 gespeichert wird und somit der Rate mit der TCP Segmente erzeugt werden.
  • 3 zeigt ein Flussdiagramm, dass das Verfahren des ersten Ausführungsbeispiels der vorliegenden Erfindung detailliert darstellt. Im Schritt 300 werden Kommunikationen zwischen einem Sender und einem Empfänger initiiert. Als Teil des Initialisierungsprozesses wird ein Datenprotokoll zwischen dem Sender und dem Empfänger ausgehandelt wie z.B. TCP oder UDP. Bei einigen Protokollen wie z.B. TCP wird auch eine maximale Segmentgröße zwischen dem Sender und dem Empfänger ausgehandelt. Der Aushandlungsprozess ist in der Technik wohl bekannt. Die maximale Segmentgröße definiert die größte Segmentgröße, die an den Empfänger übertragen wird. Bei vielen Datenprotokollen ist es auch erlaubt, dass auch Segmente die eine kleinere Segmentgröße besitzen, auch übertragen werden. Zusätzlich zu einer maximalen Seg mentgröße ist auch eine minimale Segmentgröße vordefiniert und innerhalb eines Speichers bei dem Sender gespeichert. Die minimale Segmentgröße wird im Allgemeinen nicht zwischen dem Sender und dem Empfänger ausgehandelt.
  • Sobald Kommunikationen initialisiert worden sind, wird zeitsensitive Information wie z.B. menschliche Sprache zwischen dem Sender und dem Empfänger übertragen bzw. gesendet. Im Schritt 302 wartet der TCP Prozessor 108 auf Instruktionen von dem Prozessor 110 an den TCP Prozessor 108 zum Bestimmen, ob genügend Daten innerhalb der Warteschlange 106 vorhanden sind, um ein Segment zu erzeugen. Wenn der Prozessor 110 den TCP Prozessor instruiert ein Segment zu erzeugen, geht die Verarbeitung weiter zum Schritt 304.
  • Im Schritt 304 bestimmt der TCP Prozessor 108 ob eine Bestätigungsnachricht innerhalb einer vorherbestimmten Zeitperiode empfangen worden ist. Der Empfang einer Bestätigungsnachricht von dem Empfänger ist eine Anzeige dafür, dass die Kommunikationskanalqualität akzeptabel ist und dass es eine große Wahrscheinlichkeit gibt, dass weitere Übertragungen erfolgreich empfangen werden. Nicht alle Datenprotokolle nutzen ein bestätigungsbasiertes System. Zum Beispiel nutzt das UDP Protokoll nicht Bestätigungsnachrichten zum Alarmieren eines Senders, das die Kommunikationskanalqualität gut ist. Bei diesen Arten von Protokollen wird der Schritt 304 umgangen.
  • Falls eine Bestätigungsnachricht innerhalb der vorherbestimmten Zeitperiode empfangen worden ist, wird ein Segment von irgendwelchen Daten, die in der Warteschlange 106 verfügbar sind, erzeugt, wie im Schritt 306 gezeigt. Das sich ergebende Segment kann eine Segmentgröße besitzen, die kleiner als die minimale Segmentgröße ist oder größer als die minimale Segmentgröße ist, und zwar bis zu der maximalen Segmentgröße. Falls weitere Daten in der Warteschlange 106 nach dem Erzeugen eines Segments maximaler Größe verfügbar sind, werden diese Daten in einem zweiten Segment gesendet und falls notwendig in nachfolgenden Segmenten. Die Verarbeitung kehrt dann zurück zum Schritt 302, wo der PCT Prozessor 108 auf die nächste Instruktion von dem Prozessor 110 wartet um wiederum die Warteschlange 106 zu prüfen.
  • Falls eine Bestätigungsnachricht nicht innerhalb der vorherbestimmten Zeitperiode empfangen worden ist, oder falls ein bestätigungsbasiertes Datenprotokoll nicht verwendet wird, geht die Verarbeitung weiter zum Schritt 308. Im Schritt 308 prüft der TCP Prozessor 108 die Warteschlange 106 um zu bestimmen, ob genügend Daten innerhalb der Warteschlange 106 gespeichert sind zum Erzeugen eines Segments, das eine Segmentgröße besitzt die gleich ist zu oder größer ist als die minimale Segmentgröße. Falls dem so ist, wird der Schritt 310 durchgeführt, in dem der TCP Prozessor ein Segment erzeugt, das eine Segmentgröße besitzt, die zwischen der minimalen Segmentgröße und der maximalen Segmentgröße ist. Falls weitere Daten in der Warteschlange 106 nach dem Erzeugen eines Segments maximaler Größe verfügbar sind, werden diese Daten in einem zweiten Segment und falls notwendig in nachfolgenden Segmenten gesendet. Die Verarbeitung kehrt dann zurück zum Schritt 302, wo der TCP Prozessor 108 auf die nächste Instruktion von dem Prozessor 110 wartet um die Warteschlange 106 wieder zu prüfen.
  • Falls die innerhalb der Warteschlange 106 gespeicherten Daten nicht ausreichen, um ein Segment zu erzeugen, das eine Segmentgröße besitzt, die größer ist als die oder gleich ist zu der minimalen Segmentgröße erzeugt der TCP Prozessor 108 kein Segment und das Verarbeiten geht weiter zurück zum Schritt 302, wo der TCP Prozessor auf die nächste Instruktion von dem Prozessor 110 wartet, um die Warteschlange 106 wieder zu prüfen.
  • Die bevorzugten Ausführungsbeispiele der vorliegenden Erfindung sind somit gezeigt und beschrieben worden. Es ist einem Fachmann klar, dass jedoch zahlreiche Änderungen an den hierin offenbarten Ausführungsbeispielen durchgeführt werden können. Deshalb soll die vorliegende Erfindung nicht beschränkt sein, außer in Übereinstimmung mit den folgenden Ansprüchen.

Claims (7)

  1. Ein Verfahren zum Übertragen von zeitsensitiver Information über ein drahtloses Sprache-über-Daten-Kommunikationssystem, das zusammen mit einem vordefinierten Datenprotokoll genutzt wird, gekennzeichnet durch die folgenden Schritte: Speichern von Vocoder-Rahmen in einer Warteschlange, wobei die Vocoder-Rahmen zeitsensitive Information repräsentieren; Bestimmen der Anzahl von Bits, die innerhalb von jedem der Vododer-Rahmen enthalten sind; Addieren von Bits, zu irgendeinem der Vocoder-Rahmen, der nicht mindestens eine vorherbestimmte Anzahl von Bits enthält.
  2. Verfahren zum Übertragen von zeitsensitiver Information gemäß Anspruch 1, wobei der Schritt des Addierens von Bits das Verhältnis der maximalen Vocoder-Rahmengröße zur minimalen Vocoder-Rahmengröße verringert.
  3. Verfahren zum Übertragen von zeitsensitiver Information gemäß Anspruch 1 oder 2, wobei die Anzahl von Bits addiert wird, bis die Anzahl von Bits, die innerhalb des Vocoder-Rahmens enthalten ist, gleich der vorher bestimmten Anzahl von Bits ist.
  4. Vorrichtung zum Übertragen von zeitsensitiver Information über ein drahtloses Sprache-über-Daten-Kommunikationssystem, das zusammen mit einem vordefinierten Datenprotokoll genutzt wird, dadurch gekennzeichnet, dass folgendes vorgesehen ist: eine Warteschlange (106) zum Speichern von Vocoder-Rahmen, wobei die Vocoder-Rahmen zeitsensitive Informationen repräsentieren; und ein Prozessor (110) zum Addieren von zufälligen Bits zu irgendeinem der Vocoder-Rahmen der nicht mindestens eine vorherbestimmte Anzahl von Bits enthält.
  5. Vorrichtung zum Übertragen von zeitsensitiver Information gemäß Anspruch 4, wobei die Addition von zufälligen Bits durch den Prozessor (110) das Verhältnis der maximalen Vocoder-Rahmengröße zur minimalen Vocoder-Rahmengröße verringert.
  6. Vorrichtung zum Übertragen von zeitsensitiver Information gemäß der Ansprüche 4 oder 5, wobei der Prozessor (110) angepasst ist zum Addieren von zufälligen Bits, bis die Anzahl von Bits, die innerhalb des Vocoder-Rahmens enthalten sind, gleich der vorherbestimmten Anzahl von Bits ist.
  7. Ein Computerprogramm, das Instruktionen aufweist, um zu veranlassen, dass ein Prozessor das Verfahren gemäß irgendeinem der Ansprüche 1 bis 3 ausführt.
DE60034473T 1999-10-26 2000-10-25 Verfahren und einrichtung zur effizienten datenübertragungskontrolle in einem drahtlosen sprache-über-daten kommunikationssystem Expired - Lifetime DE60034473T2 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US429406 1995-04-26
US09/429,406 US7522631B1 (en) 1999-10-26 1999-10-26 Method and apparatus for efficient data transmission control in a wireless voice-over-data communication system
PCT/US2000/029449 WO2001031887A1 (en) 1999-10-26 2000-10-25 Method and apparatus for efficient data transmission control in a wireless voice-over-data communication system

Publications (2)

Publication Number Publication Date
DE60034473D1 DE60034473D1 (de) 2007-05-31
DE60034473T2 true DE60034473T2 (de) 2008-01-03

Family

ID=23703103

Family Applications (2)

Application Number Title Priority Date Filing Date
DE60034473T Expired - Lifetime DE60034473T2 (de) 1999-10-26 2000-10-25 Verfahren und einrichtung zur effizienten datenübertragungskontrolle in einem drahtlosen sprache-über-daten kommunikationssystem
DE60043792T Expired - Lifetime DE60043792D1 (de) 1999-10-26 2000-10-25 Verfahren und Vorrichtung zur leistungsfähigen Datenübertragungssteuerung bei einem drahtlosen Sprache-über-Daten-Kommunikationssystem

Family Applications After (1)

Application Number Title Priority Date Filing Date
DE60043792T Expired - Lifetime DE60043792D1 (de) 1999-10-26 2000-10-25 Verfahren und Vorrichtung zur leistungsfähigen Datenübertragungssteuerung bei einem drahtlosen Sprache-über-Daten-Kommunikationssystem

Country Status (14)

Country Link
US (2) US7522631B1 (de)
EP (2) EP1796345B1 (de)
JP (1) JP4541624B2 (de)
KR (2) KR100812848B1 (de)
CN (1) CN1158832C (de)
AT (2) ATE456894T1 (de)
AU (1) AU1344401A (de)
BR (1) BRPI0015014B1 (de)
CA (1) CA2387521C (de)
DE (2) DE60034473T2 (de)
ES (2) ES2337938T3 (de)
HK (1) HK1049244B (de)
MX (1) MXPA02004191A (de)
WO (1) WO2001031887A1 (de)

Families Citing this family (66)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2769165B1 (fr) 1997-09-26 2002-11-29 Technical Maintenance Corp Systeme sans fil a transmission numerique pour haut-parleurs
FR2781580B1 (fr) 1998-07-22 2000-09-22 Technical Maintenance Corp Circuit de commande de son pour systeme de reproduction audiovisuelle numerique intelligent
FR2781591B1 (fr) 1998-07-22 2000-09-22 Technical Maintenance Corp Systeme de reproduction audiovisuelle
FR2796482B1 (fr) 1999-07-16 2002-09-06 Touchtunes Music Corp Systeme de gestion a distance d'au moins un dispositif de reproduction d'informations audiovisuelles
FR2805377B1 (fr) 2000-02-23 2003-09-12 Touchtunes Music Corp Procede de commande anticipee d'une selection, systeme numerique et juke-box permettant la mise en oeuvre du procede
FR2805060B1 (fr) 2000-02-16 2005-04-08 Touchtunes Music Corp Procede de reception de fichiers lors d'un telechargement
FR2805072B1 (fr) 2000-02-16 2002-04-05 Touchtunes Music Corp Procede d'ajustement du volume sonore d'un enregistrement sonore numerique
DE10014064C2 (de) * 2000-03-22 2002-01-31 Rohde & Schwarz Verfahren zum Übertragen von Sprachdatenpaketen
FR2808906B1 (fr) 2000-05-10 2005-02-11 Touchtunes Music Corp Dispositif et procede de gestion a distance d'un reseau de systemes de reproduction d'informations audiovisuelles
FR2811175B1 (fr) 2000-06-29 2002-12-27 Touchtunes Music Corp Procede de distribution d'informations audiovisuelles et systeme de distribution d'informations audiovisuelles
FR2811114B1 (fr) 2000-06-29 2002-12-27 Touchtunes Music Corp Dispositif et procede de communication entre un systeme de reproduction d'informations audiovisuelles et d'une machine electronique de divertissement
US6891855B2 (en) * 2000-07-27 2005-05-10 Corrigent Systems, Ltd. Dynamic packet fragmentation
FR2814085B1 (fr) 2000-09-15 2005-02-11 Touchtunes Music Corp Procede de divertissement base sur les jeux concours a choix multiples
JP2004515163A (ja) * 2000-11-29 2004-05-20 ブリティッシュ・テレコミュニケーションズ・パブリック・リミテッド・カンパニー リアルタイムデータの送信および受信
US6876669B2 (en) * 2001-01-08 2005-04-05 Corrigent Systems Ltd. Packet fragmentation with nested interruptions
EP1428357A1 (de) * 2001-09-21 2004-06-16 British Telecommunications Public Limited Company Datenkommunikationsmethode und -system zu überlastkontrolle, das die datenrate basierend auf der grösse des empfangsseitigen datenpuffers berechnet
WO2003049373A1 (en) * 2001-11-30 2003-06-12 British Telecommunications Public Limited Company Data transmission
KR100917743B1 (ko) * 2002-03-27 2009-09-15 브리티쉬 텔리커뮤니케이션즈 파블릭 리미티드 캄퍼니 데이터 스트리밍 시스템을 위한 데이터 구조
EP1359722A1 (de) * 2002-03-27 2003-11-05 BRITISH TELECOMMUNICATIONS public limited company System und Verfahren zur Übertragung von Datenströmen
US9646339B2 (en) 2002-09-16 2017-05-09 Touchtunes Music Corporation Digital downloading jukebox system with central and local music servers
US11029823B2 (en) 2002-09-16 2021-06-08 Touchtunes Music Corporation Jukebox with customizable avatar
US12100258B2 (en) 2002-09-16 2024-09-24 Touchtunes Music Company, Llc Digital downloading jukebox with enhanced communication features
US7822687B2 (en) 2002-09-16 2010-10-26 Francois Brillon Jukebox with customizable avatar
US8584175B2 (en) 2002-09-16 2013-11-12 Touchtunes Music Corporation Digital downloading jukebox system with user-tailored music management, communications, and other tools
US8103589B2 (en) 2002-09-16 2012-01-24 Touchtunes Music Corporation Digital downloading jukebox system with central and local music servers
US8332895B2 (en) 2002-09-16 2012-12-11 Touchtunes Music Corporation Digital downloading jukebox system with user-tailored music management, communications, and other tools
US10373420B2 (en) 2002-09-16 2019-08-06 Touchtunes Music Corporation Digital downloading jukebox with enhanced communication features
GB0306296D0 (en) * 2003-03-19 2003-04-23 British Telecomm Data transmission
GB2405773B (en) * 2003-09-02 2006-11-08 Siemens Ag A method of controlling provision of audio communication on a network
GB2406245B (en) * 2003-09-17 2006-01-04 Siemens Ag A method of transmitting packet data on a network
TWI246654B (en) * 2003-11-20 2006-01-01 Sunplus Technology Co Ltd Method and system for transmitting data through multi-path bus
US9647952B2 (en) 2004-08-06 2017-05-09 LiveQoS Inc. Network quality as a service
US9189307B2 (en) 2004-08-06 2015-11-17 LiveQoS Inc. Method of improving the performance of an access network for coupling user devices to an application server
US8009696B2 (en) 2004-08-06 2011-08-30 Ipeak Networks Incorporated System and method for achieving accelerated throughput
US7953114B2 (en) 2004-08-06 2011-05-31 Ipeak Networks Incorporated System and method for achieving accelerated throughput
US7675895B2 (en) * 2004-09-14 2010-03-09 Alcatel-Lucent Usa Inc. Method and apparatus for wireless communication using voice over internet protocol
US7882181B2 (en) * 2005-06-03 2011-02-01 Microsoft Corporation Minimizing data transfer from POP3 servers
US9055552B2 (en) 2005-06-16 2015-06-09 Qualcomm Incorporated Quick paging channel with reduced probability of missed page
US8139486B1 (en) * 2005-07-12 2012-03-20 Avaya Inc. Method and system for generating data frames for asynchronous over TCP/IP protocol
CA2621656A1 (en) * 2005-10-04 2007-04-12 Telefonaktiebolaget Lm Ericsson (Publ) Method for providing messaging using appropriate communication protocol
US20070147226A1 (en) * 2005-10-27 2007-06-28 Aamod Khandekar Method and apparatus for achieving flexible bandwidth using variable guard bands
WO2007051026A1 (en) 2005-10-27 2007-05-03 Qualcomm Incorporated A method and apparatus for receiving and processing quickpage block in wireless communication systems
US9171419B2 (en) 2007-01-17 2015-10-27 Touchtunes Music Corporation Coin operated entertainment system
US8332887B2 (en) 2008-01-10 2012-12-11 Touchtunes Music Corporation System and/or methods for distributing advertisements from a central advertisement network to a peripheral device via a local advertisement server
US10290006B2 (en) 2008-08-15 2019-05-14 Touchtunes Music Corporation Digital signage and gaming services to comply with federal and state alcohol and beverage laws and regulations
US20090310526A1 (en) * 2008-06-11 2009-12-17 Qualcomm Incorporated Systems and methods of simultaneous, time-shifted transmission to multiple receivers
WO2010005569A1 (en) 2008-07-09 2010-01-14 Touchtunes Music Corporation Digital downloading jukebox with revenue-enhancing features
US9292166B2 (en) 2009-03-18 2016-03-22 Touchtunes Music Corporation Digital jukebox device with improved karaoke-related user interfaces, and associated methods
US10564804B2 (en) 2009-03-18 2020-02-18 Touchtunes Music Corporation Digital jukebox device with improved user interfaces, and associated methods
KR101748448B1 (ko) 2009-03-18 2017-06-16 터치튠즈 뮤직 코포레이션 엔터테인먼트 서버 및 관련 소셜 네트워킹 서비스
CA2760875C (en) * 2009-05-04 2018-02-27 Nortel Networks Limited Using a variable timer for sending an error indication
CN105354940A (zh) 2010-01-26 2016-02-24 踏途音乐公司 具有改进的用户界面的数字点播设备和相关方法
US10951743B2 (en) 2011-02-04 2021-03-16 Adaptiv Networks Inc. Methods for achieving target loss ratio
US8717900B2 (en) 2011-02-07 2014-05-06 LivQoS Inc. Mechanisms to improve the transmission control protocol performance in wireless networks
US9590913B2 (en) 2011-02-07 2017-03-07 LiveQoS Inc. System and method for reducing bandwidth usage of a network
EP2759126B8 (de) 2011-09-18 2021-03-31 Touchtunes Music Corporation Digitale jukebox mit karaoke- und/oder fotokabinenfunktion und zugehörige verfahren
US9055136B2 (en) 2011-10-13 2015-06-09 Qualcomm Incorporated Controlling streaming delay in networks
US11151224B2 (en) 2012-01-09 2021-10-19 Touchtunes Music Corporation Systems and/or methods for monitoring audio inputs to jukebox devices
US10204178B2 (en) * 2013-02-04 2019-02-12 Authentise Inc. System, method, and program product for digital production management
GB2513344B (en) * 2013-04-23 2017-03-15 Gurulogic Microsystems Oy Communication system utilizing HTTP
US9294584B2 (en) * 2013-06-19 2016-03-22 Cisco Technology, Inc. Transporting serially over TCP/IP using raw TCP encapsulation
JP5979095B2 (ja) * 2013-08-06 2016-08-24 富士ゼロックス株式会社 情報処理システム、情報処理装置及びプログラム
US9921717B2 (en) 2013-11-07 2018-03-20 Touchtunes Music Corporation Techniques for generating electronic menu graphical user interface layouts for use in connection with electronic devices
US9787742B2 (en) * 2014-09-29 2017-10-10 Intel Corporation Optimizing synchronization of audio and network tasks in voice over packet switched networks
US9684798B2 (en) 2015-05-01 2017-06-20 International Business Machines Corporation Audience-based sensitive information handling for shared collaborative documents
CN112565105A (zh) * 2020-12-08 2021-03-26 昆高新芯微电子(江苏)有限公司 一种降低时间敏感帧转发时延的方法、装置及设备

Family Cites Families (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH077975B2 (ja) * 1990-08-20 1995-01-30 インターナショナル・ビジネス・マシーンズ・コーポレイション データ伝送を制御するためのシステムおよび方法
JPH04291435A (ja) * 1991-03-19 1992-10-15 Nec Corp 計算機システム
EP0588932B1 (de) 1991-06-11 2001-11-14 QUALCOMM Incorporated Vocoder mit veraendlicher bitrate
US5258995A (en) * 1991-11-08 1993-11-02 Teknekron Communications Systems, Inc. Wireless communication system
JPH087730B2 (ja) * 1993-06-24 1996-01-29 日本電気株式会社 計算機システム
US5515375A (en) * 1993-07-30 1996-05-07 Motorola, Inc. Method and apparatus for multiplexing fixed length message data and variably coded speech
DE69635289T2 (de) 1995-02-23 2006-04-27 Ntt Docomo Inc. Verfahren zur Übertragung variabler Bitraten und dieses verwendende Sender
TW317058B (en) 1996-04-23 1997-10-01 Ibm Data communication system for a wireless access to an atm network
US6078564A (en) * 1996-08-30 2000-06-20 Lucent Technologies, Inc. System for improving data throughput of a TCP/IP network connection with slow return channel
DE19651593B4 (de) * 1996-12-11 2008-11-20 Rohde & Schwarz Gmbh & Co. Kg Anordnung zum Optimieren der Datenübertragung über einen bidirektionalen Funkkanal
US5953322A (en) 1997-01-31 1999-09-14 Qualcomm Incorporated Cellular internet telephone
US6104726A (en) * 1997-03-31 2000-08-15 Motorola, Inc. Simultaneous transfer of voice and data information using multi-rate vocoder and bit control protocol
US6076161A (en) 1997-08-25 2000-06-13 National Semiconductor Corporation Microcontroller mode selection system and method upon reset
US6064678A (en) 1997-11-07 2000-05-16 Qualcomm Incorporated Method for assigning optimal packet lengths in a variable rate communication system
FI108902B (fi) 1997-12-19 2002-04-15 Nokia Corp Menetelmä ja järjestelmä pakettivälitteiseen tiedonsiirtoon
US6307839B1 (en) * 1997-12-31 2001-10-23 At&T Corp Dynamic bandwidth allocation for use in the hybrid fiber twisted pair local loop network service architecture
KR100255328B1 (ko) * 1998-02-18 2000-05-01 윤종용 음성 신호의 기록/재생이 가능한 이동 무선 전화기 및그 제어 방법
US6076181A (en) * 1998-03-03 2000-06-13 Nokia Mobile Phones Limited Method and apparatus for controlling a retransmission/abort timer in a telecommunications system
US6205498B1 (en) * 1998-04-01 2001-03-20 Microsoft Corporation Method and system for message transfer session management
EP0975123A1 (de) 1998-07-15 2000-01-26 Telefonaktiebolaget L M Ericsson (Publ) Vorrichtung und Verfahren zur zuverlässichen Paketübertragung mit niedriger Verzögerung
US6359877B1 (en) * 1998-07-21 2002-03-19 Telefonaktiebolaget Lm Ericsson (Publ) Method and apparatus for minimizing overhead in a communication system
US6587684B1 (en) 1998-07-28 2003-07-01 Bell Atlantic Nynex Mobile Digital wireless telephone system for downloading software to a digital telephone using wireless data link protocol
US6094423A (en) * 1998-08-03 2000-07-25 Motorola, Inc. Wireless protocol method and apparatus supporting transaction requests with variable length responses
US6301249B1 (en) * 1998-08-04 2001-10-09 Opuswave Networks, Inc Efficient error control for wireless packet transmissions
US6728263B2 (en) * 1998-08-18 2004-04-27 Microsoft Corporation Dynamic sizing of data packets
US6700902B1 (en) * 1998-10-19 2004-03-02 Elster Electricity, Llc Method and system for improving wireless data packet delivery
US6434140B1 (en) * 1998-12-04 2002-08-13 Nortel Networks Limited System and method for implementing XoIP over ANSI-136-A circuit/switched/packet-switched mobile communications networks
FI106758B (fi) 1999-04-16 2001-03-30 Nokia Networks Oy Segmentointimekanismi lohkoenkooderia varten
US6567428B1 (en) * 1999-09-24 2003-05-20 Koninklijke Philips Electronics N.V. Method and system for using low data rate vocorder packets to multiplex signaling packets into a CDMA traffic channel for high quality CDMA voice transmission
US6650652B1 (en) 1999-10-12 2003-11-18 Cisco Technology, Inc. Optimizing queuing of voice packet flows in a network
FR2805112B1 (fr) * 2000-02-11 2002-04-26 Mitsubishi Electric Inf Tech Procede et unite de controle de flux d'une connexion tcp sur un reseau a debit controle

Also Published As

Publication number Publication date
US7522631B1 (en) 2009-04-21
ATE360318T1 (de) 2007-05-15
BR0015014A (pt) 2002-10-01
EP1224787B1 (de) 2007-04-18
CN1158832C (zh) 2004-07-21
ES2337938T3 (es) 2010-04-30
EP1796345A3 (de) 2007-06-27
HK1049244A1 (en) 2003-05-02
EP1224787A1 (de) 2002-07-24
US20030103515A1 (en) 2003-06-05
KR20020070426A (ko) 2002-09-09
DE60034473D1 (de) 2007-05-31
BRPI0015014B1 (pt) 2017-03-14
EP1796345B1 (de) 2010-01-27
US7609716B2 (en) 2009-10-27
CA2387521C (en) 2009-12-15
MXPA02004191A (es) 2002-12-13
JP2003513525A (ja) 2003-04-08
CN1385021A (zh) 2002-12-11
ES2283326T3 (es) 2007-11-01
KR100807463B1 (ko) 2008-02-25
KR100812848B1 (ko) 2008-03-11
KR20070034638A (ko) 2007-03-28
JP4541624B2 (ja) 2010-09-08
CA2387521A1 (en) 2001-05-03
WO2001031887A1 (en) 2001-05-03
ATE456894T1 (de) 2010-02-15
EP1796345A2 (de) 2007-06-13
DE60043792D1 (de) 2010-03-18
HK1049244B (zh) 2005-04-01
AU1344401A (en) 2001-05-08

Similar Documents

Publication Publication Date Title
DE60034473T2 (de) Verfahren und einrichtung zur effizienten datenübertragungskontrolle in einem drahtlosen sprache-über-daten kommunikationssystem
CN1285187C (zh) 数据上叠加语音的通信系统中有效数据发送的方法和设备
DE60035773T2 (de) Datenwiederübertragungsverfahren in einem sprach-über-datenkommunikationssystem
DE69509122T2 (de) Audioübertragungs-vorrichtung und -verfahren
DE60123823T2 (de) Vorrichtungen und Verfahren zur Behandlung von RTP- und TCP-Datenverkehr
DE69432524T2 (de) Verfahren und vorrichtung für ein digitales multimediakommunikationssystem
DE60014852T2 (de) Headerkompression in echtzeitdiensten
DE60217910T2 (de) Effizientes multicasting für paketdatensysteme
DE69532727T2 (de) Verfahren zur Verhandlung von Diensten und Datenraten in einem mobilen Kommunikationssystem
US6721280B1 (en) Method and apparatus for voice latency reduction in a voice-over-data wireless communication system
DE60007090T2 (de) Vorwärtsfehlerkorrektur über multiplexierte cdma kanäle die hohe kodierungsleistung ermöglichen
DE69434607T2 (de) Faksimiledatenübertragungssystem und -Verfahren
EP0847211B1 (de) Verfahren zum Übertragen von Daten, insbesondere von GSM-Daten
DE69833366T2 (de) Gerät zum speichern von sprachmitteilungen in einem schnurlosen telephonsystem
DE102008061741B4 (de) Gemeinsame Nutzung elektromagnetischer Signalmessungen zur Versorgung mit Rückmeldungen über die Signalqualität des Übertragungswegs
DE69735768T2 (de) Verfahren und einrichtung zur übertragung von benutzerdaten und statusinformation einer endgerätschnittstelle
DE60032571T2 (de) Verfahren und Gerät zur Übertragung von Echtzeitdaten in einem Mehrfachzugangssystem
DE60215953T2 (de) Nichttransparente datenübertragung in einem mobilnetzwerk
DE19841531B4 (de) Verfahren zur optimierten Übertragung von multimedialen Diensten in mobilen Kommunikationsnetzen (Mobilfunknetzen)
DE60121668T2 (de) Mobilfunkkommunikationssystem und Verfahren zum Betreiben eines Mobilfunkkommunikationssystems
DE10117695A1 (de) Verfahren zur paketorientierten Übertragung von Daten in einem Kommunikationssystem
DE102004027142A1 (de) Verfahren zur Übertragung von zeitlich hoch priorisierten Daten

Legal Events

Date Code Title Description
8364 No opposition during term of opposition