一种名址分离协议网络中的数据报文处理方法和装置制造方法

文档序号:7805999阅读:183来源:国知局
一种名址分离协议网络中的数据报文处理方法和装置制造方法
【专利摘要】本发明公开了一种名址分离协议(LISP)网络中数据报文处理方法,所述方法包括:当隧道入口路由器ITR接收到终端发送的数据报文时,获取该数据报文的目的终端标识EID地址对应的映射信息,并发送给该映射信息中的路由位置标识RLOC地址对应的路由器;该ITR将接收到的数据报文根据获取到的映射信息进行LISP封装并转发。基于同样的发明构思,本发明还提出一种装置,能够提高LISP网络中数据报文的转发效率,并且在中间路径转发时不丢包。
【专利说明】一种名址分离协议网络中的数据报文处理方法和装置
【技术领域】
[0001]本申请涉及通信【技术领域】,特别涉及一种名址分离协议网络中的数据报文处理方法和装置。
【背景技术】
[0002]名址分离协议(Location/IDSeparation Protocol, LISP)提供了一种数据包路由方法,它可以在不改变终端软件的前提下实现移动设备在不同无线网络之间无缝迁移。LISP将原有的因特网协议(Internet Protocol, IP)地址、MAC地址,或者IP地址+MAC地址分成终端标识(EndPoint Identifier, EID)地址和路由位置标识(Routing Locator, RL0C)地址。
[0003]在LISP网络中,一个站点的终端向另外一个站点的终端发送数据报文的过程中,映射信息中RLOC地址对应的路由器均需要向映射服务器请求映射信息,再根据请求到的映射信息进行数据报文的转发,导致转发效率低,并且容易丢包。

【发明内容】

[0004]有鉴于此,本发明提供一种名址分离协议网络中的数据报文处理方法和装置,能够提高LISP网络中数据报文的转发效率,并且在中间路径转发时不丢包。
[0005]为解决上述技术问题,本发明的技术方案是这样实现的:
[0006]一种名址分离协议LISP网络中数据报文处理方法,所述方法包括:
[0007]当隧道入口路由器ITR接收到终端发送的数据报文时,获取该数据报文的目的终端标识EID地址对应的映射信息,并发送给该映射信息中的路由位置标识RLOC地址对应的路由器;
[0008]该ITR将接收到的数据报文根据获取到的映射信息进行LISP封装并转发。
[0009]一种名址分离协议LISP网络中的数据报文处理装置,所述装置应用于隧道入口路由器ITR,所述装置包括:
[0010]接收单元,用于接收终端发送的数据报文;
[0011]获取单元,用于当所述接收单元接收到终端发送的数据报文时,获取该数据报文的目的终端标识EID地址对应的映射信息;
[0012]发送单元,用于将所述获取单元获取的映射信息发送给该映射信息中的路由位置标识RLOC地址对应的路由器;用于将所述封装单元进行LISP封装后的数据报文转发;
[0013]封装单元,用于将所述接收单元接收到的数据报文根据所述获取单元获取到的映射信息进行LISP封装。
[0014]综上所述,本发明通过隧道入口路由器在获取某个EID地址对应的映射信息时,将该映射信息发送给该映射信息中的RLOC地址对应的路由器,这样能够提高LISP网络中数据报文的转发效率,并且在中间路径转发时不丢包。【专利附图】

【附图说明】
[0015]图1为本发明具体实施例中数据报文处理方法流程示意图;
[0016]图2为LISP网络示意图;
[0017]图3为本发明具体实施例中应用于上述技术的装置结构示意图。
【具体实施方式】
[0018]为使本发明的目的、技术方案及优点更加清楚明白,以下参照附图并举实施例,对本发明所述方案作进一步地详细说明。
[0019]本发明实施例中提出一种LISP网络中的数据报文处理方法,隧道入口路由器(ITR)在获取某个EID地址对应的映射信息时,将该映射信息发送给该映射信息中的RLOC地址对应的路由器,这样能够提高LISP网络中数据报文的转发效率,并且在中间路径转发时不丢包。
[0020]本发明具体实施例中,经过映射信息中的各RLOC地址对应的路由器的路径,为隧道入口路由器到隧道出口路由器(该映射信息中最后一个RLOC地址对应的路由器)之间的显式路径。
[0021]参见图1,图1为本发明具体实施例中数据报文处理方法流程示意图。具体步骤为:
[0022]步骤101,当隧道入口路由器接收到终端发送的数据报文时,获取该数据报文的目的终端标识EID地址对应的映射信息,并将获取的映射信息发送给该映射信息中的RLOC地址对应的路由器。
[0023]本步骤中隧道入口路由器将获取的映射信息发送给该映射信息中的RLOC地址对应的路由器,之后,确定是否接收到该映射信息中的所有RLOC地址对应的路由器发送的响应信息,如果是,执行步骤102 ;否则,使用重传和确认机制,直到接收到该映射信息中的所有RLOC地址对应的路由器发送的响应信息,执行步骤102。
[0024]该ITR将获取到的映射信息进行存储时,标识为不可用状态;
[0025]当接收到该映射信息中的所有RLOC地址对应的路由器发送的响应信息时,标识该映射信息为可用状态。
[0026]本步骤中当隧道入口路由器接收到终端发送的数据报文时,需要先确定本地是否存在该数据报文的目的EID地址对应的映射信息,以及该映射信息的状态:
[0027]当本地不存在该数据报文的目的EID地址对应的映射信息时,获取该数据报文的目的EID地址对应的映射信息;
[0028]当本地存在该数据报文的目的EID地址对应的映射信息,且该映射信息标识为可用状态时,该ITR将接收到的数据报文根据该映射信息进行LISP封装并转发;
[0029]当本地存在该数据报文的EID地址对应的映射信息,且该映射信息标识为不可用状态时,等到该映射信息标识为可用状态,该ITR将接收到的数据报文根据该映射信息进行LISP封装并转发。
[0030]在具体实现时,在向映射信息中的RLOC地址对应的路由器发送该映射信息时,可以不向最后一个RLOC地址对应的路由器,即该EID地址对应的隧道出口路由器发送该映射信息,以节省资源。[0031]步骤102,该ITR将接收到的数据报文根据获取到的映射信息进行LISP封装并转发。
[0032]下面结合附图,以具体实施例详细说明本申请如何处理LISP网络中数据报文。
[0033]参见图2,图2为LISP网络示意图。图2中,Rl,R2,R3,R4,R5,R6,R7,R8为核心网络中的路由设备。xTRl上对应LISP站点1,对应的EID地址为10.1.1.0/24,xTR2上对应LISP站点2,对应的EID地址为20.1.1.0/24,LISP站点I内有终端1,对应EID地址为
10.1.1.1/32,LISP 站点 2 内有终端 2,对应 EID 地址为 20.1.1.1/32。
[0034]xTRl和xTR2都会向映射服务器注册EID/RL0C映射关系,具体实现同现有实现,以xTR2为例,发送带显式路径的信息的注册报文,具体为EID地址(20.1.1.1/32),对应的RLOC地址为:R4的RLOC地址,R8的RLOC地址,xTR2的RLOC地址,表明到终端2的数据报文,需要经过R4,再到R8,再到xTR2。
[0035]下面以终端I向终端2发送数据报文为例,此时,xTRl作为该数据报文的隧道入口路由器,xTR2作为该数据报文的隧道出口路由器,具体实施过程如下:
[0036]第一步,终端I向终端2发送数据报文。
[0037]第二步,xTRl接收到该数据报文时,在本地查找是否存在该数据报文的目的EID地址(20.1.1.1/32)对应的映射信息,如果是,执行第三步;否则,执行第四步。
[0038]第三步,xTRl确定该数据报文的目的EID地址(20.1.1.1/32)对应的映射信息是否标识为可用状态,如果是,执行第九步;否则,等待处理,直到该映射信息标识为可用状态,执行第九步。
[0039]如果该数据报文的目的EID地址对应多个映射信息,选择其中标识为可用状态的映射信息,执行第九步。如果该数据报文的目的EID地址对应映射信息中标识为可用状态的映射信息不止一个时,按预设规则选择一个映射信息,如选择优先级大的映射信息,执行第九步。映射信息的优先级由xTR2回复该EID地址对应的映射信息时携带的。
[0040]如果该EID地址对应的映射信息中优先级最大的映射信息为两个以上时,说明有两条以上的等价路径,这时可以随机选择一个标识为可用状态的映射信息,或者通过负载均衡方式选择一个标识为可用状态的映射信息,执行第九步。
[0041]第四步,xTRl向映射服务器请求数据报文的目的EID地址(20.1.1.1/32)的映射信息。映射服务器根据xTR2的注册信息,将该请求转发给xTR2。xTR2向xTRl回复目的EID(20.1.1.1/32)地址的映射信息,具体实现同现有实现。
[0042]在具体实现xTR2向xTRl回复映射信息时,将映射信息携带在协议报文中,报文的目的IP地址为XTRl的RLOC地址,该报文经核心网络发送到xTRl,XTRl获得该报文中携带的映射信息。
[0043]本实施例中以xTR2向xTRl回复映射信息为例,在具体应用时,也可以由映射服务器直接回复xTRl映射信息,本发明具体实施例对此不作限制。
[0044]第五步,xTRl接收到xTR2回复的映射信息时,在本地进行存储,并将该映射信息的状态标识为不可用状态。
[0045]接收到的映射信息为:终端I的EID地址,R4的RLOC地址,R8的RLOC地址,xTR2的RLOC地址。
[0046]第六步,xTRl将EID地址(20.1.1.1/32)对应的映射信息向该映射信息中最后一个RLOC地址之外的RLOC地址对应的路由器发送。
[0047]在具体实现时,xTRl还可以先判断一下到该映射信息中的RLOC地址对应的路由器是否可达,具体实现时,在设备之间运行路由协议,由本地的路由表获知到某个路由器是否可达。当确定某个映射信息中存在RLOC地址对应的路由器不可达时,xTRl不通告该映
射信息。
[0048]在具体实现时,xTRl向核心网络中的路由器R4和R8发送的映射信息可以携带在符合核心网络运行的协议报文中,报文的目的地址分别为R4和R8的RLOC地址,报文经过核心网络中的路由器最终分别转发给R4和R8。
[0049]以发送给R4的映射信息为例,目的地址为R4的报文在发送给R4时,存在三条路径(R2-R4 ;R1-R3-R4 ;R1_R3-R5_R6),选择优先级最高的路径,假设优先级最高的路径为(R2-R4),则该报文经R2到达R4,R4接收到该报文后,确定目的地址为本路由设备的地址,则获取报文中携带的映射信息并存储。
[0050]第七步,核心网络中的各路由设备接收到xTRl发送的RID地址(20.1.1.1/32)对应的映射信息时,在本地进行存储,并向xTRl发送响应信息。
[0051]第八步,xTRl接收到该映射信息中除最后一个RLOC地址之外的所有RLOC地址对应的路由器(R4、R8)发送的响应信息时,将该映射信息标识为可用状态。
[0052]在具体实现时,还可以使用定时重传和确认机制来保证映射信息中的所有RLOC地址对应的路由器接收到该映射信息。
[0053]在预设时间内如果未接收到哪个路由器发送的响应信息时,再次向该路由器发送该映射信息,直到接收到响应信息。
[0054]xTRl获得并存储映射信息后,可以对该映射信息设置第一老化时间,并在向各路由器发送映射信息时,携带第二老化时间,其中,第二老化时间要大于第一老化时间。
[0055]第一老化时间到时,xTRl未接收到目的地址为该EID地址的数据报文时,将该映射信息删除。
[0056]第一老化时间到时之前,xTRl接收到目的地址为该EID地址的数据报文时,更新老化时间。
[0057]xTRl对该映射信息还需要进行定时更新,定时时间到时,再次向映射服务器获取EID地址(20.1.1.1/32)对应的映射信息,如果该映射信息发生变化时,将该映射信息标识为不可用状态,并将该变化后的映射信息发送给变化后的映射信息中的RLOC地址对应的路由器,并在接收到这些路由器的响应信息时,将EID地址(20.1.1.1/32)对应的映射信息标识为可用状态。
[0058]如果该映射信息未发生变化,则维持原映射信息不变。
[0059]第九步,xTRl将接收到的数据报文根据该映射信息进行LISP封装,目的地址为R4的RLOC地址,并将封装后的数据报文发送给R4。本步骤中根据映射信息对数据报文进行封装同现有实现。
[0060]第十步,R4接收到该封装后的数据报文,进行LISP解封装,并在本地查找数据报文的目的地址对应的映射信息(R4的RLOC地址,R8的RLOC地址,xTR2的RLOC地址),进行LISP封装,目的地址为R8的RLOC地址,并将封装后的数据报文发送给R8。
[0061]第十一步,R8接收到该封装后的数据报文,进行LISP解封装,并在本地查找数据报文的目的地址对应的映射信息,进行LISP封装,目的地址为xTR2的RLOC地址,并将封装后的数据报文发送给xTR2。
[0062]第十二步,xTR2收到该封装后的数据报文时,进行LISP解封装,并确定该数据报文的目的EID地址为本地EID空间内地址时,转发给该EID地址对应的终端2。
[0063]由于R4和R8上都已经存储了该数据报文的目的地址对应的映射信息,因此,接收到该数据报文时,可以直接查找到存储的映射信息,对报文进行封装并转发,因此,能够提高LISP网络中数据报文的转发效率,并且在中间路径转发时不丢包
[0064]第九步到第十二步的具体实现过程同现有实现。
[0065]基于同样的发明构思,本申请还提出一种LISP网络中的数据报文处理装置,所述装置应用于隧道入口路由器ITR。参见图3,图3为本发明具体实施例中应用于上述技术的装置结构示意图。该装置包括:
[0066]接收单元301,用于接收终端发送的数据报文;
[0067]获取单元302,用于当接收单元301接收到终端发送的数据报文时,获取该数据报文的目的终端标识EID地址对应的映射信息;
[0068]发送单元303,用于将获取单元302获取的映射信息发送给该映射信息中的RLOC地址对应的路由器;用于将封装单元304进行LISP封装后的数据报文转发;
[0069]封装单元304,用于将接收单元301接收到的数据报文根据获取单元302获取到的映射信息进行LISP封装。
[0070]较佳地,所述装置进一步包括:确定单元305 ;
[0071]确定单元305,用于在发送单元303将映射信息发送给该映射信息中的RLOC地址对应的路由器,之后,确定是否接收到该映射信息中的所有RLOC地址对应的路由器发送的响应信息,如果是,触发封装单元304将接收到的数据报文进行LISP封装;否则,使用重传和确认机制,直到接收单元301接收到该映射信息中的所有RLOC地址对应的路由器发送的响应信息时,触发封装单元304将接收到的数据报文进行LISP封装。
[0072]较佳地,
[0073]获取单元302,进一步用于将获取到的映射信息进行存储,并标识为不可用状态;当接收单元301接收到该映射信息中的所有RLOC地址对应的路由器发送的响应信息时,标识该映射信息为可用状态。
[0074]较佳地,
[0075]确定单元305,进一步用于当确定本地不存在该数据报文的目的EID地址对应的映射信息时,触发获取单元302获取该数据报文的目的EID地址对应的映射信息;当确定本地存在该数据报文的目的EID地址对应的映射信息,且该映射信息标识为可用状态时,触发封装单元304将接收到的数据报文进行LISP封装;当确定本地存在该数据报文的EID地址对应的映射信息,且该映射信息标识为不可用状态时,等到该映射信息标识为可用状态,触发封装单元304将接收到的数据报文进行LISP封装。
[0076]较佳地,
[0077]获取单元302,进一步用于当该EID地址对应的映射信息变化时,将该变化后的映射信息标识为不可用状态,当接收到该变化后的映射信息中的所有RLOC地址对应的路由器发送的响应信息时,将变化后的映射信息标识为可用状态;[0078]发送单元303,进一步用于当该EID地址对应的映射信息变化时,发送给该变换后的映射信息中的RLOC地址对应的路由器。
[0079]较佳地,在将该映射信息发送给该映射信息中的RLOC地址对应的路由器时,不向该映射信息中的最后一个RLOC地址对应的路由器发送。
[0080]上述实施例的单元可以集成于一体,也可以分离部署;可以合并为一个单元,也可以进一步拆分成多个子单兀。
[0081]综上所述,本发明具体实施例中通过隧道入口路由器在获取某个EID地址对应的映射信息时,将该映射信息发送给该映射信息中的RLOC地址对应的路由器,这样能够提高LISP网络中数据报文的转发效率,并且在中间路径转发时不丢包。
[0082]以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
【权利要求】
1.一种名址分离协议LISP网络中数据报文处理方法,其特征在于,所述方法包括: 当隧道入口路由器ITR接收到终端发送的数据报文时,获取该数据报文的目的终端标识EID地址对应的映射信息,并将获取的映射信息发送给该映射信息中的路由位置标识RLOC地址对应的路由器; 该ITR将接收到的数据报文根据获取到的映射信息进行LISP封装并转发。
2.根据权利要求1所述的方法,其特征在于,所述将获取的映射信息发送给该映射信息中的RLOC地址对应的路由器,之后,所述方法进一步包括: 确定是否接收到该映射信息中的所有RLOC地址对应的路由器发送的响应信息,如果是,该ITR将接收到的数据报文根据获取到的映射信息进行LISP封装并转发;否则,使用重传和确认机制,直到接收到该映射信息中的所有RLOC地址对应的路由器发送的响应信息,该ITR将接收到的数据报文根据获取到的映射信息进行LISP封装并转发。
3.根据权利要求2所述的方法,其特征在于,所述方法进一步包括: 该ITR将获取到的映射信息进行存储时,标识为不可用状态; 当接收到该映射信息中的所有RLOC地址对应的路由器发送的响应信息时,标识该映射信息为可用状态。
4.根据权利要求3所述的方法,其特征在于,所述当ITR接收到终端发送的数据报文时,所述方法进一步包括: 当本地不存在该数据报文的目的EID地址对应的映射信息时,获取该数据报文的目的EID地址对应的映射信息; 当本地存在该数据报文的目的EID地址对应的映射信息,且该映射信息标识为可用状态时,该ITR将接收到的数据报文根据该映射信息进行LISP封装并转发; 当本地存在该数据报文的EID地址对应的映射信息,且该映射信息标识为不可用状态时,等到该映射信息标识为可用状态,该ITR将接收到的数据报文根据该映射信息进行LISP封装并转发。
5.根据权利要求3或4所述的方法,其特征在于,所述方法进一步包括: 当该EID地址对应的映射信息变化时,将该变化后的映射信息标识为不可用状态,并发送给该变换后的映射信息中的RLOC地址对应的路由器; 当接收到该变化后的映射信息中的所有RLOC地址对应的路由器发送的响应信息时,将变化后的映射信息标识为可用状态。
6.根据权利要求1-4任意一项所述的方法,其特征在于,在将该映射信息发送给该映射信息中的RLOC地址对应的路由器时,不向该映射信息中的最后一个RLOC地址对应的路由器发送。
7.一种名址分离协议LISP网络中的数据报文处理装置,所述装置应用于隧道入口路由器ITR,其特征在于,所述装置包括: 接收单元,用于接收终端发送的数据报文; 获取单元,用于当所述接收单元接收到终端发送的数据报文时,获取该数据报文的目的终端标识EID地址对应的映射信息; 发送单元,用于将所述获取单元获取的映射信息发送给该映射信息中的路由位置标识RLOC地址对应的路由器;用于将所述封装单元进行LISP封装后的数据报文转发;封装单元,用于将所述接收单元接收到的数据报文根据所述获取单元获取到的映射信息进行LISP封装。
8.根据权利要求7所述的装置,其特征在于,所述装置进一步包括:确定单元; 所述确定单元,用于在所述发送单元将映射信息发送给该映射信息中的RLOC地址对应的路由器,之后,确定是否接收到该映射信息中的所有RLOC地址对应的路由器发送的响应信息,如果是,触发所述封装单元将接收到的数据报文进行LISP封装;否则,使用重传和确认机制,直到所述接收单元接收到该映射信息中的所有RLOC地址对应的路由器发送的响应信息时,触发所述封装单元将接收到的数据报文进行LISP封装。
9.根据权利要求8所述的装置,其特征在于, 所述获取单元,进一步用于将获取到的映射信息进行存储,并标识为不可用状态;当所述接收单元接收到该映射信息中的所有RLOC地址对应的路由器发送的响应信息时,标识该映射信息为可用状态。
10.根据权利要求9所述的装置,其特征在于, 所述确定单元,进一步用于当确定本地不存在该数据报文的目的EID地址对应的映射信息时,触发所述获取单元获取该数据报文的目的EID地址对应的映射信息;当确定本地存在该数据报文的目的EID地址对应的映射信息,且该映射信息标识为可用状态时,触发所述封装单元将接收到的数据报文进行LISP封装;当确定本地存在该数据报文的EID地址对应的映射信息,且该映射信息标识为不可用状态时,等到该映射信息标识为可用状态,触发所述封装单元将接收到的数据报文进行LISP封装。
11.根据权利要求9或10所述的装置,其特征在于, 所述获取单元,进一步用于当该EID地址对应的映射信息变化时,将该变化后的映射信息标识为不可用状态,当接收到该变化后的映射信息中的所有RLOC地址对应的路由器发送的响应信息时,将变化后的映射信息标识为可用状态; 所述发送单元,进一步用于当该EID地址对应的映射信息变化时,发送给该变换后的映射信息中的RLOC地址对应的路由器。
12.根据权利要求7-10任意一项所述的装置,其特征在于,在将该映射信息发送给该映射信息中的RLOC地址对应的路由器时,不向该映射信息中的最后一个RLOC地址对应的路由器发送。
【文档编号】H04L12/749GK104022956SQ201410259360
【公开日】2014年9月3日 申请日期:2014年6月11日 优先权日:2014年6月11日
【发明者】林长望 申请人:杭州华三通信技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1