Remote application control for low bandwidth application sharing
First Claim
1. A computer-implemented method of performing functions on a remote machine, the functions to be invoked by a first application in a local machine, a communication pipe coupling the local and remote machines, the method comprising the steps of:
- a) creating a remote-implementation (RI) interface on a local machine, the RI interface defining a function;
b) creating a second local-implementation (LI) interface in a remote machine as an instance of the RI interface;
c) sending an instance identifier for the second LI interface and a function identifier for the function into the communication pipe in response to the first application invoking the function through the RI interface; and
d) performing the function through the second LI interface on the remote machine in response to receiving the instance identifier and the function identifier.
1 Assignment
0 Petitions
Accused Products
Abstract
An object-oriented distributed service architecture is disclosed as including a client, a "distributed" interface server, and a "local" interface server residing on each computer that is part of an application sharing session. The distributed server communicates with other similar distributed servers on remote computers, and enables a remote implementation of a function invoked by the local client. In response to a function call through a local interface, the distributed server packages an instance identifier for a remote interface residing on a remote machine, together with a function identifier and any arguments required for the function. The message packet is then sent off to remote machines. Each such remote interface had been created as an instance of the local interface in response to a previous message from the local interface. When another distributed server receives the message, the function is invoked through the interface associated with the received instance identifier, resulting in implementation of the function at the remote site.
56 Citations
17 Claims
-
1. A computer-implemented method of performing functions on a remote machine, the functions to be invoked by a first application in a local machine, a communication pipe coupling the local and remote machines, the method comprising the steps of:
-
a) creating a remote-implementation (RI) interface on a local machine, the RI interface defining a function; b) creating a second local-implementation (LI) interface in a remote machine as an instance of the RI interface; c) sending an instance identifier for the second LI interface and a function identifier for the function into the communication pipe in response to the first application invoking the function through the RI interface; and d) performing the function through the second LI interface on the remote machine in response to receiving the instance identifier and the function identifier. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. An object-oriented distributed service architecture comprising:
-
first and second computers connected by a communication pipe; first client residing within the first computer and accessing a remote implementation (RI) interface defining a function implemented in the first computer, a second local-implementation (LI) interface created in the second computer as an instance of the RI interface; first RI interface server residing within the first computer for creating a protocol data unit (PDU) and sending the PDU into the communication pipe in response to the client invoking the function through the RI interface, the PDU including an instance identifier associated with the second LI interface and a function identifier associated with the function; and second RI interface server residing within the second computer for invoking the function through the second LI interface in response to receiving the PDU from the communication pipe, the function implemented in the second computer. - View Dependent Claims (8, 9, 10, 11)
-
-
12. An article of manufacture comprising:
a machine-readable medium having instructions which when executed on a first computer cause the steps of creating a remote-implementation (RI) interface in the first computer, the RI interface defining a first function being implemented in the first computer and at least one second computer, the first and second computers being connected by a communication pipe; and sending from the first computer to the second computer an instance identifier of a second local implementation (LI) interface and a function identifier of a function in response to an application program in the first computer invoking the function through the RI interface, the second LI interface being an instance of the RI interface. - View Dependent Claims (13, 14, 15)
-
16. An article of manufacture comprising:
a machine-readable medium having instructions which when executed on a remote computer cause the steps of; creating a local implementation (LI) interface that defines a function which is implemented in the remote computer in response to a message received from a local computer, the LI interface being an instance of and having the same instance identifier as a remote-implementation (RI) interface in the local computer; and invoking the function through the LI interface in response to receiving the instance identifier of the LI interface and a function identifier of the function from the local computer.
-
17. An application sharing session comprising:
-
first user invoking a function supported by an application residing on the user'"'"'s first machine; creating a remote-implementation (RI) interface on the first user'"'"'s machine, the RI interface defining the function; creating a local-implementation (LI) interface in a second user'"'"'s machine as an instance of the RI interface, a copy of the application residing on the second user'"'"'s machine; the first user'"'"'s machine sending an instance identifier for the LI interface and a function identifier for the function to the second user'"'"'s machine in response to the user invoking the function; and performing the function by the copy of the application in the second user'"'"'s machine through the LI interface in response to receiving the instance identifier and the function identifier.
-
Specification