SlideShare a Scribd company logo
1 of 65
Chapter          13

               Stream Control
            Transmission Protocol
 Objectives
 Upon completion you will be able to:

• Be able to name and understand the services offered by SCTP
• Understand SCTP’s flow and error control and congestion control
• Be familiar with the fields in a SCTP segment
• Understand the phases in an SCTP association
• Understand the SCTP state transition diagram

TCP/IP Protocol Suite                               1
Figure 13.1   TCP/IP protocol suite




TCP/IP Protocol Suite                        2
Note:

       SCTP is a message-oriented, reliable
               protocol that combines the
           good features of UDP and TCP.



TCP/IP Protocol Suite                       3
13.1 SCTP SERVICES
   We explain the services offered by SCTP to the application layer
   processes.




    The topics discussed in this section include:

    Process-to-Process Communication
    Multiple Streams
    Multihoming
    Full-Duplex Communication
    Connection-Oriented Service
    Reliable Service



TCP/IP Protocol Suite                                    4
Table 13.1 Some SCTP applications




TCP/IP Protocol Suite                   5
Figure 13.2   Multiple-stream concept




TCP/IP Protocol Suite                          6
Note:

        An association in SCTP can involve
                 multiple streams.




TCP/IP Protocol Suite                7
Figure 13.3   Multihoming concept




TCP/IP Protocol Suite                      8
Note:

       SCTP association allows multiple IP
            addresses for each end.




TCP/IP Protocol Suite                9
13.2 SCTP FEATURES
   We discuss the general features of SCTP and then compare them with
   those of TCP.

    The topics discussed in this section include:


    Transmission Sequence Number (TSN)
    Stream Identifier (SI)
    Stream Sequence Number (SSN)
    Packets
    Acknowledgment Number
    Flow Control
    Error Control
    Congestion Control



TCP/IP Protocol Suite                                      10
Note:

        In SCTP, a data chunk is numbered
                  using a TSN.




TCP/IP Protocol Suite               11
Note:

          To distinguish between different
             streams, SCTP uses a SI.




TCP/IP Protocol Suite                  12
Note:

      To distinguish between different data
      chunks belonging to the same stream,
                SCTP uses SSNs.




TCP/IP Protocol Suite                13
Figure 13.4   Comparison between a TCP segment and an SCTP packet




TCP/IP Protocol Suite                                           14
Note:

                   TCP has segments;
                   SCTP has packets.




TCP/IP Protocol Suite                  15
Note:

         In SCTP, control information and
          data information are carried in
                 separate chunks.




TCP/IP Protocol Suite                16
Figure 13.5   Packet, data chunks, and streams




TCP/IP Protocol Suite                                   17
Note:

        Data chunks are identified by three
          identifiers: TSN, SI, and SSN.
           TSN is a cumulative number
      identifying the association; SI defines
      the stream; SSN defines the chunk in
                     a stream.

TCP/IP Protocol Suite                  18
Note:

       In SCTP, acknowledgment numbers
        are used to acknowledge only data
           chunks; control chunks are
      acknowledged by other control chunks
                   if necessary.


TCP/IP Protocol Suite               19
13.3 PACKET FORMAT
   We show the format of a packet and different types of chunks. An SCTP
   packet has a mandatory general header and a set of blocks called
   chunks. There are two types of chunks: control chunks and data chunks.




    The topics discussed in this section include:

    General Header
    Chunks




TCP/IP Protocol Suite                                         20
Figure 13.6   SCTP packet format




TCP/IP Protocol Suite                     21
Note:

        In an SCTP packet, control chunks
             come before data chunks.




TCP/IP Protocol Suite                22
Figure 13.7 General header




TCP/IP Protocol Suite               23
Figure 13.8   Common layout of a chunk




TCP/IP Protocol Suite                           24
Note:

       Chunks need to terminate on a 32-bit
               (4 byte) boundary.




TCP/IP Protocol Suite                25
Table 13.2 Chunks




TCP/IP Protocol Suite   26
Note:

       The number of padding bytes are not
            included in the value of
                the length field.




TCP/IP Protocol Suite                27
Figure 13.9   DATA chunk




TCP/IP Protocol Suite             28
Note:

 A DATA chunk cannot carry data belonging
  to more than one message, but a message
      can be split into several chunks.

   The data field of the DATA chunk must
 carry at least one byte of data, which means
     the value of length field cannot be
                  less than 17.
TCP/IP Protocol Suite                29
Figure 13.10   INIT chunk




TCP/IP Protocol Suite              30
Note:

        No other chunk can be carried in a
        packet that carries an INIT chunk.




TCP/IP Protocol Suite                31
Figure 13.11   INIT ACK chunk




TCP/IP Protocol Suite                  32
Note:

        No other chunk can be carried in a
              packet that carries an
                INIT ACK chunk.




TCP/IP Protocol Suite                33
Figure 13.12   COOKIE ECHO chunk




TCP/IP Protocol Suite                     34
Figure 13.13   COOKIE ACK




TCP/IP Protocol Suite              35
Figure 13.14   SACK chunk




TCP/IP Protocol Suite              36
Figure 13.15   HEARTBEAT and HEARTBEAT ACK chunks




TCP/IP Protocol Suite                                      37
Figure 13.16   SHUTDOWN, SHUTDOWN ACK, and SHUTDOWN
                      COMPLETE chunks




TCP/IP Protocol Suite                                 38
Figure 13.17   ERROR chunk




TCP/IP Protocol Suite               39
Table 13.3 Errors




TCP/IP Protocol Suite   40
Figure 13.18   ABORT chunk




TCP/IP Protocol Suite               41
13.4 AN SCTP ASSOCIATION
   SCTP, like TCP, is a connection-oriented protocol. However, a
   connection in SCTP is called an association to emphasize multihoming




    The topics discussed in this section include:
    Association Establishment
    Data Transfer
    Association Termination
    Association Abortion



TCP/IP Protocol Suite                                       42
Note:

         A connection in SCTP is called an
                   association.




TCP/IP Protocol Suite                 43
Figure 13.19   Four-way handshaking




TCP/IP Protocol Suite                        44
Note:

      No other chunk is allowed in a packet
     carrying an INIT or INIT ACK chunk.
     A COOKIE ECHO or a COOKIE ACK
        chunk can carry DATA chunks.



TCP/IP Protocol Suite                45
Note:

      In SCTP, only DATA chunks consume
                     TSNs;
         DATA chunks are the only chunks
             that are acknowledged.



TCP/IP Protocol Suite               46
Figure 13.20   Simple data transfer




TCP/IP Protocol Suite                        47
Note:

      The acknowledgment in SCTP defines
       the cumulative TSN, the TSN of the
       last DATA chunk received in order.




TCP/IP Protocol Suite              48
Figure 13.21   Association termination




TCP/IP Protocol Suite                           49
Figure 13.22   Association abortion




TCP/IP Protocol Suite                        50
13.5 STATE TRANSITION DIAGRAM
   To keep track of all the different events happening during association
   establishment, association termination, and data transfer, the SCTP
   software, like TCP, is implemented as a finite state machine.




    The topics discussed in this section include:

    Scenarios
    Simultaneous Close




TCP/IP Protocol Suite                                         51
Figure 13.23   State transition diagram




TCP/IP Protocol Suite                            52
Table 13.4 States for SCTP




TCP/IP Protocol Suite          53
Figure 13.24   A common scenario of states




TCP/IP Protocol Suite                               54
Figure 13.25   Simultaneous open




TCP/IP Protocol Suite                     55
Figure 13.26   Simultaneous close




TCP/IP Protocol Suite                      56
13.6 FLOW CONTROL
   Flow control in SCTP is similar to that in TCP. In SCTP, we need to
   handle two units of data, the byte and the chunk.




    The topics discussed in this section include:

    Receiver Site
    Sender Site
    A Scenario




TCP/IP Protocol Suite                                      57
Figure 13.27   Flow control, receiver site




TCP/IP Protocol Suite                               58
Figure 13.28   Flow control, sender site




TCP/IP Protocol Suite                             59
Figure 13.29   Flow control scenario




TCP/IP Protocol Suite                         60
13.7 ERROR CONTROL
   SCTP uses a SACK chunk to report the state of the receiver buffer to the
   sender. Each implementation uses a different set of entities and timers
   for the receiver and sender sites.




    The topics discussed in this section include:

    Receiver Site
    Sender Site
    Sending Data Chunks
    Generating SACK Chunks


TCP/IP Protocol Suite                                           61
Figure 13.30   Error control, receiver site




TCP/IP Protocol Suite                                62
Figure 13.31   Error control, sender site




TCP/IP Protocol Suite                              63
Figure 13.32   New state at the sender site after receiving a SACK chunk




TCP/IP Protocol Suite                                                 64
13.8 CONGESTION CONTROL
   SCTP uses the same strategies for congestion control as TCP. SCTP
   uses slow start, congestion avoidance, and congestion detection phases.
   SCTP also uses fast retransmission and fast recovery.




    The topics discussed in this section include:

    Congestion Control and Multihoming
    Explicit Congestion Notification




TCP/IP Protocol Suite                                          65

More Related Content

What's hot

What's hot (20)

Chap 19 ftp & tftp
Chap 19 ftp & tftpChap 19 ftp & tftp
Chap 19 ftp & tftp
 
rip, ospf 13-14
rip, ospf 13-14rip, ospf 13-14
rip, ospf 13-14
 
Chap 14 rip, ospf
Chap 14 rip, ospfChap 14 rip, ospf
Chap 14 rip, ospf
 
Chap 09 icmp
Chap 09 icmpChap 09 icmp
Chap 09 icmp
 
Arp and rarp
Arp and rarpArp and rarp
Arp and rarp
 
RTSP Analysis Wireshark
RTSP Analysis WiresharkRTSP Analysis Wireshark
RTSP Analysis Wireshark
 
Ch13
Ch13Ch13
Ch13
 
Ch17
Ch17Ch17
Ch17
 
TCP & UDP Streaming Comparison and a Study on DCCP & SCTP Protocols
TCP & UDP Streaming Comparison and a Study on DCCP & SCTP ProtocolsTCP & UDP Streaming Comparison and a Study on DCCP & SCTP Protocols
TCP & UDP Streaming Comparison and a Study on DCCP & SCTP Protocols
 
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)
 
Rip ospf and bgp
Rip ospf and bgpRip ospf and bgp
Rip ospf and bgp
 
Introduction to SCTP and it's benefits over TCP and UDP
Introduction to SCTP and it's benefits over TCP and UDPIntroduction to SCTP and it's benefits over TCP and UDP
Introduction to SCTP and it's benefits over TCP and UDP
 
Explicit congestion notification
Explicit congestion notificationExplicit congestion notification
Explicit congestion notification
 
Sctp tutorial
Sctp tutorialSctp tutorial
Sctp tutorial
 
Chap 11 udp
Chap 11 udpChap 11 udp
Chap 11 udp
 
Chap 17 dns
Chap 17 dnsChap 17 dns
Chap 17 dns
 
29 Multimedia
29 Multimedia29 Multimedia
29 Multimedia
 
SCTP Tutorial
SCTP TutorialSCTP Tutorial
SCTP Tutorial
 
Chap 20 smtp, pop, imap
Chap 20 smtp, pop, imapChap 20 smtp, pop, imap
Chap 20 smtp, pop, imap
 
Mobile transportlayer
Mobile transportlayerMobile transportlayer
Mobile transportlayer
 

Similar to Chap 13 (20)

Transportlayer.ppt
Transportlayer.pptTransportlayer.ppt
Transportlayer.ppt
 
User datagram protocol
User datagram protocolUser datagram protocol
User datagram protocol
 
IGMP.ppt
IGMP.pptIGMP.ppt
IGMP.ppt
 
Chap 14
Chap 14Chap 14
Chap 14
 
Chap 18 telnet
Chap 18 telnetChap 18 telnet
Chap 18 telnet
 
Chap 10 igmp
Chap 10 igmpChap 10 igmp
Chap 10 igmp
 
Chap-13.ppt
Chap-13.pptChap-13.ppt
Chap-13.ppt
 
TransportLayerServices.ppt
TransportLayerServices.pptTransportLayerServices.ppt
TransportLayerServices.ppt
 
Telnethappy
TelnethappyTelnethappy
Telnethappy
 
Chap 02
Chap 02Chap 02
Chap 02
 
Chap 12 tcp
Chap 12 tcpChap 12 tcp
Chap 12 tcp
 
PowerPoint_merge.ppt
PowerPoint_merge.pptPowerPoint_merge.ppt
PowerPoint_merge.ppt
 
PowerPoint_merge (2).pdf
PowerPoint_merge (2).pdfPowerPoint_merge (2).pdf
PowerPoint_merge (2).pdf
 
chapter 3.2 TCP.pptx
chapter 3.2 TCP.pptxchapter 3.2 TCP.pptx
chapter 3.2 TCP.pptx
 
Bootp and dhcp
Bootp and dhcpBootp and dhcp
Bootp and dhcp
 
06tcpip
06tcpip06tcpip
06tcpip
 
Chap 23 ip over atm
Chap 23 ip over atmChap 23 ip over atm
Chap 23 ip over atm
 
COMPUTER NETWORKS UNIT 4
COMPUTER NETWORKS UNIT 4COMPUTER NETWORKS UNIT 4
COMPUTER NETWORKS UNIT 4
 
TCP/IP Training Basic Concepts.
TCP/IP Training Basic Concepts.TCP/IP Training Basic Concepts.
TCP/IP Training Basic Concepts.
 
OSI MODEL
OSI MODELOSI MODEL
OSI MODEL
 

Recently uploaded

So einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfSo einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfpanagenda
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxLoriGlavin3
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 
2024 April Patch Tuesday
2024 April Patch Tuesday2024 April Patch Tuesday
2024 April Patch TuesdayIvanti
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxLoriGlavin3
 
A Framework for Development in the AI Age
A Framework for Development in the AI AgeA Framework for Development in the AI Age
A Framework for Development in the AI AgeCprime
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
QCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architecturesQCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architecturesBernd Ruecker
 
Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Hiroshi SHIBATA
 
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsNathaniel Shimoni
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxLoriGlavin3
 
Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Farhan Tariq
 
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical InfrastructureVarsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructureitnewsafrica
 
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotesMuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotesManik S Magar
 
Testing tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examplesTesting tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examplesKari Kakkonen
 
Potential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsPotential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsRavi Sanghani
 
Data governance with Unity Catalog Presentation
Data governance with Unity Catalog PresentationData governance with Unity Catalog Presentation
Data governance with Unity Catalog PresentationKnoldus Inc.
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxLoriGlavin3
 

Recently uploaded (20)

So einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfSo einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 
2024 April Patch Tuesday
2024 April Patch Tuesday2024 April Patch Tuesday
2024 April Patch Tuesday
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
 
A Framework for Development in the AI Age
A Framework for Development in the AI AgeA Framework for Development in the AI Age
A Framework for Development in the AI Age
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
QCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architecturesQCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architectures
 
Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024
 
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directions
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
 
Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...
 
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical InfrastructureVarsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
 
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotesMuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
 
Testing tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examplesTesting tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examples
 
Potential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsPotential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and Insights
 
Data governance with Unity Catalog Presentation
Data governance with Unity Catalog PresentationData governance with Unity Catalog Presentation
Data governance with Unity Catalog Presentation
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
 

Chap 13

  • 1. Chapter 13 Stream Control Transmission Protocol Objectives Upon completion you will be able to: • Be able to name and understand the services offered by SCTP • Understand SCTP’s flow and error control and congestion control • Be familiar with the fields in a SCTP segment • Understand the phases in an SCTP association • Understand the SCTP state transition diagram TCP/IP Protocol Suite 1
  • 2. Figure 13.1 TCP/IP protocol suite TCP/IP Protocol Suite 2
  • 3. Note: SCTP is a message-oriented, reliable protocol that combines the good features of UDP and TCP. TCP/IP Protocol Suite 3
  • 4. 13.1 SCTP SERVICES We explain the services offered by SCTP to the application layer processes. The topics discussed in this section include: Process-to-Process Communication Multiple Streams Multihoming Full-Duplex Communication Connection-Oriented Service Reliable Service TCP/IP Protocol Suite 4
  • 5. Table 13.1 Some SCTP applications TCP/IP Protocol Suite 5
  • 6. Figure 13.2 Multiple-stream concept TCP/IP Protocol Suite 6
  • 7. Note: An association in SCTP can involve multiple streams. TCP/IP Protocol Suite 7
  • 8. Figure 13.3 Multihoming concept TCP/IP Protocol Suite 8
  • 9. Note: SCTP association allows multiple IP addresses for each end. TCP/IP Protocol Suite 9
  • 10. 13.2 SCTP FEATURES We discuss the general features of SCTP and then compare them with those of TCP. The topics discussed in this section include: Transmission Sequence Number (TSN) Stream Identifier (SI) Stream Sequence Number (SSN) Packets Acknowledgment Number Flow Control Error Control Congestion Control TCP/IP Protocol Suite 10
  • 11. Note: In SCTP, a data chunk is numbered using a TSN. TCP/IP Protocol Suite 11
  • 12. Note: To distinguish between different streams, SCTP uses a SI. TCP/IP Protocol Suite 12
  • 13. Note: To distinguish between different data chunks belonging to the same stream, SCTP uses SSNs. TCP/IP Protocol Suite 13
  • 14. Figure 13.4 Comparison between a TCP segment and an SCTP packet TCP/IP Protocol Suite 14
  • 15. Note: TCP has segments; SCTP has packets. TCP/IP Protocol Suite 15
  • 16. Note: In SCTP, control information and data information are carried in separate chunks. TCP/IP Protocol Suite 16
  • 17. Figure 13.5 Packet, data chunks, and streams TCP/IP Protocol Suite 17
  • 18. Note: Data chunks are identified by three identifiers: TSN, SI, and SSN. TSN is a cumulative number identifying the association; SI defines the stream; SSN defines the chunk in a stream. TCP/IP Protocol Suite 18
  • 19. Note: In SCTP, acknowledgment numbers are used to acknowledge only data chunks; control chunks are acknowledged by other control chunks if necessary. TCP/IP Protocol Suite 19
  • 20. 13.3 PACKET FORMAT We show the format of a packet and different types of chunks. An SCTP packet has a mandatory general header and a set of blocks called chunks. There are two types of chunks: control chunks and data chunks. The topics discussed in this section include: General Header Chunks TCP/IP Protocol Suite 20
  • 21. Figure 13.6 SCTP packet format TCP/IP Protocol Suite 21
  • 22. Note: In an SCTP packet, control chunks come before data chunks. TCP/IP Protocol Suite 22
  • 23. Figure 13.7 General header TCP/IP Protocol Suite 23
  • 24. Figure 13.8 Common layout of a chunk TCP/IP Protocol Suite 24
  • 25. Note: Chunks need to terminate on a 32-bit (4 byte) boundary. TCP/IP Protocol Suite 25
  • 26. Table 13.2 Chunks TCP/IP Protocol Suite 26
  • 27. Note: The number of padding bytes are not included in the value of the length field. TCP/IP Protocol Suite 27
  • 28. Figure 13.9 DATA chunk TCP/IP Protocol Suite 28
  • 29. Note: A DATA chunk cannot carry data belonging to more than one message, but a message can be split into several chunks. The data field of the DATA chunk must carry at least one byte of data, which means the value of length field cannot be less than 17. TCP/IP Protocol Suite 29
  • 30. Figure 13.10 INIT chunk TCP/IP Protocol Suite 30
  • 31. Note: No other chunk can be carried in a packet that carries an INIT chunk. TCP/IP Protocol Suite 31
  • 32. Figure 13.11 INIT ACK chunk TCP/IP Protocol Suite 32
  • 33. Note: No other chunk can be carried in a packet that carries an INIT ACK chunk. TCP/IP Protocol Suite 33
  • 34. Figure 13.12 COOKIE ECHO chunk TCP/IP Protocol Suite 34
  • 35. Figure 13.13 COOKIE ACK TCP/IP Protocol Suite 35
  • 36. Figure 13.14 SACK chunk TCP/IP Protocol Suite 36
  • 37. Figure 13.15 HEARTBEAT and HEARTBEAT ACK chunks TCP/IP Protocol Suite 37
  • 38. Figure 13.16 SHUTDOWN, SHUTDOWN ACK, and SHUTDOWN COMPLETE chunks TCP/IP Protocol Suite 38
  • 39. Figure 13.17 ERROR chunk TCP/IP Protocol Suite 39
  • 40. Table 13.3 Errors TCP/IP Protocol Suite 40
  • 41. Figure 13.18 ABORT chunk TCP/IP Protocol Suite 41
  • 42. 13.4 AN SCTP ASSOCIATION SCTP, like TCP, is a connection-oriented protocol. However, a connection in SCTP is called an association to emphasize multihoming The topics discussed in this section include: Association Establishment Data Transfer Association Termination Association Abortion TCP/IP Protocol Suite 42
  • 43. Note: A connection in SCTP is called an association. TCP/IP Protocol Suite 43
  • 44. Figure 13.19 Four-way handshaking TCP/IP Protocol Suite 44
  • 45. Note: No other chunk is allowed in a packet carrying an INIT or INIT ACK chunk. A COOKIE ECHO or a COOKIE ACK chunk can carry DATA chunks. TCP/IP Protocol Suite 45
  • 46. Note: In SCTP, only DATA chunks consume TSNs; DATA chunks are the only chunks that are acknowledged. TCP/IP Protocol Suite 46
  • 47. Figure 13.20 Simple data transfer TCP/IP Protocol Suite 47
  • 48. Note: The acknowledgment in SCTP defines the cumulative TSN, the TSN of the last DATA chunk received in order. TCP/IP Protocol Suite 48
  • 49. Figure 13.21 Association termination TCP/IP Protocol Suite 49
  • 50. Figure 13.22 Association abortion TCP/IP Protocol Suite 50
  • 51. 13.5 STATE TRANSITION DIAGRAM To keep track of all the different events happening during association establishment, association termination, and data transfer, the SCTP software, like TCP, is implemented as a finite state machine. The topics discussed in this section include: Scenarios Simultaneous Close TCP/IP Protocol Suite 51
  • 52. Figure 13.23 State transition diagram TCP/IP Protocol Suite 52
  • 53. Table 13.4 States for SCTP TCP/IP Protocol Suite 53
  • 54. Figure 13.24 A common scenario of states TCP/IP Protocol Suite 54
  • 55. Figure 13.25 Simultaneous open TCP/IP Protocol Suite 55
  • 56. Figure 13.26 Simultaneous close TCP/IP Protocol Suite 56
  • 57. 13.6 FLOW CONTROL Flow control in SCTP is similar to that in TCP. In SCTP, we need to handle two units of data, the byte and the chunk. The topics discussed in this section include: Receiver Site Sender Site A Scenario TCP/IP Protocol Suite 57
  • 58. Figure 13.27 Flow control, receiver site TCP/IP Protocol Suite 58
  • 59. Figure 13.28 Flow control, sender site TCP/IP Protocol Suite 59
  • 60. Figure 13.29 Flow control scenario TCP/IP Protocol Suite 60
  • 61. 13.7 ERROR CONTROL SCTP uses a SACK chunk to report the state of the receiver buffer to the sender. Each implementation uses a different set of entities and timers for the receiver and sender sites. The topics discussed in this section include: Receiver Site Sender Site Sending Data Chunks Generating SACK Chunks TCP/IP Protocol Suite 61
  • 62. Figure 13.30 Error control, receiver site TCP/IP Protocol Suite 62
  • 63. Figure 13.31 Error control, sender site TCP/IP Protocol Suite 63
  • 64. Figure 13.32 New state at the sender site after receiving a SACK chunk TCP/IP Protocol Suite 64
  • 65. 13.8 CONGESTION CONTROL SCTP uses the same strategies for congestion control as TCP. SCTP uses slow start, congestion avoidance, and congestion detection phases. SCTP also uses fast retransmission and fast recovery. The topics discussed in this section include: Congestion Control and Multihoming Explicit Congestion Notification TCP/IP Protocol Suite 65