Scalable server architecture based on asymmetric 3-way TCP
First Claim
1. A server system for processing a service request from a client in a network processing environment, comprising:
- a front-end server for receiving a service request from the client and for generating a data link frame containing a service command necessary to perform the service request; and
at least one back-end server connected to the front-end server through a data link, without establishing a transmission control protocol/Internet protocol (TCP/IP) connection, for executing the service command in the data link frame received from the front-end server through the data link and for sending a result of the service command to the client bypassing the front-end server in a pseudo packet that would be recognized by the client as a packet originating from the front-end server.
6 Assignments
0 Petitions
Accused Products
Abstract
A server architecture based on asymmetric 3-way TCP (ATCP) is disclosed that can distribute the work among multiple processors. In particular, the server system has a front-end server receiving a service request from a client. The server system also has a back-end server that receives a command from the front-end server. The back-end server sends the result back directly to the client in a pseudo packet that looks like a packet sent from the front-end server. The pseudo packet has the IP address and the port number of the front-end server. A scalable system is achieved because the bottleneck through the front-end server is avoided.
-
Citations
19 Claims
-
1. A server system for processing a service request from a client in a network processing environment, comprising:
-
a front-end server for receiving a service request from the client and for generating a data link frame containing a service command necessary to perform the service request; and
at least one back-end server connected to the front-end server through a data link, without establishing a transmission control protocol/Internet protocol (TCP/IP) connection, for executing the service command in the data link frame received from the front-end server through the data link and for sending a result of the service command to the client bypassing the front-end server in a pseudo packet that would be recognized by the client as a packet originating from the front-end server. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. An asymmetric 3-way TCP system for processing a service request from a client in a network processing environment, comprising:
-
a client issuing a service request;
a front-end server for receiving the service request from the client and for generating a data link frame containing a service command necessary to perform the service request; and
at least one back-end server connected to the front-end server, without establishing a TCP/IP connection, through a data link for receiving the service command contained in the data link frame from the front-end server through the data link and for sending a result of the service command to the client bypassing the front-end server in a packet containing a TCP header and an IP header that would be recognized by the client as a TCP packet originating from the front-end server, without modifying a port number included in the packet, wherein the port number is expected by the client.
-
-
12. An asymmetric 3-way UDP system for processing a service request from a client in a network processing environment, comprising:
-
a client issuing a service request;
a front-end server for receiving the service request from the client and for generating a data link frame containing a service command necessary to perform the service request; and
at least one back-end server connected to the front-end server through a data link, without establishing a TCP/IP connection, for receiving the service command contained in the data link frame from the front-end server through the data link frame and for sending a result of the service command to the client bypassing the front-end server in a packet containing a UDP header and an IP header that would be recognized by the client as a UDP packet originating from the front-end server.
-
-
13. A method for processing a service request from a client in a network processing environment, comprising the steps of:
-
receiving a service request from the client by a front-end server;
generating a data link frame containing a command necessary to perform the service request to a back-end server connected to the front-end server, without establishing a TCP/IP connection, through a data link;
executing the command contained in the data link frame received through the data link by the back-end server;
assembling, by the back-end server, a pseudo packet bearing a result of the command that would look like a packet originating from the front-end server; and
sending the pseudo packet by the back-end server to the client bypassing the front-end server. - View Dependent Claims (14, 15)
-
-
16. A computer-readable medium containing a computer program which can be run in a computer to perform the steps of:
-
receiving a service request from a client;
generating, by the front-end server, a command necessary to perform the service request and sending the command to a back-end server connected to the front-end server, without establishing a TCP/IP connection, through a data link;
executing the command by the back-end server;
assembling a pseudo packet bearing a result of the command that would look like a packet originating from the front-end server by the back-end server; and
sending the pseudo packet by the back-end server to the client bypassing the front-end server. - View Dependent Claims (17, 18, 19)
-
Specification