MIGSOCK Migratable TCP Socket in Linux Demonstration of Functionality Karthik Rajan Bryan Kuntz What We Provide � Socket Migration Capability � Linux kernel level implementation � Primarily contained within a kernel module; with minor changes to the network TCP files � System call API using the ioctl() device interface – allows simple application layer programs to be written which achieve the migration 1
Today Demonstrate its use with 2 examples: � Socket handoff � Socket migrating along with the process Socket Handoff Migrate only the socket � connection; not the process � Socket communication taken over by another process on the destination host Typical use in a Clustered � Server environment 2
Steps � Suspend an established connection and capture the socket state. � Transfer this state to a host with a running process. � This process must be running the same application layer, using a socket descriptor that is connected. � In most applications, this will require STEALING a socket that is already in the connected state. � Replace this socket’s state with the transferred state. � Resume the connection with the remote host. Socket Handoff Scenario Source Server n o c t i n e n c o e t c k S o P T C Client Client updates its socket point to the new server Handoff Complete Connection Stolen from other host and repointed to client Destination Server t k e c o P s C T d e s h s t l i h o a b r Other Host s t h e E o t o t 3
Socket Migration � A process with an established TCP socket connection migrates to a new host, the socket migrates as well and the connection is maintained. Requires that an existing process migration mechanism is in � place. Steps Socket migration is initiated at source host 1. TCP message is sent to remote host suspending his 2. side of the connection Socket state is gathered and written to a file 3. State is transferred to the destination host 4. Socket is recreated with new host and port information 5. of the destination host, and connected to remote host TCP message is sent to remote host updating his half 6. of the socket and resuming his side of the connection 4
Socket Migration Scenario Source Socket Communication is 2 1 Suspended Established TCP Socket Process and Socket state Socket Reconnected to remote 3 Remote Entity are captured and host; Process restarted transferred to Destination 4 Destination Questions ? 5
More recommend