Next: Experimental results
Up: Implementation details
Previous: Operations of the Web
The TCP Handoff mechanism implemented in our Web cluster requires some
modifications to the TCP/IP stack protocol. Figure 4 shows
the modified finite state machine. For clarity reasons, this figure
does not include the SYN_SENT state that is not modified.
Figure 4:
Modified TCP finite state machine.
|
Let us first describe the modifications concerning the Web switch.
The scheme in Figure 4 applies to sockets which
are subject to TCP handoff. The other sockets are handled as usually.
With respect to the original TCP finite state machine, we have added
two new states: WAITHEADER and FORWARDING.
The WAITHEADER state is equivalent
to ESTABLISHED, with the following differences.
In the WAITHEADER state, the content of the client request and
not only the TCP header field is analyzed.
The WAITHEADER state is entered at the end of the three-way
handshake, if handoff is enabled for the specified socket;
it is left not only when the socket is closed, but
also when TCP handoff is carried out. In the last case, the TCP connection
is moved to the new state FORWARDING.
The FORWARDING state is introduced to inform the Web switch that
TCP packets are being forwarded to another server.
On the Web server operating system, the only difference with respect to
the original TCP protocol occurs at the establishment of a new
connection. Indeed, a new TCP connection may also be created upon
the receipt of a THOP_CREATE message from the Web switch. In this
case, there is a direct transition from the LISTEN state to the
ESTABLISHED state, thus bypassing the three-way handshake procedure which
has already carried out between the client and the Web switch.
The socket structures on the Web servers contain a further information,
namely the IP address of the Web switch. This solution is necessary to
implement the communications between the Web switch and the server.
Next: Experimental results
Up: Implementation details
Previous: Operations of the Web
Mauro Andreolini
2003-03-13