什么是 SCTP?


SCTP 代表流控制传输协议。它是一种新的可靠的面向消息的传输层协议。它通常是为当前已引入的互联网应用程序创建的。这些新应用程序包括 IUA(IP 上的 ISDN)、M2UA 和 M3UA(电话信令)、H.248(媒体网关控制)、H.323(IP 电话)和 SIP(IP 电话)等。

SCTP 结合了 UDP 和 TCP 的特性。它是一种可靠的面向消息的协议。它可以维护消息边界,同时检测丢失的信息、重复的信息和乱序的信息。它还具有拥塞控制和流量控制结构。

SCTP 的特性

SCTP 有以下各种特性:

  • 传输序列号

    TCP 中的数据组是一个字节。TCP 中发送的数据通过使用序列号对字节进行编号来控制。SCTP 中的数据单元是 DATA 块,由于碎片,它可能与来自进程的消息具有一对一关系,也可能不具有一对一关系。

  • 流标识符

    在 TCP 中,每个连接中应该只有一个流。在 SCTP 中,每个关联中可以有多个流。SCTP 中的每个流都需要使用流标识符 (SI) 进行标识。

    每个数据块都应该在其报头中携带 SI,以便当它出现在目标端时,可以将其正确地定位到其流中。51 是从 0 开始的 16 位数字。

  • 流序列号

    当数据块出现在目标 SCTP 时,它将被传递到合适的流并按正确的顺序传递。这意味着进一步的 SI,SCTP 使用流序列号 (SSN) 定义每个流中的每个数据块。
  • 数据包

    在 TCP 中,段提供数据和控制信息。数据作为一组字节携带;控制数据由报头中的六个控制标志表示。SCTP 的设计完全不同,例如数据作为数据块携带,控制数据作为控制块携带。

  • 流量控制

    与 TCP 一样,SCTP 执行流量控制以防止接收器不堪重负。

  • 错误控制

    与 TCP 一样,SCTP 执行错误控制以支持可靠性。TSN 编号和确认编号用于错误控制。

  • 拥塞控制

    与 TCP 一样,SCTP 执行拥塞控制以确定可以插入网络中的数据块数量。

更新于: 2021-11-19

2K+ 浏览量

启动您的 职业生涯

通过完成课程获得认证

开始学习
广告