Design and implementation of TCP and SCTP connection migrationfunction for an IP high availability framework

University essay from Luleå tekniska universitet/Systemteknik/Datorkommunikation

Author: Joacim Häggmark; [2007]

Keywords: TCP; SCTP; Datorkommunikation;

Abstract: This thesis explains how to create a software for IP fail-over which alsosupports migration of TCP and SCTP states.Initially existing solutions for TCP-state transfer were studied to see ifthey could be built on but after the investigation was done we decided todesign and develop an entirely new implementation. A basic design wascreated and TCP together with SCTP was studied to find whichstate-information that needed to be shared between the nodes and also whichheader-data that was needed to be changed after a connection migration.The final design is a daemon which runs on two or more server nodes. Thedaemon listens to two separate IP-numbers, one service-ip and one for beingable to hand-over connections to the other node when doing a switch-over. OpenAIS is used to provide heartbeat monitoring and sharing ofstate-information. An application API was also created so aservice-application can get information if a new socket has been moved, if aswitch-over is going to happen and to acknowledge a move and sendstate-specific data to the standby node. When a switch-over is made, all newconnections will directly be passed on to the standby node and then allservice-applications are notified. When the service-applications are ready totransfer the state, they send an acknowledgement back and then all packetsfor that connection will be redirected to the new server-node. When allconnections have been moved the service-ip is moved to the standby node.The main difference between this work and previous published solutions isthat it supports SCTP-state transfers and that it's written in user-space andtherefore portable between different operating systems.

  CLICK HERE TO DOWNLOAD THE WHOLE ESSAY. (in PDF format)