TCP和SCTP
TCP与SCTP
TCP(传输控制协议)已经存在了很长一段时间,它为我们提供了在我们的计算机网络中将数据从一个点移动到另一个点的协议。尽管取得了成功,但TCP也存在许多局限性。 SCTP(流控制传输协议)在添加TCP没有的新功能时执行TCP所做的一切。
SCTP添加到混合中的第一个功能是多宿主。多宿主允许连接的两个端点声明多个接口(IP地址)。在当前使用的接口由于某种原因失败的情况下为数据提供和备用路由。从一个接口到另一个接口的转换是无缝的;因此连接不会中断。
第二个功能是多流。 SCTP可以创建可以独立使用的多个流,而不是使用单个数据流。这并没有真正提高介质的速度,但它允许数据同时到达;最小化页面完全加载的等待时间。此功能还可以防止控制数据包被数据包阻塞,就像通常在TCP中发生的那样;从而改善数据控制。
TCP非常容易受到拒绝服务攻击,这会攻击服务器的资源并阻止其他人使用它。 SCTP使用4次握手而不是TCP的3次握手启动,在整个握手结束时分配资源。因此,SCTP不易受到DoS攻击。
TCP中的数据以数据包形式出现。数据包具有特定的大小,长流将被分成适合而短的数据流被拼接在一起。这意味着必须在应用层提供消息帧,以完全识别单独的消息。 SCTP实现了消息帧,每个消息在出现时总是具有相同的大小。
最后,SCTP已将交货订单作为可选项。在许多情况下,交货订单是必要的。这就是为什么它在TCP中是强制性的。但在某些不需要排序的情况下,可以通过禁用此功能来释放资源。 SCTP通过可选的有序交付为每种情况提供灵活性。
在许多方面,SCTP优于TCP。但由于我们长期使用TCP,很难过渡到优秀的TCP。尽管如此,SCTP的优势将逐渐吸引用户的注意力。
摘要:
1. SCTP在多归属方面优于TCP 2. SCTP具有多流,而TCP则没有 3. SCTP具有启动保护功能,而TCP则没有 4. SCTP具有消息帧,而TCP没有 5.有序交付对SCTP是可选的,但与TCP无关