-
QUERVERWEIS AUF EINE VERWANDTE ANMELDUNG
-
Diese Anmeldung beansprucht die Priorität der am 29. Januar 2009 eingereichten vorläufigen US-Patentanmeldung Nr. 61/148,220, deren gesamte Offenlegung durch diese Erwähnung hierin aufgenommen wird.
-
BEREICH
-
Die Anmeldung betrifft allgemein Kommunikationssysteme und im Besonderen paket-basierte Telekommunikationssysteme.
-
HINTERGRUND
-
Die vorliegende Offenlegung betrifft allgemein Medienströme im Bereich Kommunikationen und im Besonderen im Bereich des Voice-over-Internet-Protocol (VOIP).
-
In VOIP-Systemen kann eine Sprachverbindung aufgebaut werden durch eine zentrale Verbindungssteuerung, die zentral erzeugte Medienströme und Wähltöne von einem zentralen Medien-Gateway aus bereitstellt. Sobald die Verbindung hergestellt ist, werden die Steuerung des Medienstroms sowie der Pfad des Medienstroms zwischen Anrufer und Angerufenem üblicherweise an eine dezentralisierte Konfiguration übertragen. Das Übertragen des Medienstroms an eine dezentralisierte Konfiguration gibt den Medien-Gateway frei. Das Schalten vom zentralisierten zum dezentralisierten Medienstrom kann ein hörbares Knacken verursachen, wenn der Gesprächspfad zwischen Anrufer und Angerufenem für eine kurze Zeitspanne unterbrochen wird. Der Hauptgrund für das Knacken liegt darin, dass der Medienstrom (RTP-Strom) des Medien-Gateways (z. B. das VoIP-Board im Medien-Gateway) gestoppt wird und das Telefon des Anrufers seinen Medienstrom direkt an das Telefon des Angerufenen sendet (auch Umschaltung genannt), und umgekehrt. Aus diesem Grund müssen die Jitter-Puffer beider Telefone neu synchronisiert werden, was ein hörbares Knacken verursachen kann, das für den Zuhörer oder Zuseher unangenehm sein kann.
-
Die fehlende Synchronisation beruht auf einer Differenz bei der zeitlichen Steuerung der von einem Knoten (z. B. dem Telefon eines Anrufers, dem Telefon eines Angerufenen, einem Medien-Gateway) empfangenen Pakete infolge Netzwartezeitabweichung, Netzüberlastung, Drift der zeitlichen Steuerung, Paketleitwegänderungen und Verarbeitungsverzögerungen des Medien-Gateways. Die fehlende Synchronisation zwischen einem eingehenden zentralisierten und dezentralisierten Medienstrom führt zu anomalen Daten beim Umschalten. Die anomalen Daten können dazu führen, dass Aspekte eines gesprochenen Gesprächs während dieses Umschaltens verlorengehen und dass deshalb Teile des Gesprächs wiederholt werden müssen.
-
Einige derzeitige Systeme vermeiden das Knacken während des Umschaltens, indem sie von Anfang an dezentralisierte Medienströme verwenden. Derartige Systeme sind beispielsweise aus der
US 2007/0008928 A1 , der
US 2002/0085516 A1 und der
US 2008/0089289 A1 bekannt. Das wirft jedoch andere Probleme auf, da vom Medien-Gateway kommende Wähltöne nicht mehr verwendet werden können, was bedeutet, dass jedes IP-Telefon die örtlichen Töne unterstützen muss. Wenn Ansagen abgespielt werden sollen (z. B. von einem örtlichen Betreiber), so versagt diese Umgehungsmöglichkeit, und somit muss ein zentraler Medien-Gateway verwendet werden.
-
Bestimmte Ausführungsformen der vorliegenden Offenlegung befassen sich mit diesen und anderen Problemen.
-
ZUSAMMENFASSUNG
-
Die vorliegende Offenlegung ist auf die Synchronisation paralleler Medienströme gerichtet.
-
In einer ersten Ausführungsform wird ein Verfahren angegeben, das folgende Schritte umfasst:
- (a) Aufbau, mittels eines Medien-Gateways, eines zwischen einem ersten und einem zweiten Endpunkt und durch den Medien-Gateway fließenden zentralisierten Medienstroms;
- (b) Aufbau eines zwischen dem ersten und dem zweiten Endpunkt fließenden, jedoch den Medien-Gateway umgehenden dezentralisierten Medienstroms, wobei sich der zentralisierte und der dezentralisierte Medienstrom zeitlich überschneiden;
- (c) Bereitstellung, durch den Medien-Gateway, von Synchronisationsinformationen für den ersten und/oder zweiten Endpunkt und Synchronisation, durch den ersten und/oder zweiten Endpunkt, des zentralisierten und des dezentralisierten Medienstroms; und
- (d) als Antwort auf Schritt (c), Abschaltung, durch den ersten und/oder zweiten Endpunkt, des zentralisierten Medienstroms unter Beibehaltung des dezentralisierten Medienstroms.
-
In einer zweiten Ausführungsform wird ein Medien-Gateway angegeben, der einen Prozessor umfasst, der folgende Funktionen ausführen kann:
- (a) Aufbau eines zwischen einem ersten und einem zweiten Endpunkt und durch den Medien-Gateway fließenden zentralisierten Medienstroms;
- (b) Aufbau eines zwischen dem ersten und dem zweiten Endpunkt fließenden, jedoch den Medien-Gateway umgehenden dezentralisierten Medienstroms, wobei sich der zentralisierte und der dezentralisierte Medienstrom zeitlich überschneiden;
- (c) Bereitstellung von Synchronisationsinformationen für den ersten und/oder zweiten Endpunkt, um eine Synchronisation des zentralisierten und des dezentralisierten Medienstroms durch den ersten und/oder zweiten Endpunkt zu ermöglichen; und
- (d) nach Abschluss der Synchronisation, Abschaltung des zentralisierten Medienstroms zugunsten des dezentralisierten Medienstroms.
-
In einer dritten Ausführungsform wird ein Endpunkt angegeben, der Folgendes umfasst:
- (a) eine Netzkommunikationsschnittstelle, die in Kommunikation steht mit einem durch einen Medien-Gateway fließenden und an einem fernen Endpunkt endenden zentralisierten Medienstrom und einem an dem fernen Endpunkt endenden und den Medien-Gateway umgehenden dezentralisierten Medienstrom, wobei der zentralisierte und der dezentralisierte Medienstrom gleichzeitig aktiv sind;
- (b) eine Verbindungssteuerung, die in der Lage ist, Synchronisationsinformationen vom Medien-Gateway zu empfangen und den zentralisierten und den dezentralisierten Medienstrom zu synchronisieren, um ein Umschalten vom zentralisierten Medienstrom auf den dezentralisierten Medienstrom zu ermöglichen.
-
Die Synchronisation kann das hörbare Knacken aufgrund des Schaltens vom zentralisierten Medienstrom auf den dezentralisierten Medienstrom wesentlich minimieren, weil die Informationen beider Medienströme für ein nahtloses Umschalten verwendet werden. Die Synchronisation wird typischerweise vom Medien-Gateway vorgenommen, der die Differenz zwischen dem von einem Sprach-Endpunkt (z. B. einem Telefon) am Gateway eingehenden Medienstrom (z. B. dem Realtime Transport Protocol (”RTP”)) und dem vom Medien-Gateway an den anderen Sprach-Endpunkt ausgehenden Medienstrom berechnet. Die Synchronisationsinformationen, die typischerweise nicht nur die berechnete Differenz, sondern auch die Synchronisationsquellenkennung (”SSRC”) des anderen Endpunkts beinhaltet, wird durch ein Signalisierungsprotokoll, wie zum Beispiel das Remote Access Service (”RAS”)-Protokoll, an einen oder beide Sprach-Endpunkte gesendet. Die Differenz besteht typischerweise zwischen den Paket-Zeitstempeln und den Satznummern für ein gemeinsames Paket (oder ein Paket mit derselben Nutzinformation), das der Gateway von einem Endpunkt empfängt und das der Gateway an den anderen Endpunkt sendet. Mit Hilfe der berechneten Differenz können der zentralisierte und der dezentralisierte Medienstrom innerhalb des Jitter-Puffers eines Sprach-Endpunkts neu synchronisiert werden. Der Sprach-Endpunkt ermittelt im Allgemeinen den richtigen Zeitpunkt, um vom zentralisierten auf den dezentralisierten Medienstrom umzuschalten, so dass der Gesprächspfad zwischen den beiden Parteien nicht unterbrochen wird.
-
Es kann eine oder mehrere Voraussetzungen für die Synchronisation geben. Eine erste Voraussetzung besteht darin, dass der zentralisierte und der dezentralisierte Medienstrom, nachdem die Signalisierungsnachricht zum Umschalten abgesendet wurde, eine kurze Zeit lang parallel aufrechterhalten werden. Eine zweite Voraussetzung besteht darin, dass die Differenz zwischen dem eingehenden und dem ausgehenden Medienstrom für ein einzelnes abgefragtes Audio-Datum (oder eine Paket-Nutzinformation) innerhalb des Gesprächspfades berechnet wird. Eine dritte Voraussetzung besteht darin, dass der zentralisierte und der dezentralisierte Medienstrom eine kurze Zeit lang gleichzeitig aktiv sein müssen.
-
Bei ordnungsgemäßer Durchführung kann die Synchronisation im Jitter-Puffer verhindern, dass der Gesprächspfad zwischen Anrufer und Angerufenem infolge des Umschaltens vom Medienstrom des Gateways auf den direkt zwischen den Sprach-Endpunkten von Anrufer und Angerufenem fließenden Medienstrom für kurze Zeit unterbrochen wird.
-
Die Zusammenfassung erhebt keinen Anspruch darauf, repräsentativ für den vollen Umfang der vorliegenden Offenlegung zu sein, und ist auch nicht so auszulegen. Die vorliegende Offenlegung wird in der Zusammenfassung sowie in den beigefügten Zeichnungen und in der ausführlichen Beschreibung in verschiedenen Detailstufen dargelegt, und mit dem Aufnehmen oder Nichtaufnehmen von Elementen, Komponenten, usw. in diese Zusammenfassung ist keine Einschränkung des Umfangs der vorliegenden Offenlegung beabsichtigt. Zusätzliche Aspekte der vorliegenden Offenlegung gehen leichter aus der ausführlichen Beschreibung hervor, insbesondere im Zusammenhang mit den Zeichnungen.
-
KURZE BESCHREIBUNG DER ZEICHNUNGEN
-
1 zeigt eine allgemeine Netztopologie einer Ausführungsform der vorliegenden Offenlegung.
-
2A zeigt typische Elemente, die in einer Ausführungsform der vorliegenden Offenlegung an einem Endpunkt vorhanden sein können.
-
2B zeigt typische Elemente, die in einer Ausführungsform der vorliegenden Offenlegung an einem Medien-Gateway vorhanden sein können.
-
3 zeigt einen zentralisierten Medienstrom.
-
4 zeigt einen parallelen Medienstrom, der einen zentralisierten Medienstrom und einen dezentralisierten Medienstrom umfasst.
-
5 zeigt einen dezentralisierten Medienstrom.
-
6 zeigt ein Ablaufdiagramm des Prozesses in einer Ausführungsform der vorliegenden Offenlegung.
-
7 zeigt ein Ablaufdiagramm eines Aspekts des Prozesses in einer Ausführungsform der vorliegenden Offenlegung.
-
8 zeigt ein Ablaufdiagramm des Prozesses in einer Ausführungsform der vorliegenden Offenlegung.
-
9 zeigt ein Ablaufdiagramm des Prozesses in einer Ausführungsform der vorliegenden Offenlegung.
-
Die beiliegenden Zeichnungen, die in die Patentschrift aufgenommen sind und einen Teil davon darstellen, veranschaulichen Ausführungsformen der Offenlegung und dienen, zusammen mit der obigen allgemeinen Beschreibung der Offenlegung und der folgenden ausführlichen Beschreibung der Zeichnungen, der Erklärung der Grundsätze der hier offengelegten Ausführungsformen.
-
Es ist zu verstehen, dass die Zeichnungen nicht unbedingt maßstabsgerecht sind. In bestimmten Fällen können Einzelheiten, die für ein Verständnis der Offenlegung nicht erforderlich sind oder die es erschweren, andere Einzelheiten zu erkennen, entfallen sein. Es ist natürlich zu verstehen, dass die Offenlegung nicht unbedingt auf die speziellen hier veranschaulichten Ausführungsformen begrenzt ist.
-
AUSFÜHRLICHE BESCHREIBUNG
-
Es werden hier ein System und ein Verfahren zum nahtlosen Umschalten von zentralisiertem auf dezentralisiertes Medien-Streaming in paketbasierten Telekommunikationssystemen beschrieben. Ein solches System und Verfahren zum Umschalten kann in einem weiten Bereich von Kommunikationsgeräten verwendet werden.
-
Zwar gibt die vorliegende Offenlegung mehrere Ausführungsformen der vorliegenden Offenlegung an, der Fachmann wird jedoch verstehen, dass die hier beschriebenen Ausführungsformen die Offenlegung nicht auf nur diese Ausführungsformen beschränken sollen. Die vorliegende Offenlegung soll Alternativen, Abänderungen und gleichwertige Ausführungsformen beinhalten, die im Gedanken und Umfang der durch die weiter unten genannten Ansprüche definierten Offenlegung enthalten sein können.
-
Mit Bezug auf 1 wird eine allgemeine Netztopologie 100 für eine Ausführungsform der vorliegenden Offenlegung angegeben. Der VOIP-Endpunkt A 110 ist eines der allgemeinen Anwenderschnittstellengeräte, die in der Lage sind, Sprachkommunikationen über ein IP-Netz, wie zum Beispiel das Internet oder andere paketvermittelte Netze, zu liefern. Der durchschnittliche Fachmann wird erkennen, dass der Endpunkt A 110 nicht unbedingt ein dediziertes Gerät sein muss, sondern auch zum Beispiel Folgendes sein kann: ein Softphone, welches ein von einem Allzweckrechner ausgeführtes Software-Programm ist (z. B. ein IP-Softphone von Avaya Inc.), ein Personal Digital Assistant (PDA), ein PC, ein Laptop, ein H.323-Tischtelefon, ein paketbasiertes H.320-Videotelefon und Konferenzeinheit, paketbasierte Sprachnachrichten- und Antworteinheiten, ein Peer-to-Peer-basiertes Kommunikationsgerät und paket-basierte herkömmliche Computer-Telefonie-Integrationsgeräte (d. h. Adjunkts). Der VOIP-Endpunkt B 120 ist ein dem Gerät von Endpunkt A 110 ähnliches, jedoch nicht unbedingt mit ihm identisches Gerät. Der Medien-Gateway 130 ist jegliches geeignete Gateway-Gerät, das den Ingress in ein entsprechendes Netz und den Egress aus einem entsprechenden Netz steuert. Gateways können zwischen den Komponenten in den Räumlichkeiten eines Unternehmens und dem Wide Area Netzwork logisch positioniert sein, um Kommunikationen, die zwischen dem geeigneten Schalter/Server und dem zweiten Netz laufen, zu verarbeiten. Gateways können die Funktionen einer elektronischen Verstärkerstation beinhalten, welche elektrische Signale von einem Netz zu einem anderen Netz (z. B. von einem Wide Area Network (WAN) zu einem entsprechenden Local Area Network (LAN)) und umgekehrt, abfängt und lenkt sowie eine Code- und Protokoll-Umwandlung vornimmt. Zusätzlich kann der Gateway verschiedene Sicherheitsfunktionen ausführen, wie zum Beispiel Netzadressenübersetzung, sowie Aufbau und Verwendung sicherer Tunnels, um die Fähigkeiten eines virtuellen privaten Netzes zu bieten. In einigen Protokollen überbrückt der Gateway Konferenzen zu anderen Netzen, Kommunikationsprotokollen und Multimedia-Formaten. Das Netz 140 wird dargestellt in Kommunikation mit den Endpunkten A und B 110, 120 und dem Medien-Gateway 130. Das Netz 140 ist ein Computer-Netz, das Daten durch Paketvermittlung austauscht. Das Netz 140 kann aus mehrfachen miteinander in Kommunikation stehenden Geräten bestehen und kann zum Beispiel ein LAN, ein WAN, das Internet und ein drahtloses Netz beinhalten.
-
2A zeigt typische Elemente, die in einer Ausführungsform der vorliegenden Offenlegung an einem Endpunkt A und B 110, 120 vorhanden sein können, einschließlich eines digitalen Signalprozessors 208, eines Analog-Digital-Wandlers 204, eines Digital-Analog-Wandlers 212, einer Verbindungssteuerung 216, eines Pufferspeichers 220, eines Puffer-Controllers 224, eines Packetizers/Depacketizers 228 und einer Netzkommunikationsschnittstelle 232. Der digitale Signalprozessor 208 ist das Verarbeitungszentrum des Endpunkts, das Maschinenbefehle ausführt und logische Operationen durchführt. Die Wandler 204, 212 sind Komponenten, die Signale von analoger in digitale Form und umgekehrt umwandeln. Der Puffer-Controller 224 ist die Komponente, die den Pufferspeicher 220 steuert. Der Pufferspeicher 220 kann entweder ein Jitter-Puffer oder ein De-Jitter-Puffer sein, der verwendet wird, um Jitter, der durch paketvermittelte Netze eingeführt wird, entgegenzuwirken, so dass ein kontinuierliches Playout eines über das Netz 140 übertragenen Medien-Stroms gewährleistet werden kann.
-
Jitter ist eine Schwankung in der Laufzeit empfangener Pakete. Auf der Sendeseite werden die Pakete in einem kontinuierlichen Strom gesendet, mit einer gleichmäßigen Übertragungsgeschwindigkeit, bei der die Pakete gleichmäßige Abstände voneinander haben. Aufgrund von Netzüberlastung, nicht ordnungsgemäßem Bilden von Warteschlangen oder Konfigurationsfehlern kann dieser stetige Strom unterbrochen oder diskontinuierlich werden, und die Laufzeit zwischen den Paketen kann variieren anstatt konstant zu bleiben. Der Pufferspeicher 220 löst dieses Problem, indem er eingehende Pakete durch vorübergehendes Speichern (Puffern) der empfangenen Pakete absichtlich verzögert, um die Auswirkung von Laufzeitschwankungen zwischen den Paketen zu minimieren und die empfangenen Pakete in der richtigen Reihenfolge abzuspielen. Zu spät eingehende Pakete werden verworfen. Der Packetizer/Depacketizer 228 ist eine Komponente, die sich im Allgemeinen in der zwischen der Sitzungsschicht und der Netzschicht liegenden Transportschicht des OSI-Vernetzungsmodells befindet und die Paketbildung von Daten in diskrete Segmente (Pakete) zur Übertragung über ein Netz abwickelt. Die Netzkommunikationsschnittstelle 232 ist die Komponente, welche die physische Schnittstelle zwischen dem Endpunkt 110, 120 und dem Netz darstellt; sie kann zum Beispiel eine Netzschnittstellenkarte, einen Funksender, eine Funkantenne und ein Infrarotgerät beinhalten. Die Verbindungssteuerung 216 ist die Komponente in den Endpunkten 110, 120, welche die Berechnungen und die Synchronisationslogik durchführt, welche den Endpunkt 110, 120 befähigt, von zentralisierten auf dezentralisierte Medienströme umzuschalten. Speziell führt die Verbindungssteuerung 216 die in 9 beschriebenen Schritte aus und kommuniziert mit dem Puffer-Controller 224 und dem Packetizer/Depacketizer 228, um die Umschaltung vorzunehmen.
-
2B zeigt typische Elemente, die in einer Ausführungsform der vorliegenden Offenlegung in einem Medien-Gateway 130 vorhanden sein können, einschließlich eines Gateway-Controllers 254, eines digitalen Signalprozessors 258, eines Speichers 262, eines zentralen Synchronisationsmoduls 266, eines Pufferspeichers 270, eines Puffer-Controllers 274, eines Packetizers/Depacketizers 278 und einer Netzkommunikationsschnittstelle 282. Der Gateway-Controller 254 ist eine Komponente, welche die Gesamtbefehle für den Medien-Gateway 130 ausführt. Der Controller 254 ist die Komponente, über die eine übergeordnete Unternehmenskomponente (z. B. eine Komponente für die Ressourcen-Planung des Unternehmens, ein Failover-Controller, eine Lastausgleichskomponente) mit dem Medien-Gateway 130 kommunizieren kann, oder über die der Gateway 130 mit anderen Medien-Gateway-Controllern in einer verteilten Architektur kommunizieren kann. Ebenso wie der digitale Signalprozessor 208 ist der digitale Signalprozessor 258 das Verarbeitungszentrum des Medien-Gateways 130, das Maschinenbefehle ausführt und logische Operationen durchführt. Der Speicher 262 ist ein elektronischer Speicherbereich für Anwendungsdaten. Ähnlich dem Puffer-Controller 224 ist der Puffer-Controller 274 die Komponente, die den Pufferspeicher 270 steuert. Ebenso ist der Pufferspeicher 270 ähnlich dem weiter oben beschriebenen Pufferspeicher 220; der Packetizer/Depacketizer 278 ist ähnlich dem weiter oben beschriebenen Packetizer/Depacketizer 228, und die Netzkommunikationsschnittstelle 282 ist ähnlich der weiter oben beschriebenen Netzkommunikationsschnittstelle 232. Das zentrale Synchronisationsmodul 266 ist die Komponente im Medien-Gateway 130, welche die Berechnungen zwischen den Medienströmen durchführt, wie für 3 beschrieben, sowie die Synchronisationslogik, wie in 6 und 7 beschrieben, welche die Endpunkte 110, 120 befähigt, von zentralisierten auf dezentralisierte Medienströme umzuschalten. Das zentrale Synchronisationsmodul 266 ermittelt auch den Punkt, an dem der Medien-Gateway 130 die zentralisierten Medienströme schließen kann.
-
3 zeigt einen zentralisierten Medienstrom 300. Diese Figur zeigt die allgemeinen Aspekte einer Kommunikation über zentralisierte Medienströme zwischen zwei VOIP-Endpunkten A und B 110, 120, die über einen Medien-Gateway 130 läuft. Die Kommunikation erfolgt im Allgemeinen über vier Medienströme 304, 308, 312 und 316. Wie durch die Pfeile angedeutet wird, überträgt der Endpunkt B 120 mit dem Strom 304 Daten zum Medien-Gateway 130. Der Medien-Gateway 130 überträgt mit dem Strom 308 Daten zum Endpunkt A 110. Der Endpunkt A 110 überträgt mit dem Strom 312 Daten zum Medien-Gateway 130. Der Medien-Gateway 130 überträgt mit dem Strom 316 Daten zum Endpunkt B 120. Die Figur zeigt Aspekte eines Pakets im Strom 304, wie zum Beispiel den Zeitstempel, die Satznummer und die Synchronisationsquelle (SSRC). Die Figur zeigt die entsprechenden Daten in einem Paket im Strom 308 mit Aspekten wie zum Beispiel Zeitstempel, Satznummer und SSRC. Die Figur zeigt Zeitstempel, Satznummer und SSRC eines Pakets im Strom 312 und die entsprechenden Informationen für ein dieselben Daten enthaltendes Paket im Strom 316. Diese Figur veranschaulicht, dass sich die zwischen den Endpunkten A und B 110, 120 kommunizierten Daten in vier Strömen oder mindestens zwei getrennt verhandelten Sitzungen befinden. 3 zeigt ferner eine Differenz bei Zeitstempel, Satznummer und SSRC für Pakete, die denselben Daten entsprechen. Zum Beispiel wird ein vom Endpunkt B 120 mit dem Strom 304 übertragenes Paket mit einem Zeitstempel gleich 332211, einer Satznummer gleich 101 und einer SSRC gleich 1111 vom Medien-Gateway 130 empfangen. Das Paket wird eventuell geprüft, wird dann umgepackt und mit einem Zeitstempel gleich 12345, einer Satznummer gleich 67 und einer SSRC gleich 8901 im Strom 308 übertragen. Die Differenz zwischen den zwei Paketen in den Strömen 304 und 308 ist eine Zeitstempeldifferenz von 319866 und eine Satznummerndifferenz von 34. Ein vom Endpunkt A 110 mit dem Strom 312 übertragenes Paket wird mit einem Zeitstempel gleich 43212, einer Satznummer gleich 889 und einer SSRC gleich 2222 vom Medien-Gateway 130 empfangen. Das Paket wird ebenfalls eventuell geprüft, wird dann umgepackt und mit einem Zeitstempel gleich 89123, einer Satznummer gleich 45 und einer SSRC gleich 6666 im Strom 316 übertragen. Die Differenz zwischen den zwei Paketen in den Strömen 312 und 316 ist eine Zeitstempeldifferenz von –45911 und eine Satznummerndifferenz von 844. Der Begriff ”Synchronisationsinformationen”, wie er hier verwendet wird, bedeutet die Einbeziehung der hier beschriebenen Differenzberechnungen sowie jeglicher Bezugsdaten, die von einem Endpunkt A oder B 110, 120 benötigt werden könnten oder vom Medien-Gateway 130 verwendet werden könnten, um die Differenzberechnungen in einen Kontext zu setzen.
-
4 zeigt eine parallele Medienstromkonfiguration 400, die einen zentralisierten Medienstrom und einen dezentralisierten Medienstrom umfasst. Zusätzlich zu den Medienströmen 304, 308, 312 und 316 veranschaulicht die Figur, dass der Endpunkt B 120 mit dem Strom 404 Daten zum Endpunkt A 110 überträgt und der Endpunkt A 110 mit dem Strom 408 Daten zum Endpunkt B 120 überträgt. Der durchschnittliche Fachmann wird erkennen, dass die in der Figur dieser Ausführungsform dargestellten sechs Medienströme aus Paketdaten bestehen.
-
5 zeigt eine dezentralisierte Medienstromkonfiguration 500, die nur die Medienströme 404 und 408 besitzt. In einer dezentralisierten Konfiguration sind die zentralisierten Ströme 304, 308, 312 und 316 geschlossen worden oder alternativ gar nicht erst gebildet worden, und der Medien-Gateway 130 ist an der Medienstromkommunikation zwischen den Endpunkten A und B 110, 120 nicht beteiligt.
-
Der durchschnittliche Fachmann wird erkennen, dass in einer Ausführungsform der vorliegenden Offenlegung die Kommunikation zwischen den Endpunkten A und B 110, 120 und dem Medien-Gateway 130 in 3, 4 und 5 über das Netz 140 erfolgt.
-
6 zeigt ein Ablaufdiagramm des Prozesses 600 in einer Ausführungsform der vorliegenden Offenlegung. Im ersten Schritt 604 leitet der vom Anrufer betriebene Endpunkt A 110 eine Verbindung ein. Bei Schritt 608 verhandelt der Endpunkt A 110 eine Sitzung mit dem Medien-Gateway 130. Bei Schritt 612 verhandelt der Medien-Gateway 130 eine Sitzung mit dem vom Angerufenen betriebenen Endpunkt B 120. Der Fachmann wird erkennen, dass die vorgenannten Sitzungen mit Hilfe bekannter Verfahren und Protokolle, einschließlich, zum Beispiel, des Real Time Protocol (”RTP”) und des Real Time Control Protocol (”RTCP”) aufgebaut werden können. Bei Schritt 616 ermittelt der Medien-Gateway 130, ob es möglich ist, auf einen dezentralisierten Medienstrom umzuschalten. Die Ermittlung bei 616 wird weiter unten in der Beschreibung von 7 näher erläutert. Wird ermittelt, dass es nicht möglich ist, umzuschalten, endet der Prozess 600. Wird ermittelt, dass es möglich ist, umzuschalten, fordert der Medien-Gateway 130 in Schritt 628 die Endpunkte A und B 110, 120 auf, eine parallele, dezentralisierte Sitzung einzuleiten. Der durchschnittliche Fachmann wird erkennen, dass diese Kommunikation bei 628 die notwendigen Informationen enthalten kann, um den Endpunkten zu gestatten, die unabhängige Sitzung aufzubauen, einschließlich, zum Beispiel, der Adressinformationen über den anderen Endpunkt. Bei Schritt 632 bauen die Endpunkte A und B 110, 120 einen parallelen Medienstrom (d. h. einen dezentralisierten Medienstrom) auf und schaffen dadurch die in 4 gezeigte Konfiguration mit gleichzeitigem Betrieb sowohl zentralisierter als auch dezentralisierter Medienströme. Bei Schritt 618 fordert das zentrale Synchronisationsmodul 266 die Parameter des jeweiligen Medienstroms an. Bei Schritt 620 berechnet das zentrale Synchronisationsmodul 266 die Differenzen bei Zeitstempel und Satznummern, wie in 3 anhand eines Beispiels erläutert wird. Bei Schritt 624 teilt der Medien-Gateway 130 der Verbindungssteuerung 216 der Endpunkte A und B 110, 120 die berechneten Differenzinformationen mit. Bei Schritt 636 verwendet die Verbindungssteuerung 216 der Endpunkte A und B 110, 120 die eingehenden Medienströme 308 und 316 zusammen mit den mitgeteilten Differenzinformationen, um die zeitliche Steuerung für ein nahtloses Schalten zu ermitteln. Die Ermittlung bei 636 wird in der folgenden Beschreibung von 9 näher erläutert. Bei Schritt 640 schalten die Endpunkte A und B 110, 120 auf die entsprechenden dezentralisierten Medienströme 404 bzw. 408. Der Fachmann wird erkennen, dass dieses Schalten nicht unbedingt gleichzeitig von den Endpunkten A und B 110, 120 vorgenommen werden muss und dass der Endpunkt A 110, der den Strom 308 empfängt, zu einem Zeitpunkt auf den Strom 404 schalten kann, der unabhängig davon ist, dass der Endpunkt B 120 vom Strom 316 auf den Strom 408 schaltet. Bei Schritt 644 werden die zentralisierten Ströme 304, 308, 312 und 316 vom Medien-Gateway 130 geschlossen, wodurch die vollkommen dezentralisierte Konfiguration geschaffen wird, wie in 5 an einem Beispiel erläutert wird. Die Schritte 648, 652 und 656 geben alternative Schritte zu Schritt 644 an, die erfolgen können, um das Schließen des zentralisierten Medienstroms zu bewirken, einschließlich des Schließens eines Medienstroms nach einer vorgegebenen Anzahl von Paketen N bei 648, des Schließens eines Medienstroms nach einer vorgegebenen Zeit T bei 652 und der von einem Endpunkt stammenden Signalisierung zum Schließen eines Medienstroms bei 656. Die von einem Endpunkt stammende Signalisierung bei Schritt 656 kann ein nach dem Stand der Technik bekanntes Signal zum Schließen des speziellen Medienstroms umfassen. Dieses Signal kann vom signalisierenden Endpunkt auf dezentralisierte Weise direkt dem entsprechenden Endpunkt mitgeteilt werden, oder das Signal kann im Rahmen der Sitzungsverhandlung dem entsprechenden Endpunkt auf zentralisierte Weise mitgeteilt werden. Das Schließen eines zentralisierten Medienstroms kann auch eine Kombination der obigen Schritte 644, 648, 652 und 656 sein. Der Fachmann wird erkennen, dass die zentralisierten Ströme 304 und 308 unabhängig von den zentralisierten Strömen 312 und 316 geschlossen werden können.
-
In einer alternativen Ausführungsform der vorliegenden Offenlegung können die Schritte des Ablaufs 600 in anderer Reihenfolge verarbeitet werden. Speziell kann der Medien-Gateway 130 nach der Ermittlung bei Schritt 616 anschließend die Berechnung der Synchronisationsinformationen bei Schritt 620 ausführen. Der Medien-Gateway 130 kann dann bei Schritt 624 die Differenzinformationen an die Endpunkte A und B 110, 120 übertragen und danach den Endpunkten befehlen, bei 628 parallele Sitzungen einzuleiten. Dann bauen die Endpunkte bei Schritt 632 einen dezentralisierten Strom auf. Der durchschnittliche Fachmann wird erkennen, dass andere Aspekte des Ablaufs 600 in anderer Reihenfolge erfolgen können, dass bestimmte Schritte des Ablaufs 600 auch gleichzeitig ausgeführt werden können und dass bestimmte Schritte zusammengefasst werden können. Speziell kann in einer weiteren Ausführungsform der vorliegenden Offenlegung der Aufbau eines parallelen dezentralisierten Strom durch die Endpunkte A und B 110, 120 bei Schritt 632 erfolgen, während die Berechnung der Synchronisationsinformationen bei Schritt 620 durch den Medien-Gateway 130 ausgeführt wird. In einer weiteren Ausführungsform der vorliegenden Offenlegung können die Übertragung der Synchronisationsinformationen bei Schritt 624 und der Befehl bei Schritt 628 in einem einzigen Schritt zusammengefasst werden (d. h. die Endpunkte A und B 110, 120 können die Synchronisationsinformationen als impliziten Befehl, eine parallele Sitzung einzuleiten, interpretieren).
-
7 zeigt ein Ablaufdiagramm 700 mit den Einzelheiten von Schritt 616 in einer Ausführungsform der vorliegenden Offenlegung. Bei Schritt 704 wird ermittelt, ob die Sitzung zwischen dem Endpunkt A 110 und dem Medien-Gateway 130 eine VOIP-Sitzung ist und ob die Sitzung zwischen dem Endpunkt B 120 und dem Medien-Gateway 130 eine VOIP-Sitzung ist. Ist zumindest eine Sitzung keine VOIP-Sitzung, endet der Prozess bei Schritt 728, und ein Schalten auf dezentralisiertes Streaming ist nicht möglich. Sind beide Sitzungen VOIP, so wird bei Schritt 708 ermittelt, ob die in einem einzigen Strompfad verwendeten Codecs identisch sind. Zum Beispiel wird mit Bezug auf 3 der im Strom 304 verwendete Codec mit dem im Strom 308 verwendeten Codec verglichen; entsprechend wird der im Strom 312 verwendete Codec mit dem im Strom 316 verwendeten Codec verglichen. Im Falle einer Fehlanpassung der Codecs unter den jeweiligen Strömen wird bei Schritt 720 eine Sitzung neu verhandelt, um den Codec zu harmonisieren. Der Begriff ”harmonisieren”, wie er hier verwendet wird, bedeutet ”gleichmachen”. Zum Beispiel werden für den Vergleich der Codecs bei Schritt 708 die Codecs von zwei Sitzungen harmonisiert, indem derselbe Codec für beide Sitzungen verwendet wird. Ist bei Schritt 724 die Neuverhandlung erfolgreich, kehrt der Prozess zu Schritt 708 zurück. Sind die Codecs harmonisiert, so wird bei Schritt 712 ermittelt, ob die in einem einzigen Strompfad verwendeten Rahmengrößen identisch sind. Zum Beispiel wird ebenfalls mit Bezug auf 3 die im Strom 304 verwendete Rahmengröße mit der im Strom 308 verwendeten Rahmengröße verglichen; und die Rahmengröße von Strom 312 wird mit der Rahmengröße von Strom 316 verglichen. Im Falle einer Fehlanpassung der Rahmengrößen wird bei Schritt 720 eine Sitzung neu verhandelt, um die Rahmengröße zu harmonisieren. Sind die Rahmengrößen harmonisiert, so wird bei Schritt 716 ermittelt, ob die eventuell verschlüsselten Sitzungen harmonisiert sind. Wird eine verschlüsselte Sitzung erkannt, so kann bei Schritt 720 eine Sitzung neu verhandelt werden, um zwischen den Strömen 304 und 308 sowie zwischen den Strömen 312 und 316 den geeigneten Schlüsselaustausch vorzunehmen und die Verschlüsselung zu harmonisieren. Sind die verschlüsselten Sitzungen harmonisiert, so ist ein dezentralisiertes Streaming möglich. In diesem Fall kann die Harmonisierung verschlüsselter Sitzungen zum Beispiel den Austausch von Schlüsseln in einem öffentlichen Schlüssel, ein Einweg-Verschlüsselungs-Szenario oder den Aufbau eines sicheren Kanals im Falle von ”Pre-shared Keys” (zuvor vereinbarten und gemeinsam genutzten Schlüsseln) beinhalten. Die unterschiedlichen Arten der Harmonisierung der Sitzungen sind abhängig von den zwischen den Endpunkten A und B 110, 120 und dem Medien-Gateway 130 bestehenden Sicherheitsprotokollen und Richtlinien. Der Fachmann wird die erforderlichen Schritte zur Durchführung der Harmonisierung zwischen sicheren Sitzungen erkennen. Ist eine der Neuverhandlungen bei Schritt 720 nicht erfolgreich, so endet der Prozess bei Schritt 728, und ein Schalten auf dezentralisiertes Streaming ist nicht möglich. Der Prozess 700 ist eine Ausführungsform der vorliegenden Offenlegung, und es ist zu verstehen, dass der Fachmann verschiedene Konfigurationen der Schritte erkennen wird, um auf dieselbe Weise zu ermitteln, ob eine dezentralisierte Medienstromkonfiguration 500 möglich ist.
-
8 zeigt ein Ablaufdiagramm, das den Prozess 600 in einer Ausführungsform der vorliegenden Offenlegung anhand eines Beispiels erläutert, wobei die Prozessschritte in Spalten dargestellt sind, welche die den jeweiligen Schritt des Prozesses 600 durchführende Komponente (z. B. die Endpunkte A und B 110, 120 und den Medien-Gateway 130) angeben.
-
9 zeigt ein Ablaufdiagramm 900 mit den Einzelheiten von Schritt 636 in einer Ausführungsform der vorliegenden Offenlegung. Bei Schritt 904 erkennt der Endpunkt ein Paket im Pufferspeicher 220 für den zentralisierten Medienstrom 308, 316. Das erkannte Paket kann jegliches Paket im Pufferspeicher 220 für den zentralisierten Medienstrom sein, vorzugsweise jedoch ein Paket, das noch nicht vom Endpunkt verarbeitet wurde. Bei Schritt 908 berechnet der Endpunkt das entsprechende Paket im dezentralisierten Medienstrom 404, 408, das dem im zentralisierten Medienstrom 308 bzw. 316 erkannten Paket entspricht. Bei Schritt 912 lokalisiert der Endpunkt das berechnete Paket im Pufferspeicher 220 für den dezentralisierten Medienstrom. Bei Schritt 916 wird ermittelt, ob das berechnete Paket im dezentralisierten Pufferspeicher vorhanden ist. Wird festgestellt, dass das Paket nicht im Pufferspeicher 220 vorhanden ist, so hat der Pufferspeicher 220 das entsprechende dezentralisierte Paket noch nicht empfangen, und der Prozess kehrt zu Schritt 904 zurück. Wird festgestellt, dass das Paket im Pufferspeicher 220 vorhanden ist, so enthält der Pufferspeicher 220 nun redundante Daten, und es ist ermittelt worden, dass der Endpunkt auf den dezentralisierten Strom 404, 408 umschalten kann.
-
Der Fachmann wird erkennen, dass die Endpunkte A und B 110, 120 nicht unbedingt auf VOIP-Endpunkte beschränkt sind, sondern in anderen Ausführungsformen ein anderer Medien-Gateway oder ein anderes Netzgerät, das in der Lage ist, Pakete zu puffern und Sitzungen zu verhandeln, sein können.
-
Die vorliegende Offenlegung kann in anderen speziellen Formen ausgeführt werden, ohne von ihrem Gedanken oder den wesentlichen charakteristischen Merkmalen abzuweichen. Die beschriebenen Ausführungsformen sind in jeder Hinsicht lediglich als veranschaulichend und nicht einschränkend zu betrachten. Der Umfang der Offenlegung wird daher nicht durch die vorstehende Beschreibung, sondern vielmehr durch die beigefügten Ansprüche angegeben. Alle Änderungen, die innerhalb der Bedeutung und des Gleichwertigkeitsbereichs der Ansprüche liegen, sollen in deren Umfang enthalten sein.
-
Die Offenlegung umfasst in verschiedenen Ausführungsformen im Wesentlichen die hier gezeigten und beschriebenen Komponenten, Verfahren, Prozesse, Systeme und/oder Geräte, einschließlich verschiedener Ausführungsformen, Unterkombinationen und Untermengen davon. Der durchschnittliche Fachmann wird, nachdem er die vorliegende Offenlegung verstanden hat, wissen, wie die Ausführungsformen herzustellen und zu verwenden sind.
-
Die vorliegende Offenlegung umfasst in verschiedenen Ausführungsformen – bei Nichtvorhandensein von hier oder in verschiedenen Ausführungsformen hiervon nicht gezeigten und/oder beschriebenen Elementen, einschließlich bei Nichtvorhandensein von Elementen, wie sie eventuell in früheren Geräten oder Prozessen, z. B. zur Verbesserung der Leistung, Erzielung von Bedienerfreundlichkeit und/oder Senkung von Implementierungskosten verwendet wurden – die Bereitstellung von Geräten und Prozessen.
-
Die vorstehende Erörterung wurde zum Zweck der Veranschaulichung und Beschreibung dargelegt. Die vorstehenden Ausführungen sollen die Erfindung nicht auf die hier beschriebene Form oder Formen beschränken. In der vorstehenden ausführlichen Beschreibung sind zum Beispiel verschiedene Merkmale in ein oder mehreren Ausführungsformen gruppiert, um die Beschreibung knapper zu halten. Diese Methode der Beschreibung ist nicht so auszulegen, dass sie eine Absicht wiedergibt, dass die beanspruchte Erfindung mehr Merkmale als die ausdrücklich in jedem Anspruch genannten erfordert. Vielmehr liegen, wie die folgenden Ansprüche zeigen, die erfinderischen Aspekte in weniger als allen Merkmalen einer einzelnen vorstehend beschriebenen Ausführungsform. Somit werden die folgenden Ansprüche hiermit in diese ausführliche Beschreibung mit aufgenommen, wobei jeder Anspruch für sich allein als eine separate bevorzugte Ausführungsform steht.
-
Außerdem enthält die Beschreibung zwar die Beschreibung einer oder mehrerer Ausführungsformen und bestimmter Variationen und Abwandlungen, jedoch umfasst der Bereich der Erfindung weitere Variationen und Abwandlungen, wie sie z. B. im Rahmen der Fähigkeiten und Kenntnisse des Fachmanns liegen, nachdem er diese Beschreibung verstanden hat. Es ist beabsichtigt, Rechte zu erlangen, welche alternative Ausführungsformen im zulässigen Ausmaß beinhalten, einschließlich Strukturen, Funktionen, Bereiche oder Schritte, die zu den beanspruchten alternativ, gegen sie austauschbar und/oder mit ihnen gleichwertig sind, unabhängig davon, ob diese alternativen, austauschbaren und/oder gleichwertigen Strukturen, Funktionen, Bereiche oder Schritte hier beschrieben sind oder nicht, und ohne die Absicht, zugunsten der Allgemeinheit auf einen patentierbaren Gegenstand zu verzichten.