0% found this document useful (0 votes)
135 views

Process-to-Process Delivery: SCTP

Computer Network

Uploaded by

salamudeen M S
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
135 views

Process-to-Process Delivery: SCTP

Computer Network

Uploaded by

salamudeen M S
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
You are on page 1/ 44

Chapter 24

Process-to-Process Delivery:
SCTP

23.1 Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
23-4 SCTP

Stream Control Transmission Protocol (SCTP) is a


new reliable, message-oriented transport layer
protocol. SCTP, however, is mostly designed for
Internet applications that have recently been
introduced (Audio/Video). These new applications
need a more sophisticated service than TCP can
provide.
Topics discussed in this section:
SCTP Services and Features
Packet Format
An SCTP Association
Flow Control and Error Control
23.2
Note

SCTP is a message-oriented, reliable


protocol that combines the best features
of UDP and TCP.

23.3
Table 23.4 Some SCTP applications

23.4
Figure 24.38 Multiple-stream concept

23.5
Note

An association in SCTP can involve


multiple streams.

23.6
Figure 23.28 Multihoming concept

23.7
Note

SCTP association allows multiple IP


addresses for each end.

23.8
SCTP features
 Full Duplex communication
 Connection oriented
 Reliable service
 Unit of data : Data Chunk
 can be fragmented

23.9
Note

In SCTP, a data chunk is numbered


using a TSN in its header (Transmission
Sequence Number).
32 bits long
0 and 232 − 1.

23.10
Note

To distinguish between different


streams, SCTP uses an SI (Stream
Identifier)
16 bit number
starts with 0.

23.11
Note

To distinguish between different data


chunks belonging to the same stream,
SCTP uses SSNs (Stream Sequence No).

23.12
Note

TCP has segments; SCTP has packets.

23.13
Figure 23.29 Comparison between a TCP segment and an SCTP packet

23.14
Note

A connection in SCTP is called an


association.

23.15
Note

In SCTP, control information and data


information are carried in separate
chunks.
SCTP sends as packets, packets may
contain many chunks and chunks may
be assigned to different streams

23.16
Example
 B sends 11 messages
 First four messages : 1st stream
 Second three messages: 2nd stream
 Last three messages: 3rd stream

23.17
Figure 23.30 Packet, data chunks, and streams

23.18
Note

Data chunks are identified by three


items: TSN, SI, and SSN.
TSN is a cumulative number identifying
the association; SI defines the stream;
SSN defines the chunk in a stream.

23.19
Note

In SCTP, acknowledgment numbers are


used to acknowledge only data chunks;
control chunks are acknowledged by
other control chunks if necessary.

23.20
Figure 23.31 SCTP packet format

matches a packet with an association.


Verification
Identifier for the association

23.21
23.22
Note

In an SCTP packet, control chunks come


before data chunks.

23.23
Table 23.5 Types of Chunks

23.24
Control chunks pair
 INIT paired with INIT ACK
 DATA paired with SACK
 COOKIE ECHO paired with COOKIEACK
 HEARTBEAT paired with HEARTBEATACK
 SHUTDOWN paired with SHUTDOWNACK

23.25
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.

23.26
Figure 23.33 Four-way handshaking (Association establishment)

23.27
Note

In SCTP, only DATA chunks


consume TSNs;
DATA chunks are the only chunks
that are acknowledged.

23.28
Data transfer
 Each message coming from the process is
treated as one unit and inserted into Data
chunk
 If the message is longer, it is fragmented
into multiple data chunks
 Each data chunk has TSN

23.29
Figure 23.34 Simple data transfer

23.30
Note

The acknowledgment in SCTP defines


the cumulative TSN, the TSN of the last
data chunk received in order.

23.31
Figure 23.35 Association termination

23.32
To be followed

SCTP: FLOW CONTROL &


ERROR CONTROL…

23.33
Figure 23.36 Flow control, receiver site

23.34
Flow control at receiver side
 When a site received a data chunk, it
stores at the end of the buffer
 Subtracts the size of chunk from winsize.
 Stores TSN number in cumTSN variable
 When a process reads a chunk
 Removes it from the queue
 Adds the size of the chunk to winsize

23.35
Flow contol at receiver side
 When a receiver sends SACK
 Checks the value of lastack
 If it is less than cumTSN , it sends cumulative
TSN number equal to cumTSN
 Also includes the value of winsize

23.36
Figure 23.37 Flow control, sender site

Outstanding: Sent but not

acknowledged

23.37
Flow control at sender site
 A chunk can be sent if size of data is less
than rwnd – intransit
 After sending, curTSN is incremented by 1
 inTransit incremented by the sent chunk size
 When SACK is received
 What should be done?

23.38
Figure 23.38 Flow control scenario

23.39
Figure 23.39 Error control, receiver site

23.40
Figure 23.40 Error control, sender site

23.41
Qn1
 In SCTP, the value of the cumulative TSN
in a sack is 23. The value of the previous
cumulative TSN in the SACK is 29, What is
the problem?

23.42
Qn2
 In SCTP, the state of a receiver is as
follows:
 The receiver queue has chunks 1 to 7, 11 to
14 and 17 to 20
 There are 1800 bytes of space in the queue
 The value of lastACK is 4
 No duplicate chunk has been received
 The value of cumTSN is 5
 Show the content of the receiving queue.

23.43
Qn3
 State of a sender is SCTP
 Sending queue has chunks 18 to 23
 The value of cumTSN is 20
 The value of the window size is 2000 bytes
 The value of inTransit is 200
 Each data chunk is 100 bytes
 How many data chunks can be sent now?
 What is the next data chunk to be sent?

23.44

You might also like