CN101030928A - 具有模块化多级包分类的网络节点 - Google Patents

具有模块化多级包分类的网络节点 Download PDF

Info

Publication number
CN101030928A
CN101030928A CNA2006100641881A CN200610064188A CN101030928A CN 101030928 A CN101030928 A CN 101030928A CN A2006100641881 A CNA2006100641881 A CN A2006100641881A CN 200610064188 A CN200610064188 A CN 200610064188A CN 101030928 A CN101030928 A CN 101030928A
Authority
CN
China
Prior art keywords
network node
data plane
bag
plane packet
classification
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CNA2006100641881A
Other languages
English (en)
Other versions
CN101030928B (zh
Inventor
E·B·L·吉隆
E·A·C·西克斯
N·V·韦尔齐普
R·胡瑟格姆斯
H·M·F·C·德凯克
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Alcatel Lucent SAS
Alcatel Lucent NV
Original Assignee
Alcatel NV
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Alcatel NV filed Critical Alcatel NV
Publication of CN101030928A publication Critical patent/CN101030928A/zh
Application granted granted Critical
Publication of CN101030928B publication Critical patent/CN101030928B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/24Traffic characterised by specific attributes, e.g. priority or QoS
    • H04L47/2441Traffic characterised by specific attributes, e.g. priority or QoS relying on flow classification, e.g. using integrated services [IntServ]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

一种能接收、处理和转发数据包的网络节点,具有支持最初部署的基本服务的第一级数据平面包分类器(111)和支持后来部署的更高级服务的随后可插入的第二级数据包分类器(121)。

Description

具有模块化多级包分类的网络节点
技术领域
本发明一般涉及在网络节点的数据路径中的包分类,所述网络节点例如:诸如数字用户线接入复用器(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 Environment:C-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。

Claims (6)

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),所述第二级包分类器能对所述高级服务执行包分类。
CN2006100641881A 2005-12-02 2006-12-01 具有模块化多级包分类的网络节点和包处理方法 Expired - Fee Related CN101030928B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP05292573A EP1793537B1 (en) 2005-12-02 2005-12-02 Network node with modular multistage packet classification
EP05292573.2 2005-12-02

Publications (2)

Publication Number Publication Date
CN101030928A true CN101030928A (zh) 2007-09-05
CN101030928B CN101030928B (zh) 2010-12-22

Family

ID=35708735

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2006100641881A Expired - Fee Related CN101030928B (zh) 2005-12-02 2006-12-01 具有模块化多级包分类的网络节点和包处理方法

Country Status (5)

Country Link
US (1) US20070127483A1 (zh)
EP (1) EP1793537B1 (zh)
CN (1) CN101030928B (zh)
AT (1) ATE426980T1 (zh)
DE (1) DE602005013540D1 (zh)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080240140A1 (en) * 2007-03-29 2008-10-02 Microsoft Corporation Network interface with receive classification
US20080306815A1 (en) * 2007-06-06 2008-12-11 Nebuad, Inc. Method and system for inserting targeted data in available spaces of a webpage
US8051167B2 (en) * 2009-02-13 2011-11-01 Alcatel Lucent Optimized mirror for content identification
EP2226977A1 (en) 2009-03-03 2010-09-08 Alcatel Lucent Device and method for temporary storage of data packets
US8379639B2 (en) * 2009-07-22 2013-02-19 Cisco Technology, Inc. Packet classification
US8990380B2 (en) 2010-08-12 2015-03-24 Citrix Systems, Inc. Systems and methods for quality of service of ICA published applications
US8792491B2 (en) * 2010-08-12 2014-07-29 Citrix Systems, Inc. Systems and methods for multi-level quality of service classification in an intermediary device
US8638795B2 (en) 2010-08-12 2014-01-28 Citrix Systems, Inc. Systems and methods for quality of service of encrypted network traffic
US9596182B2 (en) * 2013-02-12 2017-03-14 Adara Networks, Inc. Controlling non-congestion controlled flows
CN103650436B (zh) * 2013-07-25 2016-09-28 华为技术有限公司 业务路径分配方法、路由器和业务执行实体

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4602210A (en) * 1984-12-28 1986-07-22 General Electric Company Multiplexed-access scan testable integrated circuit
US6850513B1 (en) * 1999-12-30 2005-02-01 Intel Corporation Table-based packet classification
US20070192863A1 (en) * 2005-07-01 2007-08-16 Harsh Kapoor Systems and methods for processing data flows
EP1239635A1 (en) * 2001-03-07 2002-09-11 BRITISH TELECOMMUNICATIONS public limited company Method of providing service classes in a packet network
US7424744B1 (en) * 2002-03-05 2008-09-09 Mcafee, Inc. Signature based network intrusion detection system and method
US7376140B1 (en) * 2002-03-25 2008-05-20 Cisco Technology, Inc. System and method for assignment of ATM virtual circuits to queues in a DSLAM
US20040151184A1 (en) * 2002-12-13 2004-08-05 Zarlink Semiconductor V.N. Inc. Class-based rate control using multi-threshold leaky bucket
US7366174B2 (en) * 2002-12-17 2008-04-29 Lucent Technologies Inc. Adaptive classification of network traffic
US20040122967A1 (en) * 2002-12-23 2004-06-24 Bressler Robert D. Method and apparatus for managing packet flows for multiple network services
JP4476143B2 (ja) * 2005-03-18 2010-06-09 富士通株式会社 ブレード型コンピュータ、ブレード管理装置、ブレード管理プログラム、及び制御プログラム
US7719966B2 (en) * 2005-04-13 2010-05-18 Zeugma Systems Inc. Network element architecture for deep packet inspection
US7606147B2 (en) * 2005-04-13 2009-10-20 Zeugma Systems Inc. Application aware traffic shaping service node positioned between the access and core networks
US7508764B2 (en) * 2005-09-12 2009-03-24 Zeugma Systems Inc. Packet flow bifurcation and analysis
US7773510B2 (en) * 2007-05-25 2010-08-10 Zeugma Systems Inc. Application routing in a distributed compute environment

Also Published As

Publication number Publication date
CN101030928B (zh) 2010-12-22
DE602005013540D1 (de) 2009-05-07
EP1793537B1 (en) 2009-03-25
US20070127483A1 (en) 2007-06-07
ATE426980T1 (de) 2009-04-15
EP1793537A1 (en) 2007-06-06

Similar Documents

Publication Publication Date Title
CN101030928B (zh) 具有模块化多级包分类的网络节点和包处理方法
US6553000B1 (en) Method and apparatus for forwarding network traffic
EP1158729B1 (en) Stackable lookup engines
US6731652B2 (en) Dynamic packet processor architecture
US6980552B1 (en) Pipelined packet switching and queuing architecture
US5546390A (en) Method and apparatus for radix decision packet processing
US7095744B2 (en) Method and system for switching variable sized packets
EP1305915B1 (en) Interface for sonet lines of different capacities
EP1019833B1 (en) Mechanism for packet field replacement in a multi-layered switched network element
US5487064A (en) Network layer packet structure
CN1433190A (zh) 用于交换节点的分类和标记规则
US7103046B2 (en) Method and apparatus for intelligent sorting and process determination of data packets destined to a central processing unit of a router or server on a data packet network
EP2947832A1 (en) Methods and apparatus related to a distributed switch fabric
US20070183415A1 (en) Method and system for internal data loop back in a high data rate switch
US20060239288A1 (en) System and method for packet classification
CN1493132A (zh) 基于交换的网络处理器
CN1819549A (zh) 用于高级交换的分组聚合协议
US20020097736A1 (en) Route/service processor scalability via flow-based distribution of traffic
CN1972240A (zh) 快速包过滤处理方法及其装置
CN1631008A (zh) 调度消息处理的方法和设备
CN1489849A (zh) 用于三重内容可寻址存储器(tcam)表管理的方法和设备
EP1257100B1 (en) Octagonal interconnection network for linking processing nodes on a soc device and method of operating same
US20030229710A1 (en) Method for matching complex patterns in IP data streams
CN1440174A (zh) 对数据传输协议独立分组语音方案提供支持的普通报头分析器
CN1672370A (zh) 全冗余线性可扩展广播路由器

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20101222

Termination date: 20201201

CF01 Termination of patent right due to non-payment of annual fee