Claims
- 1. A computer networking device for use on a computer network connecting a plurality of clients with a server system, the clients and server system being configured to communicate using Hypertext Transfer Protocol (HTTP), the computer networking device comprising an HTTP multiplexor/demultiplexor configured to receive HTTP requests from a plurality of the clients and to distribute those requests over an individual server TCP connection to a corresponding socket on the server system.
- 2. The computer networking device of claim 1, wherein the multiplexor/demultiplexor is further configured to receive HTTP responses from the server system over the individual server TCP connection and to route those responses to the clients via a plurality of client TCP connections.
- 3. A computer networking method for processing HTTP requests, comprising:
receiving HTTP requests from a plurality of originating clients; and routing the HTTP requests to an individual socket on a server system via an individual server TCP connection.
- 4. The method of claim 3, wherein the requests are routed based on a parameter selected from the group consisting of least-lengthy response time, last-accessed socket, fewest number of unfulfilled requests, type of requested data, and size of requested data.
- 5. The method of claim 3, further comprising:
receiving HTTP responses from the server system via the individual server TCP connection; and selectively routing the HTTP responses to the plurality of originating clients.
- 6. A computer networking method for data transfer between plural originating clients, a server system, and a networking device positioned on a computer network intermediate the clients and the server system, the method comprising:
at the networking device, listening for HTTP requests from the originating clients; receiving HTTP requests from more than one of the originating clients; multiplexing the received requests for delivery to the server system via an individual server TCP connection; and sending the received requests via the individual server TCP connection to an optimal server socket.
- 7. The method of claim 6, wherein receiving HTTP requests from the originating clients occurs via client TCP connections.
- 8. The method of claim 7, wherein the client and server TCP connections are persistent.
- 9. The method of claim 6, wherein sending the received requests to an optimal server socket includes determining an optimal server socket.
- 10. The method of claim 9, wherein determining an optimal server socket includes determining a server socket with a least-lengthy response time.
- 11. The method of claim 9, wherein determining an optimal server socket includes determining a last-accessed server socket.
- 12. The method of claim 9, wherein determining an optimal server socket includes determining a server socket with the fewest number of unfulfilled requests.
- 13. The method of claim 6, further comprising listening for HTTP responses from the optimal server socket.
- 14. The method of claim 13, further comprising receiving HTTP responses from the optimal server socket.
- 15. The method of claim 14, further comprising demultiplexing the received HTTP responses to permit selective routing and transmission of the received responses to corresponding originating clients.
- 16. The method of claim 15, further comprising sending the HTTP responses to the corresponding originating clients.
- 17. A computer networking method for data transfer between plural originating clients, a server system and an intermediate networking device, wherein the originating clients and the server system are configured to communicate over a computer network via the intermediate networking device, the method comprising:
at the intermediate networking device, listening for HTTP requests from the originating clients; receiving HTTP requests from more than one of the originating clients; multiplexing the received requests; determining an optimal server socket; sending the received requests as a multiplexed transmission to the optimal server socket via an individual TCP connection; listening for HTTP responses from the server system; receiving HTTP responses from the server system; demultiplexing the HTTP responses received from the server system to permit selective routing and transmission to corresponding originating clients; and sending the received HTTP responses to the corresponding originating clients.
- 18. A computer networking device for use on a computer network to improve data transfer, the computer networking device being positioned intermediate plural clients and a server system, the clients and server system being configured to communicate via the computer network using HTTP communication protocol, the computer networking device comprising an HTTP multiplexor/demultiplexor configured to receive HTTP requests from the clients and to send the HTTP requests to a socket on the server system via multiplexed transmission, the computer networking device being further configured to receive HTTP responses from the server system and route the received HTTP responses to a corresponding one of the clients.
- 19. The device of claim 18, wherein the computer networking device establishes TCP connections with the clients and with the socket on the server system.
- 20. The device of claim 19, wherein the TCP connections are persistent.
- 21. The device of claim 18, wherein the HTTP multiplexor/demultiplexor is further configured to determine an optimal server socket for receiving the HTTP requests.
- 22. A computer networking system for use with a computer network, the system comprising:
a server system; plural clients configured to connect to the server system via the computer network; and a computer networking device positioned intermediate the server system and the clients on the computer network; wherein the computer networking device is configured to receive HTTP requests from the clients and to distribute those requests via multiplexed transmission over an individual TCP connection to a server socket on the server system.
- 23. The computer networking system of claim 22, wherein the computer networking device is further configured to receive HTTP responses from the server system, demultiplex the responses, and route the demultiplexed responses to corresponding clients via a plurality of client TCP connections.
- 24. A computer networking device for improving data transfer via a computer network, the device being configured to receive HTTP requests from a client, determine an optimal server socket for each HTTP request, and to send each HTTP request to the determined optimal server socket for the request.
- 25. The device of claim 24, wherein the device is further configured to receive an HTTP response from the optimal server socket and to send the HTTP response to the client.
CROSS-REFERENCE TO RELATED APPLICATIONS
[0001] This application is a continuation-in-part of U.S. patent application, Ser. No. 09/882,375, entitled “HTTP Multiplexor/Demultiplexor,” filed on Jun. 15, 2001, which in turn claims priority from U.S. Provisional Patent Application, Ser. No. 60/239,552, entitled “HTTP Multiplexor/Demultiplexor,” filed on Oct. 10, 2000. The disclosures of both these applications are incorporated herein by this reference, in their entirety and for all purposes.
Provisional Applications (1)
|
Number |
Date |
Country |
|
60239552 |
Oct 2000 |
US |
Continuation in Parts (1)
|
Number |
Date |
Country |
Parent |
09882375 |
Jun 2001 |
US |
Child |
09975522 |
Oct 2001 |
US |