Documente Academic
Documente Profesional
Documente Cultură
John Rumsey
Senior Systems Engineer
LongReach Networks
Softswitch or
Media Gateway Controller
TeS
Media Gateway
Control Protocol
Legacy ISDN Legacy ISDN
Subscriber IP Network Subscriber
PBX
PBX
MGW MGW
Media Media
Gateway Gateway
Softswitch or
Media Gateway Controller
TeS
Media Gateway
Control Protocol
Legacy ISDN Legacy ISDN
Subscriber IP Network Subscriber
PBX
PBX
MGW MGW
Media Media
Gateway Gateway
Softswitch or
Media Gateway Controller
TeS
Media Gateway
Control Protocol
Legacy ISDN Legacy ISDN
Subscriber IP Network Subscriber
PBX
PBX
MGW MGW
Media Media
Gateway Gateway
Softswitch or
Media Gateway Controller
TeS
Media Gateway
Control Protocol
Legacy ISDN Legacy ISDN
Subscriber IP Network Subscriber
PBX
PBX
Voice Connection
MGW MGW
Media Media
Gateway Gateway
MGW TeS
Media Softswitch or
Gateway Media Gateway
MGW Controller
Good Points
• Provides Reliable, In-Sequence delivery of data packets
• Supports Congestion Control and Avoidance Features
Bad Points
• TCP transports a byte stream which must be delivered in order
• Doesn’t Support Multistreaming
• Vulnerable to Denial of Service Attacks
• Doesn’t support Multihoming or Path Monitoring
PBX Signalling
PBX
Media Softswitch or
Gateway Media Gateway
Controller
Supports the good aspects of TCP and fixes the bad aspects of TCP
Signalling Gateway
SCTP
PBX
MGW TeS
Media Softswitch or
Gateway Media Gateway
Controller
PBX
PBX
Signalling Gateway
PBX
SCTP
PBX
PBX
MGW TeS
PBX
Media Softswitch or
PBX
Controller
PBX
PBX
PBX
Signalling Gateway
PBX
xUA / SCTP
PBX
PBX
MGW TeS
PBX
Media Softswitch or
PBX
Controller
PBX
IP Network Transport
IP Network IP Network
Service Service
Destination
Checksum
Verification
Source
Length
Length
Flags
Flags
Value
Value
Type
Type
Port
Port
Tag
N 2 1 1 N 2 1 1 4 4 2 2
Destination
Checksum
Verification
Source
- 2 per Association
Port
Port
Tag
- To Validate the sender
Checksum
- Protected by 32 bit checksum (CRC32 4 4 2 2
algorithm)
Destination
Checksum
Verification
Source
Length
Length
Flags
Flags
Value
Value
Type
Type
Port
Port
Tag
N 2 1 1 N 2 1 1 4 4 2 2
Type
Length
- Required because chunks have a variable
length
N 2 1 1
Value
- Payload field
Type
SCTP SCTP
Endpoint A Endpoint B
INIT chunk
CLOSED STATE CLOSED STATE
COOKIE-WAIT
INIT-ACK chunk (contains COOKIE)
COOKIE-ECHO chunk
COOKIE-ECHOED
COOKIE-ACK chunk
ESTABLISHED ESTABLISHED
DATA chunk(s)
SCTP SCTP
Endpoint A Endpoint B
INIT chunk
CLOSED STATE CLOSED STATE
COOKIE-WAIT
Initiate Tag
Optional/Variable-Length Parameters
IPv4 Address
SCTP SCTP
Endpoint A Endpoint B
INIT chunk
CLOSED STATE CLOSED STATE
COOKIE-WAIT
INIT-ACK chunk
Initiate Tag
Optional/Variable-Length Parameters
Parameter Value
SCTP SCTP
Endpoint A Endpoint B
INIT chunk
CLOSED STATE CLOSED STATE
COOKIE-WAIT
INIT-ACK chunk (contains COOKIE)
COOKIE-ECHO chunk
COOKIE-ECHOED
Cookie
SCTP SCTP
Endpoint A Endpoint B
INIT chunk
CLOSED STATE CLOSED STATE
COOKIE-WAIT
INIT-ACK chunk (contains COOKIE)
COOKIE-ECHO chunk
COOKIE-ECHOED
• Endpoint B unpacks the data contained in the COOKIE and uses the
Message Authentication Code (MAC) to verify whether it was the originator of
this COOKIE
• If the MAC computes OK, the data values contained in the COOKIE are
used to initialise the SCTP instance
SCTP SCTP
Endpoint A Endpoint B
INIT chunk
CLOSED STATE CLOSED STATE
COOKIE-WAIT
INIT-ACK chunk (contains COOKIE)
COOKIE-ECHO chunk
COOKIE-ECHOED
COOKIE-ACK chunk
ESTABLISHED ESTABLISHED
SCTP SCTP
Endpoint A Endpoint B
ESTABLISHED DATA chunk(s) ESTABLISHED
STATE STATE
SCTP SCTP
Endpoint A Endpoint B
ESTABLISHED DATA chunk ESTABLISHED
STATE STATE
SACK chunk
SCTP SCTP
Endpoint A Endpoint B
DATA chunk TSN=100
DATA chunk TSN=101
DATA chunk TSN=102
DATA chunk TSN=103
DATA chunk TSN=104
DATA chunk TSN=105
DATA chunk TSN=106
DATA chunk TSN=107
DATA chunk TSN=108
SACK chunk Cumulative TSN=108
• Special Cases
− Restart of an Endpoint where it uses a new tag value
− Both endpoint send an INIT chunk at about the same time
− Excessive delay of Cookie chunks
SCTP SCTP
Endpoint A Endpoint B
ESTABLISHED DATA chunk(s) ESTABLISHED
STATE STATE
SCTP SCTP
Endpoint A Endpoint B
ESTABLISHED Payload Data chunk(s) ESTABLISHED
STATE STATE
SCTP SCTP
Endpoint A Endpoint B
ESTABLISHED Payload Data chunk(s) ESTABLISHED
STATE STATE
SCTP SCTP
Endpoint A Endpoint B
ESTABLISHED Payload Data chunk(s) ESTABLISHED
STATE STATE
SCTP SCTP
Endpoint A Endpoint B
ESTABLISHED Payload Data chunk(s) ESTABLISHED
STATE STATE
Error Cause
INIT
IP address A1 1 IP address B1
INIT ACK
SCTP SCTP
Endpoint A Endpoint B
IP address A2 2 IP address B2
DATA DA
IP address A1 1 IP address B1
SACK
SCTP SCTP
Endpoint A Endpoint B
IP address A2 2 IP address B2
DATA
IP address A1 1 IP address B1
SCTP SCTP
Endpoint A Endpoint B
DATA
IP address A2 2 IP address B2
SACK
Out of Service
IP address A1
X 1 IP address B1
SCTP SCTP
Endpoint A Endpoint B
DATA DA
IP address A2 2 IP address B2
SACK
Heartbeat
IP address A1 1 IP address B1
Heartbeat Ack
SCTP SCTP
Endpoint A Endpoint B
Heartbeat
IP address A2 2 IP address B2
Heartbeat Ack
Slow Start
Threshold The Congestion Control Window
dictates how many Data Chunks
can be transmitted before you must
wait for an Acknowledgement
DATA
SCTP SCTP
Endpoint A Endpoint B
Slow Start
Threshold If packets are being successfully delivered
and acknowledged. The Congestion
Control Window will be increased.
DATA DATA
SCTP SCTP
Endpoint A Endpoint B
Slow Start
Threshold If lost packets are being experienced,
Slow Start
Threshold the Congestion Control Window will
be reset, and the Slow Start
Threshold may be lowered.
DATA
SCTP SCTP
Endpoint
SACK
SACK A Endpoint B
DATA DATA
SCTP SCTP
Endpoint
SACK
SACK A Endpoint B
• RFC 3436 describes the usage of the Transport Layer Security (TLS)
protocol, as defined in RFC 2246, over the Stream Control
Transmission Protocol (SCTP)