SlideShare a Scribd company logo
INTRODUCTION TO SCTP AND
IT’S BENEFITS OVER TCP &
UDP
Author : Vijay Sharma
6/29/2014
1
ABBREVIATIONS
 SCTP- Stream Control Transmission Protocol
 UDP – User Datagram Protocol
 TCP – Transmission Control Protocol
 RFC –Request for Comments
 IETF – Internet Engineering Task Force
 SACK- Selective Acknowledgement
6/29/2014
2
INTRODUCTION
 SCTP (Stream Control Transmission Protocol)
was introduced for transporting PSTN signaling
messages over IP network. But due to its
amazing features it became an important part of
next generation network technologies i.e. IMS
and LTE.
6/29/2014
3
SCTP PACKET STRUCTURE FORMAT
Bits 0-7 8-15 16-23 24-31
0 Source Port Destination Port
32 Verification Tag
64 Checksum
96 Chunk 1
type
Chunk 1
flags
Chunk 1 length
128 Chunk 1 data
… …
… Chunk N type Chunk N flags Chunk N length
… Chunk 1 data
6/29/2014
4
SCTP PACKET STRUCTURE FORMAT
 Source Port-This16 bits (unsigned integer) sender’s port number.
Port no. 0 is not used.
 Destination Port- This is also16 bits (unsigned integer)
receiver’s port number. It is used by receiving host to de-multiplex to
sctp packet at receiving endpoint. Here also port no. 0 is not used.
 Verification Tag- This is 32 bits (unsigned integer) used to
validate sender of the SCTP packet. For more details about this refer
RFC 4960 (page no. 16.
 Checksum- This is32 bits (unsigned integer).As name indicates
this field contains checksum of sctp packets.
SCTP uses CRC32c algorithm for calculating checksum.
6/29/2014
5
SCTP PACKET STRUCTURE FORMAT
 Chunk Type-This field indicates the type of information
contained in chunk data field.It can take values from 0 to 254
and 255 is reserved for future use.Few examples are :
6/29/2014
6
ID Chunk Type
0 Payload Data (DATA)
1 Initiation (INIT)
3 Selective Acknowledgement (SACK)
14 SHUTDOWN COMPLETE
255 Reserved
Chunk Type is coded in following manner.
High order 2 bits say what to do if type in chunk is undefined
00 = stop processing packet and discard packet
(don’t process other chunks)
01 = same as above, report unrecognized type
SCTP PACKET STRUCTURE FORMAT
 Chunk Flag-This is 8 bit field. Its value depends on
chunk type. Unless otherwise specified its value is
considered 0 at transmitter and ignored at receiver.
 Chunk Length :This is also 16 bit field. Represents the
size of chunks in bytes which includes Chunk Type, Chunk
Flags, Chunk Length, and Chunk data fields.
 Chunk Data Field : This field contains actual information
to be transmitted in chunks.
6/29/2014
7
DATA TRANSMISSION STEPS
6/29/2014
8
Step1.
•Initiation
Step 2
•Data Transmission
Step 3
•Shut Down
Heart Beat
•Heart Beat
INITIATION
6/29/2014
9
 As the figure shows SCTP uses 4 way handshake to initiate a transmission
session.
 Although it can start sending information in 3rd step
 The SCTP client initiates communications with an INIT packet
 The server acknowledges with the INIT-ACK packet and a cookie (a unique
identifier that identifies the connection)
 The client then sends the server’s cookie back to the server. Now the client
can also send additional information after the COOKIE-ECHO.
 The server then acknowledges the COOKIE-ECHO with a COOKIE-ACK.
DATA TRANSMISSION
 After the COOKIE ACK in above step, The client Send Data
chunks to server.
 The server then sends SACK that is selective
Acknowledgement. Meaning of SACK will be discussed in
further slides.
6/29/2014
10
SHUT DOWN
 As we see shut down process is 3 way handshake
in SCTP.
 First the client sends shutdown request to server.
 Server responds with SHUT DOWN ACK and
finally client cease the connection after sending
SHUT DOWN Complete message.
6/29/2014
11
HEART BEAT
6/29/2014
12
IN NEXT FEW SLIDES WE SHALL DESCRIBE
BENEFITS OF SCTP OVER TCP AND UDP
6/29/2014
13
COMPARISON
6/29/2014
14
Services SCTP TCP UDP
Multi-homing YES NO NO
Multi-streaming YES NO NO
Ordered data delivery YES YES NO
Allow half-closed connections NO YES NA
Application PDU bundling YES YES NO
Application PDU fragmentation YES YES NO
Congestion control YES YES NO
Partial-reliable data transfer OPTIONAL NO NO
Preserve message boundaries YES NO YES
COMPARISON
Service SCTP TCP UDP
Protect against SYN flooding
attacks
YES NO NA
Selective acknowledgements YES OPTION
AL
NO
Unordered data delivery YES NO YES
Partial-reliable data transfer OPTIONAL NO NO
6/29/2014
15
MULTI-HOMING
 In SCTP client and server are connected through
one primary and other secondary interfaces.
 The RTT ( round trip time) is checked for all
interfaces.
 When one interface goes down the other handles
the traffic.
6/29/2014
16
MULTI STREAMING
6/29/2014
17
 TCP allow single data stream per connection but in
SCTP multiple data streams can be transmitted per
connection
 This reduced overhead which was required for web
browsing.
 Reduced Latency
PRESERVING MESSAGE BOUNDARIES
 If a client sends a 150 byte and then a 100 byte
message, the information is presented to the
server with preserved message boundaries. With
SCTP and UDP the messages are sent as 150
bytes and 100 bytes. But in TCP the messages
may be sent/received as single 250 (150+100)
bytes
6/29/2014
18
SCTP PROTECTS AGAINST SYN FLOODING
 In TCP client initiates communications with SYN.Server
respond with SYN-ACK.Then client acknowledges with ACK.
 SYN Flood occurs when multiple clients send SYN packets to
server, which causes target to get overload.
 But in SCTP this issue is resolved by providing 4 way
handshake communication
6/29/2014
19
SCTP PROTECTS AGAINST SYN FLOODING
6/29/2014
20
SELECTIVE ACKNOWLEDGEMENT (SACK)
 In standard TCP, every message, or packet of information
must be accounted for, resent as necessary, and processed
in the order they were sent.
 SCTP has the ability to selectively acknowledge receipt of
missing, disordered, or duplicated messages.
 Due to the nature of telecommunications most applications
would end up discarding any unsynchronized messages.
 Therefore, the need to send and receive the information is
forgone. This would mean that a portion of a word, a
portion of a video, or a piece of the whiteboard refresh
would be skipped over.
 The applications and users may notice a slight skip in the
voice, video, or refresh.
 This is referred to as jitter within the telecommunications
world and a small amount of jitter is often preferred to
having the packet resent and reprocessed which would
double the amount of jitter,
6/29/2014
21
UNORDERED DELIVERY
 In the above diagram , if we were using TCP, once
Message C was received all processing would stop,
and wait for Message B, it would be processed and
then Message C would be processed.
 SCTP allows for unordered data delivery and since it
has multiple streams, only the one affected is
temporarily blocked. As in the diagram , SCTP would
process the messages in the order they arrived, not
waiting for them to be numerically ordered.
6/29/2014
22
REFERENCES
 RFC 4960 Stream Control Transmission Protocol
(Obsoletes: 2960, 3309)
6/29/2014
23
THANKS FOR BEING NICE READER
6/29/2014
24

More Related Content

What's hot (20)

Icmp V4 And Icmp V6
Icmp V4 And Icmp V6Icmp V4 And Icmp V6
Icmp V4 And Icmp V6
 
(Icmp) internet control message protocol version 4
(Icmp) internet control message protocol version 4(Icmp) internet control message protocol version 4
(Icmp) internet control message protocol version 4
 
TCP & UDP ( Transmission Control Protocol and User Datagram Protocol)
TCP & UDP ( Transmission Control Protocol and User Datagram Protocol)TCP & UDP ( Transmission Control Protocol and User Datagram Protocol)
TCP & UDP ( Transmission Control Protocol and User Datagram Protocol)
 
Tcp and udp
Tcp and udpTcp and udp
Tcp and udp
 
Congestion control in TCP
Congestion control in TCPCongestion control in TCP
Congestion control in TCP
 
Sigtran protocol
Sigtran protocolSigtran protocol
Sigtran protocol
 
Wireshark udp solution
Wireshark udp solutionWireshark udp solution
Wireshark udp solution
 
ICMPV4
ICMPV4ICMPV4
ICMPV4
 
TCP congestion control
TCP congestion controlTCP congestion control
TCP congestion control
 
ICMP
ICMP ICMP
ICMP
 
GRE (generic routing encapsulation)
GRE (generic routing encapsulation)GRE (generic routing encapsulation)
GRE (generic routing encapsulation)
 
ICMP
ICMPICMP
ICMP
 
Logical addressing
Logical  addressingLogical  addressing
Logical addressing
 
Dcn unit 2 ppt
Dcn unit 2 pptDcn unit 2 ppt
Dcn unit 2 ppt
 
Icmp
IcmpIcmp
Icmp
 
Ch21
Ch21Ch21
Ch21
 
Routing
RoutingRouting
Routing
 
GO BACK N PROTOCOL
GO BACK N PROTOCOLGO BACK N PROTOCOL
GO BACK N PROTOCOL
 
Arp and rarp
Arp and rarpArp and rarp
Arp and rarp
 
13. eigrp and ospf
13. eigrp and ospf13. eigrp and ospf
13. eigrp and ospf
 

Viewers also liked

Overview of SCTP (Stream Control Transmission Protocol)
Overview of SCTP (Stream Control Transmission Protocol)Overview of SCTP (Stream Control Transmission Protocol)
Overview of SCTP (Stream Control Transmission Protocol)Peter R. Egli
 
Using SS7 & SIGTRAN to Solve Today's Network Challenges
Using SS7 & SIGTRAN to Solve Today's Network ChallengesUsing SS7 & SIGTRAN to Solve Today's Network Challenges
Using SS7 & SIGTRAN to Solve Today's Network ChallengesContinuous Computing
 
SIGTRAN - An Introduction
SIGTRAN - An IntroductionSIGTRAN - An Introduction
SIGTRAN - An IntroductionTareque Hossain
 

Viewers also liked (6)

Overview of SCTP (Stream Control Transmission Protocol)
Overview of SCTP (Stream Control Transmission Protocol)Overview of SCTP (Stream Control Transmission Protocol)
Overview of SCTP (Stream Control Transmission Protocol)
 
SCTP Overview
SCTP OverviewSCTP Overview
SCTP Overview
 
Sctp tutorial
Sctp tutorialSctp tutorial
Sctp tutorial
 
Using SS7 & SIGTRAN to Solve Today's Network Challenges
Using SS7 & SIGTRAN to Solve Today's Network ChallengesUsing SS7 & SIGTRAN to Solve Today's Network Challenges
Using SS7 & SIGTRAN to Solve Today's Network Challenges
 
SIGTRAN - An Introduction
SIGTRAN - An IntroductionSIGTRAN - An Introduction
SIGTRAN - An Introduction
 
sigtran
sigtransigtran
sigtran
 

Similar to Introduction to SCTP and it's benefits over TCP and UDP

Networking essentials lect3
Networking essentials lect3Networking essentials lect3
Networking essentials lect3Roman Brovko
 
Transport Layer in Computer Networks (TCP / UDP / SCTP)
Transport Layer in Computer Networks (TCP / UDP / SCTP)Transport Layer in Computer Networks (TCP / UDP / SCTP)
Transport Layer in Computer Networks (TCP / UDP / SCTP)Hamidreza Bolhasani
 
Alternative Transport Protocols
Alternative Transport ProtocolsAlternative Transport Protocols
Alternative Transport ProtocolsPeter R. Egli
 
TransportLayerServices.ppt
TransportLayerServices.pptTransportLayerServices.ppt
TransportLayerServices.pptSwatiRani13
 
transport layer protocols
transport layer protocolstransport layer protocols
transport layer protocolsBE Smârt
 
DCN 5th ed. slides ch24 Transport-Layer Protocols.pdf
DCN 5th ed. slides ch24 Transport-Layer Protocols.pdfDCN 5th ed. slides ch24 Transport-Layer Protocols.pdf
DCN 5th ed. slides ch24 Transport-Layer Protocols.pdfBilal Munir Mughal
 
Stcn presentation
Stcn presentationStcn presentation
Stcn presentationSutanu Paul
 
IRJET- Modeling a New Startup Algorithm for TCP New Reno
IRJET- Modeling a New Startup Algorithm for TCP New RenoIRJET- Modeling a New Startup Algorithm for TCP New Reno
IRJET- Modeling a New Startup Algorithm for TCP New RenoIRJET Journal
 
Unit 4 tansport layer in the internat
Unit 4 tansport layer in the internatUnit 4 tansport layer in the internat
Unit 4 tansport layer in the internatKritika Purohit
 
Pre-Con Education: Recognizing Your Network's Key Performance Indicators Th...
Pre-Con Education: Recognizing Your Network's Key Performance Indicators Th...Pre-Con Education: Recognizing Your Network's Key Performance Indicators Th...
Pre-Con Education: Recognizing Your Network's Key Performance Indicators Th...CA Technologies
 
UDP and TCP header.ppt
UDP and TCP header.pptUDP and TCP header.ppt
UDP and TCP header.pptnehayarrapothu
 

Similar to Introduction to SCTP and it's benefits over TCP and UDP (20)

Assignment2
Assignment2Assignment2
Assignment2
 
Networking essentials lect3
Networking essentials lect3Networking essentials lect3
Networking essentials lect3
 
Transport Layer in Computer Networks (TCP / UDP / SCTP)
Transport Layer in Computer Networks (TCP / UDP / SCTP)Transport Layer in Computer Networks (TCP / UDP / SCTP)
Transport Layer in Computer Networks (TCP / UDP / SCTP)
 
Alternative Transport Protocols
Alternative Transport ProtocolsAlternative Transport Protocols
Alternative Transport Protocols
 
User Datagram Protocol
User Datagram ProtocolUser Datagram Protocol
User Datagram Protocol
 
Chap-13.ppt
Chap-13.pptChap-13.ppt
Chap-13.ppt
 
TransportLayerServices.ppt
TransportLayerServices.pptTransportLayerServices.ppt
TransportLayerServices.ppt
 
Unit 5.Transport Layer.pptx
Unit 5.Transport Layer.pptxUnit 5.Transport Layer.pptx
Unit 5.Transport Layer.pptx
 
transport layer protocols
transport layer protocolstransport layer protocols
transport layer protocols
 
DCN 5th ed. slides ch24 Transport-Layer Protocols.pdf
DCN 5th ed. slides ch24 Transport-Layer Protocols.pdfDCN 5th ed. slides ch24 Transport-Layer Protocols.pdf
DCN 5th ed. slides ch24 Transport-Layer Protocols.pdf
 
Stcn presentation
Stcn presentationStcn presentation
Stcn presentation
 
unit 3 ns.ppt
unit 3 ns.pptunit 3 ns.ppt
unit 3 ns.ppt
 
Mcseminar
McseminarMcseminar
Mcseminar
 
IRJET- Modeling a New Startup Algorithm for TCP New Reno
IRJET- Modeling a New Startup Algorithm for TCP New RenoIRJET- Modeling a New Startup Algorithm for TCP New Reno
IRJET- Modeling a New Startup Algorithm for TCP New Reno
 
Unit 4 tansport layer in the internat
Unit 4 tansport layer in the internatUnit 4 tansport layer in the internat
Unit 4 tansport layer in the internat
 
07 coms 525 tcpip - udp
07    coms 525 tcpip - udp07    coms 525 tcpip - udp
07 coms 525 tcpip - udp
 
Tcp
TcpTcp
Tcp
 
Pre-Con Education: Recognizing Your Network's Key Performance Indicators Th...
Pre-Con Education: Recognizing Your Network's Key Performance Indicators Th...Pre-Con Education: Recognizing Your Network's Key Performance Indicators Th...
Pre-Con Education: Recognizing Your Network's Key Performance Indicators Th...
 
TCP Congestion Control
TCP Congestion ControlTCP Congestion Control
TCP Congestion Control
 
UDP and TCP header.ppt
UDP and TCP header.pptUDP and TCP header.ppt
UDP and TCP header.ppt
 

Recently uploaded

ODC, Data Fabric and Architecture User Group
ODC, Data Fabric and Architecture User GroupODC, Data Fabric and Architecture User Group
ODC, Data Fabric and Architecture User GroupCatarinaPereira64715
 
UiPath Test Automation using UiPath Test Suite series, part 1
UiPath Test Automation using UiPath Test Suite series, part 1UiPath Test Automation using UiPath Test Suite series, part 1
UiPath Test Automation using UiPath Test Suite series, part 1DianaGray10
 
IESVE for Early Stage Design and Planning
IESVE for Early Stage Design and PlanningIESVE for Early Stage Design and Planning
IESVE for Early Stage Design and PlanningIES VE
 
Speed Wins: From Kafka to APIs in Minutes
Speed Wins: From Kafka to APIs in MinutesSpeed Wins: From Kafka to APIs in Minutes
Speed Wins: From Kafka to APIs in Minutesconfluent
 
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...Product School
 
10 Differences between Sales Cloud and CPQ, Blanka Doktorová
10 Differences between Sales Cloud and CPQ, Blanka Doktorová10 Differences between Sales Cloud and CPQ, Blanka Doktorová
10 Differences between Sales Cloud and CPQ, Blanka DoktorováCzechDreamin
 
Powerful Start- the Key to Project Success, Barbara Laskowska
Powerful Start- the Key to Project Success, Barbara LaskowskaPowerful Start- the Key to Project Success, Barbara Laskowska
Powerful Start- the Key to Project Success, Barbara LaskowskaCzechDreamin
 
Optimizing NoSQL Performance Through Observability
Optimizing NoSQL Performance Through ObservabilityOptimizing NoSQL Performance Through Observability
Optimizing NoSQL Performance Through ObservabilityScyllaDB
 
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...Product School
 
Unpacking Value Delivery - Agile Oxford Meetup - May 2024.pptx
Unpacking Value Delivery - Agile Oxford Meetup - May 2024.pptxUnpacking Value Delivery - Agile Oxford Meetup - May 2024.pptx
Unpacking Value Delivery - Agile Oxford Meetup - May 2024.pptxDavid Michel
 
SOQL 201 for Admins & Developers: Slice & Dice Your Org’s Data With Aggregate...
SOQL 201 for Admins & Developers: Slice & Dice Your Org’s Data With Aggregate...SOQL 201 for Admins & Developers: Slice & Dice Your Org’s Data With Aggregate...
SOQL 201 for Admins & Developers: Slice & Dice Your Org’s Data With Aggregate...CzechDreamin
 
JMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and GrafanaJMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and GrafanaRTTS
 
Essentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with ParametersEssentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with ParametersSafe Software
 
Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo DiehlFuture Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo DiehlPeter Udo Diehl
 
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Tobias Schneck
 
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMsTo Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMsPaul Groth
 
Salesforce Adoption – Metrics, Methods, and Motivation, Antone Kom
Salesforce Adoption – Metrics, Methods, and Motivation, Antone KomSalesforce Adoption – Metrics, Methods, and Motivation, Antone Kom
Salesforce Adoption – Metrics, Methods, and Motivation, Antone KomCzechDreamin
 
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...Product School
 
Exploring UiPath Orchestrator API: updates and limits in 2024 🚀
Exploring UiPath Orchestrator API: updates and limits in 2024 🚀Exploring UiPath Orchestrator API: updates and limits in 2024 🚀
Exploring UiPath Orchestrator API: updates and limits in 2024 🚀DianaGray10
 
When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...Elena Simperl
 

Recently uploaded (20)

ODC, Data Fabric and Architecture User Group
ODC, Data Fabric and Architecture User GroupODC, Data Fabric and Architecture User Group
ODC, Data Fabric and Architecture User Group
 
UiPath Test Automation using UiPath Test Suite series, part 1
UiPath Test Automation using UiPath Test Suite series, part 1UiPath Test Automation using UiPath Test Suite series, part 1
UiPath Test Automation using UiPath Test Suite series, part 1
 
IESVE for Early Stage Design and Planning
IESVE for Early Stage Design and PlanningIESVE for Early Stage Design and Planning
IESVE for Early Stage Design and Planning
 
Speed Wins: From Kafka to APIs in Minutes
Speed Wins: From Kafka to APIs in MinutesSpeed Wins: From Kafka to APIs in Minutes
Speed Wins: From Kafka to APIs in Minutes
 
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
 
10 Differences between Sales Cloud and CPQ, Blanka Doktorová
10 Differences between Sales Cloud and CPQ, Blanka Doktorová10 Differences between Sales Cloud and CPQ, Blanka Doktorová
10 Differences between Sales Cloud and CPQ, Blanka Doktorová
 
Powerful Start- the Key to Project Success, Barbara Laskowska
Powerful Start- the Key to Project Success, Barbara LaskowskaPowerful Start- the Key to Project Success, Barbara Laskowska
Powerful Start- the Key to Project Success, Barbara Laskowska
 
Optimizing NoSQL Performance Through Observability
Optimizing NoSQL Performance Through ObservabilityOptimizing NoSQL Performance Through Observability
Optimizing NoSQL Performance Through Observability
 
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
 
Unpacking Value Delivery - Agile Oxford Meetup - May 2024.pptx
Unpacking Value Delivery - Agile Oxford Meetup - May 2024.pptxUnpacking Value Delivery - Agile Oxford Meetup - May 2024.pptx
Unpacking Value Delivery - Agile Oxford Meetup - May 2024.pptx
 
SOQL 201 for Admins & Developers: Slice & Dice Your Org’s Data With Aggregate...
SOQL 201 for Admins & Developers: Slice & Dice Your Org’s Data With Aggregate...SOQL 201 for Admins & Developers: Slice & Dice Your Org’s Data With Aggregate...
SOQL 201 for Admins & Developers: Slice & Dice Your Org’s Data With Aggregate...
 
JMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and GrafanaJMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and Grafana
 
Essentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with ParametersEssentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with Parameters
 
Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo DiehlFuture Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
 
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
 
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMsTo Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
 
Salesforce Adoption – Metrics, Methods, and Motivation, Antone Kom
Salesforce Adoption – Metrics, Methods, and Motivation, Antone KomSalesforce Adoption – Metrics, Methods, and Motivation, Antone Kom
Salesforce Adoption – Metrics, Methods, and Motivation, Antone Kom
 
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
 
Exploring UiPath Orchestrator API: updates and limits in 2024 🚀
Exploring UiPath Orchestrator API: updates and limits in 2024 🚀Exploring UiPath Orchestrator API: updates and limits in 2024 🚀
Exploring UiPath Orchestrator API: updates and limits in 2024 🚀
 
When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...
 

Introduction to SCTP and it's benefits over TCP and UDP

  • 1. INTRODUCTION TO SCTP AND IT’S BENEFITS OVER TCP & UDP Author : Vijay Sharma 6/29/2014 1
  • 2. ABBREVIATIONS  SCTP- Stream Control Transmission Protocol  UDP – User Datagram Protocol  TCP – Transmission Control Protocol  RFC –Request for Comments  IETF – Internet Engineering Task Force  SACK- Selective Acknowledgement 6/29/2014 2
  • 3. INTRODUCTION  SCTP (Stream Control Transmission Protocol) was introduced for transporting PSTN signaling messages over IP network. But due to its amazing features it became an important part of next generation network technologies i.e. IMS and LTE. 6/29/2014 3
  • 4. SCTP PACKET STRUCTURE FORMAT Bits 0-7 8-15 16-23 24-31 0 Source Port Destination Port 32 Verification Tag 64 Checksum 96 Chunk 1 type Chunk 1 flags Chunk 1 length 128 Chunk 1 data … … … Chunk N type Chunk N flags Chunk N length … Chunk 1 data 6/29/2014 4
  • 5. SCTP PACKET STRUCTURE FORMAT  Source Port-This16 bits (unsigned integer) sender’s port number. Port no. 0 is not used.  Destination Port- This is also16 bits (unsigned integer) receiver’s port number. It is used by receiving host to de-multiplex to sctp packet at receiving endpoint. Here also port no. 0 is not used.  Verification Tag- This is 32 bits (unsigned integer) used to validate sender of the SCTP packet. For more details about this refer RFC 4960 (page no. 16.  Checksum- This is32 bits (unsigned integer).As name indicates this field contains checksum of sctp packets. SCTP uses CRC32c algorithm for calculating checksum. 6/29/2014 5
  • 6. SCTP PACKET STRUCTURE FORMAT  Chunk Type-This field indicates the type of information contained in chunk data field.It can take values from 0 to 254 and 255 is reserved for future use.Few examples are : 6/29/2014 6 ID Chunk Type 0 Payload Data (DATA) 1 Initiation (INIT) 3 Selective Acknowledgement (SACK) 14 SHUTDOWN COMPLETE 255 Reserved Chunk Type is coded in following manner. High order 2 bits say what to do if type in chunk is undefined 00 = stop processing packet and discard packet (don’t process other chunks) 01 = same as above, report unrecognized type
  • 7. SCTP PACKET STRUCTURE FORMAT  Chunk Flag-This is 8 bit field. Its value depends on chunk type. Unless otherwise specified its value is considered 0 at transmitter and ignored at receiver.  Chunk Length :This is also 16 bit field. Represents the size of chunks in bytes which includes Chunk Type, Chunk Flags, Chunk Length, and Chunk data fields.  Chunk Data Field : This field contains actual information to be transmitted in chunks. 6/29/2014 7
  • 8. DATA TRANSMISSION STEPS 6/29/2014 8 Step1. •Initiation Step 2 •Data Transmission Step 3 •Shut Down Heart Beat •Heart Beat
  • 9. INITIATION 6/29/2014 9  As the figure shows SCTP uses 4 way handshake to initiate a transmission session.  Although it can start sending information in 3rd step  The SCTP client initiates communications with an INIT packet  The server acknowledges with the INIT-ACK packet and a cookie (a unique identifier that identifies the connection)  The client then sends the server’s cookie back to the server. Now the client can also send additional information after the COOKIE-ECHO.  The server then acknowledges the COOKIE-ECHO with a COOKIE-ACK.
  • 10. DATA TRANSMISSION  After the COOKIE ACK in above step, The client Send Data chunks to server.  The server then sends SACK that is selective Acknowledgement. Meaning of SACK will be discussed in further slides. 6/29/2014 10
  • 11. SHUT DOWN  As we see shut down process is 3 way handshake in SCTP.  First the client sends shutdown request to server.  Server responds with SHUT DOWN ACK and finally client cease the connection after sending SHUT DOWN Complete message. 6/29/2014 11
  • 13. IN NEXT FEW SLIDES WE SHALL DESCRIBE BENEFITS OF SCTP OVER TCP AND UDP 6/29/2014 13
  • 14. COMPARISON 6/29/2014 14 Services SCTP TCP UDP Multi-homing YES NO NO Multi-streaming YES NO NO Ordered data delivery YES YES NO Allow half-closed connections NO YES NA Application PDU bundling YES YES NO Application PDU fragmentation YES YES NO Congestion control YES YES NO Partial-reliable data transfer OPTIONAL NO NO Preserve message boundaries YES NO YES
  • 15. COMPARISON Service SCTP TCP UDP Protect against SYN flooding attacks YES NO NA Selective acknowledgements YES OPTION AL NO Unordered data delivery YES NO YES Partial-reliable data transfer OPTIONAL NO NO 6/29/2014 15
  • 16. MULTI-HOMING  In SCTP client and server are connected through one primary and other secondary interfaces.  The RTT ( round trip time) is checked for all interfaces.  When one interface goes down the other handles the traffic. 6/29/2014 16
  • 17. MULTI STREAMING 6/29/2014 17  TCP allow single data stream per connection but in SCTP multiple data streams can be transmitted per connection  This reduced overhead which was required for web browsing.  Reduced Latency
  • 18. PRESERVING MESSAGE BOUNDARIES  If a client sends a 150 byte and then a 100 byte message, the information is presented to the server with preserved message boundaries. With SCTP and UDP the messages are sent as 150 bytes and 100 bytes. But in TCP the messages may be sent/received as single 250 (150+100) bytes 6/29/2014 18
  • 19. SCTP PROTECTS AGAINST SYN FLOODING  In TCP client initiates communications with SYN.Server respond with SYN-ACK.Then client acknowledges with ACK.  SYN Flood occurs when multiple clients send SYN packets to server, which causes target to get overload.  But in SCTP this issue is resolved by providing 4 way handshake communication 6/29/2014 19
  • 20. SCTP PROTECTS AGAINST SYN FLOODING 6/29/2014 20
  • 21. SELECTIVE ACKNOWLEDGEMENT (SACK)  In standard TCP, every message, or packet of information must be accounted for, resent as necessary, and processed in the order they were sent.  SCTP has the ability to selectively acknowledge receipt of missing, disordered, or duplicated messages.  Due to the nature of telecommunications most applications would end up discarding any unsynchronized messages.  Therefore, the need to send and receive the information is forgone. This would mean that a portion of a word, a portion of a video, or a piece of the whiteboard refresh would be skipped over.  The applications and users may notice a slight skip in the voice, video, or refresh.  This is referred to as jitter within the telecommunications world and a small amount of jitter is often preferred to having the packet resent and reprocessed which would double the amount of jitter, 6/29/2014 21
  • 22. UNORDERED DELIVERY  In the above diagram , if we were using TCP, once Message C was received all processing would stop, and wait for Message B, it would be processed and then Message C would be processed.  SCTP allows for unordered data delivery and since it has multiple streams, only the one affected is temporarily blocked. As in the diagram , SCTP would process the messages in the order they arrived, not waiting for them to be numerically ordered. 6/29/2014 22
  • 23. REFERENCES  RFC 4960 Stream Control Transmission Protocol (Obsoletes: 2960, 3309) 6/29/2014 23
  • 24. THANKS FOR BEING NICE READER 6/29/2014 24