-
GEBIET DER ERFINDUNG
-
Die
vorliegende Erfindung bezieht sich auf die Telekommunikation. Insbesondere
bezieht sich die vorliegende Erfindung auf ein neues und verbessertes
Verfahren und System für
den Lastausgleich für
den Steuerebene-Verkehr eines Netzwerkelements, das mehrere CPU-(Zentralverarbeitungseinheiten)Knoten
umfasst, die einer gemeinsamen externen IP-Adresse in einem Paketdaten-Telekommunikationsnetzwerk
zugeteilt ist.
-
HINTERGRUND DER ERFINDUNG
-
Jüngste Telekommunikationsnetzwerke,
z. B. Mobilkommunikationsnetzwerke haben damit begonnen, auf dem
Internet Protokoll (IP) basierende Implementierungen einzuführen. Ein
typisches Netzwerkelement umfasst mehrere Anwendungs-CPU-Knoten.
Typischerweise wird eine externe IP-Adresse für diese CPU-Knoten verwendet,
was zu einer flexiblen skalierenden Kapazitätserweiterung, zum einfachen
Ausgleichen von Computerleistung für jeden CPU-Knoten und zu weniger
manueller Einrichtung von Anwendungen führt.
-
Allerdings
muss die Funktionalität
eines Lastausgleichers implementiert werden, da eine externe IP-Adresse
für alle
Anwendungs-CPU-Knoten verwendet wird. Da die Topologie und internen IP-Adressen
der CPU-Knoten nach außen
versteckt sind, wird ein Lastausgleicher benötigt, um Steuerebene-Verkehr, wie Signalisierung,
an die Knoten zur Verarbeitung zu leiten.
-
Da
der Lastausgleich direkt von Protokollen und miteinbezogenen Schnittstellen
abhängt
und da Protokolle und Schnittstellen in Abhängigkeit von miteinbezogenen Netzwerkelementen
variieren, muss der Lastausgleich typischerweise auf einer netzwerkelementspezifischen
Basis implementiert werden, für die
er effektiv ist.
-
Der
allgemeine Paketfunkdienst (GPRS, engl.: General Packet Radio Service)
ist ein Paketdatendienst, der konstruiert ist, um insbesondere digitale
Mobilnetze zu unterstützen,
die auf dem GSM-(globales System für Mobilkommunikation, engl.:
Global System für
Mobile Communications)Standard, UMTS-(universales Mobiltelekommunikationssystem,
engl.: Universal Mobile Telecommunications System) oder GERAN-(GSM
EDGE Funkzugangsnetz, engl.: GSM EDGE Radio Access Network)Systemen,
als auch auf dem amerikanischen Zeitmultiplexzugangs-(TDMA, engl.:
Time Division Multiple Access)System, das IS-136, basieren. Zusätzlich kann GPRS
mit einem IP-Multimedia-Subsystem (IMS) verbunden sein.
-
Ein
GPRS-fähiges
Mobilkommunikationsnetzwerk umfasst auch einen bedienenden GPRS-Unterstützungsknoten
(SGSN, engl: Serving GPRS Support Node) und einen Gateway-GPRS-Unterstützungsknoten
(GGSN, engl. Gateway GPRS Support Node). Ein SGSN liefert typischerweise
Pakete an GPRS-fähige
Mobilstationen (MS) innerhalb seines Dienstbereiches. Ein GGSN wird
typischerweise als eine Schnittstelle zu externen IP-Netzen verwendet,
wie bspw. das Internet, GPRS-Dienste anderer Mobildienstanbieter
oder Intranetzen von Unternehmen. Ein GGSN kann Routinginformation
führen,
die notwendig ist, um Protokolidateneinheiten (PDU) an den SGSN
zu tunneln, der eine bestimmte MS bedient.
-
1 offenbart
ein Beispiel für
ein Stand der Technik GPRS-fähiges
Kommunikationsnetzwerk. Das Netzwerk umfasst eine leitungsvermittelte
Kernnetz-(CS CN)Domäne
und eine paketvermittelte Kernnetz-(PS CN)Domäne. Die paketvermittelte Kernnetz-Domäne umfasst
weiter einen SGSN und einen GGSN. Ein Heimat-Teilnehmerserver (HSS) verbindet
den SGSN und das leitungsvermittelte Kernnetz miteinander. Das Netz
umfasst ferner IP-Multimedia-Subsysteme, die mit dem GGSN und dem
Heimat-Teilnehmerserver verbunden sind. Das Netz umfasst weiter
Funkzugangsnetze (RAN), die mit dem leitungsvermittelten Kernnetz
und dem paketvermittelten Kernnetz verbunden sind.
-
Ein
GGSN verwendet verschiedene Schnittstellten mit verschiedenen Protokollen.
Folglich können
verschiedene Arten von Verkehr an einem GGSN gleichzeitig ankommen.
Typischerweise muss der Verkehr, der zu einem GGSN gehört, an einen bestimmten
Teilnehmer oder an eine Sitzung an einem bestimmten Signalisierungsknoten
geliefert werden.
-
Folglich
muss der Lastausgleich für
einen GGSN, der mehrere CPU-Knoten umfasst, die einer gemeinsamen
externen IP-Adresse zugeteilt sind, verschiedene Punkte behandeln.
Die Last jedes Anwendungs-CPU-Knotens muss ausgeglichen werden.
Ferner muss die Antwortnachricht von einem Quellnetzwerkelement
an einen Zielanwendungs-CPU-Knoten weitergeleitet werden, der vorher eine
Signalisierungsanfrage an das Quellnetzwerkelement gesendet hat.
Ferner muss eine Reihe von nachfolgenden Signalisierungsnachrichten
zur Informationsaktualisierung und -führung, die von anderen Netzwerkelementen
an einen bestimmten Teilnehmer oder eine Sitzung gesendet wurden,
an den Zielanwendungs-CPU-Knoten weitergeleitet werden, der den
bestimmten Teilnehmer oder die Sitzung bedient.
-
Das
Stand der Technik Dokument
EP 1091602 bezieht
sich auf ein dynamisches Lastausgleichsverfahren bei einem drahtlosen
Kommunikationsnetzwerk, welches das erneute Kennzeichnen von aktiven
und einsatzbereiten Funksteuersoftwareinstanzen miteinbezieht, um
eine aktive Nachrichtenverarbeitung ohne Unterbrechung des Bedienens der
Zelle zu übertragen.
-
Folglich
besteht ein Bedarf für
eine Lösung, die
alle diese Punkte löst.
Stand der Technik Ausgleicher können
manchen dieser Punkte lösen.
Allerdings gibt es kein verfügbares
Verfahren, das eine Lösung
für alle
dies Punkte bereitstellt, die für
einen GGSN erwähnt
wurden, der mehrere CPU-Knoten umfasst, die einer gemeinsamen externen
IP-Adresse zugeteilt sind.
-
KURZFASSUNG DER ERFINDUNG
-
Die
vorliegende Erfindung betrifft den Lastausgleich für Steuerebene-Verkehr
eines Netzwerkelements, das mehrere CPU-Knoten umfasst, die einer gemeinsamen
externen IP-Adresse in einem Paketdaten-(fähigen)-Telekommunikationsnetzwerk
zugeteilt sind. IP-Nachrichten, die an das Netzwerkelement adressiert
sind, werden empfangen und empfangene IP-Nachrichten, die GTP-C-(GPRS Tunnelprotokoll-Steuerebene)Nachrichten,
enthalten, werden identifiziert. Zuerst wird ein Ziel-IP-Adresswert einer
empfangen IP-Nachricht identifiziert und es wird aus dem IP-Adresswert
bestimmt, ob die IP-Nachricht
zu einem Steuerebene-Verkehr oder einem Benutzerebene-Verkehr gehört. Als
Nächstes wird
ein Protokollwert einer IP-Nachricht, die zu dem Steuerebene-Verkehr gehört, identifiziert
und es wird aus dem identifizierten Protokollwert bestimmt, ob die
IP-Nachricht eine UDP-(Benutzer-Datagra, mprotokoll, engl.: User
Datagram Protocol)Nachricht oder eine TCP-(Übtertragungssteuerprotokoll,
engl.: Transmission Control Protocol)Nachricht umfasst.
-
Ein
Ziel-Port-Nummernwert einer IP-Nachricht, die eine TCP-Nachricht umfasst,
wird identifiziert und die TCP-Nachricht wird an einen CPU-Knoten,
basierend auf ihrem identifizierten Ziel-Port-Nummernwert, weitergeleitet.
Es wird ein Ziel-Port- Nummernwert
eine IP-Nachricht, die eine UDP-Nachricht umfasst, identifiziert
und es wird aus dem identifizierten Ziel-Port-Nummernwert bestimmt, ob
die UDP-Nachricht ferner eine GTP-C-Nachricht, eine GTP'-(GTP-Strich)Nachricht,
eine DHCP-(Dynamische-Host-Einrichtungs-Protokoll, engl.: Dynamic
Host Configuration Protocol)Nachricht oder eine RADIUS-(Entfernte-Authentifizierungs-Einwahl-Benutzerdienst,
engl.: Remote Authentication Dial In User Service)Nachricht umfasst.
Eine GPT'-Nachricht,
eine DHCP-Nachricht oder eine RADIUS-Nachricht wird an einen CPU-Knoten,
basierend auf ihren identifizierten Ziel-Port-Nummernwert, weitergeleitet.
-
In Übereinstimmung
mit der Erfindung wird ein TEID-C-(Tunnelendpunktkennung für Steuerebene,
engl.: Tunnel Endpoint Identifier for Control Plane)Wert einer GTP-C-Nachricht identifiziert.
Die GTP-C-Nachricht wird an einen CPU-Knoten, basierend auf ihrem
identifizierten TEID-C-Wert, weitergeleitet, wenn ihr identifizierter
TEID-C-Wert nicht gleich Null ist. Allerdings wird ferner, wenn
der identifizierte TEID-C-Wert der GTP-C-Nachricht gleich Null ist,
eine Nachrichtentypwert der GTP-C-Nachricht identifiziert. Die GTP-C-Nachricht
wird an einen CPU-Knoten unter Verwendung eines vorgegebenen Lastausgleichsverfahrens
weitergeleitet, wenn ihr identifizierter Nachrichtentypwert gleich "Erzeuge-PDP-Kontext" ist. Das vorgegebene
Lastausgleichsverfahren kann zum Beispiel auf einer Hash-Funktion oder einem
Round-Robin-Verfahren basieren. Wenn der identifizierte Nachrichtentypwert der
GTP-C-Nachricht nicht gleich "Erzeuge-PDP-Kontext" ist, wird die GTP-C-Nachricht
an einen CPU-Knoten unter Verwendung eines vorgegebenen Pfad- und Fehlermanagementverfahrens
weitergeleitet. Das vorgenannte PDP bezieht sich auf das Paketdatenprotokoll.
-
Bei
einem Ausführungsbeispiel
der Erfindung ist das Paketdaten-Telekommunikationsnetzwerk ein
GPRS-fähiges Telekommunikationsnetzwerk,
z. B. ein 3GPP-System (3. Generation Partnerschaftsprojekt, engl.:
3rd Generation Partnership Project). Ein
3GPP-System umfasst ein Teilnehmerendgerät, ein Funkzugangsnetz und
ein Kernnetz. Das Funkzugangsnetz kann das UTRAN (universale terrestrische
Funkzugangsnetz, engl.: Universal Terrestrial Radio Access Network)
und/oder GERAN sein. Das Kernnetz kann eine leitungsvermittelte
Domäne,
ein paketvermittelte Domäne
und/oder ein IP-Multimedia-Subsystem umfassen.
-
Bei
einem Ausführungsbeispiel
der Erfindung ist das Netzwerkelement ein GGSN-Element.
-
Die
vorliegende Erfindung stellt eine Lösung für verschiedene Punkte bereit,
die den Lastausgleich für
einen GGSN betreffen, der mehrere CPU-Knoten umfasst, die einer
gemeinsamen externen IP-Adresse zugeteilt sind. Die vorliegende
Erfindung macht es möglich,
die Last jedes Anwendungs-CPU-Knotens auszugleichen. Ferner macht es
die vorliegende Erfindung möglich,
die Antwortnachricht von einem Quellnetzwerkelement an einen Zielanwendungs-CPU-Knoten,
der vorher eine Signalisierungsanfrage an das Quellnetzwerkelement gesendet
hat, weiterzuleiten. Ferner macht es die vorliegende Erfindung möglich, eine
Reihe von nachfolgenden Signalisierungsnachrichten zur Informationsaktualisierung
und -führung,
die von anderen Netzwerkelementen an einen bestimmten Teilnehmer
oder Sitzung gesendet wurden, an einen Zielanwendungs-CPU-Knoten
weiterzuleiten, der den bestimmten Teilnehmer oder die Sitzung bedient.
-
KURZBESCHREIBUNG DER ZEICHNUNGEN
-
Die
beigefügten
Zeichnungen, welche beigefügt
sind, um ein weiteres Verständnis
der Erfindung bereitzustellen und einen Teil dieser Beschreibung
zu bilden, veranschaulichen Ausführungsbeispiele
der Erfindung und helfen zusammen mit der Beschreibung die Prinzipien
der Erfindung zu erklären.
In den Zeichnungen ist:
-
1 ein
Blockdiagramm, das ein Stand der Technik GPRS-fähiges
Kommunikationsnetzwerk veranschaulicht,
-
2 ein
Flussdiagramm, das ein Lastausgleichsverfahren in Übereinstimmung
mit einem Ausführungsbeispiel
der vorliegenden Erfindung veranschaulicht, und
-
3 ein
Blockdiagramm, das ein Lastausgleichssystem in Übereinstimmung mit einem Ausführungsbeispiel
der vorliegenden Erfindung veranschaulicht.
-
DETAILLIERTE BESCHREIBUNG
DER ERFINDUNG
-
Es
wird nun detailliert auf die Ausführungsbeispiele der vorliegenden
Erfindung genommen, wobei Beispiele von diesen in den beigefügten Zeichnungen
veranschaulicht sind.
-
2 veranschaulicht
ein Lastausgleichsverfahren für
Steuerebene-Verkehr eines GGSN Netzwerkelements, das mehrere CPU-Knoten
umfasst, die einer gemeinsamen externen IP-Adresse in einem GPRS-fähigen Telekommunikationsnetzwerk, z.
B. einem 3GPP System, zugeteilt sind. IP-Nachrichten, die an das
Netzwerkelement adressiert werden, werden empfangen, Phase 10.
Empfangene IP-Nachrichten, die GTP-C-Nachrichten umfassen, werden
identifiziert. Zuerst wird ein Ziel-IP-Adresswert einer empfangenen IP-Nachricht
identifiziert und es wird aus dem identifizierten Ziel-IP-Adresswert
bestimmt, ob die IP-Nachricht zum Steuerebene-Verkehr oder Benutzerebene-Verkehr
gehört,
Phase 11. Als Nächstes
wird ein Protokollwert einer IP-Nachricht identifiziert, der zum Steuerebene-Verkehr
gehört
und es wird aus dem identifizierten Protokollwert bestimmt, ob die
IP-Nachricht eine UDP-Nachricht oder eine TCP-Nachricht umfasst,
Phase 12.
-
Wenn
die Nachricht eine TCP-Nachricht ist, wird ihr Ziel-Port-Nummernwert
identifiziert und die TCP-Nachricht wird an einen CPU-Knoten weitergeleitet,
basierend auf ihrem identifizierten Ziel-Port-Nummernwert, Phase 19.
Wenn die Nachricht eine UDP-Nachricht ist, wird ihr Ziel-Port-Nummernwert identifiziert
und es wird aus dem identifizierten Ziel-Port-Nummernwert bestimmt,
ob die UDP-Nachricht ferner eine GTP-C-Nachricht, eine GTP'-Nachricht, eine
DHCP-Nachricht oder
eine RADIUS-Nachricht umfasst, Phase 13. Eine GTP'-Nachricht, eine
DHCP-Nachricht oder eine RADIUS-Nachricht
wird an einen CPU-Knoten auf Grundlage ihres identifizierten Ziel-Port-Nummernwerts
weitergeleitet, Phase 19.
-
Wenn
die Nachricht eine GTP-C-Nachricht ist, wird ihr TEID-C-Wert identifiziert,
Phase 14. Bei Phase 18 wird die GTP-C-Nachricht an einen CPU-Knoten
auf Grundlage ihres identifizierten TEID-C-Werts weitergeleitet,
wenn ihr identifizierter TEID-C-Wert nicht gleich Null ist. Allerdings
wird ferner, wenn der identifizierte TEID-C-Wert der GTP-C-Nachricht gleich
Null ist, ein Nachrichtentypwert der GTP-C-Nachricht identifiziert, Phase 15.
Die GTP-C-Nachricht wird an einen CPU-Knoten durch Verwenden eines
vorgegebenen Lastausgleichsverfahrens weitergeleitet, wenn ihr identifizierter
Nachrichtentypwert gleich "Erzeuge-PDP-Kontext" ist, Phase 17.
Wenn der identifizierte Nachrichtentypwert der GTP-C-Nachricht nicht
gleich "Erzeuge-PDP-Kontext" ist, wird die GTP-C-Nachricht
an einen CPU-Knoten
durch Verwenden eines vorgegebenen Pfad- und Fehlermanagementverfahrens
weitergeleitet, Phase 16.
-
3 veranschaulicht
ein Lastausgleichssystem für
Steuerebene-Verkehr eines GGSN-Netzwerkelements, das mehrere CPU-Knoten
umfasst, die einer gemeinsamem externen IP-Adresse in einem GPRS-fähigen Telekommunikationsnetzwerk zugeteilt
sind, z. B. ein 3GPP-System. Bei dem Ausführungsbeispiel der Erfindung,
das in 3 offenbart ist, umfasst das Telekommunikationsnetzwerk ein
SGSN-Netzwerkelement SGSN, das mit dem GGSN-Netzwerkelement GGSN
durch die Gn-Schnittstelle unter Verwendung des GTP-C-Protokolls über dem
UDP-Protokoll verbunden ist. Das Telekommunikationsnetzwerk umfasst
ferner ein Charging-Gateway CG, das mit dem GGSN-Netzwerkelement
GGSN durch eine Ga-Schnittstelle verbunden ist, die das GTP'-Protokoll über dem UDP-Protokoll verwendet.
Das Telekommunikationsnetzwerk umfasst weiter ein LIG (Legal Interception Gateway),
das mit dem GGSN-Netzwerkelement GGSN durch die X11-Schnittstelle
verbunden ist, die eine Hersteller-abhängiges Protokoll verwendet,
z. B. LAP-Protokoll (Lawful-Interception Anwendungsprotokoll) über dem
TCP-Protokoll. Das
Telekommunikationsnetzwerk umfasst weiter eine CSCF (Rufzustandssteuerfunktion,
engl.: Call State Control Function, die manchmal auch als eine Ruf-Serversteuerfunktion
bezeichnet wird, engl.: Call Server Control Function; typischerweise
wird sie zum Ausführen
von Rufsteuerfunktionen, Dienstvermittlungsfunktionen, Adressübersetzungsfunktionen
und Sprachentschlüsselungsübertragungsfunktionen,
engl.: vocoder negotiation functions, verwendet), die mit dem GGSN-Netzwerkelement GGSN
durch die Go-Schnittstelle verbunden ist, die das COPS-(gemeinsamer
offener Richtliniendienst, engl.: Common Open Policy Service)Protokoll über dem
TCP-Protokoll verwendet.
Das Telekommunikationsnetzwerk umfasst weiter ein externes IP-Netzwerk
IP, das mit dem GGSN-Netzwerkelement
GGSN durch die Gi-Schnittstelle verbunden ist, die das DHCP- und/oder
RADIUS-Protokoll über
dem UDP-Protokoll verwendet.
Daher dient 3 dazu, zu veranschaulichen,
wie das GGSN verschiedene Schnittstellen mit verschiedenen Protokollen
verwendet. Verschiedene Arten von Verkehr können an dem GGSN gleichzeitig
ankommen. Typischerweise muss der Verkehr, der zu dem GGSN gehört, an eine
bestimmten Teilnehmer oder eine Sitzung an einem bestimmten Signalisierungsknoten
geliefert werden.
-
Bei
dem Ausführungsbeispiel
der Erfindung, das in 3 offenbart ist, umfasst das
GGSN-Netzwerkelement GGSN CPU-Knoten
CPU1, CPU2, und CPU3, die einer gemeinsamen externen IP-Adresse zum
Empfangen von IP-Nachrichten zugeteilt sind. Das System umfasst
ferner ein erstes Identifizierungsmittel ID1 zum Identifizieren
empfangener IP-Nachrichten, die GTP-C-Nachrichten umfassten, ein zweites Identifizierungsmittel
ID2 zum Identifizieren eines TEID-C-Wertes einer GTP-C-Nachricht,
ein erste Weiterleitungsmittel FWD1 zum Weiterleiten einer GTP-C-Nachricht
mit einem TEID-C-Wert, der nicht gleich Null ist, an einen CPU-Knoten
auf Grundlage des TEID-C-Wertes, ein drittes Identifizierungsmittel
ID3 zum weiteren Identifizieren eines Nachrichtentypwerts einer
GTP-C-Nachricht
mit einem TEID-C-Wert, der gleich Null ist, ein zweites Weiterleitungsmittel
FWD2 zum Weiterleiten einer GTP-C-Nachricht
mit einem Nachrichtentypwert, der gleich "Erzeuge-PDP-Kontext" ist, an einen CPU-Knoten unter Verwendung
eines vorgegeben Lastausgleichsverfahrens, und ein drittes Weiterleitungsmittel
FWD3 zum Weiterleiten einer GTP-C-Nachricht
mit einem Nachrichtentypwert, der nicht gleich "Erzeuge-PDP-Knotest" ist, an einen CPU-Knoten unter Verwendung
eines vorgegebenen Pfad- und Fehlermanagementverfahrens.
-
Das
in 3 veranschaulichte System umfasst weiter ein viertes
Identifizierungsmittel ID4 zum Identifizieren eines Ziel-IP-Adresswertes
einer empfangenen IP-Nachricht und Bestimmen aus dem identifizierten
Ziel-IP-Adresswertes, ob die IP-Nachricht zum Steuerebene-Verkehr
oder Benutzerebene-Verkehr
gehört,
ein fünftes
Identifizierungsmittel ID5 zum Identifizieren eines Protokollwerts
einer IP-Nachricht, die zum Steuerebene-Verkehr gehört, und
Bestimmen aus dem identifizierten Protokollwert, ob die IP-Nachricht
eine UDP-Nachricht
oder eine TCP-Nachricht umfasst, und ein sechstes Identifizierungsmittel
ID6 zum Identifizieren eines Ziel-Port-Nummernwerts einer IP-Nachricht,
die eine TCP-Nachricht umfasst, und Weiterleiten der TCP-Nachricht
an einen CPU-Knoten
auf Grundlage ihres identifizierten Ziel-Port-Nummernwerts.
-
Das
in 3 veranschaulichte System umfasst ferner ein siebtes
Identifizierungsmittel ID7 zum Identifizieren eines Ziel-Port-Nummernwerts
einer IP-Nachricht, die eine UDP-Nachricht
umfasst, und Bestimmen aus dem identifizierten Ziel-Port-Nummernwert,
ob die UDP-Nachricht weiter eine GTP-C-Nachricht, eine GTP'-Nachricht, eine DHCP-Nachricht
oder eine RADIUS-Nachricht umfasst, und ein achtes Identifizierungsmittel
ID8 zum Weiterleiten einer GTP'-Nachricht, einer DHCP-Nachricht
oder einer RADIUS-Nachricht an einen CPU-Knoten auf Grundlage ihres
identifizierten Ziel-Port-Nummernwerts.
-
Einem
Fachmann ist offensichtlich, dass mit dem Fortschreiten der Technologie
die Grundidee der Erfindung auf verschiedene Arten ausgeführt werden
kann. Die Erfindung und ihre Ausführungsbeispiele sind deshalb
nicht auf die oben beschriebenen Beispiele eingeschränkt, sondern
sie können
innerhalb des Schutzbereiches der Ansprüche variieren.