-
Die
vorliegende Erfindung betrifft Telekommunikationssysteme und insbesondere
ein verbessertes fehlertolerantes H.323-System.
-
Die
Empfehlung H.323 der International Telecommunications Union (ITU)
beschreibt eine Gruppe von Geräten
und Protokollen für
die Multimedia-Kommunikation über
paketvermittelte Netzwerke. Die vier Hauptkomponenten, die durch
die Spezifikation definiert werden, sind Clients (auch als Terminals oder
Endpunkte bezeichnet), Multipoint Control Units, Gateways und Gatekeeper.
-
Die
Empfehlung H.323 sieht separate Kanäle für H.225.0 Call Signaling (Anrufsignalisierung), H.245
Call Control (Anrufsteuerung) und Medienkanäle (Nutzkanäle) vor. Normalerweise werden H.225.0
Call Signaling und H.245 Call Control über den Gatekeeper geroutet,
während
die Medienkanäle
(d. h. Audio, Daten und/oder Video) direkt zwischen den Endpunkten
geroutet werden. Um zum Beispiel eine Verbindung zwischen zwei Clients
einzuleiten, sendet der Client, welcher der rufende Teilnehmer ist,
eine Nachricht an einen Gatekeeper, welcher die Adresse des empfangenden
Teilnehmers auflöst
und die entsprechenden Signalisierungsnachrichten an den Anrufer
und den Empfänger
sendet. Sobald der Signalisierungs- und der Steuerkanal aufgebaut
worden sind, bauen die Endpunkte die Medienkanäle auf. Es können mehrere
Medienkanäle für einen
Anruf vorhanden sein, wie etwa zwei unidirektionale Kanäle für einen
Audio-Anruf. Der H.225.0 Signalisierungskanal und der H.245 Call
Control Kanal werden auch verwendet, um die Verbindung zu beenden.
-
Eine
solche Anordnung wird in dem Artikel von TOGAJ et al. "ITU-T Standardization
Activities for Interactive Multimedia Communications on Packet-Based
Networks: H.323 and Related Recommendations" (Standardisierungstätigkeit der ITU-T für interaktive
Multimedia-Kommunikation über
paketbasierte Netzwerke: H.323 und ähnliche Empfehlungen), Computer
Networks and ISDN Systems, North Holland Publishing, Amsterdam,
NL, Bd. 31, Nr. 3, 11. Feb. 1999, Seiten 205–223, XP000700319 ISSN 0169–7552, offenbart.
-
Falls
der Gatekeeper aus irgendeinem Grunde ausfällt, bemerken die Endpunkte
die Situation, da ihre Verbindung zum Gatekeeper (der im Client
gewöhnlich
als TCP Socket angesehen wird) beendet wird. Wenn erkannt wird,
dass der H.245 Steuerkanal getrennt wurde, fordert die Empfehlung
H.323, dass die Endpunkte die Verbindung abbauen und den Medienkanal
(die Medienkanäle)
trennen. Diese Forderung wird deshalb gestellt, damit, wenn der
Gatekeeper wiederhergestellt ist, keine noch nicht beendeten Medienverbindungen
mehr bestehen, über
die der Gatekeeper nicht informiert ist. Auf diese Weise wird verhindert,
dass das Netzwerk eine Verbindung ständig aufrechterhält. Wenn
eine Bandbreitenpolitik angewendet wird, wird verhindert, dass das
Netzwerk mehr Anrufe zulässt,
als das Netz abwickeln kann.
-
Obwohl
Systeme bekannt sind, bei denen redundante Backup-Gatekeeper vorgesehen
wurden, welche den Betrieb anderer Gatekeeper verfolgen, ermöglichen
solche Systeme nicht die Aufrechterhaltung bestehender Verbindungen.
In diesen Fällen
gehen bestehende Verbindungen verloren, und die H.323 Client-Terminals
müssen
sich erneut registrieren lassen und den Verbindungsaufbau erneut
einleiten, was eine stoßweise übermäßige Belastung
des Netzes und des Gatekeepers verursachen kann. Außerdem kann
die Kommunikation von Gatekeeper zu Gatekeeper Verarbeitungsleistung
beanspruchen und das System belasten.
-
Diese
bei den Ausführungen
nach dem bisherigen Stand der Technik vorhandenen Nachteile können zum
großen
Teil mittels der vorliegenden Erfindung überwunden werden, welche Aspekte
aufweist, die in den beigefügten
unabhängigen
Ansprüchen
1, 4 und 7 dargelegt sind. H.323 Client-Terminals können Redundanz-Überwachungsschichten umfassen,
welche sekundären
Gatekeepern redundantes H.225.0 Call Signaling und H.245 Call Control liefern.
Die sekundären
Gatekeeper reagieren, als ob sie der primäre Gatekeeper wären, doch
die H.323 Client-Terminals bauen keine Medienkanäle als Bestandteil des Verbindungsaufbaus über die
sekundären
Gatekeeper auf. Falls der primäre
Gatekeeper ausfällt,
wird der Medienkanal (werden die Medienkanäle) aufrechterhalten, und den
Redundanz-Überwachungsschichten
ist bekannt, dass der Anrufsignalisierungs- und der Anrufsteuerungs-Kanal über den
sekundären
Gatekeeper abgewickelt werden müssen.
-
Ein
H.323 Client-Terminal gemäß einer
Ausführungsform
der Erfindung verwendet primäre
und sekundäre
H.323 Steuereinheiten oder Zustandsmaschinen. Der H.323 Client-Terminal
meldet sich sowohl bei einem primären als auch bei einem sekundären Gatekeeper
an. Die primäre
Steuereinheit sendet Signalisierungsnachrichten zu einem primären Gatekeeper
und löst
die sekundäre
Steuereinheit aus, so dass diese Nachrichten mit der entsprechenden
Verbindungskennung zu einem sekundären Gatekeeper sendet. Die
primäre
Steuereinheit stellt unter Verwendung von standardmäßigen H.323
Protokollen eine Verbindung her. Wenn die sekundäre Steuereinheit eine Signalübertragung
vom sekundären
Gatekeeper empfängt,
prüft die
sekundäre
Steuereinheit den Zustand der Verbindung mit der primären Steuereinheit.
Falls die Anrufsignalisierung bei der primären Steuereinheit aktiv ist,
werden von der sekundären
Steuereinheit keine weiteren Aktionen durchgeführt, nachdem die sekundäre Verbindung hergestellt
ist. Falls die Anrufsignalisierung mit dem primären Gatekeeper fehlschlägt, übernimmt
die sekundäre
Steuereinheit die Kommunikation.
-
Ein
besseres Verständnis
der Erfindung wird erreicht, wenn die nachfolgende ausführliche
Beschreibung in Verbindung mit den folgenden Zeichnungen betrachtet
wird
-
1 ist
ein Schema, das ein H.323-System gemäß einer Ausführungsform
der Erfindung darstellt;
-
die 2A–2C sind
Schemata, welche ein H.323-Terminal mit einer Redundanz-Überwachungsschicht
gemäß einer
Ausführungsform
der Erfindung zeigen;
-
3 ist
ein Schema, welches den Signalisierungsstrom gemäß einer Ausführungsform
der Erfindung darstellt;
-
die 4A–4C sind
Flussdiagramme, welche die Funktionsweise des Systems gemäß einer
Ausführungsform
der Erfindung zeigen;
-
5 ist
ein Schema, welches den Signalisierungsstrom gemäß einer anderen Ausführungsform
der Erfindung darstellt; und
-
die 6A–6C sind
Flussdiagramme, welche die Funktionsweise des Systems gemäß der Ausführungsform
von 5 zeigen.
-
Es
wird nun auf die Zeichnungen Bezug genommen, und insbesondere auf 1;
diese zeigt ein Schema, welches ein beispielhaftes H.323 Telekommunikationssystem 100 gemäß einer
Ausführungsform
der vorliegenden Erfindung darstellt. Es ist anzumerken, dass die
Erfindung, obwohl sie hier im Hinblick auf ein H.323-Netzwerk beschrieben
wird, in gleicher Weise auf ein beliebiges Netzwerk anwendbar ist,
in welchem separate Medien- und Signalisierungskanäle verwendet
werden, wie etwa MGCP (Media Gateway Control Protocol), SIP+ (Inter
MGS Protocol), SGCP, MEGACO und allgemein jedes beliebige Schema "Voice over IP" (Sprache über IP,
d. h. Sprachübertragung über Datennetzwerk)
oder "Multimedia
over IP" (Multimedia über IP).
Ferner ist anzumerken, dass die vorliegende Erfindung, auch wenn
sie speziell im Zusammenhang mit Sprachpaketen beschrieben ist,
die Verwendung beliebiger Multimedia-Informationen umfasst, wie
etwa Video, Daten, Sprache oder irgendwelche Kombinationen davon.
Schließlich
ist anzumerken, dass ein beispielhaftes H.323-System das System
HiNetTM RC 3000 ist, das bei Siemens erhältlich ist.
-
Das
Telekommunikationssystem 100 umfasst ein lokales Netzwerk
(Local Area Network, LAN) oder Paketnetz 101. Mit dem LAN 101 können verschiedene
H.323-Terminals 102a, 102b, eine Multipoint Control
Unit (MCU) 104, ein H.323-Gateway 106, ein primärer H.323-Gatekeeper 108a,
ein sekundärer
H.323-Gatekeeper 108b, ein LAN-Server 112, ein
Bandwidth Allocation Server (Bandbreitenzuweisungs-Server) 113 und
eine Vielzahl weiterer Geräte
wie etwa Personalcomputer (nicht dargestellt) gekoppelt sein. Die
H.323-Terminals 102a, 102b genügen der Empfehlung H.323. Folglich
unterstützen die
H.323-Terminals 102a, 102b H.245 Control Signaling
für die
Aushandlung der Nutzung der Medienkanäle, Q.931 (H.225.0) für Call Signaling
(Anrufsignalisierung) und Verbindungsaufbau, H.225.0 Registrierung,
Zulassung und Status (Registration, Admission, Status, RAS) und
RTP/RTCP für
die Sequentialisierung von Audio- und Videopaketen. Die H.323-Terminals 102a, 102b können ferner
Audio- und Video-Codecs, T.120 Datenkonferenzschaltungs-Protokolle
und MCU-Fähigkeiten
implementieren. Weitere Einzelheiten, welche die Empfehlung H.323
betreffen, können
von der International Telecommunications Union erhalten werden;
die Empfehlung H.323 wird hiermit in ihrer Gesamtheit durch Bezugnahme
einbezogen, so als ob sie hier vollständig dargelegt wäre.
-
Ferner
umfassen die H.323-Terminals 102a, 102b gemäß der vorliegenden
Erfindung Redundanz-Steuereinheiten (auch als "Redundanz-Überwachungsschichten" bezeichnet) 111a, 111b,
die jeweils eine primäre
und eine sekundäre
Steuereinheit 110a, 110b bzw. 110c, 110d enthalten
(normalerweise als gekoppelte Zustandsmaschinen ausgeführt). Die
Redundanz-Steuereinheiten 111a, 111b bewirken,
dass H.323-Signalisierung zum primären und zum sekundären Gatekeeper 108a bzw. 108b bereitgestellt
wird. Die Redundanz-Steuereinheiten 111a, 111b und
der primäre
und der sekundäre
Gatekeeper 108a, 108b bewirken, dass ein System
mit zwei Signalisierungskanälen
bereitgestellt wird, jedoch mit einem einzigen Medien- oder Nutzkanal,
der nur für
die primäre
Verbindung zugewiesen wird, wie weiter unten ausführlicher
erläutert
wird.
-
Zusätzlich kann
ein Bandwidth Allocation Server (Bandbreitenzuweisungs-Server) oder
Manager 113 vorgesehen sein, der eine redundante Zuweisungsschicht 115 umfasst.
Wie weiter unten ausführlicher
erläutert
wird, verknüpft
die redundante Zuweisungsschicht 115 Systembandbreite über zwei
Verbindungen, wenn ein primärer
und ein sekundärer
Signalisierungs- und Steuerungsweg hergestellt worden sind. Andere
Server wie etwa Gebührenabrechnungs-Server, welche nicht
speziell beschrieben werden, können
auf eine ähnliche
Art und Weise funktionieren (z. B. um eine Duplizierung von Diensten
wie etwa Gebühren
aufgrund der zweifachen Signalisierung zu verhindern).
-
Entsprechend
einer spezifischen Ausführungsform
der vorliegenden Erfindung zeigt 2A ein
logisches Diagramm einer H.323-Schnittstelle zum LAN 101.
Es ist anzumerken, dass die Redundanz-Überwachungsschicht 111,
auch wenn sie im Format einer Netzwerkschicht dargestellt ist, normalerweise
in Form einer oder mehrerer Zustandsmaschinen implementiert ist,
die in der Lage sind, das H.323-Protokoll zu unterstützen. Die
Schnittstelle umfasst ein Netzwerk-Terminal/Gerät 102, das eine Redundanz-Überwachungsschicht 111 enthält, und eine
Paketnetz-Schnittstelle 13, die mit dem Netzwerk-Terminal 102 gekoppelt
ist. Wie weiter unten ausführlicher
erläutert
wird, verwendet das Netzwerk-Terminal 102 das Protokoll
der ITU-T Empfehlung H.323. Die Netzwerk-Schnittstelle 13 koppelt das
Netzwerk-Terminal 102 an das LAN 101. H.323-Terminals/Geräte und Anlagen übertragen
in Echtzeit Sprache, Video und/oder Daten. Es ist anzumerken, dass
die Empfehlung H.323 eine Sammelempfehlung ist, die für Multimedia-Kommunikation gilt,
einschließlich
von Telephony-over-LAN-Kommunikation.
Das Netzwerk kann paketvermitteltes Transmission Control Protocol/Internet
Protocol (TCP/IP) und Internet Packet Exchange (IPX) über Ethernet,
Fast Ethernet und Token-Ring-Netzwerke umfassen.
-
Das
H.323-Terminal 102 ist mit einer Video-Ein-/Ausgabe- (E/A_)
Schnittstelle 28, einer Audio-E/A-Schnittstelle 212,
einer Dateneinrichtungs-Schnittstelle 40 und einer Systemsteuerungs-Benutzerschnittstelle
(system control user interface, SCUI) 20 gekoppelt. Das
Netzwerk-Terminal 102 umfasst ferner eine H.225.0-Schicht 24 und
einen Audio-Coder/Decoder (Codec) 14, und es kann einen
Video-Codec 15 und eine T.120 Datenschnittstellen-Schicht 19 umfassen.
Die Audio-E/A-Schnittstelle oder Karte 212, welche Bestandteil
des standardmäßigen H.323-Geräts sein
kann, ist mit dem Audio-Codec 14, wie etwa einem G.711
Codec, zum Codieren und Decodieren von Audiosignalen verbunden.
Der Audio-Codec 14, der mit der H.225.0-Schicht 24 gekoppelt
ist, codiert Audiosignale für
die Übertragung
und decodiert empfangene Signale. Obwohl der G.711 Codec der vorgeschriebene Audio-Codec
für ein
H.323-Terminal ist, können
auch andere Audio-Codecs wie etwa G.728, G.729, G.723.1, G.722 und
MPEG1 Audio zum Codieren und Decodieren von Sprache verwendet werden. G.723.1
ist aufgrund seiner angemessen niedrigen Übertragungsgeschwindigkeit,
welche die Erhaltung von Verbindungsbandbreite insbesondere bei
Verbindungen in Netzen mit geringer Geschwindigkeit ermöglicht,
ein bevorzugter Codec.
-
Die
Video-E/A-Schnittstelle oder Karte 28, welche Bestandteil
des standardmäßigen H.323-Geräts sein
kann, ist mit einem Video-Codec 15,
wie etwa einem H.261 Codec, zum Codieren und Decodieren von Videosignalen
verbunden. Der Video-Codec 15 codiert Videosignale für die Übertragung
und decodiert empfangene Signale. H.261 ist der vorgeschriebene
Codec für
H.323-Terminals, welche Video unterstützen, obwohl auch andere Codecs
wie etwa H.263 unterstützt
werden können.
-
Die
Systemsteuerungs-Benutzerschnittstelle (system control user interface,
SCUI) 20 gewährleistet
Signalisierung und Flussregelung für den ordnungsgemäßen Betrieb
des H.323-Terminals 102. Insbesondere werden Call Signaling
(Anrufsignalisierung) und Call Control (Anrufsteuerung) von der SCUI 20 abgewickelt.
Eine Redundanz-Überwachungsschicht 111 ist
mit der SCUI 20 gekoppelt. Die Redundanz-Überwachungsschicht 111 umfasst
ein Paar Steuerungsschichten 11a, 11b und eine "Arbitrierungsschicht" (arbitration layer) 29.
Die Steuerungsschichten 11a, 11b sind standardmäßige H.323-Steuerungsschichten
und umfassen folglich Q.931-Schichten 16a, 16b,
H.225.0-RAS-Schichten 17a, 17b und H.245-Schichten 18a, 18b.
Folglich ist die SCUI 20 über die "Arbitrierungsschicht" 29 mit der H.245-Schicht 18 gekoppelt,
welche das Medien-Kontrollprotokoll ist, das den Capability Exchange (Austausch
von Informationen über
die Fähigkeiten), das Öffnen und
Schließen
von logischen Kanälen, Modus-Präferenz-Anforderungen,
Flussregelungs-Nachrichten und andere verschiedene Befehle und Anzeigen
ermöglicht.
Die SCUI 20 ist außerdem über die "Arbitrierungsschicht" 29 mit
dem Q.931-Protokoll gekoppelt, welches den Aufbau, den Abbau und
die Steuerung von H.323-Kommunikationssitzungen
definiert. Die SCUI 20 ist ferner über die "Arbitrierungsschicht" 29 mit dem H.225.0 Registrierungs-,
Zulassungs- und Status- (Registration, Admission, Status, RAS) Protokoll
gekoppelt, welches definiert, wie H.323-Instanzen auf H.323-Gatekeeper
zugreifen können,
um unter anderem eine Adressenübersetzung
durchzuführen,
wodurch sie H.323-Endpunkten ermöglichen,
andere H.323-Endpunkte über
einen H.323-Gatekeeper zu lokalisieren. Die H.225.0-Schicht 24,
welche von der Q.931-Schicht 16a, 16b abgeleitet
ist, ist das Protokoll für
die Herstellung einer Verbindung zwischen zwei oder mehr Terminals
und formatiert außerdem die
gesendeten Video-, Audio-, Daten-, Signalisierungs- und Steuerungsströme zu Nachrichten
für die Kommunikation über die
Netzwerk-Schnittstelle 13 (z. B. Paketnetz 101).
Die H.225.0-Schicht 24 ruft außerdem die empfangenen Video-,
Audio-, Daten-, Signalisierungs- und Steuerungsströme aus Nachrichten
ab, die von der Netzwerk-Schnittstelle eingegeben worden sind, routet
die Signalisierungs- und Steuerungsinformationen zu der entsprechenden Steuerungsschicht 11a, 11b und
routet Medienströme
zu den entsprechenden Audio-, Video- und Datenschnittstellen.
-
Folglich
kann ein H.323-Netzwerk so konfiguriert sein, dass es mehrere unterschiedliche
Geräte
enthält.
Zum Beispiel kann das Netzwerk ein Terminal, das dazu dient, einem
an ein LAN angeschlossenen Benutzer zu ermöglichen, mit einem anderen Benutzer
in dem LAN zu kommunizieren, ein Terminal, das dazu dient, ein in
dem LAN residenten Benutzer zu ermöglichen, einen zweiten Teilnehmer
im öffentlichen
Wählnetz
zu rufen, und/oder ein Terminal, das dazu dient, einem Adapter zu
ermöglichen, unter
Verwendung eines schnurlosen Telefons über eine drahtlose Fernmeldelinie
zu kommunizieren, enthalten. Das Gerät kann außerdem Zusatzdienste gemäß den Empfehlungen
der Serie H.450.X implementieren.
-
Die "Arbitrierungsschicht" 29 liefert
einen einzigen Signalisierungsstrom zur SCUI 20. Falls
beide Steuerungsschichten 11a, 11b funktionieren, wählt die "Arbitrierungsschicht" 29 die
primäre
Steuerungs-Zustandsmaschine oder Steuerungsschicht. Falls eine der
Steuerungsschichten 11a, 11b nicht funktioniert,
weil der zugehörige
Gatekeeper ausgefallen ist, wählt
die "Arbitrierungsschicht" 29 die
andere, funktionsfähige
Zustandsmaschine oder Steuerungsschicht, um einen Anruf zu steuern.
Dies ist in den 2B und 2C schematisch
dargestellt.
-
Die "Arbitrierungsschicht" 29 von 2B empfängt H.225.0
Call Signaling und H.245 Control Signaling über die Leitungen 33, 35 von
der primären und
der sekundären
Zustandsmaschine SM1, SM2. Die "Arbitrierungsschicht" 29 empfängt ferner
Zustandssignale über
die Leitungen 37, 39 von den Zustandsmaschinen
SM1, SM2, aus denen hervorgeht, ob sie (und folglich die Gatekeeper,
von denen sie Signalisierung empfangen) in Betrieb sind und funktionieren.
Angenommen, beide Zustandsmaschinen sind aktiv, trifft die "Arbitrierungsschicht" 29 die
Wahl, die H.225.0 und H.245 Signalisierung von der primären Zustandsmaschine
SM1 zu empfangen und an die SCUI 20 zu senden. Es ist anzumerken,
dass Bezugnahmen auf "primäre" und "sekundäre" Zustandsmaschinen
oder Steuerungsschichten etwas willkürlich sind; jede Zustandsmaschine
könnte
die primäre sein.
-
In 2C ist
die Situation dargestellt, in welcher die primäre Zustandsmaschine SM1 ausgefallen
ist, weil der Gatekeeper, von dem sie Signalisierung empfangen hatte,
ausgefallen ist. In diesem Falle liest die "Arbitrierungsschicht" 29 das Zustandssignal über die
Leitung 37 und schaltet auf Empfang von H.225.0 und H.245
Signalisierung von der Zustandsmaschine SM2 um, von welcher über die
Leitung 39 ein Signal des aktiven Zustands empfangen worden
ist.
-
Ferner
ist das in 2A dargestellte Terminal 102 in
der Lage, in einer Umgebung zu funktionieren, in der nur einige
der Terminals ähnlich
ausgestattet sind. Das heißt,
nicht alle H.323-Client-Endpunkte
müssen
mit Redundanz-Überwachungsschichten 111 ausgestattet
sein, die primäre
und sekundäre
Zustandsmaschinen enthalten. Die Verfügbarkeit der Redundanz-Überwachungsschicht 111 wird
während
des Verbindungsaufbaus geprüft.
Sie wird nur dann genutzt, wenn beide Clients damit ausgestattet
sind. Falls nur ein Client damit ausgestattet ist, wechselt das
System standardmäßig zum
normalen nicht redundanten Betrieb, wobei es die Zustandsmaschine
SM1 (11a) verwendet. Folglich ermöglicht die vorliegende Ausführungsform
auf vorteilhafte Weise, Redundanz und Fehlertoleranz nur ausgewählten Clients
oder Gruppen von Clients innerhalb eines Systems zuzuweisen.
-
3 zeigt
die Signalisierung für
den Betrieb einer Ausführungsform
der Erfindung. Es ist anzumerken, dass, obwohl die Signalpfade als
direkte Verbindungen dargestellt sind, die Signalisierung normalerweise über das
LAN geführt
wird. Wie dargestellt, sind ein Paar Gatekeeper GK 1 und GK 2 und
ein Paar Client-Terminals oder Endpunkte Client 1 und Client 2 an
das LAN 101 angeschlossen. Die Endpunkte Client 1 und Client
2 umfassen Redundanz-Überwachungsschichten 111a, 111b sowie
Client-Anwendungen 102a, 102b. Es ist anzumerken, dass,
obwohl die Gatekeeper GK 1 und GK 2 identisch sein können oder
dasselbe Betriebssystem benutzen können, es in bestimmten Fällen günstiger sein
kann, einen primären
und einen sekundären Gatekeeper
zu verwenden, welche unterschiedliche Betriebssysteme verwenden
oder sogar von unterschiedlichen Lieferanten stammen, um zu verhindern,
dass beide Gatekeeper infolge eines gemeinsamen Software- oder Zustandsfehlers
gleichzeitig abstürzen.
Die vorliegende Erfindung ist in der Lage, in einer solchen Umgebung
zu funktionieren, weil die Redundanz durch die Client-Terminals
und nicht durch die Gatekeeper selbst aufrechterhalten wird.
-
Wenn
Client 1 eine Verbindung zu Client 2 einleitet, sendet er eine H.225.0
Verbindungsaufbau-Nachricht, die eine globale eindeutige Verbindungskennung
(globally unique call identifier, GUId) enthält, über den Signalisierungspfad 302 an
seinen primären
Gatekeeper GK 1. Der H.323 Verbindungsaufbau umfasst außerdem einen
Capability Exchange, um den Endpunkten zu ermöglichen zu bestimmen, dass
an beiden Enden eine Redundanz-Überwachungsschicht
verfügbar
ist.
-
In
Reaktion auf die empfangene H.225.0 Verbindungsaufbau-Nachricht sendet
der Gatekeeper GK 1 über
den Signalisierungspfad 304 eine H.225.0 Verbindungsaufbau-Nachricht
an den Endpunkt Client 2. Client 2 antwortet über den Signalisierungspfad 304,
und die Verbindung wird auf die standardmäßige Art und Weise aufgebaut.
Der Medienkanal 310 wird dann direkt zwischen den Endpunkten
hergestellt. Nachdem die primäre
Verbindung hergestellt worden ist, wird über den Signalisierungspfad 306 eine
H.225.0 Verbindungsaufbau-Nachricht an den sekundären Gatekeeper
GK 2 gesendet. Es ist anzumerken, dass die Herstellung des sekundären Signalisierungspfades
erst eingeleitet wird, nachdem die primäre Verbindung hergestellt worden
ist und Bandbreite für
ihre Medienkanäle
(Nutzkanäle)
zugewiesen worden ist. Der Gatekeeper GK 2 sendet dann über den
Signalisierungspfad 308 eine H.225.0 Verbindungsaufbau-Nachricht
an den Endpunkt Client 2. Dies geschieht, nachdem der Capability
Exchange des ersten Verbindungsaufbaus abgeschlossen ist und die
Endpunkte wissen, dass an beiden Endpunkten Redundanz-Überwachungsschichten
zur Verfügung
stehen. Die H.225.0 Verbindungsaufbau-Nachricht enthält dieselbe
globale eindeutige Verbindungskennung (GUId) wie die erste H.225.0
Verbindungsaufbau-Nachricht für
die primäre
Verbindung. Stattdessen könnten
die GUId's auch
entsprechend einem vorgegebenen Algorithmus verknüpft sein,
wie etwa sequentiell, solange der Client 2 die Verbindungsaufbau-Nachricht,
die er empfängt,
als eine redundante Verbindung betreffend erkennt. Der Endpunkt
Client 2 erkennt die GUId als Kennung einer Sicherungs-Signalisierungsverbindung
und akzeptiert sie. Die Endpunkte Client 1 und 2 öffnen jedoch
keine logischen Medienkanäle
in Reaktion auf diesen zweiten Verbindungsaufbau (d. h. ein separater
Medien-Nutzlastkanal wird nicht hergestellt). Aufgrund der Existenz
der Redundanz-Überwachungsschichten und
ihrer zugehörigen "Arbitrierungsschichten 29" werden die Client-Anwendungen mit
nur einem einzigen Signalisierungskanal und einem einzigen Strom von
Medienpaketen (z. B. Sprachpaketen) präsentiert. Die Client-Anwendungen "bemerken" nicht, ob der primäre oder
der sekundäre
Gatekeeper verwendet wird, um die Signalisierung zu steuern.
-
Falls
der Gatekeeper GK 1 (der primäre Gatekeeper)
während
der gesamten Dauer der Verbindung funktionsfähig bleibt, sendet, wenn einer
der Teilnehmer die Verbindung trennt, der Endpunkt-Client dieses
Teilnehmers eine standardmäßige Verbindungsabbau-Nachricht
(Clearing Message) an die Gatekeeper GK 1 und GK 2. Der Gatekeeper
GK 1 beendet die Verbindung, indem er Verbindungsabbau-Nachrichten
an den anderen Endpunkt-Client sendet und den Signalisierungskanal
schließt.
Der Gatekeeper GK 2 sendet dieselben Verbindungsabbau-Nachrichten, und
die sekundären
Signalisierungskanäle
werden ebenfalls geschlossen. Die Redundanz-Überwachungsschicht 111a, 111b in
jedem Endpunkt führt
die Verbindungsauslösungs-Funktion (und
eventuelle damit zusammenhängende
Merkmale) aus. Die "Arbitrierungsschicht" 29 übermittelt
die Verbindungsabbau-Informationen
von der primären Zustandsmaschine
oder Steuerungsschicht über
die SCUI 20 zur Client-Anwendung. Die "Arbitrierungsschicht" 29 stellt sicher, dass die
sekundäre
Zustandsmaschine ihre Signalisierungs- und Steuerkanäle ebenfalls
ordnungsgemäß schließt.
-
Falls
der Gatekeeper GK 1 während
der Verbindung ausfällt,
geht sein Signalisierungskanal (entlang der Pfade 302, 304)
zwischen den Endpunkten Client 1 und Client 2 verloren. Der Ausfall
des Gatekeepers GK 1 wird an den Endpunkten zum Beispiel als ein
Schließen
eines TCP Sockets erkannt. Gemäß der vorliegendem
Ausführungsform
wird der Medien- oder Nutzkanal 310 aufrechterhalten, und
es wird der sekundäre
Signalisierungskanal über
den Gatekeeper GK 2 (entlang der Pfade 306, 308)
benutzt. Während
der Gatekeeper GK 1 außer
Betrieb ist, wird jeder der mit der Redundanz-Überwachungsschicht 111 ausgestatteten
Endpunkte des Gatekeepers, der versucht, den Gatekeeper GK 1 zu benutzen,
zum Gatekeeper GK 2 umgeschaltet, wenn die "Arbitrierungsschichten" und die Redundanz-Überwachungsschichten den Ausfall
des Gatekeepers GK 1 erkennen. Es ist anzumerken, dass auch mehr
als zwei Gatekeeper (und folglich mehr als zwei Zustandsmaschinen
oder Steuerungsschichten innerhalb der Redundanz-Überwachungsschicht 111)
verwendet werden könnten.
Somit dienen die Abbildungen nur als Beispiele.
-
Die
Funktionsweise dieser Ausführungsform der
Erfindung ist mittels der Flussdiagramme der 4A–4C noch
klarer dargestellt. Insbesondere wird auf 4A Bezug
genommen; in einem Schritt 402 wünscht der Endpunkt Client 1,
eine Verbindung zu einem anderen Endpunkt, Client 2, herzustellen.
Der Endpunkt Client 1 und insbesondere die primäre Zustandsmaschine oder die
primäre
Steuereinheit 110a sendet eine ARQ-Nachricht (AdmissionRequest,
Zulassungsanfrage) an den Gatekeeper GK 1. Wenn angenommen wird,
dass der Gatekeeper GK 1 funktioniert, antwortet der Gatekeeper
GK 1 in einem Schritt 404 mit einer ACF-Nachricht (AdmissionConfirm,
Zulassungsbestätigung)
an den Client 1, welche von der primären Zustandsmaschine 110a empfangen
wird. Die ACF-Nachricht enthält
eine Anrufsignalisierungs-Transportkanal-Adresse (Call Signaling
Transport Channel Address) des Gatekeepers GK 1. In Reaktion auf
die ACF-Nachricht
sendet die primäre
Zustandsmaschine 110a in einem Schritt 406 eine
H.225.0 Verbindungsaufbau-Nachricht an den Gatekeeper GK 1, die
eine globale eindeutige Verbindungskennung zur Identifizierung der
Verbindung enthält.
-
In
einem Schritt 408 leitet der Gatekeeper GK 1 die H.225.0
Verbindungsaufbau-Nachricht an den Endpunkt Client 2 und insbesondere
an dessen primäre
Zustandsmaschine oder primäre
Steuereinheit 110c weiter. In Reaktion darauf führt die
primäre Zustandsmaschine 110c des
Endpunkts Client 2 in einem Schritt 410 einen ARQ/ACF-Nachrichtenaustausch
mit dem Gatekeeper GK 1 durch. In einem Schritt 412 sendet
die primäre
Zustandsmaschine 110c des Endpunkts Client 2 eine H.225.0
Alerting- und Connect-Nachricht (Nachricht "Rufmeldung erfolgt, Verbinden") an den Gatekeeper
GK 1, während der
Anruf den Zustand "verbunden" erreicht. Der Gatekeeper
GK 1 wiederum übermittelt
in einem Schritt 414 die Alerting- und Connect-Nachricht
an die primäre
Zustandsmaschine 110a des Endpunkts Client 1. Die Alerting-
oder Connect-Nachricht enthält die
H.245 Steuerkanal-Transportadresse
(Control Channel Transport Address) des Gatekeepers, welche in einem
Schritt 415 verwendet wird, um den H.245 Steuerkanal herzustellen.
Anschließend
wird in einem Schritt 416 ein H.245 Capability Exchange durchgeführt. In
einem Schritt 417 wird der Medienkanal zwischen Endpunkt
Client 1 und Client 2 geöffnet.
Der Capability Exchange beinhaltet den Austausch des zu verwendenden
Codieralgorithmus und ähnliches.
Zusätzlich
beinhaltet der Capability Exchange gemäß der vorliegenden Ausführungsform einen
Austausch von Informationen darüber,
ob die jeweilige Seite mit einer Redundanz-Überwachungsschicht 111 ausgestattet
ist oder nicht; dies wird im Schritt 418 bestimmt. Falls
eine Seite nicht mit einer Redundanz-Überwachungsschicht 111 ausgestattet ist,
fährt das
System in einem Schritt 419 mit einem normalen Verbindungsaufbau
ohne Redundanz fort, und die nicht mit einer Redundanz-Überwachungsschicht
ausgestattete Seite verwendet ihre einzige Zustandsmaschine als
die "primäre" Zustandsmaschine.
Falls im Schritt 418 festgestellt wird, dass beide Seiten
mit einer Redundanz-Überwachungsschicht
ausgestattet sind, sendet die primäre Zustandsmaschine 110a in
einem Schritt 421 ein Signal, welches die sekundäre Zustandsmaschine 110b aktiviert.
-
In
einem Schritt 424 sendet die sekundäre Zustandsmaschine 110b eine
ARQ-Nachricht an den Gatekeeper GK 2, in welcher keine Bandbreite
für diese
sekundäre
Verbindung angefordert wird. In einem Schritt 426 empfängt die
sekundäre
Zustandsmaschine 110b eine ACF-Nachricht vom Gatekeeper GK 2, welche
die Anrufsignalisierungs-Transportkanal-Adresse
des Gatekeepers GK 2 enthält.
In einem Schritt 428 sendet die sekundäre Zustandsmaschine 110b eine
H.225.0 Verbindungsaufbau-Nachricht an den Gatekeeper GK 2, unter
Verwendung derselben globalen eindeutigen Verbindungskennung, welche die
primäre
Zustandsmaschine 110a zuvor beim Gatekeeper GK 1 verwendet
hatte. In einem Schritt 430 sendet der Gatekeeper GK 2
die H.225.0 Verbindungsaufbau-Nachricht an den Endpunkt Client 2, unter
Verwendung derselben globalen eindeutigen Verbindungskennung, die
bei der primären
Verbindung verwendet wurde. Der Endpunkt Client 2 empfängt die
H.225.0 Verbindungsaufbau-Nachricht und stellt fest, dass sie eine
bestehende Verbindung betrifft (die in den Schritten 402 bis 417 hergestellte
Verbindung). Dies hat zur Folge, dass die primäre Zustandsmaschine 110c von
Endpunkt Client 2 ein Signal sendet, das die sekundäre Zustandsmaschine 110d aktiviert,
so dass sie die empfangene H.225.0 Verbindungsaufbau-Nachricht verarbeitet.
In Reaktion auf die H.225.0 Verbindungsaufbau-Nachricht tauschen
die sekundäre
Zustandsmaschine 110d des Endpunkts Client 2 und der Gatekeeper
GK 2 in einem Schritt 432 ARQ/ACF-Nachrichten aus. In einem
Schritt 434 sendet die sekundäre Zustandsmaschine 110d des
Endpunkts Client 2 eine Connect-Nachricht an den Gatekeeper GK 2.
Diese Connect-Nachricht wird vom Gatekeeper GK 2 in einem Schritt
436 zum Endpunkt Client 1 (und insbesondere zu dessen sekundärer Zustandsmaschine 110b)
weitergeleitet. Anschließend
stellt die sekundäre
Zustandsmaschine 110d des Endpunkts Client 2 in einem Schritt 438 den
H.245 Steuerkanal mit dem Endpunkt Client 1 her. Die sekundäre Zustandsmaschine 110d des
Endpunkts Client 2 erkennt den Duplikats-Charakter der Signalisierung
und verknüpft
im Schritt 439 diese Signalisierung mit dem Medienkanal,
der im Schritt 417 hergestellt worden war.
-
Es
wird nun auf 4B Bezug genommen; sie zeigt
ein Flussdiagramm, welches den Prozess der Beendigung darstellt.
In einem Schritt 440 wird die Beendigung der Verbindung
am Endpunkt Client 1 eingeleitet. Es ist anzumerken, dass die Beendigung
der Verbindung ebenso gut vom Endpunkt Client 2 aus eingeleitet
werden könnte.
In einem Schritt 441 leitet der Endpunkt Client 1 (und
insbesondere die Zustandsmaschine 110a) zum Beispiel die
Beendigung der Verbindung ein, indem er einen H.245 endSessionCommand
(Befehl "Sitzung
beenden") an den
Gatekeeper GK 1 sendet, welcher den H.245 endSessionCommand zum
Endpunkt Client 2 weitersendet. In einem Schritt 443 reagiert
der Endpunkt Client 2 (und insbesondere die Zustandsmaschine 110c)
auf den empfangenen H.245 endSessionCommand, indem er seinen eigenen
H.245 endSessionCommand an GK 1 sendet, welcher den H.245 endSessionCommand
zum Endpunkt Client 1 weitersendet. In einem Schritt 445 sendet
der Endpunkt Client 1 eine H.225 Release-Complete-Nachricht (Nachricht "Verbindung ausgelöst") an den Gatekeeper
GK 1, um den Anrufsignalisierungskanal zu schließen, und GK 1 sendet die Release-Complete-Nachricht
weiter zum Endpunkt Client 2. Die Endpunkte Client 1 und 2 informieren
dann den Gatekeeper GK 1, damit er die Bandbreite für die primäre Verbindung
freigibt, indem sie in einem Schritt 447 Disengage-Request-
(DRQ-) Nachrichten (Freigabeanforderungs-Nachrichten) an GK 1 senden.
In einem Schritt 448 antwortet der Gatekeeper GK 1 auf
die empfangenen DRQ-Nachrichten, indem er an die Endpunkte Client
1 und 2 Disengage- Confirm- (DCF-)
Nachrichten (Freigabebestätigungs-Nachrichten)
sendet. In einem Schritt 449 bestimmt die Redundanz-Überwachungsschicht 111,
ob die GUId als zu einer bereits beendeten Verbindung gehörend erkannt
wird. Falls dies zutrifft, wird der Betrieb der primären Zustandsmaschine
beendet. Falls im Schritt 449 ermittelt wird, dass der
Medienkanal nicht geschlossen worden ist, wird in einem Schritt 460 die Medienverbindung
beendet.
-
Gleichzeitig
mit der Beendigung der primären
Verbindung muss auch die sekundäre
Verbindung beendet werden. In einem Schritt 451 leitet
der Endpunkt Client 1 (und insbesondere die Zustandsmaschine 110b)
die Beendigung der Verbindung ein, indem er einen H.245 endSessionCommand
an den Gatekeeper GK 2 sendet, welcher den H.245 endSessionCommand
zum Endpunkt Client 2 weitersendet. In einem Schritt 453 reagiert
der Endpunkt Client 2 (und insbesondere die Zustandsmaschine 110d) auf
den empfangenen H.245 endSessionCommand, indem er seinen eigenen
H.245 endSessionCommand an GK 2 sendet, welcher den H.245 endSessionCommand
zum Endpunkt Client 1 weitersendet. In einem Schritt 455 sendet
der Endpunkt Client 1 eine H.225 Release-Complete-Nachricht an den
Gatekeeper GK 2, um den Anrufsignalisierungskanal zu schließen, und
GK2 sendet die Release-Complete-Nachricht
weiter zum Endpunkt Client 2. Die Endpunkte Client 1 und 2 informieren
dann den Gatekeeper GK 2, damit er den Steuerkanal für die sekundäre Verbindung
freigibt, indem sie in einem Schritt 457 Disengage-Request-
(DRQ-) Nachrichten an GK 2 senden. In einem Schritt 458 antwortet
der Gatekeeper GK 2 auf die empfangenen DRQ-Nachrichten, indem er
an die Endpunkte Client 1 und 2 Disengage-Confirm- (DCF-) Nachrichten sendet.
In einem Schritt 459 bestimmt die Redundanz-Überwachungsschicht 111,
ob die GUId als zu einer bereits beendeten Verbindung gehörend erkannt
wird. Falls dies zutrifft, wird der Betrieb der sekundären Zustandsmaschine
beendet. Falls im Schritt 459 ermittelt wird, dass der
Medienkanal nicht geschlossen worden ist, wird in einem Schritt 460 die
Medienverbindung beendet.
-
Es
wird nun auf 4C Bezug genommen, ein Flussdiagramm,
welches die Funktionsweise des Systems darstellt, wenn ein Ausfall
eines Gatekeepers festgestellt wird. Insbesondere fällt in einem Schritt 462 der
Gatekeeper GK 1 aus. Es ist anzumerken, dass der Ausfall des Gatekeepers
GK 1 nur als Beispiel betrachtet wird. Die vorliegende Erfindung
ist ebenso bei einem Ausfall des Gatekeepers GK 2 anwendbar, wenn
der Gatekeeper GK 2 die primäre
Verbindung abwickeln würde.
Anschließend
erkennt die primäre
Zustandsmaschine 110a des Endpunkts Client 1 in einem Schritt 464 den
Ausfall des Gatekeepers GK 1, normalerweise als einen geschlossenen
TCP Socket. In Reaktion darauf baut die primäre Zustandsmaschine 110a des
Endpunkts Client 1 im Schritt 468 ihre Signalisierung zum
Gatekeeper GK 1 ab. Die sekundäre
Zustandsmaschine 110b hält
jedoch ihre Signalisierung über
den Gatekeeper GK 2 aufrecht. In einem Schritt 470 erkennt
die "Arbitrierungsschicht" 29, dass
die primäre
Zustandsmaschine 110a nicht funktionsfähig ist, und folglich setzt sie
die Sitzung unter Verwendung der sekundären Zustandsmaschine 110b fort.
Im Schritt 472 fährt
die Zustandsmaschine 110b fort, die Signalisierung mit dem
Gatekeeper GK 2 aufrechtzuerhalten. Es ist anzumerken, dass eine ähnliche
Folge von Schritten am Endpunkt Client 2 ausgeführt wird.
-
Falls
nach einem Ausfall des primären
Gatekeepers GK 1 andere Endpunkte, welche dem Gatekeeper GK 1 als
ihrem primären
Gatekeeper zugewiesen sind, versuchen, Verbindungen aufzubauen, werden
sie nach wie vor zunächst
versuchen, über den
Gatekeeper GK 1 zu signalisieren. Da sie jedoch keine Antwort erhalten,
werden sie erkennen, dass sie nicht mehr beim Gatekeeper GK 1 angemeldet sind,
so dass primäre
Verbindungen dann über
den Gatekeeper GK 2 hergestellt werden.
-
Eine
zusätzliche
Verbesserung der vorliegenden Erfindung ist in 5 dargestellt.
Speziell zeigt 5 ein System, das dem in 3 dargestellten ähnlich ist,
jedoch einen Bandwidth Allocation Manager (Bandbreitenzuweisungs-Manager, BAM) 113 enthält, der
eine redundante Zuweisungsschicht 115 umfasst. Normalerweise
würde während eines
Verbindungsaufbaus der Gatekeeper, der eine Verbindung abwickelt,
eine bestimmte Menge von Bandbreite anfordern. Die Bandbreite wird
dann der Verbindung zugewiesen und ist für andere Teilnehmer nicht mehr
verfügbar.
Da die Redundanz-Überwachungsschichten 111a, 111b zwei
Bandbreiten-Anforderungen für
jede Verbindung vornehmen, wird nur für die erste (primäre) Verbindung
Bandbreite angefordert. Für
die sekundäre
Verbindung wird keine Bandbreite angefordert, da nur ein Medienkanal
(nur Medienkanäle)
für eine
Verbindung tatsächlich
benötigt
und hergestellt wird (werden). Dementsprechend identifizieren der
Bandwidth Allocation Manager 113 und insbesondere der redundante
Zuweisungsschicht 115 doppelt vorhandene Verbindungskennungen
(GUIds) und ordnen die Bandbreite einer ersten (primären) Verbindung
in der Weise zu, dass sie ebenso für eine sekundäre Verbindung
gilt. Es ist anzumerken, dass die Prinzipien dieser Ausführungsform
in gleichem Maße
für andere
Typen von Servern anwendbar sind, die sich auf das Zählen einer
Anzahl von Signalisierungskanälen
stützen,
bevor sie eine bestimmte Aktion ausführen. Zum Beispiel könnte ein
Gebührenabrechnungs-Server
die Anzahl von Signalisierungskanälen zählen und daher einem Benutzer
der Redundanz-Überwachungsschicht
für ein
und dieselbe Verbindung zweimal Gebühren in Rechnung stellen. Die
unter Bezugnahme auf 5 beschriebene redundante Zuweisungsschicht
könnte
verwendet werden, um die doppelte Gebührenberechnung zu vermeiden.
Somit dient 5 nur als Beispiel.
-
Wie
in 5 dargestellt, sind ein Paar Gatekeeper GK 1 und
GK 2, ein Paar Client-Terminals oder Endpunkte Client 1 und Client
2 und ein Bandwidth Allocation Manager 113 mit einem LAN gekoppelt.
Wenn Client 1 eine Verbindung zu Client 2 einleitet, sendet er eine
ARQ-Nachricht über
den Signalpfad 502 zu seinem primären Gatekeeper GK 1. Der Gatekeeper
GK 1 sendet wiederum eine Bandbreitenzuweisungs-Anforderung über den Signalpfad 512 an
den Bandwidth Allocation Manager 113. Wenn angenommen wird,
dass die Bandbreite verfügbar
ist, sendet der Bandwidth Allocation Manager 113 über den
Pfad 512 eine Nachricht an den Gatekeeper GK 1, die ihn
darüber
informiert, dass die Bandbreite verfügbar ist.
-
Der
Gatekeeper GK 1 sendet über
den Pfad 502 eine ACF-Nachricht an den Endpunkt Client
1, in der die für
diese Verbindung verfügbare
Bandbreite angegeben wird. Client 1 sendet eine H.225.0 Verbindungsaufbau-Nachricht
an den Gatekeeper GK 1, und der Gatekeeper GK 1 sendet dann die
H.225.0 Verbindungsaufbau-Nachricht über den Pfad 504 zu Client
2. Client 2 erkennt die neue Verbindungsanforderung, die Verbindung
wird auf die standardmäßige Art
und Weise aufgebaut, und der Medienkanal (die Medienkanäle) 510 wird
(werden) hergestellt. Nachdem die erste Verbindung den Zustand "Connect" (Verbinden) erreicht
hat, leitet Client 1 einen neuen Verbindungsaufbau ein, indem er über den
Pfad 506 eine ARQ-Nachricht an den Gatekeeper GK 2 sendet.
Da es bekannt ist, dass dies eine sekundäre Verbindung von Client 1
ist, enthält
die ARQ-Nachricht eine Anforderung von null Bandbreite für diese
Verbindung. Der Gatekeeper GK 2 antwortet, indem er über den
Pfad 506 eine ACF-Nachricht an Client 1 sendet. Client
1 sendet daraufhin über
den Pfad 506 eine H.225.0 Verbindungsaufbau-Nachricht an
den Gatekeeper GK 2, welche dieselbe globale eindeutige Verbindungskennung
(GUId) enthält,
die für
die entsprechende primäre
Verbindung mit Client 2 verwendet wurde, welche über den Gatekeeper GK 1 aufgebaut
wurde. Der sekundäre
Gatekeeper GK 2 sendet eine Anzeige der sekundären Verbindung mit ihrer GUId über den
Signalisierungspfad 514 an den Bandwidth Allocation Manager 113.
Die redundante Zuweisungsschicht 115 des Bandwidth Allocation Managers
verknüpft
diese sekundäre
Verbindung mit einer bestehenden Verbindung, weil sie die GUId erkennt,
die ihr bereits früher
zur Verfügung
gestellt worden war. Die redundante Zuweisungsschicht 115 sendet
dann über
den Signalpfad 514 eine Verknüpfungs-Quittung an den Gatekeeper
GK 2, doch sie weist in Wirklichkeit der Verbindung keine zusätzlich Bandbreite
zu und verringert folglich nicht die Menge an Bandbreite, die für andere
Verbindungen verfügbar
ist.
-
Der
Gatekeeper GK 2 sendet dann über
den Signalisierungspfad 508 eine H.225.0 Verbindungsaufbau-Nachricht
an den Endpunkt Client 2. Die H.225.0 Verbindungsaufbau-Nachricht
enthält
dieselbe GUId wie die erste primäre
Verbindung. Stattdessen könnten
die GUId's auch
entsprechend einem vorgegebenen Algorithmus verknüpft sein,
wie etwa sequentiell, solange der Endpunkt Client 2 und die redundante
Zuweisungsschicht 115 des Bandwidth Allocation Managers 113 den
empfangenen Verbindungsaufbau als für eine redundante Verbindung
bestimmt erkennen. Der Endpunkt Client 2 erkennt die GUId als zu
einer sekundären
Verbindung gehörend und
akzeptiert die neue Verbindung, indem er eine H.225.0 Connect-Nachricht
an den Gatekeeper GK 2 zurücksendet,
welcher seinerseits die H.225.0 Connect-Nachricht an den Endpunkt
Client 1 sendet. Der Endpunkt Client 2 stellt jedoch keine neuen
Medienkanäle
für diese
Verbindung mit dem Endpunkt Client 1 her.
-
Falls
der Gatekeeper GK 1 während
der gesamten Dauer der Verbindung funktionsfähig bleibt, sendet, wenn einer
der Teilnehmer die Verbindung trennt, zum Beispiel am Client 1,
der Endpunkt Client 1 über
die Pfade 502, 506 Verbindungsabbau-Nachrichten
(Clearing Messages) an die Gatekeeper GK 1 und GK 2. Der Gatekeeper
GK 1 beendet die Verbindung, indem er Verbindungsabbau-Nachrichten
an den Endpunkt Client 2 sendet und mit Client 1 und Client 2 DRQ/DCF-Nachrichten austauscht.
GK 1 informiert außerdem über den
Pfad 512 den Bandwidth Allocation Manager 113 darüber, dass
er die Bandbreite für
die primäre
Verbindung freigegeben hat und dass die redundante Zuweisungsschicht 115 die GUId
für die
primäre
und die sekundäre
Verbindung, welche diese GUId benutzt haben, löschen kann. Die Signalisierungskanäle 502, 504 für die primäre Verbindung
werden dann geschlossen.
-
Der
Endpunkt Client 1 führt
dann dieselben Aktionen mit dem Gatekeeper GK 2 durch, um die sekundäre Verbindung
abzubauen, und die sekundären Signalisierungskanäle 506, 508 werden
geschlossen. Die Redundanz-Überwachungsschicht 111a, 111b in
jedem Endpunkt-Client führt
die Verbindungsauslösungs-Funktion
(und eventuelle damit zusammenhängende
Merkmale) auf der Basis der Verbindungsabbau-Nachrichten aus, die mit den Gatekeepern
GK 1 und GK 2 ausgetauscht wurden.
-
Falls
der Gatekeeper GK 1 während
der Verbindung ausfällt,
gehen die Signalisierungskanäle 502, 504 zwischen
den Endpunkten Client 1 und Client 2 verloren. Der Ausfall des Gatekeepers
GK 1 wird an den Endpunkten und am Bandwidth Allocation Manager
erkannt, zum Beispiel als ein Schließen eines TCP Sockets. Wie
oben erläutert,
wird gemäß der vorliegenden
Ausführungsform
der Sprachkanal 510 aufrechterhalten, und es werden die
sekundären Signalisierungskanäle 506, 508 über den
Gatekeeper GK 2 benutzt. Die redundante Zuweisungsschicht 115 des
Bandwidth Allocation Managers erkennt die Verbindungen, die vom
Gatekeeper GK 1 abgewickelt werden, und welche Verbindungen eine redundante
Signalisierung aufweisen, die vom Gatekeeper GK 2 abgewickelt wird.
Falls der Gatekeeper GK 1 ausfällt,
gibt der Bandwidth Allocation Manager 115 die Bandbreite
für die über den
Gatekeeper GK 1 signalisierten Verbindungen, welche keine redundante
Signalisierung haben, frei. Während
der Gatekeeper GK 1 außer
Betrieb ist, versuchen die Endpunkte des Gatekeepers, welche mit
den Redundanz-Überwachungsschichten
ausgestattet sind, nicht mehr, Verbindungen zum Gatekeeper GK 1
einzuleiten, sondern schalten um, so dass sie zur Einleitung neuer
Verbindungen den Gatekeeper GK 2 verwenden. Es ist anzumerken, dass
auch mehr als zwei Gatekeeper verwendet werden könnten. Insofern dient 5 lediglich
als Beispiel.
-
Die
Funktionsweise dieser Ausführungsform der
Erfindung wird nun unter Bezugnahme auf die Flussdiagramme der 6A–6C ausführlicher erläutert. Es
wird zunächst
auf 6A Bezug genommen; in einem Schritt 601 ruft
der Endpunkt Client 1 einen anderen Endpunkt, Client 2. Der Endpunkt
Client 1 und speziell die primäre
Zustandsmaschine 110a sendet eine ARQ-Nachricht (AdmissionRequest)
an den Gatekeeper GK 1. In einem Schritt 602 fordert der
Gatekeeper GK 1 vom Bandwidth Allocation Manager 113 Bandbreite
an. Wenn angenommen wird, dass die Bandbreite verfügbar ist,
weist der Bandwidth Allocation Manager 113 in einem Schritt 603 die
angeforderte Bandbreite zu. In einem Schritt 604 wird eine
Bandbreitenzuweisungs-Quittung
an den Gatekeeper GK 1 zurückgesendet.
Der Gatekeeper GK 1 antwortet in einem Schritt 605 mit
einer ACF-Nachricht (AdmissionConfirm), welche die angeforderte
Bandbreite bestätigt, an
die primäre
Zustandsmaschine 110a des Endpunkts Client 1. Die ACF-Nachricht enthält eine
Anrufsignalisierungs-Transportkanal-Adresse (Call Signaling Transport
Channel Address) des Gatekeepers GK 1. In Reaktion auf die ACF-Nachricht
sendet die primäre
Zustandsmaschine 110a in einem Schritt 606 eine
H.225.0 Verbindungsaufbau-Nachricht an den Gatekeeper GK 1, die
eine globale eindeutige Verbindungskennung zur Identifizierung der
Verbindung enthält.
Der Gatekeeper GK 1 sendet in einem Schritt 608 eine Anzeige
der primären
Verbindung zusammen mit ihrer GUId an die redundante Zuweisungsschicht 115 des
Bandwidth Allocation Managers 113. Die redundante Zuweisungsschicht 115 speichert
in einem Schritt 610 die GUId, ihre Verknüpfung mit
GK 1 und die Bandbreite, welche mit der Verbindung verknüpft ist.
-
In
einem Schritt 614 leitet der Gatekeeper GK 1 die H.225.0
Verbindungsaufbau-Nachricht an die primäre Zustandsmaschine 110c des
Endpunkts Client 2 weiter. In Reaktion darauf führt die primäre Zustandsmaschine 110c des
Endpunkts Client 2 in einem Schritt 616 einen ARQ/ACF-Nachrichtenaustausch
mit dem Gatekeeper GK 1 durch. In einem Schritt 618 sendet
die primäre
Zustandsmaschine 110c des Endpunkts Client 2 H.225.0 Alerting-
und Connect-Nachrichten ("Rufmeldung
erfolgt, Verbinden")
an den Gatekeeper GK 1. Der Gatekeeper GK 1 übermittelt seinerseits in einem
Schritt 620 die Alerting- und Connect-Nachrichten an die
primäre
Zustandsmaschine 110a des Endpunkts Client 1. Die Alerting-
oder Connect-Nachricht enthält
die H.245 Steuerkanal-Transportadresse (Control Channel Transport
Address), welche in einem Schritt 622 verwendet wird, um
den H.245 Steuerkanal herzustellen. Anschließend wird in einem Schritt 623 ein
H.245 Capability Exchange durchgeführt. Der Capability Exchange
kann den Austausch der zu verwendenden Codieralgorithmen und ähnliches
beinhalten. Zusätzlich
beinhaltet der Capability Exchange gemäß der vorliegenden Erfindung
einen Austausch von Informationen darüber, ob die jeweilige Seite
mit einer Redundanz-Überwachungsschicht 111 ausgestattet ist;
diese Bestimmung erfolgt in einem Schritt 625. Nach dem
Capability Exchange wird (werden) in einem Schritt 624 der
Medienkanal (die Medienkanäle) geöffnet. Falls
eine Seite nicht mit einer Redundanz-Überwachungsschicht 111 ausgestattet
ist, fährt
das System in einem Schritt 626 mit einem normalen Verbindungsaufbau
ohne Redundanz fort, und die nicht mit einer Redundanz-Überwachungsschicht ausgestattete
Seite verwendet ihre einzige Zustandsmaschine als die "primäre" Zustandsmaschine.
Falls im Schritt 625 festgestellt wird, dass beide Seiten
mit einer Redundanz-Überwachungsschicht
ausgestattet sind, sendet die primäre Zustandsmaschine 110a in
einem Schritt 627 ein Signal, welches die sekundäre Zustandsmaschine 110b aktiviert.
-
In
einem Schritt 630 sendet die sekundäre Zustandsmaschine 110b eine
ARQ-Nachricht an den Gatekeeper GK 2, und da diese eine bekannte
sekundäre
Verbindung betrifft, wird keine Bandbreite angefordert. In einem
Schritt 632 empfängt
die sekundäre
Zustandsmaschine 110b eine ACF-Nachricht vom Gatekeeper
GK 2, welche die Anrufsignalisierungs-Transportkanal-Adresse des
Gatekeepers GK 2 enthält.
In einem Schritt 634 sendet die sekundäre Zustandsmaschine 110b eine
H.225.0 Verbindungsaufbau-Nachricht an den Gatekeeper GK 2, unter
Verwendung derselben globalen eindeutigen Verbindungskennung, welche
die primäre
Zustandsmaschine 110a zuvor beim Gatekeeper GK 1 verwendet
hatte.
-
Der
Gatekeeper GK 2 sendet in einem Schritt 636 eine Anzeige
der sekundären
Verbindung und ihrer GUId an die redundante Zuweisungsschicht 115. In
einem Schritt 638 speichert die redundante Zuweisungsschicht 115 die
Verknüpfung
des Gatekeepers GK 2 mit der GUId und mit der Bandbreite, die bereits mit
der über
den Gatekeeper GK 1 hergestellten primären Verbindung verknüpft wurde.
-
In
einem Schritt 640 sendet der Gatekeeper GK 2 an den Endpunkt
Client 2 und speziell an die sekundäre Zustandsmaschine 110d die
H.225.0 Verbindungsaufbau-Nachricht, welche dieselbe globale eindeutige
Verbindungskennung enthält,
die für
die über
GK 1 hergestellte primäre
Verbindung verwendet wurde. In einem Schritt 642 führen die
sekundäre Zustandsmaschine 110d des
Endpunkts Client 2 und der Gatekeeper GK 2 den ARQ/ACF-Austausch durch
(wobei auch diesmal keine Bandbreite angefordert wird, da bekannt
ist, dass es sich bei dieser Verbindung um eine sekundäre Verbindung
handelt). In einem Schritt 644 sendet die sekundäre Zustandsmaschine 110d des
Endpunkts Client 2 eine Connect-Nachricht an den Gatekeeper GK 2.
Diese Connect-Nachricht wird vom Gatekeeper GK 2 in einem Schritt 646 zur
sekundären
Zustandsmaschine 110b des Endpunkts Client 1 weitergeleitet.
Anschließend stellt
die sekundäre
Zustandsmaschine 110b des Endpunkts Client 1 in einem Schritt 648 den
H.245 Steuerkanal mit der sekundären
Zustandsmaschine 110d des Endpunkts Client 2 her. Der Client
2 erkennt den Duplikats-Charakter dieser zweiten Verbindung und
verknüpft
in einem Schritt 650 den neuen Signalisierungs- und den
neuen Steuerkanal mit dem vorhandenen Medienkanal (den vorhandenen Medienkanälen), ohne
einen neuen Medienkanal (neue Medienkanäle) zu öffnen.
-
Es
wird nun auf 6B Bezug genommen; sie zeigt
ein Flussdiagramm, welches den Prozess der Beendigung darstellt.
In einem Schritt 651 wird die Beendigung der Verbindung
am Endpunkt Client 1 eingeleitet. Es ist anzumerken, dass die Beendigung
der Verbindung ebenso gut vom Endpunkt Client 2 aus eingeleitet
werden könnte.
In einem Schritt 652 leitet der Endpunkt Client 1 (und
insbesondere die Zustandsmaschine 110a) zum Beispiel die
Beendigung der Verbindung ein, indem er einen H.245 endSessionCommand
(Befehl "Sitzung beenden") an den Gatekeeper
GK 1 sendet, welcher den H.245 endSessionCommand zum Endpunkt Client
2 weitersendet. In einem Schritt 654 reagiert der Endpunkt Client
2 (und insbesondere die Zustandsmaschine 110c) auf den
empfangenen H.245 endSessionCommand, indem er seinen eigenen H.245
endSessionCommand an GK 1 sendet, welcher den H.245 endSessionCommand
zum Endpunkt Client 1 weitersendet. In einem Schritt 656 sendet
der Endpunkt Client 1 eine H.225 Release-Complete-Nachricht (Nachricht "Verbindung ausgelöst") an den Gatekeeper
GK 1, um den Anrufsignalisierungskanal zu schließen, und GK 1 sendet die Release-Complete-Nachricht
weiter zum Endpunkt Client 2. Die Endpunkte Client 1 und 2 informieren
dann den Gatekeeper GK 1, damit er die Bandbreite für die primäre Verbindung
freigibt, indem sie in einem Schritt 658 Disengage-Request-
(DRQ-) Nachrichten (Freigabeanforderungs-Nachrichten) an GK 1 senden.
In einem Schritt 659 antwortet der Gatekeeper GK 1 auf
die empfangenen DRQ-Nachrichten, indem er an die Endpunkte Client
1 und 2 Disengage-Confirm- (DCF-)
Nachrichten (Freigabebestätigungs-Nachrichten)
sendet.
-
Gleichzeitig
mit der Beendigung der primären
Verbindung muss auch die sekundäre
Verbindung beendet werden. In einem Schritt 662 leitet
der Endpunkt Client 1 (und insbesondere die Zustandsmaschine 110b)
die Beendigung der Verbindung ein, indem er einen H.245 endSessionCommand
an den Gatekeeper GK 2 sendet, welcher den H.245 endSessionCommand
zum Endpunkt Client 2 weitersendet. In einem Schritt 664 reagiert
der Endpunkt Client 2 (und insbesondere die Zustandsmaschine 110d) auf
den empfangenen H.245 endSessionCommand, indem er seinen eigenen
H.245 endSessionCommand an GK 2 sendet, welcher den H.245 endSessionCommand
zum Endpunkt Client 1 weitersendet. In einem Schritt 666 sendet
der Endpunkt Client 1 eine H.225 Release-Complete-Nachricht an den
Gatekeeper GK 2, um den Anrufsignalisierungskanal zu schließen, und
GK2 sendet die Release-Complete-Nachricht
weiter zum Endpunkt Client 2. Die Endpunkte Client 1 und 2 informieren
dann den Gatekeeper GK 2, damit er den Steuerkanal für die sekundäre Verbindung
freigibt, indem sie in einem Schritt 668 Disengage-Request-
(DRQ-) Nachrichten an GK 2 senden. In einem Schritt 669 antwortet
der Gatekeeper GK 2 auf die empfangenen DRQ-Nachrichten, indem er
an die Endpunkte Client 1 und 2 Disengage-Confirm- (DCF-) Nachrichten sendet.
-
Die
Gatekeeper GK 1 und GK 2 senden ferner in einem Schritt 670 ein
Signal an den Bandwidth Allocation Manager 113, durch das
angezeigt wird, dass die Verbindung beendet wird, und die Bandbreite
freigegeben wird. In einem Schritt 672 überprüft der Bandwidth Allocation
Manager 113 und speziell die redundante Zuweisungsschicht 115,
ob die mit der GUId verknüpfte
Bandbreite bereits freigegeben worden ist. Wenn nicht, wird in einem
Schritt 674 die Bandbreite freigegeben. Anschließend bestimmen die
Redundanz-Überwachungsschichten 111a und 111b in
einem Schritt 676, ob die GUId als zu einer bereits beendeten
Verbindung gehörend
erkannt wird. Falls dies zutrifft, werden keine weiteren Aktionen
durchgeführt,
außer
dass der Signalisierungskanal geschlossen wird. Falls die GUId jedoch
nicht als mit einem bereits geschlossenen Medienkanal verknüpft erkannt
wird, wird der Medienkanal in einem Schritt 678 geschlossen,
und der Signalisierungskanal wird ebenfalls geschlossen.
-
Es
wird nun auf 6C Bezug genommen, ein Flussdiagramm,
welches die Funktionsweise des Bandwidth Allocation Managers 113 und
der zugehörigen
redundanten Zuweisungsschicht 115 im Falle eines Ausfalls
eines Gatekeepers zeigt. Insbesondere fällt in einem Schritt 680 der
Gatekeeper GK 1 aus. Es ist anzumerken, dass der Ausfall des Gatekeepers
GK 1 nur als Beispiel betrachtet wird. Die vorliegende Erfindung
ist ebenso bei einem Ausfall des Gatekeepers GK 2 anwendbar. Anschließend erkennt
der Bandwidth Allocation Managers 113 in einem Schritt 682 den
Ausfall des Gatekeepers GK 1, normalerweise als einen geschlossenen
TCP Socket. In Reaktion darauf überprüft die redundante
Zuweisungsschicht 115 des Bandwidth Allocation Managers 113 im
Schritt 684, ob eine sekundäre Verbindung an einem anderen
(primären
oder sekundären) Gatekeeper
existiert, zum Beispiel durch Identifizieren von Verbindungen mit
derselben globalen eindeutigen Verbindungskennung, die sowohl GK
1 als auch einem anderen Gatekeeper, zum Beispiel GK 2, zugewiesen
wurden. Falls dies der Fall ist, bewahrt der Bandwidth Allocation
Manager 113 in einem Schritt 686 die reservierte
Bandbreite für
den anderen Gatekeeper auf, entfernt jedoch GK 1 aus der gespeicherten
Eingabe. Falls nicht, wird in einem Schritt 688 die nur
der Verbindung über
GK 1 zugewiesene Bandbreite freigegeben.