处理路由下一跳的方法、装置及网络设备制造方法及图纸

技术编号:9465187 阅读:130 留言:0更新日期:2013-12-19 02:53
本发明专利技术提供一种处理路由下一跳的方法、装置及网络设备。方法包括:当确定在硬件路由表中添加对应于双栈用户的第一邻居的第一下一跳表项时,确定硬件路由表中是否存在关键字与第一下一跳表项相同的下一跳表项;如果不存在,则在硬件路由表中添加第一下一跳表项,并设置第一下一跳表项的状态标识,使得第一下一跳表项仅对应第一邻居;如果存在,则设置所述存在的下一跳表项的状态标识,使得所述存在的下一跳表项同时对应于第一邻居和第二邻居;其中,第一邻居是IPv4邻居和IPv6邻居中的一个,第二邻居是另一个。本发明专利技术技术方案可以实现IPv4邻居和IPv6邻居共享下一跳表项,解决了硬件路由表中下一跳表项资源不足的问题。

【技术实现步骤摘要】
处理路由下一跳的方法、装置及网络设备
本专利技术涉及通信技术,尤其涉及一种处理路由下一跳的方法、装置及网络设备。
技术介绍
随着互联网协议版本6(InternetProtocolVersion6,简称为IPv6)的推广,互联网协议版本4(InternetProtocolVersion4,简称为IPv4)/IPv6双栈用户越来越多。在IPv4/IPv6双栈应用环境下,当设备学习到IPv4邻居后,在硬件路由表的下一跳表项资源中添加对应的下一跳表项,当设备学习到IPv6邻居后,同样在硬件路由表的下一跳表项资源中添加对应的下一跳表项。在大汇聚扁平化网络环境中,如果一个IPv4/IPv6双栈用户上线,则在大汇聚网关设备上面就要为该用户添加IPv4的下一跳表项和IPv6的下一跳表项,这将导致大汇聚网关设备的硬件路由表中下一跳表项资源的不足。
技术实现思路
本专利技术提供一种处理路由下一跳的方法、装置及网络设备,用以实现IPv4邻居和IPv6邻居共享下一跳表项,解决硬件路由表中下一跳表项资源不足的问题。第一方面提供一种处理路由下一跳的方法,包括:当确定在硬件路由表中添加第一下一跳表项时,确定所述硬件路由表中是否存在关键字与所述第一下一跳表项相同的下一跳表项;所述第一下一跳表项是指对应于双栈用户的第一邻居的下一跳表项;如果确定出所述硬件路由表中不存在关键字与所述第一下一跳表项相同的下一跳表项,在所述硬件路由表中添加所述第一下一跳表项,并设置添加到所述硬件路由表中的所述第一下一跳表项的状态标识,使得添加到所述硬件路由表中的所述第一下一跳表项仅对应所述双栈用户的第一邻居;如果确定出所述硬件路由表中存在关键字与所述第一下一跳表项相同的下一跳表项,设置所述硬件路由表中存在的关键字与所述第一下一跳表项相同的下一跳表项的状态标识,使得所述硬件路由表中存在的关键字与所述第一下一跳表项相同的下一跳表项同时对应于所述双栈用户的第一邻居和所述双栈用户的第二邻居;其中,所述双栈用户的第一邻居是所述双栈用户的IPv4邻居和IPv6邻居中的一个,所述双栈用户的第二邻居是所述双栈用户的IPv4邻居和IPv6邻居中的另一个。第二方面提供一种处理路由下一跳的装置,包括:确定模块,用于在确定在硬件路由表中添加第一下一跳表项时,确定所述硬件路由表中是否存在关键字与所述第一下一跳表项相同的下一跳表项;所述第一下一跳表项是指对应于双栈用户的第一邻居的下一跳表项;添加模块,用于在所述确定模块确定出所述硬件路由表中不存在关键字与所述第一下一跳表项相同的下一跳表项时,在所述硬件路由表中添加所述第一下一跳表项,并设置添加到所述硬件路由表中的所述第一下一跳表项的状态标识,使得添加到所述硬件路由表中的所述第一下一跳表项仅对应所述双栈用户的第一邻居;第一状态设置模块,用于在所述确定模块确定出所述硬件路由表中存在关键字与所述第一下一跳表项相同的下一跳表项时,设置所述硬件路由表中存在的关键字与所述第一下一跳表项相同的下一跳表项的状态标识,使得所述硬件路由表中存在的关键字与所述第一下一跳表项相同的下一跳表项同时对应于所述双栈用户的第一邻居和所述双栈用户的第二邻居;其中,所述双栈用户的第一邻居是所述双栈用户的IPv4邻居和IPv6邻居中的一个,所述双栈用户的第二邻居是所述双栈用户的IPv4邻居和IPv6邻居中的另一个。第三方面提供一种网络设备,包括本专利技术第二方面提供的任一处理路由下一跳的装置。本专利技术提供的处理路由下一跳的方法、装置及网络设备,当确定在硬件路由表中添加对应于双栈用户的第一邻居的第一下一跳表项时,首先确定硬件路由表中是否存在关键字与该第一下一跳表项相同的下一跳表项,如果确定硬件路由表中不存在关键字与该第一下一跳表项相同的下一跳表项,则在硬件路由表中添加第一下一跳表项,并通过设置第一下一跳表项的状态标识,使得第一下一跳表项仅对应于双栈用户的第一邻居;如果确定硬件路由表中存在关键字与该第一下一跳表项相同的下一跳表项,则不在硬件路由表中添加第一下一跳表项,而是直接设置硬件路由表中存在的关键字与该第一下一跳表项相同的下一跳表项的状态标识,使得硬件路由表中存在的关键字与该第一下一跳表项相同的下一跳表项同时对应于双栈用户的第一邻居和第二邻居,其中,双栈用户的第一邻居是IPv4邻居和IPv6邻居中的一个,而第二邻居是IPv4邻居和IPv6邻居中的另一个。由此可见,本专利技术通过设置硬件路由表中下一跳表项的状态标识,可以实现IPv4邻居和IPv6邻居共享同一下一跳表项,有利于节约硬件路由表中的下一跳表项资源,在下一跳表项资源一定的情况下有利于带动更多的用户。附图说明图1为本专利技术实施例提供的一种处理路由下一跳的方法流程图;图2为本专利技术实施例提供的一种处理路由下一跳的装置结构示意图;图3为本专利技术实施例提供的另一种处理路由下一跳的装置结构示意图。具体实施方式图1为本专利技术实施例提供的一种处理路由下一跳的方法流程图。如图1所示,所述方法包括:101、当确定在硬件路由表中添加第一下一跳表项时,确定所述硬件路由表中是否存在关键字与所述第一下一跳表项相同的下一跳表项,所述第一下一跳表项是指对应于双栈用户的第一邻居的下一跳表项;如果确定结果为否,即确定出所述硬件路由表中不存在关键字与所述第一下一跳表项相同的下一跳表项,执行102;如果确定结果为是,即确定出所述硬件路由表中存在关键字与所述第一下一跳表项相同的下一跳表项,执行103。102、在所述硬件路由表中添加所述第一下一跳表项,并设置添加到所述硬件路由表中的所述第一下一跳表项的状态标识,使得添加到所述硬件路由表中的所述第一下一跳表项仅对应所述双栈用户的第一邻居。103、设置所述硬件路由表中存在的关键字与所述第一下一跳表项相同的下一跳表项的状态标识,使得所述硬件路由表中存在的关键字与所述第一下一跳表项相同的下一跳表项同时对应于所述双栈用户的第一邻居和所述双栈用户的第二邻居;其中,所述双栈用户的第一邻居是所述双栈用户的IPv4邻居和IPv6邻居中的一个,所述双栈用户的第二邻居是所述双栈用户的IPv4邻居和IPv6邻居中的另一个。本实施例提供的方法适用于IPv4/IPv6双栈应用环境下对下一跳表项的处理。本实施例中的双栈用户是指既存在IPv4地址又存在IPv6地址的用户,更有甚者,双栈用户可能存在多个IPv6临时地址。对应于双栈用户的IPv4地址的邻居,可称为IPv4邻居;对应于双栈用户的IPv6地址的邻居,可称为IPv6邻居。在本实施例中,无论是对对应于IPv4邻居的下一跳表项的处理,还是对对应于IPv6邻居的下一跳表项的处理,其处理过程均相同。为了描述上的统一和方便,本实施例以第一邻居和第二邻居代替双栈用户的IPv4邻居和IPv6邻居,其中,第一邻居可以是双栈用户的IPv4邻居和IPv6邻居中的一个,则第二邻居就是双栈用户的IPv4邻居和IPv6邻居的另一个。具体来说,如果第一邻居是IPv4邻居,则第二邻居是IPv6邻居;如果第一邻居是IPv6邻居,则第二邻居就是IPv4邻居。同时,为了简化描述,将对应于双栈用户的第一邻居的下一跳表项称为第一下一跳表项。这里的“第一”并没有个数和先后顺序的限定,仅仅是为了便于描述。则当确定在硬件本文档来自技高网...
处理路由下一跳的方法、装置及网络设备

【技术保护点】
一种处理路由下一跳的方法,其特征在于,包括:当确定在硬件路由表中添加第一下一跳表项时,确定所述硬件路由表中是否存在关键字与所述第一下一跳表项相同的下一跳表项;所述第一下一跳表项是指对应于双栈用户的第一邻居的下一跳表项;如果确定出所述硬件路由表中不存在关键字与所述第一下一跳表项相同的下一跳表项,在所述硬件路由表中添加所述第一下一跳表项,并设置添加到所述硬件路由表中的所述第一下一跳表项的状态标识,使得添加到所述硬件路由表中的所述第一下一跳表项仅对应所述双栈用户的第一邻居;如果确定出所述硬件路由表中存在关键字与所述第一下一跳表项相同的下一跳表项,设置所述硬件路由表中存在的关键字与所述第一下一跳表项相同的下一跳表项的状态标识,使得所述硬件路由表中存在的关键字与所述第一下一跳表项相同的下一跳表项同时对应于所述双栈用户的第一邻居和所述双栈用户的第二邻居;其中,所述双栈用户的第一邻居是所述双栈用户的IPv4邻居和IPv6邻居中的一个,所述双栈用户的第二邻居是所述双栈用户的IPv4邻居和IPv6邻居中的另一个。

【技术特征摘要】
1.一种处理路由下一跳的方法,其特征在于,包括:当确定在硬件路由表中添加第一下一跳表项时,确定所述硬件路由表中是否存在关键字与所述第一下一跳表项相同的下一跳表项;所述第一下一跳表项是指对应于双栈用户的第一邻居的下一跳表项;如果确定出所述硬件路由表中不存在关键字与所述第一下一跳表项相同的下一跳表项,在所述硬件路由表中添加所述第一下一跳表项,并设置添加到所述硬件路由表中的所述第一下一跳表项的状态标识,使得添加到所述硬件路由表中的所述第一下一跳表项仅对应所述双栈用户的第一邻居;如果确定出所述硬件路由表中存在关键字与所述第一下一跳表项相同的下一跳表项,设置所述硬件路由表中存在的关键字与所述第一下一跳表项相同的下一跳表项的状态标识,使得所述硬件路由表中存在的关键字与所述第一下一跳表项相同的下一跳表项同时对应于所述双栈用户的第一邻居和所述双栈用户的第二邻居;其中,所述双栈用户的第一邻居是所述双栈用户的IPv4邻居和IPv6邻居中的一个,所述双栈用户的第二邻居是所述双栈用户的IPv4邻居和IPv6邻居中的另一个。2.根据权利要求1所述的方法,其特征在于,还包括:当确定所述第一邻居的报文转发行为由转发变更为丢弃时或者当确定要从所述硬件路由表中删除所述第一下一跳表项时,获取所述第一下一跳表项的状态标识;如果所述第一下一跳表项的状态标识标识所述第一下一跳表项仅对应所述双栈用户的第一邻居,则直接从所述硬件路由表中删除所述第一下一跳表项;如果所述第一下一跳表项的状态标识标识所述第一下一跳表项同时对应于所述双栈用户的第一邻居和所述双栈用户的第二邻居,则设置所述第一下一跳表项的状态标识,使得所述第一下一跳表项仅对应于所述双栈用户的第二邻居;如果所述第一下一跳表项的状态标识标识所述第一下一跳表项仅对应于所述双栈用户的第二邻居,则返回错误。3.根据权利要求1所述的方法,其特征在于,还包括:当确定所述第一邻居的介质访问控制MAC地址发生变更时,将所述硬件路由表中所述第一下一跳表项中的目的MAC地址更新为所述第一邻居的变更后的MAC地址;或者当确定向所述第一邻居发送报文的接口发生变更时,将所述硬件路由表中所述第一下一跳表项中的出口更新为所述变更后的接口;或者当确定向所述第一邻居发送报文的接口所在线卡的标识ID发生变更时,将所述硬件路由表中所述第一下一跳表项中的出口所在线卡的ID更新为所述接口所在线卡的变更后的ID。4.根据权利要求1或2或3所述的方法,其特征在于,所述确定在硬件路由表中添加第一下一跳表项,包括:当学习到所述第一邻居时,确定要在所述硬件路由表中添加所述第一下一跳表项;和/或当所述第一邻居的报文转发行为由丢弃变为转发时,确定要在所述硬件路由表中添加所述第一下一跳表项。5.根据权利要求1或2或3所述的方法,其特征在于,所述第一下一跳表项的关键字包括:目的MAC地址、出口、出口所在虚拟局域网VLAN和转发行为。6.一种处理路由下一跳的装置,其特征在于,包括:确定模块,用于在确定在硬件路由表中添加第一下一跳表项时,确定所述硬件路由表中是否存在关键字与所述第一下一跳表项相同的下一跳表...

【专利技术属性】
技术研发人员:陈杰熊昭荣
申请(专利权)人:福建星网锐捷网络有限公司
类型:发明
国别省市:

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

1