System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种报文分片方法、装置、系统和存储介质制造方法及图纸_技高网

一种报文分片方法、装置、系统和存储介质制造方法及图纸

技术编号:40418666 阅读:6 留言:0更新日期:2024-02-20 22:36
本发明专利技术公开了一种报文分片方法、装置、系统和存储介质,通过解析待转发报文获得出口网络接口和第一报文长度,并调取出口网络接口对应的出口MTU值与第一报文长度进行对比,确定出口MTU值是否大于第一报文长度,若确定出口MTU值小于或等于第一报文长度,则对待转发报文进行分片处理,获得若干条分片报文,并将上述多条分片报文发送至出口网络接口,实现对待转发报文的分片转发处理。本发明专利技术通过对由于报文长度存在问题无法转发的报文进行分片转发处理,实现了超长报文的转发处理,提高系统报文转发的成功率和准确性。

【技术实现步骤摘要】

本专利技术涉及网络通信,尤其涉及一种报文分片方法、装置、系统和存储介质


技术介绍

1、由于组网拓扑的需求,需要cpe与其他设备搭建二层隧道并且加入网桥,为下挂设备提供一种透明传输以太网报文的通道,与此同时通常引入一个新的问题:一般建立以太网二层隧道通常由于隧道需要一些额外的字节开销。因此,当下挂设备发送的报文长度接近或等于mtu值,并被传输到cpe设备时,因为cpe设备需要对报文进行二层隧道封装,导致封装后报文超过其underlay网络的出口mtu的大小,从而导致报文无法被网桥转发而被丢弃。

2、现有技术针对上述问题的解决方法多为手动调节下挂设备的mtu,然而,若是手动调整mtu,则存在无法区分不同类型的网络接口其外层封装不同的情况。


技术实现思路

1、本专利技术提供了一种报文分片方法、装置、系统和存储介质,以实现将超长待转发报文进行分片转发至对应网络接口,降低报文丢弃率的技术效果。

2、为了解决上述技术问题,本专利技术提供了一种报文分片方法,包括以下步骤:

3、接收并解析待转发报文,获得所述待转发报文对应的出口网络接口以及所述待转发报文的第一报文长度,并调取所述出口网络接口的出口mtu值,进而确定所述出口mtu值是否大于所述第一报文长度;

4、若确定所述出口mtu值小于或等于所述第一报文长度,则对所述待转发报文进行分片处理,获得若干条分片报文,并将所述若干条分片报文传输至所述出口网络接口处,以使所述出口网络接口分别对所述若干条分片报文进行转发处理。

5、本专利技术提供的报文分片方法在接收并解析了待转发报文之后,将根据解析获得的该待转发报文的出口网络接口,并调取该出口网络接口对应的出口mtu值,然后将待转发报文的第一报文长度和出口mtu值进行对比,进而确定该待转发报文是否能直接被完整从所述出口网络接口转发至目的终端,系统则根据对比结果确定是否需要对该待转发报文进行分片转发处理。通过上述对比判断过程,避免了直接对待转发报文进行转发,却由于待转发报文的报文长度超过出口网络接口的mtu值导致该待转发报文被丢弃,提高了报文转发的成功率和效率。

6、当系统通过第一报文长度和出口mtu值的对比结果确定了需要对待转发报文进行分片处理后,系统则通过预设的分片方法对所述待转发报文进行分片处理,并将分片后生成的若干条分片报文传输至出口网络接口处,由出口网络接口按照待转发报文的目的地址对若干条分片报文进行转发处理,以此实现对超长报文的转发处理,提高系统报文转发的成功率和准确性。

7、作为优选例子,所述对所述待转发报文进行分片处理,获得若干条分片报文,具体为:

8、根据所述出口mtu值确定每个分片报文的报文极限长度,并根据确定的所述报文极限长度和所述第一报文长度确定所述若干条分片报文的分片数量;

9、按照确定的所述分片数量对所述待转发报文进行分片处理,并根据所述待转发报文的源地址设置每条分片报文的源地址,根据所述待转发报文的目的地址设置每条分片报文的目的地址,进而整合获得所述若干条分片报文。

10、为了进一步提高系统对超长报文的转发效率和转发成功率,降低超长报文被丢弃的概率,本专利技术提供的报文分片方法在确定了待转发报文为无法被直接转发的超长报文后,则需要对所述待转发报文即超长报文进行分片处理,系统将根据该待转发报文对应的出口网络接口的出口mtu值确定每个分片报文的报文极限长度,即去掉报文中必须存在的报文头部所要占据的空间,每个符合出口网络接口转发要求的分片报文的有效数据长度即所述报文极限长度。

11、在确定了所述报文极限长度之后,系统便根据该极限长度和待转发报文的第一报文长度对待转发报文中的数据进行分割,进而根据切割的次数确定生成的分片报文的分片数量。切割即划分完成后,系统还将对每个划分而成的分片报文的源地址和目的地址进行相应调整,即将每个分片报文的源地址与目的地址均调整成与待转发报文一致的地址,以此实现对待转发报文的分片处理,获得若干条分片报文。

12、作为优选例子,在所述确定所述出口mtu值小于或等于所述第一报文长度之后,还包括:

13、对所述待转发报文的报文类型进行判断,获得相对应第一判断结果;

14、若所述第一判断结果为所述待转发报文为ipv4报文,则在对所述待转发报文进行分片处理计算确定分片数量时,每条分片报文的报文极限长度均需减去第一头部的长度;

15、若所述第一判断结果为所述待转发报文为ipv6报文,则在对所述待转发报文进行分片处理计算确定分片数量时,每条分片报文的所述报文极限长度均需减去第一头部和第一分片头部的长度。

16、为了进一步提高报文分片转发的成功率,本专利技术所提供的报文分片方法在确定待转发报文为超长报文需要对其进行分片后,还将对待转发报文进行报文类型的判断,在根据确定的报文类型对待转发报文生成的多条分片报文在计算确定分片数量时,作为参考数据的报文极限长度需要减去的长度。

17、若判断确定待转发报文为ipv4报文,则说明该报文分片后的每一条分片报文均为ipv4报文,而ipv4报文则只包括一个报文头部,因此系统在根据报文极限长度计算确定分片数量时,其作为参考数据的报文极限长度需减去一个报文头部的长度;而若是判断确定待转发报文为ipv6报文,则说明该报文分片后每一条分片报文均为ipv6报文,而ipv6报文相比较于ipv4报文则包括了两个报文头部,因此系统在根据其报文极限长度进行分片时,则需减去两个头部的长度,即在减去一个第一头部的长度之后还需减去一个分片头部的长度。通过上述报文极限长度确定方法对报文极限长度进行确认后,即可提高生成的分片报文被出口网络接口转发的成功率,同时也降低了分片报文出现错误被丢弃的概率。

18、作为优选例子,在所述确定所述出口mtu值是否大于所述第一报文长度之后,还包括:

19、若确定所述出口mtu值大于所述第一报文长度,则解析并获得所述待转发报文的报文类型,并对所述报文类型进行判断,根据第二判断结果确定所述待转发报文是否符合转发要求;

20、若所述第二判断结果为所述报文类型符合转发要求,则将所述待转发报文传输至所述出口网络接口处,以使所述出口网络接口对所述待转发报文进行转发处理;

21、若所述第二判断结果为所述报文类型不符合转发要求,则对所述待转发报文进行丢弃处理。

22、在确定出口网络接口的出口mtu值大于第一报文长度,即待转发报文满足出口网络接口的转发标准后,系统还将对待转发报文进行报文类型的判断,确定待转发报文的报文类型是否符合出口网络接口的报文转发要求,只有通过上述两项判断,系统才会将所述待转发报文转发至出口网络接口处,由出口网络接口对待转发报文进行转发处理。

23、而若是判断报文类型不符合转发要求,则即便待转发报文的第一报文长度小于出口mtu值,系统也不会将待转发报文转发至出口网络接口,而是将其丢弃。

24、相应的本文档来自技高网...

【技术保护点】

1.一种报文分片方法,其特征在于,包括以下步骤:

2.如权利要求1所述的一种报文分片方法,其特征在于,所述对所述待转发报文进行分片处理,获得若干条分片报文,具体为:

3.如权利要求1所述的一种报文分片方法,其特征在于,在所述确定所述出口MTU值小于或等于所述第一报文长度之后,还包括:

4.如权利要求1所述的一种报文分片方法,其特征在于,在所述确定所述出口MTU值是否大于所述第一报文长度之后,还包括:

5.一种报文分片装置,其特征在于,所述报文分片装置包括报文接收模块和报文分片模块;

6.如权利要求5所述的一种报文分片装置,其特征在于,所述报文分片模块对所述待转发报文进行分片处理,获得若干条分片报文,具体为:

7.如权利要求5所述的一种报文分片装置,其特征在于,所述报文分片模块在所述确定所述出口MTU值小于或等于所述第一报文长度之后,还包括:

8.如权利要求5所述的一种报文分片装置,其特征在于,所述报文接收模块在所述确定所述出口MTU值是否大于所述第一报文长度之后,还包括:

9.一种报文分片系统,其特征在于,所述报文分片系统包括存储器、处理器以及存储在所述存储器上并在所述处理器上运行的计算机程序,所述处理器处理所述计算机程序时实现如权利要求1-4任一项所述的一种报文分片方法。

10.一种存储介质,其特征在于,所述存储介质上存储有计算机程序,所述计算机程序被处理器调用并执行,实现如上述权利要求1-4任一项所述的一种报文分片方法。

...

【技术特征摘要】

1.一种报文分片方法,其特征在于,包括以下步骤:

2.如权利要求1所述的一种报文分片方法,其特征在于,所述对所述待转发报文进行分片处理,获得若干条分片报文,具体为:

3.如权利要求1所述的一种报文分片方法,其特征在于,在所述确定所述出口mtu值小于或等于所述第一报文长度之后,还包括:

4.如权利要求1所述的一种报文分片方法,其特征在于,在所述确定所述出口mtu值是否大于所述第一报文长度之后,还包括:

5.一种报文分片装置,其特征在于,所述报文分片装置包括报文接收模块和报文分片模块;

6.如权利要求5所述的一种报文分片装置,其特征在于,所述报文分片模块对所述待转发报文进行分片处理,获得若干条分片报文,具体为:<...

【专利技术属性】
技术研发人员:王永勇侯宇鑫黄振江
申请(专利权)人:广州通则康威科技股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1