WO1999003036A1 - Traduction d'appel de procedure a distance - Google Patents

Traduction d'appel de procedure a distance Download PDF

Info

Publication number
WO1999003036A1
WO1999003036A1 PCT/EP1998/004275 EP9804275W WO9903036A1 WO 1999003036 A1 WO1999003036 A1 WO 1999003036A1 EP 9804275 W EP9804275 W EP 9804275W WO 9903036 A1 WO9903036 A1 WO 9903036A1
Authority
WO
WIPO (PCT)
Prior art keywords
rpc
translation
platform
level language
appropriate
Prior art date
Application number
PCT/EP1998/004275
Other languages
English (en)
Inventor
Björn Johansson
Original Assignee
Telefonaktiebolaget Lm Ericsson (Publ)
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 Telefonaktiebolaget Lm Ericsson (Publ) filed Critical Telefonaktiebolaget Lm Ericsson (Publ)
Priority to AU86312/98A priority Critical patent/AU8631298A/en
Publication of WO1999003036A1 publication Critical patent/WO1999003036A1/fr
Priority to SE0000044A priority patent/SE0000044L/xx

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/547Remote procedure calls [RPC]; Web services
    • 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

Definitions

  • This invention pertains to translation between data structures operative on differing but communicating computerized platforms.
  • the constituent computer systems of such a product are typically each considered to be a "platform", and are connected by a physical communications link such as a cable.
  • Each platform executes software in the form of sets of instructions coded in accordance with a particular software or programming language.
  • the platforms are typically configured for differing purposes.
  • software executed by one platform may comprise hardware "drivers" for controlling actual hardware equipment, while the software executed by another platform may be managerial or administrative.
  • An example is a telecommunications access product, in which one platform controls a piece of telecommunications hardware while another platform performs administrative or supervisory functions.
  • the software or programming language for one platform is more "high level” than the programming language for the other platform.
  • “high level” is meant that the programming language is more sophisticated, more complex, or more specialized than the programming language of the other platform.
  • each platform has one or more data structures in its programming language.
  • the two platforms must nevertheless communicate, e.g., data from the differing data structures must be passed back and forth between the platforms.
  • data from the differing data structures must be passed back and forth between the platforms.
  • RPC remote procedure call
  • a remote procedure call (RPC) client operates on a first level language platform and forwards a request for a RPC service to a second level language platform.
  • the RPC client includes a RPC service table having a plurality of keys stored therein as well as translation description memory having a plurality of translation descriptions.
  • a main interface process of the RPC client obtains an appropriate one of the keys from the RPC service table and uses the appropriate one of the keys to select an appropriate one of the plurality of translation descriptions.
  • a translation engine uses the appropriate one of the plurality of translation descriptions to prepare a protocol formatted message for forwarding to the second level language platform.
  • the protocol formatted message includes the appropriate one of the keys.
  • a response from the RPC service of the second level language platform also includes a key which is used by the RPC client to translate the response back to the first level language.
  • Fig. 1 is a schematic view of two differing computerized platforms, one of the platforms including a PRC server and the other of the platforms including a RPC client.
  • Fig. 2 is a schematic view of an embodiment of the RPC client of Fig. 1.
  • Fig. 1 shows two computerized platforms, particularly platform B and platform A.
  • Platform B known as the lower level language platform, has a RPC server 20 and a plurality of RPC services 22A - 22N.
  • Platform A known as the higher level language platform, has a RPC client 30 and a plurality of applications 32A - 32C (three such applications being shown as an example) .
  • RPC server 20 and RPC client 30 are connected by communications link 40 for which there is a protocol P for translation between platform A and platform B.
  • RPC service interface 42 Between RPC client 30 and applications 32A - 32C is an RPC service interface 42.
  • An example of the lower level language executing on platform B can be an imperative language such as the "C" programming language, while a higher level language such as Prolog, Lisp, or variants thereof may be executing on platform A.
  • PRC server 20 of platform B is included in software executing on platform B.
  • PRC server 20 dispatches RPC requests received from platform A to different ones of the PRC services 22.
  • PRC client 30 of the present invention performs a simple and flexible translation of the higher level language data structures employed on platform A towards protocol P.
  • PRC client 30 provides a transparent interface to other applications executing on platform A.
  • Fig. 2 shows PRC client 30 as including main interface process 50; translation description memory 51; RPC service table 52; translation engine 54; an add/remove/lookup service 56; and, communication interface 58.
  • Communication interface 58 is connected to communications link 40.
  • RPC service table 52 is stored in a memory (e.g., RAM) and has, at corresponding addresses, a plurality of RPC items represented by items 60A - 60K. Each item has as one of its fields an RPC service identifier as a key, e.g., keys 62A - 62K being shown in Fig. 2.
  • one of the applications 32 running on platform A requests one of the RPC services 22 executing on platform B.
  • the request in the form of a remote procedure call, can include procedure arguments, e.g., parameters to be passed to the RPC service 22 for utilization thereby in performance of the PRC service.
  • the request by the calling application 32 is made over interface 42 to main interface process 50 of platform A.
  • main interface process 50 uses add/remove/lookup service 56 to consult RPC service table 52 in order to locate an appropriate one of the items 60 in RPC service table 52 for the RPC service request. Once the appropriate item 60 is located in RPC service table 52, a key 62 is extracted therefrom. The extracted key 62 is then given to main interface process 50, which retrieves a translation description based on this key from translation description memory 51.
  • translation description memory has a different translation description for each key. In essence, each translation description includes instructions or criteria for enabling a translation from the higher level language of platform A to protocol P.
  • the translation description and arguments for the PRC service are sent by main interface process 50 to translation engine 54.
  • Translation engine 54 uses the translation description and RPC arguments of the higher level language of platform A to prepare a protocol P-formatted message.
  • the key 62 is also included in the protocol P-formatted message.
  • the protocol P-formatted message is applied via communications interface 58 to link 40 for transmission to RPC server 20 of platform B.
  • the protocol P-formatted message is processed, interpreted by RPC server 20, and forwarded to a particular one of the RPC services in accordance with the request from the calling applications program 32.
  • the particular RPC service which was invoked by the calling applications program prepares a response which is forwarded in a protocol P- formatted response message over link 40 to platform A.
  • the forwarded response also includes a key 62, which in some cases can be the same key which was transmitted from platform A to platform B in connection with the RPC service request.
  • the protocol P-formatted response message received on link 40 is received at communication interface 58 where it is processed and forwarded to main interface process 50.
  • main interface process 50 the key 62 included in the response message is extracted. Based on the extracted key 62, a suitable translation description is obtained from translation description memory 51. The translation description and the P-formatted response message are then forwarded to translation engine 54 for translation back to the higher level language data structure utilized by the calling application. After preparation of the translation in the higher level language, the translated response is sent by main interface process 50 to the calling application 32, i.e., the application that requested the RPC service.
  • RPC service table 52 is dynamically configurable so that new items can be added, old items removed, or existing items retrieved and/or modified, e.g., in accordance with the particular services 22 provided on platform B.
  • Add/remove/lookup service 56 facilitates these operations, and communicates over interface 42 with the applications programs 32.
  • the present invention provides a cost effective implementation of RPC service where different platforms pose translation problems for the communication protocol.
  • the present invention is particularly suitable for higher level language implementations and provides straightforward translations of symbols, lists, and complex data structures.

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Machine Translation (AREA)

Abstract

L'invention concerne un procédé dans lequel le client (10) d'un appel de procédure à distance (RPC) opère sur une plate-forme de langage à un premier niveau et adresse une requête de service RPC à une plate-forme de langage à un second niveau. Le client (30) RPC comprend une table (52) de service RPC dans laquelle est stockée une pluralité de clés (60) ainsi qu'une mémoire (51) de description de traduction comprenant une pluralité de descriptions de traductions. Lorsqu'un programme (32) d'application de la plate-forme de langage du premier niveau demande un service RPC à la plate-forme de langage du second niveau, un processus (50) d'interface principale du client RPC obtient une clé (60) appropriée de la table (52) de service RPC et utilise cette clé appropriée pour sélectionner une description appropriée dans la pluralité de descriptions de traductions. Une machine (54) de traduction utilise cette description de traduction appropriée pour préparer un message formaté conformément au protocole, destiné à la plate-forme de langage du second niveau. Le message formaté conformément au protocole contient la clé appropriée. Une réponse du service RPC de la plate-forme de langage du second niveau contient également une clé qui est utilisée par le client (30) RPC pour retraduire la réponse dans le langage du premier niveau.
PCT/EP1998/004275 1997-07-11 1998-07-09 Traduction d'appel de procedure a distance WO1999003036A1 (fr)

Priority Applications (2)

Application Number Priority Date Filing Date Title
AU86312/98A AU8631298A (en) 1997-07-11 1998-07-09 Remote procedure call translation
SE0000044A SE0000044L (sv) 1997-07-11 2000-01-11 Proceduranropsomvandling på avstånd

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US5235097P 1997-07-11 1997-07-11
US60/052,350 1997-07-11

Publications (1)

Publication Number Publication Date
WO1999003036A1 true WO1999003036A1 (fr) 1999-01-21

Family

ID=21977043

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/EP1998/004275 WO1999003036A1 (fr) 1997-07-11 1998-07-09 Traduction d'appel de procedure a distance

Country Status (3)

Country Link
AU (1) AU8631298A (fr)
SE (1) SE0000044L (fr)
WO (1) WO1999003036A1 (fr)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6601110B2 (en) * 1998-03-17 2003-07-29 Sun Microsystems, Inc. System and method for translating file-level operations in a non-door-based operating system to door invocations on a door server
EP1363187A1 (fr) * 2002-05-15 2003-11-19 Sony International (Europe) GmbH Envoi d'instructions d'une application dans un environnement client/serveur
WO2007147207A1 (fr) * 2006-06-21 2007-12-27 Richard Slamkovic Courtier d'intergiciel
US7334038B1 (en) 2000-04-04 2008-02-19 Motive, Inc. Broadband service control network
US7353295B1 (en) * 2000-04-04 2008-04-01 Motive, Inc. Distributed services architecture through use of a dynamic service point map
US7765281B1 (en) 2003-03-10 2010-07-27 Motive, Inc. Large-scale targeted data distribution system
US8041782B1 (en) 2000-08-31 2011-10-18 Alcatel Lucent System of automated configuration of network subscribers for broadband communication
US9198749B2 (en) 2006-10-12 2015-12-01 C. R. Bard, Inc. Vascular grafts with multiple channels and methods for making

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0414624A2 (fr) * 1989-08-24 1991-02-27 International Business Machines Corporation Système pour l'appel des procédures sur un noeud de réseau à distance
WO1997008616A1 (fr) * 1995-08-29 1997-03-06 Bell Communications Research, Inc. Systeme et methode d'analyse et d'elaboration de signaux de donnees

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0414624A2 (fr) * 1989-08-24 1991-02-27 International Business Machines Corporation Système pour l'appel des procédures sur un noeud de réseau à distance
WO1997008616A1 (fr) * 1995-08-29 1997-03-06 Bell Communications Research, Inc. Systeme et methode d'analyse et d'elaboration de signaux de donnees

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
DAVE A ET AL: "PROXIES, APPLICATION INTERFACE, AND DISTRIBUTED SYSTEMS", PROCEEDINGS INTERNATIONAL WORKSHOP ON OBJECT ORIENTATION IN OPERATING SYSTEMS, 24 September 1992 (1992-09-24), pages 212 - 220, XP002009478 *
HERRICK J. JOHNSON: "Each piece in its place", UNIX REVIEW, vol. 5, no. 5, June 1987 (1987-06-01), pages 66 - 75, XP002082766 *
NARENDER V R ET AL: "DYNAMIC RPC FOR EXTENSIBILITY", PROCEEDINGS OF THE ANNUAL INTERNATIONAL PHOENIX CONFERENCE ON COMPUTERS AND COMMUNICATIONS, SCOTTSDALE, APR. 1 - 3, 1992, no. CONF. 11, 1 April 1992 (1992-04-01), INSTITUTE OF ELECTRICAL AND ELECTRONICS ENGINEERS, pages 93 - 100, XP000310598 *

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6601110B2 (en) * 1998-03-17 2003-07-29 Sun Microsystems, Inc. System and method for translating file-level operations in a non-door-based operating system to door invocations on a door server
US7334038B1 (en) 2000-04-04 2008-02-19 Motive, Inc. Broadband service control network
US7353295B1 (en) * 2000-04-04 2008-04-01 Motive, Inc. Distributed services architecture through use of a dynamic service point map
US8041782B1 (en) 2000-08-31 2011-10-18 Alcatel Lucent System of automated configuration of network subscribers for broadband communication
EP1363187A1 (fr) * 2002-05-15 2003-11-19 Sony International (Europe) GmbH Envoi d'instructions d'une application dans un environnement client/serveur
US7398527B2 (en) 2002-05-15 2008-07-08 Sony Deutschland Gmbh Dispatching application steps of an application running on an application server in a client/server environment
US7765281B1 (en) 2003-03-10 2010-07-27 Motive, Inc. Large-scale targeted data distribution system
WO2007147207A1 (fr) * 2006-06-21 2007-12-27 Richard Slamkovic Courtier d'intergiciel
AU2007262660B2 (en) * 2006-06-21 2013-01-31 Richard Slamkovic Middleware broker
US9198749B2 (en) 2006-10-12 2015-12-01 C. R. Bard, Inc. Vascular grafts with multiple channels and methods for making

Also Published As

Publication number Publication date
SE0000044L (sv) 2000-03-10
SE0000044D0 (sv) 2000-01-11
AU8631298A (en) 1999-02-08

Similar Documents

Publication Publication Date Title
US5341499A (en) Method and apparatus for processing multiple file system server requests in a data processing network
EP0767563B1 (fr) Méthode et appareil pour l'opération en multiprotocole dans un système client-serveur
EP1027794B1 (fr) Procede et systeme destines a faciliter un developpement logiciel reparti non affecte par la repartition
US6230004B1 (en) Remote procedure calls using short message service
US6134600A (en) Method and apparatus for dynamic derivatives desktops
US6862735B1 (en) Mechanism by which platform independent software may bind to and access platform dependent software
EP0600235A1 (fr) Interface de traitement coopératif et courtier de communication pour environnement hétérogène
EP0478942A2 (fr) Contrôle à distance d'un processeur d'ordinateur
US7165202B2 (en) Method and apparatus to perform customized error handling
JPH10214189A (ja) オブジェクト要求ブローカの異なるインプリメンテーション間で通信を実施するブリッジ
US5454109A (en) Data processing system with interface between application programs and external tools residing in separate environments
EP0767428B1 (fr) Méthode et dispositif pour charger dynamiquement le code d'exception d'un appel à une méthode
WO1999003036A1 (fr) Traduction d'appel de procedure a distance
US6546431B1 (en) Data processing system and method for sharing user interface devices of a provider assistive technology application with disparate user assistive technology applications
EP1514401B1 (fr) Procede et systeme permettant de mettre en oeuvre des services de telephonie a l'aide du xml vocal
EP0193933B1 (fr) Appareil pour la commande d'un système ordinateur par un autre système ordinateur
EP0280893B1 (fr) Systéme évitant le verrouillage d'une base de données relationelle
EP1229470B1 (fr) Suivi de données relatives à des cours d'apprentissage sur ordinateur
KR100482316B1 (ko) 운영체제상에서의콘솔서버방법및장치
IE981035A1 (en) An Inter-Computer Communications Apparatus
KR920001900A (ko) 교환기 설치시 하드웨어 시험 프로그램의 터미널 입력지원방법
KR100233258B1 (ko) 메시지 분배장치에서 고유 식별자를 이용한 공통선 메시지 분배 방법
KR910005777B1 (ko) 퍼스널컴퓨터 접속 처리장치의 n회선 처리방법
KR100442599B1 (ko) 교환 시스템에서 워크스테이션의 분산 객체를 이용한메시지 처리 장치 및 방법
KR20010046954A (ko) 원격지 기지국 매니저와 마스터 기지국 매니저 시스템 및구현 방법

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): AL AM AT AU AZ BA BB BG BR BY CA CH CN CU CZ DE DK EE ES FI GB GE GH GM HR HU ID IL IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MD MG MK MN MW MX NO NZ PL PT RO RU SD SE SG SI SK SL TJ TM TR TT UA UG UZ VN YU ZW

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): GH GM KE LS MW SD SZ UG ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE BF BJ CF CG CI CM GA GN GW ML MR NE SN TD TG

DFPE Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101)
121 Ep: the epo has been informed by wipo that ep was designated in this application
NENP Non-entry into the national phase

Ref country code: KR

WWE Wipo information: entry into national phase

Ref document number: 00000448

Country of ref document: SE

WWP Wipo information: published in national office

Ref document number: 00000448

Country of ref document: SE

REG Reference to national code

Ref country code: DE

Ref legal event code: 8642

122 Ep: pct application non-entry in european phase
NENP Non-entry into the national phase

Ref country code: CA