SCTP 流控制传输协议(SCTP)是IETF新定义的一个传输层transport layer协议(2000)。RFC 2960详细说明了SCTP,介绍性的文档是RFC 3286。
作为一个传输层协议,SCTP可以理解为和TCP及UDP相类似的。事实上,它提供的服务有点像TCP——保证可靠、有序传输消息。同时TCP是面向字节的,而SCTP是针对成帧的消息。
SCTP主要的贡献是对多重联外线路的支持,一个端点可以由多于一个IP地址组成,使得传输可在主机间或网卡间做到透明的网络容错备援。
SCTP最初是被设计用于在IP上传输电话(SS7),把SS7信令网络的一些可靠特性引入IP。IETF的这方面的工作称为信令传输SIGTRAN。与此期间,也提出了这个协议的其他一些用途。
作为一个传输层协议,SCTP可以理解为和TCP及UDP相类似的。事实上,它提供的服务有点像TCP——保证可靠、有序传输消息。同时TCP是面向字节的,而SCTP是针对成帧的消息。
SCTP主要的贡献是对多重联外线路的支持,一个端点可以由多于一个IP地址组成,使得传输可在主机间或网卡间做到透明的网络容错备援。
SCTP最初是被设计用于在IP上传输电话(SS7),把SS7信令网络的一些可靠特性引入IP。IETF的这方面的工作称为信令传输SIGTRAN。与此期间,也提出了这个协议的其他一些用途。
SCTP:流控制传输协议
(SCTP:Stream Control Transmission Protocol) |
流控制传输协议 SCTP 主要被设计来在 IP 网络上(也能用于更宽的应用程序)传输 PSTN 信令信息 SS7/C7。SCTP 是一种执行在无连接包网络如 IP 上面的可靠传输协议,其被设计来解决 TCP 在传输实时信令和数据如网络上的信令时所存在的局限性和复杂性问题。此外 SCTP 也能运行在 UDP 层上。 SCTP 提供如下服务:
SCTP 的设计包括适当的拥塞避免行为和对攻击的泛滥和乔装的抵抗。SCTP 数据报由通用头和块构成,该块既包括了控制信息也包括了用户数据。 |
协议结构 |
16 | 32 bit |
SourcePort Number | DestinationPort Number |
Verification Tag | |
Checksum |
- Source Port Number ― SCTP 发送方的端口号。接收方结合源 IP 地址,通过使用该端口号识别数据报归属的联接。
- Destination Port Number ― 目的端口号,即 SCTP 数据报即将到达的地方。接收主机利用该端口号去解除复用 SCTP 数据报使之到达正确的接收终点/应用程序。
- Verification Tag ― 接收方使用 Verification Tag 去识别联接。在传输过程中,Verification Tag 的值必须设置为联接初始化阶段从对等终点接收到的初始值。
- Checksum ― 该字段包含一个 SCTP 数据报 Adler-32 校验和。