路由表的实时动态分解存储方法和路由数据转发方法技术

技术编号:12732927 阅读:111 留言:0更新日期:2016-01-20 16:09
本发明专利技术公开了一种路由表的实时动态分解存储方法和路由数据转发方法,存储方法包括:获取新到达路由的单元前缀,将该单元前缀与各线卡上已经存储的单元前缀进行比较,如果存在与该路由相同的单元前缀,则将该新到达的路由存储在对应的线卡中;如果各线卡上均不存在与该单元前缀相同的数值,则根据各线卡的路由存储容量,将新到达路由存储在路由存储容量最少的线卡中。本发明专利技术具有如下优点:根据不同的单元前缀,将到达的路由项动态分解存储到各线卡,实现各线卡的负载均衡;同时,该设计对于任意时刻到达的路由项都能够实现动态分解存储,随机能力强,更加适应路由表从未知到已知的变化过程,实时性强。

【技术实现步骤摘要】

本专利技术涉及通信领域,具体涉及一种路由表的实时动态分解存储方法和路由数据转发方法
技术介绍
Internet技术的发展给路由器的处理能力带来了很大的挑战,越来越多的研究也就致力于解决路由表存储与快速查找问题。但是,目前所提出的路由表分解存储方法都只是基于一定的算法,实现各线卡的路由负载均衡,并没有从路由表的状态以及路由项的动态变化方面进行考虑。随着路由表不断的更新,这些静态分解存储方法就不能很好的解决线卡负载均衡的问题,甚至可能影响整个路由表的处理速度。
技术实现思路
本专利技术旨在至少解决上述技术问题之一。为此,本专利技术的第一个目的在于提出一种路由表的实时动态分解存储方法。本专利技术的第二个目的在于提出一种路由数据转发方法。为了实现上述目的,本专利技术第一方面的实施例公开了一种路由表的实时动态分解存储方法,包括以下步骤:S1:获取新到达路由的单元前缀,其中,所述单元前缀为新到达路由的路由地址前缀前八位对应的数值;S2:将所述单元前缀与各线卡已经存储的单元前缀进行比较,如果某个线卡中已经存储了与所述新到达路由项相同的单元前缀,则将所述新到达路由存储在所述单元前缀对应的线卡中;如果各线卡均不存在与所述路由项相同的单元前缀,则进入步骤S3;S3:获取所有线卡路由存储容量;以及S4:将所述新到达路由存储在路由存储容量最少的线卡中。根据本专利技术实施例的路由表的实时动态分解存储方法,根据不同的单元前缀,将到达的路由项动态存储到各线卡,实现各线卡的负载均衡;同时,该设计对于任意时刻到达的路由项都能够实现动态分解存储,随机能力强,更加适应路由表从未知到已知的变化过程,实时性强。另外,根据本专利技术上述实施例的路由表的实时动态分解存储方法,还可以具有如下附加的技术特征:进一步地,所述步骤S4进一步包括:S41:如果所述路由存储容量最少的线卡为多个,则获取所述多个线卡中已经存储的单元前缀的数量;S42:分别统计所述多个线卡上存储的不同单元前缀数量,其中,所述不同单元前缀数量为所述多个线卡中所有已经存储的单元前缀数量;以及S43:将所述新到达路由存储在所述不同单元前缀数量最少的线卡中。进一步地,所述步骤S43进一步包括:S431:如果所述不同单元前缀数量最少的线卡为多个,则获取所述多个线卡的序列号;S432:将所述新到达路由按照所述多个线卡的序列号顺序存储。为了实现上述目的,本专利技术第二方面的实施例公开了一种路由数据转发方法,包括以下步骤:定义接收新到达路由的线卡为接收线卡;获取所述新到达路由的宿主线卡,其中,所述宿主线卡为与所述新到达路由的目的地址匹配的线卡,所述宿主线卡是通过上述路由表的实时动态分解存储方法确定的;判断所述接收线卡与所述宿主线卡是否为同一线卡,如果是,则所述接收线卡对所述新到达路由进行最长前缀匹配后转发所述新到达路由;如果否,则所述接收线卡将所述新到达路由转发给所述宿主线卡,所述宿主线卡进行最长前缀匹配后转发所述新到达路由。根据本专利技术实施例的路由数据转发方法,根据不同的单元前缀,将到达的路由项动态存储到各线卡,实现各线卡的负载均衡;同时,该设计对于任意时刻到达的路由项都能够实现动态分解存储,随机能力强,更加适应路由表从未知到已知的变化过程,实时性强。本专利技术的附加方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本专利技术的实践了解到。附图说明本专利技术的上述和/或附加的方面和优点从结合下面附图对实施例的描述中将变得明显和容易理解,其中:图1是本专利技术一个实施例的路由表的实时动态分解存储方法的流程图;图2是本专利技术一个实施例的路由数据转发方法的流程图。具体实施方式下面详细描述本专利技术的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本专利技术,而不能理解为对本专利技术的限制。在本专利技术的描述中,需要理解的是,术语“中心”、“纵向”、“横向”、“上”、“下”、“前”、“后”、“左”、“右”、“竖直”、“水平”、“顶”、“底”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本专利技术和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本专利技术的限制。此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性。在本专利技术的描述中,需要说明的是,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本专利技术中的具体含义。参照下面的描述和附图,将清楚本专利技术的实施例的这些和其他方面。在这些描述和附图中,具体公开了本专利技术的实施例中的一些特定实施方式,来表示实施本专利技术的实施例的原理的一些方式,但是应当理解,本专利技术的实施例的范围不受此限制。相反,本专利技术的实施例包括落入所附加权利要求书的精神和内涵范围内的所有变化、修改和等同物。以下结合附图描述根据本专利技术实施例的路由表的实时动态分解存储方法。请参考图1,路由表的实时动态分解存储方法包括以下步骤:S1:获取新到达路由的单元前缀,其中,单元前缀为新到达路由的路由地址前缀前八位对应的数值。在本专利技术的一个示例中,新到达路由的地址为192.154.0.0/14,其中“14”为路由前缀长度,单元前缀可以为路由地址前缀中的前n位。在本专利技术的一个实施例中,单元前缀为路由项地址前缀的前8位,即为十进制路由地址的第一字节数值,即单元前缀为“192”。S2:将单元前缀与路由表中各线卡已经存储的单元前缀的数值进行比较,如果某个线卡中已经存储了与所述新到达路由项相同的单元前缀,则将所述新到达路由存储在所述单元前缀对应的线卡中;如果各线卡均不存在与所述路由项相同的单元前缀,则进入步骤S3。在本专利技术的一个示例中,假设路由器具有四个线卡,分别为线卡LC0,LC1,LC2,LC3。如果四个线卡中的某个线卡中存储了值为‘192’的单元前缀,则新到达路由存储在该单元前缀对应的线卡中;如果四个线卡中均没有存储值为‘192’的单元前缀,则进入步骤S本文档来自技高网...
路由表的实时动态分解存储方法和路由数据转发方法

【技术保护点】
一种路由表的实时动态分解存储方法,其特征在于,包括以下步骤:S1:获取新到达路由的单元前缀,其中,所述单元前缀为新到达路由的路由地址前缀前八位对应的数值;S2:将所述单元前缀与各线卡已经存储的单元前缀进行比较,如果某个线卡中已经存储了与所述新到达路由项相同的单元前缀,则将所述新到达路由存储在所述单元前缀对应的线卡中;如果各线卡均不存在与所述路由项相同的单元前缀,则进入步骤S3;S3:获取所有线卡路由存储容量;以及S4:将所述新到达路由存储在路由存储容量最少的线卡中。

【技术特征摘要】
1.一种路由表的实时动态分解存储方法,其特征在于,包括以下步骤:
S1:获取新到达路由的单元前缀,其中,所述单元前缀为新到达路由的路
由地址前缀前八位对应的数值;
S2:将所述单元前缀与各线卡已经存储的单元前缀进行比较,
如果某个线卡中已经存储了与所述新到达路由项相同的单元前缀,则
将所述新到达路由存储在所述单元前缀对应的线卡中;
如果各线卡均不存在与所述路由项相同的单元前缀,则进入步骤S3;
S3:获取所有线卡路由存储容量;以及
S4:将所述新到达路由存储在路由存储容量最少的线卡中。
2.根据权利要求1所述的路由表的实时动态分解存储方法,其特征在于,
所述步骤S4进一步包括:
S41:如果所述路由存储容量最少的线卡为多个,则获取所述多个线卡中
已经存储的单元前缀的数量;
S42:分别统计所述多个线卡上存储的不同单元前缀数量,其中,所述不
同单元前缀数量为所述多个线卡中已经存储的单元前缀的数量;以及
S...

【专利技术属性】
技术研发人员:陈文龙兰李晶唐晓岚王淑贤
申请(专利权)人:首都师范大学
类型:发明
国别省市:北京;11

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

1