CN1633786B - 以太网体系结构中基于优先级的流控制方法和装置 - Google Patents
以太网体系结构中基于优先级的流控制方法和装置 Download PDFInfo
- Publication number
- CN1633786B CN1633786B CN028132580A CN02813258A CN1633786B CN 1633786 B CN1633786 B CN 1633786B CN 028132580 A CN028132580 A CN 028132580A CN 02813258 A CN02813258 A CN 02813258A CN 1633786 B CN1633786 B CN 1633786B
- Authority
- CN
- China
- Prior art keywords
- priority level
- ethernet
- control messages
- ethernet traffic
- current control
- 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.)
- Expired - Fee Related
Links
Images
Classifications
-
- 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]
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Small-Scale Networks (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Communication Control (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明一般地描述了以太网体系结构中基于优先级的流控制的方法和装置。根据本发明的一个方面,提出了一种方法,该方法包括识别网络设备的与以太网流量的一个或多个优先级别相关联的接收能力,以及产生包括流控制优先级别的控制消息,所述流控制优先级别指示识别出的优先级别,所述网络设备有能力接收高于或低于识别出的优先级别的以太网流量。
Description
技术领域
本发明一般地涉及数据网络领域,更具体地,本发明涉及以太网体系结构内基于优先级的流控制的方法和装置。
背景技术
随着计算机技术的发展,网络在将计算机系统通信地耦合在一起以允许交换信息方面的应用也在发展。这种网络拓扑的一个例子是通常被称为以太网标准拓扑的带冲突检测的载波侦听多路访问(CSMA/CD)访问方法和物理层规范,其由电子电气工程师协会(IEEE)赞助开发并升级为标准802.3(2000年)。以太网标准(802.3x)的一个规定有助于两个网络设备之间的点对点流控制。
简单地说,流控制是一种这样的机制,该机制在网络设备的以太网接口的媒体访问控制器(MAC)内实现,用于管理两个全双工以太网设备(即工作站、集线器、交换机、路由器等)之间的数据流。根据802.3x的以太网流控制机制,已经达到接收缓冲区阈值(这种情况俗称过满(oversubscribed))的设备(或端口)发出控制消息,该控制消息命令发送设备暂停以太网流量的发送,直到收到进一步的通知(或暂停一段设定的时间)为止。一旦先前过满设备的接收缓冲区能够接收另外的内容,就可以发送另一个控制消息以恢复以太网流量的发送。在可替换的实现中使用了定时器,其中如果接收设备需要继续“关”(off)状态,则一旦定时器到时,就必须发出另一个控制消息以维持这个状态。在这个方面,以太网流控制规定被俗称为XON/XOFF(发送开/发送关)方案,其中,两个网络设备之间的整个以太网通信链路或者被允许,或者被禁止。
常常与802.3x的传统以太网流控制机制相关联的一种限制是,该机制不区分流量的类型或者流量的优先级。也就是说,在基本的XON/XOFF以太网接口内没有用于区别以太网流量的不同级别的规定,所述级别例如是由要求不同服务等级、服务质量等的应用程序产生的。结果,没有用于使时间敏感性网络内容(例如多媒体内容)比非时间敏感性内容(例如电子邮件内容)更优先的规定。到最近之前,IEEE 802.3x的传统以太网流控制规定足以支持一般数据网络的流量。但是今天,随着越来越多的应用程序需要来自网络资源的不间断的内容流,以太网体系结构中基于优先级的流控制的缺乏正成为一种不可忍受的限制。因此,急需一种新的流控制机制,它不会受到通常与传统的以太网流控制相关联的固有限制的阻碍。在接下来的讨论中就提供了这样一种解决方案。
发明内容
本发明的一个技术方案提供了一种方法,该方法包括:通过扫描多个接收缓冲区以确定所述多个接收缓冲区中的内容是否已经达到或超过预定阈值,来识别网络设备的与以太网流量的一个或多个优先级别相关联的接收能力;如果所述多个接收缓冲区中的内容已经达到或超过所述预定阈值,则识别过满的流控制优先级别,其中流控制优先级别指示识别出的优先级别,所述网络设备有能力接收高于和/或低于该优先级别的以太网流量;以及产生包括所述流控制优先级别的控制消息,所述流控制优先级别用于导致抑制来自接收到所述控制消息的网络设备的以太网流量.
本发明的另一技术方案提供了一种方法,该方法包括:接收包括流控制优先级别的控制消息,所述流控制优先级别用于导致抑制来自接收到所述控制消息的网络设备的以太网流量;以及抑制将所述以太网流量的具有接收到的控制消息中所指示的流控制优先级别的子集向网络设备的发送,所述网络设备有能力接收高于和/或低于所述流控制优先级别的以太网流量,其中所述流控制优先级别是在通过扫描多个接收缓冲区而确定所述多个接收缓冲区中的内容已经达到或超过预定阈值的情况下被识别为过满的。
本发明的另一技术方案提供了一种网络接口,该网络接口包括:多个接收缓冲区,所述多个接收缓冲区与以太网流量的一个或多个优先级别相关联;以及控制逻辑,该控制逻辑被耦合到所述多个接收缓冲区,所述控制逻辑用于通过扫描多个接收缓冲区以确定所述多个接收缓冲区中的内容是否已经达到或超过预定阈值,来识别网络设备的与以太网流量的一个或多个优先级别相关联的接收能力,如果所述多个接收缓冲区中的内容已经达到或超过所述预定阈值,则识别过满的流控制优先级别,其中流控制优先级别指示识别出的优先级别,所述网络设备有能力接收高于和/或低于该优先级别的以太网流量,并产生包括所述流控制优先级别的控制消息,所述流控制优先级别用于导致抑制来自接收到所述控制消息的网络设备的以太网流量。
附图说明
通过示例的方式而不是通过限制的方式对本发明进行了图示说明,在附图中相同的标号指相似的元件,其中:
图1是示例性数据网络的方框图,所示数据网络并入了根据本发明教导的创新的流控制机制;
图2是根据本发明的一个示例性实现,用创新的流控制代理增强的示例性网络接口的方框图;
图3是示例性接收缓冲区的图示说明,所示接收缓冲区适合于按照本发明的基于优先级的流控制机制使用;
图4是示例性发送缓冲区的图示说明,所示发送缓冲区适合于按照本发明的基于优先级的流控制机制使用;
图5是根据本发明一个方面的流控制管理数据结构的图示说明,所述数据结构用在例如交换机中,以管理具有一个或多个被通信地耦合的网络元件的点对点通信链路的某些方面;
图6是根据本发明的一个方面,包括流控制优先级字段的示例性以太网控制消息的图示说明;
图7是根据本发明的一个方面来实现流控制的示例性方法的流程图;
图8是根据本发明的一个方面,抑制以太网流量的一个子集的示例性方法的流程图;以及
图9是根据本发明一个可替换实施例,包含多个可执行指令的示例性存储介质的方框图,当所述指令被执行时,使得访问机器实现增强网络接口的一个或多个方面。
具体实施方式
本发明一般地涉及以太网体系结构中基于优先级的流控制的方法和装置。在这个方面,引入了包含流控制代理的增强型网络接口(enhancednetwork interface,ENI)。根据一个示例性实现,流控制代理被集成在ENI的媒体访问控制器(MAC)中,以有助于基于优先级的流控制。
根据本发明的一个方面,流控制代理监视ENI的接收能力,并有选择地产生指示一个优先级别的控制消息,ENI能够接收高于或低于该优先级别的以太网流量。控制消息被发送给被通信地耦合的设备,以有效地抑制想要从接收控制消息的设备送到ENI的以太网流量的至少一个子集的发送。在这个方面,流控制代理有效地区分以太网流量的优先级,并且如果需要,会根据识别出的主网络接口(例如ENI)的接收能力来有选择地抑制这种流量的仅仅一个子集。
根据本发明的另一个方面,增强网络接口将具有不同优先级别的内容接收到发送缓冲区中。ENI的媒体访问控制器(MAC)识别所接收内容的目的地,以及如果有的话,还识别与识别出的目的地相关联的流控制优先级,并至少部分地基于相关联的流控制优先级别,有选择地只转发为给定网络设备而指定的内容的允许子集。在这个方面,增强网络接口有助于多个优先级的数据跨越以太网链路,动态地在这些优先级的仅一个子集上实行流控制。本领域的技术人员应该理解,如果具有了对以太网流量的一个子集(例如,仅较低优先级的流量)实行流控制的能力,则通过在拥塞期间只允许高优先级的数据通过链路,就可以有效地增强感知到的以太网性能。
在整个本说明书中,提到“一个实施例”或“实施例”是指结合实施例描述的特定的特征、结构或特性被包含在本发明的至少一个实施例中。因此,在整个本说明书中多个地方出现的短语“在一个实施例中”或“在实施例中”不一定都指同一个实施例。此外,这些特定的特征、结构或特性可以在一个或多个实施例中以适当的方式组合在一起。
示例性点对点以太网通信链路
本领域的技术人员可以理解,以太网拓扑内的通信是基于每个通信链路而被管理的。因此,当讨论以太网拓扑内的流控制时,一般会理解为在两个以太网允许的网络设备之间的流控制,所述网络设备例如是工作站、集线器、交换机、路由器等。参照图1说明了这种网络拓扑的一个例子。
图1图示了根据本发明的教导,耦合两个网络设备的示例性以太网通信链路的方框图。更具体地说,根据第一实施例100,计算设备/网络元件102通过以太网通信链路106被耦合到另一个计算设备/网络元件104上。根据本发明的示例性实现,计算设备/网络元件102和104中的每一个都被描述为包含上面介绍过的增强网络接口120。根据本发明的教导,集成在网络设备102、104中的每一个内的增强网络接口(ENI)120在这两个设备之间有效地建立了点对点以太网通信链路,该通信链路具有此前未实现的流量优先排序(例如,基于服务等级、服务类型、服务质量等)能力,这将在后面进行更充分的展开说明。
这里所使用的每一个计算设备/网络元件意在代表本领域中公知的很多种以太网元件,例如,台式计算平台、笔记本计算平台、手持设备(例如个人数字助理)、移动通信设备或者许多具有以太网网络资源的网络管理设备(集线器、交换机、路由器等)中的任何一种.但是对于将在后面进行更充分描述的增强网络接口(ENI)的集成来说,每一个计算设备/网络元件都意在代表当前已经在本领域中公知的这些传统设备——为了实现本发明的教导,除了ENI之外不需要其它特殊的能力.因此,不需要进一步描述主设备102、104的体系结构细节.
如上面已经介绍并将在后面进行更充分的展开说明的那样,ENI 120被赋予了先进的流控制能力,以有效地建立并独立地管理以太网通信链路106内不同优先级的以太网流量。根据本发明的一个方面,ENI 120监视与不同内容优先级别相关联的多个缓冲区中每一个缓冲区的接收能力,并产生指示一个优先级别的控制消息,ENI有容量来接收高于或低于该优先级别的内容。根据一个实现,所述优先级别指示一个级别,ENI 120的接收缓冲区可以接收高于该级别的内容。在这样的实现中,处于和/或低于与所指定的优先级别相关联的缓冲区的一个或多个缓冲区已经达到了容量阈值。
根据本发明的另一个方面,ENI 120对指示流控制优先级别的控制消息的接收做出响应。在这个方面,ENI 120至少部分地基于从远程网络元件接收到的控制消息来监视发送缓冲区中的内容,并将所选内容从发送缓冲区转发到远程网络实体。
虽然在图1中没有具体指示,但是应该理解,增强网络接口(ENI)120可以与传统以太网接口兼容,以实现在前面提到的IEEE 802.3x中列举的传统流控制规定,在本文中通过引用而包含了其公开文本以用于全部目的。即,如果点对点以太网通信链路的两个网络元件都配备了创新的ENI120,就可以在通信链路106上建立基于优先级的流控制。或者,如果两个网络元件中的一个配备了ENI 120,而点对点以太网通信链路的另一个元件设有传统的网络接口,则ENI 120将参与802.3x中所定义的传统流控制机制。
具有基于优先级的流控制的示例性网络接口
图2图示了包含本发明教导的示例性增强网络接口(ENI)的方框图。根据图2所图示的示例性实施例,ENI 120被描述为包含主机系统接口202、一个或多个输入/输出缓冲区204、媒体访问控制器206、编码器/译码器组208、连接单元接口210以及一个或多个物理介质接口212,它们中的每一个按图示方式耦合。根据本发明的教导,ENI 120被描述为包含创新性的流控制代理214,以有助于与远程网络接口之间的基于优先级的流控制,所述远程网络接口也被类似地赋予了基于优先级的流控制特征。在图2的图示示例性实现中,流控制代理214被集成在一个(或多个)媒体访问控制器206内。根据这种实现,流控制代理214可以在由MAC执行的软件或固件内容中实施,以实现这里描述的基于优先级的流控制特征。但是,本领域的技术人员应该理解,流控制代理214可以被实施为网络接口的独立元件,例如,可以是专用集成电路(ASIC)、专用微控制器等。在这个方面,流控制代理214的可替换实现被预期为处于所要求保护的发明的精神和范围之内。
这里所使用的主机系统接口202提供了与主处理系统之间的通信链路。在某些实现中,主机系统接口202提供了对例如下述应用程序的通信接口,所述应用程序在主计算系统上执行并有益地利用了ENI 120的网络通信资源。如将在后面更充分地讨论的那样,根据这种示例性实现(例如,作为计算系统的网络接口卡(NIC)),来自这种主应用程序的内容通过主机系统接口202被接收,并被缓冲存储在I/O缓冲区204的一个或多个发送缓冲区中。
这里所使用的I/O缓冲区204意在代表本领域中公知的很多种存储系统中的任何一种.根据一个实现,I/O缓冲区204包括发送数据结构或队列,以及接收数据结构.根据一个示例性实现,MAC 206维护和管理许多接收队列,其中每一个队列都与特定的内容优先级别相关联。这样,如将在后面更充分地讨论的那样,MAC 206的流控制代理214在做出基于优先级的流控制决定时监视这种接收队列的接收容量。本领域的技术人员应该理解,I/O缓冲区204可以由许多不同类型的物理存储器/存储设备中的任何设备组成。
这里所使用的编码器/译码器208、AUI 210和PMI 212中的每一个都意在代表一般网络接口的这种元件。即,这种元件208到212除了其与一般的MAC 206以及特定的流控制代理214之间的关系之外,它们意在代表本领域中公知的很多种这样的设备中的任何设备,因此,在这里不需要进一步的描述。
如上面所介绍的,媒体访问控制器(MAC)206控制网络接口内的信息流。根据图2的图示示例性实现,MAC 206被描述为包含创新性的流控制代理214。如将在后面更充分地讨论的那样,流控制代理214有选择地实现两个网络设备之间点对点以太网通信链路内基于优先级的流控制。在这个方面,流控制代理214检测与内容相关联的优先级别,并按照从被耦合的设备接收到的控制消息中识别出的优先级别,有选择地仅将内容的一个子集转发给该被耦合的设备。这里所使用的优先级别,可以由产生内容的应用程序来支配(例如,如果是从主应用程序接收到的话),或者嵌入到内容的管理部分(头部(header)/尾部(footer))内。根据一个实现,流控制代理214对例如从被耦合的网络元件接收到的内容的管理信息进行检查,检查的内容是指示优先级别的服务等级(CoS)、服务类型(ToS)和/或服务质量(QoS)表示中的一个或多个,并将这种接收到的内容存储在与其识别出的优先级别相当的缓冲区中。
此外,流控制代理214监视网络接口的接收缓冲区的容量,并有选择地产生并发出控制消息,以抑制从被耦合设备的内容发送。如将在后面更充分地展开说明的那样,流控制代理214监视I/O缓冲区的接收缓冲区,以识别与一个或多个内容优先级别相关联的缓冲区中每一个的接收能力。一旦一个缓冲区已经达到了特定的阈值,流控制代理214就产生指示优先级别的控制消息,高于该优先级别的内容仍可以被接收。具有优先级别信息的控制消息的发送导致被适当地配备的接收网络接口对所具有的优先级别低于控制消息中所指示的优先级别的流量进行抑制。根据一个实现,接收控制消息的网络设备暂停所具有的优先级别低于控制消息中所指示的优先级别的流量的发送,直到随后接收到修改/去除对该特定优先级别的保持的控制消息。如上面所说明的,在可替换实现中可以使用定时器,其中,与在其它情况下被中断的优先级别相关联的通信可以在一段特定的时间(该段特定的时间是预定的,或者是在接收到的控制消息内所指示的)之后重新开始。在这个方面,流控制代理214有效地实现了基于优先级的流控制机制,提高了感知到的以太网容量和能力。
示例性数据结构
现在参照图3,给出了示例性存储器系统300的至少一个子集的图示说明.根据图3的图示示例,存储器系统300被描述为包含多个接收缓冲队列302、304和306.根据本发明的一个示例性实现,流控制代理214有效地使用缓冲区302、304、306中的每一个作为接收缓冲区,以从远程网络设备接收内容.根据本发明的教导,每一个缓冲区都与具有不同优先级别的内容相关联,例如优先级别1内容、优先级别2内容,直到优先级别N内容(其中,N指示接口或通信协议所支持的优先级别的数量).如上面所介绍的,缓冲队列302、304和306中的每一个可以由许多存储器设备组成.或者,不同缓冲区中的每一个可以只占用一个存储器设备的不同空间.此外,虽然被图示为基本上同样大小,但是本领域的技术人员应该了解,在某些实现中,使一个级别的流量优先于另一个级别的流量可能是有利的.可以实现这种情况的一种方式是,为较高的优先级别提供更多的存储器和更高的阈值,而为较低的优先级别分配较少的存储器和/或较低的缓冲阈值.
如将在后面更充分地展开说明的,缓冲队列302、304和306中的每一个都用阈值线308标记。这里所使用的流控制代理214监视缓冲区302、304和306中每一个内的内容(例如310、312等),并且在这种内容达到和/或超过阈值308时,流控制代理214产生控制消息,该控制消息指示与已经达到阈值308的缓冲区相关联的优先级别。然后,实现本发明教导的接收网络设备将中断下述内容的发送,所述内容所具有的优先级别处于或低于接收到的控制消息中所指示的优先级别。
图4提供了适合于根据本发明的教导使用的发送队列400的图示说明。根据图4的图示示例性实现,发送队列400被描述为包含多个条目402,其中每个条目都与内容的数据报(或流)相关联。根据一个示例性实现,条目402中的每一个代表具有类似优先级别的多个内容。应该理解,发送和接收队列的数量不需要相同。在一个示例性实现中,流控制代理214可以实现许多发送队列,以有助于接收网络元件所允许的精确的流控制;而只实现两个接收缓冲区——一个用于高优先级的流量,另一个用于低优先级的流量。即,发送队列和接收队列的数量是彼此独立的。
如将在后面更充分地展开说明的,如果流控制代理214接收了指示优先级别为四(4)的控制消息,则与处于或低于优先级别四(4)的优先级别相关联的条目404中的内容的发送将被中断,而与高于四(4)的优先级别——即优先级别五(5)及更高——相关联的条目406中的内容的发送可以继续。
图5是适合于根据本发明的教导使用的示例性管理数据结构500的图示说明。更具体地,图5图示说明了由网络接口使用的示例性管理数据结构500,该网络接口用多个设备,即在多个点对点以太网通信链路上,实现了基于优先级的流控制。如图所示,示例性管理数据结构500至少包括目的地标识字段502、流控制优先级字段504和与活动(active)点对点通信链路的数量相关联的许多条目506。本领域的技术人员应该理解,这种数据结构500也可以在单个流控制代理214支持多个通信端口(即,用多达相同数量的活动点对点通信链路)的网络元件(集线器、交换机、路由器等)中实现。应该理解,在这种网络设备的每一个端口都具有专用流控制代理214的情况下(例如在专用MAC 216内),可以不需要这种数据结构。
这里所使用的目的地标识字段被用于唯一地识别通信链路和/或通过该通信链路耦合的远程网络元件。在这个方面,它可以是硬编码的端口值,用网络元件标识来动态更新,等等。流控制优先级字段504被用于存储与特定通信链路相关联的当前流控制优先级别。如图所示,条目506中的某些条目指示流控制优先级别。根据本发明的一个示例性实现,如描述过的那样,流控制代理214与依赖于传统Xon/Xoff流控制方案的传统网络接口是兼容的。
参照图6,图示说明了示例性的控制消息数据结构.根据图6的图示示例,控制消息数据报600被描述为包括管理部分602,管理部分602包括下列字段的至少一个子集:数据报源信息字段604、目的地信息字段606、类型/长度字段608和流控制优先级别字段610.这里所使用的管理信息602可以包含在数据报的头部、尾部或其它子集中.
源信息字段604指示数据报的源,而目的地信息指示数据报的最终目的地。类型/长度字段608指示数据报是控制消息类型,并提供关于数据报大小的表示。根据本发明的教导,优先级别字段610指示基于每个链路实现的流控制优先级规定。根据某些实现,控制消息600是基于每个链路有效的,在这个方面,流控制优先级别610仅指示该链路的流控制规定。可以想到可替换的实施例,其中,在通信地将内容源102和内容目的地104相耦合的多个点对点链路上使用优先级别信息。本领域的技术人员应该理解,根据本发明的基于优先级的流控制的一个或多个实现,控制消息600可以被用于允许给定优先级别的通信、禁止给定优先级别的通信和/或恢复给定优先级别通信的禁止(即,当使用定时器机制来自动允许先前被禁止的优先级别时)。
示例性操作和实现
上面已经介绍了本发明的操作环境和体系结构方面的元件,现在将注意力转向图7和图8,其中,更详细地给出了基于优先级的流控制机制的示例性实现。为了便于说明而不是限制,在适当的时候将继续参照图1到图6来展开说明图7和图8的方法。但是应该理解,图7和图8的教导也可以在可替换的网络体系结构/配置中实现,而不会脱离本发明的精神和范围。
图7是根据本发明的一个方面,实现流控制的示例性方法的流程图。根据图7的图示示例性实现,方法700从方框702开始,即识别网络接口的接收容量/能力。根据本发明的教导,流控制代理214扫描多个接收缓冲区302、304和306中的每一个,以判断缓冲区中的内容是否已经达到/超过了阈值308,如方框704所示。如上面所介绍的,缓冲区302、304、306中的每一个都与不同的内容优先级别相关联。
在方框704中,如果缓冲区负载没有超过阈值308,则网络接口允许从远程网络设备继续接收内容,同时流控制代理214继续监视与每一个优先级别相关联的接收容量,直到达到了一个缓冲区中的阈值。
如果达到了缓冲区的阈值,则过程继续到方框708,在这里,流控制代理214识别过满的优先级别。在这个方面,流控制代理214识别接收缓冲区302、304、306中的哪一个已经达到了阈值308,并产生指示优先级别610的控制消息600,高于或低于优先级别610是过满的,如在方框710中所示。根据一个实现,优先级别指示下述级别,流控制代理214将中断处于或低于所述级别的发送。在可替换的实现中,控制消息600的字段610中所指示的流控制优先级别可以指示一个内容优先级别,高于该级别是过满的,中断处于或高于控制消息600中所指示的级别的内容的发送。
在方框712中,流控制代理214将控制消息600发出到其它网络设备。更具体地说,流控制代理214将所产生的指示流控制优先级别610的控制消息600发送到通过点对点以太网通信链路被耦合的网络元件。根据一个示例性实现,一旦控制消息600已被发出,流控制代理214就监视与所产生的控制消息600中指示的优先级别相关联的缓冲区的容量,并在与该优先级别相关联的缓冲区变得可用(即,下降到低于阈值308)时发出修改了的控制命令,如在方框714中所示。然后过程继续到方框706。
转到图8,给出了根据本发明的一个方面,抑制以太网流量的一个子集的示例性方法的流程图。根据图8的图示示例性实现,过程从方框802开始,其中,网络接口从通过点对点以太网通信链路(例如106)被耦合的远程网络元件接收控制消息600。根据一个示例性实现,控制消息600被路由到接收网络接口的媒体访问控制器206。根据本发明的教导,在网络接口内实现的流控制代理214判断控制消息600是否包括流控制优先级信息,如方框804所示。
如果流控制代理214在接收到的控制消息600中没有识别到优先级别字段610,则过程继续到方框806,在这里,如果必要,流控制代理214按照802.3x的传统以太网流控制机制来抑制发送缓冲区400内的所有内容在点对点链路上的发送。
但是,如果流控制代理214在接收到的控制消息600中识别到优先级别610,则流控制代理214按照本发明的基于优先级的流控制特征,抑制发送缓冲区400内全部内容的适当子集的发送,如方框808所示。如上面所描述的,如果流控制代理214接收到包含优先级别字段610的控制消息600——该优先级别字段610设有优先级别四(4)及更低是过满的表示,则流控制代理214只授权由MAC 206继续发送缓冲区400的内容406,该内容代表了所具有的优先级别高于过满的优先级别的那些内容。
可替换的实施例
图9是包含多个可执行指令的示例性存储介质的方框图,这些指令被执行时,会使访问的机器实现本发明创新的基于优先级的流控制机制的一个或多个方面。在这个方面,根据本发明的可替换实施例,存储介质900包括用于实现具有基于优先级的流控制特征的增强网络接口120的内容。本发明的可升级的网络接口200。
在上面的描述中,为了说明的目的,已经给出了大量的特定细节以提供对本发明的完整理解。但是,本发明可以不用这些特定细节中的某些而实现,这对于本领域的技术人员来说是很清楚的。在其它情况下,以方框图的形式示出了公知的结构和设备。
本发明包括多个步骤。本发明的步骤可以通过诸如在图1到图5中示出的硬件组件来实现,或者可以被包含在机器可执行指令中,这些指令可以被用于使编程有这些指令的通用或专用处理器或者逻辑电路执行所述步骤。或者,可以由硬件和软件的组合来执行这些步骤。此外,虽然已经在网络接口设备的上下文中描述了本发明,但是本领域的技术人员应该了解,这种功能可以包含在诸如集成在计算设备内的大量可替换实施例的任何一个中,并且可以容易地适用于无线以太网实现以及这里所描述的有线环境。
本发明可以被提供为计算机程序产品,其可以包括机器可读介质,该介质在其上存储有指令,该指令可以被用于对计算机(或其它电子设备)进行编程以执行根据本发明的过程。机器可读介质可以包括但不限于软盘、光盘、CD-ROM,以及磁光盘、ROM、RAM、EPROM、EEPROM、磁卡或光卡、闪存或其它类型的适合于存储电子指令的介质/机器可读介质。此外,本发明还可以作为计算机程序产品被下载,其中,可以通过通信链路(例如调制解调器或网络连接),以包含在载波或其它传播介质中的数据信号的方式,将所述程序从远程计算机传送到发请求的计算机。
许多方法都是以它们最基本的形式描述的,但是,可以从任何一种方法中添加或删除步骤,并且可以从所描述的任何消息中添加或去除信息,而不脱离本发明的基本范围.例如,在一个实施例中,使用了利用不同阈值设置点的单个接收缓冲区,其会有效地区分优先权流控制的不同级别.作为一个例子,如果该单个队列的50%是满的,则发出值为4(中途点(half way point),即高和低流量)的流控制消息;如果75%是满的,则发送值为2的消息,等等。本领域的技术人员应很清楚,可以做出很多进一步的修改和改装。所提供的具体实施例不是用来限制本发明,而是用来说明本发明。本发明的范围并非要由上面提供的特定示例来确定,而是仅由所附权利要求来确定。
Claims (33)
1.一种基于优先级的流控制方法,包括:
通过扫描多个接收缓冲区以确定所述多个接收缓冲区中的内容是否已经达到或超过预定阈值,来识别网络设备的与以太网流量的一个或多个优先级别相关联的接收能力;
如果所述多个接收缓冲区中的内容已经达到或超过所述预定阈值,则识别过满的流控制优先级别,其中流控制优先级别指示识别出的优先级别,所述网络设备有能力接收高于或低于该优先级别的以太网流量;以及
产生包括所述流控制优先级别的控制消息,所述流控制优先级别用于导致抑制来自接收到所述控制消息的网络设备的以太网流量。
2.根据权利要求1所述的方法,还包括:
将所产生的控制消息发送到被通信地耦合的网络设备,其中,一接收到所产生的控制消息,所述被通信地耦合的网络设备就根据接收到的控制消息而中断以太网流量的一个子集。
3.根据权利要求1所述的方法,其中,识别包括:
确定多个接收缓冲区中每一个的可用缓冲容量,所述多个接收缓冲区与同等数量的多个以太网优先级别相关联。
4.根据权利要求3所述的方法,其中,与特定以太网优先级别相关联的可用缓冲容量指示接收缓冲区有可用缓冲容量以接收该优先级别额外的以太网流量的能力。
5.根据权利要求3所述的方法,其中,每一个优先级别的接收缓冲区由一个或多个存储器设备组成。
6.根据权利要求3所述的方法,其中,与所述优先级别中的每一个相关联的所述多个接收缓冲区包括在公共物理缓冲区内实现的虚拟缓冲区。
7.根据权利要求3所述的方法,其中,所产生的控制消息包括对优先级别的指示,接收缓冲区有可用容量用于接收比所述优先级别高的相关联优先级别的以太网流量。
8.根据权利要求7所述的方法,其中,接收网络设备在下述以太网流量的发送中启动暂停,该以太网流量所具有的优先级别低于接收到的控制消息中所表示的优先级别。
9.根据权利要求1所述的方法,其中,产生控制消息包括:
产生包括优先级字段的以太网控制分组,所述优先级字段指示所述流控制优先级别。
10.根据权利要求9所述的方法,其中,所述优先级字段被包括在所述以太网控制分组的头部部分中。
11.根据权利要求1所述的方法,还包括:
接收所述以太网流量;
识别与接收到的以太网流量的每一个分组相关联的优先级别;以及
至少部分地基于识别出的与所述以太网分组相关联的优先级别,将每一个接收到的分组转发到接收缓冲区。
12.根据权利要求11所述的方法,还包括:
监视与所述以太网流量的每一个优先级别相关联的所述多个接收缓冲区的接收能力;以及
如果必要,根据识别出的与一个或多个优先级别相关联的接收能力,发出控制消息以抑制以太网流量的至少一个子集的发送。
13.根据权利要求12所述的方法,其中,抑制以太网流量的一个子集的发送包括:将以太网流量的所述子集的发送暂时中断,中断一段设定的时间或直到接收到指示对以太网流量的所述子集的发送重新开始的另一个控制消息为止。
14.一种基于优先级的流控制方法,包括:
接收包括流控制优先级别的控制消息,所述流控制优先级别用于导致抑制来自接收到所述控制消息的网络设备的以太网流量;以及
抑制将所述以太网流量的具有接收到的控制消息中所指示的流控制优先级别的子集向已发送了所述控制消息的网络设备的发送,该已发送了所述控制消息的网络设备有能力接收高于或低于所述流控制优先级别的以太网流量,
其中所述流控制优先级别是在通过扫描多个接收缓冲区而确定所述多个接收缓冲区中的内容已经达到或超过预定阈值的情况下被识别为过满的。
15.根据权利要求14所述的方法,其中,所述流控制优先级别指示与以太网流量的所述子集相关联的优先级别,高于该优先级别时该已发送了所述控制消息的网络设备具有接收能力。
16.根据权利要求14所述的方法,其中,所述控制消息包括以太网控制消息。
17.根据权利要求16所述的方法,还包括:
分析接收到的以太网控制消息的头部,以识别所述流控制优先级别。
18.根据权利要求14所述的方法,其中,抑制发送包括:
中断对以太网流量的一个子集的发送,该子集所具有的优先级别低于接收到的控制消息中所指示的流控制优先级别,直到随后接收到指示该已发送了所述控制消息的网络设备能够接收以太网流量的所述子集的控制消息为止。
19.根据权利要求14所述的方法,还包括:
从主机网络设备接收内容,用于向通过以太网被通信地耦合的另一个网络设备发送;以及
至少部分地基于这种内容的源,给接收到的内容指定优先级别。
20.根据权利要求14所述的方法,还包括:
从在主机网络设备上执行的一个或多个源应用程序接收内容,所述内容用与其源应用程序相关联的优先级别来标记;以及
至少部分地基于所述内容的优先级别以及接收到的抑制对这种以太网流量的一个子集的发送的控制消息,有选择地将接收到的内容发送给通过以太网被通信地耦合的另一个网络设备。
21.一种基于优先级的流控制装置,包括:
用于通过扫描多个接收缓冲区以确定所述多个接收缓冲区中的内容是否已经达到或超过预定阈值,来识别网络设备的与以太网流量的一个或多个优先级别相关联的接收能力的模块;
用于如果所述多个接收缓冲区中的内容已经达到或超过所述预定阈值,则识别过满的流控制优先级别的模块,其中流控制优先级别指示识别出的优先级别,所述网络设备有能力接收高于或低于该优先级别的以太网流量;以及
用于产生包括所述流控制优先级别的控制消息的模块,所述流控制优先级别用于导致抑制来自接收到所述控制消息的网络设备的以太网流量.
22.根据权利要求21所述的装置,还包括:
用于将所产生的控制消息发送到被通信地耦合的网络设备的模块,其中,一接收到所产生的控制消息,所述被通信地耦合的网络设备就根据接收到的控制消息而中断以太网流量的一个子集。
23.根据权利要求21所述的装置,其中,用于识别的模块包括:
用于确定多个接收缓冲区中每一个的可用缓冲容量的模块,所述多个接收缓冲区与同等数量的多个以太网优先级别相关联。
24.根据权利要求23所述的装置,其中,与特定以太网优先级别相关联的可用缓冲容量指示接收缓冲区有可用缓冲容量以接收该优先级别额外的以太网流量的能力。
25.根据权利要求23所述的装置,其中,每一个优先级别的接收缓冲区由一个或多个存储器设备组成。
26.根据权利要求23所述的装置,其中,与所述优先级别中的每一个相关联的所述多个接收缓冲区包括在公共物理缓冲区内实现的虚拟缓冲区。
27.根据权利要求23所述的装置,其中,所产生的控制消息包括对优先级别的指示,接收缓冲区有可用容量用于接收比所述优先级别高的相关联优先级别的以太网流量。
28.根据权利要求27所述的装置,其中,接收网络设备在下述以太网流量的发送中启动暂停,该以太网流量所具有的优先级别低于接收到的控制消息中所表示的优先级别。
29.根据权利要求21所述的装置,其中,用于产生控制消息的模块包括:
用于产生包括优先级字段的以太网控制分组的模块,所述优先级字段指示所述流控制优先级别。
30.根据权利要求29所述的装置,其中,所述优先级字段被包括在所述以太网控制分组的头部部分中。
31.根据权利要求21所述的装置,还包括:
用于接收所述以太网流量的模块;
用于识别与接收到的以太网流量的每一个分组相关联的优先级别的模块;以及
用于至少部分地基于识别出的与所述以太网分组相关联的优先级别,将每一个接收到的分组转发到接收缓冲区的模块。
32.根据权利要求31所述的装置,还包括:
用于监视与所述以太网流量的每一个优先级别相关联的所述多个接收缓冲区的接收能力的模块;以及
用于如果必要,根据识别出的与一个或多个优先级别相关联的接收能力,发出控制消息以抑制以太网流量的至少一个子集的发送的模块。
33.根据权利要求32所述的装置,其中,用于抑制以太网流量的一个子集的发送的模块包括:用于将以太网流量的所述子集的发送暂时中断的模块,中断一段设定的时间或直到接收到指示对以太网流量的所述子集的发送重新开始的另一个控制消息为止。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/037,669 US20030123393A1 (en) | 2002-01-03 | 2002-01-03 | Method and apparatus for priority based flow control in an ethernet architecture |
US10/037,669 | 2002-01-03 | ||
PCT/US2002/041566 WO2003058896A1 (en) | 2002-01-03 | 2002-12-26 | A method and apparatus for priority based flow control in an ethernet architecture |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2009101412417A Division CN101572672B (zh) | 2002-01-03 | 2002-12-26 | 以太网体系结构中基于优先级的流控制方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1633786A CN1633786A (zh) | 2005-06-29 |
CN1633786B true CN1633786B (zh) | 2010-05-12 |
Family
ID=21895636
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN028132580A Expired - Fee Related CN1633786B (zh) | 2002-01-03 | 2002-12-26 | 以太网体系结构中基于优先级的流控制方法和装置 |
CN2009101412417A Expired - Fee Related CN101572672B (zh) | 2002-01-03 | 2002-12-26 | 以太网体系结构中基于优先级的流控制方法和装置 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2009101412417A Expired - Fee Related CN101572672B (zh) | 2002-01-03 | 2002-12-26 | 以太网体系结构中基于优先级的流控制方法和装置 |
Country Status (11)
Country | Link |
---|---|
US (1) | US20030123393A1 (zh) |
EP (1) | EP1393512B1 (zh) |
KR (1) | KR100674727B1 (zh) |
CN (2) | CN1633786B (zh) |
AT (1) | ATE336842T1 (zh) |
AU (1) | AU2002359871A1 (zh) |
CA (1) | CA2450823A1 (zh) |
DE (1) | DE60213974T2 (zh) |
HK (1) | HK1060673A1 (zh) |
TW (1) | TWI264893B (zh) |
WO (1) | WO2003058896A1 (zh) |
Families Citing this family (123)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7054940B2 (en) * | 2002-01-25 | 2006-05-30 | Thomson Licensing | Adaptive cost of service for communication network based on level of network congestion |
US7088675B1 (en) * | 2002-03-08 | 2006-08-08 | Mindspeed Technologies, Inc. | Wrap path for communication ring access control |
US7151742B1 (en) * | 2002-03-08 | 2006-12-19 | Mindspeed Technologies, Inc. | Flow control for communication ring access control |
US20040057433A1 (en) * | 2002-09-24 | 2004-03-25 | Daniel Wayne T. | Methods and systems for prioritizing packets of data in a communications system |
US7818447B1 (en) * | 2003-03-28 | 2010-10-19 | Emc Corporation | End-to-end broadcast based flow control in a switch fabric |
US20040199604A1 (en) * | 2003-04-04 | 2004-10-07 | Dobbins Kurt A. | Method and system for tagging content for preferred transport |
US8321584B2 (en) * | 2003-04-04 | 2012-11-27 | Ellacoya Networks, Inc. | Method and apparatus for offering preferred transport within a broadband subscriber network |
US7743166B2 (en) * | 2003-04-04 | 2010-06-22 | Ellacoya Networks, Inc. | Scaleable flow-based application and subscriber traffic control |
US20040199472A1 (en) * | 2003-04-04 | 2004-10-07 | Dobbins Kurt A. | Method and apparatus for billing over a network |
US20040196842A1 (en) * | 2003-04-04 | 2004-10-07 | Dobbins Kurt A. | Method and system for according preferred transport based on node identification |
US7561590B1 (en) * | 2003-05-05 | 2009-07-14 | Marvell International Ltd. | Network switch having virtual input queues for flow control |
DE112004001256T5 (de) * | 2003-07-07 | 2006-05-18 | Yazaki Corp. | Übertragungskapazitätszuteilungsverfahren, Kommunikationsnetzwerk und Netzwerkressourceverwaltungsvorrichtung |
US20050063379A1 (en) * | 2003-09-18 | 2005-03-24 | Samsung Electronics Co., Ltd | Apparatus and method for traffic profiling in a massively parallel router |
US7761589B1 (en) | 2003-10-23 | 2010-07-20 | Foundry Networks, Inc. | Flow control for multi-hop networks |
US7639608B1 (en) * | 2003-10-23 | 2009-12-29 | Foundry Networks, Inc. | Priority aware MAC flow control |
US20050094558A1 (en) * | 2003-11-05 | 2005-05-05 | Interdigital Technology Corporation | Wireless local area network (WLAN) methods and components that utilize traffic prediction |
US20050114498A1 (en) * | 2003-11-06 | 2005-05-26 | International Business Machines Corporation | Method and apparatus for managing data transfer in a data processing system |
US7593329B2 (en) * | 2004-10-29 | 2009-09-22 | Broadcom Corporation | Service aware flow control |
US7948880B2 (en) * | 2004-10-29 | 2011-05-24 | Broadcom Corporation | Adaptive dynamic thresholding mechanism for link level flow control scheme |
US7599289B2 (en) * | 2005-05-13 | 2009-10-06 | Lockheed Martin Corporation | Electronic communication control |
US20060256770A1 (en) * | 2005-05-13 | 2006-11-16 | Lockheed Martin Corporation | Interface for configuring ad hoc network packet control |
US20060256814A1 (en) * | 2005-05-13 | 2006-11-16 | Lockheed Martin Corporation | Ad hoc computer network |
US20060256717A1 (en) * | 2005-05-13 | 2006-11-16 | Lockheed Martin Corporation | Electronic packet control system |
US8175112B1 (en) * | 2005-06-07 | 2012-05-08 | Sprint Communications Company L.P. | Monitoring and control of an Ethernet link using pseudo-wire interfaces |
KR101119362B1 (ko) | 2005-08-18 | 2012-03-06 | 삼성전자주식회사 | 레지덴셜 이더넷 시스템에서 시간 의존적인 스트림에 대한허가 방법 |
US7706277B2 (en) * | 2005-11-18 | 2010-04-27 | Intel Corporation | Selective flow control |
US8045473B2 (en) * | 2005-11-28 | 2011-10-25 | Cisco Technology, Inc. | Tailored relief for congestion on application servers for real time communications |
US9049158B2 (en) * | 2005-11-29 | 2015-06-02 | Alcatel Lucent | Communication session admission control systems and methods |
CN100407842C (zh) * | 2006-02-13 | 2008-07-30 | 华为技术有限公司 | 一种资源监控的方法 |
US8139552B1 (en) * | 2006-07-07 | 2012-03-20 | Rockstar Bidco, LP | Access category enforcement in wireless local area networks |
US8018843B2 (en) * | 2006-09-19 | 2011-09-13 | Futurewei Technologies, Inc. | Faults propagation and protection for connection oriented data paths in packet networks |
US8867338B2 (en) | 2006-09-19 | 2014-10-21 | Futurewei Technologies, Inc. | Faults Propagation and protection for connection oriented data paths in packet networks |
US8520517B2 (en) | 2007-02-21 | 2013-08-27 | Broadcom Corporation | Switch fabric end-to-end congestion avoidance mechanism |
JP4421625B2 (ja) * | 2007-03-20 | 2010-02-24 | 富士通株式会社 | フロー制御方法および受信装置 |
US8019910B2 (en) * | 2007-07-31 | 2011-09-13 | Hewlett-Packard Development Company, L.P. | Transaction flow control in PCI express fabric |
US8589534B2 (en) * | 2007-09-13 | 2013-11-19 | Ricoh Company, Ltd. | Device information management apparatus, device information management method, and storage medium which operates during a failure |
US8305896B2 (en) * | 2007-10-31 | 2012-11-06 | Cisco Technology, Inc. | Selective performance enhancement of traffic flows |
US20090154354A1 (en) * | 2007-12-14 | 2009-06-18 | Broadcom Corporation | Proxy reaction engine in a congestion management system |
JP2009194488A (ja) * | 2008-02-13 | 2009-08-27 | Nec Corp | 通信装置及びそれに用いるフロー制御方法並びにそのプログラム |
US20090310489A1 (en) * | 2008-06-17 | 2009-12-17 | Bennett Andrew M | Methods and apparatus using a serial data interface to transmit/receive data corresponding to each of a plurality of logical data streams |
US8665886B2 (en) | 2009-03-26 | 2014-03-04 | Brocade Communications Systems, Inc. | Redundant host connection in a routed network |
US8369335B2 (en) | 2010-03-24 | 2013-02-05 | Brocade Communications Systems, Inc. | Method and system for extending routing domain to non-routing end stations |
US9231890B2 (en) | 2010-06-08 | 2016-01-05 | Brocade Communications Systems, Inc. | Traffic management for virtual cluster switching |
US9461840B2 (en) | 2010-06-02 | 2016-10-04 | Brocade Communications Systems, Inc. | Port profile management for virtual cluster switching |
US8867552B2 (en) | 2010-05-03 | 2014-10-21 | Brocade Communications Systems, Inc. | Virtual cluster switching |
US8989186B2 (en) | 2010-06-08 | 2015-03-24 | Brocade Communication Systems, Inc. | Virtual port grouping for virtual cluster switching |
US9716672B2 (en) | 2010-05-28 | 2017-07-25 | Brocade Communications Systems, Inc. | Distributed configuration management for virtual cluster switching |
US9270486B2 (en) | 2010-06-07 | 2016-02-23 | Brocade Communications Systems, Inc. | Name services for virtual cluster switching |
US9001824B2 (en) | 2010-05-18 | 2015-04-07 | Brocade Communication Systems, Inc. | Fabric formation for virtual cluster switching |
US9769016B2 (en) | 2010-06-07 | 2017-09-19 | Brocade Communications Systems, Inc. | Advanced link tracking for virtual cluster switching |
US8861364B2 (en) * | 2010-05-16 | 2014-10-14 | Altera Corporation | Method and apparatus for implementing non-blocking priority based flow control |
US8885488B2 (en) | 2010-06-02 | 2014-11-11 | Brocade Communication Systems, Inc. | Reachability detection in trill networks |
US9628293B2 (en) | 2010-06-08 | 2017-04-18 | Brocade Communications Systems, Inc. | Network layer multicasting in trill networks |
US9246703B2 (en) | 2010-06-08 | 2016-01-26 | Brocade Communications Systems, Inc. | Remote port mirroring |
US9608833B2 (en) | 2010-06-08 | 2017-03-28 | Brocade Communications Systems, Inc. | Supporting multiple multicast trees in trill networks |
US8446914B2 (en) | 2010-06-08 | 2013-05-21 | Brocade Communications Systems, Inc. | Method and system for link aggregation across multiple switches |
US9806906B2 (en) | 2010-06-08 | 2017-10-31 | Brocade Communications Systems, Inc. | Flooding packets on a per-virtual-network basis |
US20110321052A1 (en) * | 2010-06-23 | 2011-12-29 | International Business Machines Corporation | Mutli-priority command processing among microcontrollers |
US9807031B2 (en) | 2010-07-16 | 2017-10-31 | Brocade Communications Systems, Inc. | System and method for network configuration |
KR20120037785A (ko) * | 2010-10-12 | 2012-04-20 | 삼성전자주식회사 | 부하 균형을 유지하는 시스템 온 칩 및 그것의 부하 균형 유지 방법 |
CN102143053B (zh) * | 2010-11-12 | 2014-08-20 | 华为技术有限公司 | 传输数据的方法、装置和系统 |
US9141447B2 (en) * | 2010-12-15 | 2015-09-22 | Microsoft Technology Licensing, Llc | Conditional deferred queuing |
US9270572B2 (en) | 2011-05-02 | 2016-02-23 | Brocade Communications Systems Inc. | Layer-3 support in TRILL networks |
US8873392B1 (en) | 2011-06-09 | 2014-10-28 | Marvell International Ltd. | Method and apparatus for controlling the flow of packets in a data network |
US8948056B2 (en) | 2011-06-28 | 2015-02-03 | Brocade Communication Systems, Inc. | Spanning-tree based loop detection for an ethernet fabric switch |
US9401861B2 (en) | 2011-06-28 | 2016-07-26 | Brocade Communications Systems, Inc. | Scalable MAC address distribution in an Ethernet fabric switch |
US8879549B2 (en) | 2011-06-28 | 2014-11-04 | Brocade Communications Systems, Inc. | Clearing forwarding entries dynamically and ensuring consistency of tables across ethernet fabric switch |
US9407533B2 (en) | 2011-06-28 | 2016-08-02 | Brocade Communications Systems, Inc. | Multicast in a trill network |
US9007958B2 (en) | 2011-06-29 | 2015-04-14 | Brocade Communication Systems, Inc. | External loop detection for an ethernet fabric switch |
US8885641B2 (en) | 2011-06-30 | 2014-11-11 | Brocade Communication Systems, Inc. | Efficient trill forwarding |
US9736085B2 (en) * | 2011-08-29 | 2017-08-15 | Brocade Communications Systems, Inc. | End-to end lossless Ethernet in Ethernet fabric |
US9699117B2 (en) | 2011-11-08 | 2017-07-04 | Brocade Communications Systems, Inc. | Integrated fibre channel support in an ethernet fabric switch |
US9450870B2 (en) | 2011-11-10 | 2016-09-20 | Brocade Communications Systems, Inc. | System and method for flow management in software-defined networks |
US8995272B2 (en) | 2012-01-26 | 2015-03-31 | Brocade Communication Systems, Inc. | Link aggregation in software-defined networks |
US9742693B2 (en) | 2012-02-27 | 2017-08-22 | Brocade Communications Systems, Inc. | Dynamic service insertion in a fabric switch |
US8867360B2 (en) * | 2012-03-22 | 2014-10-21 | Avaya Inc. | Method and apparatus for lossless behavior for multiple ports sharing a buffer pool |
US9154416B2 (en) | 2012-03-22 | 2015-10-06 | Brocade Communications Systems, Inc. | Overlay tunnel in a fabric switch |
US9374301B2 (en) | 2012-05-18 | 2016-06-21 | Brocade Communications Systems, Inc. | Network feedback in software-defined networks |
US10277464B2 (en) | 2012-05-22 | 2019-04-30 | Arris Enterprises Llc | Client auto-configuration in a multi-switch link aggregation |
EP2853066B1 (en) | 2012-05-23 | 2017-02-22 | Brocade Communications Systems, Inc. | Layer-3 overlay gateways |
US9602430B2 (en) | 2012-08-21 | 2017-03-21 | Brocade Communications Systems, Inc. | Global VLANs for fabric switches |
US9401872B2 (en) | 2012-11-16 | 2016-07-26 | Brocade Communications Systems, Inc. | Virtual link aggregations across multiple fabric switches |
US9548926B2 (en) | 2013-01-11 | 2017-01-17 | Brocade Communications Systems, Inc. | Multicast traffic load balancing over virtual link aggregation |
US9413691B2 (en) | 2013-01-11 | 2016-08-09 | Brocade Communications Systems, Inc. | MAC address synchronization in a fabric switch |
US9350680B2 (en) | 2013-01-11 | 2016-05-24 | Brocade Communications Systems, Inc. | Protection switching over a virtual link aggregation |
US9565113B2 (en) | 2013-01-15 | 2017-02-07 | Brocade Communications Systems, Inc. | Adaptive link aggregation and virtual link aggregation |
US9565099B2 (en) | 2013-03-01 | 2017-02-07 | Brocade Communications Systems, Inc. | Spanning tree in fabric switches |
US9401818B2 (en) | 2013-03-15 | 2016-07-26 | Brocade Communications Systems, Inc. | Scalable gateways for a fabric switch |
US9565028B2 (en) | 2013-06-10 | 2017-02-07 | Brocade Communications Systems, Inc. | Ingress switch multicast distribution in a fabric switch |
US9699001B2 (en) | 2013-06-10 | 2017-07-04 | Brocade Communications Systems, Inc. | Scalable and segregated network virtualization |
US9265090B2 (en) * | 2013-06-14 | 2016-02-16 | Netgear, Inc. | Alignment of packets for implementing coexistence of multiple homogeneous radios |
US9806949B2 (en) | 2013-09-06 | 2017-10-31 | Brocade Communications Systems, Inc. | Transparent interconnection of Ethernet fabric switches |
US9912612B2 (en) | 2013-10-28 | 2018-03-06 | Brocade Communications Systems LLC | Extended ethernet fabric switches |
US9548873B2 (en) | 2014-02-10 | 2017-01-17 | Brocade Communications Systems, Inc. | Virtual extensible LAN tunnel keepalives |
US10581758B2 (en) | 2014-03-19 | 2020-03-03 | Avago Technologies International Sales Pte. Limited | Distributed hot standby links for vLAG |
US10476698B2 (en) | 2014-03-20 | 2019-11-12 | Avago Technologies International Sales Pte. Limited | Redundent virtual link aggregation group |
US10063473B2 (en) | 2014-04-30 | 2018-08-28 | Brocade Communications Systems LLC | Method and system for facilitating switch virtualization in a network of interconnected switches |
US9800471B2 (en) | 2014-05-13 | 2017-10-24 | Brocade Communications Systems, Inc. | Network extension groups of global VLANs in a fabric switch |
US10616108B2 (en) | 2014-07-29 | 2020-04-07 | Avago Technologies International Sales Pte. Limited | Scalable MAC address virtualization |
US9544219B2 (en) | 2014-07-31 | 2017-01-10 | Brocade Communications Systems, Inc. | Global VLAN services |
US9807007B2 (en) | 2014-08-11 | 2017-10-31 | Brocade Communications Systems, Inc. | Progressive MAC address learning |
US9524173B2 (en) | 2014-10-09 | 2016-12-20 | Brocade Communications Systems, Inc. | Fast reboot for a switch |
US9699029B2 (en) | 2014-10-10 | 2017-07-04 | Brocade Communications Systems, Inc. | Distributed configuration management in a switch group |
US9626255B2 (en) | 2014-12-31 | 2017-04-18 | Brocade Communications Systems, Inc. | Online restoration of a switch snapshot |
US9628407B2 (en) | 2014-12-31 | 2017-04-18 | Brocade Communications Systems, Inc. | Multiple software versions in a switch group |
US9942097B2 (en) | 2015-01-05 | 2018-04-10 | Brocade Communications Systems LLC | Power management in a network of interconnected switches |
US10003552B2 (en) | 2015-01-05 | 2018-06-19 | Brocade Communications Systems, Llc. | Distributed bidirectional forwarding detection protocol (D-BFD) for cluster of interconnected switches |
CN105828421A (zh) * | 2015-01-08 | 2016-08-03 | 中兴通讯股份有限公司 | 一种终端及终端省电的方法 |
US9807005B2 (en) | 2015-03-17 | 2017-10-31 | Brocade Communications Systems, Inc. | Multi-fabric manager |
US10038592B2 (en) | 2015-03-17 | 2018-07-31 | Brocade Communications Systems LLC | Identifier assignment to a new switch in a switch group |
US10579406B2 (en) | 2015-04-08 | 2020-03-03 | Avago Technologies International Sales Pte. Limited | Dynamic orchestration of overlay tunnels |
US10439929B2 (en) | 2015-07-31 | 2019-10-08 | Avago Technologies International Sales Pte. Limited | Graceful recovery of a multicast-enabled switch |
US10171303B2 (en) | 2015-09-16 | 2019-01-01 | Avago Technologies International Sales Pte. Limited | IP-based interconnection of switches with a logical chassis |
US9912614B2 (en) | 2015-12-07 | 2018-03-06 | Brocade Communications Systems LLC | Interconnection of switches based on hierarchical overlay tunneling |
US10237090B2 (en) | 2016-10-28 | 2019-03-19 | Avago Technologies International Sales Pte. Limited | Rule-based network identifier mapping |
CN108965157B (zh) * | 2017-05-19 | 2020-08-07 | 华为技术有限公司 | 数据传输方法、装置、设备及系统 |
US10972396B2 (en) | 2017-09-29 | 2021-04-06 | Hewlett Packard Enterprise Development Lp | Mapping network frame flows to classes of service to minimize network frame flow disruption |
CN108124002A (zh) * | 2017-12-01 | 2018-06-05 | 北京明朝万达科技股份有限公司 | 一种数据发送方法及装置 |
CN111343240B (zh) * | 2020-02-12 | 2022-08-16 | 北京字节跳动网络技术有限公司 | 一种服务请求的处理方法、装置、电子设备及存储介质 |
US11770835B2 (en) * | 2020-02-28 | 2023-09-26 | Qualcomm Incorporated | Sidelink and uplink prioritized cancellation |
KR102371485B1 (ko) | 2020-07-15 | 2022-03-07 | 고려대학교 산학협력단 | 이더넷 기반 네트워크 내 트래픽 제어 방법 |
CN112217738B (zh) * | 2020-11-04 | 2023-08-25 | 成都中科大旗软件股份有限公司 | 一种文旅数据服务的流控方法、系统、存储介质及终端 |
CN112398748A (zh) * | 2021-01-21 | 2021-02-23 | 全时云商务服务股份有限公司 | 基于mq的智能限流方法、装置及计算机可读介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5983278A (en) * | 1996-04-19 | 1999-11-09 | Lucent Technologies Inc. | Low-loss, fair bandwidth allocation flow control in a packet switch |
DE10123821A1 (de) * | 2000-06-02 | 2001-12-20 | Ibm | Geschaltete Ethernet-Netzwerke |
Family Cites Families (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5600364A (en) * | 1992-12-09 | 1997-02-04 | Discovery Communications, Inc. | Network controller for cable television delivery systems |
GB2277816B (en) * | 1993-05-04 | 1997-09-03 | Motorola Inc | Data communication system |
JP2888376B2 (ja) * | 1993-12-31 | 1999-05-10 | インターナシヨナル・ビジネス・マシーンズ・コーポレーシヨン | 複数トラヒック・クラス用の交換装置 |
EP0748087A1 (en) * | 1995-06-09 | 1996-12-11 | International Business Machines Corporation | Access control system for a shared buffer |
US6226266B1 (en) * | 1996-12-13 | 2001-05-01 | Cisco Technology, Inc. | End-to-end delay estimation in high speed communication networks |
US6169729B1 (en) * | 1997-04-08 | 2001-01-02 | Level One Communications, Inc. | 200 Mbps PHY/MAC apparatus and method |
US6154464A (en) * | 1997-05-09 | 2000-11-28 | Level One Communications, Inc. | Physical layer device having a media independent interface for connecting to either media access control entitices or other physical layer devices |
US6018515A (en) * | 1997-08-19 | 2000-01-25 | Ericsson Messaging Systems Inc. | Message buffering for prioritized message transmission and congestion management |
IL134615A (en) * | 1998-06-19 | 2004-03-28 | Juniper Networks Inc | Quality of service facility in a device for performing ip forwarding and atm switching |
US6970424B2 (en) * | 1998-11-10 | 2005-11-29 | Extreme Networks | Method and apparatus to minimize congestion in a packet switched network |
US6405258B1 (en) * | 1999-05-05 | 2002-06-11 | Advanced Micro Devices Inc. | Method and apparatus for controlling the flow of data frames through a network switch on a port-by-port basis |
US6859435B1 (en) * | 1999-10-13 | 2005-02-22 | Lucent Technologies Inc. | Prevention of deadlocks and livelocks in lossless, backpressured packet networks |
US6981054B1 (en) * | 2000-06-06 | 2005-12-27 | Advanced Micro Devices, Inc. | Flow control arrangement in a network switch based on priority traffic |
US6957269B2 (en) * | 2001-01-03 | 2005-10-18 | Advanced Micro Devices, Inc. | Method and apparatus for performing priority-based flow control |
US20020141427A1 (en) * | 2001-03-29 | 2002-10-03 | Mcalpine Gary L. | Method and apparatus for a traffic optimizing multi-stage switch fabric network |
ATE369479T1 (de) * | 2001-06-18 | 2007-08-15 | Exxonmobil Res & Eng Co | Vorrichtung und verfahren zum hydrothermischen bohren |
US7239636B2 (en) * | 2001-07-23 | 2007-07-03 | Broadcom Corporation | Multiple virtual channels for use in network devices |
-
2002
- 2002-01-03 US US10/037,669 patent/US20030123393A1/en not_active Abandoned
- 2002-12-26 CN CN028132580A patent/CN1633786B/zh not_active Expired - Fee Related
- 2002-12-26 DE DE60213974T patent/DE60213974T2/de not_active Expired - Lifetime
- 2002-12-26 CA CA002450823A patent/CA2450823A1/en not_active Abandoned
- 2002-12-26 EP EP02794437A patent/EP1393512B1/en not_active Expired - Lifetime
- 2002-12-26 AT AT02794437T patent/ATE336842T1/de not_active IP Right Cessation
- 2002-12-26 WO PCT/US2002/041566 patent/WO2003058896A1/en active IP Right Grant
- 2002-12-26 AU AU2002359871A patent/AU2002359871A1/en not_active Abandoned
- 2002-12-26 CN CN2009101412417A patent/CN101572672B/zh not_active Expired - Fee Related
- 2002-12-26 KR KR1020037017190A patent/KR100674727B1/ko not_active IP Right Cessation
-
2003
- 2003-01-02 TW TW092100021A patent/TWI264893B/zh not_active IP Right Cessation
-
2004
- 2004-05-21 HK HK04103635A patent/HK1060673A1/xx not_active IP Right Cessation
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5983278A (en) * | 1996-04-19 | 1999-11-09 | Lucent Technologies Inc. | Low-loss, fair bandwidth allocation flow control in a packet switch |
DE10123821A1 (de) * | 2000-06-02 | 2001-12-20 | Ibm | Geschaltete Ethernet-Netzwerke |
Non-Patent Citations (1)
Title |
---|
全文. |
Also Published As
Publication number | Publication date |
---|---|
AU2002359871A1 (en) | 2003-07-24 |
WO2003058896A1 (en) | 2003-07-17 |
TWI264893B (en) | 2006-10-21 |
CN101572672B (zh) | 2013-04-24 |
KR20040015766A (ko) | 2004-02-19 |
CN1633786A (zh) | 2005-06-29 |
ATE336842T1 (de) | 2006-09-15 |
CA2450823A1 (en) | 2003-07-17 |
EP1393512B1 (en) | 2006-08-16 |
DE60213974T2 (de) | 2007-08-30 |
CN101572672A (zh) | 2009-11-04 |
US20030123393A1 (en) | 2003-07-03 |
HK1060673A1 (en) | 2004-08-13 |
KR100674727B1 (ko) | 2007-01-25 |
DE60213974D1 (de) | 2006-09-28 |
TW200307424A (en) | 2003-12-01 |
EP1393512A1 (en) | 2004-03-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1633786B (zh) | 以太网体系结构中基于优先级的流控制方法和装置 | |
US10205667B2 (en) | Credit flow control for ethernet | |
CN104320820B (zh) | 在无线通信系统中的硬切换方法 | |
KR100735408B1 (ko) | 이더넷 기반의 네트워크에서 서비스 클래스별 트래픽의스위칭 제어 방법 및 그 스위칭 장치 | |
US7477601B1 (en) | Methods and apparatus for managing a flow of packets using change and reply signals | |
RU2491737C2 (ru) | Управление памятью для высокоскоростного управления доступом к среде | |
CN101616097B (zh) | 一种网络处理器输出端口队列的管理方法及系统 | |
EP1478137A1 (en) | Determination of a packet size in a packet communications system | |
US9699092B2 (en) | Systems and methods for dynamically adjusting QoS parameters | |
US7990857B2 (en) | Priority aware MAC flow control | |
EP3208977A1 (en) | Data forwarding method, device and system in software-defined networking | |
CN105591974B (zh) | 报文处理方法、装置及系统 | |
EP1411680A2 (en) | Metro-ethernet network system with selective upstream pause messaging | |
US20030115350A1 (en) | System and method for efficient handling of network data | |
US20050276252A1 (en) | Medium access control for wireless networks | |
CN103460751A (zh) | 协议层字段的向后兼容方案 | |
EP2140620B1 (en) | Communication apparatus, communication apparatus control method, and computer program for causing computer to execute the control method | |
CN104956637A (zh) | 在多个逻辑网络连接中优先化封装数据包的方法、装置以及系统 | |
WO2005096583A2 (en) | Packet relay apparatus with qos switch (on/off) | |
CN107770085B (zh) | 一种网络负载均衡方法、设备及系统 | |
ES2335880T3 (es) | Metodo para eliminar todos los segmentos correspondientes al mismo paquete en una memoria intermedia. | |
CN102119551B (zh) | 一种判断路径拥塞的方法、装置和系统 | |
EP1193938A1 (en) | Method and system for transmitting data | |
US8693319B2 (en) | Scheme for avoiding deadlock in multi-ring interconnect, with additional application to congestion control | |
US8553539B2 (en) | Method and system for packet traffic congestion management |
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: 20100512 Termination date: 20191226 |