New Topic Integrated Into Online/Onsite SIP/OCS Courses
The animated tutorial can be found here:
tcp-sctp.swf
For SIP-Session Initiation Protocol, the advantages of SCTP are: - Increased congestion control via larger congestion window - Multi-streaming - Multi-homing
In the animated tutorial there is a chart with many of the other advantages and differences between TCP and UDP. SCTP-Stream Control Transmission Protocol was created to overcome TCP-Transmission Control Protocol limitations with respect of TCP "sawtoothing" (send-wait-send) transmission on voice signals. SCTP also adds multi-homing where this is more than one path between hosts for resilience (reliability).
In SCTP data content is organized into "chunks" overcoming TCP limitations of a single byte stream, HOL-Head-Of-Line problems (explained next) and DOS-Denial-Of-Service attacks. Shown in the animated tutorial, HOL-Head-Of-Line blocking is caused when there are many discrete (separate) transactions and the during the connection setup subsequent (following) setup messages are held until the lost message is retransmitted (re-sent - Fast Transmit) and understood (received and accepted). That is, all messages are not passed to Upper Layer Applications until the previous messages sent prior (ahead-of-the-line) are accepted. This may not be a problem in many applications but can be in telephony and streaming.
SCTP adds other features such as multi-streaming which supports independent transport and delivery of multiple streams between two communications host servers (shown here). In addition, SCTP adds multi-homing (via different AS-Autonomous Systems) where there are multiple paths between hosts for resilience (reliability). Shown here are the four types of pathways that are supported by SCTP and the failover/resiliency that occurs if there is a loss of connection. Multihoming allows each of the two endpoints during an SCTP connection to setup and specify multiple IP address endpoints. With multiple interfaces, this allows data to be automatically redirected to alternate IP addresses when failures occur. A feature not found in TCP is that redirection can occur without knowledge of or involvement with the ULP-Upper Layer Protocol application. TCP connections are also bound to a single interface.
SIGTRAN (Signaling Transport) is IETF's working group related to the transmission of packet-based signaling over IP networks. SCTP is critical to bridging SS7 to SIP protocol. In other words how do you transport ISUP-ISDN User Part signaling through MTUA-MTP(Message Transport Part) level 3 User Adaption Layer. One of the purposes of this tutorial is to show how SCTP provides support for SS7-Signaling System 7. MTPUA-MTP level 3 User Adaptation Layer as show here along with M2UA-MTP level 2 and M2PA-MTP level 2 Peer-to-peer Adaptation Layer are transported via SCTP-IP.
While it is way beyond the scope of this presentation to explore all the security ramifications of SCTP because of its multihoming and multistreaming features offer additional layers of protection from against blind DOS-Denial Of Service attacks such as flooding, masquerading, and improper port access. In addition, the SIGTRAN specification in conjunction with SCTP requires the use of security schemes IP Sec-IP Security, TLS-Transport Layer Security and IKE- IKE-Internet Key Exchange or SKIP-Simple Key exchange. IP Sec is a Layer 3 Network service. In comparison, SSL-Secure Sockets Layer is a Layer 7 Application service which uses digital certificate to provide a means of secure authentication/authorization. In IP Sec, there are two types. In IP Sec TRANSPORT MODE, only the user data is encrypted.
In IP Sec TUNNEL MODE, both the user data and the IP Packet are encrypted.
IKE-Internet Key Exchange or SKIP-Simple Key exchange IP support many different encryption standards such as Diffie-Hellman key exchange, public key cryptography, DES-Data Encryption Standard and 3DES-triple DES, digital certificates and others. Please refer to www.ietf.org for more.
Shown in the animated tutorial - TCP-Transmission Control Protocol relies on a sliding-window (slide the window to the receiver with data and then wait for the receiver to slide the window back ACKnowledging receipt of data) approach for congestion control. TCP connections provide end-to-end flow control to limit the number of packets in the network. The flow control is enforced by two windows - Sender-CWMD-Congestion WiNDow and receiver RCVWND-ReCeiVer WiNDow enforced by the Receiver as measure of its buffering capacity. The CWND is maintained by the Sender as means and measure of the capacity of the network. The Sender sends data packets one window at a time, and cannot send more than the minimum of RCVWND and CWND into the network.
SS-Slow Start is a control method of managing TCP error and congestion control. The CWND-Congestion WiNDow is doubled every round trip time during the Slow Start phase. The Slow Start phase continues until CWND reaches SSTHRESH-Slow Start THRESHold (generally set to 64K bytes) and then the congestion avoidance phase begins. During the congestion avoidance phase, the Sender increases it's CWND (by 1/CWND) every time a segment is acknowledged. The Slow Start and the congestion avoidance phases correspond to an exponential increase and a linear increase of the congestion window every round trip time respectively.
In the event of a failure, RTO-Retransmission TimeOut also called Fast Retransmit provides if the TCP Receiver receives a packet out-of-order to respond to the Sender with a duplicate ACKnowledgement. In addition, Fast Recovery allows the Sender to increase the CWND to allow more packets to be sent. Fast Retransmit is designed to improve recovery by avoiding SS-Slow Start, keep "pipes" (bandwidth) in maximum use and recover from packet losse(s) as fast as possible.
Fast Recovery (deflate/reduce CWND) is also a means of SACK-Selectively transmit ACKnowledgement based on Receiver response. Inflate the CWND-Congestion WiNDow to allow more packets to enter the network during Fast Retransmit process.
Called Extended Entry, the TCP-Transmission Control Protocol or UDP-User Datagram Protocol Port number is added to the router translation table. Extended Entry addressing could allow up to 4,000 different hosts to share the same IP addresses by using different TCP-UDP Port numbers.
Overloading (over-writing) also known as PAT-Port Address Translation is the process of re-using the same IP address by internal users to access different internet hosts using Extended Entries. Distant hosts think they are communicating with a single IP address. TCP Load Distribution translates certain global (legal) into valid internal IP addresses destined for more than one node.
This presentation is also included in TMC University special course on Microsoft OCS-Office Communications Server at ITexpo.com. For more go here: http://www.tmcnet.com/voip/conference/west-08/tmc-university-microsoft-ocs.htm
This presentation is also included in online/onsite courses SIP 2.0c and for OCS-101 Office Communications Server per person (volume and site license discounts available). Discounts are also available to members of the SIP Forum and MS Partners. For customizing, special discounts, website animations, technical/sales training, technical writing and other services, go to http://www.techtionary.com or please call Tom Cross at 303-594-1694 or cross@gocross.com.



Technorati
Del.icio.us
Slashdot
Digg
Leave comment to Increased SIP Performance with Stream Control Transmission Protocol article