我最近查阅了 Richards Stevens 的《UNIX Network Programming, Vol. 1》一书,发现除了 TCP 和 UDP 之外还有第三种传输层标准: SCTP 。
总结:SCTP 是一种传输层协议,它像 UDP 一样是消息驱动的,但像 TCP 一样可靠。这是来自 IBM DeveloperWorks 的简短介绍。
老实说,我以前从未听说过 SCTP。我不记得在任何网络书籍中读过它或在我上过的课程中听说过它。
为什么 SCTP 如此不为人知? 为什么用的不多?
事实上,SCTP 主要用于电信领域。传统上,电信交换机使用 SS7(7 号信令系统)来互连电信网络中的不同实体。例如- 电信提供商的用户数据库(HLR),带有交换机(MSC),用户也被连接(MSC)。
电信领域正在向更高速度和更可达的环境发展。其中一项更改是用一些更优雅、快速和灵活的基于 IP 的协议来替换 SS7 协议。
电信领域非常保守。SS7 网络已经在这里使用了几十年。这是一个非常可靠和封闭的网络。这意味着普通用户无法访问它。
相比之下,IP 网络是开放且不可靠的,如果它至少不能处理 SS7 处理的负载,电信将不会转换为它。这就是开发 SCTP 的原因。它尝试:
最新版本的 Linux 已经支持 SCTP。