用于在分组转发装置中针对每个模块在因特网协议切换模式之间进行自动选择的方法、系统以及计算机可读介质制造方法及图纸

技术编号:8134197 阅读:216 留言:0更新日期:2012-12-27 13:27
本申请描述的主题包括用于在分组转发装置中针对每个模块在因特网协议切换模式之间进行自动选择的方法、系统以及计算机可读介质。根据一个方案,本申请描述的主题包括分组转发装置,其包括至少一个输入/输出(I/O)模块。至少一个I/O模块包括最长前缀匹配(LPM)表和因特网协议转发数据库(IPFDB),并且分组转发装置包括IP路由表和IPFDB。当I/O模块以LPM模式操作时,I/O模块上的IPFDB填充有与活动主机相对应的条目填充,I/O模块上的LPM表填充有具有从IP路由协议知悉的路由的IP路由表,并且由I/O模块接收的层3分组是使用I/O模块的IPFDB和LPM表进行路由的。自动模式选择模块确定I/O模块上的LPM表的容量。自动模式选择模块还确定存储在IP路由表中的IP路由的总数量,并确定IP路由的总数量与LPM表的容量之间的关系。响应于确定IP路由的总数量与LPM表的容量具有预定关系,自动模式选择模块还自动地将I/O模块从LPM模式切换到IPFDB模式,其中IPFDB和LPM表填充有与活动主机相对应的条目,并且由I/O模块接收到的层3分组是使用I/O模块的IPFDB和LPM表进行路由的。

【技术实现步骤摘要】
【国外来华专利技术】
本申请描述的主题涉及对因特网协议(IP)分组进行路由。更具体地,本申请描述的主题涉及用于在分组转发装置中针对每个模块在IP切换模式之间进行自动选择的方法、系统以及计算机可读介质。
技术介绍
传统IP网络设施硬件利用用于对IP分组进行路由的两种通用方式之一。在第一种方式(在下文中,称为“LPM模式”或“LPM方式”)中,每个分组的IP目的地地址被用作用于搜索包括可变长度地址前缀的基于硬件的最长前缀匹配(LPM)表的关键词。硬件LPM表中的匹配产生了进入IP邻接表的索引,在该IP邻接表中,获得对分组进行成功路由所需要的下一跳转发信息。在第一种方式中,可使用与相邻IP分组转发装置交换信息的一个或多个路由协议来填充硬件LPM表,或可经由配置来填充硬件LPM表。在第二种方式(在下文中,称为“ IPFDB模式”或“ IPFDB方式”)中,每个分组的IP目的地地址被用作用于搜索以活动主机的IP地址填充的、基于硬件的IP主机转发数据库(IPFDB)的关键词。应理解当以IPFDB模式操作时,活动主机可包括直接连接的主机和远程位于网络另一侧的主机。硬件IPFDB中的匹配产生了对分组进行成功路由所需要的下一跳转发信息。在第二种方式中,活动主机的IP地址基于“要求”被填充到IPFDB中。S卩,当给定主机的流起动时,其IP地址初始没有被存储在IPFDB中并且必须被慢路处理(slowpathprocess),其中慢路处理包括使用中央处理器(CPU)处理分组。分组的成功的慢路处理导致活动主机的IP地址被编入后续分组的硬件IPFDB中。例如,参见图1,1/0模块102么和106A可以以LPM模式或IPFDB模式操作。在LPM模式中,LPM表200和204可由与可变长度地址前缀和用于达到目的地的下一跳相应的条目进行填充,并且IPFDB 202和206可由全长32-或128-比特的主机条目进行填充。在IPFDB模式中,LPM表200和204以及IPFDB 202和206可由全长32-或128-比特主机条目进行填充。此外,I/O模块102A-102C和106A-106B可以以“混合模式”操作,在该混合模式中,对于每个I/O模块,IPFDB可由直接连接的主机的全址条目进行填充,并且LPM表可由可变长度前缀和全主机地址的混合进行填充。在于2005年12月23日递交的、美国专利申请序列No. 11/317,665以及于2006年12月22日递交的、美国专利申请序列No. 11/644,701中描述了关于此方面的额外细节,这两个美国申请的公开内容以引用方式全部内容并入本文。LPM方式的一个优点是当整个路由表可被包括在可用硬件LPM表中时,几乎数量不限的主机终端站可通过交换机通信,而没有慢路干扰。相反,IPFDB方式的一个优点是当路由表与硬件LPM表不适应(例如对于少量的主机)时,路由可以更快。例如,通过基于在位于每个I/O模块上的基于硬件的IPFDB中的精确匹配查找对分组进行路由,可使用较少的存储器和CPU资源来对分组进行慢路处理。换言之,当整个路由表可被包括在可用硬件LPM表中时,LPM方式更具有优势;而当整个路由表不能被包括在可用硬件LPM表中时,IPFDB方式更具有优势。当生产费用敏感的网络设备时,硬件LPM表的大小对于某些应用会受限。在一个示例场景中,边缘模块可支持512个LPM IPv4路由和2K个IPv4主机,并且聚合模块可支持512,000个LPM IPv4路由和16,000个IPv4主机。接着,考虑控制面路由表的大小为250,000个IPv4路由和1,000个直接连接的IPv4主机的网络。可理解,这整个路由表不能被包括在边缘模块102A-102C的可用硬件LPM表中,然而可被整体包括在聚合模块106A-106B的LPM表中。这样,对于边缘模块102A-102C而言IPFDB-模式路由可能是适当的,以避免不必要的慢路处理。由于边缘模块不能在大小为512的LPM表中存储250,000 个路由,所以只将250,000个路由中的512个(即O. 2%)填充到此HW表中不会有太大的用处。因而,在分组转发设备中,通过仅保持活动主机的高速缓冲存储器而不是整个路由表,IPFDB方式需要较少的存储器和较少CPU功率。相反,LPM-模式路由对于聚合模块106A-106B可能是适当的,这是由于路由表在硬件范围内,这是因为可以使用硬件IPFDB路由到所有直接连接的主机,并且可以使用硬件LPM表路由到所有经由网关连接的主机,而不需要对分组进行慢路处理。与传统分组转发装置相关联的一个问题是它们可能在特定条件下对某些I/O模块使用低效方式。例如,在分组转发装置100中,如果I/O模块102A和106A以LPM模式操作(默认),则低容量I/O模块102A可能存储数个路由的实质上无意义的片段,对分组转发装置100没有增加任何性能优点。另一个问题是某些分组转发设备可能不具有足够的存储器来以软件保存全部路由表,也不具有足够的CPU功率来处理所有的路由增加和删除操作。例如,传统LPM模式操作需要更多的存储器和CPU功率来处理路由增加和删除操作,而IPFDB模式并不需要,这是由于替代地,IPFDB模式仅保持了活动主机的高速缓冲存储器,而不是整个路由表。如上文所示,在IPFDB模式适当而并未使用的场景下,传统分组转发装置可次优地操作。因此,存在对更有效地利用IP分组转发装置中的基于硬件的LPM表和IPFDB的改进的方法、系统以及计算机可读介质的需求。
技术实现思路
本申请描述的主题包括用于在分组转发装置中针对每个模块在因特网协议切换模式之间进行自动选择的方法、系统以及计算机可读介质。根据一个方案,本申请描述的主题包括一种分组转发装置,其包括至少一个输入/输出(I/o)模块。至少一个I/O模块包括最长前缀匹配(LPM)表和因特网协议转发数据库(IPFDB),并且分组转发装置包括IP路由表和IPFDB。当I/O模块以LPM模式操作时,I/O模块上的IPFDB填充有与活动主机相对应的条目,I/O模块上的LPM表被填充具有从IP路由协议知悉的路由的IP路由表,并且使用I/o模块的IPFDB和LPM表来路由I/O模块所接收到的层3分组。自动模式选择模块确定I/O模块上的LPM表的容量。自动模式选择模块还确定被存储在IP路由表中的IP路由的总数量,并确定IP路由的总数量与LPM表的容量之间的关系。响应于确定IP路由的总数量与LPM表的容量具有预定关系,自动模式选择模块还将I/O模块从LPM模式自动切换到IPFDB模式,其中IPFDB和LPM表填充有与活动主机相对应的条目,并且使用I/O模块的IPFDB和LPM表路由I/O模块所接收到的层3分组。根据另一个方案,公开了一种用于针对每个模块自动地选择转发方式的方法。该方法包括以LPM模式操作多输入/输出(I/O)模块分组转发装置中的I/O模块。I/O模块包括最长前缀匹配(LPM)表和因特网协议转发数据库(IPFDB),并且分组转发装置包括IP路由表。以LPM模式操作I/O模块包括用 与活动主机相对应的条目填充IPFDB,用来自具有从IP路由协议知悉的路由的IP路由表的条目填充LPM表,以及使用I/O模块的IPFDB和LPM表对本文档来自技高网
...

【技术保护点】

【技术特征摘要】
【国外来华专利技术】2010.03.15 US 61/340,279;2010.06.21 US 12/820,1111.一种用于针对每个模块自动地选择转发方式的方法,所述方法包括 对于多输入/输出(I/o)模块分组转发装置中的I/O模块,所述I/O模块包括最长前缀匹配(LPM)表和因特网协议转发数据库(IPFDB); 以LPM模式操作所述I/O模块,其中以LPM模式操作所述I/O模块包括用与活动主机相对应的条目填充所述IPFDB,用来自具有从IP路由协议知悉的路由的IP路由表的条目填充所述LPM表,以及使用所述I/O模块的所述IPFDB和所述LPM表对所述I/O模块接收到的层3分组进行路由; 确定所述LPM表的容量; 确定所述IP路由表中的IP路由的总数量; 确定所述IP路由表中的IP路由的总数量与所述LPM表的容量之间的关系;以及 响应于确定所述IP路由表中的IP路由的总数量与所述LPM表的容量具有预定关系,自动地将所述I/O模块从所述LPM模式切换到IPFDB模式,其中所述IPFDB和所述LPM表填充有与活动主机相对应的条目,并且使用所述I/O模块的所述IPFDB和所述LPM表对所述I/O模块接收到的层3分组进行路由。2.如权利要求I所述的方法,其中所述LPM表的容量包括固定的已知的量。3.如权利要求2所述的方法,其中确定所述LPM表的容量包括确定所述LPM表所支持的地址空间的大小和所述LPM表所支持的路由的最大数量中的一个。4.如权利要求2所述的方法,其中确定IP路由的总数量与所述LPM表的容量之间的关系包括确定IP路由的数量是否为以下中的一个小于第一阈值、超过所述第一阈值或等于所述第一阈值。5.如权利要求4所述的方法,其中所述第一阈值包括以下中的一个比所述LPM表的容量少的预定的路由数量、比所述LPM表的容量多的预定的路由数量以及等于所述LPM表的容量。6.如权利要求4所述的方法,其中所述第一阈值包括能够存储在所述LPM表中的IP路由的数量。7.如权利要求I所述的方法,其中所述LPM表的容量包括取决于存储在所述LPM表中的数据的通过算法确定的量。8.如权利要求7所述的方法,包括响应于确定IP路由的总数量与所述LPM表的容量具有预定关系而生成通知,以及响应于所述通知,自动地将所述I/O模块从所述LPM模式切换到所述IPFDB模式。9.如权利要求7所述的方法,其中确定IP路由的总数量与所述LPM表的容量之间的关系包括确定IP路由的数量是否为以下中的一个小于第一阈值、超过所述第一阈值或等于所述第一阈值。10.如权利要求9所述的方法,其中所述第一阈值包括以下中的一个比所述LPM表的容量少的预定的路由数量、比所述LPM表的容量多的预定的路由数量以及等于所述LPM表的容量。11.如权利要求9所述的方法,其中所述第一阈值包括能够存储在所述LPM表中的IP路由的数量。12.如权利要求I所述的方法,包括确定所述IP路由表中的IP路由的数量是否小于第二阈值;以及响应于确定所述IP路由表中的IP路由的数量小于所述第二阈值,从IPFDB模式切换到LPM模式。13.如权利要求12所述的方法,还包括 确定所述IP路由表中的IP路由的数量小于所述第二阈值是否持续了预定的时段;以及 响应于确定所述IP路由表中的IP路由的数量小于所述第二阈值持续了预定的时段,从IPFDB模式切换到LPM模式。14.如权利要求I所述的方法,其中自动地从LPM模式切换到IPFDB模式包括从所述LPM表中删除路由。15.一种分组转发装置,所述装置包括 至少一个输入/输出(I/o)模块,其包括 最长如缀匹配(LPM)表; 因特网协议转发数据库(IPFDB); 其中,所述I/O模块以LPM模式操作,其中以LPM模式操作所述I/O模块包括用与活动主机相对应的条目填充所述IPFDB,用来自从IP路由协议知悉的IP路由表的条目填充所述LPM表,以及使用所述I/O模块的所述IPFDB和所述LPM表对所述I/O模块接收到的层3分组进行路由; 自动模式选择模块,其用于 确定所述LP...

【专利技术属性】
技术研发人员:D·B·小格罗塞尔E·J·瑞芙娜O·L·斯托克斯
申请(专利权)人:极进网络公司
类型:
国别省市:

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

1