CN1638385A - 在网络交换设备中的并行数据链路层控制器 - Google Patents
在网络交换设备中的并行数据链路层控制器 Download PDFInfo
- Publication number
- CN1638385A CN1638385A CNA2004101031111A CN200410103111A CN1638385A CN 1638385 A CN1638385 A CN 1638385A CN A2004101031111 A CNA2004101031111 A CN A2004101031111A CN 200410103111 A CN200410103111 A CN 200410103111A CN 1638385 A CN1638385 A CN 1638385A
- Authority
- CN
- China
- Prior art keywords
- frame
- data link
- vlan
- link layer
- mac
- 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
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/35—Switches specially adapted for specific applications
- H04L49/354—Switches specially adapted for specific applications for supporting virtual local area networks [VLAN]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/46—Interconnection of networks
- H04L12/4641—Virtual LANs, VLANs, e.g. virtual private networks [VPN]
- H04L12/4645—Details on frame tagging
- H04L12/4666—Operational details on the addition or the stripping of a tag in a frame, e.g. at a provider edge node
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/06—Generation of reports
- H04L43/062—Generation of reports related to network traffic
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/24—Traffic characterised by specific attributes, e.g. priority or QoS
- H04L47/2441—Traffic characterised by specific attributes, e.g. priority or QoS relying on flow classification, e.g. using integrated services [IntServ]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/02—Capturing of monitoring data
- H04L43/026—Capturing of monitoring data using flow identification
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0876—Network utilisation, e.g. volume of load or congestion level
- H04L43/0888—Throughput
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/16—Threshold monitoring
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/15—Interconnection of switching modules
- H04L49/1515—Non-blocking multistage, e.g. Clos
- H04L49/1523—Parallel switch fabric planes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/35—Switches specially adapted for specific applications
- H04L49/351—Switches specially adapted for specific applications for local area network [LAN], e.g. Ethernet switches
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/50—Overload detection or protection within a single switching element
- H04L49/501—Overload detection
- H04L49/503—Policing
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Image Processing (AREA)
- Small-Scale Networks (AREA)
- Use Of Switch Circuits For Exchanges And Methods Of Control Of Multiplex Exchanges (AREA)
Abstract
本发明的特征在于一种数据链路层处理器,用于整体上利用一个或多个媒体接入控制器(MAC)来执行VLAN标记操作、监控、整形和统计信息的采集。当多个数据链路层处理器在交换设备中并行地运行时,显著地减轻了路由引擎所承担的计算负荷。此外,在几个实施例中的数据链路层处理器可以被用于将各种形式的预处理和后处理引入到网络交换系统中,该系统使用不具有这些功能的路由器引擎。
Description
技术领域
本发明一般地涉及一种在网络交换中处理帧的技术。特别地,本发明涉及一种在网络交换的多个数据链路层控制器中提供分布式VLAN联系(VLAN association)、监控、整形和统计信息采集的系统和方法。
背景技术
分组交换网络中的路由器通常使用一个或多个网络处理器(一般为专用集成电路(ASIC)),以便执行各种分组处理操作。各个网络处理器通常与多个媒体接入控制器相关,从该媒体接入控制器接收帧,并且将帧发送到该媒体接入控制器。过去,设计路由器,以便使网络处理器能够同时调节来自各个相关端口的业务量以其指定的网速来运行,一般为100Mb/s或者1000Mb/s。然而,存在一种超额认购端口(over-subscribed)的趋势,即网络处理器或者其它路由器资源的带宽通常不能以网速支持每个端口运行一段持续时间。尽管超额认购的系统的每个端口节省的费用为某些顾客提供了有益的折衷,但是作为网络处理器或者路由处理器不能处理业务量的结果,超额认购的端口可能会导致数据的某种丢失。
为了将超额认购的有害影响减到最小,路由器可以使用大量试图捕获业务量突发的缓冲,直到资源可用于处理业务量时为止。也可以把暂停报文发送到一个或多个链路方,以便暂时减少已接收数据的数量,从而减少缓冲器溢出的机会。尽管取得了有限的成功,但是这两种方法都没有解决网络处理器或者其它资源根本上无能力处理大量业务的问题。因此,需要一种保持超额认购端口配置的优点,同时又减少对网络处理器的计算需求的装置。
发明内容
本发明的特征在于一个数据链路层处理器,用于使用一个或多个媒体接入控制器(MAC)来积累统计。当在交换设备中并行地操作多个数据链路层处理器,显著地减轻了由网络处理器承担的计算负荷。此外,在几个实施例中的数据链路层处理器可以用于将统计采集能力引入使用不具有这些功能的网络处理器的系统。例如,在基于发送业务量的VLAN优选地执行计费和记账的应用中,提供基于各个VLAN的统计是尤其令人感兴趣的。
在某些实施例中的数据链路层处理器包括:一个或多个MAC,用于从通信网络接收一个帧;以及有效地耦合到该一个或多个MAC的统计采集模块,用于编译与多个MAC中的每一个相关的统计。在优选实施例中,作为VLAN入口函数编译在输入流上生成的统计包括在数据链路层处理器处排队的字节数、在数据链路层处理器处排队的帧数、在数据链路层处理器处排队的非单播字节数以及在数据链路层处理器处排队的非单播帧数。在优选实施例中,具有在各个VLAN入口上生成的两个统计,即出队列字节数和出队列帧数。
附图说明
借助于实例来对本发明进行说明,但并不被附图所限制,其中:
图1是根据本发明优选实施例的网络交换设备的功能框图;
图2是根据本发明优选实施例的接入模块的功能框图;
图3是根据本发明优选实施例的数据链路层处理器的功能框图;
图4是由根据本发明优选实施例的数据链路层处理器使用的整体业务量监控器的功能框图;
图5是根据本发明优选实施例的由数据链路层处理器使用的业务流数据库的示意图;以及
图6是根据本发明优选实施例的由数据链路层处理器使用的整体VLAN接入点模块的功能框图。
具体施方式
图1中示出的是可以执行优选实施例的网络交换设备的功能框图。优选实施例中的交换设备100适合于利用如开放系统互联(OSI)参考模型中定义的第2层(数据链路层)和第3层(网络层)的协议数据单元(PDU)来执行交换和路由操作。交换设备100优选地是经由公共交换结构(未示出)有效地相互耦合的多个交换设备之一。例如,交换设备依次有效地与多个数据通信网络中的节点相耦合,该数据通信网络包括在局域网(LAN)、广域网(WAN)、城域网(MAN)或者其组合之内。
优选实施例的交换设备100通常包括网络处理器130、例如路由处理器、队列或者业务量管理器140,以及管理模块150。网络处理器130有效地经由多个网络接入模块(AM)102与网络相耦合,每个AM102包括至少一个有效地耦合到通信链路的外部端口,其用于接收入口数据业务量并且发送出口数据业务量。正如在这里所使用的,在AM102处进入交换设备100的业务量被称为入口业务量,而在AM102处出去的业务量被称为出口业务量。例如,AM102端口包括,数据链路层端口,诸如,由电气和电子工程师协会(IEEE)的标准802.3启用的以太网媒体接入控制(MAC)接口。
经由一条或者多条内部数据总线106,在多个AM102和网络处理器130之间传送入口和出口业务量的PDU。优选实施例的网络处理器130包括,分类器132和前向转发处理器134,以及出口处理器136。分类器132通常要解析入口协议数据单元(PDU),抽取包括源和/或目的地地址、协议类型和优先级信息的PDU的一个或多个字段;并且经由管理模块150,基于由网络管理员定义的本地策略将PDU映射到其中一组业务流类别。本地策略规定了将被应用于PDU的服务等级(CoS)和/或者服务质量(QoS)。
然后,前向转发处理器134使用由交换设备100编译的地址信息准备用于发送的入口PDU。如果PUD的目的地物理地址与MAC地址表中的地址匹配,那么就标识了一个合适的输出端口,而且将帧交换到合适的出口交换设备的出端口。然而,如果PDU包括另一个网络域中的节点的目的地网络地址,则该前向转发处理器就搜索已知的因特网协议(IP)地址,以及例如在集中式按内容寻址的存储器(cCAM)中保留的转发表中的其它业务流信息;如果存在匹配,则检索相邻设备的下一跳MAC地址,其中将分组转发到该设备;以及,在新的第2层的头标中封装分组。然后,将入口业务流的PDU从网络处理器130传递到队列管理器140。其中,在入口业务流的PDU经由光纤接口模块104被发送到交换结构(未示出)之前,对其进行缓冲。
除了上述入口处理之外,网络管理器130也处理从交换结构接收的出口业务量。为了支持这种出口业务量,网络处理器130还包括从出口队列存储器146或者光纤接口模块104接收出口业务量的出口处理器136。将出口业务量传递到AM102中的指定出端口之前,可以临时缓冲该出口业务量。
队列管理器140包括至少一个入口队列存储器142和队列调度器144。入口队列存储器142包括多个分组缓冲器或者队列,其中的每一个与不同的优先级或者不同的QoS/CoS等级相关联。当输出带宽可用时,经由光纤接口模块104通过调度器144将被缓冲的PDU传送到交换结构。
图2中示出的是根据本发明优选实施例的AM102的功能框图。AM102一般包括多个物理层接口(PHY)240和一个MAC处理器200。在OSI参考模型中定义的第1层(物理层)上运行的各个PHY240执行常规的网络接口功能,该功能包括以太网符号流的接收和发送。当从相关的通信链路接收一个符号流时,将来自通信链路的电或者光信号通过PHY240转换为字节流,然后该字节流被传送到相关的MAC接口210。在这种传输模式中,PHY240将来自相关MAC接口210的字节流转换为适于媒体的电或者光信号。PHY240是与其连接的媒体类型所特有的。
优选实施例中的MAC处理器200包括一个或多个符合IEEE标准802.3的MAC接口210,其在此引用作为参考。在OSI参考模型中定义的第2层上运行的MAC接口210执行常规的网络接口功能,该功能包括以太网帧的接收和发送。在接收模式中,MAC210优选地执行各种功能,该功能包括:(a)为了从以太网类型/长度字段提取已封装的协议类型、帧优先级、VLAN标记帧的用户优先级以及优先IP帧的TOS字节或者为了DiffServ映射,而进行的MAC帧解析;(b)利用已接收数据以及分组解封装的帧校验序列(FCS)值进行的误差校验;以及(c)非对称和对称流控制,包括接收流控制帧,以便例如由网络邻居中断帧传输或者中止帧传输。然后,来自MAC接口210的帧在被传送到网络处理器130之前,在MAC预处理器220处经历本地处理。
在传输模式中,帧被传送到MAC接口210之前在MAC后处理器230处经历本地处理。与常规的媒体接入控制器相一致,MAC接口210执行各种功能,例如包括:(a)冲突处理,(b)根据CSMA/CD传输协议的到通信媒体的接入控制,(c)帧校验序列(FCS)值的产生,(d)封装,以及(e)发送延迟。在该实施例中,MAC接口210适于独立地支持使用简化的十比特接口(RTBI)或者简化的千兆比特媒体独立接口(RGMII)类型的10、100或者1000兆位每妙的吞吐量。
图3中示出的是根据本发明优选实施例的MAC处理器200的功能框图。除了一个或多个MAC210之外,在某些实施例中的MAC处理器200包括,MAC预处理器220和MAC后处理器230。MAC预处理器220一般包括用于选择性地对帧进行滤波的业务量监控器304,MAC缓冲器306,用于将VLAN标记附加到已选择的入站帧上的VLAN推送模块308、速率缓冲器312以及用于将帧传送到网络处理器130的入口总线发射机314。MAC后处理器230优选地包括出口总线接收机320、进一步适合于整形出口业务量的速率缓冲器322以及用于将VLAN标记移动到已选择的入站帧中的VLAN接入点模块324。
经由内部入口总线332从多个MAC210将入口帧传送到一个或多个接收机缓冲器。在帧被传送到业务量监控器304或者其它下游的处理机构之前,由接收机先进先出(FIFO)存储器302表示的该一个或多个接收机缓冲器被用于对帧段进行缓冲。
优选实施例的业务量监控器304适合于执行在传输到网络处理器130之前的入口业务量监控和本地帧丢弃。在该优选实施例中,监控器304使用三色标记(TCM)算法,以便基于在监控器304处保持的、或者相反由监控器304可以理解的标准来标识用于丢弃的帧。在多个AM102的其中一个进行的本地监控取代、减少或者增加在网络处理器130中按常规执行的监控功能。
图4中更加详细地示出的业务量监控器304优选地包括第一解析器402、具有入口CAM405的流搜索引擎(FSE)404、入口计量器模块420、标记生成器422以及入口丢弃控制逻辑424。解析器402对经由接收机FIFO302从MAC210接收的入口帧进行检查,以及一个或多个已抽取比特或字段用于形成一个索引,该索引进入到最好实施搜索的入口CAM404。在该优选实施例中,CAM索引包括源端口502、指示802.1Q标记是否存在的VLAN标记状态504以及原帧标记控制信息(TCI)字段506,其在图5的入口CAM表500中以表格的形式示意性地示出。在某些实施例中,入口CAM索引还包括一个选项字段512,以便使用以下的属性,通过选择性地使能(enable)或禁用一个或多个CAM搜索参数来细化该搜索:
使用入口帧的VLAN ID字段来选择性地使能搜索的VLAN ID使能位;
使用入口帧的标记控制信息来选择性地使能搜索的TCI使能位;
使用与入口帧相关联的源端口来选择性地使能搜索的源端口使能位;
来自入口帧的外部VLAN标记的TCI的可信/不可信端口比特,用于使用入口帧的优先级来选择性地使能搜索;以及
使用入口帧的以太类型(Ethertype)(VLAN)协议标识符=x8100或者其它)来选择性地使能搜索的以太类型使能位。
如果检测到匹配,则FSE404检索流索引508,该流索引508指向用于检索各种流处理参数的流数据库406。正如通过图5中示出的流数据库406的表格510所示意性地表示,FSE404从流数据库406检索处理信息的一种或者多种形式,该处理信息包括VLAN信息514以便支持VLAN标记,并且包括带宽参数以便支持流控制。VLAN信息514可以包括但不限于一个新的VLAN标记、用于现有标记的新的VLAN ID、以及用于现有标记的新的TCI。在该优选实施例中,流数据库406还把一个索引包含到监控数据库408中,索引指向一个或多个带宽参数,例如对于监控入口业务流所必需的TCM业务量参数。
在该优选实施例中,业务量监控器304使用TCM算法来选择性地识别并丢弃配置文件外的帧,最好是单速率的三色标记(srTCM)算法或者双速率的三色标记(trTCM)算法。首先,在因特网工程任务组(IETF)的请求注释(RFC)2697中定义了srTCM,而在IETFRFC 2698中定义了trTCM,这二者在此引入作为参考。可以将这些标准中描述的TCM算法单独使用或者结合起来使用,以加强交换设备100中的其它决策过程,该交换设备100负责确定分组是否属于配置文件外,以及何时丢弃分组。
再次参考图4,为了执行srTCM算法,监控器304包括入口计量器模块(IMM)420以便测量每个给定单位时间内有多少数据正在流动,其是由标记生成器422传送的流速结果430来表明的。基于这种测量,标记生成器422将帧分为本领域普通技术人员所称的“颜色”即绿色、黄色和红色其中之一。将与帧相关联的颜色确定为各个流定义的业务量参数的函数。SrTCM中的业务量参数包括一个承诺信息速率(CIR)和两个相关的突发量,即承诺突发量(CBS)和超诺突发量(EBS),所有这些都可以作为特定业务流的一个函数从监控数据库408检索到。
一般来说,标记生成器422根据srTCM来估计业务流,以确定将应用哪一个标记。如果该帧没有超过CBS,则绿色标记用于表明该帧应当被交付给监控器304之后的接下来的后继处理。作为业务流一部分的超过CIR和EBS的帧被标记为红色且立即被丢弃。如果该帧超过CBS但是没有超过EBS,则黄色标记就与该帧相关联以表示该帧可以被交付,只要存在系统资源或者队列资源去做这件事情就可。当不被协议支持时,可以使用具体协议字段或者无协议标记对帧进行标记。尽管根据系统资源的可用性可以丢弃黄色帧,但在绿色帧被丢弃之前,黄色帧通常必须要被丢弃。在该实施例中,在标记生成器422下游使用丢弃控制逻辑(DCL)单元424以便检查各个帧的标记,并且如包括拥塞在内的系统资源的函数所要求的,选择性地丢弃帧。
在该实施例中,CIR和EBS分别作为与“符合”桶(conformbucket)和“溢出”桶(Exceed bucket)相关联的带宽计数器来实施。各个计数器的最大尺寸是256K字节,并且可以通过网络管理员来编程。各个计数器以令牌或者字节的可编程单元来“支付”,该令牌或字节表示例如带宽量或者帧的数量。借助于帧通过根据流速从符合桶或者溢出桶中减去帧长度来“消耗”令牌。特别是,入站帧的尺寸与各个计数器中累积的费用相比较。如果该尺寸大于费用,则该帧“妨碍”了计数器并且需要被标记。没有妨碍符合桶的帧就不被标记,并且被加到全局缓冲器即MAC缓冲器306的队列中。然后,从符合计数器中减去等于该帧长度的费用。妨碍了符合桶的帧被标记为“黄色”,然后被加到缓冲器队列中。然后,从溢出计数器中减去等于该帧长度的费用。妨碍了符合桶及溢出桶二者的帧被标记为“红色”并且被丢弃。
在周期性间隔中,对符合桶或者溢出桶继续计费而且将令牌补充给一个可编程的最大值。在该优选实施例中,尽管在相同时间间隔进行了递增,这两个计数器可以利用不同的付费值进行编程。本领域的普通技术人员将理解用于符合桶的费用必须总是小于溢出桶的费用,而且仅在符合桶具有最大费用之后才为溢出桶付费。
符合桶控制承诺信息速率,并且溢出桶控制峰值信息速率。这两个速率都是可编程的,并且具有64kbps的粒度以及范围能够从64Kbps到1Gbps。标记红色的帧在MAC预处理器220中被丢弃。标记黄色的帧优选地通过高速串行接口330被携带到网络处理器130。
除了用于实施监控的TCM业务量参数之外,FSE404也要检索一个或多个应用于入站帧的VLAN标识符。在该优选实施例中,该一个或多个VLAN标识符是源自一个标记选项字段,该标记选项字段位于流数据库406的表510的VLAN信息字段514中。一旦识别了可应用的VLAN标记,该VLAN标记就被写入到VLAN ID数据库410中,该VLAN ID数据库410可由VLAN推送模块308用于执行802.1QVLAN标记。
然后,监控器304将由入口DCL424传递的帧发送到MAC缓冲器306。MAC缓冲器306包括全局512千字节缓冲器,该缓冲器由十二个接收MAC接口210共享。该512千字节缓冲器被分为8192个64字节的字节片。一般来说,从不同MAC接口210读取的帧以它们到达的顺序被存储到接收缓冲器中。
在该优选实施例中,可以在超额认购的环境中实现MAC预处理器200,在该环境中,来自MAC接口210的MAC预处理器200的集中输入超过了MAC处理器200将它们传送到网络处理器130的能力。同样,一个或多个帧丢弃算法被用于当MAC缓冲器306满时丢弃所有的输入帧。该丢弃算法可以被用于基于包括入站分组的优先级在内的各种因素来丢弃帧,正如在序列号为no.10/068,710的美国专利申请中所教导的。如果至少一个MAC缓冲器306中的64字节片不为空,则丢弃入站帧。
在该优选实施例中,在四个级别上实施帧丢弃算法:
在MAC缓冲器306之前的帧解析器402级别;
在MAC缓冲器306输入处,通过协议CAM(未示出)和帧优先级描述符;
在MAC缓冲器306写入时间,利用加权随机早期检测(WRED)或者FIFO阈值,即“水印”,该阈值在多个MAC缓冲器306的FIFO处引起了帧丢弃,每个FIFO与12个端口中的每一个的优先级相关联;以及
在MAC缓冲器306读取时间,通过基于等级的,即基于优先级的FIFO出队列算法。
本领域的普通技术人员应当理解在超额认购的环境中,业务量监控器304的存在是尤其重要的,因为它提供了一种较早的丢弃帧并且阻止配置文件外的帧不必要消耗资源和MAC缓冲器306的内存的智能方式。通过在处理和缓冲之前消除侵犯帧(offending frame),网络处理器130减小了处理帧的负荷,并且由于缺乏有效的缓冲空间和其它的资源而导致的丢弃有效帧的可能性被最小化。
当从MAC缓冲器306释放这些帧时,单个帧被传送到VLAN推送模块308,在VLAN推送模块308处,将一个或多个VLAN标记插入到已选的帧中。在该优选实施例中,VLAN推送模块308从VLAN ID数据库410检索该一个或多个VLAN ID或者其它的VLAN信息,这些信息在监控操作期间帧被分类之后,由FSE404提前放置在VLAN ID数据库410中。新的VLAN标记信息可以以新的VLAN标记的形式添加到帧中,或者被用于取代出现在现有VLAN标记中的一个标记信息。由来自表510的VLAN信息字段514的标记选项比特来确定这种从将被使用的VLAN ID数据库410中检索标记的方式。考虑到具有新的标记的帧的长度,对帧较验序列(FCS)字段也要修改。
在某些可选的实施例中,VLAN推送模块308包括VLAN CAM,该VLAN CAM适合于基于一个或多个帧字段的匹配来识别合适的VLAN ID,这些帧字段例如包括源端口和输入VLAN标记。然后,在VLAN CAM中的匹配入口指向一个新的标记,其然后被推送到分组上面,或者被用于取代一个现有的标记。
包括VLAN堆栈特性的VLAN推送特性(pushing feature)适合于存储并利用和多达128条QoS规则/VLAN入口,也可以更多。在该优选实施例中,在MAC处理器210处保留的大约128个VLAN入口一般表示由交换设备100支持的所有QoS规则/VLAN的一个子集。由任何给定MAC处理器200支持的QoS规则/VLAN子集表示QoS规则/VLAN的最小集合,该QoS规则/VLAN与本地MAC接口210上的业务量相关联,而排除QoS规则不与特定MAC处理器相关联。这提供了至少两个优点。第一,为合适的VLAN检索所需的CAM的深度变得更小;第二,本地VLAN处理减轻了负责执行VLAN标记和堆栈的网络处理器的负荷。
从VLAN推送模块308将帧传送到入口速率缓冲器312,该入口速率缓冲器312负责将帧以相对均匀的速率经由入口数据总线发送器314发送到高速串行(HSS)接口316。高速串行(HSS)接口316有效地借助于分组流总线将MAC预处理器220耦合到网络处理器130,该分组流总线对本领域的普通技术人员是熟知的。该分组流总线也可以有效地将网络处理器130耦合到多个MAC处理器200中的每一个。
除了发送入口业务量以外,多个MAC处理器200中的每一个也从网络处理器130接收出口业务量。去往本地PHY接口240端口的出口业务量通过MAC后处理器230经由HSS接口200在出口总线接收机320处被接收。在出口速率缓冲器322处对出口帧进行临时缓冲,并且随后以相对均匀的速率将其发送到VLAN接入点模块326。
在某些实施例中,速率缓冲器322还包括一个适合于对MAC处理器200接收的出口业务量执行基于带宽的流控制的业务量整形器324。在该优选实施例中的业务量整形器324利用单令牌桶算法结合一个或多个桶来调整MAC后处理器230的输出带宽,各个桶与业务流等级相关联。使用“符合计数器”追踪的分配给各个桶的令牌表示各个业务流等级的容量。将帧从速率缓冲器322每发送一次,就从相关的符合计数器中减去表示帧长度的令牌数。如果没有足够的令牌来发送帧,则来自速率缓冲器的帧的传输就会被中止,直到随后补充令牌为止。尽管整形器324一般不会丢弃帧,但是用于扩展时间周期的桶的中止可以导致交换结构(未示出)备份,并且或者在入口交换设备处丢弃帧。
与业务流等级相关的帧在补充令牌之后再一次被发送。在该优选实施例中,符合计数器以规定的时间间隔被支付了最大数量的令牌,该时间间隔是可编程地通过网络管理员来确定的。在该优选实施例中,可以基于端口、VLAN和优先级或者任何其组合来整形。
VLAN接入点模块326适合于去除现有的在出口帧上的标记,或者适合于取代在现有标记中的VLAN标记信息,或者先前在入口交换设备的VLAN推送模块308处插入的标记。图6中示出的优选实施例的VLAN接入点模块326包括,用于从出口帧中抽取一个或多个比特或字段的第二解析器602,以及出口业务流搜索引擎604,其用于生成一个到出口CAM605的关键字,如果匹配,则该出口CAM605将产生一个到VLAN标识符数据库606的指针。包括在VLAN标识符数据库606中的是体现在选项比特中的VLAN的相关规则,如果该规则可用,则提供除去或者取代一个或多个现有的VLAN标记的指令。将VLAN标记处理指令传送到成帧器610,该成帧器610在经由出口总线334将帧传送到合适的MAC接口210之前负责改变帧。如果新的CRC字段是可用的,则在网络上发送该字段之前,将其添加到该帧上。
优选实施例的MAC后处理器230还包括统计采集模块(SAM)350,用于编译来自各个MAC接口210的流统计。在该优选实施例中,基于各个端口或者基于各个VLAN来收集统计信息。当编译统计信息时,它们通过SAM350被发送到管理模块150中的中央管理体,或者可达到该一个或多个交换设备100中每一个的其它位置。如果能够利用简单网络管理(SNMP)客户机来使能SAM350,则该中央管理单元可以利用SNMP报文周期性地下载统计信息,经由命令和控制接口340传送该SNMP报文。
在优选实施例中收集的统计信息包括远程监视(RMON)和管理信息库(MIB)-II统计的整个集合,该统计是经由第一统计通道336从多个MAC210中的每一个得到的。本领域普通技术人员熟知的多个请求注释(RFC)中阐述了RMON,而在标题为“基于TCP/IP的因特网网络管理信息库”的RFC1213中阐述了MIB-II。在该优选实施例中,SAM350进一步收集为实施QoS特性所需的统计(诸如,VLAN统计信息和与交换监控(SMON)性能相关的统计信息),在标题为“用于交换式网络的远程网络监控MIB扩展”的因特网工程任务组(IETF)请求注释(RFC)2613中阐述了SMON需求,其在此引用作为参考。
优选地基于各个VLAN入口来收集VLAN统计,该统计用于经过入口FSE404的入口业务流和经过出口FSE604的出口业务流,正如由入口统计通道338和出口统计通道339分别所示出的。就入口业务量来说,SAM350从MAC预处理器220支持的每个VLAN入口收集下面的统计信息:
在MAC缓冲器306处排队的字节数;
在MAC缓冲器306处排队的分组数;
通过业务量监控器304丢弃字节的字节数;
通过业务量监控器304丢弃的分组数;
在MAC缓冲器306处排队的非单播字节数;
在MAC缓冲器306处排队的非单播分组数;
通过业务量监控器304丢弃的非单播字节数;以及,
通过业务量监控器304丢弃的非单播分组数。
就出口业务量来说,SAM350优选地收集并编译各个端口和各个VLAN入口的统计。例如,所采集的统计信息被细分为多个出队列字节和多个出队列分组。如果帧包括多个VLAN标记,则将在外部标记上对统计进行累加。
尽管上面的描述包括了多种标准规范,但这些都不应当被解释为限制本发明的范围,而仅仅是提供了本发明优选实施例的某些示例。
因此,通过例子但非限制性地已经公开了本发明,应当参考下面的权利要求来确定本发明的范围。
Claims (10)
1.一种交换设备,包括:
用于从通信网络接收一个或多个帧的一个或多个物理层接口;
多个数据链路层处理器,其中每个数据链路层处理器包括:
一个或多个媒体接入控制器(MAC),其中将每个MAC有效地耦合到物理层接口;以及
统计采集模块,其有效地耦合到该一个或多个MAC,用于编译对多个MAC中的每一个的统计;以及
一个网络处理器,其有效地耦合到多个数据链路层处理器,用于路由从多个数据链路层处理器接收的一个或多个帧。
2.根据权利要求1的交换设备,其中每个数据链路处理器还包括一个或多个流搜索引擎,用于基于一个或多个与帧相关的特性对一个或多个帧进行分类。
3.根据权利要求2的交换设备,其中一个或多个特征包括源端口、VLAN标记状态、VLAN标识符以及VLAN标记控制信息(TCI)字段。
4.根据权利要求2的交换设备,其中一个或多个流搜索引擎包括一个或多个内容可寻址存储器(CAM)。
5.根据权利要求4的交换设备,其中与多个数据链路层中的每一个相关的一个或多个CAM包括附属于该相关的多个物理层接口的QoS规则。
6.根据权利要求1的交换设备,其中数据链路层处理器是媒体接入控制(MAC)处理器。
7.根据权利要求1的交换设备,其中交换设备选自路由器、多层交换装置以及交换叶片(switch blade)。
8.根据权利要求1的交换设备,其中由统计采集模块编辑的统计包括入口帧统计。
9.根据权利要求8的交换设备,其中对入口帧统计进行编辑作为VLAN入口的函数。
10.根据权利要求9的交换设备,其中作为VLAN入口的函数而编辑的入口帧统计包括:
在数据链路层处理器处排队的字节数;
在数据链路层处理器处排队的帧数;
在数据链路层处理器处排队的非单播字节数;以及
在数据链路层处理器处排队的非单播帧数。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/751,129 | 2003-12-31 | ||
US10/751,129 US7698412B2 (en) | 2003-12-31 | 2003-12-31 | Parallel data link layer controllers in a network switching device |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1638385A true CN1638385A (zh) | 2005-07-13 |
CN100550914C CN100550914C (zh) | 2009-10-14 |
Family
ID=34574820
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB2004101031111A Expired - Fee Related CN100550914C (zh) | 2003-12-31 | 2004-12-31 | 在网络交换设备中的并行数据链路层控制器 |
Country Status (5)
Country | Link |
---|---|
US (1) | US7698412B2 (zh) |
EP (1) | EP1551130B1 (zh) |
CN (1) | CN100550914C (zh) |
AT (1) | ATE392069T1 (zh) |
DE (1) | DE602004012955T2 (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101179595B (zh) * | 2007-12-10 | 2011-05-04 | 中国科学院计算技术研究所 | 一种无线通信数据收发设备和系统及数据处理方法 |
CN102187625A (zh) * | 2009-03-06 | 2011-09-14 | 华为技术有限公司 | 传输多工器-强迫来自一个域的以太网流量在不同的(外部)域中进行交换的机制 |
CN110233835A (zh) * | 2014-10-15 | 2019-09-13 | 瞻博网络公司 | 用于多层网络抽象的控制器到控制器接口 |
CN116319578A (zh) * | 2023-05-22 | 2023-06-23 | 麒麟软件有限公司 | 一种基于dpaa的网络风暴防御方法 |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7385985B2 (en) * | 2003-12-31 | 2008-06-10 | Alcatel Lucent | Parallel data link layer controllers in a network switching device |
US7698412B2 (en) * | 2003-12-31 | 2010-04-13 | Alcatel Lucent | Parallel data link layer controllers in a network switching device |
US7784076B2 (en) * | 2004-10-30 | 2010-08-24 | Sharp Laboratories Of America, Inc. | Sender-side bandwidth estimation for video transmission with receiver packet buffer |
JP5487966B2 (ja) * | 2007-07-03 | 2014-05-14 | 日本電気株式会社 | データ暗号化/復号化処理方法およびデータ処理装置 |
US20130329553A1 (en) * | 2012-06-06 | 2013-12-12 | Mosys, Inc. | Traffic metering and shaping for network packets |
WO2012122217A2 (en) * | 2011-03-07 | 2012-09-13 | Adtran, Inc. | Method and apparatus for network access control |
CN102271088B (zh) * | 2011-08-16 | 2014-02-12 | 大唐移动通信设备有限公司 | 数据包处理方法和设备 |
US10182017B2 (en) | 2016-06-30 | 2019-01-15 | Mellanox Technologies Tlv Ltd. | Estimating multiple distinct-flow counts in parallel |
US10218642B2 (en) * | 2017-03-27 | 2019-02-26 | Mellanox Technologies Tlv Ltd. | Switch arbitration based on distinct-flow counts |
US11211999B2 (en) * | 2017-12-28 | 2021-12-28 | Hughes Network Systems, Llc | Satellite network virtual LAN usage |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6094435A (en) * | 1997-06-30 | 2000-07-25 | Sun Microsystems, Inc. | System and method for a quality of service in a multi-layer network element |
US6377998B2 (en) * | 1997-08-22 | 2002-04-23 | Nortel Networks Limited | Method and apparatus for performing frame processing for a network |
US6181699B1 (en) * | 1998-07-01 | 2001-01-30 | National Semiconductor Corporation | Apparatus and method of assigning VLAN tags |
AU5567499A (en) | 1998-08-17 | 2000-03-06 | Vitesse Semiconductor Corporation | Packet processing architecture and methods |
US6389468B1 (en) * | 1999-03-01 | 2002-05-14 | Sun Microsystems, Inc. | Method and apparatus for distributing network traffic processing on a multiprocessor computer |
US20020089929A1 (en) * | 2000-05-24 | 2002-07-11 | Mathieu Tallegas | Packet processor with multi-level policing logic |
WO2002017571A1 (en) | 2000-08-24 | 2002-02-28 | Tiara Networks, Inc. | System and method for connecting geographically distributed virtual local area networks |
WO2003028304A1 (en) * | 2001-09-27 | 2003-04-03 | Broadcom Corporation | Highly integrated media access control |
US6681262B1 (en) * | 2002-05-06 | 2004-01-20 | Infinicon Systems | Network data flow optimization |
US7161904B2 (en) * | 2002-06-04 | 2007-01-09 | Fortinet, Inc. | System and method for hierarchical metering in a virtual router based network switch |
US7486696B2 (en) * | 2002-06-25 | 2009-02-03 | Avaya, Inc. | System and method for providing bandwidth management for VPNs |
US7698412B2 (en) * | 2003-12-31 | 2010-04-13 | Alcatel Lucent | Parallel data link layer controllers in a network switching device |
-
2003
- 2003-12-31 US US10/751,129 patent/US7698412B2/en not_active Expired - Fee Related
-
2004
- 2004-12-18 EP EP04030077A patent/EP1551130B1/en not_active Not-in-force
- 2004-12-18 DE DE602004012955T patent/DE602004012955T2/de active Active
- 2004-12-18 AT AT04030077T patent/ATE392069T1/de not_active IP Right Cessation
- 2004-12-31 CN CNB2004101031111A patent/CN100550914C/zh not_active Expired - Fee Related
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101179595B (zh) * | 2007-12-10 | 2011-05-04 | 中国科学院计算技术研究所 | 一种无线通信数据收发设备和系统及数据处理方法 |
CN102187625A (zh) * | 2009-03-06 | 2011-09-14 | 华为技术有限公司 | 传输多工器-强迫来自一个域的以太网流量在不同的(外部)域中进行交换的机制 |
CN102187625B (zh) * | 2009-03-06 | 2014-05-07 | 华为技术有限公司 | 传输多工器-强迫来自一个域的以太网流量在不同的(外部)域中进行交换的机制 |
CN110233835A (zh) * | 2014-10-15 | 2019-09-13 | 瞻博网络公司 | 用于多层网络抽象的控制器到控制器接口 |
CN110233835B (zh) * | 2014-10-15 | 2022-01-18 | 瞻博网络公司 | 一种用于多层网络抽象的方法与系统 |
CN116319578A (zh) * | 2023-05-22 | 2023-06-23 | 麒麟软件有限公司 | 一种基于dpaa的网络风暴防御方法 |
CN116319578B (zh) * | 2023-05-22 | 2023-09-26 | 麒麟软件有限公司 | 一种基于dpaa的网络风暴防御方法 |
Also Published As
Publication number | Publication date |
---|---|
CN100550914C (zh) | 2009-10-14 |
EP1551130A1 (en) | 2005-07-06 |
ATE392069T1 (de) | 2008-04-15 |
DE602004012955D1 (de) | 2008-05-21 |
EP1551130B1 (en) | 2008-04-09 |
DE602004012955T2 (de) | 2009-06-04 |
US7698412B2 (en) | 2010-04-13 |
US20050198258A1 (en) | 2005-09-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1638361A (zh) | 网络交换设备的并行数据链路层控制器 | |
CN100579059C (zh) | 在网络交换设备中的并行数据链路层控制器 | |
US11968116B2 (en) | Method and system for facilitating lossy dropping and ECN marking | |
CN1278524C (zh) | 多级警管逻辑的分组处理器 | |
US8284665B1 (en) | Flow-based rate limiting | |
US7088716B2 (en) | Network routing apparatus | |
CN100438481C (zh) | 分组处理装置 | |
US6185214B1 (en) | Use of code vectors for frame forwarding in a bridge/router | |
CN1713617B (zh) | 通信统计收集装置 | |
CN100550914C (zh) | 在网络交换设备中的并行数据链路层控制器 | |
CN1541474A (zh) | 路由系统中差异排队的系统和方法 | |
US20020089929A1 (en) | Packet processor with multi-level policing logic | |
CN1875585A (zh) | 利用mac限制来控制动态未知l2泛滥 | |
CN101847429A (zh) | 具有网络直放功能的多闪存并行存储装置 | |
CN112825507A (zh) | 网络设备中的流监测 | |
KR20120008478A (ko) | 3단계 동적 분류를 통한 10기가급 대용량 플로우 생성 및 제어방법 | |
CN1783846A (zh) | 流感知以太网数字用户线接入多路复用器 | |
CN201869206U (zh) | 流媒体服务器 | |
CN201689684U (zh) | 多闪存并行存储装置 | |
CN101825926A (zh) | 具有网络直放功能的流媒体服务器 | |
US20240056385A1 (en) | Switch device for facilitating switching in data-driven intelligent network | |
US7912939B1 (en) | Method and apparatus for selectively reading counter information in a network device | |
CN115208832A (zh) | 用于交换机中的仪表符合性的方法和系统 | |
CN117240795A (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 | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20091014 Termination date: 20191231 |