Patent US5867650A successfully refreshed from Google Patents.
US5867650A
Expired / Lapsed
US
⏱️ 0.0 years remaining
Out-of-band data transmission
Assignee: Microsoft Technology Licensing LLC
•
Filing: 1996-07-10
•
Granted: 1999-02-02
•
Expires: 2016-07-10
Abstract
Abstract A computer-implemented method uses out-of-band data transmission to reduce overhead associated with data transmission between a client process and a server process in a computer system employing a request-response protocol. Initially, a data transmission connection is established between the client process and the server process using the request-response protocol. Thereafter, data is transmitted between the client process and the server process using the connection, and without using the request-response protocol to transmit the data.
Inventors
- 👤 Lawrence William Osterman
Bibliographic Details
Application Number
—
Jurisdiction
US
Data Source
google_patents
Last Synchronized
2026-10-30 17:03
CPC Classifications
G; G06; G06F; G06F9/00; G06F9/06; G06F9/46; G06F9/54; G06F9/547; H; H04; H04L; H04L67/00; H04L67/01; H04L67/133; H04L9/00; H04L9/40
Claims Analysis
Total Claims: 16
Claim 1
Independent Claim
314 words
In a distributed computing system which includes a plurality of client systems each running one or more client processes, and a plurality of server systems each running one or more server processes, and wherein each client system is connected either directly or logically to one or more said server systems, and wherein a client process communicates with at least one server process using remote procedure call (RPC) protocol, a method of permitting transmission of large amounts of data between the client process and the server process without using the RPC protocol to transmit the data, but while retaining the accuracy and security provided by the RPC protocol, the method comprising the steps of: initiating a client process at a client system and allocating a reception object at the client system which is designated for receiving data that is required to be transmitted by one of the server processes to the initiated client process, said allocation occurring before the client process sends a request for said data to said one server process; sending a secure RPC request from the initiated client process to said one server process for the data, said RPC request identifying and verifying the reception object so as to establish an out-of-band communication procedure for the data which will thereafter permit transmission from the server system to the identified reception object of the client system using a low level protocol instead of the RPC protocol, but thereby still maintaining security of the identified reception object and corresponding out-of-band transmission; said one server process responding by using the RPC protocol to the secure RPC request from the initiated client process by connecting to the identified reception object and confirming to the initiated client process that the connection has been made; and said server process thereafter transmitting the data to the identified reception object of the client system using the established out-of-band communication procedure.
Claim 2
Dependent Claim
314 words
In a distributed computing system which includes a plurality of client systems each running one or more client processes, and a plurality of server systems each running one or more server processes, and wherein each client system is connected either directly or logically to one or more said server systems, and wherein a client process communicates with at least one server process using remote procedure call (RPC) protocol, a method of permitting transmission of large amounts of data between the client process and the server process without using the RPC protocol to transmit the data, but while retaining the accuracy and security provided by the RPC protocol, the method comprising the steps of: initiating a client process at a client system and allocating a reception object at the client system which is designated for receiving data that is required to be transmitted by one of the server processes to the initiated client process, said allocation occurring before the client process sends a request for said data to said one server process; sending a secure RPC request from the initiated client process to said one server process for the data, said RPC request identifying and verifying the reception object so as to establish an out-of-band communication procedure for the data which will thereafter permit transmission from the server system to the identified reception object of the client system using a low level protocol instead of the RPC protocol, but thereby still maintaining security of the identified reception object and corresponding out-of-band transmission; said one server process responding by using the RPC protocol to the secure RPC request from the initiated client process by connecting to the identified reception object and confirming to the initiated client process that the connection has been made; and said server process thereafter transmitting the data to the identified reception object of the client system using the established out-of-band communication procedure.
Claim 3
Dependent Claim
57 words
The method of claim 1 further comprising the step of returning an error message from the server process to the client process if an error occurs during transmission of the data in response to the RPC request, so that transmission delays are avoided during said step of transmitting the data in the event of such an error.
Claim 4
Dependent Claim
71 words
The method of claim 1, wherein the step of transmitting data comprises: having the client process send a read request to the server process; having the server process write data to the reception object in response to the read request; having the client process read data from the reception object; and having the server process respond to the read request once the requested data has been written to the reception object.
Claim 5
Dependent Claim
19 words
The method of claim 3, wherein the read request and the response thereto are made using the request-response protocol.
Claim 6
Dependent Claim
13 words
The method of claim 1, wherein the reception object comprises a TCP/IP socket.
Claim 7
Dependent Claim
14 words
The method of claim 1, wherein the reception object comprises a shared memory region.
Claim 8
Dependent Claim
19 words
The method of claim 1, wherein the client process and the server process are located on a common computer.
Claim 9
Dependent Claim
85 words
The computer software of claim 7, wherein the instructions for causing the computer system to transmit data comprise: instructions for having the client process send a read request to the server process; instructions for having the server process write data to the reception object in response to the read request; instructions for having the client process read data from the reception object; and instructions for having the server process respond to the read request once the requested data has been written to the reception object.
Claim 10
Dependent Claim
20 words
The computer software of claim 8, wherein the read request and the response thereto are made using the request-response protocol.
Claim 11
Dependent Claim
350 words
In a distributed computing system which includes a plurality of client systems each running one or more client processes, and a plurality of server systems each running one or more server processes, and wherein each client system is connected either directly or logically to one or more said server systems, and wherein a client process communicates with at least one server process using remote procedure call (RPC) protocol, a computer program product for implementing, within the distributed system, a method of permitting transmission of large amounts of data between the client process and the server process without using the RPC protocol to transmit the data, but while retaining the accuracy and security provided by the RPC protocol, the computer program product comprising: a computer readable medium for carrying program code means; and wherein the program code means comprises computer readable instructions for implementing a method comprising the steps of: Initiating a client process at a client system and allocating a reception object at the client system which is designated for receiving data that is required to be transmitted by one of the server processes to the initiated client process, said allocation occurring before the client process sends a request for said data to said one server process; sending a secure RPC request from the initiated client process to said one server process for the data, said RPC request identifying and verifying the reception object so as to establish an out-of-band communication procedure for the data which will thereafter permit transmission from the server system to the identified reception object of the client system using a low level protocol instead of the RPC protocol, but thereby still maintaining security of the identified reception object and corresponding out-of-band transmission; said one server process responding by using the RPC protocol to the secure RPC request from the initiated client process by connecting to the identified reception object and confirming to the initiated client process that the connection has been made; and said server process thereafter transmitting the data to the identified reception object of the client system using the established out-of-band communication procedure.
Claim 12
Dependent Claim
350 words
In a distributed computing system which includes a plurality of client systems each running one or more client processes, and a plurality of server systems each running one or more server processes, and wherein each client system is connected either directly or logically to one or more said server systems, and wherein a client process communicates with at least one server process using remote procedure call (RPC) protocol, a computer program product for implementing, within the distributed system, a method of permitting transmission of large amounts of data between the client process and the server process without using the RPC protocol to transmit the data, but while retaining the accuracy and security provided by the RPC protocol, the computer program product comprising: a computer readable medium for carrying program code means; and wherein the program code means comprises computer readable instructions for implementing a method comprising the steps of: Initiating a client process at a client system and allocating a reception object at the client system which is designated for receiving data that is required to be transmitted by one of the server processes to the initiated client process, said allocation occurring before the client process sends a request for said data to said one server process; sending a secure RPC request from the initiated client process to said one server process for the data, said RPC request identifying and verifying the reception object so as to establish an out-of-band communication procedure for the data which will thereafter permit transmission from the server system to the identified reception object of the client system using a low level protocol instead of the RPC protocol, but thereby still maintaining security of the identified reception object and corresponding out-of-band transmission; said one server process responding by using the RPC protocol to the secure RPC request from the initiated client process by connecting to the identified reception object and confirming to the initiated client process that the connection has been made; and said server process thereafter transmitting the data to the identified reception object of the client system using the established out-of-band communication procedure.
Claim 13
Dependent Claim
62 words
The computer program product of claim 10 wherein said method further comprises the step of returning an error message from the server process to the client process if an error occurs during transmission of the data in response to the RPC request, so that transmission delays are avoided during said step of transmitting the data in the event of such an error.
Claim 14
Dependent Claim
13 words
The method of claim 10, wherein the reception object comprises a TCP/IP socket.
Claim 15
Dependent Claim
15 words
The computer software of claim 10, wherein the reception object comprises a shared memory region.
Claim 16
Dependent Claim
20 words
The computer software of claim 10, wherein the client process and the server process are located on a common computer.
References Cited (Backward Citations)
US5247676A
Cited
US5218699A
Cited
US5442749A
Cited
US5283856A
Cited
US5642515A
Cited
US5465351A
Cited
US5307490A
Cited
US5537417A
Cited
US5491800A
Cited
USPTO Annuity & Maintenance Windows
| Annuity Stage | Window Opens | Payment Deadline | Surcharge Period Until | Estimated Fee | Status |
|---|---|---|---|---|---|
| 3.5 Years (Year 4) | 2002-02-01 | 2002-08-03 | 2003-02-02 | $2000.00 | Window Closed / Lapsed |
| 7.5 Years (Year 8) | 2006-02-01 | 2006-08-03 | 2007-02-02 | $3760.00 | Window Closed / Lapsed |
| 11.5 Years (Year 12) | 2010-02-01 | 2010-08-03 | 2011-02-02 | $7700.00 | Window Closed / Lapsed |