Chap 13


Published on

Published in: Technology, Education
1 Like
  • Be the first to comment

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

Chap 13

  1. 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 diagramTCP/IP Protocol Suite 1
  2. 2. Figure 13.1 TCP/IP protocol suiteTCP/IP Protocol Suite 2
  3. 3. Note: SCTP is a message-oriented, reliable protocol that combines the good features of UDP and TCP.TCP/IP Protocol Suite 3
  4. 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 ServiceTCP/IP Protocol Suite 4
  5. 5. Table 13.1 Some SCTP applicationsTCP/IP Protocol Suite 5
  6. 6. Figure 13.2 Multiple-stream conceptTCP/IP Protocol Suite 6
  7. 7. Note: An association in SCTP can involve multiple streams.TCP/IP Protocol Suite 7
  8. 8. Figure 13.3 Multihoming conceptTCP/IP Protocol Suite 8
  9. 9. Note: SCTP association allows multiple IP addresses for each end.TCP/IP Protocol Suite 9
  10. 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 ControlTCP/IP Protocol Suite 10
  11. 11. Note: In SCTP, a data chunk is numbered using a TSN.TCP/IP Protocol Suite 11
  12. 12. Note: To distinguish between different streams, SCTP uses a SI.TCP/IP Protocol Suite 12
  13. 13. Note: To distinguish between different data chunks belonging to the same stream, SCTP uses SSNs.TCP/IP Protocol Suite 13
  14. 14. Figure 13.4 Comparison between a TCP segment and an SCTP packetTCP/IP Protocol Suite 14
  15. 15. Note: TCP has segments; SCTP has packets.TCP/IP Protocol Suite 15
  16. 16. Note: In SCTP, control information and data information are carried in separate chunks.TCP/IP Protocol Suite 16
  17. 17. Figure 13.5 Packet, data chunks, and streamsTCP/IP Protocol Suite 17
  18. 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. 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. 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 ChunksTCP/IP Protocol Suite 20
  21. 21. Figure 13.6 SCTP packet formatTCP/IP Protocol Suite 21
  22. 22. Note: In an SCTP packet, control chunks come before data chunks.TCP/IP Protocol Suite 22
  23. 23. Figure 13.7 General headerTCP/IP Protocol Suite 23
  24. 24. Figure 13.8 Common layout of a chunkTCP/IP Protocol Suite 24
  25. 25. Note: Chunks need to terminate on a 32-bit (4 byte) boundary.TCP/IP Protocol Suite 25
  26. 26. Table 13.2 ChunksTCP/IP Protocol Suite 26
  27. 27. Note: The number of padding bytes are not included in the value of the length field.TCP/IP Protocol Suite 27
  28. 28. Figure 13.9 DATA chunkTCP/IP Protocol Suite 28
  29. 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. 30. Figure 13.10 INIT chunkTCP/IP Protocol Suite 30
  31. 31. Note: No other chunk can be carried in a packet that carries an INIT chunk.TCP/IP Protocol Suite 31
  32. 32. Figure 13.11 INIT ACK chunkTCP/IP Protocol Suite 32
  33. 33. Note: No other chunk can be carried in a packet that carries an INIT ACK chunk.TCP/IP Protocol Suite 33
  34. 34. Figure 13.12 COOKIE ECHO chunkTCP/IP Protocol Suite 34
  35. 35. Figure 13.13 COOKIE ACKTCP/IP Protocol Suite 35
  36. 36. Figure 13.14 SACK chunkTCP/IP Protocol Suite 36
  37. 37. Figure 13.15 HEARTBEAT and HEARTBEAT ACK chunksTCP/IP Protocol Suite 37
  38. 38. Figure 13.16 SHUTDOWN, SHUTDOWN ACK, and SHUTDOWN COMPLETE chunksTCP/IP Protocol Suite 38
  39. 39. Figure 13.17 ERROR chunkTCP/IP Protocol Suite 39
  40. 40. Table 13.3 ErrorsTCP/IP Protocol Suite 40
  41. 41. Figure 13.18 ABORT chunkTCP/IP Protocol Suite 41
  42. 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 AbortionTCP/IP Protocol Suite 42
  43. 43. Note: A connection in SCTP is called an association.TCP/IP Protocol Suite 43
  44. 44. Figure 13.19 Four-way handshakingTCP/IP Protocol Suite 44
  45. 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. 46. Note: In SCTP, only DATA chunks consume TSNs; DATA chunks are the only chunks that are acknowledged.TCP/IP Protocol Suite 46
  47. 47. Figure 13.20 Simple data transferTCP/IP Protocol Suite 47
  48. 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. 49. Figure 13.21 Association terminationTCP/IP Protocol Suite 49
  50. 50. Figure 13.22 Association abortionTCP/IP Protocol Suite 50
  51. 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 CloseTCP/IP Protocol Suite 51
  52. 52. Figure 13.23 State transition diagramTCP/IP Protocol Suite 52
  53. 53. Table 13.4 States for SCTPTCP/IP Protocol Suite 53
  54. 54. Figure 13.24 A common scenario of statesTCP/IP Protocol Suite 54
  55. 55. Figure 13.25 Simultaneous openTCP/IP Protocol Suite 55
  56. 56. Figure 13.26 Simultaneous closeTCP/IP Protocol Suite 56
  57. 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 ScenarioTCP/IP Protocol Suite 57
  58. 58. Figure 13.27 Flow control, receiver siteTCP/IP Protocol Suite 58
  59. 59. Figure 13.28 Flow control, sender siteTCP/IP Protocol Suite 59
  60. 60. Figure 13.29 Flow control scenarioTCP/IP Protocol Suite 60
  61. 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 ChunksTCP/IP Protocol Suite 61
  62. 62. Figure 13.30 Error control, receiver siteTCP/IP Protocol Suite 62
  63. 63. Figure 13.31 Error control, sender siteTCP/IP Protocol Suite 63
  64. 64. Figure 13.32 New state at the sender site after receiving a SACK chunkTCP/IP Protocol Suite 64
  65. 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 NotificationTCP/IP Protocol Suite 65