CN106302246A - 一种调整IPv6隧道最大传输单元的方法和装置 - Google Patents

一种调整IPv6隧道最大传输单元的方法和装置 Download PDF

Info

Publication number
CN106302246A
CN106302246A CN201510300401.3A CN201510300401A CN106302246A CN 106302246 A CN106302246 A CN 106302246A CN 201510300401 A CN201510300401 A CN 201510300401A CN 106302246 A CN106302246 A CN 106302246A
Authority
CN
China
Prior art keywords
mtu
message
value
tunnel
interface
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
CN201510300401.3A
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.)
ZTE Corp
Original Assignee
ZTE Corp
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 ZTE Corp filed Critical ZTE Corp
Priority to CN201510300401.3A priority Critical patent/CN106302246A/zh
Priority to PCT/CN2016/072159 priority patent/WO2016192402A1/zh
Publication of CN106302246A publication Critical patent/CN106302246A/zh
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/70Admission control; Resource allocation
    • H04L47/82Miscellaneous aspects
    • H04L47/825Involving tunnels, e.g. MPLS
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/74Address processing for routing
    • H04L45/741Routing in networks with a plurality of addressing schemes, e.g. with both IPv4 and IPv6
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/25Mapping addresses of the same type
    • H04L61/2503Translation of Internet protocol [IP] addresses
    • H04L61/2592Translation of Internet protocol [IP] addresses using tunnelling or encapsulation

Abstract

本申请提出一种调整IPv6隧道最大传输单元的方法和装置,涉及IPv6隧道方法技术领域,包括:当接收到的IPv6隧道报文是第一片报文或者未分片报文时,将所述隧道报文的报文长度与实际出接口的最大传输单元MTU值比较;当所述隧道报文的报文长度大于所述实际出接口的MTU值时,根据所述隧道报文的报文长度与所述实际出接口的MTU值的差值,调整所述隧道接口的MTU的生效值和/或所述实际出接口的MTU的生效值。通过调整隧道MTU防止由于隧道多次分片而导致主控的上送报文压力过大的问题,提升IPv6隧道的分片转发性能,防止隧道多次分片,缓解IPv6隧道分片报文部分报文丢失导致无法重组的情况。

Description

一种调整IPv6隧道最大传输单元的方法和装置
技术领域
本发明涉及IPv6(Internet Protocol Version 6,互联网协议版本6)隧道方法技术领域,具体涉及一种调整IPv6隧道最大传输单元的方法和装置。
背景技术
目前的IPv6隧道接口是逻辑接口,可以通过命令创建和删除,并且隧道接口和supervlan(VLAN聚合,Virtual Local Area Network,虚拟局域网),smartgroup(链路聚合形成的逻辑端口)这些逻辑接口不同,IPv6隧道实际物理接口是不能通过命令绑定确认的,而是通过查询路由表动态获得的,路由接口的变化可能导致隧道出接口的实际接口发生变化。
IPv6隧道是三层接口,可以独立的部署三层业务,支持MTU(MaximumTransmission Unit,最大传输单元)的配置,链路的实际发包能力受链路实际出接口的MTU的限制,因此隧道接口和物理接口的MTU是存在约束关系的。这种约束关系会导致隧道的二次分片。若有多层隧道嵌套环境存在,会产生多次分片的情况,对主控产生压力,若上送报文被控制面安全丢弃,还会产生分片中的部分报文被丢弃,报文不能重组的情况。
发明内容
为了解决上述由于隧道多次分片而导致主控的上送报文压力过大的问题,本发明提供一种调整IPv6隧道最大传输单元的方法和装置。
为了实现上述发明目的,本发明采取的技术方案如下:
一种调整IPv6隧道最大传输单元的方法,包括:
当接收到的IPv6隧道报文是第一片报文或者未分片报文时,将所述隧道报文的报文长度与实际出接口的最大传输单元MTU值比较;
当所述隧道报文的报文长度大于所述实际出接口的MTU值时,根据所述隧道报文的报文长度与所述实际出接口的MTU值的差值,调整所述隧道接口的MTU的生效值和/或所述实际出接口的MTU的生效值。
进一步地,在接收到的隧道报文是第一片报文或者未分片报文之前,还包括:
设置所述隧道接口的MTU值和/或所述实际出接口的MTU值。
进一步地,所述方法还包括:
当所述隧道报文的报文长度小于或者等于所述MTU值时,保持所述隧道接口的MTU值和所述实际出接口的MTU值不变。
进一步地,确定接收到的隧道报文是第一片报文或者未分片报文包括:
根据所述隧道报文中的网络互连协议IP报文的片偏移量值,确定接收到的隧道报文是第一片报文或者未分片报文。
进一步地,所述根据所述隧道报文的报文长度与所述实际出接口的MTU值的差值,调整所述隧道接口的MTU的生效值和/或所述实际出接口的MTU的生效值包括:
将所述隧道接口的MTU的生效值调整为设置的所述隧道接口的MTU值减去所述差值;
和/或,
将所述实际出接口的MTU的生效值调整为设置的所述实际出接口的MTU值加上所述差值。
本发明还提供一种调整IPv6隧道最大传输单元的装置,包括:
比较模块,用于当接收到的IPv6隧道报文是第一片报文或者未分片报文时,将所述隧道报文的报文长度与实际出接口的最大传输单元MTU值比较;
调整模块,用于当所述隧道报文的报文长度大于所述实际出接口的MTU值时,根据所述隧道报文的报文长度与所述实际出接口的MTU值的差值,调整所述隧道接口的MTU的生效值和/或所述实际出接口的MTU的生效值。
可选地,所述装置还包括:
设置模块,用于设置所述隧道接口的MTU值和/或所述实际出接口的MTU值。
可选地,所述装置还包括:
保持模块,用于当所述隧道报文的报文长度小于或者等于所述MTU值时,保持所述隧道接口的MTU值和所述实际出接口的MTU值不变。
可选地,所述比较模块中确定接收到的隧道报文是第一片报文或者未分片报文是指:
根据所述隧道报文中的网络互连协议IP报文的片偏移量值,确定接收到的隧道报文是第一片报文或者未分片报文。
可选地,所述调整模块用于:
将所述隧道接口的MTU的生效值调整为设置的所述隧道接口的MTU值减去所述差值;
和/或,
将所述实际出接口的MTU的生效值调整为设置的所述实际出接口的MTU值加上所述差值。
本发明和现有技术相比,具有如下有益效果:
本发明提供的方法和装置通过调整隧道MTU防止由于隧道多次分片而导致主控的上送报文压力过大的问题,提升IPv6隧道的分片转发性能,防止隧道多次分片,缓解IPv6隧道分片报文部分报文丢失导致无法重组的情况。
附图说明
图1是本发明实施例的一种调整IPv6隧道最大传输单元的方法的流程图;
图2是本发明实施例的一种调整IPv6隧道最大传输单元的装置的结构示意图;
图3是本发明实施例二调整IPv6隧道最大传输单元的基本架构图;
图4是本发明实施例二调整IPv6隧道最大传输单元的流程图。
具体实施方式
为使本发明的发明目的、技术方案和有益效果更加清楚明了,下面结合附图对本发明的实施例进行说明,需要说明的是,在不冲突的情况下,本申请中的实施例和实施例中的特征可以相互任意组合。
如图1所示,本发明实施例提供的一种调整IPv6隧道最大传输单元的方法,包括:
当接收到的IPv6隧道报文是第一片报文或者未分片报文时,将所述隧道报文的报文长度与实际出接口的最大传输单元MTU值比较;
当所述隧道报文的报文长度大于所述实际出接口的MTU值时,根据所述隧道报文的报文长度与所述实际出接口的MTU值的差值,调整所述隧道接口的MTU的生效值和/或所述实际出接口的MTU的生效值。
在接收到的隧道报文是第一片报文或者未分片报文之前,还包括:
设置所述隧道接口的MTU值和/或所述实际出接口的MTU值。
所述方法还包括:
当所述隧道报文的报文长度小于或者等于所述MTU值时,保持所述隧道接口的MTU值和所述实际出接口的MTU值不变。
确定接收到的隧道报文是第一片报文或者未分片报文包括:
根据所述隧道报文中的网络互连协议IP报文的片偏移量offest值,确定接收到的隧道报文是第一片报文或者未分片报文。
所述根据所述隧道报文的报文长度与所述实际出接口的MTU值的差值,调整所述隧道接口的MTU的生效值和/或所述实际出接口的MTU的生效值包括:
将所述隧道接口的MTU的生效值调整为设置的所述隧道接口的MTU值减去所述差值;和/或,将所述实际出接口的MTU的生效值调整为设置的所述实际出接口的MTU值加上所述差值。
IPv6隧道外层可以封装IPv4头,也可以封装IPv6头,根据IPv6隧道下面的IPv4报文或者IPv6报文的offest值来确定报文是不是分片报文,当主控收到的报文的下挂的IP头里层的offest值为0,表示为第一片包或者未分片报文,IPv6隧道按照收到的第一片报文的长度与实际出接口的MTU对比,当收到封装了隧道头的offest=0的报文大于实际出接口的MTU值的时候,取两个MTU的差值,动态调整隧道接口MTU值为原隧道接口MTU减去这个差值,当收到封装了隧道头的offest=0的报文小于或等于实际出接口的MTU值的时候,隧道接口MTU值不做修改。当隧道的实际出接口发生改变或者配置到该隧道实际出接口的MTU发生改变或者隧道接口的MTU发生改变的时候,对应的隧道接口协议需要通过流量动态感知。若检测到报文的offest值不为0,则不调整隧道接口MTU的大小为分片报文。如有变化对外通知更新。
如图2所示,本发明实施例提供一种调整IPv6隧道最大传输单元的装置,包括:
比较模块,用于当接收到的IPv6隧道报文是第一片报文或者未分片报文时,将所述隧道报文的报文长度与实际出接口的最大传输单元MTU值比较;
调整模块,用于当所述隧道报文的报文长度大于所述实际出接口的MTU值时,根据所述隧道报文的报文长度与所述实际出接口的MTU值的差值,调整所述隧道接口的MTU的生效值和/或所述实际出接口的MTU的生效值。
所述装置还包括:
设置模块,用于设置所述隧道接口的MTU值和/或所述实际出接口的MTU值。
所述装置还包括:
保持模块,用于当所述隧道报文的报文长度小于或者等于所述MTU值时,保持所述隧道接口的MTU值和所述实际出接口的MTU值不变。
所述比较模块中确定接收到的隧道报文是第一片报文或者未分片报文是指:
根据所述隧道报文中的网络互连协议IP报文的片偏移量offest值,确定接收到的隧道报文是第一片报文或者未分片报文。
所述调整模块用于:
将所述隧道接口的MTU的生效值调整为设置的所述隧道接口的MTU值减去所述差值;和/或,将所述实际出接口的MTU的生效值调整为设置的所述实际出接口的MTU值加上所述差值。
实施例一
本发明实施例采用以下技术方案防止IPv6隧道二次分片:
A、分布式交换机/路由器系统,IPv6隧道接口MTU调整由主控来实现;
B、通过在OAM(Operation Administration and Maintenance,操作、管理和维护)配置隧道实际出接口的MTU;
C、当实际出接口配置MTU时,IPv6隧道的隧道接口MTU按照隧道口的配置值生效,或者按照之前生效的MTU值生效;
D、根据上送上来的报文的offest值来确定是否需要重新设置隧道接口MTU值;
E、判断需要重新设置隧道接口MTU值,将当前获得的可能值进行判断;
F、判断需要调整的值的大小,更新IPv6隧道的隧道接口MTU的大小为当前报文的隧道接口MTU减去调整值的小大,并将更新通知给协议;
G、将生效值通知FTM(forward table manage,转发表管理)写表;
H、NP(Network Processor,网络处理器)通过FTM读取最后生效值。
本发明所述动态调整隧道接口MTU实现的方法包括以下步骤:
第一步:telnet到设备OAM界面配置IPv6隧道接口的MTU值和实际出接口的MTU值;
第二步:流量在底层封装IPv6隧道头之前进行分片;
第三步:设备实时监控上送MPU(Microprocessor Unit,微处理器,是T8000系列路由器的主控板,负责完成系统的管理和路由功能)的IPv6隧道报文大小和offest值;
第四步:当IPv6隧道头下挂的IP报文头的offest值非0的时候,不判断当前报文的大小和实际出接口MTU的大小,当报文里面offest=0的时候,对比报文的大小与实际出接口MTU的大小;
第五步:发现当前报文的大小小于或者等于实际出接口的MTU的值的时候,;并维持当前隧道接口MTU值不变;发现当前IPv6隧道报文的大小大于当前生效的实际出接口MTU值时,执行第六步
第六步:更新隧道接口MTU;
第七步:更新后的生效值通知FTM写表;
第八步:NP从FTM读取生效值。
实施例二
硬件模块部分包括:设备的主控板和线卡。其中主控板需要OAM进行实际出接口的MTU的配置,线卡板实现根据实际出接口MTU对流量进行处理的功能。
流程部分的处理步骤如下:
比如在v6_tunnel1实际出接口配置了MTU值为A,v6_tunnel1口配置的MTU值为B,V6隧道头大小为D,按照图3的架构和图4中的流程,首先设置模块根据配置的隧道接口IP MTU生效;
1)线卡根据隧道接口的MTU值B对进入IPv6隧道前的报文进行分片;
2)动态调整之前,IPv6隧道接口的MTU值为配置值B,将B作为生效值进行分片;
3)分片后,报文封装上IPv6隧道头上送主控,报文大小为B+D;
4)封装上IPv6隧道头后根据上送IPv6隧道报文里面下挂的IP头的offest字段确认是否要读取此片报文的大小;
5)比较模块读取IPv6隧道报文里面下挂的IP头的offest=0的报文的大小为B+D;
6)若B+D>A,将B+D通知给调整模块;
7)调整模块获取值B+D-A,更新隧道接口的MTU为A-D;
8)若B+D<A或B+D=A,保持模块不修改隧道接口的MTU;
9)下一次通知接调整模块更新时,以A-D为生效值与新读取的实际出接口的MTU进行比对。
虽然本发明所揭示的实施方式如上,但其内容只是为了便于理解本发明的技术方案而采用的实施方式,并非用于限定本发明。任何本发明所属技术领域内的技术人员,在不脱离本发明所揭示的核心技术方案的前提下,可以在实施的形式和细节上做任何修改与变化,但本发明所限定的保护范围,仍须以所附的权利要求书限定的范围为准。

Claims (10)

1.一种调整IPv6隧道最大传输单元的方法,其特征在于,包括:
当接收到的IPv6隧道报文是第一片报文或者未分片报文时,将所述隧道报文的报文长度与实际出接口的最大传输单元MTU值比较;
当所述隧道报文的报文长度大于所述实际出接口的MTU值时,根据所述隧道报文的报文长度与所述实际出接口的MTU值的差值,调整所述隧道接口的MTU的生效值和/或所述实际出接口的MTU的生效值。
2.如权利要求1所述的方法,其特征在于:在接收到的隧道报文是第一片报文或者未分片报文之前,还包括:
设置所述隧道接口的MTU值和/或所述实际出接口的MTU值。
3.如权利要求1所述的方法,其特征在于:所述方法还包括:
当所述隧道报文的报文长度小于或者等于所述MTU值时,保持所述隧道接口的MTU值和所述实际出接口的MTU值不变。
4.如权利要求1所述的方法,其特征在于:确定接收到的隧道报文是第一片报文或者未分片报文包括:
根据所述隧道报文中的网络互连协议IP报文的片偏移量值,确定接收到的隧道报文是第一片报文或者未分片报文。
5.如权利要求1所述的方法,其特征在于:所述根据所述隧道报文的报文长度与所述实际出接口的MTU值的差值,调整所述隧道接口的MTU的生效值和/或所述实际出接口的MTU的生效值包括:
将所述隧道接口的MTU的生效值调整为设置的所述隧道接口的MTU值减去所述差值;
和/或,
将所述实际出接口的MTU的生效值调整为设置的所述实际出接口的MTU值加上所述差值。
6.一种调整IPv6隧道最大传输单元的装置,其特征在于,包括:
比较模块,用于当接收到的IPv6隧道报文是第一片报文或者未分片报文时,将所述隧道报文的报文长度与实际出接口的最大传输单元MTU值比较;
调整模块,用于当所述隧道报文的报文长度大于所述实际出接口的MTU值时,根据所述隧道报文的报文长度与所述实际出接口的MTU值的差值,调整所述隧道接口的MTU的生效值和/或所述实际出接口的MTU的生效值。
7.如权利要求6所述的装置,其特征在于:还包括:
设置模块,用于设置所述隧道接口的MTU值和/或所述实际出接口的MTU值。
8.如权利要求6所述的装置,其特征在于:还包括:
保持模块,用于当所述隧道报文的报文长度小于或者等于所述MTU值时,保持所述隧道接口的MTU值和所述实际出接口的MTU值不变。
9.如权利要求6所述的装置,其特征在于:所述比较模块中确定接收到的隧道报文是第一片报文或者未分片报文是指:
根据所述隧道报文中的网络互连协议IP报文的片偏移量值,确定接收到的隧道报文是第一片报文或者未分片报文。
10.如权利要求6所述的装置,其特征在于:所述调整模块用于:
将所述隧道接口的MTU的生效值调整为设置的所述隧道接口的MTU值减去所述差值;
和/或,
将所述实际出接口的MTU的生效值调整为设置的所述实际出接口的MTU值加上所述差值。
CN201510300401.3A 2015-06-03 2015-06-03 一种调整IPv6隧道最大传输单元的方法和装置 Pending CN106302246A (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201510300401.3A CN106302246A (zh) 2015-06-03 2015-06-03 一种调整IPv6隧道最大传输单元的方法和装置
PCT/CN2016/072159 WO2016192402A1 (zh) 2015-06-03 2016-01-26 一种调整IPv6隧道最大传输单元的方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510300401.3A CN106302246A (zh) 2015-06-03 2015-06-03 一种调整IPv6隧道最大传输单元的方法和装置

Publications (1)

Publication Number Publication Date
CN106302246A true CN106302246A (zh) 2017-01-04

Family

ID=57440010

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510300401.3A Pending CN106302246A (zh) 2015-06-03 2015-06-03 一种调整IPv6隧道最大传输单元的方法和装置

Country Status (2)

Country Link
CN (1) CN106302246A (zh)
WO (1) WO2016192402A1 (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10841834B2 (en) 2018-04-04 2020-11-17 At&T Intellectual Property I, L.P. Legacy network maximum transmission unit isolation capability through deployment of a flexible maximum transmission unit packet core design
US10638363B2 (en) 2018-04-04 2020-04-28 At&T Intellectual Property I, L.P. Legacy network maximum transmission unit isolation capability through deployment of a flexible maximum transmission unit packet core design
CN111901452B (zh) * 2020-07-20 2023-04-21 中盈优创资讯科技有限公司 一种设备接口自动适配添加ipv6信息的方法及装置
CN115134171B (zh) * 2022-08-30 2022-11-29 湖南麒麟信安科技股份有限公司 隔离网络环境下加密存储报文的方法、装置、系统及介质
CN117201128B (zh) * 2023-09-11 2024-03-15 泉城省实验室 一种基于流量感知的隧道预防分片攻击的方法和装置

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1491005A4 (en) * 2002-03-29 2006-09-13 Samsung Electronics Co Ltd METHOD FOR MODIFYING PMTU IN A DYNAMIC IP NETWORK AND APPARATUS USING THE SAME
CN100486241C (zh) * 2004-06-28 2009-05-06 杭州华三通信技术有限公司 获取隧道网关环境中路径最大传输长度的方法及系统
CN101374101B (zh) * 2007-08-22 2011-05-04 华为技术有限公司 一种传输复用报文的方法、设备及系统
CN101217540A (zh) * 2008-01-04 2008-07-09 杭州华三通信技术有限公司 报文隧道分片的自适应调整方法、装置和系统
CN102594505A (zh) * 2012-02-08 2012-07-18 华为技术有限公司 数据传输方法及装置

Also Published As

Publication number Publication date
WO2016192402A1 (zh) 2016-12-08

Similar Documents

Publication Publication Date Title
CN106302246A (zh) 一种调整IPv6隧道最大传输单元的方法和装置
CN104243318B (zh) Vxlan网络中的mac地址学习方法及装置
CN104243268B (zh) Vxlan与隧道的关联方法及装置
CN104506408B (zh) 基于sdn的数据传输的方法及装置
CN104243630B (zh) Vxlan网络中的mac地址学习方法及装置
US10116465B2 (en) Method for operating a network
CN106488508B (zh) 一种数据传输方法、装置及系统
EP3082309A1 (en) Sdn controller, data centre system and router connection method
US9515919B2 (en) Method and apparatus for protection switching in packet transport system
CN111555974B (zh) 一种数据包的处理方法、装置、终端设备和存储介质
CN105100142A (zh) 软件定义网络协议报文的传输控制方法及装置
CN106712899A (zh) 一种端口速率调整方法及设备
CN104796344A (zh) 基于SDN实现报文转发的方法、系统、Openflow交换机及服务器
EP3113425B1 (en) Encapsulation method for service routing packet, service forwarding entity and control plane
CN110636548A (zh) 一种流量控制方法、装置、节点和存储介质
CN107196834B (zh) 报文处理方法及设备
CN109088823B (zh) 一种实现终端互联的方法及装置
CN105634952A (zh) Lsp报文快速通告方法以及装置
CN102055642A (zh) 一种数据报文转换方法
CN102255790A (zh) 拥塞控制信息的通知方法和系统
CN104079679B (zh) 实现mac地址表保持一致的方法
CN110445708A (zh) 一种融合网关内通信方法及系统
CN107018072A (zh) 一种数据帧发送方法和接入设备
CN107409100B (zh) 软件定义网络中进行通信的方法、装置及通信系统
CN104980259A (zh) 一种多链路数据传输方法及装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20170104

WD01 Invention patent application deemed withdrawn after publication