王亮 高晓佳 王宏国 佟冬
摘要 不同的数据链路之问若要通信必须采取网络地址协议,D-L(数据链路)层根据相同数据流进行分类标记,根据不同D-L层不同的特征进行抽象,D-L的地址被抽象为网络地址。对IP的上一层,不管二层D-L层使用以太网还是无线局域网或点对点控制,都被当作一种处理手段和方式,大规模网络技术的研究是当前研究的热点话题,对未来人工智能、大数据运算、云服务技术等均有重要的意义和作用,如何将大规模网络运用好,是掌握各个关键主流技术的基石,因此研究IP分割及自构成处理是主要研究的关键技术。
【关键词】大规模 IP分割 自构成处理 技术研究
不同D-L传输时,它们最大区别就是传输单元( MTU:maximum transmission unit)不同,在数据包发送和接收过程大小限制一致。MTU值在以太网中是1500 Bytes,传输层在某种情况会要求传送比这些传输单元更多字节的DATA,因此需传输链路上传送更小的MTU。因此,需要IP Fragmentation分割IP处理,将大IP Packet分成更多更小的IP Packet,需要按照源地址发送长度的数据包。IP以此方式抽象数据链路层,使网络层间通信不必关注底层构建细节,形成真正意义上的大规模IP分割与自构成处理机制策略1。
1 MTU相异性
1.1数据链路的MTU
每种数据链路的最大传输单元是相异的2,因为每个不同类型的数据链路使用目的不同,不同目的的数据链路可承载的MTU值即不同,它必须受限于被IP抽象化底层的数据链路。如表1所示。
1.2 IP报文分割与重组
互联网络中的主机均需对IPFragmentation处理2,Fragmentation通常在网络中碰到较大报文时无法一次发送而采取的处理机制。Ethernet默认最大传输单元为1 500字节,那么4555字节的IP数据包无法在承载现有这么大的数据帧通过,因此路由将IP Packet分成3个Fragmentation发送,这种处理机制需路由根据必要性措施处理,根据此情况进行处理。经过Fragmentation之后的IP Packet被重组封装时,由目的主机进行重新整合,路由器能够Fragmentation,但它自身允许进行重组成完整的包。
2重组与分割的特殊情况
在D-L链路中,根本无法控制IP Packet是否经过相同路径发送,Route waiting,Packet或许已经达目的节点,拆分后的每个包及其有可能在传输过程missing,在路径传输过程中即时被重新组装,如果在下一站在经过路由时,还会面临继续被再次分片可能,由此多节点的路由带来多余的重组负担,降低网络传送效率,因此在终节点端重组分片的IP数据报成为现在的规范。IP首部中的“片偏移”字段表示分片之后每个分片在用户数据中的相对位置和该分片之后是否仍有后续其他分片,根据这个SEGMENT可以判断一个IP数据报文是否分片以及当前分片为整个数据报文的起始、中段或是结尾,数字代表数据长度,单位规定为字节。
3 IP路径最大传输单元发现
3.1解决大规模IP分割“路徑MTU发现”
分片机制的不足在于2,路由器的CPU负荷加重,我国对降费提速的要求提出,计算机网络传输带宽不断上升,这些高速链路对计算机网络和路由本身提出了更高的要求。国家不仅在带宽上提出要求,在网络安全方面更是号召“没有网络安全,就没有国家安全”,那么路由器需要做的其他处理也就越来越多,如“包过滤”。因此,未来是不希望路由进行IP数据包进行分割处理的。当然这是路由CPU自身限制和大规模网络中间节点路由较多等诸多因素导致的。
综合以上因素,提出一种新技术“PATHMTU DISCOVERY”,代表:发送端源PC到接收端目的PC无需分片是MTU的大小,PATH中存在所有D-L中最小传输单元。
UDP路径最大传输单元发送机制:
(1)发送IP首部的分割标志设置不分割,路由丢包。
(2)有ICMP通知下一次MTU的大小。
(3)用户数据报没有重发处理,应用在发送下一个消息时会被分割,具体说,指UDP层传过来的“用户数据报文首部+用户数据报文本身”在网络层分割,对于IP,它并不区分用户数据包首部和应用的数据。
(4)所有的分割到达目标主机后被MTU发现且重组,在传送用户数据报层。
路径最大传输单元发现过程:
首先,在源主机发送IP数据报文时2,将其首部的分割标志位设置为1,根据这个标志位,路径中的路由即时遇到需要分割才能处理的大数据包,也不会去分割,而是将报丢弃,之后通过一个ICMP的不可抵达消息将数据链路上最大传输单元的值发送回源主机。
其次,当发送给同一个目标主机的IP数据包获得ICMP所通知的最大传输单元值以后,将它设置为当前最大传输单元。源主机即根据这个MTU进行数据包分割,当数据包被发送到目的主机为止无接收任何网络控制消息报文时,则认为ICMP所通告的MTU是最优的最大传输单元值。当MTU较多时,可以缓存约10分钟,超过10分钟后,链路上的MTU做新的最大传输单元发现,如此反复。
TCP路径最大传输单元发送机制:
首先,根据路径最大传输单元的大小计算出MSS最大长段,根据此情况进行数据报文的发送,在TCP中采用路径最大传输单元发现,IP层则不会再进行各个处理。
(1)发送IP首部的分割标志设置为不分割,路由丢包4。
(2)有互联网控制消息报文通知下一次最大传输单元的大小。
(3)根据TCP重传机制,PACKET会被重传,TCP负责将data分割成网络层不会再分割粒度,之后传给网络层,此时不再分割处理。
(4)无需重组,数据被原样发送给目的主机TCP Layer。
注意的是:当网络安全控制策略产生时,有些区域会限制ICMP的消息接收。而实际
是一定会存在这种情况,此时路径最大传输单元发现的功能因此无法正常运行,造成最终用户不明原因,导致连接不稳定,因此这是网络管理者需要注意的问题。
研究发现:最近以太网也可以使用大于1500BYTES的最大传输单元,这种方式叫做超长帧的格式JUMPO FRAME,为了提高大规模服务器主机的通讯速度,采用9KB左右的MTU的情况较多,使用J-F不仅要对应网段的主机,还需要路由、交换支持。在不适用J-F的情况下,经IP隧道也能够通过路径中的路由实现,1.5KB以上的MTU通信,避免过多的IP碎片化,通过特殊的路由交换适当扩大MTU是可行的;
3.2自构成处理中的拥塞控制
(1)拥塞避免和慢启动3,传输控制发送端使用拥塞避免和慢启动来抑制向网络输送的数据,拥塞窗口的发送方在确认帧之前向网络发送MAX数据。慢启动闽值确定慢启动算法还是拥塞避免算法来控制数据传送,不清楚环境下,向网络传送数据,要求传出控制协议缓慢的探测网络进行流量确定,避免大流量使网络拥塞。
(2)快速重传快速恢复,当地3个确认帧收到时,设置慢启动阈值=拥塞窗口/2,重传丢失数据段设置拥塞窗口=慢启动阂值+3*发送端最大数据段尺寸,对每个接受的重复确认帧,将拥塞窗口增大SMSS,扩充拥塞窗口反应已经离开网络的附加SEGAMENT,发送一个数据段,如果拥塞窗口和接收的通知窗口的值允许,确认新数据的确认帧到达,设置拥塞窗口值为慢启动。
4结语
大规模网络工程集成技术中需要考虑网络IP的规划与分割问题,而自构成处理技术中的路径MTU发现是网络系统集成中核心与关键的技术之一,随着网络系统的升级与发展,技术也在不断更新,以专业的角度去分析和构建大规模网络势在必行,常规的高级网络规划设计人员可能在思科、华为等纯技术层面没有任何问题4,在考虑基础网络核心发展的前沿阶段,随着网络协议,终端设备与操作系统的升级与发展,势必回头看策略是网络构建人员的响应措施,应该审视当下新理论的发展,需要我们再次去论证和讨论如何与现有大规模网络环境对接、实施与校驗有待研讨商榷,理论+实践的资源挖掘与整合是解决实际大型系统工程问题中必要考虑的问题。
参考文献
[1]胡雪.协同创新视角下高校科技成果转化影响模式研究[J].长春师范大学学报,2018 (09):118-120.
[2]肖融,孙波,途中无重组的隧道MTU机制研究[J].计算机工程与应用,2010 (17): 92-95+149.
[3]竹下隆史,图解TCP/IP [M],人民邮电出版社,2013 (07).
[4]胡亮,计算机网络(第2版)[M],高等教育出版社,2008 (01).
[5]王亮,唐永林,基于ROS构建大型.校园网应用研究[J].情报科学,2017 (07): 88-95