Professional Documents
Culture Documents
Stream Control Transmission Protocol (SCTP) on BSD ByJayesh Rane Nitin Kumbhar Kedar Sovani PICT. Guides: Prof. Rajesh B. Ingle, PICT. Mr. Adityashankar Kini, Calsoft Pvt. Ltd.
RivuS Goals
Implementation of the entire SCTP protocol in the network stack of 4.3 FreeBSD. Implementation of Load Sharing extension to SCTP for Performance gains.
What is SCTP?
SCTP is Stream Control Transmission Protocol, a Transport layer protocol. SCTP is reliable data transfer protocol which operates over the Network layer protocol like IP.
Applications TCP IP Physical UDP SCTP
Why FreeBSD?
FreeBSD is Open source, freely available Operating System. FreeBSD is the most well documented, structured and secure OS. FreeBSD has maximum number of Licenses available.
RivuS Applications
SCTP is general purpose Transport layer protocol, so it is used in all applications which run on normal TCP giving more remarkable advantages like Availability, Security, Performance gains. RivuS Load Sharing, is useful for all the Data intensive applications, Real Time Video Audio server applications.
Features of SCTP
Multi-Streaming Multi-Homing Four-way Handshake Association Initialization Chunk Bundling Partial Order Delivery of data Packet Validation Path & Peer Monitoring Shutdown Feature
Multi-Streaming
different streams within one SCTP association. sequence of messages maintained per stream, which reduces unnecessary head-ofline blocking.
Multi-Homing
Multihomed nodes are the nodes which can be reached under several IP addresses. Network level fault tolerance
Association Initialization
Endpoint A Create TCB Generate INIT Start T1-init timer Endpoint Z
Create temp. TCB Create cookie Send INIT ACK Delete temp. TCB
Shutdown Procedure
Endpoint A Endpoint Z Send SHUTDOWN Start shutdown timer Send SHUTDOWN ACK Start shutdown timer
Streaming Context
Request for HTTP
Streaming Objects
Loss/Latency Feedback
Web Client
Load Sharing
Exploiting Multihoming feature of SCTP to gain performance, increase scalability, availability and provide user transparency. Performance figures show that we gain very high performance in data intensive transfers using our concept of multiplexing data on to different paths.
Other approaches
Ciscos Channel Bonding Channel bonding is implemented by binding several Network Interface Cards (NICs) with the same MAC address. The higher layers of the network stack could be oblivious to the fact that the lower level packets were going out (and coming in) on different NICs. Sun Microsystems IP Multipathing
RivuS
Thank You !!!
Jayesh Rane Nitin Kumbhar Kedar Sovani Visit us: http://rivus.sourceforge.net/