路由处理方法和装置的制造方法

文档序号:10578069阅读:178来源:国知局
路由处理方法和装置的制造方法
【专利摘要】本发明提供一种路由处理方法和装置,该方法应用在网络设备上,网络设备包括中央处理器CPU和专用集成电路ASIC芯片,该方法由CPU执行,包括:在对路由表项进行分类处理后,基于分类结果判断任一类路由表项是否为本机路由表项;当该类路由表项不是本机路由表项时,为该类路由表项确定目标路由表项;将目标路由表项下发给ASIC芯片,以使ASIC芯片将目标路由表项存储在本地路由表中。应用本发明实施例,在任一类路由不是本机路由表项时,为每类路由表项确定目标路由表项,将目标路由表项下发给ASIC芯片,因此,在ASIC芯片中只需存储从每类路由表项中确定的目标路由表项即可,无须存储每类路由表项的所有路由条目,从而能够达到节省ASIC芯片的路由表项资源的目的。
【专利说明】
路由处理方法和装置
技术领域
[0001] 本发明设及通信技术领域,尤其设及一种路由处理方法和装置。
【背景技术】
[0002] 路由器(Router,路由器,又称路径器)是一种计算机网络设备,它能将网络流量 通过一个个网络传送至目的地(选择传输路径),运个过程称为路由。而路由器的路由能力 (即支持的路由条目)决定于路由器的ASIC(Application Specific Integrated Cir州it, 专用集成电路)忍片的路由表项资源,而对于一个ASIC忍片而言,其路由表项资源是有限 的。
[0003] 相关技术中,CPU (Central Processing化it,中央处理器)会将学习到的所有的 路由表项全部下发给ASIC忍片,运样会浪费ASIC忍片的路由表项资源。

【发明内容】

[0004] 有鉴于此,本发明提供一种路由处理方法和装置,W解决相关技术中浪费ASIC忍 片的路由表项资源的问题。
[0005] 具体地,本发明是通过如下技术方案实现的:
[0006] 本发明的一方面,提供一种路由处理方法,所述方法应用在网络设备上,所述网络 设备包括中央处理器CPU和专用集成电路ASIC忍片,所述方法由所述CPU执行,包括:
[0007] 在对路由表项进行分类处理后,基于分类结果判断任一类路由表项是否为本机路 由表项;
[000引当该类路由表项不是本机路由表项时,为该类路由表项确定目标路由表项;
[0009] 将所述目标路由表项下发给所述ASIC忍片,W使所述ASIC忍片将所述目标路由 表项存储在本地路由表中。
[0010] 本发明的另一方面,提供一种路由处理装置,所述装置应用在网络设备的CPU上, 所述网络设备还包括专用集成电路ASIC忍片,所述装置包括:
[0011] 判断单元,用于在对路由表项进行分类处理后,基于分类结果判断任一类路由表 项是否为本机路由表项;
[0012] 确定单元,用于当该类路由表项不是本机路由表项时,为该类路由表项确定目标 路由表项;
[001引发送单元,用于将所述目标路由表项下发给所述ASIC忍片,W使所述ASIC忍片将 所述目标路由表项存储在本地路由表中。
[0014] 应用本发明实施例,在任一类路由不是本机路由表项时,为每类路由表项确定目 标路由表项,将目标路由表项下发给ASIC忍片,因此,在ASIC忍片中只需存储从每类路由 表项中确定的目标路由表项即可,无须存储每类路由表项的所有路由条目,从而能够达到 节省ASIC忍片的路由表项资源的目的。
【附图说明】
[0015] 图1是本发明一示例性实施例示出的一种路由处理方法的流程示意图;
[0016] 图2是本发明一示例性实施例示出的一种路由处理装置所在设备的一硬件结构 示意图;
[0017] 图3是本发明一示例性实施例示出的一种路由处理装置的结构框图。
【具体实施方式】
[0018] 运里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述设及 附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。W下示例性实施例 中所描述的实施方式并不代表与本发明相一致的所有实施方式。相反,它们仅是与如所附 权利要求书中所详述的、本发明的一些方面相一致的装置和方法的例子。
[0019] 在本发明使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本发明。 在本发明和所附权利要求书中所使用的单数形式的"一种"、"所述"和"该"也旨在包括多 数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语"和/或"是指 并包含一个或多个相关联的列出项目的任何或所有可能组合。
[0020] 应当理解,尽管在本发明可能采用术语第一、第二、第=等来描述各种信息,但运 些信息不应限于运些术语。运些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离 本发明范围的情况下,第一信息也可W被称为第二信息,类似地,第二信息也可W被称为第 一信息。取决于语境,如在此所使用的词语"如果"可W被解释成为"在……时"或"当…… 时"或"响应于确定"。
[0021] 在设置有ASIC忍片的路由器中,ASIC忍片可W接收并存储CPU下发的路由表项, 在网络流量到达路由器时,ASIC忍片能够基于运些路由表项,查找路由表项,并根据查找到 的路由表项转发网络流量,但是,ASIC忍片只负责接收和存储,而不会对路由表项进行选择 存储,比如,CPU可能下发多条具有相同作用的路由表项,ASIC忍片会将运些路由表项全部 存储,而在转发网络流量时,却只选用其中的一条路由表项,即,运些具有相同作用的路由 表项只可能有一条是常用或者有效的,如此,会浪费ASIC忍片中大量的路由表项资源。为 此,本发明提供一种路由处理方法、装置W及网络设备,W解决浪费ASIC忍片的路由表项 资源的问题。
[0022] 在本发明实施例中,在网络设备中可W包括一个路由管理平台,在该路由管理平 台中可W存储CPU学习到的所有有效的路由表项,基于该路由管理平台中存储的路由表 项,CPU可W对运些路由表项进行分类,比如,根据每个路由表项中的IP地址和子网掩码将 路由表项进行分类处理,优选地,可W分类为本机路由表项、直连路由表项和转发路由表项 S类,基于路由表项的分类,对任一类路由表项进行处理,从而指导ASIC忍片存储路由表 项。
[0023] 为了使本技术领域的人员更好地理解本发明实施例中的技术方案,将结合W下附 图对本发明实施例中技术方案作进一步详细的说明。
[0024] 图1本发明一示例性实施例示出的一种路由处理方法的流程示意图。
[002引如图1所示,一种路由处理方法,该方法应用在网络设备上,该网络设备包括中央 处理器CPU和专用集成电路ASIC忍片,该方法由CPU执行,包括如下步骤:
[0026] 步骤101,在对路由表项进行分类处理后,基于分类结果判断任一类路由表项是否 为本机路由表项,若否,则执行步骤102,反之,执行步骤104。
[0027] 在本发明实施例中,本机路由表项可W包括上送本机设备产生的路由表项,基于 运类路由表项,在网络流量匹配到该类路由表项后,会直接上送本机。
[0028] 步骤102,为不是本机路由的任一类路由表项确定目标路由表项。
[0029] 根据本发明一可选实施例,在本步骤中,当任一类路由表项不是本机路由表项,且 是直连路由表项时,将直连路由表项中目的网络前缀相同的路由表项划分为第一子类路由 表项,并将该第一子类路由表项中的任一条路由表项确定为第一子类路由表项的目标路由 表项。本发明实施例中所述的直连路由表项包括本地网段中直连的两台主机或者设备之间 进行通讯的路由表项,如下表1中所示的路由表项:
[0030] 表 1
[0031]
[0032]
[0033] 如表1中所不,巧号1、3和5中对应的且连路由表巧的目的网络前缀均为 168. 118.,则可W将运立个直连路由表项划分为一个第一子类路由表项,同理地,序号2、4 和6中对应的直连路由表项的目的网络前缀均为192. 118.,可W划分为另一个第一子类路 由表项,根据该可选实施例,可W从划分出任一个第一子类路由表项中选择任一个路由表 项作为该第一子类路由表项的目标路由表项,比如,目的网络前缀为168. 118.的运个第一 子类路由表项,包括 168. 118. 0.23/28,168. 118. 0.2/28 和 168. 118. 0. 1/28,可 W从中选择 任一个,比如168. 118. 0. 2/28作为目的网络前缀为168. 118.的运个第一子类路由表项的 目标路由表项。需要说明的是,表1中所示路由表项均为示例性的,本发明对此不作限制。
[0034] 根据本发明另一可选实施例,当任一类路由表项不是本机路由表项,且是转发路 由表项时,将转发路由表项中的目的网络前缀相同的路由表项划分为第二子类路由表项, 而对于第二子类路由表项来说,其中包括的路由表项对应的出接口不同,从而路由表项的 路由优先级也会不同,对于运种情况,在本发明实施例中,将从划分出的任一第二子类路由 表项中获取路由优先级最高的路由表项,W将其确定为该第二子类路由表项的目标路由表 项。本发明实施例中所述的转发路由表项包括用于在非本地网段进行网络流量转发的路由 表项。如表2所示,为任一个第二子类路由表项示例:
[0035] 表 2
[0036]
[0037] 如表 2 中所示,128. 118. I. 8/28,128. 118. I. 2/28 W及 128. 118. I. 1/28 对应的出 接口分别为A、B和C,路由优先级由高到低,在为该第二子类路由表项确定目标路由表项 时,将确定路由优先级最高的128. 118. 1. 8/28作为目标路由表项。
[0038] 进一步地,当确定的任一第二子类路由表项的目标路由表项(路由优先级最高的 路由表项)对应的出接口岩掉时,将从该第二子类路由表项中重新获取路由优先级次高的 路由表项,将该路由表项更新为该第二子类路由表项的目标路由表项,比如,表2中所示的 序号1对应的转发路由表项128. 118. 1.8/28,其对应的出接口 A岩掉,从而将序号2对应的 转发路由表项128. 118. 1. 2/28作为该第二子类路由表项的目标路由表项。更近一步地,当 学习到路由优先级较当前目标路由表项高的路由表项时,将W该路由优先级较高的路由表 项更新为目标路由表项。
[0039] 步骤103,将目标路由表项下发给ASIC忍片,W使ASIC忍片将目标路由表项存储 在本地路由表中。
[0040] 在步骤102中确定出各类路由表项的目标路由表项后,在本步骤中,将确定出的 目标路由表项下发给ASIC忍片,从而ASIC忍片将运些路由表项存储在本地路由表中,当接 收到网络流量时,ASIC忍片判断是否从本地路由表项中匹配到该网络流量的目的IP地址, 若能够匹配到,则通过匹配的路由表项转发该网络流量。
[0041] 步骤104,禁止将属于本机路由表项的路由表项下发给ASIC忍片。
[0042] 在本步骤中,由于上送本机的网络流量在匹配到对应的本机路由表项后,将直接 转发给本机CPU进行业务处理,然而,在本机CPU中可W包括路由管理平台,其中包括有本 机CPU学习到的所有路由表项,因此,该网络流量可W直接去匹配路由管理平台中的路由 表项,最终被送入本机CPU,运样能够减少本机CPU与ASIC忍片之间的交互,还减少本机 CPU的负载。因此,对于本机路由表项而言,在本发明实施例中,可W禁止将本机路由表项下 发给ASIC忍片,从而节省ASIC忍片的表项资源。
[0043] 与前述路由处理方法的实施例相对应,本发明还提供了路由处理装置的实施例。
[0044] 本发明路由处理装置300的实施例可W应用在网络设备上。装置实施例可W通过 软件实现,也可W通过硬件或者软硬件结合的方式实现。W软件实现为例,作为一个逻辑意 义上的装置,是通过其所在设备的处理器将非易失性存储器中对应的计算机程序指令读取 到内存中运行形成的。从硬件层面而言,如图2所示,为本发明路由处理装置所在设备的一 种硬件结构图,除了图2所示的处理器、内存、网络接口、W及非易失性存储器之外,实施例 中装置所在的网络设备通常根据该设备的实际功能,还可W包括其他硬件,对此不再寶述。
[0045] 图3是本发明一示例性实施例示出的一种路由处理装置的结构框图。
[0046] 如图3所示,一种路由处理装置300,该装置应用在网络设备的CPU上,该网络设备 还包括专用集成电路ASIC忍片,该装置包括判断单元301、确定单元302和发送单元303。
[0047] 判断单元301用于在对路由表项进行分类处理后,基于分类结果判断任一类路由 表项是否为本机路由表项。
[0048] 确定单元302用于当该类路由表项不是本机路由表项时,为该类路由表项确定目 标路由表项。
[0049] 根据本发明一可选实施例,确定单元302可W包括第一划分子单元和第一确定子 单元。其中,第一划分子单元用于当任一类路由表项为直连路由表项时,将所述直连路由表 项中目的网络前缀相同的路由表项划分为第一子类路由表项;第一确定子单元用于将任一 所述第一子类路由表项中的任一条路由表项确定为该第一子类路由表项的目标路由表项。
[0050] 根据本发明另一可选实施例,确定单元302可W包括第二划分子单元和第二确定 子单元。其中,第二划分子单元用于当任一类路由表项为转发路由表项时,将所述转发路由 表项中目的网络前缀相同的路由表项划分为第二子类路由表项,所述第二子类路由表项中 的路由表项具有不同的路由优先级和不同的出接口;第二确定子单元用于将任一所述第二 子类路由表项中的路由优先级最高的路由表项确定为该第二子类路由表项的目标路由表 项。进一步地,基于该可选实施例,一种路由处理装置300还可W包括更新单元,可W用于 当所述路由优先级最高的路由表项对应的出接口岩掉时,从该第二子类路由表项中获取优 先级次高的路由表项,W更新该第二子类路由表项的目标路由表项。
[0051] 发送单元303用于将所述目标路由表项下发给所述ASIC忍片,W使所述ASIC忍 片将所述目标路由表项存储在本地路由表中。
[0052] 本发明还提供另一可选实施例,一种路由处理装置300还可W包括禁止单元,可 W用于当任一类路由表项为本机路由表项时,禁止将该类路由表项下发给所述ASIC忍片。
[0053] 上述装置中各个单元的功能和作用的实现过程具体详见上述方法中对应步骤的 实现过程,在此不再寶述。
[0054] 对于装置实施例而言,由于其基本对应于方法实施例,所W相关之处参见方法实 施例的部分说明即可。W上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件 说明的单元可W是或者也可W不是物理上分开的,作为单元显示的部件可W是或者也可W 不是物理单元,即可W位于一个地方,或者也可W分布到多个网络单元上。可W根据实际的 需要选择其中的部分或者全部模块来实现本发明方案的目的。本领域普通技术人员在不付 出创造性劳动的情况下,即可W理解并实施。
[00巧]W上所述仅为本发明的较佳实施例而已,并不用W限制本发明,凡在本发明的精 神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。
【主权项】
1. 一种路由处理方法,其特征在于,所述方法应用在网络设备上,所述网络设备包括中 央处理器CPU和专用集成电路ASIC芯片,所述方法由所述CPU执行,包括: 在对路由表项进行分类处理后,基于分类结果判断任一类路由表项是否为本机路由表 项; 当该类路由表项不是本机路由表项时,为该类路由表项确定目标路由表项; 将所述目标路由表项下发给所述ASIC芯片,以使所述ASIC芯片将所述目标路由表项 存储在本地路由表中。2. 根据权利要求1所述的方法,其特征在于,所述方法还包括: 当任一类路由表项为本机路由表项时,禁止将该类路由表项下发给所述ASIC芯片。3. 根据权利要求1所述的方法,其特征在于,所述当该类路由表项不是本机路由表项 时,为该类路由表项确定目标路由表项,包括: 当任一类路由表项为直连路由表项时,将所述直连路由表项中目的网络前缀相同的路 由表项划分为第一子类路由表项; 将任一所述第一子类路由表项中的任一条路由表项确定为该第一子类路由表项的目 标路由表项。4. 根据权利要求1所述的方法,其特征在于,所述当该类路由表项不是本机路由表项 时,为该类路由表项确定目标路由表项,包括: 当任一类路由表项为转发路由表项时,将所述转发路由表项中目的网络前缀相同的路 由表项划分为第二子类路由表项,所述第二子类路由表项中的路由表项具有不同的路由优 先级和不同的出接口; 将任一所述第二子类路由表项中的路由优先级最高的路由表项确定为该第二子类路 由表项的目标路由表项。5. 根据权利要求4所述的方法,其特征在于,所述方法还包括: 当所述路由优先级最高的路由表项对应的出接口宕掉时,从该第二子类路由表项中获 取路由优先级次高的路由表项,以更新该第二子类路由表项的目标路由表项。6. -种路由处理装置,其特征在于,所述装置应用在网络设备的CPU上,所述网络设备 还包括专用集成电路ASIC芯片,所述装置包括: 判断单元,用于在对路由表项进行分类处理后,基于分类结果判断任一类路由表项是 否为本机路由表项; 确定单元,用于当该类路由表项不是本机路由表项时,为该类路由表项确定目标路由 表项; 发送单元,用于将所述目标路由表项下发给所述ASIC芯片,以使所述ASIC芯片将所述 目标路由表项存储在本地路由表中。7. 根据权利要求6所述的装置,其特征在于,所述装置还包括: 禁止单元,用于当任一类路由表项为本机路由表项时,禁止将该类路由表项下发给所 述ASIC芯片。8. 根据权利要求6所述的装置,其特征在于,所述确定单元,包括: 第一划分子单元,用于当任一类路由表项为直连路由表项时,将所述直连路由表项中 目的网络前缀相同的路由表项划分为第一子类路由表项; 第一确定子单元,用于将任一所述第一子类路由表项中的任一条路由表项确定为该第 一子类路由表项的目标路由表项。9. 根据权利要求6所述的装置,其特征在于,所述确定单元,包括: 第二划分子单元,用于当任一类路由表项为转发路由表项时,将所述转发路由表项中 目的网络前缀相同的路由表项划分为第二子类路由表项,所述第二子类路由表项中的路由 表项具有不同的路由优先级和不同的出接口; 第二确定子单元,用于将任一所述第二子类路由表项中的路由优先级最高的路由表项 确定为该第二子类路由表项的目标路由表项。10. 根据权利要求9所述的装置,其特征在于,所述装置还包括: 更新单元,用于当所述路由优先级最高的路由表项对应的出接口宕掉时,从该第二子 类路由表项中获取优先级次高的路由表项,以更新该第二子类路由表项的目标路由表项。
【文档编号】H04L12/741GK105939265SQ201510497230
【公开日】2016年9月14日
【申请日】2015年8月13日
【发明人】李喻
【申请人】杭州迪普科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1