具有模块化多级包分类的网络节点的制作方法

文档序号:7958175阅读:212来源:国知局
专利名称:具有模块化多级包分类的网络节点的制作方法
技术领域
本发明一般涉及在网络节点的数据路径中的包分类,所述网络节点例如诸如数字用户线接入复用器(DSLAM)、电缆调制解调器终端系统(CMTS)、数字环路载波机(DLC)或光纤聚合器之类的接入节点,诸如边缘IP路由器、核心IP路由器、交换/路由器的路由节点,等等。这些网络节点的基本功能是对到达入站端口的入站数据包进行处理并将其转发到使数据包更接近其目的地的出站端口,在本专利申请中,包或数据包是指作为整体发送的任意一组比特/字节,典型地具有报头和有效载荷部分。它包括固定长度和可变长度包。处理和转发决定基于包分类的结果。在包转发模型中,包分类可能是数据路径中包处理器最复杂和最集中的任务。包分类涉及通过检查数据包的头部和有效载荷部分的若干个字段来识别包,并参考查找数据库对包进行分类。当前高速网络所需要的高级的包分类包括像多字段报头查询的复杂包内容处理操作、重要的包内容分析和解析操作、接入控制列表过滤、流标识,以及除了传统MAC地址表和IP目的地址表查找之外的其它相关任务。
背景技术
对于用于下一代网络设备的有效包分类方案的复杂性和需要已经在2001年PMC-Sierra的标题为“Toward Content-Based Classification”的白皮书中得到确认,该白皮书在因特网的以下URL发表http//www.pmc-sierra.com/cgi-bin/document.pl?docnum=2002233第4.3部分列出了典型分类功能的例子,说明包分类超出了经由报头信息对包的简单识别。第5部分描述了数据路径对复杂包分类的需求。
当今因特网交换机和路由器所需要的包分类功能的概况,和执行不同包分类任务的不同算法之间的比较,在Pradipta De的文章“Data PathPocessing in Fast Programmable Routers”中给出,2004年11月18日发表的这篇文章能通过以下URL从因特网上下载http//arxiv.org/pdf/cs.NI/0411070这篇文章建议在数据路径中使用单级包分类(例如通用处理器或ASIC作为网络处理器执行所有的包处理功能)。文章的第4部分提及流水线操作的可能性,该流水线操作是包处理任务的分解,所述包处理任务诸如网络处理器内若干级中数据包的解析、分类、排队、和管理/修改。网络处理器可以依赖于用于流水线每一级的不同的协同处理器。
为了确保以线路速度进行包分类操作,M.Kounavis等人在他们的文章“Directions in Packet Classification for Network Processors”中建议二级分类结构基于包含在包中的源和目的IP地址执行二维匹配的快速软件算法构成第一级,该级仅涉及前缀匹配,而通过更一般的范围查找操作对包含在包中的其他字段执行n-2维匹配的专用硬件加速单元构成第二级。整篇文章可以通过下面的URL获得http//www.cs.berkeley.edu/~culler/courses/cs252-s05/papers/np2.pdf与M.Kounavis等人类似,Universitaet Paderborn在标题为“A PacketClassification EnvironmentC-MENT”的出版物中暗示了在转发数据路径上执行多次的包分类装置。该出版物可通过下面的URL访问http//ag-kastens.uni-paderborn.de/wir/adrian/c-ment.php商业上可用的数据路径的包分类的例子是来自Tut系统的Astra服务控制器2100,其执行对IP报头的全检测,如果需要,接着对包有效载荷进行完全检测,该解决方案在以下URL公开http//tutnews.com/pdflibrary/pdf/AstriaSC-10-22.pdf甚至在由Pradipta De建议的用协同处理器辅助,或者如Kounavis等建议的由专用SW/HW辅助时,单数据路径网络处理器在数据路径中仍然构成单物理级,执行所有的包处理任务。这种方案带来各种问题。首先,在主数据路径中所有处理能力是可用的,但仍然有限,并因此在复杂性上限制了包分类任务。对于更复杂的分类任务,主数据路径中的处理能力能在理论上增加,但是这要求对新服务需求预前识别,并至少临时中断服务以执行升级。换句话说,现有的包分类解决方案不允许新服务平稳且容易地引入。
由J.Jessen和A.Dhir所著的另一篇文章“Programmable NetworkProcessor Platform”建议把类似包分类这种计算的集中任务从数据路径的网络处理器转移到专用微处理器,在所引用文章的图3中SearchVLIW微处理器构成SPEEDAnalyzer查找引擎的一部分。由于硬件加倍,完全转移包分类任务并旁路数据路径是低效、不灵活并且昂贵的。J.Jessen和A.Dhir所著的文章可通过下面的URL找到http//www.xilinx.com/esp/networks_telecom/optical/collateral/ip_semi_case_study.pdf发明内容本发明的目的是公开一种具有包分类结构的网络节点,该包分类结构能够在新服务要求引入更复杂、更深入的包分类的情况下平稳地对网络节点进行升级。本发明必须使现有网络节点和下一代网络节点之间过渡平稳,并在最小的投资成本下使得新服务的引入更快。
通过由权利要求1所定义的网络节点实现了上面的目的,该网络节点具有第一级数据平面包分类器和可插入的第二级数据平面分类器。
事实上,在两个物理上可分开的数据路径级中执行包分类,这两个数据路径级为第一级,从网络节点先前的初始化起,安装在主数据路径中的在先的轻分类级,以及第二级,用于数据路径的随后可插入分类级,以处理更多服务特定分类操作,由此,对于服务需求的渐进式和模块化的包处理适应成为可能。在第一级的部分处理允许使用现有网络节点并由此在主数据路径中利用最大处理能力。把更复杂的分类任务部分转移到随后可插入的第二级,不要求提前计划和在主数据路径提供昂贵的处理能力。可以尽可能成本有效地最初建立和部署网络节点。典型地,如存储器、处理能力、硬件等这样的空闲资源的存在将非常有限,因为这些随后将可以通过第二级数据平面分类器用于执行。
注意,根据本发明的目的可进一步通过部署和操作权利要求6限定的网络而实现。
此外,如权利要求2所定义的,本发明的有利特征是第一级分类器将形成线路卡的一部分,然而第二级分类器将形成可插入服务刀片(serviceblade)的一部分。因此,例如在DSLAM的情况下,DSLAM中的线路卡有基本的、第一级包分类智能,并连接到具有更高级的第二级包分类智能的随后可插入的服务刀片。
本发明的另一个附加优点是第一级分类器被限制为如权利要求3定义的基本服务的包分类任务。
最初,部署这样的基本服务,因此网络节点从一开始就可以准备这些基本服务所需要的所有包分类功能。
如权利要求4所定义的,根据本发明用于更高级服务的包分类任务将集成在第二级分类器中。
根据本发明,更高级的服务随后将在具有网络节点的现有网络中引入。在引入这些服务时,将为网络节点配备可插入的第二级数据平面包分类器。这不需要基本服务的中断就可完成,并且对网络运营商来说具有最小的投资成本。
如权利要求5所述,本发明可以例如在数字用户线接入复用器中实施。如前面所指出的,许多其他网络节点也适于从根据本发明的模块化包分类结构中获益。


图1示出根据本发明的具有数据平面包分类结构的网络节点的第一实施例;和图2示出根据本发明的具有数据平面包分类结构的网络节点的第二实施例。
具体实施例方式
图1显示了具有第一线路卡101的DSLAM,该第一线路卡具有入站端口131、第一级数据平面分类器111、第一组M包处理器112、第一复用器113和出站端口134。线路卡101还具有用于连接到可插入服务刀片102的插槽,该可插入服务刀片具有第二级数据平面分类器121、第二组包S-N+1处理器122,和第二复用器123。第一级分类器111与第二级分类器121之间的连接132,以及第二复用器123与第一复用器113之间的连接133经过刚才提到的插槽。注意,假设M为等于或大于1的整数,假设N为M+1,且假设S为等于或大于N的整数。举个例子M=1,N=2,S=2,此处具有单个第一级数据平面处理器和单个第二级数据平面处理器。然而在级只包含一个包处理器的后面的情况下,无需复用器,因此,在M=1,N=2,S=2的例子中复用器113和123不出现。
首先,图1所示的DSLAM在没有服务刀片102的情况下被部署,并且被配置支持特定的基本服务。所有到达端口131的输入数据包在线路卡101的主数据路径中被处理。这意味数据包分类是由第一级数据平面分类器111完成的。取决于分类结果,第一包处理器112然后在主数据路径中处理数据包。尽管显示为单个功能块,取决于分类结果,由图1中的“处理1-M”表示的第一包处理器112可以执行很多不同的包处理功能。然后复用器113复用处理后的包,该过程是在111中执行的分类的逆操作。复用后的数据包流通过出站端口134被转发。
随后,针对新的、更高级的服务的安装和配置,服务刀片102插入到DSLAM中。从此时起,大多数包仍然可以在主数据路径中处理,也就是它们在第一级分类器111中分类,并且在线路卡101上的第一包处理器112中处理,然而其它的包通过连接132被发送到服务刀片102上的第二级数据平面分类器121,用于所需要的涉及新支持服务的更高级的分类任务。取决于第二级数据平面分类器121的分类结果,包由第二包处理器122处理。同样,尽管显示为单个功能块,取决于分类结果,第二包处理器122“处理N-S”可以执行不同的包处理功能。第二复用器123执行第二级数据平面分类器121的逆操作,并通过连接133把复用后的包返送到线路卡101或者主数据路径。
图2显示了本发明在具有线路卡201和可插入服务刀片202的DSLAM中被实施的不同实施例。实际上,图2对应于图1所示的更普遍的方案的特定实施方式,此处M被选择为等于1,N为2,S等于3。该线路卡201在它的入站端口231和它的出站端口234之间具有第一级数据平面分类器211、第一数据包处理器212和复用器213。可插入服务刀片202具有第二级数据平面分类器221、第二和第三数据包处理器222和223以及第二复用器224。通过连接232,第一级数据平面分类器221的输出端被连接到第二级数据平面分类器221的输入端。通过连接233,第二复用器224的输出端被连接到第一复用器213的输入端。连接232和233经过线路卡201和服务刀片202上的为了它们之间的互连而预先准备的插槽。
最初,图1所示的DSLAM在ADSL网络中也被部署为没有服务刀片202,该ADSL网络被配置并操作以支持基本服务。对于这些基本服务,对于所有到达入站端口231的数据包的所有包分类任务由在主数据路径中的第一级数据平面包分类器211处理。取决于分类结果,数据包在第一包处理器212中被处理。最后,第一复用器213执行第一级数据平面包分类器211的逆操作并且通过出站端口234发送复用后的数据包。
当ADSL网络的运营商配置他的网络以支持更高级的服务时,其中所有的DSLAM都配备有与图2中的202类似的可插入的服务刀片,并且经由预先准备的插槽,DSLAM中的线路卡和各自的服务刀片之间的连接被建立。从此时起,到达入站端口231的特定数据包仍然在主数据路径中被整体处理一它们在211中被分类、例如通过TCP端口80转发,在212中处理、并在213中被复用一但是要求更高级包分类的其它数据包通过第一级数据平面分类器211被转发到服务刀片202。图2中,在连接232上数据包的转发可以代表通过线路卡201和服务刀片202之间插槽上的UDP端口发送数据包。在服务刀片202上,这些数据包在第二级数据平面分类器221中被进一步分类,并且取决于该第二级分类的输出,数据包通过例如端口5005将被转发到第二包处理器222,或者通过端口5003被转发到第三包处理器223。在由服务刀片202构成的旁(side)数据路径中被处理后,第二复用器224执行第二级数据平面分类器221的逆操作,并把数据包发送回主数据路径,也就是在线路卡201上的第一复用器213。
尽管参照特定实施方式示出了本发明,各种改变和修改也包含在本发明的精神和范围内,这对于本领域技术人员是显而易见的。因此期望涵盖任何和所有落入本专利申请所公开的和要求的基本原则的修改、变体或等同物。例如,根据本发明的基于在主数据路径中的第一级分类器和在可插入旁数据路径中的第二级分类器的模块化的包分类结构,可以在没有DSLAM的网络节点和没有ADSL网络的网络中使用,并且具有同样的优点。此外,在本专利申请附图中用单箭头表示的入站和出站端口可以分别代表多个入站端口和出站端口,并且根据数据包必须被转发的出站端口,聚集数据包将是复用器的任务。本发明不限于特定数量或结构的数据包处理任务,图1和图2中给出的例子在旁数据路径中分别具有一个或两个包处理器,但是在本发明的范围内也可以考虑其它配置。而且,图1和图2所示的执行各自的包分类器111和121的逆操作的复用器113和123是可选的。例如,包分类可以导致某些包正在被处理且其它包不被处理。如果没有被处理的包不被进一步使用,他们就不必与处理后的包进行复用。而且,处理后的包可以不必作为结果转发,在执行根据本发明的包分类和处理的网络节点中可以不需要复用器模块。一个例子是在合法拦截的服务路径中包的探听。在这种情况下,包分类器111通过链路132将转发到处理器112的数据包的拷贝发送到第二级分类器121。
权利要求
1.一种能接收、处理和转发数据包的网络节点,所述网络节点包括第一级数据平面包分类器(111),和数据平面包处理功能模块(112,122),其特征在于所述网络节点进一步包括可插入的第二级数据平面包分类器(121)。
2.根据权利要求1的网络节点,其特征在于所述第一级数据平面包分类器(111)构成线路卡(101)的一部分,所述线路卡具有用于与所述可插入的第二级数据平面包分类器(121)连接的插槽,并且所述可插入的第二级数据平面包分类器(121)构成可插入的服务刀片(102)的一部分,所述可插入的服务刀片具有用于和所述第一级数据平面包分类器(111)连接的插槽。
3.根据权利要求1的网络节点,其特征在于从初始部署起,所述第一级数据平面包分类器(111)能对所述网络节点支持的基本服务执行数据包分类。
4.根据权利要求1的网络节点,其特征在于自初始部署一段时间后,所述第二级数据平面包分类器(121)能对所述网络节点支持的高级服务执行数据包分类。
5.根据权利要求1的网络节点,其特征在于所述网络节点是数字用户线接入复用器。
6.一种部署和操作网络的方法,所述网络包括一个或多个能接收、处理和转发数据包的网络节点,所述方法包括用第一级数据平面包分类器(111)对所述网络节点进行初始安装,并配置所述网络节点以支持基本服务,其中对所述基本服务的包分类由所述第一级数据平面包分类器(111)处理,其特征在于,所述方法进一步包括在随后的时间,配置所述网络节点以支持高级服务,并且在所述网络节点插入第二级数据平面包分类器(121),所述第二级包分类器能对所述高级服务执行包分类。
全文摘要
一种能接收、处理和转发数据包的网络节点,具有支持最初部署的基本服务的第一级数据平面包分类器(111)和支持后来部署的更高级服务的随后可插入的第二级数据包分类器(121)。
文档编号H04L29/06GK101030928SQ200610064188
公开日2007年9月5日 申请日期2006年12月1日 优先权日2005年12月2日
发明者E·B·L·吉隆, E·A·C·西克斯, N·V·韦尔齐普, R·胡瑟格姆斯, H·M·F·C·德凯克 申请人:阿尔卡特公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1