CN107204931B - 通信装置和用于通信的方法 - Google Patents

通信装置和用于通信的方法 Download PDF

Info

Publication number
CN107204931B
CN107204931B CN201710137920.1A CN201710137920A CN107204931B CN 107204931 B CN107204931 B CN 107204931B CN 201710137920 A CN201710137920 A CN 201710137920A CN 107204931 B CN107204931 B CN 107204931B
Authority
CN
China
Prior art keywords
packet
queues
congestion
machine
data packets
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.)
Active
Application number
CN201710137920.1A
Other languages
English (en)
Other versions
CN107204931A (zh
Inventor
巴拉克·加夫尼
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.)
Mellanox Technologies Ltd
Original Assignee
Mellanox Technologies TLV Ltd
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 Mellanox Technologies TLV Ltd filed Critical Mellanox Technologies TLV Ltd
Publication of CN107204931A publication Critical patent/CN107204931A/zh
Application granted granted Critical
Publication of CN107204931B publication Critical patent/CN107204931B/zh
Active 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
    • H04L47/12Avoiding congestion; Recovering from congestion
    • 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/32Flow control; Congestion control by discarding or delaying data units, e.g. packets or frames
    • 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/31Flow control; Congestion control by tagging of packets, e.g. using discard eligibility [DE] bits
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/50Queue scheduling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/30Peripheral units, e.g. input or output ports
    • H04L49/3018Input queuing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/30Peripheral units, e.g. input or output ports
    • H04L49/3027Output queuing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/90Buffering arrangements
    • H04L49/9005Buffering arrangements using dynamic buffer space allocation

Landscapes

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

Abstract

本发明公开了拥塞控制措施的灵活应用。通信装置包括配置成连接到分组数据网络的多个接口和存储器,存储器耦合到接口并被配置为缓冲器以将通过入口接口接收的数据分组容纳在多个队列中同时等待经由出口接口到网络的传输。拥塞控制逻辑包括配置成响应于队列的状态而放弃缓冲器中的至少第一队列的数据分组的第一部分的分组丢弃机器和配置成响应于队列的状态而将拥塞通知应用于缓冲器中的至少第二队列的数据分组的第二部分的分组标记机器。机器控制电路被耦合以选择性地启用和禁用至少分组丢弃机器。

Description

通信装置和用于通信的方法
发明领域
本发明通常涉及分组通信网络,且特别地涉及用于在这样的网络中的拥塞的控制的方法和系统。
背景
当需要在网络中的链路或节点运载比它能够传输或转发的更多的数据业务时,网络拥塞出现,结果是它的服务质量恶化。拥塞的一般结果包括排队延迟、分组丢失和新连接的堵塞。现代分组网络使用拥塞控制(包括拥塞避免)技术,以便在灾难性的结果开始之前减轻拥塞。
很多拥塞避免技术在本领域中是已知的。例如在随机早期检测(RED,也被称为随机早期丢弃或随机早期放弃)中,网络节点例如交换机监控它们的平均队列大小并基于统计概率来丢弃分组:如果给定队列(或队列组)几乎是空的,则所有进入的分组被接受。当队列增长时,丢弃进入的分组的概率相应地增长,当缓冲器填充水平超过可适用的阈值时达到100%。加权RED(WRED)以类似的方式工作,除了不同的业务类被分配不同的拥塞避免阈值以外,使得对于给定队列长度,低优先级分组比高优先级分组具有更大的丢弃概率。对由统计概率确定的分组的部分操作的这种拥塞控制技术在本文被称为统计拥塞控制技术。
另一拥塞避免技术是显式拥塞通知(ECN),其为互联网协议(IP)和传输控制协议(TCP)的扩展。ECN最初由Ramakrishnan等人在“The Addition of Explicit CongestionNotification(ECN)to IP”中定义,该文作为Internet Engineering Task Force(2001)的请求注解(RFC)3168被出版并通过引用被并入本文。ECN通过在所传输的分组的IP报头中用信号通知即将发生的拥塞来提供网络拥塞的端对端通知。这种ECN标记的分组的接收方对发送方重复拥塞指示,这减小它的传输速率,好像它检测到放弃的分组一样。ECN功能最近扩展到其它传输和隧道协议。
概述
在下文所述的本发明的实施方式提供用于在网络中的拥塞控制的改进的方法和实现这样的方法的装置。
因此根据本发明的实施方式提供通信装置,其包括多个接口,该多个接口配置成连接到分组数据网络以便用作通过该装置在来自网络和到网络的数据分组的接收和转发中的入口接口和出口接口。存储器耦合到接口并被配置为缓冲器以将通过入口接口接收的数据分组容纳在多个队列中同时等待经由出口接口到网络的传输。拥塞控制逻辑包括配置成响应于队列的状态而放弃来自缓冲器中的至少第一队列的数据分组的第一部分的分组丢弃机器和配置成响应于队列的状态而将拥塞通知应用于来自缓冲器中的至少第二队列的数据分组的第二部分的分组标记机器。机器控制电路被耦合以选择性地启用和禁用至少分组丢弃机器。
在一些实施方式中,机器控制电路还被耦合以选择性地启用和禁用分组标记机器。
在所公开的实施方式中,分组丢弃机器和分组标记机器配置成放弃在相同的一个或多个队列中的数据分组的相应部分并将拥塞通知应用于在相同的一个或多个队列中的数据分组的相应部分。
在一些实施方式中,拥塞通知包括在数据分组的报头中设置显式拥塞通知(ECN)或业务类(TC)字段。
在所公开的实施方式中,拥塞控制逻辑包括概况计算器(profile calculator),该概况计算器配置成响应于第一和第二队列的相应状态而计算第一和第二部分。一般,概况计算器配置成通过比较队列的长度与在存储器中的队列的相应缓冲器分配和/或基于队列的相应传输速率来计算第一和第二部分。此外或可选地,装置包括分组分类逻辑,其配置成将通过入口接收的数据分组分配到多个队列,并将关于所接收的数据分组的信息传送到概况计算器。
还根据本发明的实施方式提供了用于通信的方法,其包括在具有连接到分组数据网络以便用作入口和出口接口的多个接口和耦合到接口的存储器的网络元件中,将通过入口接口接收的数据分组放置在存储器中的多个队列中,同时数据分组等待传输到网络。使用配置成响应于队列的状态而放弃缓冲器中的至少第一队列的数据分组的第一部分的分组丢弃机器并使用配置成响应于队列的状态将拥塞通知应用于缓冲器中的至少第二队列的数据分组的第二部分的分组标记机器,拥塞控制被应用于被排队用于传输的数据分组。至少分组丢弃机器被选择性地启用和禁用,使得当分组丢弃机器被禁用时,数据分组响应于由队列的状态指示的拥塞而不被网络元件丢弃。
本发明将从连同附图一起理解的其实施方式的下面的详细描述中被更充分理解,其中:
附图的简要描述
图1是示意性示出根据本发明的实施方式的具有拥塞控制能力的交换机的方框图;以及
图2是示意性示出根据本发明的实施方式的在交换机中的分组处理逻辑的细节的方框图。
实施方式的详细描述
在本领域中已知的网络元件例如交换机中,由ECN标记的分组结合由RED(包括WRED)放弃的分组在单个逻辑拥塞避免机器的控制下根据在上面提到的RFC 3168中定义的模型来操作。因此,ECN分组标记不能对可应用的分组启用,如果也不允许拥塞避免机器在拥塞严重的情况下放弃不受到ECN标记的分组的话。相反,当必须避免放弃某种类型的分组例如TCP控制分组(例如SYN和SYN/ACK分组)或其它无损业务类时,为了拥塞避免的目的的分组的标记也被禁用。
本文所述的本发明的实施方式提供用于拥塞避免的更灵活的模型,其中分组丢弃和分组标记机制单独地和独立地被应用。在所公开的实施方式中,在通信装置例如网络交换机中的拥塞控制逻辑包括分组丢弃机器和分组标记机器。(如在本描述中和在权利要求中使用的术语“机器”指执行某个定义明确的任务的不同逻辑电路。)在装置中的机器控制电路被耦合以选择性地启用和禁用至少分组丢弃机器和可能也有分组标记机器。
分组丢弃机器和分组标记机器的这个分离使系统操作员能够配置该装置以用于不同种类的拥塞响应:在拥塞的情况下仅标记、仅丢弃或标记和丢弃分组的适当部分。此外,机器控制电路可设置分组丢弃和标记机器以将不同的拥塞响应应用于不同的队列以及不同类型的业务,使得TCP控制分组在拥塞的情况下例如被标记(但不被放弃),而其它种类的分组可被放弃。分组丢弃机器和分组标记机器的分离也可增强拥塞控制的效率,因为分组丢弃可例如在网络交换机的处理管线中的早期被应用,以便立即释放缓冲器空间,而分组标记可在处理管线中的后期被应用以实现对在拥塞水平中的变化的快速响应。
图1是示意性示出根据本发明的实施方式的具有拥塞控制能力的网络交换机20的方框图。交换机20包括连接到分组数据网络24并配置成在来自网络或到网络的数据分组26、28…的接收和转发中用作入口和出口接口的多个接口22,例如交换机端口。耦合到接口22的存储器36用作缓冲器以从入口接口接收分组并将分组保持在多个队列中,同时等待经由出口接口传输到网络24。在所示例子中,存储器36被配置为共享缓冲器,其中每个队列接收相应的分配38。可选地,本发明的原理可同样在网络元件中被应用,网络元件中不同的接口具有它们自己的单独缓冲器,或其中使用其它缓冲方案,例如在入口或出口端口的一部分之间的共享,作为图1所示的共享缓冲器的补充或替代。
分配38(即队列被允许使用的缓冲器的量,或等效地,为了拥塞控制的目的的控制阈值)可以是静止的,或它们可随着时间的过去而改变。此外,不同的队列可接收不同大小的相应分配38,例如取决于业务优先级水平或其它系统考虑因素。指向同一出口接口的多个不同队列可接收它们自己的单独分配38。可选地或此外,存储器分配可在指向同一出口接口或甚至多个不同的出口接口的多个队列当中被共享。各种类型的动态缓冲器分配可由交换机20中的决策和排队逻辑40操纵,并将对由在交换机中的拥塞控制逻辑42应用的阈值有影响,但这些缓冲器分配机制本身在本描述的范围之外。例如在2015年3月30日提交的美国专利申请14/672,357中描述了可在这个上下文中使用的缓冲器分配机制,其公开通过引用被并入本文。
拥塞控制逻辑42在这个例子中基于统计或其它拥塞控制标准来将拥塞控制例如ECN和/或WRED应用于被排队用于从存储器36中的每个队列传输到网络24的分组的相应部分。逻辑42一般基于在队列的长度和相应分配38的大小之间的关系在任何给定时间对每个队列将分组的该部分设置为在这个上下文中被标记或放弃。因此,响应于队列的状态并根据拥塞条件,拥塞控制逻辑42可放弃缓冲器中的某个队列或队列组的数据分组的某个部分,同时将拥塞通知标记应用于另一队列或队列组的数据分组的另一部分。这两组队列可交叉,意味着在一些或所有队列中,一些分组可被放弃,而其它分组用拥塞通知来标记。
在图1所示的例子中,在交换机20中从网络24接收的分组26、28…包括报头30和有效载荷数据32,如在本领域中已知的。报头30在这个例子中被假设为IP报头,且因此包含ECN字段34,如在RFC 3168中规定的。决策和排队逻辑40将分组26和28放置在存储器36中的相应队列中,这两者在这个例子中都被假设为拥塞的。基于缓冲器填充水平和机器控制设置,拥塞控制逻辑42放弃分组28,并通过将ECN字段34设置为值“11”来标记分组26以当交换机20将这个分组转发到网络24时指示拥塞。
虽然本描述为了具体性和清楚起见涉及图1所示的特定交换机20,本发明的原理可加以必要的变更来类似地应用于实现本文讨论的拥塞控制技术的种类的任何网络元件。因此在可选的实施方式中,这些原理可不仅应用在不同类型的切换装置例如路由器和桥中,而且例如应用在将主机计算机连接到网络的高级网络接口控制器中。此外,虽然本实施方式特别涉及在IP网络中的拥塞控制并利用特别对这样的网络定义的技术例如ECN,本发明的原理可以可选地应用在其它种类的网络中和在统计(或可能非统计)拥塞控制所相关的不同协议例如MPLS、InfiniBand和以太网下。
图2是根据本发明的实施方式示意性示出在交换机20中的分组处理逻辑的细节方框图。为了清楚和具体性起见,该附图示出决策和排队逻辑40的一个可能的实现,包括拥塞控制逻辑42,但其它实现将对阅读了本描述之后的本领域中的技术人员明显且被考虑为在本发明的范围内。虽然逻辑40和42的元件在图2中被示为单独的功能部件,实际上这些部件可一起在单个芯片或芯片组中的定制或可编程硬件逻辑中实现。
当接收到进入的分组时,入口端口22A(例如在图1中的端口22之一)将分组有效载荷放置在存储器36中的缓冲器中并通知决策和排队逻辑40该分组为处理做好准备。分组分类器(packet classifier)50解析分组报头并产生确定出口端口22B(或多个端口)和队列的一个或多个描述符,该分组通过该出口端口22B(或多个端口)被传输,且该分组被放置在该队列中同时等待传输。描述符也可指示待应用于分组的服务质量(QoS),即传输的优先级的水平,并可指示用于分组报头的修改的任何可应用的指令。分组分类器50将描述符放置在排队系统52中的适当的队列中,以等待经由指定出口端口进行传输。如早些时候提到的,排队系统52一般包含每个出口端口22B的专用队列或每出口端口的多个队列,每个QoS水平有一个队列。
当描述符到达它的队列的报头时,排队系统52将描述符传递到分组修改器54用于执行。响应于描述符,分组修改器54从存储器36读取适当的分组数据,并做出在分组报头中要求的任何变化用于通过出口端口22B传输到网络24。这些变化可包括例如响应于来自拥塞控制逻辑42的指令通过将ECN字段34设置为拥塞通知来标记分组报头。
拥塞控制逻辑42包括概况计算器56,其计算进入的分组可被分配到的每个队列的拥塞控制概率。这些概率被表示为分数,其从概况计算器56输入到分组丢弃机器58和分组标记机器62,为了在拥塞的情况下将被做出的放弃和ECN决策的目的。换句话说,对于任何给定队列在任何给定时间,由概况计算器56提供到分组丢弃机器58的概率值指示在队列中的分组的待放弃的部分;而被提供到分组标记机器62的概率值(其可与被提供到分组丢弃机器的概率值相同或不同)指示在队列中的分组的用拥塞通知标记的部分。
概况计算器56基于由排队系统52提供的队列状态信息以及由分组分类器50分析的分组报头信息来计算并更新这些概率值。例如,分组分类器可为了这个目的参考指示业务类和拥塞状态的IP和传输报头字段。作为另一例子,当MPLS在使用中时,分组分类器可使用在MPLS报头中的相应字段(如由Davie等人的标题为“Explicit Congestion Marking inMPLS”的IETF RFC 5129提供的)和特别是在MPLS业务类(TC)字段中的QoS和拥塞通知信息(如由Andersson等人在IETF RFC 5462中定义的)。队列状态信息一般包括在讨论中的队列的长度和/或相应的传输速率,且概率值取决于这些长度与队列的可用缓冲器分配38的比较。相关的分组报头字段尤其包括在IP报头中的ECN和区分服务代码点(DSCP)字段。分组分类器50也可向分组丢弃机器58和分组标记机器62指示给定队列或分组类型是否适宜分组放弃、标记或这两者。
拥塞控制逻辑42还包括机器控制电路,机器控制电路包括放弃启用电路60并可选地包括ECN启用电路64。放弃启用电路60被耦合以选择性地启用和禁用分组丢弃机器58,而ECN启用电路64选择性地启用和禁用分组标记机器64。当放弃启用电路60禁用分组丢弃机器58时,例如拥塞控制逻辑42在拥塞的情况下仍将标记分组但将不丢弃分组。因此通过设置电路60和64,交换机20的系统操作员能够确定交换机将如何对拥塞做出响应:通过放弃分组、标记分组或这两者或没有这些功能中的任一个。这些设置可基于网络配置和状态以及其它系统要求随着时间的过去自动地或在直接操作员控制下改变。
当被放弃启用电路60启用时,分组丢弃机器58基于来自概况计算器58的概率值来选择要从每个队列放弃的分组的适当部分。这些分组从存储器36和从在排队系统52中的相应队列删除。
出于同样原因,当由ECN启用电路64启用时,分组标记机器62基于来自概况计算器58的概率值来选择在每个队列中的适当分组以用拥塞通知标记,并指示分组修改器54相应地修改分组报头。拥塞通知可被标记在例如IP报头的ECN字段中,如上面解释的,或在另一适当的报头字段例如MPLS TC字段中。分组然后经由出口端口22B被传输到网络24。
将认识到,上面所述的实施方式作为例子被引证,以及本发明不限于在上文中特别示出和描述的内容。更确切地,本发明的范围包括在上文中所述的各种特征的组合和子组合以及本领域中的技术人员在阅读了前述描述时将想到的且在现有技术中未公开的其变形和修改。

Claims (18)

1.一种通信装置,包括:
多个接口,其配置成连接到分组数据网络以便在通过所述通信装置从所述分组数据网络接收数据分组以及向所述分组数据网络转发数据分组中用作入口接口和出口接口;
存储器,其耦合到所述多个接口并被配置为缓冲器以将通过所述入口接口接收的数据分组容纳在多个队列中同时等待经由所述出口接口传输到所述分组数据网络;以及
拥塞控制逻辑,其包括:
分组丢弃机器,其配置成响应于所述多个队列的状态而放弃所述缓冲器中的至少第一队列的数据分组的第一部分;
分组标记机器,其配置成响应于所述多个队列的状态而将拥塞通知应用于所述缓冲器中的至少第二队列的数据分组的第二部分;以及
机器控制电路,其被耦合以选择性地启用和禁用至少所述分组丢弃机器,
其中当所述机器控制电路禁用所述分组丢弃机器而不是禁用所述分组丢弃机器和所述分组标记机器二者时,所述通信装置通过标记分组而不放弃不受到标记的分组来响应拥塞。
2.如权利要求1所述的通信装置,其中所述机器控制电路还被耦合以选择性地启用和禁用所述分组标记机器并且针对每个队列指示其是否适宜分组放弃、标记或这两者。
3.如权利要求1所述的通信装置,其中所述分组丢弃机器和所述分组标记机器配置成放弃在所述多个队列的相同的一个或多个队列中的数据分组的相应部分以及将所述拥塞通知应用于在所述多个队列的相同的一个或多个队列中的数据分组的相应部分,并且其中所述机器控制电路被配置成针对每个分组类型指示其是否适宜分组放弃、标记或这两者。
4.如权利要求1所述的通信装置,其中所述拥塞通知包括在所述数据分组的报头中设置显式拥塞通知(ECN)字段。
5.如权利要求1所述的通信装置,其中所述拥塞通知包括在所述数据分组的报头中设置业务类(TC)字段。
6.如权利要求1所述的通信装置,其中所述拥塞控制逻辑包括概况计算器,所述概况计算器配置成响应于所述第一队列和所述第二队列的相应状态而计算所述第一部分和所述第二部分,并且其中针对特定分组被提供到所述分组标记机器的概率值不同于被提供到所述分组丢弃机器的概率值。
7.如权利要求6所述的通信装置,其中所述概况计算器配置成通过比较所述多个队列的长度与所述多个队列在所述存储器中的相应缓冲器分配来计算所述第一部分和所述第二部分。
8.如权利要求6所述的通信装置,其中所述概况计算器配置成基于所述多个队列的相应传输速率来计算所述第一部分和所述第二部分。
9.如权利要求6所述的通信装置,包括分组分类逻辑,所述分组分类逻辑配置成将通过所述入口接口接收的数据分组分配到所述多个队列,并将关于所接收的数据分组的信息传送到所述概况计算器。
10.一种用于通信的方法,包括:
在具有连接到分组数据网络以便用作入口接口和出口接口的多个接口并具有耦合到所述多个接口的存储器的网络元件中,将通过所述入口接口接收的数据分组放置在所述存储器中的多个队列中,同时所述数据分组等待传输到所述分组数据网络,其中所述存储器被配置为缓冲器;
使用分组丢弃机器以及使用分组标记机器来将拥塞控制应用于被排队用于传输的数据分组,所述分组丢弃机器配置成响应于所述多个队列的状态而放弃所述缓冲器中的至少第一队列的数据分组的第一部分,所述分组标记机器配置成响应于所述多个队列的状态将拥塞通知应用于所述缓冲器中的至少第二队列的数据分组的第二部分;以及
选择性地启用和禁用至少所述分组丢弃机器,使得当所述分组丢弃机器被禁用时,所述数据分组响应于由所述多个队列的状态指示的拥塞而不被所述网络元件丢弃,
其中当所述分组丢弃机器被禁用而所述分组标记机器不被禁用时,通过标记分组而不放弃不受到标记的分组来响应拥塞。
11.如权利要求10所述的方法,包括选择性地启用和禁用所述分组标记机器并且针对每个队列指示其是否适宜分组放弃、标记或这两者。
12.如权利要求10所述的方法,其中应用所述拥塞控制包括放弃在所述多个队列的相同的一个或多个队列中的数据分组的相应部分以及将所述拥塞通知应用于在所述多个队列的所述相同的一个或多个队列中的数据分组的相应部分。
13.如权利要求10所述的方法,其中所述拥塞通知包括在所述数据分组的报头中设置显式拥塞通知(ECN)字段。
14.如权利要求10所述的方法,其中所述拥塞通知包括在所述数据分组的报头中设置业务类(TC)字段。
15.如权利要求10所述的方法,其中应用所述拥塞控制包括响应于所述第一队列和所述第二队列的相应状态而计算所述第一部分和所述第二部分。
16.如权利要求15所述的方法,其中计算所述第一部分和所述第二部分包括比较所述多个队列的长度与所述多个队列在所述存储器中的相应缓冲器分配。
17.如权利要求15所述的方法,其中计算所述第一部分和所述第二部分包括评估所述多个队列的相应传输速率。
18.如权利要求15所述的方法,其中计算所述第一部分和所述第二部分包括在计算所述第一部分和所述第二部分时应用关于所接收的数据分组的信息。
CN201710137920.1A 2016-03-20 2017-03-09 通信装置和用于通信的方法 Active CN107204931B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US15/075,158 US10084716B2 (en) 2016-03-20 2016-03-20 Flexible application of congestion control measures
US15/075,158 2016-03-20

Publications (2)

Publication Number Publication Date
CN107204931A CN107204931A (zh) 2017-09-26
CN107204931B true CN107204931B (zh) 2021-08-17

Family

ID=59856184

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710137920.1A Active CN107204931B (zh) 2016-03-20 2017-03-09 通信装置和用于通信的方法

Country Status (2)

Country Link
US (1) US10084716B2 (zh)
CN (1) CN107204931B (zh)

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10673648B1 (en) * 2018-07-06 2020-06-02 Netronome Systems, Inc. Network interface device that sets an ECN-CE bit in response to detecting congestion at an internal bus interface
US11032206B2 (en) * 2018-11-06 2021-06-08 Mellanox Technologies Tlv Ltd. Packet-content based WRED protection
KR102616714B1 (ko) 2019-02-22 2023-12-20 후아웨이 테크놀러지 컴퍼니 리미티드 광학 흐름 정제를 위한 조기 종료
WO2020200307A1 (zh) * 2019-04-04 2020-10-08 华为技术有限公司 数据包标记方法及设备、数据传输系统
CN116527584B (zh) * 2019-06-17 2024-04-12 华为技术有限公司 拥塞控制方法及装置、通信网络、计算机存储介质
US10999221B2 (en) 2019-07-02 2021-05-04 Mellanox Technologies Tlv Ltd. Transaction based scheduling
US11218413B2 (en) * 2019-11-14 2022-01-04 Mellanox Technologies, Ltd. Congestion control management method derived from packets at a network adapter
US11470010B2 (en) 2020-02-06 2022-10-11 Mellanox Technologies, Ltd. Head-of-queue blocking for multiple lossless queues
WO2021186399A1 (en) 2020-03-18 2021-09-23 Marvell Israel (M.I.S.L) Ltd. Packet buffer spill-over in network devices
US11622028B2 (en) * 2020-05-03 2023-04-04 Mellanox Technologies, Ltd. Explicit notification of operative conditions along a network path
US11916790B2 (en) * 2020-05-04 2024-02-27 Mellanox Technologies, Ltd. Congestion control measures in multi-host network adapter
CN113973085B (zh) * 2020-07-22 2023-10-20 华为技术有限公司 一种拥塞控制方法和装置
EP3952254A1 (en) * 2020-08-06 2022-02-09 Mellanox Technologies, Ltd. Programmable congestion control communication scheme
US20220045972A1 (en) * 2020-08-10 2022-02-10 Mellanox Technologies Tlv Ltd. Flow-based management of shared buffer resources
CN112188557B (zh) * 2020-09-16 2022-06-17 烽火通信科技股份有限公司 一种拥塞时保证绿包优先QoS的方法和装置
US11327909B1 (en) 2020-10-26 2022-05-10 Mellanox Technologies, Ltd. System for improving input / output performance
US11609700B2 (en) 2021-08-11 2023-03-21 Mellanox Technologies, Ltd. Pacing in a storage sub-system
US11895029B2 (en) * 2021-12-10 2024-02-06 Nokia Solutions And Networks Oy Network processor with external memory protection
US11973696B2 (en) 2022-01-31 2024-04-30 Mellanox Technologies, Ltd. Allocation of shared reserve memory to queues in a network device
CN116170380B (zh) * 2023-04-21 2023-08-29 中国科学技术大学 基于拥塞预测的ecn标记策略和队列管理方法及系统

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102239666A (zh) * 2008-11-11 2011-11-09 爱立信电话股份有限公司 电信网络中能够实现拥塞指示的方法和装置
CN103583022A (zh) * 2011-03-28 2014-02-12 思杰系统有限公司 用于经由nic感知应用处理nic拥塞的系统和方法

Family Cites Families (63)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7321553B2 (en) 2003-07-22 2008-01-22 Intel Corporation Methods and apparatus for asserting flow control at input ports of a shared-memory switch
SE506955C2 (sv) 1995-07-06 1998-03-09 Ericsson Telefon Ab L M ATM-flödesstyrning
US6108713A (en) 1997-02-11 2000-08-22 Xaqti Corporation Media access control architectures and network management systems
US6178448B1 (en) 1997-06-18 2001-01-23 International Business Machines Corporation Optimal link scheduling for multiple links by obtaining and utilizing link quality information
US6590901B1 (en) 1998-04-01 2003-07-08 Mosaid Technologies, Inc. Method and apparatus for providing a packet buffer random access memory
US7002980B1 (en) 2000-12-19 2006-02-21 Chiaro Networks, Ltd. System and method for router queue and congestion management
JP3892682B2 (ja) 2001-06-18 2007-03-14 株式会社エヌ・ティ・ティ・ドコモ パケット伝送方法、基地局及び移動局
KR100426535B1 (ko) 2001-12-11 2004-04-08 삼성전자주식회사 무선통신기기 및 그 무선통신방법
JP3925234B2 (ja) 2002-02-18 2007-06-06 ソニー株式会社 データ通信システム、データ通信管理装置、および方法、並びにコンピュータ・プログラム
CN1182683C (zh) * 2002-04-29 2004-12-29 清华大学 用于报文转发系统的提供比例丢失率区分的队列管理方法
US7430169B2 (en) * 2002-06-03 2008-09-30 International Business Machines Corporation Retro flow control for arriving traffic in computer networks
US7706394B2 (en) 2003-07-23 2010-04-27 International Business Machines Corporation System and method for collapsing VOQ's of a packet switch fabric
US8473693B1 (en) 2003-07-29 2013-06-25 Netapp, Inc. Managing ownership of memory buffers (mbufs)
US20080037420A1 (en) 2003-10-08 2008-02-14 Bob Tang Immediate ready implementation of virtually congestion free guaranteed service capable network: external internet nextgentcp (square waveform) TCP friendly san
TWI241807B (en) 2004-03-02 2005-10-11 Hon Hai Prec Ind Co Ltd System and method for network quality of service
US7480730B2 (en) 2004-04-08 2009-01-20 Nortel Networks Limited Credit recovery in a credit based flow control system
US7499402B2 (en) 2004-04-13 2009-03-03 Radioframe Networks, Inc. Network delay control
US20060056308A1 (en) 2004-05-28 2006-03-16 International Business Machines Corporation Method of switching fabric for counteracting a saturation tree occurring in a network with nodes
US7724663B2 (en) 2004-09-08 2010-05-25 Telefonaktiebolaget L M Ericsson (Publ) Counter based quality of service (QoS) class upgrade
EP1650905A1 (en) 2004-10-25 2006-04-26 Siemens Aktiengesellschaft Method for bandwidth profile management in a Metro Ethernet network
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
FR2878106A1 (fr) 2004-11-15 2006-05-19 France Telecom Procede et dispositif d'ordonnancement de paquets pour leur routage dans un reseau avec determination implicite des paquets a traiter en priorite
US7802028B2 (en) 2005-05-02 2010-09-21 Broadcom Corporation Total dynamic sharing of a transaction queue
US8548048B2 (en) 2005-10-27 2013-10-01 Qualcomm Incorporated Video source rate control for video telephony
US7953002B2 (en) 2005-11-10 2011-05-31 Broadcom Corporation Buffer management and flow control mechanism including packet-based dynamic thresholding
US8218546B2 (en) 2005-11-10 2012-07-10 Broadcom Corporation Interleaved processing of dropped packets in a network device
US8078743B2 (en) 2006-02-17 2011-12-13 Intel-Ne, Inc. Pipelined processing of RDMA-type network transactions
US7724754B2 (en) * 2006-02-24 2010-05-25 Texas Instruments Incorporated Device, system and/or method for managing packet congestion in a packet switching network
EP1873977B1 (en) 2006-06-30 2009-10-28 Alcatel Lucent Method of providing resource admission control
US7821939B2 (en) 2007-09-26 2010-10-26 International Business Machines Corporation Method, system, and computer program product for adaptive congestion control on virtual lanes for data center ethernet architecture
US8532117B2 (en) 2008-02-13 2013-09-10 Broadcom Corporation Flexible buffer allocation entities for traffic aggregate containment
WO2009107089A2 (en) 2008-02-26 2009-09-03 Nxp B.V. Apparatus and method for shared buffering between switch ports
US8576715B2 (en) 2009-10-26 2013-11-05 Mellanox Technologies Ltd. High-performance adaptive routing
US8498213B2 (en) 2010-09-14 2013-07-30 Brocade Communications Systems, Inc. Manageability tools for lossless networks
US9008113B2 (en) 2010-12-20 2015-04-14 Solarflare Communications, Inc. Mapped FIFO buffering
US8938598B2 (en) 2011-07-06 2015-01-20 Nvidia Corporation Facilitating simultaneous submission to a multi-producer queue by multiple threads with inner and outer pointers
US8681616B2 (en) 2011-08-12 2014-03-25 Telefonaktiebolaget L M Ericsson (Publ) Scheduling under congestion with traffic load-based scaling
EP2761482B1 (en) 2011-09-30 2016-11-30 Intel Corporation Direct i/o access for system co-processors
US8811183B1 (en) 2011-10-04 2014-08-19 Juniper Networks, Inc. Methods and apparatus for multi-path flow control within a multi-stage switch fabric
US8879396B2 (en) 2011-11-15 2014-11-04 Oracle International Corporation System and method for using dynamic allocation of virtual lanes to alleviate congestion in a fat-tree topology
US9325619B2 (en) 2011-11-15 2016-04-26 Oracle International Corporation System and method for using virtual lanes to alleviate congestion in a fat-tree topology
US8995265B2 (en) 2012-01-28 2015-03-31 Lenovo Enterprise Solutions (Singapore) Pte. Ltd. Monitoring endpoint buffer occupancy to determine congestion in an ethernet network
ITRM20120094A1 (it) 2012-03-14 2013-09-14 Istituto Naz Di Fisica Nuclea Re Scheda di interfaccia di rete per nodo di rete di calcolo parallelo su gpu, e relativo metodo di comunicazione internodale
US8867360B2 (en) 2012-03-22 2014-10-21 Avaya Inc. Method and apparatus for lossless behavior for multiple ports sharing a buffer pool
US9166919B2 (en) 2012-03-23 2015-10-20 Broadcom Corporation Reducing headroom
KR20130126816A (ko) 2012-04-26 2013-11-21 한국전자통신연구원 트래픽 혼잡을 제어하는 트래픽 관리장치 및 그 방법
US9436504B2 (en) 2012-05-09 2016-09-06 Nvidia Corporation Techniques for managing the execution order of multiple nested tasks executing on a parallel processor
WO2013180691A1 (en) 2012-05-29 2013-12-05 Intel Corporation Peer-to-peer interrupt signaling between devices coupled via interconnects
US9282022B2 (en) 2012-11-14 2016-03-08 Broadcom Corporation Forensics for network switching diagnosis
US8989017B2 (en) 2012-12-14 2015-03-24 Intel Corporation Network congestion management by packet circulation
US9014006B2 (en) 2013-01-31 2015-04-21 Mellanox Technologies Ltd. Adaptive routing using inter-switch notifications
US9237093B2 (en) 2013-03-14 2016-01-12 Silicon Graphics International Corp. Bandwidth on-demand adaptive routing
US9467522B2 (en) 2013-07-19 2016-10-11 Broadcom Corporation Ingress based headroom buffering for switch architectures
US9356868B2 (en) 2013-08-23 2016-05-31 Broadcom Corporation Congestion detection and management at congestion-tree roots
US10778584B2 (en) 2013-11-05 2020-09-15 Cisco Technology, Inc. System and method for multi-path load balancing in network fabrics
US9769078B2 (en) 2013-11-05 2017-09-19 Cisco Technology, Inc. Dynamic flowlet prioritization
US9648148B2 (en) 2013-12-24 2017-05-09 Intel Corporation Method, apparatus, and system for QoS within high performance fabrics
US9621471B2 (en) * 2014-06-30 2017-04-11 Vmware, Inc. Framework for early congestion notification and recovery in a virtualized environment
EP3186934A1 (en) * 2014-09-16 2017-07-05 Huawei Technologies Co., Ltd. Scheduler, sender, receiver, network node and methods thereof
US9794825B2 (en) 2014-11-06 2017-10-17 Alcatel-Lucent Usa Inc. System and method for determining cell congestion level
US20170118108A1 (en) 2015-10-27 2017-04-27 Futurewei Technologies, Inc. Real Time Priority Selection Engine for Improved Burst Tolerance
US10425344B2 (en) 2015-12-18 2019-09-24 Avago Technologies International Sales Pte. Limited Avoiding dropped data packets on a network transmission

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102239666A (zh) * 2008-11-11 2011-11-09 爱立信电话股份有限公司 电信网络中能够实现拥塞指示的方法和装置
CN103583022A (zh) * 2011-03-28 2014-02-12 思杰系统有限公司 用于经由nic感知应用处理nic拥塞的系统和方法

Also Published As

Publication number Publication date
US10084716B2 (en) 2018-09-25
US20170272372A1 (en) 2017-09-21
CN107204931A (zh) 2017-09-26

Similar Documents

Publication Publication Date Title
CN107204931B (zh) 通信装置和用于通信的方法
EP3618372B1 (en) Congestion control method and network device
CN111316605B (zh) 第3层公平速率拥塞控制通知
US11005770B2 (en) Listing congestion notification packet generation by switch
CN111788803B (zh) 网络中的流管理
US7742412B1 (en) Method and apparatus for preventing head of line blocking in an ethernet system
CN110061923B (zh) 流量控制方法、装置、交换机、发送端服务器及介质
US9674102B2 (en) Methods and network device for oversubscription handling
US10069748B2 (en) Congestion estimation for multi-priority traffic
US20150103667A1 (en) Detection of root and victim network congestion
JP2010050857A (ja) 経路制御装置およびパケット廃棄方法
US11425051B2 (en) Flow control method and system, and device
KR101640017B1 (ko) 패킷 전송 장비 및 그것의 트래픽 관리 방법
US10728156B2 (en) Scalable, low latency, deep buffered switch architecture
EP3823228A1 (en) Message processing method and apparatus, communication device, and switching circuit
WO2023019202A1 (en) System and method for congestion control using a flow level transmit mechanism
US20150195209A1 (en) Congestion Notification in a Network
CN110679121B (zh) 全结构范围的带宽管理
EP2860923B1 (en) A switch device for a network element of a data transfer network
CN114095448A (zh) 一种拥塞流的处理方法及设备
US11622028B2 (en) Explicit notification of operative conditions along a network path
CN117917061A (zh) 用于流检测和处理的设备和方法
CN117014376A (zh) 拥塞流识别方法、装置、设备及计算机可读存储介质
CN116686332A (zh) 一种数据交换的控制方法及装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20211228

Address after: Israel Yuekeni Mourinho

Patentee after: Mellanox Technologies, Ltd.

Address before: Israel Lai Ananna

Patentee before: Mellanox Technologies TLV Ltd.