【技术实现步骤摘要】
路由方法及相关设备
[0001]本申请涉及网络
,尤其涉及一种路由方法及相关设备。
技术介绍
[0002]网际互连协议(Internet Protocol,IP)是传输控制协议(Transmission Control Protocol,TCP)/IP体系中的网络层协议。设计IP的目的是提高网络的可扩展性:一是解决互联网问题,实现大规模、异构网络的互联互通;二是分割顶层网络应用和底层网络技术之间的耦合关系,以利于两者的独立发展。根据端到端的设计原则,IP只为主机提供一种无连接、不可靠的、尽力而为的数据包传输服务。IP网络传输中或者以IP构建的通信分组网中,路由查找是极其重要的部分,以最快速度匹配到目标IP地址对应的路由表项是路由查找的主要功能,其中,IP地址用于标识一个通信终端的通信地址。现有的路由表查找方法非常多,包括Lulea算法、PBF算法、Linux内核采用的LC
‑
trie算法和思科路由器采用的Tree Bitmap算法。然而,随着路由表的飞速增长(年增长约15%),导致现有路由查表方法的性能低下。
技术实现思路
[0003]本申请实施例提供了一种路由方法及相关设备,能够提高路由查表的效率。
[0004]第一方面,本申请实施例提供了一种路由方法,应用于第一路由设备,所述方法包括:接收来自第二路由设备的目标消息,所述第二路由设备为所述第一路由设备的下游路由设备,所述目标消息包括至少一个索引,所述至少一个索引为所述第二路由设备中的至少一个IP地址前缀对应的索引;在 ...
【技术保护点】
【技术特征摘要】
1.一种路由方法,其特征在于,应用于第一路由设备,所述方法包括:接收来自第二路由设备的目标消息,所述第二路由设备为所述第一路由设备的下游路由设备,所述目标消息包括至少一个索引,所述至少一个索引为所述第二路由设备中的至少一个IP地址前缀对应的索引;在接收到第一报文之后,向所述第二路由设备发送第二报文,所述第二报文包括所述第一报文和第一目标索引,所述第一目标索引用于所述第二路由设备确定所述第一报文的出端口,所述至少一个索引包括所述第一目标索引。2.根据权利要求1所述的方法,其特征在于,所述至少一个索引包括以下至少一项:路由引擎表的索引,完整前缀搜索树结构的数据表的索引,虚拟前缀搜索树结构的数据表的索引。3.根据权利要求1或2所述的方法,其特征在于,所述目标消息还包括所述至少一个IP地址前缀;在所述接收到来自第二路由设备的目标消息之后,在所述向所述第二路由设备发送第二报文之前,所述方法还包括:根据所述至少一个IP地址前缀中的任一IP地址前缀,查询第一目标数据表,以在所述第一目标数据表中确定与所述任一IP地址前缀最长前缀匹配的第一目标IP地址前缀;将所述至少一个索引中与所述任一IP地址前缀对应的索引增加在第二目标数据表中第二目标索引对应的表项中,所述第二目标索引在所述第一目标数据表中为所述第一目标IP地址前缀对应的索引;其中,若所述任一IP地址前缀为完整前缀搜索树结构的数据表中的IP地址前缀,所述第一目标数据表为完整前缀搜索树结构的数据表,所述第二目标数据表为路由引擎表;若所述任一IP地址前缀为虚拟前缀搜索树结构的数据表中的IP地址前缀,所述第一目标数据表为虚拟前缀搜索树结构的数据表,所述第二目标数据表为完整前缀搜索树结构的数据表或虚拟前缀搜索树结构的数据表;若所述任一IP地址前缀为三态内容寻址存储器表中的IP地址前缀,所述第一目标数据表为三态内容寻址存储器表,所述第二目标数据表为虚拟前缀搜索树结构的数据表。4.根据权利要求3所述的方法,其特征在于,第一数据表对应的第一完整前缀搜索树的深度与第二数据表对应的第二完整前缀搜索树的深度相同,且所述第一完整前缀搜索树的拓扑结构与所述第二完整前缀搜索树的拓扑结构不同;或所述第一完整前缀搜索树的深度与所述第二完整前缀搜索树的深度相差为1;所述第一数据表为所述第一路由设备中完整前缀搜索树结构的数据表,所述第二数据表为所述第二路由设备中完整前缀搜索树结构的数据表;所述方法还包括:接收来自所述第二路由设备的第一二进制串,所述第一二进制串为对所述第二完整前缀搜索树进行编码得到的二进制串;根据第二二进制串和所述第一完整前缀搜索树得到第三完整前缀搜索树,所述第二二进制串为所述第一二进制串与第三二进制串进行或操作后得到的二进制串,所述第三二进制串为对所述第一完整前缀搜索树进行编码得到的二进制串;根据所述第三完整前缀搜索树在所述第一数据表中增加表项;其中,所述增加的表项中的第二目标IP地址前缀为所述第三完整前缀搜索树中第一目标节点对应的IP地址前缀,所述第一目标节点为所述第三完整前缀搜索树相比于所述第一
完整前缀搜索树增加的节点,所述第一目标节点对应的IP地址前缀为所述第二完整前缀搜索树中第二目标节点对应的IP地址前缀,所述第一目标节点在所述第三完整前缀搜索树中的位置与所述第二目标节点在所述第二完整前缀搜索树中的位置相同,所述第二目标节点对应的IP地址前缀为所述第二数据表中的IP地址前缀;所述增加的表项中的第三目标索引为所述第一目标节点的最近祖先节点对应的索引。5.根据权利要求4所述的方法,其特征在于,所述对所述第一完整前缀搜索树进行编码,包括:将所述第一完整前缀搜索树补充为满二叉树,以得到第四完整前缀搜索树;对所述第四完整前缀搜索树进行编码;其中,所述第四完整前缀搜索树中对应有IP地址前缀的节点编码为1,所述第四完整前缀搜索树中的空节点以及对应无IP地址前缀的节点编码为0。6.根据权利要求3所述的方法,其特征在于,第一数据表对应的第一完整前缀搜索树的深度与第二数据表对应的第二完整前缀搜索树的深度的差值大于1;所述第一数据表为所述第一路由设备中完整前缀搜索树结构的数据表,所述第二数据表为所述第二路由设备中完整前缀搜索树结构的数据表;所述方法还包括:接收来自所述第二路由设备的第四二进制串,所述第四二进制串为对第一虚拟前缀搜索树进行编码得到的二进制串,所述第一虚拟前缀搜索树根据所述第二完整前缀搜索树得到;根据第五二进制串和所述第一完整前缀搜索树得到第二虚拟前缀搜索树,所述第五二进制串为所述第四二进制串与第三二进制串进行或操作后得到的二进制串,所述第三二进制串为对所述第一完整前缀搜索树进行编码得到的二进制串;根据所述第二虚拟前缀搜索树在所述第一数据表中增加表项;其中,所述增加的表项中的第二目标IP地址前缀为所述第一虚拟前缀搜索树中第三目标节点对应的IP地址前缀,所述第三目标节点为所述第二虚拟前缀搜索树相比于所述第一完整前缀搜索树增加的节点,所述第三目标节点对应的IP地址前缀为所述第一虚拟前缀搜索树中第四目标节点对应的IP地址前缀,所述第三目标节点在所述第二虚拟前缀搜索树中的位置与所述第四目标节点在所述第一虚拟前缀搜索树中的位置相同,所述第四目标节点对应的IP地址前缀为第三数据表中的IP地址前缀,所述第三数据表的查表结果用于查所述第二数据表;所述增加的表项中的第三目标索引为所述第三目标节点的最近祖先节点对应的索引。7.一种路由方法,其特征在于,应用于第二路由设备,所述方法包括:向第一路由设备发送目标消息,所述第二路由设备为所述第一路由设备的下游路由设备,所述目标消息包括至少一个索引,所述至少一个索引为所述第二路由设备中的至少一个IP地址前缀对应的索引;接收来自所述第一路由设备的第二报文,所述第二报文包括第一报文和第一目标索引,所述第一目标索引用于所述第二路由设备确定所述第一报文的出端口,所述至少一个索引包括所述第一目标索引。8.根据权利要求7所述的方法,其特征在于,所述至少一个索引包括以下至少一项:路由引擎表的索引,完整前缀搜索树结构的数据表的索引,虚拟前缀搜索树结构的数据表的
索引。9.根据权利要求7或8所述的方法,其特征在于,第一数据表对应的第一完整前缀搜索树的深度与第二数据表对应的第二完整前缀搜索树的深度相同,且所述第一完整前缀搜索树的拓扑结构与所述第二完整前缀搜索树的拓扑结构不同;或所述第一完整前缀搜索树的深度与所述第二完整前缀搜索树的深度相差为1;所述第一数据表为所述第一路由设备中完整前缀搜索树结构的数据表,所述第二数据表为所述第二路由设备中完整前缀搜索树结构的数据表;所述方法还包括:向所述第一路由设备发送第一二进制串,所述第一二进制串为对所述第二完整前缀搜索树进行编码得到的二进制串。10.根据权利要求9所述的方法,其特征在于,所述对所述第二完整前缀搜索树进行编码,包括:将所述第二完整前缀搜索树补充为满二叉树,以得到第五完整前缀搜索树;对所述第五完整前缀搜索树进行编码;其中,所述第五完整前缀搜索树中对应有IP地址前缀的节点编码为1,所述第五完整前缀搜索树中的空节点以及对应无IP地址前缀的节点编码为0。11.根据权利要求7或8所述的方法,其特征在于,第一数据表对应的第一完整前缀搜索树的深度与第二数据表对应的第二完整前缀搜索树的深度的差值大于1;所述第一数据表为所述第一路由设备中完整前缀搜索树结构的数据表,所述第二数据表为所述第二路由设备中完整前缀搜索树结构的数据表;所述方法还包括:向所述第一路由设备的第四二进制串,所述第四二进制串为对第一虚拟前缀搜索树进行编码得到的二进制串,所述第一虚拟前缀搜索树根据所述第二完整前缀搜索树得到。12.一种路由装置,其特征在于,应用于第一路由设备,所述装置包括:接收单元,用于接收来自第二路由设备的目标消息,所述第二路由设备为所述第一路由设备的下游路由设备,所述目标消息包括至少一个索引,所述至少一个索引为所述第二路由设备中的至少一个IP地址前缀对应的索引;发送单元,用于在接收到第一报文之后,向所述第二路由设备发送第二报文,所述第二报文包括所述第一报文和第一目标索引,所述第一目标索引用于所述第二路由设备确定所述第一报文的出端口,所述至少一个索引包括所述第一目标索引。13.根据权利要求12所述的装置,其特征在于,所述至少一个索引包括以下至少一项:路由引擎表的...
【专利技术属性】
技术研发人员:刘莉莉,喻径舟,陈哲,王闯,
申请(专利权)人:华为技术有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。