第4层协议:SCTP与DCCP详解
1. 数据传输与SCTP协议概述
在数据从用户空间复制到SKB(套接字缓冲区)的过程中,涉及多个变量和方法。如下代码片段展示了部分变量的定义:
int iovlen, flags, err, copied = 0;
int mss_now = 0, size_goal, copied_syn = 0, offset = 0;
bool sg;
long timeo;
当SKB构建完成后,会通过 tcp_push_one() 方法发送,该方法调用 tcp_write_xmit() ,进而调用 tcp_transmit_skb() 方法。
接下来重点介绍SCTP(流控制传输协议),它结合了TCP和UDP的特点,且比二者更新。SCTP在2000年首次被提出,2007年的RFC 4960对其进行了详细规范。它最初是为公共交换电话网(PSTN)在IP网络上的信令设计的,但也可用于其他应用。例如,LTE(长期演进)就使用了SCTP,因为它能快速检测链路故障或丢包情况,而TCP不具备这一特性。
SCTP的重要特性如下:
- 结合TCP和UDP特点 :像TCP一样是可靠的传输协议,具备拥塞控制;像UDP一样是面向消息的协议,而TCP是面向流的。
- 增强的安全性 :采用4次握手(相比TCP的3次握手),可防范SYN洪泛攻击。
- 支持多宿主
超级会员免费看
订阅专栏 解锁全文
524

被折叠的 条评论
为什么被折叠?



