Establishing a virtual tunnel between two computer programs
First Claim
1. A method performed by one or more computing devices for transferring data in a communication session between a first application on a first network and a second application on a second network, the method comprising:
- storing, in a database and in association with the first application, information about a computer program for converting between a non-local protocol and a local protocol associated with the first application to thereby provide data to the first application in the local protocol, the database being stored in computer memory;
assigning an identifier to the communication session;
creating at least one queue associated with the communication session, the at least one queue being created in computer memory;
storing, in the at least one queue, data received from the second application that is destined for the first application, the received data being stored in association with the identifier;
receiving a command from the computer program;
using the one or more computing devices to output the received data from the at least one queue to the computer program in reply to the command;
wherein the first application and the second application run local protocols, and the received data is passed at least partly between the first application and the second application using an intermediary protocol that corresponds to the non-local protocol; and
wherein the first application is on the first network behind a first firewall, and the second application on the second network is behind a second firewall that is different from the first firewall.
5 Assignments
0 Petitions
Accused Products
Abstract
A system transfers data via a communication session between a client application and a server application, where the client application runs on a first network and the server application runs on a second network. The system includes a proxy having a socket to the client application. The proxy converts data between a local protocol run on the first network to a non-local protocol. An agent creates a socket to the server application. The agent converts data between a local protocol run on the second network and the non-local protocol. A server is in communication with the proxy and the agent. The server contains a message queue dedicated to the communication session. The message queue stores data transmitted during the communication session.
-
Citations
25 Claims
-
1. A method performed by one or more computing devices for transferring data in a communication session between a first application on a first network and a second application on a second network, the method comprising:
-
storing, in a database and in association with the first application, information about a computer program for converting between a non-local protocol and a local protocol associated with the first application to thereby provide data to the first application in the local protocol, the database being stored in computer memory; assigning an identifier to the communication session; creating at least one queue associated with the communication session, the at least one queue being created in computer memory; storing, in the at least one queue, data received from the second application that is destined for the first application, the received data being stored in association with the identifier; receiving a command from the computer program; using the one or more computing devices to output the received data from the at least one queue to the computer program in reply to the command; wherein the first application and the second application run local protocols, and the received data is passed at least partly between the first application and the second application using an intermediary protocol that corresponds to the non-local protocol; and wherein the first application is on the first network behind a first firewall, and the second application on the second network is behind a second firewall that is different from the first firewall. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
-
-
12. One or more non-transitory machine-readable storage media storing instructions that are executable by one or more computing devices to perform operations to transfer data in a communication session between a first application on a first network and a second application on a second network, the operations comprising:
-
storing, in a database and in association with the first application, information about a computer program for converting between a non-local protocol and a local protocol associated with the first application to thereby provide data to the first application in the local protocol; assigning an identifier to the communication session; creating, in computer memory, at least one queue associated with the communication session; storing, in the at least one queue, data received from the second application that is destined for the first application, the received data being stored in association with the identifier; receiving a command from the computer program; output outputting the received data from the at least one queue to the computer program in reply to the command; wherein the first application and the second application run local protocols, and the received data is passed at least partly between the first application and the second application using an intermediary protocol that corresponds to the non-local protocol; and wherein the first application is on the first network behind a first firewall, and the second application on the second network is behind a second firewall that is different from the first firewall. - View Dependent Claims (13, 14, 15, 16, 17, 18, 19, 20, 25)
-
-
21. A system comprising:
-
computer memory storing instructions that are executable by one or more computing devices; and one or more computing devices to execute the instructions to perform operations to transfer data in a communication session between a first application on a first network and a second application on a second network, the operations comprising; storing, in a database and in association with the first application, information about a computer program for converting between a non-local protocol and a local protocol associated with the first application to thereby provide data to the first application in the local protocol, the database being stored in computer memory; assigning an identifier to the communication session; creating at least one queue associated with the communication session, the at least one queue being created in computer memory; storing, in the at least one queue, data received from the second application that is destined for the first application, the received data being stored in association with the identifier; receiving a command from the computer program; outputting the received data from the at least one queue to the computer program in reply to the command; wherein the first application and the second application run local protocols, and the received data is passed at least partly between the first application and the second application using an intermediary protocol that corresponds to the non-local protocol; and wherein the first application is on the first network behind a first firewall, and the second application on the second network is behind a second firewall that is different from the first firewall. - View Dependent Claims (22, 23, 24)
-
Specification