DE69824974T2 - Benachrichtigungssystem in einer telekommunikationssteuereinrichtung - Google Patents

Benachrichtigungssystem in einer telekommunikationssteuereinrichtung Download PDF

Info

Publication number
DE69824974T2
DE69824974T2 DE69824974T DE69824974T DE69824974T2 DE 69824974 T2 DE69824974 T2 DE 69824974T2 DE 69824974 T DE69824974 T DE 69824974T DE 69824974 T DE69824974 T DE 69824974T DE 69824974 T2 DE69824974 T2 DE 69824974T2
Authority
DE
Germany
Prior art keywords
proxy
resource
function
server
middleware engine
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
DE69824974T
Other languages
English (en)
Other versions
DE69824974D1 (de
Inventor
Stuart Parteen BARR
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tellabs Research Ltd
Original Assignee
Tellabs Research Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Tellabs Research Ltd filed Critical Tellabs Research Ltd
Publication of DE69824974D1 publication Critical patent/DE69824974D1/de
Application granted granted Critical
Publication of DE69824974T2 publication Critical patent/DE69824974T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/546Message passing systems or structures, e.g. queues
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/465Distributed object oriented systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/02Standardisation; Integration
    • H04L41/0213Standardised network management protocols, e.g. simple network management protocol [SNMP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/04Network management architectures or arrangements
    • H04L41/046Network management architectures or arrangements comprising network management agents or mobile agents therefor
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q3/00Selecting arrangements
    • H04Q3/42Circuit arrangements for indirect selecting controlled by common circuits, e.g. register controller, marker
    • H04Q3/54Circuit arrangements for indirect selecting controlled by common circuits, e.g. register controller, marker in which the logic circuitry controlling the exchange is centralised
    • H04Q3/545Circuit arrangements for indirect selecting controlled by common circuits, e.g. register controller, marker in which the logic circuitry controlling the exchange is centralised using a stored programme
    • H04Q3/54541Circuit arrangements for indirect selecting controlled by common circuits, e.g. register controller, marker in which the logic circuitry controlling the exchange is centralised using a stored programme using multi-processor systems
    • H04Q3/5455Multi-processor, parallelism, distributed systems

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Signal Processing (AREA)
  • Computer And Data Communications (AREA)
  • Electrotherapy Devices (AREA)
  • Inspection Of Paper Currency And Valuable Securities (AREA)
  • Alarm Systems (AREA)
  • Telephone Function (AREA)
  • Exchange Systems With Centralized Control (AREA)
  • Telephonic Communication Services (AREA)

Description

  • Die Erfindung bezieht sich auf ein Messaging-System für eine Telekommunikationssteuerung, welche in Realzeit arbeitet und mehrfache verteilte Subsysteme aufweist, beispielsweise eine Hauptsteuerung und mehrere Leitungskarten. Die Erfindung bezieht sich insbesondere auf solche Systeme, die eine Anzahl von Schaltungen aufweisen, in welche Software eingebettet ist.
  • Bisher bestand das Verfahren zum Messaging innerhalb dieser Systeme darin, dafür eigens bestimmte Kommunikationsprotokolle bereitzustellen, welche in Hardware-Busse und Schnittstellenschaltungen eingebettet waren, um eine Realzeit-Leistung zu erzielen. Beispielsweise beschreibt die US 5 678 006 ein Messaging-System in einer Telekommunikationssteuerung, welches mehrere verteilte Subsysteme aufweist. Ein solches Verfahren war für viele Situationen zufriedenstellend.
  • In den vergangenen Jahren bestand ein wachsendes Bedürfnis bei Telekommunikationssteuerungen darin, dass diese eine eigene Flexibilität aufweisen, um Modifikation zuzulassen. Eine derartige Modifikation ist sowohl zum Ändern der Funktionalität des Systems erforderlich als auch dazu da, um zu erlauben, ein Wachstum für ständig wachsende Transaktionsdatenmengen zu befriedigen. Messaging-Protokolle, die auf eine Funktionalität höherer Ebene oder niedrigerer Ebene eingebunden sind, neigen dazu, die Fähigkeit zu hemmen, Telekommunikationsteuerungen zu modifizieren.
  • Es ist eine Aufgabe der Erfindung, ein Messaging-System für eine Telekommunikationssteuerung, welches eine einfache Modifikation von Resourcen erlaubt, welches Telekommunikationsfunktionen ausführt, und von Anwendungen bereitzustellen, welche diese Funktionen steuern und anfordern.
  • Eine Weiterentwicklung dieser Aufgabe besteht darin, das Messaging-System von den Anwendungen und Resourcen zu entkoppeln, so dass sie unabhängig vom Messaging-System modifiziert werden können.
  • Eine weitere Aufgabe besteht darin, diese Flexibilität zu erreichen, ohne die Ansprechzeit zu beeinträchtigen, so dass eine Realzeitleistung dennoch erreicht wird.
  • Die Erfindung stellt ein Messaging-System bei einer Telekommunikationssteuerung bereit, welches mehrere verteilte Subsysteme aufweist, wobei das Messaging-System aufweist:
    Mittel in einem anfordernden Subsystem zum Erstellen eines Proxy zum Steuern von Messaging für eine Funktion, die in Echtzeit von einer Resource auf einem Ressourcen-Subsystem ausgeführt werden soll, wobei die Funktion von einer Anwendung auf dem anfordernden Subsystem angefordert wird;
    eine Middleware-Engine in dem anfordernden Subsystem, umfassend Mittel, um als Reaktion auf den Proxy in Echtzeit tätig zu werden und eine Funktionsanforderungsmeldung zu erzeugen und die genannte Meldung zu dem Resourcen-Subsystem zu übertragen;
    eine Middleware-Enginge in dem Resourcen-Subsystem, umfassend Mittel zum Lesen der Meldung, Ermitteln eines Servers in Verbindung mit der Funktion und Aktivieren des Servers;
    Mittel in dem Server zum Regeln der Leistung der Funktion durch die Resource;
    Mittel in der Resourcen-Middleware-Engine zum Zurückgeben der Kontrolle an den Proxy, wenn die Funktion vollendet ist; und
    Mittel in dem anfordernden Subsystem zum Beenden des Proxy, wenn die anfordernde Anwendung zufrieden gestellt ist.
  • Der Rahmen der vorliegenden Erfindung richtet sich auf die Probleme des Standes der Technik, da die Verwendung einer Middleware-Engine das Entkoppeln des Messaging-Systems von den Anwendungen und den Resourcen in einer Art erlaubt, dass sie unabhängig gemäß ihrer Leistung modifiziert werden können.
  • Vorzugsweise weist jede Middleware-Engine eine Einrichtung auf, um als Anforderungs- oder als Resourcen-Middleware-Engine zu arbeiten, so dass Funktionsanforderungen bidirektional sind.
  • Bei einer Ausführungsform weisen die Subsysteme eine Hauptsystemsteuerung und mehrere Leitungskarten auf.
  • Bei einer anderen Ausführungsform weist die Anforderungsanwendung eine Einrichtung auf, um den Proxy zu erzeugen und um den Proxy zu beenden.
  • Bei einer Ausführungsform ist der Proxy eine Instanz einer Proxy-Objektklasse, Vorzugsweise ist der Server eine Instanz einer Server-Objektklasse.
  • Bei einer Ausführungsform ist der Server in einem nichtflüchtigen Speicher gespeichert.
  • Bei einer weiteren Ausführungsform ist die anfordernde Middleware-Engine mit der Anwendung lediglich über den Proxy gekoppelt, so dass die Anwendung unabhängig von der Middleware-Engine erzeugt oder modifiziert werden kann.
  • Bei einer weiteren Ausführungsform ist die Resource-Middleware-Engine mit der Resource lediglich über den Server gekoppelt, so dass die Resource unabhängig von der Middleware-Engine erzeugt oder modifiziert werden kann.
  • Vorzugsweise registriert sich der Server automatisch bei der Middleware-Engine.
  • Bei einer weiteren Ausführungsform registriert sich die Server sowohl für aktive als auch für redundante Resourcen bei der Resourcen-Middleware-Engine, um automatische Redundanz bereitzustellen.
  • Vorzugsweise weist die anfordernde Anwendung eine Einrichtung auf, um den Proxy zu erzeugen, wobei ein logischer oder ein realer Schlüssel für die Resource und die Funktion präsentiert wird.
  • Bei einer Ausführungsform weist die Meldung die Schlüsselfunktions-Parameterargumente auf.
  • Bei einer weiteren Ausführungsform steuert der Proxy eine von mehreren Arten von Meldungstransaktionen, einschließlich einer synchronen Art, in der die Funktion aufgerufen, eine Antwort erwartet und ein Rückgabewert zur anfordernden Anwendung geführt wird, und einer synchronen Art, in der die Funktion lediglich aufgerufen wird.
  • Bei einer anderen Ausführungsform steuert der Proxy eine verzögerte synchrone Transaktion, in der eine Funktion aufgerufen und eine Antwort übertragen wird und eine Anwendung die Antwort später abruft.
  • Bei einer Ausführungsform initialisiert der Proxy mehrere Versuchswiederholungen bei einem Versagen der angeforderten Funktion.
  • Bei einem anderen Merkmal liefert die Erfindung ein Telekommunikationssystem, welches ein Messaging-System nach einem der vorhergehenden Ansprüche aufweist.
  • Die Erfindung wird besser aus der folgenden Beschreibung einiger Ausführungsformen, die lediglich beispielhaft angegeben werden, unter Bezugnahme auf die beiliegenden Zeichnungen verstanden, in denen:
  • 1 eine Diagrammdarstellung eines Telekommunikationssteuerungs-Messaging-Systems und einer interaktive Anwendung mit Anwendungen und Resourcen der Steuerung ist;
  • 2 bis 5 Diagramme sind, die Messaging-Systemkomponenten zeigen; und
  • 6 bis 18 Informations-Flussdiagramme sind, die die Arbeitsweise des Messaging-Systems zeigen.
  • Mit Hilfe von 1 wird zunächst ein Messaging-System in einer Steuerung 1 kurz beschrieben. Die Steuerung 1 umfasst eine Hauptsteuerung 2 und Leitungskarten 3. Die Hauptsteuerung 2 umfasst eine Hauptsteuerungsanwendung 5 und einen SNMP-Agenten 6, der eine Schnittstelle mit einer Verwaltungsstation 7 bildet. Die Hauptsteuerung 2 umfasst außerdem eine Middleware-Engine 11, welche über Proxys 12 mit der Anwendung 5 interaktiv arbeitet. Die Middleware-Engine 11 kommuniziert über eine Mitteilungs-Handhabungsebene und einer realen Ebene, die allgemein durch das Bezugszeichen 20 angedeutet ist, mit entsprechenden Middleware-Engines 11 in der Leitungskarte 3. Die Middleware-Engine jeder Leitungskarte 3 ist mit einer Leitungskarten-Anwendung 10 über Server 13 gekoppelt. Zusätzlich gibt es eine IDL-Schnittstelle zwischen der Leitungskarten-Anwendung 10 und der Middleware-Engine 11, um zuzulassen, dass die Leitungskarte Kartenkommunikation leitet. Bei dieser Schnittstelle sind die Proxys und die Server aus Einfachheitsgründen nicht explizit dargestellt.
  • Die Server 13 registrieren sich in einer allgemeinen Weise mit der Middleware-Engine und nicht durch eine Art von Hardware-Festcodierung. Dies stellt sicher, dass die Middleware-Engine keine Modifikation bei Bildung zusätzlicher Server erfordert.
  • Die zentralen Steuerungs-IDL-Schnittstellen verlangen nach einer Verwendung einer Middleware-Engine 11 in einem anfordernden Subsystem und einer Middleware-Engine 11 in einem Resourcen-Subsystem. Jede Middleware-Engine 11 umfasst Funktionalität, um bidirektionale Funktionsrufe bereitzustellen. Für die Zwecke dieser Beschreibung werden die Ausdrücke "Anfordern von Middleware-Engine" und "Resourcen-Middleware-Engine" jedoch dazu verwendet, die Rollen zu zeigen, die sie für einen bestimmten Funktionsruf spielen.
  • Das Messaging-System weist die Middleware-Engine 11 im Subsystem 2 und 3, die Server-Objekte 13 (welche im nichtflüchtigen Speicher gespeichert sind) und die Funktionalität bei Anwendungen zum Bilden von Proxys auf. Die Proxys und die Server sind beide Instanzen von Objektklassen. Die Proxys jedoch sind bezüglich ihrer Natur so, wie sie existieren, lediglich während eines bestimmten Funktionsrufs transient, während die Server permanent sind, da sie mit Resourcen eher als bestimmte Funktionsrufe verknüpft sind.
  • Unter Bezugnahme wieder auf 1 wird, wenn die Steuerungsanwendung 5 eine Funktion bezüglich einer Quelle einer entfernten Leitungskarte 3 anfordert, ein Proxy durch die Anwendung erzeugt. Der Proxy ist eine Instanz einer Proxy-Objektklasse. Der Proxy wird durch Präsentieren eines logischen oder eines realen Schlüssels gebildet, der den Server identifiziert. Der Proxy übernimmt die Steuerung des Funktionsrufs und fordert eine Mitteilung an, welche über die Middleware-Engine 11 zur Fern-Leitungskarte 3 zu liefern ist, welche die angeforderten Dienste unterstützt. Die Resourcen-Middleware-Engine bestimmt den Server 13, der zu rufen ist, und leitet die Operation zu diesem Server weiter. Der Server 13 ruft dann die reale Resourcenfunktionalität durch Rufen der lokalen Funktion. Bei Beendigung liefert der Server 13 Daten zum anrufenden Proxy zurück, der wiederum die Steuerung zur anrufenden Anwendung zurückbringt. Wenn die Anwendung den Betrieb beendet hat, wird der Proxy beendet.
  • Viele Vorteile werden aus diesem Messaging-System-Aufbau deutlich. Ein derartiger Vorteil ist die Tatsache, dass es sehr wenig Speicher- oder Verarbeitungsgesamtaufwand beim anfordernden Subsystem gibt, da die Proxys transient sind und lediglich während des Funktionsrufs existieren. Dies hilft, eine Realzeitleistung in einer eingebetteten Umgebung zu erreichen, die traditionell durch einen Speicher und die Verarbeitungsleistung begrenzt ist. Ein weiterer Hauptvorteil ist die Tatsache, dass die anfordernde Anwendung lediglich mit der Middleware-Engine über die Proxys gekoppelt ist. Die Anwendung erzeugt den Proxy, und der Proxy übernimmt dann die Steuerung durch Richten der Middleware-Engine, um die Funktionsanforderungsmitteilung zu übertragen. Daher können die anfordernden Anwendungen modifiziert werden, gelöscht werden oder unabhängig von der Middleware-Engine hinzugefügt werden. In gleicher Weise ist die Resource-Middleware-Engine lediglich mit den Resourcen über die Serverobjekte 13 gekoppelt. Die Serverobjekte 13 registrieren sich bei der Middleware-Engine automatisch. Daher können die Resourcen unabhängig von der Resourcen-Middleware-Engine modifiziert, ergänzt oder gelöscht werden.
  • Die anfordernde Anwendung muss nicht wissen, welche Redundanz bereitgestellt wird und welche die aktuelle aktive Resource ist. Diese Ebene an Funktionalität wird aufgrund des proxy-erzeugenden Schlüssels, der eine logische oder reale Adresse identifiziert, und durch Mehrfachumformen der Information durch die Middleware-Engine an alle Leitungskarten automatisch erreicht.
  • Die anfordernde Anwendung muss lediglich einen Resourcenschlüssel identifizieren, um den Proxy zu erzeugen. Dies kann ein logischer Schlüssel für logische Resourcen sein. Ein Beispiel einer Situation, bei dem logische Schlüssel verwendet werden, ist die Erzeugung eines logischen Alarms in einer Leitungskarte. Ein realer Schlüssel würde verwendet werden, beispielsweise dazu, um einen Leistungsschwellenwert für eine bestimmte Leitungskarte festzulegen. Der Proxy vermeidet Informationshandlungs-Gesamtaufwand bei der an fordernden Anwendung, indem automatisch der Funktionsruf gesteuert und Aktionen durch-führt werden, beispielsweise automatisches Wiederversuchen des Rufs, wenn ein Versagen auftritt.
  • Drei Arten an Transaktionen können für einen Funktionsruf erforderlich sein. Diese sind synchron, asynchron und verzögert-synchron. Für eine synchrone Transaktion wird die Funktion aufgerufen, der Server wartet, bis die Funktion durchgeführt wurde, und der Server überträgt einen Rückgabewert zum anfordernden Proxy. Für eine asynchrone Transaktion wird die Funktion auf lediglich aufgerufen, und es tritt keine weitere Aktion auf. Für eine verzögerte synchrone Transaktion wird die Funktion durch die Anwendung, welche den Proxy erzeugt, aufgerufen, und die Middleware kehrt unmittelbar zur Anwendung zurück. Die Anwendung kann später die Middleware-Antwort abfragen, beispielsweise nach Ablauf eines Timers.
  • Mit Hilfe von 2 bis 5 werden die Mechanismen hinter dem Messaging-System ausführlicher beschrieben. Der Proxy 12 besitzt ein Proxyobjekt 12(a) und eine Meta-Ebenen-Architektur 12(b). Die Messaging-Engine 11 ist mit einem Informations-Handhabungssystem (MHS) 30 einer niedrigeren Ebene verbunden, die wiederum mit einer realen Ebene 31 zur Mitteilungsübertragung verbunden ist. Der Server 13 umfasst einen Objekt-Adapter 13(a) eine Meta-Ebene 13(b) und ein Objekt 13(c). In 2 sind die anfordernden und die Resource-Middleware-Engines 11 aus Darstellungsgründen zu einer Box kombiniert.
  • Wie in 3 gezeigt ist, umfasst der Proxy den Betrieb, die Schnittstelle und allgemeine Komponenten 40, 41 und 42 auf der Meta-Ebene.
  • Wie in 4 gezeigt ist, umfasst der Server 13 unbestimmt-bezogene Komponenten 50, betriebs-bezogene Komponenten 51 und 52 und schnittstellen-bezogene Komponenten 53 und 54.
  • 5 ist ein statisches Middleware-Modell, welches mit den Dynamik-Modellsequenz-Diagrammen von 6 bis 18 verknüpft ist. Mit Hilfe von 6 bis 18 sind Beispiele von Funktionsrufen gezeigt. Diese zeigen die synchronen, asynchronen und verzögerten synchronen Transaktionsarten.
  • 6 zeigt einen synchronen Ruf für das Verfahren foo, welches eine synchrone Operation ist. Der Proxy kehrt nicht zurück, bis der Server abschließt und ein Ergebnis zum Proxy zurückbringt. Die Sequenz ist wie folgt:
    Die anfordernde Anwendung instruiert das System 1, einen Proxy X zu erzeugen.
    Der Kunde ruft die Funktion foo in bezug auf den Proxy X auf.
    Der Proxy X verpackt die Anfrage als Information und überträgt diese über den Objekt-Adapter, der die Information interpretiert, und ruft die Funktion foo in bezug auf den Server X, der das Serverobjekt nutzt.
    Der Rückgabewert foo wird zurück zum Objekt-Adapter gebracht, der das Ergebnis zum Proxy X als Information sendet.
    Der Proxy X interpretiert die Information und liefert das Ergebnis als Rückgabewert von der Funktion foo zurück.
  • Ein verzögerter synchroner Ruf kann ebenfalls getätigt werden. Beispielsweise kann der Kunde ein Verfahren longfoo auf dem Server X aufrufen, ohne auf den entfernten Server zu warten, um eine Antwort auszuführen und zurückzubringen. Dies erlaubt es dem Kunden, andere Aufgaben in der Zwischenzeit durchzuführen, wobei er periodisch einen Nicht-Warte-Modus zur Antwort überprüft.
  • Wie in 7 gezeigt ist, bildet der Kunde einen ProxyOperationOn-Proxy, der angibt, dass dieser auf der Operation longfoo ist. Der Kunde ruft das Verfahren sendDeferred auf, wobei er die erforderten Parameter, wenn es welche gibt, durchlässt. Dieses Verfahren verpackt die Anforderung wie eine Information und überträgt diese über den Objekt-Adapter, speichert den Handel intern und kehrt zum Kunden zurück. Der Kunde ruft pollResponse auf dem ProxyOperationOn-Objekt. Dieses wiederum ruft isReplyAvailable auf der Middleware-Engine, jedoch, wenn noch keine Antwort verfügbar ist, schickt er falsch zurück. Der Objekt-Adapter interpretiert die Information und ruft die Funktion longfoo auf dem Server X. Das Ergebnis von longfoo wird zurück zum Objekt-Adapter gebracht, der das Ergebnis zum Proxy X über eine Mitteilung liefert. Der Kunde ruft pollResponse auf dem ProxyOperationOn-Objekt, wobei er dieses Mal wirklich zurückläuft. Die Antwort wird dann abgerufen und durch den Kunden interpretiert.
  • Einweganforderungen werden ebenfalls durch das System gehandhabt. Das Verfahren shortfoo ist eine Einwegoperation. Dieses Verfahren wird auf dem Proxy X gerufen, wie in 8 gezeigt ist. Der Proxy X verpackt die Anforderung wie vorher und überträgt diese zum Objekt-Adapter. Die Funktion shortfoo auf dem Proxy X kehrt unmittelbar zurück, der Objektadapter interpretiert die Mitteilung und ruft die Funktion shortfoo auf dem Server X. Der Objektadapter sendet keine Antwort, da er kennt, dass das Verfahren ein Einwegverfahren ist.
  • 9 zeigt die Situation, bei der eine Mitteilung nicht von der Informationsebene gesendet wird. In diesem Fall löscht der Proxy das Ausnahmeobjekt des Proxys. Nachdem versucht wird, das Mitteilungsversagen zu senden, aufgetreten ist, wird das Versagen zurück zum Proxy gebracht. Der Proxy interpretiert dies als SendFail und sendet das exception object. Das Proxy-Verfahren liefert eine Antwort zurück, und der Kunde prüft das Ausnahmeobjekt des Proxys und ermittelt die Ausnahme und handhabt diese in geeigneter Weise.
  • Das System handhabt außerdem eine Situation, wo eine Mitteilung gesendet wird, jedoch nicht empfangen wird, wie in 10 gezeigt ist. In diesem Fall, nachdem der Betrieb ausgeführt wird und als wirklich zurückgegeben wird, wird die Mitteilung niemals am Bestimmungsort empfangen. Der Proxy wartet auf eine Antwort und zählt. Diese wird als Ablaufzeit interpretiert und das Ausnahmeobjekt wird festgelegt. Dies erlaubt es dem Kunden, die Ausnahme zu ermitteln und diese geeignet zu handhaben.
  • 11 zeigt die Situation, bei der eine Information gesendet und empfangen wird, jedoch der Kunde zählt, während er wartet. Ein derartiges Szenario kann auftreten, wenn die Dauer einer Fernoperation nicht vorhersagbar ist, oder wenn der Fern-Server belegt ist. Natürlich sollte der verzögerte synchrone Mechanismus verwendet werden, wenn erwartet wird, dass eine Zählzeit auftreten kann. Wie in 11 gezeigt ist, hat, während der Objekt-Adapter longfoo auf dem Server X ruft, der Proxy getReplyMsg ausgeführt, um die Antwort vom Server abzurufen, jedoch zählt, um auf eine Antwort zu warten. Der Proxy setzt das Ausnahmeobjekt ohne ein Auszählen, und das Verfahren kehrt zurück. Der Kunde prüft das Ausnahmeobjekt 11 des Proxys, ermittelt die Ausnahme und handhabt diese. Später wurde longfoo beendet und liefert eine Antwort zurück, die einen erfolgreichen Abschluss zeigt, wobei jedoch die Mitteilung durch die Messaging-Ebene ausrangiert wird.
  • Mit Hilfe von 12 wird eine Situation gezeigt, bei der der Zielbetrieb nicht erkannt wird. In diesem Fall verfehlt es der Objekt-Adapter, die Mitteilung zu interpretieren, und eine Antwort, die dies zeigt, wird zum Proxy geliefert. Der Proxy empfängt die Replymessage von der Mitteilungsebene, ruft die Ausnahmeinformation ab und setzt das Ausnahmeobjekt des Proxys. Dies erlaubt es dem Kunden, diese zu handhaben.
  • 13 zeigt die Sequenz, wenn die Serveroperation versagt. In diesem Beispiel wird das Verfahren foo gerufen. Wenn das Verswagen auftritt, ruft das Verfahren foo das UserException Objekt auf und setzt einen Fehlerstatus, um den Objekt-Adapter wiederum zu veranlassen, eine Information zu senden, die ein Benutzerebenenversagen zeigt. Der Proxy wiederum setzt das Ausnahmeobjekt 11, um wiederum es dem Kunden zu erlauben, das Versagen zu handhaben.
  • Wie oben beschrieben arbeitet das Messaging-System interaktiv zwischen einer Anwendungsebene und einer Mitteilungslieferebene. 14 zeigt eine Situation, bei der ein Kunde einen Kartenstatus bestimmt. Der Kunde ruft getCard auf einem Card-Proxy. Das System arbeitet wie oben beschrieben, bis das getCard-Verfahren auf dem Serverobjekt aufgerufen wird, welches die angeforderte Schnittstelle unterstützt. Dieses Verfahren ruft eine C-Funktion auf, die den aktuellen Kartenzustand zum Objekt-Adapter zurückbringt. Dies wird wie ein Verfahren verpackt und wird zum Proxy-Objekt zurückgeliefert, der die Information interpretiert und den Kartenzustand zum Kunden zurückbringt.
  • 15 zeigt eine Sequenz, um den Leitungsstatus einer realen Beendigung einer DSI-Karte (reales Übertragungsmedium) zu bestimmen. In diesem Fall wird ein DSI-Proxy verwendet, und der Objekt-Adapter lokalisiert das DSI-Serverobjekt und ruft dessen getLineStatus-Verfahren auf. Der DSI-Proxy empfängt nachfolgend die Antwort.
  • 16 zeigt eine Situation, bei der eine Alarminformation und ein Verlust eines Signals auf DSI übertragen werden. Dies ist ein Einwegbetrieb. Die IPC-Software ermittelt einen Verlust eines Signals auf der DS1-Leitung und ruft den Steuerungs-DS1-Proxy auf und ruft das commsAlarmOccured-Verfahren auf dem Proxy auf, indem es dieses zum Port-Identifizierer liefert. Nach diesem Betrieb kehrt der Proxy zurück ohne Antwort. Das commsAlarmOccured-Verfahren wird auf dem Steuerungs-DS1-Server aufgerufen.
  • Das synchrone Verzögerungsverfahren kann zum Herunterladen von Software verwendet werden, wie in 17 gezeigt ist. Der Kunde bildet ein ProxyOperationOn-Objekt, indem er dieses angibt, auf der Operation startDownload zu sein. Der Kunde ruft das Verfahren auf sendDeffered, wobei er zu diesem die erforderlichen Parameter leitet. Nachdem die Anforderung als eine Mitteilung verpackt ist, wird die Mitteilungshandhabung durch das ProxyOperationOn-Objekt gespeichert, wobei dieses wiederum ReplyAvailable auf der Mitteilungsebene ruft. Wenn keine Antwort verfügbar ist, wird dies als falsch zurückgebracht. Auf der Zielkarte wird die heruntergeladene Softwareaufgabe beendet und das Ergebnis zum Objekt-Adapter zurückgebracht, der eine Antwortinformation zurück zur Steuerung liefert, die das Ergebnis enthält. Die Steuerung ruft wiederum pollResponse im ProxyOperationOn-Objekt auf, wobei diese dieses Mal als wahr zurückgebracht wird. Die Steuerung ruft dann getResponse. Diese erlangt die zurückgebrachte Mitteilung, prüft diese nach einem Fehlercode in der Antwort, extrahiert das Ergebnis und liefert diese zurück zur Steuerung. Die Steuerung prüft das Ausnahmeobjekt, um zu sehen, ob eine Ausnahme aufgetreten ist, findet diese jedoch gelöscht, zeigt dies, dass das Ergebnis gültig ist.
  • Mit Hilfe von 18 wird schließlich die Initialisierung einer neuen Karte gezeigt. Ein Initialisierungsverfahren auf dem Serverobjekt wird aufgerufen und eine Folge, über welche man sich selbst identifizieren kann, wird zum Objekt-Adapter weitergeleitet. Die Kartensoftware verarbeitet das allgemeine Initialisierungsverfahren (Namen-ID) in bezug auf das Serverobjekt. Das Serverobjekt speichert die Namen ID und ruft das RegisterInterface-Verfahren in bezug auf den Objekt-Adapter auf, und leitet dieses selbst zu diesem. Dies macht den Objekt-Adapter von dessen Anwesenheit aufmerksam und erlaubt Anforderungen, die zu diesem geleitet werden. Der Objekt-Adapter zeigt, ob eine Registrierung erfolgreich war oder nicht.
  • Es sei angemerkt, dass die Erfindung eine Realzeit-Informationsübertragung in einer Telekommunikationssteuerung in einer Weise bereitstellt, bei der Flexibilität bezüglich der Ausbildung und der Modifikation der Steuerung selbst ermöglicht werden. Dies erlaubt beispielsweise die Hinzufügung neuer Funktionalität und außerdem die Erweiterung von Resourcen, um existierende Funktionalität durchzuführen.
  • Die Erfindung ist nicht auf die oben beschriebenen Ausführungsformen beschränkt, sondern kann bezüglich der Konstruktion und des Details innerhalb des Rahmens der Ansprüche variiert werden.

Claims (17)

  1. Messaging-System in einem Telekommunikations-Controller (1), umfassend eine Mehrzahl von verteilten Subsystemen, wobei das Messaging-System Folgendes umfasst: Mittel in einem anfordernden Subsystem (2) zum Erstellen eines Proxy (12) zum Steuern von Messaging für eine Funktion, die in Echtzeit von einer Ressource auf einem Ressourcen-Subsystem (3) ausgeführt werden soll, wobei die Funktion von einer Anwendung (5) auf dem anfordernden Subsystem angefordert wird; eine Middleware-Engine (11) in dem anfordernden Subsystem (12), umfassend Mittel, um als Reaktion auf den Proxy (12) in Echtzeit tätig zu werden und eine Funktionsanforderungsmeldung zu erzeugen und die genannte Meldung zu dem Ressourcen-Subsystem (3) zu übertragen; eine Middleware-Engine (11) in dem Ressourcen-Subsystem (3), umfassend Mittel zum Lesen der Meldung, Ermitteln eines Servers (13) in Verbindung mit der Funktion und Aktivieren des Servers; Mittel in dem Server (13) zum Regeln der Leistung der Funktion durch die Ressource; Mittel in der Ressourcen-Middleware-Engine (11) zum Zurückgeben der Kontrolle an den Proxy (13), wenn die Funktion vollendet ist; und Mittel in dem anfordernden Subsystem (2) zum Beenden des Proxy (12), wenn die anfordernde Anwendung (5) zufriedengestellt ist.
  2. System nach Anspruch 1, bei dem jede Middleware-Engine (11) Mittel umfasst, um als Anforderungs- oder als Ressourcen-Middleware-Engine zu dienen, so dass Funktionsanforderungen bidirektional sind.
  3. System nach Anspruch 1 oder 2, bei dem die Subsysteme einen Hauptsystem-Controller (2) und eine Mehrzahl von Leitungskarten (3) umfassen.
  4. System nach einem der vorherigen Ansprüche, bei dem die anfordernde Anwendung (5) Mittel zum Erstellen des Proxy (12) und zum Beenden des Proxy umfasst.
  5. System nach einem der vorherigen Ansprüche, bei dem der Proxy (12) eine Instanz einer Proxy-Objektklasse ist.
  6. System nach einem der vorherigen Ansprüche, bei dem der Server (13) eine Instanz einer Server-Objektklasse ist.
  7. System nach Anspruche 6, bei dem der Server (13) in nichtflüchtigem Speicher gespeichert ist.
  8. System nach einem der vorherigen Ansprüche, bei dem die anfordernde Middleware-Engine (11) nur über den Proxy (12) mit der Anwendung (5) gekoppelt ist, so dass die Anwendung (5) unabhängig von der Middleware-Engine (11) kreiert oder modifiziert werden kann.
  9. System nach einem der vorherigen Ansprüche, bei dem die Ressourcen-Middleware-Engine (11) mit der Ressource nur über den Server (13) gekoppelt ist, so dass die Ressource (5) unabhängig von der Middleware-Engine (11) kreiert oder modifiziert werden kann.
  10. System nach Anspruch 9, bei dem sich der Server (13) automatisch bei der Ressourcen-Middleware-Engine (11) registriert.
  11. System nach Anspruch 10, bei dem sich Server (13) für aktive und für redundante Ressourcen bei der Ressourcen-Middleware-Engine (11) registrieren, damit automatische Redundanz entsteht.
  12. System nach einem der vorherigen Ansprüche, bei dem die anfordernde Anwendung (5) Mittel zum Erstellen des Proxy (12) durch Präsentieren eines logischen oder physischen Key für die Ressource und die Funktion umfasst.
  13. System nach einem der vorherigen Ansprüche, bei dem die Meldung die Key- und Funktionsparameterargumente beinhaltet.
  14. System nach einem der vorherigen Ansprüche, bei dem der Proxy (12) eine aus einer Mehrzahl von Meldungstransaktionstypen steuert, einschließlich einem synchronen Typ, in dem die Funktion aufgerufen, eine Antwort abgewartet und ein Rückgabewert zu der anfordernden Anwendung geleitet wird, und einem synchronen Typ, in dem die Funktion nur aufgerufen wird.
  15. System nach Anspruch 14, bei dem der Proxy (12) eine verzögerte synchrone Transaktion steuert, in der eine Funktion aufgerufen und eine Antwort übertragen wird und eine Anwendung die Antwort später abruft.
  16. System nach einem der vorherigen Ansprüche, bei dem der Proxy (12) nach einem Versagen der angeforderten Funktion mehrere Versuchswiederholungen durchführt.
  17. Telekommunikationssystem, umfassend ein Messaging-System nach einem der vorherigen Ansprüche.
DE69824974T 1998-06-17 1998-12-15 Benachrichtigungssystem in einer telekommunikationssteuereinrichtung Expired - Lifetime DE69824974T2 (de)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
IE980475 1998-06-17
IE980475 1998-06-17
IE980714 1998-08-31
IE980714 1998-08-31
PCT/IE1998/000108 WO1999066672A1 (en) 1998-06-17 1998-12-15 A telecommunication controller messaging system

Publications (2)

Publication Number Publication Date
DE69824974D1 DE69824974D1 (de) 2004-08-12
DE69824974T2 true DE69824974T2 (de) 2005-08-25

Family

ID=26320203

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69824974T Expired - Lifetime DE69824974T2 (de) 1998-06-17 1998-12-15 Benachrichtigungssystem in einer telekommunikationssteuereinrichtung

Country Status (8)

Country Link
US (1) US6389470B1 (de)
EP (1) EP1088422B1 (de)
JP (1) JP2002518765A (de)
AT (1) ATE270801T1 (de)
AU (1) AU1680699A (de)
CA (1) CA2332586A1 (de)
DE (1) DE69824974T2 (de)
WO (1) WO1999066672A1 (de)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2820922B1 (fr) * 2001-02-12 2005-02-18 Thomson Csf Procede pour assurer le temps de latence des communications entre au moins deux points de passage de donnees
AU2002258516A1 (en) * 2001-03-12 2004-02-16 Mercury Computer Systems, Inc. Digital data processing apparatus, framework, and methods for dynamically configurable application execution on accelerated resources
WO2003032124A2 (en) * 2001-10-09 2003-04-17 Collaxa Corporation System and method for managing service interactions
US7467018B1 (en) 2002-11-18 2008-12-16 Rockwell Automation Technologies, Inc. Embedded database systems and methods in an industrial controller environment
US8204806B2 (en) * 2002-12-23 2012-06-19 United Services Automobile Association (Usaa) System and method of processing account information over a computer network
US20050081216A1 (en) * 2003-10-08 2005-04-14 Sun Microsystems,Inc. Method, system, and program for calling a target object from a caller object
US20060133412A1 (en) * 2004-12-22 2006-06-22 Rockwell Automation Technologies, Inc. Integration of control and business applications using integration servers
JP5166350B2 (ja) * 2005-01-19 2013-03-21 株式会社イマジオム クラスタコンピュータミドルウェアプログラム
JP4627491B2 (ja) * 2005-01-19 2011-02-09 株式会社イマジオム クラスタコンピュータミドルウェアプログラム、クラスタコンピュータシミュレータプログラム、クラスタコンピュータ用アプリケーションプログラム、およびアプリケーションプログラム開発支援方法
US7706895B2 (en) * 2005-02-25 2010-04-27 Rockwell Automation Technologies, Inc. Reliable messaging instruction
US7565351B1 (en) 2005-03-14 2009-07-21 Rockwell Automation Technologies, Inc. Automation device data interface
US7233830B1 (en) 2005-05-31 2007-06-19 Rockwell Automation Technologies, Inc. Application and service management for industrial control devices
CN115426368A (zh) * 2022-09-06 2022-12-02 王涛伟 一种基于中间件的网络编程通信方法及系统

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0727739B1 (de) * 1995-02-17 2002-11-06 International Business Machines Corporation Objektorientierte Programmierschnittstelle zur Entwicklung und zur Ausführung einer Netzwerkverwaltungsapplikation auf einer Netzwerkkommunikationsinfrastruktur
US5678006A (en) * 1995-04-27 1997-10-14 Cisco Systems, Inc. Network switch having network management agent functions distributed among multiple trunk and service modules
US5740362A (en) * 1995-11-06 1998-04-14 International Business Machines Corporation Management of network distributed agents in a distributed computing environment
US6128657A (en) * 1996-02-14 2000-10-03 Fujitsu Limited Load sharing system
US6080202A (en) * 1997-07-10 2000-06-27 Nortel Networks Corporation Universal compatibility software system for services in communication and information processing networks
US6219711B1 (en) * 1997-05-13 2001-04-17 Micron Electronics, Inc. Synchronous communication interface
US6058426A (en) * 1997-07-14 2000-05-02 International Business Machines Corporation System and method for automatically managing computing resources in a distributed computing environment

Also Published As

Publication number Publication date
DE69824974D1 (de) 2004-08-12
US6389470B1 (en) 2002-05-14
JP2002518765A (ja) 2002-06-25
EP1088422A1 (de) 2001-04-04
AU1680699A (en) 2000-01-05
WO1999066672A1 (en) 1999-12-23
EP1088422B1 (de) 2004-07-07
CA2332586A1 (en) 1999-12-23
ATE270801T1 (de) 2004-07-15

Similar Documents

Publication Publication Date Title
DE3586430T2 (de) Lokales netzwerk fuer numerische datenverarbeitungssysteme.
DE3854705T2 (de) Vorrichtung zum Aufbau und Steuern virtueller Netze.
DE69222697T2 (de) Im-Band/Ausserband-Warnabgabessystem
DE602005004334T2 (de) Nms zur Verarbeitung von Multi-Server Ereignissen
DE68927508T2 (de) Zeitweilige Zustandsbewahrung für einen verteilten Dateidienst
DE68919975T2 (de) Verfahren für die simultane Ablaufverwaltung eines verteilten Anwenderprogramms in einem Hostrechner und in einer grossen Anzahl von intelligenten Benutzerstationen in einem SNA-Netzwerk.
DE69317037T2 (de) Zusammenarbeitende Rechnerschnittstelle und Kommunikationsmakler für heterogene Umgebung
DE69730201T2 (de) Sendevorrichtung mit mobilitätsmanager und verfahren zur kommunikation
DE68919872T2 (de) Verfahren und Vorrichtung zur Verbindung von SNA-Endgeräten mit einem SNA-Hostrechner über ein paketvermitteltes Nachrichtennetz.
DE69429944T2 (de) Kommunikation von lokalen Netzwerk basierten Anwendungen in einem Vermittlungsnetz
DE69527873T2 (de) Transaktionsverarbeitungssystem
DE3879947T2 (de) Verteilte dateiserver-architektur.
DE69702708T2 (de) Verfahren und vorrichtung für klientverwaltete flusssteuerung in einem rechnersystem mit begrenztem speicher
DE69824974T2 (de) Benachrichtigungssystem in einer telekommunikationssteuereinrichtung
DE60003395T2 (de) Multimedia Kundenanrufzentrale mit schichtformigen Steuerarchitektur
DE3689990T2 (de) Flexible Datenübertragung für nachrichtenorientierte Protokolle.
DE69634983T2 (de) Verfahren und vorrichtung für ein hybrides wettbewerbs- und abfrageprotokoll
DE68919976T2 (de) Verfahren zur Herstellung von aktuellen Terminaladressen für Systemanwender die verteilte Anwendungsprogramme in einer SNA LU 6.2-Netzwerkumbegung verarbeiten.
DE69734432T2 (de) Verfahren und Vorrichtung zur Absendung von Clientverfahrenanrufen in einem Server Rechnersystem
DE69732221T2 (de) Verfahren zum Anbieten von einem Dienst an Fernmeldenetzbenutzern
DE112012002097T5 (de) Verwalten eines Nachrichtenabonnements in einem Publikations-Abonnement- Nachrichtensystem
DE69320915T2 (de) Datenverarbeitungssystem
DE69025494T2 (de) Entfernte Unterbrechungsverarbeitung
DE602004006224T2 (de) Verfahren und Vorrichtung zur Datensynchronisierung eines verteilten Datenbanksystems
DE69427198T2 (de) Kommunikationssystem mit einem ein verwaltungsmodul einschliessendem netz

Legal Events

Date Code Title Description
8364 No opposition during term of opposition