Transcript SCTP - UMBC

SCTP
Stream Control Transmission Protocol
Nimish Vartak
CS, UMBC
SCTP - Agenda
•
•
•
•
•
Motivation
Overview of SCTP
Features of SCTP
Current Implementations
Comparison with other protocols
Nimish Vartak
SCTP – Motivation
IP reference model
TCP
Nimish Vartak
UDP
SCTP – Motivation (contd …)
• New applications
– Migration from PSTN to Packet based Internet
– Telephony signaling messages
• Shortcomings of existing protocols
– TCP
• “head-of-line blocking”
• Byte-oriented, not message-oriented
• Multi-homing support not built in
• DoS attack prone
– UDP
• No Reliability
• Absence of congestion control
• Absence of flow control
Nimish Vartak
SCTP – Overview
 “SCTP is a reliable transport protocol operating on top of a
connectionless packet network such as IP. …” – RFC 2960
 Has built-in support for multi-homed hosts
 Is message-based – conserves the message boundaries.
 Classifies messages as:
 sequenced delivery of user messages within multiple streams
 with an option for un-ordered delivery of individual user messages
 Additional security mechanisms
Nimish Vartak
SCTP – Overview (contd …)
Message Format
Nimish Vartak
SCTP – Key Features
•
•
•
•
•
Connection set-up
Multi-streaming
Multi-homing
Selective ACKs in Data sending
Connection shut-down
Nimish Vartak
SCTP – Features (contd …)
Connection setup
(SYN)
INIT
(SYN-ACK)
INIT-ACK
COOKIE-ECHO
COOKIE-ACK
End-Point A
Nimish Vartak
End-Point Z
SCTP – Features (contd …)
Multi-streaming
Nimish Vartak
SCTP – Features (contd …)
Multi-homing
Internet
End-Point A
Nimish Vartak
End-Point Z
SCTP – Features (contd …)
SACK in Data sending
Nimish Vartak
SCTP – Features (contd …)
Connection close
SHUTDOWN
SHUTDOWN-ACK
SHUTDOWN-CMPL
End-Point A
End-Point Z
No Half Closed State
Nimish Vartak
SCTP – Special Features
• Heartbeat keep-alive mechanism
• Selective acknowledgments
• Security perspective
– Connection based
• DoS attack prevention
– Data based
• IPSec – under SCTP
• TLS – over SCTP
Nimish Vartak
SCTP – Implementations
Implementation
– Kernel Level - Highly scalable
• Platforms: Linux, Solaris, FreeBSD, Unix,
• Several Implementations in progress in the
• The Linux Kernel SCTP
– User Level - Easy maintenance
• Randall Stewart's reference implementation
• http://www.sctp.org/
• Ported to many platforms - Linux, Solaris,
FreeBSD, AIX, Tru64(Compaq), Windows, etc.
Nimish Vartak
SCTP – Comparison
• Comparison of features with TCP and UDP
Nimish Vartak
* Courtesy Addison Wesley
SCTP – Summary
Well suited for Multimedia
Like TCP
• Provides connection establishment
• Ensures Reliability
• Provisions for ordered and un-ordered data
• Provides Congestion Control
In addition to TCP features
• Provides multi-homing
• Provides multi-streaming
• Has security features
Nimish Vartak
SCTP – References
• Computer.org
(http://www.computer.org/internet/v5n6/w6wire.htm)
• IETF RFC 2960
(http://www.ietf.org/rfc/rfc2960.txt)
• Stream Control Transmission Protocol (SCTP): A Reference Guide,
R. Stewart and Q. Xie, Addison Wesley
• IBM.com
(http://oss.software.ibm.com/linux/presentations/lwce2002/Chats/SCTP/SCTPLWE.pdf)
Nimish Vartak
SCTP
Thank You.
Nimish Vartak