-
HINTERGRUND
DER ERFINDUNG
-
Diese
Erfindung betrifft eine Netzarchitektur mit einer replizierten Datenbank.
Insbesondere betrifft die Erfindung die Bereitstellung einer gleichmäßigen Lastaufteilung
von Abfragen zwischen den replizierten Datenbanken in dem Netz.
-
In
den frühen
1980er wurden zentralisierte Datenbanken, die als Netzsteuerpunkte
(Network Control Points; NCP) bezeichnet werden, in Signalisierungsnetze
von AT&T eingeführt, um
den Kreditkarten-Anrufdienst und den 800-Dienst zu unterstützen. Die
Netzarchitektur mit diesen Netzsteuerpunkten erlaubte intelligente
Netzdienste zum Bereitstellen einer Anrufbehandlungsinformation
im Ansprechen auf Netzabfragen.
-
Die
Netzsteuerpunkte für
den 800-Dienst werden zum Bespiel überall in den Vereinigten Staaten
eingerichtet, um den Data Base 800-Service zu unterstützen, der
durch die Federal Communication Commission vorgeschrieben wird.
In der Netzarchitektur eines derartigen 800-Dienstes werden Anrufe mit
der 800-Nummer von einem lokalen Verzweiger oder einer Endvermittlungsstelle
an eine Netzvermittlungsstelle verzweigt, die Netzabfragen an den
Network Control Point schickt. Der Netzsteuerpunkt übersetzt
die 800-Nummer in eine Verzweigungsnummer und gibt die Verzweigungsnummer
an die Netzvermittlungsstelle zurück. Die Netzvermittlungsstelle
verzweigt bzw. leitet den Anruf danach an einen geeigneten Netzbetreiber
auf Grundlage dieser Verzweigungsnummer.
-
Die
Netzsteuerpunkte sind dafür
ausgelegt, um ein Wachstum und zusätzliche Dienste aufzunehmen.
Zum Beispiel sind die Netzsteuerpunkte als Hochkapazitätssysteme
konstruiert, die mehr als eine Million Abfragen pro Stunde behandeln.
Ferner sind alternative Abrechnungsdienste (Alternate Billing Services;
ABS), wie beispielsweise ein R-Gespräch Dienst und ein Anrufdienst
für die
Abrechnung-aneine-dritte Nummer, unter Verwendung der Netzsteuerpunkt-Architektur
implementiert worden. Die Netzsteuerpunkte umfassen replizierte
Datenbanken, die die gleichen Aufzeichnungen enthalten, und zwar
wegen Zuverlässigkeitsgründen gegenüber natürlichen
Katastrophen, wie beispielsweise Feuer und Flut.
-
Mit
einer zunehmenden Anzahl von Kommunikationsdiensten, die in das
Netz eingeführt
werden, und zunehmend ausgefeilteren Diensten ist die Entwicklung
einer Vorgehensweise, um sicherzustellen, dass Abfragen unter verfügbaren Netzsteuerpunkten gleichmäßig behandelt
werden, eine wichtige Aufgabe. Wenn zum Bespiel die Steuerpunkte,
die einen Satz von replizierten Datenbanken in dem Telekommunikationsnetz
umfassen, ein großes
Volumen von Abfragen empfangen, die an jeder der replizierten Datenbanken
behandelt werden können,
ist es wesentlich, ankommende Abfragen nur an verfügbare Datenbanken
zu richten.
-
Es
ist deshalb eine Aufgabe dieser Erfindung, zuverlässige Verfahren
und Netze bereitzustellen, die ein großes Volumen von Abfragen an
den verteilten Anwendungen behandeln können.
-
Es
ist eine spezifischere Aufgabe dieser Erfindung Verfahren und Netze
bereitzustellen, die eine gleichmäßige Lastenverteilung von Abfragen
unter verfügbaren
Datenbanken, die die gleiche Software und die gleichen Daten enthalten,
vornehmen können.
-
Der
Artikel „Database
Query Scheduling in Common Channel Signalling Network" von K.J. Lee et
al., veröffentlicht
in den „Proceedings
of 7th Annual Joint Conference of the IEEE
Computer and Communication Societies", 27-28 March 1988, pp976-985 vergleicht
das Betriebsverhalten von drei Verfahren zum Zugreifen auf ein System
von zwei replizierten Datenbanken. Die drei Verfahren sind das „wahrscheinliche
Aufsplitten" („Probabilistic
Splitting"), die „Ringabfrage" („Round
Robin") und das „Übergehen zu
der kürzeren
Schlange" (Join
the Shorter Queue"). Das
Betriebsverhalten von jedem der drei Zugriffsverfahren wird für eine große Anzahl
von ankommenden Abfragen simuliert.
-
Der
Artikel enthält
keine Offenbarung dahingehend, wie das „Ringabfrage" Verfahren in der
Praxis implementiert werden könnte.
-
Die
EP-A0 702 496 offenbart ein Verfahren zum Aktualisieren eines Systems
von replizierten Datenbanken, welches eine Konsistenz zwischen jeder der
replizierten Datenbanken sicherstellt. Die EP-A0 702 496 erwähnt einen „verallgemeinerten
Ringabfrage-Algorithmus" als
ein mögliches
Verfahren zum Zugreifen auf die replizierten Datenbanken, gibt aber keine
Einzelheiten von einem derartigen Algorithmus an.
-
Die
vorliegende Erfindung stellt ein Verfahren zum Bereitstellen einer
gleichmäßigen Lastaufteilung
einer Ringabfrage einer Vielzahl von replizierten Datenbanken in
einer Netzarchitektur bereit, die auf eine Netzbedingung anspricht,
wobei das Verfahren dadurch gekennzeichnet ist, dass es die folgenden
Schritte umfasst: Erzeugen einer Ringverzweigungstabelle mit korrelierten
Indexnummern, Punktcodes und Untersystemnummern der replizierten
Datenbanken; Ansprechen auf ankommende Abfragen mit einem Durchsuchen
der Ringverzweigungstabelle durch Inkrementieren auf eine Nachfolger-Indexnummer; und
Abfragen des entsprechenden Punktcodes und der Untersystemnummer
einer verfügbaren
Datenbank, um eine Adresse einzustellen, an die eine der ankommenden
Abfragen gerichtet werden soll.
-
Andere
Merkmale der Erfindung sind in den abhängigen Ansprüchen aufgeführt.
-
Die
obigen und andere Aufgaben der Erfindung werden in Übereinstimmung
mit den Prinzipien der Erfindung dadurch gelöst, dass eine gleichmäßige Lastverteilung
von Abfragen in einer Netzarchitektur mit replizierten Datenbanken
mit einer Fähigkeit zum
Ansprechen auf deren Netzbedingungen bereitgestellt wird. Das Netz
umfasst eine Ringverzweigungstabelle mit korrelierten Indexnumnmern,
Punktcodes und Adressen der replizierten Datenbanken. Die Netzarchitektur
spricht auf ankommende Abfragen mit einem Durchsuchen der Ringverzweigungstabelle
durch Inkrementieren einer Nachfolger-Indexnummer an. Zum Beispiel
kann eine Vermittlungsstelle in einem Kommunikationsnetz auf ankommende
Abfragen mit einem Durchsuchen der Ringverzweigungstabelle ansprechen.
Alternativ kann ein Transferknoten in einem Telekommunikationsnetz,
welches für
eine Verzweigung von Nachrichten zwischen Vermittlungsstellen und
Datenbanken konstruiert ist, auf ankommende Abfragen mit einem Durchsuchen
der Ringverzweigungstabelle ansprechen. Das Durchsuchen der Ringverzweigungstabelle
stellt eine verfügbare
Adresse der Datenbank bereit, wohin die Abfrage gerichtet ist.
-
Weitere
Merkmale der Erfindung, deren Grundgedanken und deren verschiedener
Vorteile ergeben sich näher
aus den folgenden Zeichnungen und der folgenden ausführlichen
Beschreibung der bevorzugten Ausführungsformen.
-
KURZBESCHREIBUNG
DER ZEICHNUNGEN
-
In
den Zeichnungen zeigen:
-
1 ein
vereinfachtes Blockdiagramm eines illustrativen Netzes, welches
in Übereinstimmung
mit dieser Erfindung betrieben werden kann;
-
2 eine
illustrative Ausführungsform
eines Eingangs und Ausgangs einer Ringverzweigungsmaschine dieser
Erfindung;
-
3 eine
illustrative Ringverzweigungstabelle, die in Übereinstimmung mit dieser Erfindung verwendet
werden kann;
-
4a-b
(kollektiv bezeichnet als 4) ein Flussdiagramm
von Schritten zum Ausführen
einer illustrativen Ausführungsform
dieser Erfindung; und
-
5 ein
Flussdiagramm von Schritten zum Ausführen einer anderen illustrativen
Ausführungsform
dieser Erfindung.
-
AUSFÜHRLICHE
BESCHREIBUNG DER BEVORZUGTEN AUSFÜHRUNGSFORMEN
-
In
der illustrativen Ausführungsform,
die in 1 gezeigt ist, ist eine repräsentative Kommunikationsnetzarchitektur
zum Abfragen von replizierten kommerziellen Datenbanken gezeigt.
Wie in dieser Anwendung gezeigt bezieht sich ein Segmentierungsverzeichnis
(Segmentation Directory; „SD") auf einen beispielhaften
Netzsteuerpunkt oder eine replizierte Datenbank, hinzugefügt zu einem
herkömmlichen
Telekommunikationsnetz. Die SDs enthalten allgemein die gleiche
Software und Kundendaten und werden verwendet, um Dienstprozessoren
oder Netzanwendungsprozessoren zu lokalisieren, die intelligente
Netzdienste auf Grundlage von gewählten Nummern ausführen. Ein
Signaltransferpunkt (Signal Transfer Point; „STP") bezieht sich auf eine Paketvermittlungsstelle
mit hoher Kapazität
zum Verzweigen von Signalnachrichten zwischen Vermittlungsstellen und
Datenbanken, wie SDs. Lucent 4ESS® („4ESS") ist eine repräsentative
Vermittlungsstelle in einem Telekommunikationsnetz.
-
Das
illustrative Kommunikationsnetz 100 der vorliegenden Erfindung
umfasst einen Satz von SDs, STPs und 4ESS, die über Strecken des Signalisierungssystems
7 (Signaling System 7; „SS7") untereinander verbunden
sind, die normalerweise bei 56 kb/s in Nordamerika und bei 64 kb/s
in Europa arbeiten. Es ist keine Anforderung, dass die SDs alle
mit den STPs untereinander verbunden sind, aber dies ist hier zur
Vereinfachung gezeigt. Zum Beispiel könnte das SD1 102 nur
mit dem STP1 108 verbunden sein,
während
das SD2 104 nur mit dem STP2 110 verbunden ist. Da jedes der
SDs die gleiche Anwendung ausführt
und eine identische Kopie von Kundendaten enthält kann die 4ESS Vermittlungsstelle 112 eine
Abfrage an irgendeines der SDs senden, das die Abfrage richtig verarbeiten
und auf die Abfrage reagieren kann.
-
Die
bevorzugte Ausführungsform
der vorliegenden Erfindung stellt eine 4ESS Vermittlungsstelle 112 bereit,
um einen Rundabfragealgorithmus (Round-Robin-Algorithm) zu implementieren,
um ankommende Abfragen unter den replizierten SD1 102, SD2 104 und SD3 106 gleichmäßig in der
Last zu verteilen. Somit würde
die 4ESS Vermittlungsstelle 112 die Abfrage für den ersten
empfangenen Anruf an SD1 102 senden.
Der nächste
Anruf würde
zu einer Abfrage an SD2 104 führen und
der folgende Anruf würde
zu einer Abfrage an den SD3 106 führen. Die 4ESS
Vermittlungsstelle 112 berücksichtigt beim Ausführen des
Ringalgorithmus verschiedene Faktoren, wie beispielsweise die SS7
Routen-Zugriffsfähigkeit
des SDs, den SS7 Routenstaustatus des SD und die SD Anwendungsverfügbarkeit,
wie nachstehend mit näheren
Einzelheiten beschrieben wird.
-
Eine
alternative Ausführungsform
der vorliegenden Erfindung ermöglicht,
dass der Rundabfragealgorithmus an dem zusammengepassten Paar von STP1 108 und STP2 110 ausgeführt wird,
um die Verarbeitungsbelastung an der 4ESS Vermittlungsstelle 112 zu
verringern. Der implementierte Algorithmus für STP1 108 und
STP2 110 sind fast identisch wie
der Algorithmus, der in der 4ESS Vermittlungsstelle 112, die
voranstehend beschrieben wurde, implementiert ist. Der Unterschied
wird unter Bezugnahme auf die 4 und 5 beschrieben.
-
2 zeigt
einen illustrativen Eingang 200 und einen Ausgang 204 der
4ESS Vermittlungsstelle 112 (1), wo der
Round-Robin-Algorithmus 202 der vorliegenden Erfindung
implementiert ist. Wie gezeigt führt
die linke Spalte die Header (Anfangsblöcke) des Eingangs 200,
die in die 4ESS Vermittlungsstelle 112 (1)
eingetreten sind, auf und die rechte Spalte führt die Header (Anfangsblöcke) des
Ausgangs 204, die von der 4ESS Vermittlungsstelle 112 erzeugt
werden, auf (1). Diese Header sind alle Teil
der gleichen Nachricht, die verzweigt werden muss. Der Inhalt des
Eingangs 200 und des Ausgangs 204 können in
wenigstens die folgenden Typen von Headern kategorisiert werden:
Nachrichtentransferteil (Message Transfer Part; „MTP") Header 206 und 210,
Signalisierungs-Verbindungssteuerteil (Signaling
Connection Control Part; „SCCP") Header 208 und 212,
und Übersetzungsmöglichkeiten-Anwendungsteil
(Translation Capabilities Application Part; „TCAP") Header 214 und 216.
-
Die
MTP-Header 206 und 210 können jeweils die folgenden
Parameter umfassen, sind jedoch nicht darauf beschränkt: Zielpunktcode
(Destination Point Code; „DPC"), Ursprungs-Punktcode (Originating
Point Code; „OPC") und Signalisierungsstrecken-Auswahl
(Signaling Link Selection; „SLS"). DPC ist die Adresse,
an die eine Nachricht gesendet werden soll. OPC zeigt den Ursprung
der Nachricht an, sodass die Antwort auf die Abfrage an den Signalisierungspunkt
zurückgegeben
werden kann, der die Nachricht hervorgebracht hat. SLS wird verwendet, um
Signalisierungsnachrichten über
einen Streckensatz in dem SS7 Netz in der Last zu verteilen. Die
SCCP-Header 208 und 212 können jeweils die folgenden
Parameter umfassen: Nachrichtentyp (Message Type), Dienstklasse
(Class of Service) und Adressen der angerufenen Gegenstelle. In
einer typischen SS7 Verzweigung gibt es eine Funktion, die mit Globaltitel-Übersetzung bezeichnet wird
und die für
eine Verzweigung auf einem höheren
Niveau von, zum Beispiel, 800 Abfragen, verwendet wird. Die Globaltitel-Übersetzung
wird auch für
einen Anruf verwendet, der die Ringverzweigung der vorliegenden
Erfindung für
eine gleichmäßige Lastverteilung
erfordert. Die TCAP-Header 214 und 216 können jeweils
eine Application Query Information einschließen, die ein Teil des Protokolls
für eine
anrufende Anwendung ist. Sie leitet den größten Teil der anwendungsspezifischen Information
von der Vermittlungsstelle an die Datenbank, sodass die Datenbank
auf eine Abfrage reagieren kann.
-
Zum
Beispiel muss ein ankommender Anruf, der eine Abfrage auf eine Datenbank
erfordert, die Adresse kennen, an die die Abfrage gesendet werden
soll. Für
einen Anruf, der eine Ringumlaufverzweigung der Abfrage erfordert
wird der DPC eines derartigen Anrufs auf die 4ESS Vermittlungsstelle 112 (1)
selbst eingestellt. Wenn die Vermittlungsstelle die Ringumlauf-Verzweigungstabelle
aufweist, dann betrachtet die 4ESS Vermittlungsstelle 112 (1)
den Routing Indicator (Verzweigungsanzeiger) in der Called Party
Address (Adresse der angerufenen Gegenstelle). Der Verzweigungs-Anzeiger kann
auf eine Punktcode-Verzweigung oder eine Globaltitel-Verzweigung eingestellt
werden. Wenn der Anruf sich auf eine Globaltitel-Verzweigung bezieht,
dann legt die 4ESS Vermittlungsstelle 112 (1)
in die Übersetzungs-Typ-
und Globaltitel-Adresse der Adresse der angerufenen Gegenstelle.
Wenn die Übersetzungs-Typ-
und Globaltitel-Adresse eine Ringumlaufverzweigung anzeigen, dann
bestimmt die 4ESS Vermittlungsstelle 112 (1),
dass der Rundumlauf-Verzweigungsalgorithmus 202 verwendet
werden sollte, und macht mit dem Eingang 200 weiter, um
einen Nachschlag in der Ringumlauf-Verzweigungstabelle vorzunehmen,
die in Bezug auf 3 diskutiert wird. Der Nachschlag stellt
einen Ausgang 204 bereit, der den auf eine bestimmte Datenbank
zeigenden DPC einschließt.
Die Datenbank wird mit SDn bezeichnet, was
irgendeine der SD1 102, SD2 104 oder SD3 106 (1)
sein kann. Die Abfrage wird danach an das gewählte SDn durch
die 4ESS Vermittlungsstelle 112 (1) gesendet.
Die Datenbank SDn verarbeitet wiederum die Abfrage
und sendet die Antwort auf die Abfrage zurück an die 4ESS Vermittlungsstelle 112 (1).
-
3 illustriert
eine beispielhafte Ringumlauf-Verzweigungstabelle 300,
die Spalten von Indexnummern 302, Punktcodes 304 und
Untersystemnummer 306 einschließen. Die Indexnummern liegen im
Bereich von 0 bis n-1 und berücksichtigen
n replizierte Datenbanken SDn in dem Netz 100 (1),
die für
eine ankommende Abfrage an der 4ESS Vermittlungsstelle 112 (1)
verfügbar
sind. Die Punktcodes stellen zentrale Informationsteile bereit,
die zu einer entsprechenden Datenbank führen. Ferner werden die Untersystemnummern
bereitgestellt, da in jeder Datenbank mehrere Untersysteme mit unterschiedlichen
Anwendungen vorhanden sein können, die
zum Beispiel einen 800-Dienst, einen Privatnetzdienst, etc. einschließen.
-
4 ist ein Flussdiagramm, das eine illustrative
Sequenz von Schritten in Übereinstimmung
mit der bevorzugten Ausführungsform
aufweist, wenn der Ringverzweigungsalgorithmus an der 4ESS Vermittlungsstelle 112 (1)
implementiert ist.
-
Im
Schritt 400 empfängt
die 4ESS Vermittlungsstelle 112 (1) eine
SS7-Nachricht zur Verzweigung. Diese SS7-Nachricht ist ein Eingang (2),
der eine MTP 206 (2) und SCCP 208 (2)
Information aufweist. Aus einer derartigen Information bestimmt
die 4ESS Vermittlungsstelle 112 (1) im Schritt 402,
ob die SS7-Nachricht eine Globaltitel-Übersetzung benötigt (Global
Title Translation), die zum Bespiel für den 800-Dienst benötigt wird,
um eine 800-Nummer in eine SS7-Netz-Adresse der Datenbank zu übersetzen,
die die Anwendung ausführen
würde,
um die 800-Nummer in eine herkömmliche
Verzweigungsnummer zu übersetzen. Um
die Anforderung der Globaltitel-Übersetzung
zu bestimmen überprüft die 4ESS
Vermittlungsstelle 112 (1) den Verzweigungsanzeiger
des SCCP-Headers 208 (2).
Wenn der Verzweigungsanzeiger auf eins gesetzt ist, dann benötigt die SS7-Nachricht nicht eine
Verzweigung mit dem Globalen Titel (Global Title). Wenn die SS7-Nachricht nicht
eine Globaltitel-Verzweigung erfordert, dann führt die 4ESS Vermittlungsstelle 112 (1)
im Schritt 404 eine Punktcode-Verzweigung aus, bei der der
Ringalgorithmus nicht beteiligt ist.
-
Wenn
andererseits der Verzweigungsanzeiger auf null gesetzt ist, erfordert
sie eine Verzweigung mit dem Globalen Titel. Wenn die SS7-Nachricht
die Globaltitel-Verzweigung erfordert, dann bestimmt die 4ESS Vermittlungsstelle 112 (1)
im Schritt 406, ob die Globaltitel-Übersetzung die Verwendung des Ringverzweigungsalgorithmus
erfordert, indem der Übersetzungs-Typ
und die Globaltitel-Adresse in dem SCCP-Header 208 überprüft wird.
Wenn der Übersetzungs-Typ
(Translation Typ) auf eine andere Globaltitel-Übersetzung (Global Title Translation)
gesetzt ist, wie beispielsweise auf einen 800-Dienst oder einen
Privatnetz-Dienst, führt
die 4ESS Vermittlungsstelle die spezifizierte Verzweigung (Routing) im
Schritt 408 aus. Wenn der Übersetzungs-Typ und die Globaltitel-Adresse
auf eine Ringverzweigung gesetzt ist, dann durchsucht die 4ESS Vermittlungsstelle 112 die
Ringtabelle 300 (3), wie
unter Bezugnahme auf 3 diskutiert. Somit werden im
Allgemeinen sowohl der Übersetzungs-Typ
(Translation Typ) als auch die Globaltitel-Adresse (Global Title Address)
verwendet, um eine Ringverzweigung zu bestimmen.
-
Die
4ESS Vermittlungsstelle 112 (1) im Schritt 410 verwendet
einen Modulus n Zähler,
sodass n bei null startet, und wird um eins bis n-1 inkrementiert,
wobei der Zähler
n auf null bei der nächsten Zählung zurückkehrt.
Jeder Index n verweist auf Daten in der Tabelle, die den Punktcode
(Point Code) oder den MTP Ziel-Punktcode (Destination Point Code; „DPC") und die Untersystem-Nummer
oder die SCCP Untersystemnummer („SSN") Adressen für die spezifische replizierte
Datenbank enthält,
wie in der Tabelle 300 gezeigt (3).
-
Insbesondere
stellt PC0 einen Zeiger auf den letzten
Punktcode 304 (3) und die Untersystemnummer 306 (3)
dar, an die eine Abfrage für
einen Anruf gesendet wurde. Dieser Zeiger PC0 wird für den Fall
verwendet, dass eine erneute Abfrage für diesen gleichen Anruf benötigt wird.
Eine erneute Abfrage würde
benötigt
werden, wenn keine Antwort für die
anfängliche
Abfrage empfangen wurde. PC0 wird verwendet,
um sicherzustellen, dass eine erneute Abfrage nicht an die gleiche
Datenbank gesendet wird. PC1 stellt die
gegenwärtige
Position des Zeigers auf den Index n dar. PCL stellt
den Zeiger dar, der für die
frühere
Abfrage verwendet wurde, die eine Ringverzweigung erforderte. Der
Zeiger PC1 wird im Schritt 410 um
eins inkrementiert, sodass er auf den nächsten Zählwert von PCL gesetzt
werden würde.
-
Im
Schritt 412 bestimmt die 4ESS Vermittlungsstelle 112 (1),
ob diese Abfrage eine Wiederholung der ersten Abfrage ist, für einen
spezifischen Anruf an der 4ESS. Wenn zum Bespiel keine Antwort für die anfängliche
Abfrage eines Anrufs empfangen wurde, wird eine erneute Abfrage
auftreten. Wenn die 4ESS Vermittlungsstelle 112 (1) bestimmt,
dass die gegenwärtige
Abfrage eine erneute Abfrage ist, dann überprüft die 4ESS Vermittlungsstelle 112 (1)
im Schritt 414, ob PC1 = PC0 ist, d.h. ob der Punktcode-Index auf den
ursprünglichen
Punktcode zeigt, der abgefragt wurde, als der Anruf zum ersten Mal
in die 4ESS Vermittlungsstelle 112 (1) kam.
Wenn bestimmt wird, dass PC1 = PC0 ist, dann inkrementiert die 4ESS Vermittlungsstelle 112 im
Schritt 416 den Index um eins, sodass die Abfrage an die
nächste
Datenbank gerichtet wird.
-
Im
Schritt 418 bestimmt die 4ESS Vermittlungsstelle 112 (1),
ob PC1 = PCL + 1
ist, d.h. ob der Zeiger auf die Datenbank zeigt, die von der früheren Abfrage,
die von der Vermittlungsstelle gesendet wurde, erfolgreich abgefragt
wurde. Dies prüft,
ob der Zeiger wieder da ankommt, wo er seine Abfrage-Verzweigungsanfrage
in der Tabelle 300 gestartet hat (3).
-
Wenn
der Zeiger darauf zeigt, wo die 4ESS Vermittlungsstelle 112 (1)
ihre Abfragesequenz in der Tabelle 300 gestartet hat (3),
dann stellt die 4ESS Vermittlungsstelle 112 (1)
eine Fehlernachricht im Schritt 420 bereit. Diese Fehlernachricht wird
als ein SCCP-Fehler bezeichnet. Ansonsten kehrt die 4ESS Vermittlungsstelle 112 (1)
zu dem Schritt 412 zurück.
Wenn die 4ESS Vermittlungsstelle 112 (1)
bestimmt, dass die gegenwärtige
Abfrage nicht eine erneute Abfrage im Schritt 412 ist und
der Punktcode-Index nicht auf den ursprünglichen Punktcode verweist
(der Punktcode, der in der vorangehenden Abfrage gesendet wurde), bestimmt
die 4ESS Vermittlungsstelle 112 im Schritt 422,
ob eine Funktion, die als eine Sprungsteuerung bezeichnet wird,
aktiviert ist. Die Sprungsteuerung ist eine manuelle Steuerung,
die durch einen Netzmanager verwendet wird, um zu bewirken, dass
Abfragen nicht an eine bestimmte Adresse gesendet werden, weil zum
Bespiel ein Wartungsproblem in der Datenbank erfasst wurde, die
sich an dieser bestimmten Adresse befindet. Wenn die 4ESS Vermittlungsstelle 112 (1)
bestimmt, dass die Sprungsteuerung aktiv ist, dann geht die 4ESS
Vermittlungsstelle 112 (1) zum Schritt 416,
um die Datenbank an der nächsten
Adresse durch Inkrementieren des Zählers zu versuchen. Im Schritt 418 bestimmt
die 4ESS Vermittlungsstelle 112 ( 1), ob der
Punktcode-Index auf den ursprünglichen
Zeigerwert verweist, wenn der Algorithmus begonnen wurde. Wenn er
wieder auf die gleiche Datenbank zeigt gibt die 4ESS Vermittlungsstelle 112 (1)
eine Fehlernachricht im Schritt 420 aus. Wenn der Zeiger
nicht auf die gleiche Datenbank zeigt, geht die 4ESS Vermittlungsstelle 112 (1)
durch eine Schleife zurück
zum Schritt 412.
-
Ansonsten
bestimmt die 4ESS Vermittlungsstelle 112 (1)
im Schritt 424, ob die SS7 Route von der 4ESS Vermittlungsstelle 112 (1)
nach SDn (1) eine
MTP-Route ist, auf die nicht zugegriffen werden kann. Eine fehlende
Zugriffsmöglichkeit
auf die MTP-Route wird in dem Algorithmus als Transfer Gesperrt
(Transfer Prohibited; „TFP") dargestellt. Zum
Beispiel können
der STP 108 und der STP 110 (1)
eine TFP-Nachricht an die 4ESS Vermittlungsstelle 112 (1)
senden, um so eine fehlende Zugriffsmöglichkeit auf eine bestimmte
Datenbank anzuzeigen. Wenn die TFP-Nachricht aus sämtlichen Routen
zu der Datenbank empfangen wird, d.h. auf eine MTP-Route nicht zugegriffen
werden kann, geht die 4ESS Vermittlungsstelle 112 (1)
weiter zum Schritt 416, um den Zähler zu
inkrementieren.
-
Ansonsten
bestimmt die 4ESS Vermittlungsstelle 112 (1)
im Schritt 426, ob die Zielstelle Untersystem Gesperrt
(Subsystem Prohibited; „SSP") ist, d.h. eine
SSP-Nachricht empfangen worden ist. Die SPP-Nachricht zeigt an,
dass es ein Problem mit einer bestimmten Untersystemnummer gibt,
wie beispielsweise mit einer SD von sämtlichen SDs. Wenn die SSP-Nachricht
empfangen wird, geht die 4ESS Vermittlungsstelle 112 (1)
weiter zum Schritt 416 und inkrementiert den Zähler.
-
Ansonsten
bestimmt die 4ESS Vermittlungsstelle 112 (1)
im Schritt 428, ob es sich um eine MTP-Route-Verstopft
(MTP Route Congested) handelt, was hier mit „TFC" bezeichnet wird. Wenn es sich um eine
MTP-Route-Verstopft handelt, bestimmt die 4ESS Vermittlungsstelle 112 (1)
im Schritt 430, ob eine Netzsteuerung vorhanden ist, um
der 4ESS Vermittlungsstelle 112 zu erlauben die Suche der
Ringtabelle für
bestimmte Adressen fortzusetzen, was als eine „expansive Steuerung" („Expansive Control") bekannt ist. Wenn
die expansive Steuerung nicht aktiv ist, wird keine weitere Durchsuchung
der Ringverzweigungstabelle durchgeführt, um das Netz zu schützen und
eine SCCP-Fehlernachricht wird an den Urheber der Abfrage im Schritt 432 gesendet. Ferner
wird die Abfragenachricht gelöscht
und eine relevante Messung wird beseitigt.
-
Wenn
keine MTP-Routenverstopfung im Schritt 428 vorhanden ist,
dann bestimmt die 4ESS Vermittlungsstelle 112 (1)
im Schritt 434, ob eine Netzanwendungs-Überlast-(„NM") Steuerung wirksam ist. Wenn eine NM-Steuerung
wirksam ist, dann bestimmt die 4ESS Vermittlungsstelle 112 (1)
im Schritt 436, ob eine NM-expansive Steuerung für die NM-Steuerung
vorhanden ist. Wenn die expansive Steuerung nicht vorhanden ist,
dann wird die 4ESS Vermittlungsstelle 112 (1)
mittels des Schritts 438 über den Vorgang benachrichtigt,
eine Messung wird beseitigt und die Abfrage wird gelöscht. Wenn die
expansive Steuerung wirksam ist, dann setzt die 4ESS Vermittlungsstelle 112 die
Suche mit der Ringverzweigungstabelle im Schritt 416 fort.
-
Wenn
keine NM-Steuerung im Schritt 434 wirksam ist, dann verwendet
die 4ESS Vermittlungsstelle 112 (1) im Schritt 440 (4b)
die verfügbare
Adresse an dem Zeiger, um den Nachrichtentransferteil (Message Transfer
Part; „MTP") Ziel-Punktcode
(Destination Point Code; „DPC") und die Signalisierungsverbindungs-Steuerteil-
(Signaling Connection Control Part; „SCCP") Adresse der angerufenen Gegenstelle
(Called Party Address; „CdPA") Untersystemnummer
(Subsystem Number; „SSN") zu belegen. Im
Schritt 442 verzweigt die 4ESS Vermittlungsstelle 112 (1)
die Nachricht auf der Verzweigung (Route), die durch die MTP-Verzweigungstabellen
bestimmt wird, und der Signalisierungsstrecke, die aus den MIP-SLS-Tabellen
abgeleitet wird. Im Schritt 444 wird der Index, wo die Adresse
zum Verzweigen dieser Abfrage gefunden wird, auf PCL gesetzt.
PCL wird für die nächste Abfrage verwendet, die
an der 4ESS-Vermittlungsstelle 112 (1) ankommt,
die eine Ringverzweigung erfordert.
-
Im
Schritt 446 wird PC0 auf den Index
des Zeigers PC1 gesetzt, sodass die Adresse,
auf die PC1 gegenwärtig gesetzt ist, für den Fall,
dass eine erneute Abfrage benötigt
wird, nicht verwendet wird. Im Schritt 448 wird der PC0 an den Ursprungsprozess, der die Abfrage
hervorgebracht hat, berichtet. Dieser Bericht wird mit dem Anrufregister
für den
Anruf für den
Fall einer erneuten Abfrage gespeichert.
-
Der
Prozess endet im Schritt 450.
-
Die
Reihenfolge der Schritte in 4 ist
nicht kritisch. Zum Beispiel kann der Schritt 426 früher in dem
Prozess auftreten (z.B. zwischen den Schritten 422 und 424).
-
5 zeigt
eine Adaption des Verfahrens der 4 auf
eine alternative Ausführungsform,
die anstelle eines 4ESS Vermittlungsstellen-Prozessors einen STP
Prozessor verwendet. Somit verarbeitet das zusammengepasste Paar
der STPs 108 und 110 (1) den Ringverzweigungsalgorithmus 202,
um Abfragen unter SD1 102, SD2 104 und SD3 106 (1)
gleichmäßig zu verteilen.
Viele der Schritte in 5 sind die gleichen oder ähnlich wie
die Schritte in 4, mit Ausnahme der
spezifischen Schritte 412, 414, 434, 436, 438, 446 und 448 der
4ESS Vermittlungsstelle 112 (1) (die
mit gestrichelten Rechtecken in 4 eingeschlossen
sind). Die Entsprechung von Schritten wird durch die Verwendung der
gleichen letzten zwei Referenzzahlzeichen für die gleichen oder ähnlichen
Schritte in den 4 und 5 angezeigt.
Somit kann die Diskussion der Schritte in 5 etwas
abgekürzt
werden, weil eine weitergehende Diskussion bereits für entsprechende Schritte
in 4 bereitgestellt worden ist.
-
Im
Schritt 500 (ähnlich
wie im Schritt 400 in 4)
empfängt
der STP 108 oder 110 eine SS7-Nachricht über die 4ESS Vermittlungsstelle 112 (1).
Der STP1 108 oder der STP2 110 (1) im Schritt 512 bestimmt,
ob die SS7-Nachricht eine Globaltitel-Übersetzung erfordert. Insbesondere
sehen der STP 108 oder 110 (1)
die Verzweigungsanzeige in dem SCCP-Header 208 (2)
der SS7-Nachricht
nach, um die Notwendigkeit für
eine Globaltitel-Verzweigung zu bestimmen. Wenn der Verzweigungsanzeiger
anzeigt, dass er nicht eine Globaltitel-Verzweigung erfordert, führen der
STP1 108 oder der STP2 110 (1)
im Schritt 504 eine Punktcode-Verzweigung in dem SS7-Netz
aus.
-
Wenn
der Verzweigungs-Anzeiger die Globaltitel-Verzweigung anzeigt, dann
bestimmt der STP1 108 oder der
STP2 110 (1) im Schritt 506, ob
die Ringverzweigung spezifiziert wird. Der STP1 108 oder
der STP2 110 (1)
sieht den Übersetzungs-Typ
und die Globaltitel-Adresse in dem SCCP-Header nach. Wenn der Übersetzungs-Typ
und die Globaltitel-Adresse auf irgendwelche Globaltitel-Adressen-Übersetzungstypen gesetzt sind,
die andere sind als welche, die eine Ringverzweigung erfordern,
dann führt
der STP1 108 oder der STP2 110 im Schritt 508 die
spezifizierte Globaltitel-Übersetzung
aus.
-
Wenn
der Übersetzungs-Typ
und die Globaltitel-Adresse zeigt, dass eine Ringverzweigung benötigt wird,
dann inkrementiert der STP1 108 oder
der STP2 110 (1)
im Schritt 510 die Indexnummer der letzten erfolgreichen
Abfrage in der Ringverzweigungstabelle 300 um eins.
-
Im
Schritt 522 bestimmt der STP1 108 oder der
STP2 110 (1), ob die
Sprungsteuerungs-Funktion
wirksam ist. Wenn der STP 108 oder 110 bestimmt,
dass die Sprungsteuerung eingeschaltet ist, dann inkrementiert der
STP1 108 oder der STP2 110 (1)
im Schritt 516 die Indexnummer in der Ringverzweigungstabelle 300 (3)
wiederum um eins, sodass der Punktcode auf die nächste verfügbare Datenbank zeigen würde.
-
Im
Schritt 518 bestätigt
der STP1 108 oder der STP2 110 (1), dass
der Punktcode nicht auf die gleiche Datenbank zeigt, auf die nach
dem Schritt 510 gezeigt worden ist und die bereits überprüft worden
ist. Wenn es die gleiche Datenbank ist, die bereits überprüft worden
ist, dann gibt der STP1 108 oder
der STP2 110 (1),
im Schritt 520 eine Fehlernachricht ab. Ansonsten kehrt
der STP1 108 oder der STP2 110 (1), auf
den Schritt 522 zurück.
-
Die übrigen Schritte 524, 526, 528, 530, 532, 540, 542, 544 und 550 sind
jeweils ähnlich
zu den entsprechenden Schritten in 4 und
müssen
deshalb nicht nochmals beschrieben werden.
-
Es
sei darauf hingewiesen, dass die voranstehende Beschreibung nur
eine Illustration der Prinzipien der Erfindung ist und dass verschiedene
Modifikationen von Durchschnittsfachleuten in dem technischen Gebiet
ohne Abweichen von dem Umfang der Erfindung, sowie er durch die
beigefügten
Ansprüche
definiert ist, durchgeführt
werden können. Um
dies nochmals zu wiederholen, einige spezifische Beispiele von möglichen
Verwendungen der Erfindung umfassen das Steuern eines Zugriffs auf Computersysteme,
Transaktions-Verarbeitungssysteme, Sprachpost- oder Sprachantwort-Systeme, und
gesicherte Einrichtungen, wie Gebäude, Gefängnisse, Militäranlagen,
und andere Hochsicherheits-Orte. Die Erfindung kann nur für bestimmte
Benutzer, wie beispielsweise Administratoren oder andere Super-Benutzer, verwendet
werden.