流控制传输协议(英语:Stream Control Transmission Protocol,缩写:SCTP)是在2000年由IETFSIGTRAN工作组定义的传输层协议。RFC 4960详细定义了SCTP,介绍文件RFC 3286

作为传输层协议,SCTP可以理解为和TCPUDP相类似的。它提供的服务有点像TCP,又同时将UDP的一些优点相结合。是一种提供了可靠、高效、有序的数据传输协议。相比之下TCP是面向字节的,而SCTP是针对成帧的消息。

SCTP主要的贡献是对多重联外线路的支持,一个端点可由多个IP地址组成,使传输可在主机间或网卡间做到透明的网络容错备援。

SCTP最初设计用于IP上传输电话协议(SS7),把SS7信令网络的一些可靠特性引入IP。IETF这方面的工作称为信令传输SIGTRAN。

SCTP将资料传给应用层的方式,是将资料视为message(bytes的集合),SCTP的特征是message-oriented,意思就是说它发送的是一串message(每一个message是byte为单位的集合),相对于TCP是以byte为单位,发送的是破碎的流。在SCTP发送端用一个动作提交消息,接收端也是用一个动作取出消息传给对应的应用程序。相较于TCP,是一个流导向的协议,可靠地且有顺序地发送以bytes为单位的流。然而TCP并不允许接收端知道发送端的应用程序调用提交bytes集合的次数。在发送端TCP只是简单的附加更多bytes在queue里等待着送到网络上,而SCTP是将要提交的outband message都保有自己独立的queue。

外部链接

编辑