[发明专利]一种面向IPv6的路径MTU发现方法及系统有效
申请号: | 200910084026.8 | 申请日: | 2009-05-12 |
公开(公告)号: | CN101552728A | 公开(公告)日: | 2009-10-07 |
发明(设计)人: | 肖融;孙波;何珺;肖永康;胡晓雁 | 申请(专利权)人: | 北京师范大学 |
主分类号: | H04L12/56 | 分类号: | H04L12/56;H04L29/06 |
代理公司: | 北京路浩知识产权代理有限公司 | 代理人: | 张国良 |
地址: | 100875北*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 面向 ipv6 路径 mtu 发现 方法 系统 | ||
技术领域
本发明涉及互联网IP路由器结构设计领域,特别是涉及一种面向IPv6的路径MTU发现方法及系统。
背景技术
Internet网络中,不同的链路会有一个对应的最大传输单元(Maximum Transmission Unit,MTU),该链路上承载的报文长度不能大于对应的MTU。国际网络通信协议第四版(Internet Protocal version 4,IPv4)的MTU机制规定,IP报文可以在传输路径上的中间节点上进行分片,最后所有的分片在到达目的地后进行重组。国际网络通信协议第六版(Internet Protocol version 6,IPv6)的MTU机制在IPv4的基础上有了较大的改进,IPv6分片只能在发送端产生,不允许转发路径上的任何路由器对报文进行分片。网络控制报文协议(Internet Control Messages Protocol version 6,ICMPv6)增加了类型为2的“报文太大”差错消息协助MTU机制的实施。当中间转发节点发现下一跳链路的MTU小于待转发报文长度时,会向源节点发送“报文太大”差错消息通告该链路的MTU值,源节点将减小报文长度继续发出。此过程可能多次进行,源节点最终学习到整个转发路径上最小的链路MTU,这就是IPv6的路径MTU发现过程。
IPv6路径MTU发现机制使得源节点有可能需要较长时间才能学习到整个路径的最小链路MTU。也就是说,源节点发出的某一个流的第一个报文有可能需要较长时间才能顺利到达目的节点。另一方面,IPv6的路径MTU发现过程中,也有较多的ICMPv6差错报文在互联网上传播,增加了网络带宽。然而,随着互联网的发展,已有大量时间敏感的应用出现,如VoIP、流媒体等。而且,带宽负载过重也是互联网面临的一个严峻考验。
所以,在对现有网络设备较少改造的前提下,面对IPv6网络设计一种快速、轻负载的新型路径MTU发现机制,将对改善互联网状况具有非常重要的意义。
发明内容
本发明的目的是提供一种面向IPv6的路径MTU发现方法,为达到上述目的,本发明的技术方案提供一种面向IPv6的路径MTU发现方法,所述方法由源节点通过若干中间转发节点向目的节点发送报文,所述目的节点接受到所述报文后确定路径MTU并通告源节点,所述中间转发节点根据所接收到的报文获取出接口链路,并对待转发报文的长度进行判断,当待转发报文的长度大于出接口链路MTU值时,修改报文内容及长度后再转发。
其中,当待转发报文的长度大于出接口链路MTU值时,按照下述步骤修改报文内容:
S1,判断IP头中上层协议号是否为未知协议号255,如果否,则修改上层协议号为255,如果是,则转步骤S2;
S2,修改IP头中净荷长度为M-40,其中M为出接口链路MTU值;
S3,删去从IP头开始M字节之后的报文内容,使得IP包长度等于M。
其中,当待转发报文的长度不大于出接口链路MTU值时,正常转发。
其中,源节点发送报文的路径MTU初始值为出接口的链路MTU值。
其中,所述目的节点接收到报文,通过对上层协议号分析对报文进行如下处理:
如果IP头中上层协议号不是未知协议号255,则交给上层协议模 块进行处理;
如果IP头中上层协议号是未知协议号255,则向源节点发送“参数错误”的ICMPv6报文,ICMPv6报文携带原始IP报文的IP头部发送。
其中,源节点收到目的节点发来的ICMPv6报文后,分析内嵌原始IP报头,若内嵌IP报头的上层协议号为255,则修改本地到该内嵌IP头部中目的地址的路径MTU为内嵌IP头中的净荷长度加上40,即源节点获得到该目的地址的路径MTU。
本发明的另一目的是提供一种面向IPv6的路径MTU发现系统,为达到上述目的,本发明的技术方案提供一种面向IPv6的路径MTU发现系统,所述系统包括:
源节点,通过若干中间转发节点向目的节点发送报文,
目的节点,接收到所述报文后确定路径MTU并通告源节点,所述系统的中间转发节点包括:
判断子单元,所述中间转发节点根据所接收到的报文获取链路后,判断子单元对待转发报文的长度进行判断;
修改子单元,当待转发报文的长度大于链路MTU值时,修改报文内容后再转发。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京师范大学,未经北京师范大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200910084026.8/2.html,转载请声明来源钻瓜专利网。