CN101640635A - 一种6over4隧道中避免报文重组的方法及系统 - Google Patents

一种6over4隧道中避免报文重组的方法及系统 Download PDF

Info

Publication number
CN101640635A
CN101640635A CN200910090191A CN200910090191A CN101640635A CN 101640635 A CN101640635 A CN 101640635A CN 200910090191 A CN200910090191 A CN 200910090191A CN 200910090191 A CN200910090191 A CN 200910090191A CN 101640635 A CN101640635 A CN 101640635A
Authority
CN
China
Prior art keywords
tunnel
message
router
6over4
original message
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN200910090191A
Other languages
English (en)
Inventor
肖永康
朱小明
肖融
于乐军
胡晓雁
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Normal University
Original Assignee
Beijing Normal University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Normal University filed Critical Beijing Normal University
Priority to CN200910090191A priority Critical patent/CN101640635A/zh
Publication of CN101640635A publication Critical patent/CN101640635A/zh
Pending legal-status Critical Current

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明公开了一种6over4隧道中避免报文重组的方法及系统,具体为6over4隧道中避免在隧道出口出现报文重组的方法及系统,所述方法包括:隧道入口路由器根据隧道的目的地址查找路由表,以获得报文的出接口,再根据隧道的目的地址及出接口查找隧道路径最大传输单元PMtunnel,同时根据封装类型获得隧道封装长度Lt_head;然后判断原始报文的长度是否大于最大分片长度PMtunnel-Lt_head,若是,向报文发送单元发送差错信息,通告原始报文超过最大分片长度,并通告最大分片长度为PMtunnel-Lt_head,丢弃原始报文,否则对原始报文进行隧道封装,查找所述IPv4路由表转发隧道封装后的报文至隧道出口路由器。本发明避免在6over4隧道中进行报文的分片和重组,实验表明本发明使隧道通信的性能有较大提高。

Description

一种6over4隧道中避免报文重组的方法及系统
技术领域
本发明涉及互联网技术,进一步涉及到隧道技术领域,具体为一种6over4隧道中避免报文重组的方法及系统。
背景技术
隧道技术已大量应用于因特网中,现有隧道类型包括:4over6(IPv4over IPv6)隧道、6over4(IPv6over IPv4)隧道、GRE(GeneralRouting Encapsulation,通用路由封装)隧道和L2TP(Layer TwoTunneling Protocol,第二层隧道协议)隧道等。无论那一种隧道,都具有两个重要特征:1)包含面向原始报文和隧道报文的两次端到端通信;2)在隧道入口具有封装操作,在隧道出口具有相应的解封装操作。隧道技术的上述特征带来一个问题:在包含隧道的网络传输路径中如何实施MTU(Maximum Transmission Unit,最大传输单元)机制的问题。
以跨协议隧道6over4为例,6over4隧道中进行原始IPv6报文转发的示意图如图1所示,源节点向目的节点发出原始IPv6报文,源地址为SRC,目的地址为DST,隧道入口地址为TE,隧道出口地址为TX。隧道入口TE收到原始IPv6报文,判断其需要隧道封装后,对原始IPv6报文加上隧道头得到隧道IPv4报文,并传送至隧道出口,隧道出口收到隧道IPv4报文后进行解封装,去掉隧道头,得到原始IPv6报文并发送至目的地址DST。
现有6over4隧道技术实施中,当TE对报文进行封装后,若封装报文长度大于其出接口,就需要分片发送。对应的,就需要在TX对分片进行重组,并将重组后的报文解封装再转发。然而,TX路由器在数据转发层面难以提供这样的支持,对高速硬件转发尤为困难。因此,利用当前的路由器技术在TX实现重组的代价极大。隧道MTU机制的解决方案中应尽量避免在TE处对隧道报文分片,从而避免在TX发生重组再转发现象。而现有技术中的隧道MTU机制没有解决上述问题。
发明内容
本发明的目的是提供一种通过在源端学习到包含6over4隧道的全路径MTU,并执行完全分片,从而使原始报文在进行隧道封装前被分片到足够小,从而避免了在6over4隧道中进行报文的分片和重组的方法及系统。
为达到上述目的,本发明提供了一种6over4隧道中避免报文重组的方法,包括以下步骤:
S1,端系统利用报文发送单元发送原始报文至隧道入口路由器;
S2,隧道入口路由器通过查找路由表判断是否需要对所述原始报文进行隧道封装,若是,则执行步骤S3,否则,查找所述路由表转发所述原始报文;
S3,所述隧道入口路由器根据所述原始报文中的目的地址获得所述隧道对应的封装类型、所述隧道的源地址以及所述隧道的目的地址;
S4,所述隧道入口路由器根据所述隧道的目的地址查找IPv4路由表,以获得所述原始报文的出接口,再根据所述隧道的目的地址及所述出接口查找隧道路径最大传输单元PMtunnel,同时,根据所述封装类型获得隧道封装长度Lt_head;然后判断所述原始报文的长度是否大于隧道报文最大传输单元PMtunnel-Lt_head,若是,则执行步骤S5,否则执行步骤S6;
S5,所述隧道入口路由器向所述报文发送单元发送差错信息,通告所述原始报文超过隧道报文最大传输单元,并通告隧道报文最大传输单元为PMtunnel-Lt_head,并丢弃所述原始报文。
S6,所述隧道入口路由器对所述原始报文进行隧道封装,并查找所述IPv4路由表转发隧道封装后的报文至隧道出口路由器。
其中,所述隧道出口路由器接收到所述隧道封装后的报文后,对其进行解封装得到所述原始报文,然后查找所述IPv6路由表获得所述原始报文的目的地址,将所述原始报文发送至报文接收单元。
所述原始报文为IPv6报文。所述步骤S4中进行隧道封装的步骤具体为将所述IPv6报文封装为IPv4报文。所述步骤S5中的差错信息和控制信息均为用于IPv6的互联网控制消息协议。
本发明还提供了一种6over4隧道中避免报文重组的系统,包括:
报文发送单元,用于发送原始报文至隧道入口路由器;隧道入口路由器,用于根据上述方法处理所述原始报文,并将处理后的报文发送给隧道出口路由器;隧道出口路由器,用于接收所述处理后的报文,并将其进行解封装得到所述原始报文,然后查找所述IPv6路由表将所述原始报文发送至报文接收单元;以及报文接收单元,用于接收隧道出口路由器发送的原始报文。
上述技术方案具有如下优点:通过在源端学习到包含6over4隧道的全路径MTU,并执行完全分片,从而使原始报文在进行隧道封装前被分片到足够小,从而避免了在6over4隧道中进行报文的分片和重组,实验表明本发明的技术方案使得隧道通信的性能有了较大的提高。
附图说明
图1是现有技术在6over4隧道中进行原始IPv6报文转发的示意图;
图2是本发明实施例的6over4隧道中避免报文重组的方法流程图;
图3是本发明实施例的6over4隧道中避免报文重组的系统结构图;
图4是本发明实施例与现有技术的对比实验示意图。
具体实施方式
下面结合附图和实施例,对本发明的具体实施方式作进一步详细描述。以下实施例用于说明本发明,但不用来限制本发明的范围。
本发明实施例的6over4隧道中避免报文重组的方法流程图,如图2所示:
步骤S301,端系统利用报文发送单元发送IPv6报文至隧道入口路由器;
步骤S302,隧道入口路由器通过IPv6查找路由表判断是否需要对所述IPv6报文进行隧道封装,若是,则执行步骤S303,否则,查找所述IPv6路由表按照一般流程转发所述IPv6报文;
步骤S303,所述隧道入口路由器根据所述IPv6报文中的目的地址获得隧道对应的封装类型IPv4、隧道的源地址以及隧道的目的地址;
步骤S304,所述隧道入口路由器根据隧道的目的地址查找IPv4路由表,以获得所述IPv6报文的出接口,再根据所述隧道的目的地址及所述出接口查找隧道路径最大传输单元PMtunnel,同时,根据所述封装类型获得隧道封装长度Lt_head=20;然后判断所述IPv6报文的长度是否大于隧道报文最大传输单元PMtunnel-Lt_head=PMtunnel-20,若是,则执行步骤S305,否则执行步骤S306;
步骤S305,所述隧道入口路由器向所述报文发送单元发送ICMPv6(Internet Control Message Protocol Version 6,用于IPv6的互联网控制消息协议)差错信息“packet too big”,通告所述IPv6报文超过隧道报文最大传输单元,并通告隧道报文最大传输单元为PMtunnel-Lt_head,并丢弃所述IPv6报文;
步骤S306,所述隧道入口路由器对IPv6报文进行隧道封装,并查找所述IPv4路由表转发隧道封装后的报文至隧道出口路由器。
所述隧道出口路由器接收到所述隧道封装后的报文后,对其进行解封装得到所述原始的IPv6报文,然后查找所述IPv6路由表获得所述IPv6报文的目的地址,将所述IPv6报文发送至报文接收单元。
上述实施例中,一个隧道入口路由器可以配置多个封装隧道。本发明实施例的6over4隧道中避免报文重组的系统结构图如图3所示,A为报文发送单元,B为隧道入口路由器,D为隧道出口路由器,E为报文接收单元。本发明利用图3所示的系统为模型进行了模拟实验,A、E、F均为运行Windows XP系统的PC机,B、C、D均为具有双以太网卡的Linux系统,实现IPv4/IPv6协议栈、ICMPv4/v6、以及隧道转发功能,模拟具有双协议栈及隧道转发功能的路由器。
本实验通过pcap工具实现报文的收发,对跨协议隧道6over4进行了测试。实验中所有链路的隧道路径最大传输单元PMtunnel均为1500。实验1利用了本发明实施例中6over4隧道中避免报文重组的方法;实验2中利用了现有技术中的6over4隧道MTU机制,即允许隧道入口路由器对隧道报文进行分片。两个实验都测试6over4隧道端到端的通信。6over4隧道测试中,路由器B、C、D之间链路运行IPv4协议,其它链路为IPv6协议。主机A通过Sniffer软件发送目的地址为主机E的IPv6报文,在主机E上分析收包情况。测试结果如图4所示。从图4中可以看出,在处理长度超过PMtunnel-Lt_head的报文时(其中6over4隧道的封装开销为Lt_head=20比特),本发明实施例的隧道报文分片方案使得可利用带宽有了很大的提高,从而提高了通信性能。图3中,F为监视主机,它通过Sniffer软件观察从路由器C发往路由器D的隧道报文。发现实验1中隧道传输中,在该链路上没有出现任何分片的隧道报文,而在实验2中处理大报文时会在该链路发现大量分片。
由以上实施例可以看出,本发明的实施例通过在源端学习到包含6over4隧道的全路径MTU,并执行完全分片,从而使原始报文在进行隧道封装前被分片到足够小,从而避免了在6over4隧道中进行报文的分片和重组,实验表明本发明的技术方案使得隧道通信的性能有了较大的提高。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明技术原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

Claims (6)

1、一种6over4隧道中避免报文重组的方法,其特征在于,包括以下步骤:
S1,利用报文发送单元发送原始报文至隧道入口路由器;
S2,隧道入口路由器通过查找路由表判断是否需要对所述原始报文进行隧道封装,若是,则执行步骤S3,否则,查找所述路由表转发所述原始报文;
S3,所述隧道入口路由器根据所述原始报文的目的地址获得所述隧道对应的封装类型、所述隧道的源地址以及所述隧道的目的地址;
S4,所述隧道入口路由器根据所述隧道的目的地址查找IPv4路由表,以获得所述原始报文的出接口,再根据所述隧道的目的地址及所述出接口查找隧道路径最大传输单元PMtunnel,同时,根据所述封装类型获得隧道封装长度Lt_head;然后判断所述原始报文的长度是否大于隧道报文最大传输单元PMtunnel-Lt_head,若是,则执行步骤S5,否则执行步骤S6;
S5,所述隧道入口路由器向所述报文发送单元发送差错信息,通告所述原始报文超过隧道报文最大传输单元,并通告隧道报文最大传输单元为PMtunnel-Lt_head,并丢弃所述原始报文;
S6,所述隧道入口路由器对原始报文进行隧道封装,并查找所述IPv4路由表转发隧道封装后的报文至隧道出口路由器。
2、如权利要求1所述的6over4隧道中避免报文重组的方法,其特征在于,在所述步骤S6之后还包括步骤S7:所述隧道出口路由器接收到所述隧道封装后的报文后,对其进行解封装得到所述原始报文,然后查找所述Ipv6路由表将所述原始报文发送至报文接收单元。
3、如权利要求1所述的6over4隧道中避免报文重组的方法,其特征在于,所述原始报文为IPv6报文。
4、如权利要求3所述的6over4隧道中避免报文重组的方法,其特征在于,所述步骤S4中进行隧道封装的步骤具体为将所述IPv6报文封装为IPv4报文。
5、如权利要求1或4所述的6over4隧道中避免报文重组的方法,其特征在于,所述步骤S5中的差错信息和控制信息均为用于IPv6的互联网控制消息协议。
6、一种6over4隧道中避免报文重组的系统,其特征在于,包括:
报文发送单元,用于发送原始报文至隧道入口路由器;
隧道入口路由器,用于根据权利要求1至5之任一所述的方法处理所述原始报文,并将处理后的报文发送给隧道出口路由器;
隧道出口路由器,用于接收所述处理后的报文,并将其进行解封装得到所述原始报文,然后查找IPv6路由表将所述原始报文发送至报文接收单元;以及
报文接收单元,用于接收隧道出口路由器发送的原始报文。
CN200910090191A 2009-07-31 2009-07-31 一种6over4隧道中避免报文重组的方法及系统 Pending CN101640635A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN200910090191A CN101640635A (zh) 2009-07-31 2009-07-31 一种6over4隧道中避免报文重组的方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN200910090191A CN101640635A (zh) 2009-07-31 2009-07-31 一种6over4隧道中避免报文重组的方法及系统

Publications (1)

Publication Number Publication Date
CN101640635A true CN101640635A (zh) 2010-02-03

Family

ID=41615438

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200910090191A Pending CN101640635A (zh) 2009-07-31 2009-07-31 一种6over4隧道中避免报文重组的方法及系统

Country Status (1)

Country Link
CN (1) CN101640635A (zh)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102469016A (zh) * 2010-11-16 2012-05-23 杭州华三通信技术有限公司 反向确定路径最大传输单元的方法和装置
CN103079232A (zh) * 2013-01-16 2013-05-01 大唐移动通信设备有限公司 一种确定报文的最大容量的方法及装置
CN102821051B (zh) * 2012-08-21 2015-11-18 神州数码网络(北京)有限公司 通用路由封装隧道中路径最大传输单元更改方法
CN106411783A (zh) * 2016-09-30 2017-02-15 杭州华三通信技术有限公司 一种报文发送方法及装置
CN106411791A (zh) * 2016-09-05 2017-02-15 上海斐讯数据通信技术有限公司 Icmp分片报文重组方法及转发方法、控制器及交换机
CN108390811A (zh) * 2018-03-28 2018-08-10 新华三技术有限公司 一种gre隧道建立方法及其设备
CN111510513A (zh) * 2020-01-03 2020-08-07 普联国际有限公司 一种map-e链路加速方法、装置、存储介质及网络设备

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102469016A (zh) * 2010-11-16 2012-05-23 杭州华三通信技术有限公司 反向确定路径最大传输单元的方法和装置
CN102469016B (zh) * 2010-11-16 2014-11-05 杭州华三通信技术有限公司 反向确定路径最大传输单元的方法和装置
CN102821051B (zh) * 2012-08-21 2015-11-18 神州数码网络(北京)有限公司 通用路由封装隧道中路径最大传输单元更改方法
CN103079232A (zh) * 2013-01-16 2013-05-01 大唐移动通信设备有限公司 一种确定报文的最大容量的方法及装置
CN106411791A (zh) * 2016-09-05 2017-02-15 上海斐讯数据通信技术有限公司 Icmp分片报文重组方法及转发方法、控制器及交换机
CN106411783A (zh) * 2016-09-30 2017-02-15 杭州华三通信技术有限公司 一种报文发送方法及装置
CN108390811A (zh) * 2018-03-28 2018-08-10 新华三技术有限公司 一种gre隧道建立方法及其设备
CN108390811B (zh) * 2018-03-28 2020-12-29 新华三技术有限公司 一种gre隧道建立方法及其设备
CN111510513A (zh) * 2020-01-03 2020-08-07 普联国际有限公司 一种map-e链路加速方法、装置、存储介质及网络设备
CN111510513B (zh) * 2020-01-03 2022-08-30 普联国际有限公司 一种map-e链路加速方法、装置、存储介质及网络设备

Similar Documents

Publication Publication Date Title
EP3958521A1 (en) Method and apparatus for providing service for service flow
CN102301663B (zh) 一种报文处理方法及相关设备
CN102571613B (zh) 一种转发报文的方法及网络设备
CN101640635A (zh) 一种6over4隧道中避免报文重组的方法及系统
EP3331205B1 (en) Data packet transmission method utilized in ipv6 network and device utilizing same
CN101247353B (zh) 流老化方法及网络设备
CN108964943B (zh) 一种实现ioam封装的方法及装置
CN101640645B (zh) 报文传输方法和系统
CN105577416B (zh) 一种业务功能链操作、管理和维护方法及节点设备
CN100499579C (zh) 对ipv4分片报文进行通用路由封装的方法
CN104184646B (zh) Vpn网络数据交互方法和系统及其网络数据交互设备
RU2007109068A (ru) Способы и устройства для поддержки vpn при управлении мобильностью
CN102340451A (zh) 一种跟踪路由测试方法、系统、装置及设备
CN100433714C (zh) 一种ip分片报文传输处理方法
CN102868613A (zh) 一种通用路由封装隧道报文发送方法和装置
CN102970386A (zh) 一种实现IPv6报文穿越IPv4网络的方法和设备
EP4274123A1 (en) Packet encapsulation and de-encapsulation method and device, storage medium, and electronic device
CN101552728B (zh) 一种面向IPv6的路径MTU发现方法及系统
CN102291305A (zh) 实现6to4中继路由的方法和设备以及报文转发方法
EP2647169B1 (en) Method and apparatus for performing actions on packets at intermediate nodes in a connection between a communication device and a destination device in a target network
CN102224709A (zh) Ip承载网性能监控的方法及设备
EP2600569B1 (en) Method, apparatus and system for processing a tunnel packet
CN101640636A (zh) 一种4over6隧道中避免报文重组的方法及系统
CN102769552A (zh) 一种通过bfd检测lsp时传输bfd报文的方法和设备
CN102437927B (zh) 一种以太网设备管理平面的管理方法和系统

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C12 Rejection of a patent application after its publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20100203