Method and system for a front-end modular transmission control protocol (TCP) handoff design in a streams based transmission control protocol/internet protocol (TCP/IP) implementation
First Claim
1. In a communication network, a method of TCP state migration comprising the steps of:
- a) establishing a communication session between a client and a front-end node at a first bottom TCP (BTCP) module located below a first TCP module in a first operating system at said front-end node, said front-end node accessing a plurality of back-end web servers forming a web server cluster that contains content;
b) receiving a HTTP request from said client at said first BTCP module;
c) parsing said HTTP request to determine which back-end web server, a selected back-end web server, in said plurality of back-end web servers can process said HTTP request, said selected back-end web server not said front-end node;
d) extending said communication session to said selected back-end web server by handing-off an initial TCP state of said first BTCP module to said selected back-end web server;
e) sending said HTTP request to said selected back-end web server;
f) switching a bottom IP (BIP) module at said front-end node to a forwarding mode, wherein packets received at said BIP module from said client are forwarded to said selected back-end web server, said BIP module located below an IP module at said front-end node; and
g) terminating said communication session at said front-end node after said HTTP request is fully processed.
3 Assignments
0 Petitions
Accused Products
Abstract
A method and system for handing-off TCP states in a communication network. Specifically, the present invention discloses allows for transferring TCP states between front-end node and a plurality of back-end web servers. The handoff occurs between dynamically loadable modules that wrap around the TCP/IP stack located at a front-end node and a selected back-end web server. A handoff protocol implemented by the loadable modules works within the kernel level of the existing TCP/IP code. As such, no changes to the existing TCP/IP code is necessary. The loadable modules at the front-end are able to select a back-end web server depending on the HTTP request, coordinate handing off TCP states, and forward packets to the back-end web server. Loadable modules at the selected back-end modify response packets going out to reflect the proper TCP state of the front-end node.
-
Citations
29 Claims
-
1. In a communication network, a method of TCP state migration comprising the steps of:
-
a) establishing a communication session between a client and a front-end node at a first bottom TCP (BTCP) module located below a first TCP module in a first operating system at said front-end node, said front-end node accessing a plurality of back-end web servers forming a web server cluster that contains content; b) receiving a HTTP request from said client at said first BTCP module; c) parsing said HTTP request to determine which back-end web server, a selected back-end web server, in said plurality of back-end web servers can process said HTTP request, said selected back-end web server not said front-end node; d) extending said communication session to said selected back-end web server by handing-off an initial TCP state of said first BTCP module to said selected back-end web server; e) sending said HTTP request to said selected back-end web server; f) switching a bottom IP (BIP) module at said front-end node to a forwarding mode, wherein packets received at said BIP module from said client are forwarded to said selected back-end web server, said BIP module located below an IP module at said front-end node; and g) terminating said communication session at said front-end node after said HTTP request is fully processed. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. In a communication network, a method of TCP state migration comprising the steps of:
-
a) receiving a request from a client for establishing a communication session at a first bottom TCP (BTCP) module located at a front-end node, said front-end node accessing a plurality of back-end web servers containing content, wherein said content is partially replicated between each of said plurality of back-end web servers, said communication session established for the transfer of data contained within said content to said client; b) establishing said communication session between said client and said first BTCP module, said first BTCP module located below a first TCP module in a first operating system at said front-end node; c) receiving a HTTP request from said client at said first BTCP module; d) parsing said HTTP request to determine which back-end web server, a selected back-end web server, in said plurality of back-end web servers contains said data in order to process said HTTP request, said selected back-end web server not said front-end node; e) extending said communication session to said selected back-end web server by handing-off an initial TCP state of said first BTCP module to a second BTCP module located at said selected back-end web server, said initial TCP state associated with said communication session between said client and said first BTCP module, said second BTCP module located below a second TCP module in a second operating system at said selected back-end web server; f) sending said HTTP request to said selected back-end web server; g) switching a bottom IP (BIP) module in said front-end node to a forwarding mode, wherein packets, from said client, received at said front-end node are intercepted by said BIP module and forwarded to said selected back-end web server, said BIP module located below an IP module in said front-end node, said BIP module changing destination IP addresses of said packets to said selected back-end web server and h) terminating said communication session after said HTTP request has been fully processed. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18, 19, 20, 21)
-
-
22. A communication network for TCP state migration comprising:
-
a client; a front-end node coupled to said client by said communication network, said front-end node including a front-end bottom TCP (BTCP) module located below a front-end TCP module in a first operating system, and a bottom IP (BIP) module located below an IP module in said first operating system; and a plurality of back-end web servers including a selected back-end web server, said plurality of back-end web servers containing content that is partitioned between each of said plurality of back-end web servers, each of said plurality of back-end web servers coupled to said front-end node through said communication network, each of said plurality of back-end web servers including a back-end bottom TCP module located below a back-end TCP module. - View Dependent Claims (23, 24, 25, 26, 27, 28, 29)
-
Specification