[go: up one dir, main page]

DE102004004345A1 - System und Verfahren zur Kommunikation zwischen entfernten Objekten und lokalen Stellvertretern - Google Patents

System und Verfahren zur Kommunikation zwischen entfernten Objekten und lokalen Stellvertretern Download PDF

Info

Publication number
DE102004004345A1
DE102004004345A1 DE102004004345A DE102004004345A DE102004004345A1 DE 102004004345 A1 DE102004004345 A1 DE 102004004345A1 DE 102004004345 A DE102004004345 A DE 102004004345A DE 102004004345 A DE102004004345 A DE 102004004345A DE 102004004345 A1 DE102004004345 A1 DE 102004004345A1
Authority
DE
Germany
Prior art keywords
client
service
proxies
optimization layer
communication
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.)
Withdrawn
Application number
DE102004004345A
Other languages
English (en)
Inventor
Jens Dipl.-Inform. Doppelhamer
Eckhard Dr.-Ing. Kruse
Zaijun Dr.-Ing. Hu
Yauheni Dipl.-Ing. Veryha
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.)
ABB Schweiz AG
Original Assignee
ABB Research Ltd Switzerland
ABB Research Ltd Sweden
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 ABB Research Ltd Switzerland, ABB Research Ltd Sweden filed Critical ABB Research Ltd Switzerland
Priority to DE102004004345A priority Critical patent/DE102004004345A1/de
Priority to PCT/EP2005/000862 priority patent/WO2005074234A1/de
Priority to US10/587,471 priority patent/US20070266159A1/en
Publication of DE102004004345A1 publication Critical patent/DE102004004345A1/de
Withdrawn legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/958Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/2866Architectures; Arrangements
    • H04L67/289Intermediate processing functionally located close to the data consumer application, e.g. in same machine, in same home or in same sub-network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/566Grouping or aggregating service requests, e.g. for unified processing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • H04L67/61Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources taking into account QoS or priority requirements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/329Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/567Integrating service provisioning from a plurality of service providers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/568Storing data temporarily at an intermediate stage, e.g. caching
    • H04L67/5682Policies or rules for updating, deleting or replacing the stored data

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

Die Erfindung bezieht sich auf ein System - und ein entsprechendes Verfahren - zur Kommunikation zwischen entfernten, bei Dienstanbietern (10) vorhandenen Objekten, deren Methoden als Webservices (5) zugreifbar sind, und Client-seitigen lokalen Stellvertretern (Proxies 3) in einem Rechnernetz (9), insbesondere Internet oder LAN. Auf der Seite der Dienstanbieter (10) ist zusätzlich zu vorhandenen Diensten (Webservices 5) ein Generalservice (8) installiert, der dafür eingerichtet ist, eine oder mehrere Serviceaufrufe eines Clients (1) an die vorhandenen Dienste (5) zu vermitteln und eine oder mehrere Antwortnachrichten an den Client (1) zu übermitteln. Client-seitig ist jeweils zusätzlich zu den sonstigen lokalen Stellvertretern (Proxies 3) eine Optimierungsschicht (6) implementiert, die dafür eingerichtet ist, Client-seitige Optimierungen vorzunehmen und Aufrufbündel zusammenzustellen. Außerdem ist ein Generalproxy (7) installiert, der dafür eingerichtet ist, gebündelte Dienstaufrufe auszuführen und Antwortnachrichten an die Optimierungsschicht (6) zurückzugeben.

Description

  • Die Erfindung bezieht sich auf ein System und ein Verfahren zur Kommunikation zwischen entfernten Objekten, deren Methoden als XML-Web-Services – hier auch kurz als Webservices bezeichnet – zugreifbar sind, und ihren lokalen Stellvertreterobjekten, deren Methoden einen transparenten Zugriff auf die entfernten Methoden implementieren. Neben der Bezeichnung Stellvertreter wird hier auch die Bezeichnung Proxy verwendet. Solche Kommunikationsverfahren sind beispielsweise in http://www.w3c.org/2002/ws/, (Stand: 27.01.2004), beschrieben.
  • XML-Web-Services stellen eine standardisierte und weit verbreitete Grundlage zur Kommunikation in lose gekoppelten, verteilten Systemen, z. B. im Internet, insbesondere zum Aufruf entfernter Prozeduren und Methoden dar. In objektorientierten Systemen können XML-Web-Services zum Zugriff auf entfernte Objekte eingesetzt werden.
  • In 3 ist die Systemarchitektur eines Kommunikationssystems nach dem Stand der Technik dargestellt. Dabei ist ein Klient oder Client 1 dargestellt, der mit einem Dienstanbieter 10 über das Internet oder ein LAN 9 kommuniziert. Der Client 1 ist als Datenverarbeitungseinrichtung mit zugehöriger Software aufzufassen, mit wenigstens einer Client-Anwendung 2, die mit Proxies 3, z. B. Proxy A und Proxy B kommuniziert, wobei diese wiederum mit einer Kommunikationsschicht 4 kommunizieren. Die Kommunikationsschicht 4 des Client 1 ist dafür eingerichtet, mit einer entsprechenden Kommunikationsschicht 4 eines Dienstanbieters 10 über das Internet 9 zu kommunizieren. Die Einrichtungen des Dienstanbieters 10 enthalten außerdem Software-Mittel zur Realisierung von Services 5, z. B. Service A und Service B.
  • Der bekannte Ablauf eines entfernten Dienstaufrufs in einer solchen Umgebung gemäß 3 ist nachstehend beschrieben:
    • i. Der Client 1 ruft eine lokale, von einem Stellvertreter 3 zur Verfügung gestellte Prozedur auf.
    • ii. Der Stellvertreter 3 verwendet die in der Kommunikationsschicht 4 implementierte Funktionalität zum Übermitteln der Prozeduraufrufinformationen über das LAN oder das Internet 9 zum Dienstanbieter 10.
    • iii. In der Kommunikationsschicht 4 des Dienstanbieters 10 wird die Prozeduraufrufinformation extrahiert, die den Dienst implementierende Prozedur 5 lokal aufgerufen, der Rückgabewert des Aufrufs formatiert und an die Kommunikationsschicht 4 des Klienten 1 übermittelt.
    • iv. Die Kommunikationsschicht 4 des Klienten 1 extrahiert die Prozedurrückgabeinformationen, und der entsprechende lokale Stellvertreter 3 liefert den Rückgabewert als Ergebnis des initialen lokalen Prozeduraufrufs an die Client-Anwendung 2.
  • Durch die Verwendung von SOAP (Simple Object Access Protocol), wie in http://www.w3.org/TR/soap12-part1/ beschrieben, verbunden mit http (Hypertext Transfer Protocol), wie in ftp://ftp.isi.edu/in-notes/rfc2616.txt beschrieben, als Verfahren zum Austausch strukturierter und typisierter Daten, können Dienste unterschiedlichsten Anwendungen innerhalb des sogenannten WWW über Plattformgrenzen hinweg zugänglich gemacht werden. Grundsätzlich ist das bekannte, wie auch das unten beschriebene Verfahren jedoch unabhängig vom verwendeten Protokoll.
  • Ein wesentlicher Nachteil einer solchen generischen Realisierung entfernter Methodenaufrufe ist, dass diese Aufrufe um ein Vielfaches zeit- und rechenintensiver sind als lokale Funktionsaufrufe oder Funktionsaufrufe in enger gekoppelten Systemen.
  • Der Erfindung liegt daher die Aufgabe zugrunde, ein System und ein Verfahren zur Kommunikation zwischen entfernten Objekten anzugeben, mit denen eine Verringerung des Kommunikationsaufwands erreichbar ist.
  • Diese Aufgabe wird durch ein Kommunikationssystem gelöst, das die im Anspruch 1 angegebenen Merkmale aufweist. Ein zugehöriges Kommunikationsverfahren und vorteilhafte Ausgestaltungen sind in weiteren Ansprüchen angegeben.
  • Mit der Erfindung wird demnach vorgeschlagen, den erforderlichen Kommunikationsaufwand dadurch zu verringern, dass Client-seitig eine Optimierungsschicht sowie ein Generalproxy angeordnet werden, und beim Dienstanbieter einen Generalservice einzufügen. Mit diesen Maßnahmen lassen sich Optimierungen, z. B. durch Bündelung von Aufrufen erreichen.
  • Das System bzw. Verfahren erlaubt die Nutzung von Zwischenspeichern (Caches), alternativen Datenformaten und Übertragungsprotokollen, sowie anwendungsspezifischen Optimierungen.
  • In Umgebungen, die z. B. über die Grenzen eines lokalen Netzwerkes hinweg einzelne Komponenten nur lose koppeln, gilt insbesondere, dass ein Bündeln von Dienstaufrufen wünschenswert sein kann, wenn die fixen Kosten für eine sogenannte Rundreise vom Klienten zum Dienstanbieter und zurück im Verhältnis zu den Kosten der Übertragung und Bearbeitung der eigentlichen Dienstanfrage und Antwort sehr hoch sind. Diese Kosten werden verursacht durch (oft mehrfach) notwendige Verbindungsaufbauten, die Erstellung und Übertragung protokollspezifischer Nachrichtenköpfe und die Initialisierung von Nachrichten verarbeitenden (z. B. von SOAP/XML-Parser-, Authentifizierungs- und Autorisierungs-) oder übertragenden (z. B. HTTP-Verbindungs- oder Datenkomprimierungs-) Komponenten. Mit der Erfindung wird hinsichtlich dieses Sachverhalts eine Verbesserung erreicht, da ermöglicht wird, unabhängig von der Erstellung der Dienste (Webservices) und Stellvertreter (Proxies), Optimierungen in den Kommunikationsablauf einzufügen. Dabei werden keine zusätzlichen Anforderungen an die Ablaufumgebung sowohl der Dienst- als auch der Klient- und Stellvertreterkomponenten gestellt, und die generischen Dienst- und Stellvertreterkomponenten, insbesondere deren Schnittstellen, werden nicht verändert, wodurch vorteilhaft Wiederverwendbarkeit und leichte Konfigurierbarkeit erreicht werden.
  • Das erfindungsgemäße Verfahren ermöglicht es:
    • 1. entfernte Methodenaufrufe zu unterbinden, z. B. indem lokale Caches zum Beantworten von Informationsanfragen genutzt werden,
    • 2. entfernte Methodenaufrufe zu verzögern, z. B. können die in objektorientierten Umgebungen notwendigen Methodenaufrufe zur Kontrolle der Lebenszeit entfernter Objekte, sei es durch deren explizite Zerstörung (sogenannte Destruktoraufrufe), oder durch das periodische Ermitteln von nicht mehr verwendeten Objekten (die sogenannte Garbage Collection), durchaus zeitlich verzögert vom Klienten zur Ablaufumgebung der entfernten Objekte übermittelt werden,
    • 3. entfernte Methodenaufrufe zu bündeln, z. B. um die Zahl ressourcenintensiver Verbindungsaufbauvorgänge zu verkleinern und die in 1. und 2. hintangestellten Anfragen bei sich bietender Gelegenheit nachträglich zu tätigen,
    • 4. die die Rückgabewerte entfernter Methodenaufrufe enthaltenden Nachrichten mit weiteren, für die lokale Anwendung relevanten Informationen anzureichern, z. B. um das Löschen von ungültig gewordenen Einträgen in lokalen Caches zu veranlassen,
    • 5. über verwendete Übertragungsprotokolle oder Datenformate je nach Laufzeitumgebung zu entscheiden, z.B. um die ressourcenintensive SOAP/HTTP-Übertragung durch eine effizientere zu ersetzen, sofern die Art der Verbindung (Internet/LAN, eventuell vorhandene HTTP-Proxies und Firewalls) dies erlauben, und
    • 6. zur Verwaltung, insbesondere Aktualisierung und Invalidierung der Daten in einem Zwischenspeicher, unabhängig von Aufrufen aus Client-Anwendungen eine Kommunikation zu initiieren, oder huckepack Informationen zusammen mit der Übertragung von Aufrufbündeln und der Rückübertragung von Antworten beim Dienstanbieter anzufordern.
  • Das Verfahren ist in allen Umgebungen einsetzbar, in denen generische Dienstanbieter- und Stellvertreter-Komponenten zur Verfügung stehen, die die Funktionalität zur Formatierung und Übertragung eines entfernten Dienstaufrufs und der entsprechenden Antwort kapseln. Zum Beispiel bietet die Framework Class Libraryq (FCL) der Microsoft.NET Plattform, vergl. J. Richter, Applied Microsoft .NET Framework Programming, Microsoft Press 2001, Seiten 21 bis 24, solche Komponenten an.
  • Eine weitere Beschreibung der Erfindung und deren Vorteile erfolgt nachstehend anhand eines in Zeichnungsfiguren dargestellten Ausführungsbeispiels.
  • Es zeigt:
  • 1 die Systemarchitektur eines erfindungsgemäßen Kommunikationssystems,
  • 2 einen erfindungsgemäßen Kommunikationsablauf,
  • 3 die Systemarchitektur eines Kommunikationssystems nach dem Stand der Technik.
  • 1 zeigt die Systemarchitektur eines erfindungsgemäßen Kommunikationssystems. Zum Zweck der Kontrolle und Optimierung der Kommunikation ist dabei auf der Seite eines Dienstanbieters 10 zusätzlich zu den in einer Ausführungsumgebung gemäß dem Stand der Technik, wie bereits oben anhand der 3 beschrieben, vorhandenen Diensten, den Services 5, ein weiterer Webservice allgemeinerer Funktionalität installiert, der mit Generalservice 8 bezeichnet ist. Dieser ist in der Lage, eine oder mehrere Dienstanfragen an die ursprünglichen Dienstanbieter, die Services 5, zu vermitteln, und eine oder mehrere Antwortnachrichten an den oder die entfernten Klienten, die Clients 1, zu übermitteln.
  • Entsprechend ist in der entfernten Ablaufumgebung, beim Client 1, ein generischer Stellvertreter für diesen zusätzlichen Webservice installiert, der als Generalproxy 7 bezeichnet ist. Außerdem enthält der Client 1 als zusätzliche Komponente eine Optimierungsschicht 6. Diese bietet für die Kommunikation mit den Proxies 3 erforderliche Kommunikations- und Datenformatierungs-Funktionen und ersetzt insoweit Funktionen der Kommunikationsschicht 4, erweitert aber auch die Optimierungsmöglichkeiten. Die Optimierungsschicht 6 kann ihrerseits mittels des Generalproxies 7 die Funktionalität der Kommunikationsschicht 4, oder eine andere Implementierung der benötigten Funktionalität, verwenden.
  • Weitere Informationen zur Funktion der bereits genannten Komponenten erschließen sich aus der nachstehenden Beschreibung eines Kommunikationsablaufes anhand der 2. In 2 symbolisieren senkrechte Balken die jeweils benutzten Systemkomponenten, deren Nummerierung mit der jeweiligen Komponentenbezeichnung in 3 übereinstimmt. Mit S1 bis S14 sind Ablaufschritte bezeichnet, die nachstehend erläutert werden.
  • 2 zeigt einen typischen Ablauf eines Dienstaufrufes in einer erfindungsgemäß erweiterten Umgebung:
    Schritt S1: Der Client 1, bzw. die Client-Anwendung 2 ruft eine lokale, von einem Proxy 3 zur Verfügung gestellte Prozedur auf.
    Schritt S2: Der Proxy 3 verwendet die in der Optimierungsschicht 6 implementierte Funktionalität zum Übermitteln von Prozeduraufrufen. Die Optimierungsschicht 6 bietet dem Proxy oder Stellvertreter 3 dazu eine zur ursprünglichen Kommunikationsschicht identische Schnittstelle.
    Schritt S3: In der Optimierungsschicht 6 wird der Dienstaufruf, sofern er nicht verzögert oder durch ein, in einem Zwischenspeicher der Optimierungsschicht 6 vorhandenes Ergebnis beantwortet werden kann, durch schon vorhandene, vorher verzögerte, oder aber sinnvollerweise im Voraus zu tätigende Dienstaufrufe, erweitert (Bündelung von Aufrufen).
    Schritt S4: Dieses Bündel von Aufrufen wird durch einen lokalen Aufruf des Generalproxy 7 an die generische Kommunikationsschicht 4 des Client 1 übergeben, und zur Kommunikationsschicht 4 des Dienstanbieters 10 übertragen.
    Schritt S5: Durch einen lokalen Aufruf der Generalserviceprozedur wird das Bündel an den Generalservice 8 übergeben.
    Schritt S6: Die Generalserviceprozedur bearbeitet die Dienstaufrufe und liefert deren Ergebnisse. Der Generalservice 8 findet dazu im Schritt 6 die benötigten Services 5 auf.
    Schritt S7: Methodenaufruf durch den Generalservice B.
    Schritt S8: Resultate-Rückgabe der Services 5 an den Generalservice B.
    Schritt S9: Zusammenstellung der Resultate durch den Generalservice 8 zu Bündeln.
    Schritt S10: Rückgabe des Resultate-Bündels an die Kommunikationsschicht 4. Das Bündel kann erweitert sein um zusätzlich vom Dienstanbieter zur Optimierungsschicht 6 des Klienten zu übermittelnde Informationen.
    Schritt S11: Übertragung zur entfernten Kommunikationsschicht 4 und von dort Rückgabe zum Generalproxy 7, der das Ergebnis als lokale Prozedurrückgabe an die Optimierungsschicht 6 liefert.
    Schritt S12: Auswertung der Resultate in der Optimierungsschicht 6.
    Schritt S13: In der Optimierungsschicht 6 werden die zusätzlich zur Antwort auf die initiale Dienstanfrage gelieferten Informationen ausgewertet und verwendet.
    Schritt S14: Die Antwort auf die initiale Anfrage wird über den generischen Stellvertreter 3 an die Clientanwendung 2 übermittelt, womit der beispielhafte Ablauf beendet ist.
  • In einer konkreten Implementierung des Systems, zum Beispiel als Komponente innerhalb des NET Frameworks, kann die Erweiterung eines bestehenden Systems von generischen Stellvertretern und Dienstanbietern durch einen Austausch der klientenseitigen Kommunikationsschicht durch die erfindungsgemäße Optimierungsschicht 6 mit Kommunikationsschicht 4 und die Installation des zusätzlichen Generalproxy parallel zu den vorhandenen Proxies realisiert werden. Anwendungsunabhängige Optimierungen, wie die Verwendung von Caches und die Verzögerung von Dienstaufrufen können so ohne Implementationsaufwand konfigurierbar zur Verfügung gestellt werden. Anwendungsabhängige Optimierungen können als Module an einer definierten Schnittstelle der Optimierungsschicht 6 eingefügt werden.
  • Entsprechend wird auf der Dienstanbieterseite der Generalservice 8 parallel zu den vorhandenen Services realisiert. Der Generalservice 8 beinhaltet einen Zwischenspeicher von dienstanbietenden Serviceinstanzen, deren Dienstmethoden durch sogenannte Reflektion, d.h. anhand von Informationen über das Ziel, den Namen und die Signatur der Methode ausgeführt werden. Zur Serialisierung und Deserialisierung der Parameter- und Rückgabeobjekte der Methodenaufrufe können XML-Dokument-Instanzen gemäss der SOAP-Spezifikation oder eine bandbreiteneffizientere Binärkodierung verwendet werden. Die Zuordnung von klientenseitigen zu dienstanbieterseitigen Typen erfolgt im Falle der SOAP-(De)Serialisierung anhand von in den gegebenen Proxy-Service-Paaren deklarierten Typattributen, im Falle der Binärkodierung wird eine Bindung zwischen Serialisierung und zu instanzüerendem Typ gemäss den Anforderungen der vorgefundenen Deserialisierungskomponente implementiert.
  • Die Optimierung und Kontrolle der Kommunikation ist transparent sowohl für die Nutzer der angebotenen Dienste als auch für deren Anbieter.

Claims (7)

  1. System zur Kommunikation zwischen entfernten, bei Dienstanbietern (10) vorhandenen Objekten, deren Methoden als Webservices (5) zugreifbar sind, und Client-seitigen lokalen Stellvertretern (Proxies 3) in einem Rechnernetz (9), insbesondere Internet oder LAN, wobei a) auf der Seite der Dienstanbieter (10) zusätzlich zu vorhandenen Diensten (Webservices 5) ein Generalservice (8) installiert ist, der dafür eingerichtet ist, eine oder mehrere Serviceaufrufe eines Clients (1) an die vorhandenen Dienste (5) zu vermitteln, und eine oder mehrere Antwortnachrichten an den Client (1) zu übermitteln, b) Client-seitig zusätzlich zu den sonstigen lokalen Stellvertretern (Proxies 3) eine Optimierungsschicht (6) implementiert ist, die dafür eingerichtet ist, Client-seitige Optimierungen vorzunehmen und Aufrufbündel zusammenzustellen, und außerdem ein Generalproxy (7) installiert ist, der dafür eingerichtet ist, gebündelte Dienstaufrufe auszuführen und Antwortnachrichten an die Optimierungsschicht (6) zurückzugeben.
  2. System nach Anspruch 1, dadurch gekennzeichnet, dass die Optimierungsschicht (6) mindestens einen Zwischenspeicher enthält, mit dessen Hilfe Dienstaufrufe vermeidbar oder verzögerbar sind.
  3. System nach Anspruch 2, dadurch gekennzeichnet, dass der Client (1) mittels der Optimierungsschicht (6) und dem Generalproxy (7) dafür eingerichtet ist, auch ohne Aufruf durch eine Client-Anwendung (2) selbsttätig eine Kommunikation mit einem Dienstanbieter (10) zu initiieren, um gespeicherte Information zu aktualisieren.
  4. System nach Anspruch 2, dadurch gekennzeichnet, dass der Client (1) mittels der Optimierungsschicht (6) und dem Generalproxy (7) dafür eingerichtet ist, zur Verwaltung, insbesondere Aktualisierung und Invalidierung der Daten im Zwischenspeicher, huckepack Informationen zusammen mit der Übertragung von Aufrufbündeln und der Rückübertragung von Antworten beim Dienstanbieter (10) anzufordern.
  5. Verfahren zur Kommunikation zwischen entfernten, bei Dienstanbietern (10) vorhandenen Objekten, deren Methoden als Webservices (5) zugreifbar sind, und Client-seitigen lokalen Stellvertretern (Proxies 3) in einem Rechnernetz (9), insbesondere Internet oder LAN, wobei –auf der Seite von Dienstanbietern (10) zusätzlich zu vorhandenen Diensten (Webservices 5) ein Generalservice (8) installiert ist, und – Client-seitig jeweils zusätzlich zu den sonstigen lokalen Stellvertretern (Proxies 3) eine Optimierungsschicht (6) implementiert ist, die einen Zwischenspeicher enthält, und außerdem ein Generalproxy (7) installiert ist, und wobei a) mehrere Aufrufe von Methoden durch Client-Anwendungen (2) beim jeweiligen Stellvertreter (Proxy 3) durch diesen der Optimierungsschicht (6) zugeleitet werden, dort zu einem Aufrufbündel zusammengestellt und einer Kommunikationsschicht (4) zugeleitet werden, b) eine Übertragung des Aufrufbündels zum Dienstanbieter (10) durchgeführt wird, dort durch den Generalservice (8) die im Aufrufbündel enthaltenen einzelnen Aufrufe den jeweils entsprechenden Diensten (5) zugeleitet werden, deren Antworten zusammengestellt und gebündelt zum Client (1) zurückübertragen werden, und c) die Antworten in der Optimierungsschicht (6) ausgewertet und über den jeweiligen Stellvertreter (3) der Client-Anwendung (2) zugeführt werden.
  6. Verfahren nach Anspruch 5, dadurch gekennzeichnet, dass die Optimierungsschicht (6) zur Verwaltung, insbesondere Aktualisierung und Invalidierung der Daten im Zwischenspeicher, huckepack Informationen zusammen mit der Übertragung von Aufrufbündeln und der Rückübertragung von Antworten beim Dienstanbieter (10) anfordert.
  7. Verfahren nach Anspruch 5 oder 6, dadurch gekennzeichnet, dass die Optimierungsschicht (6) zur Verwaltung, insbesondere Aktualisierung und Invalidierung der Daten im Zwischenspeicher, auch ohne Aufruf durch eine Client-Anwendung (2) selbsttätig eine Kommunikation mit einem Dienstanbieter (10) initiiert.
DE102004004345A 2004-01-29 2004-01-29 System und Verfahren zur Kommunikation zwischen entfernten Objekten und lokalen Stellvertretern Withdrawn DE102004004345A1 (de)

Priority Applications (3)

Application Number Priority Date Filing Date Title
DE102004004345A DE102004004345A1 (de) 2004-01-29 2004-01-29 System und Verfahren zur Kommunikation zwischen entfernten Objekten und lokalen Stellvertretern
PCT/EP2005/000862 WO2005074234A1 (de) 2004-01-29 2005-01-28 System und verfahren zur kommunikation zwischen entfernten objekten und lokalen stellvertretern
US10/587,471 US20070266159A1 (en) 2004-01-29 2005-01-28 System and Method for Communication Between Remote Objects and Local Proxies

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102004004345A DE102004004345A1 (de) 2004-01-29 2004-01-29 System und Verfahren zur Kommunikation zwischen entfernten Objekten und lokalen Stellvertretern

Publications (1)

Publication Number Publication Date
DE102004004345A1 true DE102004004345A1 (de) 2005-08-18

Family

ID=34801160

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102004004345A Withdrawn DE102004004345A1 (de) 2004-01-29 2004-01-29 System und Verfahren zur Kommunikation zwischen entfernten Objekten und lokalen Stellvertretern

Country Status (3)

Country Link
US (1) US20070266159A1 (de)
DE (1) DE102004004345A1 (de)
WO (1) WO2005074234A1 (de)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7739387B2 (en) * 2007-03-08 2010-06-15 Sap Ag System and method for message packaging
US7945949B2 (en) 2007-03-19 2011-05-17 Microsoft Corporation Providing remote services to legacy applications
US20090094263A1 (en) * 2007-10-04 2009-04-09 Microsoft Corporation Enhanced utilization of network bandwidth for transmission of structured data
EP2073490A1 (de) * 2007-12-20 2009-06-24 Alcatel Lucent Vorrichtungen und Verfahren zum Aufrufen einer Sequenz von Webleistungen durch eine Nachricht, die auf einer einfachen Anfrage beruht
US7839799B2 (en) * 2008-09-12 2010-11-23 International Business Machines Corporation Middleware components for bundling service invocations
US9165145B2 (en) * 2013-03-11 2015-10-20 Sap Se Efficiently segregating data from externally accessible systems

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030093500A1 (en) * 2001-10-09 2003-05-15 Edwin Khodabakchian System and method for managing service interactions
US20030135628A1 (en) * 2002-01-15 2003-07-17 International Business Machines Corporation Provisioning aggregated services in a distributed computing environment
US20030188039A1 (en) * 2002-03-26 2003-10-02 Liu James C. Method and apparatus for web service aggregation
US20030236857A1 (en) * 2002-03-07 2003-12-25 International Business Machines Corporation Network service system and program using data processing

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5526491A (en) * 1992-09-22 1996-06-11 International Business Machines Corporation System and method for calling selected service procedure remotely by utilizing conditional construct switch statement to determine the selected service procedure in common stub procedure
US5778228A (en) * 1994-08-16 1998-07-07 International Business Machines Corporation Method and system for transferring remote procedure calls and responses over a network
US5613155A (en) * 1995-06-07 1997-03-18 International Business Machines Corporation Bundling client write requests in a server
US6321274B1 (en) * 1996-06-28 2001-11-20 Microsoft Corporation Multiple procedure calls in a single request
US6578113B2 (en) * 1997-06-02 2003-06-10 At&T Corp. Method for cache validation for proxy caches
US6324567B2 (en) * 1997-06-11 2001-11-27 Oracle Corporation Method and apparatus for providing multiple commands to a server
US6098149A (en) * 1997-06-13 2000-08-01 Emc Corporation Method and apparatus for extending commands in a cached disk array
US6785675B1 (en) * 2000-11-13 2004-08-31 Convey Development, Inc. Aggregation of resource requests from multiple individual requestors
BR0210141A (pt) * 2001-06-04 2004-06-08 Nct Group Inc Sistema e método para a redução do tempo para envio de informação de uma rede de comunicações para um usuário
WO2003005668A1 (en) * 2001-07-03 2003-01-16 Nokia Corporation Method for managing sessions between network parties, methods, network element and terminal for managing calls
US7130890B1 (en) * 2002-09-04 2006-10-31 Hewlett-Packard Development Company, L.P. Method and system for adaptively prefetching objects from a network
US7260599B2 (en) * 2003-03-07 2007-08-21 Hyperspace Communications, Inc. Supporting the exchange of data by distributed applications

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030093500A1 (en) * 2001-10-09 2003-05-15 Edwin Khodabakchian System and method for managing service interactions
US20030135628A1 (en) * 2002-01-15 2003-07-17 International Business Machines Corporation Provisioning aggregated services in a distributed computing environment
US20030236857A1 (en) * 2002-03-07 2003-12-25 International Business Machines Corporation Network service system and program using data processing
US20030188039A1 (en) * 2002-03-26 2003-10-02 Liu James C. Method and apparatus for web service aggregation

Also Published As

Publication number Publication date
US20070266159A1 (en) 2007-11-15
WO2005074234A1 (de) 2005-08-11

Similar Documents

Publication Publication Date Title
DE60015423T2 (de) Verfahren und Vorrichtung zur Objektwiedergabe in einem Netzwerk
EP1559038B1 (de) Verfahren zum vorabübertragen strukturierter datenmengen zwischen einer clienteinrichtung und einer servereinrichtung
DE69803369T2 (de) Verfahren und Vorrichtung zur Bereitstellung eines dritten Internet-Datenkanals
EP0825527B1 (de) Verfahren zur Unterstützung der Adress-Interaktion zwischen einer ersten und einer zweiten Einheit
DE602004011455T2 (de) Verfahren und System zur automatischen Erzeugung von Dienstschnittstellen für eine dienstorientierte Architektur
DE60038170T2 (de) Verfahren und vorrichtung zur verwaltung der serversbandbreitenutzung
DE10297998B4 (de) Erstellen verteilter Proxy-Konfigurationen
EP0825524A1 (de) Verfahren zur Verwaltung der Benennung von Objekten
DE10204609A1 (de) Computersystem eines Typs einer verteilten Umgebung, das aufeinanderfolgende Nachrichtenkommunikationen mit hoher Geschwindigkeit durch eine Dienstschicht erreichen kann
DE602005004334T2 (de) Nms zur Verarbeitung von Multi-Server Ereignissen
DE10151119C2 (de) Verfahren zum Erfassen von mehreren Feldgeräten in einer Gerätekonfiguration
EP0993712A2 (de) Verfahren und anordnung zur codierung digitaler daten
DE60218185T2 (de) Verfahren und Vorrichtung zum Wiederauffinden von Informationen in einem Netzwerk
DE102004004345A1 (de) System und Verfahren zur Kommunikation zwischen entfernten Objekten und lokalen Stellvertretern
DE19813883B4 (de) Verfahren, Computerprogrammprodukt und Dokumentenmanagementsystem zum Zugriff auf Internet-Informationen für geschlossene Benutzergruppen
DE602005004255T2 (de) Bidirektionale SOAP-Kommunikation mittels einer einzigen HTTP-Sitzung
DE10244459A1 (de) Rechner- und/oder Software-Architektur unter Verwendung von Micro-Kernel- und Multi-Tier-Konzept mit Komponententechnik
EP1656783B1 (de) Verfahren zur bertragung von wap-push-nachrichten
DE60036503T2 (de) Verfahren zur Kommunikation zwischen Fernobjekten
EP0825526B1 (de) Verfahren zur Unterstützung der Interaktion zwischen einer ersten und einer zweiten Einheit
EP1435026B1 (de) System und verfahren zur datenausgabe eines geräts, insbesondere eines automatisierungsgerät über eine standardisierte schnittstelle mit variablenersetzung über einen echoserver
DE60104672T2 (de) System zur überwachung von terminals
DE60219244T2 (de) Aktives Netzwerk
DE102012111629B4 (de) Telekommunikationseinrichtung sowie Verfahren zum Steuern und Verwalten von Servicenummern
DE102007040405B3 (de) Verfahren und Anordnung zur Erzeugung und/oder Nutzung eines generischen Webdienstes

Legal Events

Date Code Title Description
OM8 Search report available as to paragraph 43 lit. 1 sentence 1 patent law
8110 Request for examination paragraph 44
R016 Response to examination communication
R016 Response to examination communication
R081 Change of applicant/patentee

Owner name: ABB SCHWEIZ AG, CH

Free format text: FORMER OWNER: ABB RESEARCH LTD., ZUERICH, CH

R082 Change of representative

Representative=s name: MILLER, TOIVO, DIPL.-ING., DE

R120 Application withdrawn or ip right abandoned