用于经由分布式路由器的分布式表查找的技术包括入口计算节点、中间计算节点以及出口计算节点。该分布式路由器的每个计算节点包括用于存储从该分布式路由器的路由表获得的不同网络路由条目集合的转发表。该入口计算节点基于包括在所接收到的网络分组中的目的地地址生成散列密钥。该散列密钥标识该分布式路由器的存储包括与该目的地地址相对应的网络路由条目的转发表的中间计算节点。该入口计算节点将所接收到的网络分组转发到该中间计算节点以便路由。该中间计算节点接收所转发的网络分组、确定该网络分组的目的地地址以及确定该出口计算节点以便从该分布式路由器传输该网络分组。
【技术实现步骤摘要】
【专利说明】用于分布式路由表查找的技术 背景 现代计算设备正在变成个人、商务以及社交用途的非常普遍的工具。这样,许多现 代计算设备能够连接到各种数据网络,包括互联网和公司内联网,以便通过这种网络检索 并接收数据通信。经常,连接到一个网络的计算设备需要与在不同网络上连接的计算设备 通信。 路由器是在两个或更多个网络之间转发数据通信的设备。为了这样做,路由器通 常包括用于确定传入网络分组所应当转发到的具体网络的路由表。传统的核心路由器是被 配置成用于支持全部在线速运行的上百个外部端口以及具有上百万个条目的路由表的专 用硬件设备。然而,这种核心路由器经常是昂贵的并且通常要求使用专有硬件组件。另外, 与其他类型的路由器(诸如例如基于软件的路由器)相比,基于硬件的路由器经常包括更 少的功能并且更难以配置和更新。 软件路由器或路由器集群是被配置成用于一起操作以便在两个或更多个网络或 其他端点之间路由网络分组的一组互连计算节点(例如,现成服务器、桌上计算机等等)。 为了以这种方式操作,软件路由器的每个计算节点通常必须保持整个路由表的副本。这样, 随着连接到软件路由器的网络数量增长,路由表的数量也随之增长。结果是,路由表变得更 大,执行路由表查找需要越多时间和计算资源(例如,存储器、存储设备、处理循环等等)。 附图简要描述 通过举例而非通过限制在附图中示出在此描述的概念。为了说明简单和清晰,图 中所示元素无需按比例绘制。当认为合适时,已经在附图中重复参照标号以便表明相应的 或类似的元素。 图1是用于经由包括多个计算节点的分布式路由器的分布式路由表查找的系统 的至少一个实施例的简化框图; 图2是图1的系统的分布式路由器的计算节点的至少一个实施例的简化框图; 图3是图1的系统的分布式路由器的计算节点的环境的至少一个实施例的简化框 图; 图4是图1的系统的分布式路由器的入口计算节点确定中间计算节点所使用的流 过滤器表的说明性实施例; 图5是图1的系统的分布式路由器的入口计算节点可执行的用于分布式路由表查 找的方法的至少一个实施例的简化流程图; 图6是图1的系统的分布式路由器的中间计算节点可执行的用于分布式路由表查 找的方法的至少一个实施例的简化流程图; 图7是经由分布式路由器的入口计算节点的所接收到的网络分组的直接路由的 系统的说明性实施例;以及 图8是图7的系统的分布式路由器的入口计算节点可执行的用于所接收到的网络 分组的直接路由的方法的至少一个实施例的简化流程图。 附图详细描述 尽管本公开的概念可受到各种修改和替代形式,已经通过举例在附图中示出并且 将在此详细地描述其特定实施例。然而,应当理解的是不旨在将本公开的概念限制为所公 开的具体形式,而是相反,本专利技术涵盖与本公开和所附权利要求书一致的所有修改、等效方 案和替代方案。 在说明书中对" 一个实施例"、"实施例"、"说明性实施例"等等的引用表明所描述 的实施例可包括具体的特征、结构或特性,但是每个实施例可无需包括该具体的特征、结构 或特性。而且,这种短语无需指代相同的实施例。而且,当结合实施例描述具体的特征、结 构或特性时,认为其在本领域普通技术人员结合显式地或未显式地描述的其他实施例实施 这种特征、结构或特性的知识范围内。此外,应当认识到列表中包括的"A、B和C中的至少 一个"形式的项目可意味着㈧;(B) ; (C) ; (A和B) ; (A和C) ; (B和C);或者(A、B和C)。 类似地,以"A、B、或C中的至少一个"的形式列出的项目可指㈧;(B) ; (C) ;(A和B) ;(A和 C) ;(B 和 C);或(A、B 和 C)。 在某些情况下,可在硬件、固件、软件、或其任何组合中实现所公开的实施例。所公 开的实施例还可被实现为由一个或多个瞬态或非瞬态机器可读(例如计算机可读)存储介 质携带或存储在其上的指令,这些指令可由一个或多个处理器读取并执行。机器可读存储 介质可被实施为任何用于存储或传输机器可读形式的信息的存储设备、机构、或其他物理 结构(例如,易失性或非易失性存储器、介质盘、或其他介质设备)。 在附图中,可用特定安排和/或排序示出某些结构或方法特征。然而,应当认识到 可不要求这种特定安排和/或排序。而是,在某些实施例中,可用与说明性附图中示出的不 同的方式和/或顺序安排这种特征。此外,具体附图中包括结构或方法特征不意味着暗示 在所有实施例中要求这种特征以及在某些实施例中可不包括这种特征或者这种特征可与 其他特征组合。 现在参照图1和图2,在说明性实施例中,用于经由分布式路由器102(例如,集群 路由器)的多个计算节点110的分布式路由表查找的系统100。每个计算节点110可通信 地耦合到任何数量的不同网络和/或子网。这样,任何计算节点Iio可接收源自一个网络 的网络分组,并且可基于分布式路由器102的路由表将网络分组转发到不同的网络。在某 些实施例中,在该多个计算节点110之间划分根据分布式路由器102的路由表来路由网络 分组的责任。也就是,分布式路由器102的每个计算节点110可负责查找分布式路由器102 的全局路由表222的网络路由条目的不同部分(见图2)。 在说明性实施例中,分布式路由器102包括"入口(ingress) "计算节点112、"反弹 (bounce)" 或"中间(intermediate)" 计算节点 114 以及"出口(egress)"计算节点 116 〇 当然,在某些实施例中,系统100的分布式路由器102还可包括一个或多个其他计算节点 11〇(例如,计算节点118)。在使用时,分布式路由器102的入口计算节点112从位于分布 式路由器102外部的源计算设备(例如,网络交换机、网络路由器、发源计算设备等等)接 收网络分组104。应当认识到在图1中说明性地示出的任何其他计算节点110可以替代地 从源计算设备接收网络分组104。这样,接收网络分组的具体计算节点110可被指定为"入 口"计算节点112并且在以下描述中被如此称呼。 当接收到网络分组104时,入口计算节点112确定负责确定将所接收到的网络分 组104路由到哪儿的反弹计算节点114。也就是,入口计算节点112确定其他计算节点110 中的哪一个应当执行针对具体分组的路由表查找。为了这样做,在某些实施例中,入口计算 节点112基于所接收到的网络分组104的目的地互联网协议(IP)地址生成散列密钥。在 某些实施例中,该散列密钥可被实现为目的地IP地址的二进制表示的两个最低有效位(例 如,"00"、"01"、"10"或"11")。将所生成的散列密钥与一个或多个流过滤器224相比较 (见图2),该流过滤器包括从在分布式路由器102的路由表222中维护的网络路由条目的 二进制表示的两个最低有效位生成的相应索引散列密钥(例如,"〇〇"、"〇1"、"1〇"或"11")。 每个索引散列密钥与分布式路由器102的不同计算节点110 (例如,反弹节点)相对应。这 样,入口计算节点112确定具体的反弹计算节点114,基于该反弹计算节点,计算节点110与 同从目的地IP地址生成的散列密钥匹配的索引散列密钥相关联。入口计算节点112然后 将所接收到的网络分组104转发到所确定的反弹计本文档来自技高网...
【技术保护点】
一种用于分布式路由表查找的分布式路由器的入口计算节点,所述入口计算节点包括:流量入口模块,用于(i)接收网络分组,其中,所述分布式路由器的每个计算节点包括用于存储从所述分布式路由器的路由表获得的不同网络路由条目集合的转发表,(ii)基于包括在所接收到的网络分组中的并且指示所接收到的网络分组的目标的目的地地址生成散列密钥,其中所述散列密钥标识所述分布式路由器的存储包括与所述目的地地址相对应的网络路由条目的转发表的计算节点,(iii)基于所述散列密钥确定所述分布式路由器的中间计算节点以便路由所接收到的网络分组,以及(iv)将所接收到的网络分组转发到所述中间计算节点以便路由所接收到的网络分组。
【技术特征摘要】
...
【专利技术属性】
技术研发人员:S·戈布瑞尔,R·王,C·麦西奥科,TY·泰,
申请(专利权)人:英特尔公司,
类型:发明
国别省市:美国;US
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。