CN111800351A - 由交换机进行的拥塞通知分组生成 - Google Patents

由交换机进行的拥塞通知分组生成 Download PDF

Info

Publication number
CN111800351A
CN111800351A CN202010546605.6A CN202010546605A CN111800351A CN 111800351 A CN111800351 A CN 111800351A CN 202010546605 A CN202010546605 A CN 202010546605A CN 111800351 A CN111800351 A CN 111800351A
Authority
CN
China
Prior art keywords
packet
source
network interface
network
target
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
CN202010546605.6A
Other languages
English (en)
Other versions
CN111800351B (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
Tel Aviv Melos Technology Co 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 Tel Aviv Melos Technology Co ltd filed Critical Tel Aviv Melos Technology Co ltd
Publication of CN111800351A publication Critical patent/CN111800351A/zh
Application granted granted Critical
Publication of CN111800351B publication Critical patent/CN111800351B/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/26Flow control; Congestion control using explicit feedback to the source, e.g. choke packets
    • H04L47/263Rate modification at the source after receiving feedback
    • 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/11Identifying congestion
    • H04L47/115Identifying congestion using a dedicated packet
    • 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/12Avoiding congestion; Recovering from congestion
    • H04L47/122Avoiding congestion; Recovering from congestion by diverting traffic away from congested entities
    • 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/30Flow control; Congestion control in combination with information about buffer occupancy at either end or at transit nodes
    • 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/35Flow control; Congestion control by embedding flow control information in regular packets, e.g. piggybacking

Abstract

通过从源网络接口向目标网络接口发送分组,在网络的中间交换机中接收分组之一,确定中间交换机正在经历网络拥塞,在中间交换机中为所接收的分组生成拥塞通知分组,以及经由网络从中间交换机向源网络接口传输拥塞通知分组来进行网络通信。从中间交换机向目标网络接口转发所接收的分组。源网络接口可以响应于拥塞通知分组来修改分组传输的速率。

Description

由交换机进行的拥塞通知分组生成
版权声明
本专利文件公开内容的一部分含有受版权保护的材料。版权所有人不反对任何人对专利文件或专利公开内容进行影印复制,因为这些文件或内容在专利和商标局的专利文献或记录上有所显示,但除此以外保留所有其他版权权利。
技术领域
本发明涉及通过分组交换网络进行数字信息传输。更具体而言,本发明涉及分组交换网络中的拥塞管理。
背景技术
相关技术描述
表1中给出了本文使用的一些简写和缩写的含义。
表1–简写和缩写
Figure BDA0002540944780000011
Figure BDA0002540944780000021
RDMA是指从一个计算机的存储器到另一计算机的存储器的直接存储器访问,而不涉及任何一个计算机的操作系统。一种常见的网络RDMA协议是融合以太网上的RDMA(RoCE)。RoCEV2是RoCE协议的扩展。其规范见于文档Supplement toInfiniBandTMArchitecture Specification,Volume 1,Release 1.2.1,Annex A17(RoCEV2),该文档通过引用并入本文。
当前的高性能应用向数据中心网络中注入越来越不可预测的突发流量,这导致网络拥塞并劣化网络和应用性能。当前的拥塞控制协议指示导致网络拥塞的流量源。使用该指示,流量源降低流量的注入速率。拥塞控制机制的性能取决于多个因素,例如通知延迟和通知准确性。
RoCEv2拥塞管理(RCM)支持避免拥塞热点和优化结构的吞吐量。借助RCM,最终将结构中的初发拥塞报告回流量源,而流量源转而通过降低其注入速率来作出反应,从而防止结构缓冲区饱和及排队延迟增大的负面影响。常规的RoCEV2拥塞控制依赖于显式拥塞通知(ECN)(其中,交换机对分组进行标记),以及依赖于由分组目标节点发送到分组源节点的拥塞通知分组(CNP)。Bloch等人的共同转让的美国专利申请公开号2013/0135999(其通过引用并入本文)公开了通过利用主机通道适配器的节点在InfiniBand网络中实现的此类拥塞管理。
发明内容
这里公开的发明提出了一种拥塞控制协议,其性能优于其已知竞争者。为了减少通知延迟,拥塞的交换机生成CNP并将其通过结构向上游发送到分组源节点。动机是通过避开拥塞的交换机与分组目标节点之间的下游段来缩短拥塞控制的控制回路。产生了拥塞控制算法的更好的拥塞性能。随着节点之间距离的增加,例如在RTT非常长的长距离RoCE中,缩短拥塞控制回路变得越来越有益。在本发明实施方式中,目标分组节点不包括在控制回路中。而是将CNP从中间节点发送到分组源节点。当在数据中心边缘路由器中和结构的骨干交换机中发生拥塞时,本发明原理的应用特别有效,因为在这些情况下控制回路被最大程度地缩短。
根据本发明实施方式,提供了一种通信方法,该通信方法通过以下步骤来执行:通过网络从源网络接口向目标网络接口发送分组,在网络的中间交换机中接收分组之一,确定中间交换机正在经历网络拥塞,在中间交换机中为所接收的分组生成拥塞通知分组,以及经由网络从中间交换机向源网络接口传输拥塞通知分组。响应于拥塞通知分组,通过修改从源网络接口到目标网络接口的分组传输速率,以及从中间交换机向目标网络接口转发所接收的分组,来进一步执行该方法。
该方法的一个方面包括在转发所接收的分组之前,将所接收的分组标记为无资格使网络的其他中间交换机生成和传输新的拥塞通知分组。
根据该方法的另一方面,所接收的分组是兼容RoCEV2的。
根据该方法的又一方面,所接收的分组是隧道分组。
在该方法的又一方面,使用源队列对(源QP)和目标队列对(目标QP)来执行发送和接收分组,其中生成拥塞通知分组包括通过在中间交换机中保持目标QP与源QP之间的转换表来获得源QP。
在该方法的附加方面,生成拥塞通知分组包括计算关于所接收的分组的目标地址和目标QP的哈希函数。
根据本发明实施方式,还提供了一种通信装置,包括源网络接口和目标网络接口。源网络接口可操作用于通过网络向目标网络接口发送分组,并且目标网络接口可操作用于接受来自源网络接口的分组。该装置包括网络中的中间交换机,该中间交换机接收分组之一。中间交换机可操作用于确定其正在经历网络拥塞,为所接收的分组生成拥塞通知分组,经由网络向源网络接口传输拥塞通知分组,以及向目标网络接口转发所接收的分组。响应于拥塞通知分组,源网络接口可操作用于修改向目标网络接口的分组传输速率。
附图说明
为了更好地理解本发明,通过举例的方式参考本发明的详细描述,该详细描述应当结合附图阅读,图中相似元件被给予相似的参考标号,并且其中:
图1是示意性地图示根据本发明实施方式的通信系统的框图;
图2是图示常规RoCEV2分组报头的格式的表;
图3是图示常规CNP报头的格式的表;
图4是根据本发明实施方式的网络拥塞管理方法的流程图;
图5是图示根据本发明实施方式使用的隧道分组报头的示图;以及
图6是图示根据本发明实施方式使用的隧道CNP报头的示图。
具体实施方式
在以下描述中阐述了许多具体细节,以便提供对于本发明各种原理的透彻理解。然而,对于本领域技术人员显而易见的是,并非所有这些细节对于实践本发明都是必需的。在这种情况下,未详细示出公知的电路、控制逻辑以及针对常规算法和过程的计算机程序指令细节,以免不必要地混淆一般概念。
通过引用并入本文的文件应被视为本申请的组成部分,除非这些并入的文件中任何术语的定义达到与本说明书中的明示或暗示定义相冲突的程度,在此情况下应仅以本说明书中定义为准。
系统描述
图1是示意性地图示根据本发明实施方式的通信系统20的框图。在本示例中,系统20包括诸如InfiniBand(IB)系统的系统,其中两个主机通道适配器、源HCA 24和目标HCA25通过IB网络32进行通信。在备选实施方式中,系统20可以包括其中网络接口设备(例如,网络接口控制器(NIC))相互通信的任何其他合适的网络类型。每个HCA连接到相应的主机28,诸如计算机。为了清楚起见,该图仅示出了两个HCA。然而,现实生活中的系统可能包含大量的主机和HCA。每个HCA包括分组处理电路36,该分组处理电路36发送和接收通信分组以便在主机28之间进行通信。电路36包括一个或多个队列对(queue pair,QP)40。每个QP包括发送队列和接收队列(未示出)。在给定的QP中,发送队列将等待从HCA传输到网络32的分组进行排队,并且接收队列将从网络接收并等待在HCA中解码的分组进行排队。在当前上下文中,每个队列对都被视为一种传输服务实例,其用于通过网络发送和接收分组。在备选实施方式中,可以使用其他合适类型的传输服务实例。
每个HCA包括拥塞控制单元44,该拥塞控制单元44采取措施以减轻网络32中的分组拥塞。拥塞控制单元44包括速率限制器(rate limiter,RL)池48,其调控分组的传输速率。下面进一步详细描述由拥塞控制单元44所应用的拥塞控制方法。
图1的示例参考从HCA 24到HCA 25的分组传输。然而,仅出于清楚起见而作出该参考。通常,每个HCA可以充当一些分组的源HCA,并充当其他分组的目标HCA。给定的HCA可以向多个HCA发送分组,并且可以从多个HCA接收分组。为了清楚起见,在图中仅针对HCA 24示出了速率限制器48,尽管HCA 25通常也包括速率限制器池。
从HCA 24向HCA 25发送的分组可以穿越网络32中的各个网元。在本示例中,分组穿越网络中通过交换机52的某个路径。交换机52包括多个队列56,该多个队列56对穿越交换机的分组进行排队,在本示例中代表性地示出为四个队列。在备选实施方式中,分组可以穿越各个路径,每个路径可以穿过多个网元。
图1中所示的HCA 24、HCA 25、交换机52以及系统配置是示例性配置,仅出于概念清楚的目的而选取。在备选实施方式中,可以使用任何其他合适的HCA、网元和系统配置。HCA 24、HCA 25的某些元件可以使用硬件(诸如使用一个或多个专用集成电路(ASIC)或现场可编程门阵列(FPGA))来实现。备选地,一些HCA元件可以以软件或使用硬件和软件元件的组合来实现。
在一些实施方式中,某些HCA功能可以使用通用计算机来实现,该通用计算机以软件编程以执行本文描述的功能。在一个示例实施方式中,这样的功能可以由主机28的处理器执行。该软件可以例如通过网络以电子形式下载到计算机,或者其可以替代地或附加地提供和/或储存在非暂时性有形介质上,诸如磁、光或电子存储器上。
在一些实际情况下,网络32中的网元的某些组件加载有繁重的流量,并且可能导致较大的延迟,或者甚至分组丢失。在图1的示例中,交换机52中的一个或多个队列56可能加载有大量的分组。这样的场景在本文中称为网络拥塞。在下面描述的本发明实施方式中,交换机52应用缓解网络拥塞的拥塞控制方案。
拥塞控制方案
RoCEV2分组具有图2中所示的格式,其包括L2-MAC段58、包含2比特ECN字段62的L3-IP段60(IPv4或IPv6)以及基本传输报头(base transport header,BTH)64。在表2中给出了ECN字段62中的比特的含义,如在通过引用并入本文的IETF RFC 3168中所定义。L3-IP段60具有其他字段(未示出),诸如区分服务代码点(Differentiated Services CodePoint,DSCP)字段。
表2
ECN字段
00 不能够进行ECN
01 能够进行ECN
10 能够进行ECN
11 遭遇拥塞
在常规RoCE网络中,交换机通过将ECN字段62设置成二进制值11来发信号通知拥塞。继而,分组继续通过网络传输,并到达目标节点。一旦目标节点接收到其ECN字段具有二进制值11的分组,该目标节点就生成为所接收的分组的发送者指定的CNP。CNP具有图3中所示的格式,包括L2-MAC段66和L3-IP段68。CNP的L3-IP段68中的IP地址是所接收的分组中的L3-IP段60的交换地址。L2-MAC段66的地址没有交换,而是按照路由器的定义保持不变,该路由器将分组路由到DIP(分组的原始SIP),并且其还是路由器的源MAC。
在本发明实施方式中,接收经历到流量拥塞的分组的中间结构交换机生成拥塞通知分组(congestion notification packet,CNP)。交换机处的本地拥塞可以通过已知方法识别,例如,因为其队列已满。然而,替代于标记ECN字段,而是生成CNP。交换机将CNP发送到所接收的分组的源节点。当源节点接收到CNP时,其降低拥塞流的流量注入速率,就如同已从分组目标节点生成了CNP一样。术语“交换机”包括具有诸如NIC等网络接口的网元或节点,其中网元执行交换机的功能。
交换机可被配置用于处理以下实施方式中的每一个:
第一实施方式(处理“本机分组(native packet)”的非虚拟化网络)。
兼容RoCEV2的交换机可识别ECN,并且交换机通过将ECN字段62标记为二进制11来指示网络拥塞。
关于CNP,以图3的格式,按以下方式指定L3-IP段60中的字段(除了ECN之外未示出):
DIP=原始分组SIP;
SIP=路由器SIP或原始分组DIP;
DSCP=专用高优先级值,以确保CNP尽快到达源节点;
ECN=二进制00(CNP不符合ECN标记资格)。
如针对交换机中的正常路由器流所定义的那样构建L2-MAC段66。根据RoCEV2标准指定L3-IP段68的字段。
现在参考图4,其为根据本发明实施方式的网络拥塞管理方法的流程图。为了清楚起见,以特定的线性顺序示出了过程步骤。然而,很明显,这些步骤中的许多步骤可以并行、异步或以不同顺序执行。本领域技术人员还应当理解,备选地,可以例如在状态图中将过程表示为多个相互关联的状态或事件。此外,实现该方法可能不需要所有图示的过程步骤。
在初始步骤70处,在网络交换机或其他网元中接收一般属于流的RoCEV2分组。
接下来,在决策步骤72处,确定在交换机处是否存在网络拥塞状况。这样的确定是通过本领域已知的任何合适的拥塞确定方法作出的。例如,交换机可以监控其内部队列。如果决策步骤72处的确定是否定的,则所接收的分组是非拥塞的。控制进行到最终步骤74,其中,交换机根据非拥塞分组的路由信息以常规方式转发或处理非拥塞分组。
如果决策步骤72处的确定是肯定的,则控制进行到决策步骤76,其中,确定所接收的分组(称为“拥塞分组”)是否有资格应用本发明的原理。再次参考图2和图3,在产生CNP之前需要满足特定条件:
1)拥塞分组是兼容RoCEV2的。RoCEV2兼容性要求L3-IP段60中的ECN字段可用于发信号通知拥塞。
2)拥塞分组符合ECN标记资格。在ECN字段62中具有二进制值00的分组不符合资格。
3)如上所述,拥塞分组实际上正面临拥塞。
4)交换机未丢弃拥塞分组(排除缓冲区拥塞)。即使在由于缓冲区拥塞而丢弃分组的情况下,将CNP发送到源节点也是有利的。在其中目标节点生成CNP的常规网络中,在这种情况下将不生成CNP。
如果决策步骤76处的确定是否定的,则该过程在最终步骤74处结束。
如果决策步骤76处的确定是肯定的,则在步骤78中,由交换机生成CNP。步骤78包括步骤80、步骤82、步骤84。在步骤80中,从拥塞分组的L3-IP段60读取DIP和SIP,继而将其交换到CNP的L3-IP段68中,使得拥塞分组的SIP成为CNP的DIP,并且拥塞分组的DIP成为CNP的SIP。在一些实施方式中,交换机本身的IP地址可以用作CNP的SIP。L2-MAC段58不进行地址交换,而是如上所述得到处理。
在步骤82中,将CNP报头的L3-IP段的DSCP字段设置成高优先级值,以便确保CNP尽可能快地到达拥塞分组的源节点。
CNP不符合ECN标记资格。在步骤84中,将CNP的L3-IP段的ECN字段设置成二进制00,以使CNP在其通过网络传输期间不受其他节点的拥塞管理过程的影响。
一旦交换机已承诺生成CNP,则不希望下游交换机在其随后处理拥塞分组时重复该过程,原因在于分组源节点继而会接收到关于单个分组的多个CNP。分组源节点可能通过对流进行超过必要的限制来作出响应,有可能违反QoS要求,并且甚至导致流在其目的地变得不可用。
接下来,在框86中重置拥塞分组的L3-IP段的ECN字段,其中根据网络中的交换机的能力,选择一系列选项中之一。该序列在决策步骤88处开始,其中确定网络中的所有交换机是否可互操作,在该上下文中这意味着它们都能够不向不能够进行ECN的分组施加加权随机早期检测(Weighted Random Early Detection,WRED)方法,而向能够进行ECN的分组施加ECN标记。WRED是一种公知的排队规则,其中基于IP优先权选择性地丢弃分组。
如果决策步骤88处的确定是肯定的,则网络理想地适合于应用本发明的原理。控制进行到步骤90,其中将拥塞分组中的L3-IP段的ECN字段设置成二进制00。出于拥塞管理的目的,在下游网络节点中的决策步骤76的后续迭代中,会将拥塞分组视为不符合资格。步骤90的执行确保为拥塞分组恰好生成一个CNP。此行为的一端类似于CNP生成,其中沿路径的所有交换机合并为单个CNP生成。
如果在决策步骤88处的确定是否定的,则在决策步骤92处,确定网络节点是否被配置成或可被配置成仅将二进制值01和10中选定的一个识别为指示步骤90中的分组资格。在该示例中,在符合资格的分组中引用的二进制值由二进制值01表示,而二进制值10(以及值00)表示不符合资格。本文任意使用二进制值“01”和“10”以区分分组合格性和不合格性。在该示例中,二进制值相对于该方法的实际配置没有意义。
如果决策步骤92处的确定是肯定的,则在步骤94中将ECN字段设置成二进制10。被配置用于执行步骤94的网络交换机仅针对具有指示了CNP生成的资格的选定ECN字段值(在此示例中为二进制01)的分组生成CNP分组,并通过设置ECN字段以指示不合格来防止生成多个CNP。这样确保了每一分组的单个CNP生成。
如果决策步骤92处的确定是否定的,则拥塞分组的ECN字段保持不变。在其中拥塞分组的路径中没有其他交换机经历拥塞的情况下,不会造成危害,因为只会生成一个CNP。只有在其中存在多个网络拥塞点的情况下,才可能经历多个CNP的不良影响。
在最终步骤96处退出框86之后,根据拥塞分组的路由指令转发拥塞分组,并且通过网络向拥塞分组的源节点传输CNP。
第二实施方式(处理“隧道分组”的虚拟化网络)。
如本领域中已知,隧道协议是允许数据从一个网络移动到另一网络的通信协议。隧道分组的净荷封装了与另一协议兼容的另一分组,并传输其他分组的净荷。参考在通过引用并入于此的IETF RFC 7348中描述的虚拟可扩展LAN(Virtual Extensible LAN,VXLAN)协议的示例来描述该实施方式。VXLAN是第3层网络上的第2层覆盖方案。
VXLAN上的RoCEV2隧道分组(视情况称为“非拥塞隧道分组”或“拥塞隧道分组”)具有图5中所示的格式。其包括VXLAN段或外报头98。外报头98封装内报头100,后者对应于原始MAC帧。外报头98和内报头100全都相应地具有L3-IP段:段102、104(各自具有如上文在先前实施方式中所述的ECN字段)和L2-MAC段106、108。L3-IP段102、104不一定相同。当非拥塞交换机接收并转发非拥塞隧道分组时,即,当交换机不执行封装或解封装时,根据外报头98中的L3-IP段102的ECN字段来处理非拥塞隧道分组。
当转发拥塞隧道分组时,外报头98中的L3-IP段102表示底层网络中的任何拥塞。一旦分组被解封装,就可以将L3-IP段102的ECN标记复制到内报头100中的L3-IP段104。
VXLAN上的CNP具有图6中所示的格式。外报头110包括L2-MAC段112和L3-IP段114。内报头116包括L2-MAC段118和L3-IP段120。在构建VXLAN上的CNP时,有必要处理外报头110和内报头116。
在内报头116的情况下,执行步骤78(图3),其中交换内报头100、116的SIP和DIP。分别在L2-MAC段108、118上和L3-IP段104、120上执行交换。
关于外报头110,以与常规RoCEV2拥塞分组的CNP的L2-MAC段66和L3-IP段68相同的方式处理L2-MAC段112和L3-IP段114(图4,步骤78)。
实现细节
CNP生成中的挑战之一是为CNP检索目标QP。
对于可靠连接传输服务,源QP在拥塞分组(或拥塞隧道分组)的分组报头中不可用。可以通过以下选项之一解决此问题:
可以在{目标IP,目标QP}与交换机中的源QP之间保持转换表。这样的表通常存在于NIC中,并且可在其生成CNP时加以利用。有可能在交换机中具有此表;然而,其可能会引起规模问题。此外,中央网络控制器需要了解整个网络才能配置交换机。
替代于使用QP,NIC通过另一字段将CNP映射到拥塞控制上下文。一种典型的解决方案是计算关于以下字段的哈希函数:
(原始分组的)目标IP,(其是CNP分组的SIP);以及
原始分组的目标QP。
该选项要求CNP分组报告该目标QP。由于原始分组的源QP不可用(否则就不存在问题),因此交换机将会在CNP中报告目标QP。
在可靠连接传输服务中,源节点可以使用IP或其他替代项(诸如哈希表)以在分组与其拥塞控制上下文之间建立关联。
常规地,当目标节点生成CNP时,从关于拥塞分组的目标QP的查找表中检索CNP分组的目标QP(其为拥塞分组的源QP)。这被用于可靠传输服务,其中在分组中未表示出源QP。尽管这样的方法可由中间交换机使用,但却比上述选项更难以扩大规模。
本领域技术人员应当理解,本发明并不限于上文具体示出和描述的内容。相反,本发明的范围包括上述各个特征的组合和子组合,以及本领域技术人员在阅读前文描述后所设想到的、不属于现有技术的变化和修改。

Claims (12)

1.一种通信方法,包括以下步骤:
通过网络从源网络接口向目标网络接口发送分组;
在所述网络的中间交换机中接收所述分组之一;
确定所述中间交换机正在经历网络拥塞;
在所述中间交换机中为所接收的分组生成拥塞通知分组;
经由所述网络从所述中间交换机向所述源网络接口传输所述拥塞通知分组;
响应于所述拥塞通知分组,修改从所述源网络接口到所述目标网络接口的分组传输速率;以及
从所述中间交换机向所述目标网络接口转发所接收的分组。
2.根据权利要求1所述的方法,还包括:
在转发所接收的分组之前,将所接收的分组标记为无资格使所述网络的其他中间交换机生成和传输新的拥塞通知分组。
3.根据权利要求1所述的方法,其中所接收的分组是兼容RoCEV2的。
4.根据权利要求1所述的方法,其中所接收的分组是隧道分组。
5.根据权利要求1所述的方法,其中相应地使用源队列对(源QP)和目标队列对(目标QP)来执行发送和接收所述分组,其中所述生成步骤包括通过在所述中间交换机中保持所述目标QP与所述源QP之间的转换表来获得所述源QP。
6.根据权利要求1所述的方法,其中相应地使用源队列对(源QP)和目标队列对(目标QP)来执行发送和接收所述分组,其中所述生成步骤包括计算关于所接收的分组的目标地址和目标QP的哈希函数。
7.一种通信装置,包括:
源网络接口;
目标网络接口,其中所述源网络接口可操作用于通过网络向所述目标网络接口发送分组,并且所述目标网络接口可操作用于接受来自所述源网络接口的所述分组;以及
中间交换机,其在所述网络中接收所述分组之一,所述中间交换机可操作用于:
确定所述中间交换机正在经历网络拥塞;
为所接收的分组生成拥塞通知分组;
经由所述网络向所述源网络接口传输所述拥塞通知分组;以及
向所述目标网络接口转发所接收的分组,
其中响应于所述拥塞通知分组,所述源网络接口可操作用于修改向所述目标网络接口的分组传输速率。
8.根据权利要求7所述的装置,还包括所述网络中的其他中间交换机,其中所述中间交换机可操作用于:
在转发所接收的分组之前,将所接收的分组标记为无资格使所述网络的其他中间交换机生成和传输新的拥塞通知分组。
9.根据权利要求7所述的装置,其中所接收的分组是兼容RoCEV2的。
10.根据权利要求7所述的装置,其中所接收的分组是隧道分组。
11.根据权利要求7所述的装置,其中相应地使用源队列对(源QP)和目标队列对(目标QP)来执行从所述源网络接口发送所述分组和在所述目标网络接口中接受所述分组,其中所述生成步骤包括通过在所述中间交换机中保持所述目标QP与所述源QP之间的转换表来获得所述源QP。
12.根据权利要求7所述的装置,其中相应地使用源队列对(源QP)和目标队列对(目标QP)来执行从所述源网络接口发送所述分组和在所述目标网络接口中接受所述分组,其中所述生成步骤包括计算关于所接收的分组的目标地址和目标QP的哈希函数。
CN202010546605.6A 2019-06-16 2020-06-16 由交换机进行的拥塞通知分组生成 Active CN111800351B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US16/442,508 2019-06-16
US16/442,508 US11005770B2 (en) 2019-06-16 2019-06-16 Listing congestion notification packet generation by switch

Publications (2)

Publication Number Publication Date
CN111800351A true CN111800351A (zh) 2020-10-20
CN111800351B CN111800351B (zh) 2023-10-27

Family

ID=72803353

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010546605.6A Active CN111800351B (zh) 2019-06-16 2020-06-16 由交换机进行的拥塞通知分组生成

Country Status (3)

Country Link
US (1) US11005770B2 (zh)
CN (1) CN111800351B (zh)
DE (1) DE102020207426A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113411264A (zh) * 2021-06-30 2021-09-17 中国工商银行股份有限公司 一种网络队列的监控方法、装置、计算机设备和存储介质
CN115314442A (zh) * 2022-08-08 2022-11-08 北京云脉芯联科技有限公司 拥塞控制和基于Group的限速限窗装置及方法、限速限窗方法

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109391560B (zh) * 2017-08-11 2021-10-22 华为技术有限公司 网络拥塞的通告方法、代理节点及计算机设备
US11153211B2 (en) * 2017-12-09 2021-10-19 Intel Corporation Fast data center congestion response
US20200236052A1 (en) * 2020-03-04 2020-07-23 Arvind Srinivasan Improving end-to-end congestion reaction using adaptive routing and congestion-hint based throttling for ip-routed datacenter networks
US11296987B2 (en) * 2020-04-20 2022-04-05 Hewlett Packard Enterprise Development Lp Congestion management mechanism
US11693800B2 (en) * 2020-07-13 2023-07-04 EMC IP Holding Company LLC Managing IO path bandwidth
US11765237B1 (en) 2022-04-20 2023-09-19 Mellanox Technologies, Ltd. Session-based remote direct memory access

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150029887A1 (en) * 2012-03-09 2015-01-29 British Telecommunications Public Limited Company Signalling congestion
US20170093699A1 (en) * 2015-09-29 2017-03-30 Mellanox Technologies Ltd. Hardware-based congestion control for TCP traffic
CN108307434A (zh) * 2017-01-12 2018-07-20 马维尔以色列(M.I.S.L.)有限公司 用于流控制的方法和设备
CN109391560A (zh) * 2017-08-11 2019-02-26 华为技术有限公司 网络拥塞的通告方法、代理节点及计算机设备
US20190116126A1 (en) * 2016-06-13 2019-04-18 Huawei Technologies Co., Ltd. Network Congestion Control Method, Device, and System
CN109691039A (zh) * 2018-01-16 2019-04-26 华为技术有限公司 一种报文传输的方法及装置

Family Cites Families (90)

* 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
CA2237264A1 (en) * 1998-05-08 1999-11-08 Northern Telecom Limited Receiver based congestion control
US6347337B1 (en) 1999-01-08 2002-02-12 Intel Corporation Credit based flow control scheme over virtual interface architecture for system area networks
US7002980B1 (en) 2000-12-19 2006-02-21 Chiaro Networks, Ltd. System and method for router queue and congestion management
US20020141427A1 (en) 2001-03-29 2002-10-03 Mcalpine Gary L. Method and apparatus for a traffic optimizing multi-stage switch fabric network
JP3892682B2 (ja) 2001-06-18 2007-03-14 株式会社エヌ・ティ・ティ・ドコモ パケット伝送方法、基地局及び移動局
US7212534B2 (en) 2001-07-23 2007-05-01 Broadcom Corporation Flow based congestion control
KR100426535B1 (ko) 2001-12-11 2004-04-08 삼성전자주식회사 무선통신기기 및 그 무선통신방법
JP3925234B2 (ja) 2002-02-18 2007-06-06 ソニー株式会社 データ通信システム、データ通信管理装置、および方法、並びにコンピュータ・プログラム
US7430169B2 (en) 2002-06-03 2008-09-30 International Business Machines Corporation Retro flow control for arriving traffic in computer networks
CA2492504A1 (en) 2002-06-14 2003-12-24 Millenium Biologix Ag Identification of tissue/cell specific marker genes and use thereof
US7225267B2 (en) * 2003-01-27 2007-05-29 Microsoft Corporation Reactive bandwidth control for streaming data
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)
US7346059B1 (en) 2003-09-08 2008-03-18 Cisco Technology, Inc. Header range check hash circuit
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
US20060015639A1 (en) * 2004-07-13 2006-01-19 Taylor Benjamin F Method for managing inter-zone bandwidth in a two-way messaging network
US7724663B2 (en) 2004-09-08 2010-05-25 Telefonaktiebolaget L M Ericsson (Publ) Counter based quality of service (QoS) class upgrade
US7830793B2 (en) 2004-10-22 2010-11-09 Cisco Technology, Inc. Network device architecture for consolidating input/output and reducing latency
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
ATE447281T1 (de) 2006-06-30 2009-11-15 Alcatel Lucent Verfahren zur bereitstellung von einer ressourcenzulassungskontrolle
US7961605B2 (en) 2006-07-31 2011-06-14 International Business Machines Corporation System and method for enabling management of a plurality of messages in a communication network
US8121038B2 (en) * 2007-08-21 2012-02-21 Cisco Technology, Inc. Backward congestion notification
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
US7738454B1 (en) 2008-09-30 2010-06-15 Juniper Networks, Inc. Methods and apparatus related to packet classification based on range values
US20100088437A1 (en) 2008-10-06 2010-04-08 Mellanox Technologies Ltd Infiniband adaptive congestion control adaptive marking rate
JP5652388B2 (ja) * 2009-03-06 2015-01-14 日本電気株式会社 通信レート制御方法、送信装置および通信システム
US8576715B2 (en) 2009-10-26 2013-11-05 Mellanox Technologies Ltd. High-performance adaptive routing
US8982694B2 (en) * 2010-09-01 2015-03-17 Telefonaktiebolaget L M Ericsson (Publ) Localized congestion exposure
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
US8938469B1 (en) 2011-05-11 2015-01-20 Juniper Networks, Inc. Dynamically adjusting hash table capacity
US9225628B2 (en) 2011-05-24 2015-12-29 Mellanox Technologies Ltd. Topology-based consolidation of link state information
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
JP5869135B2 (ja) 2011-09-30 2016-02-24 インテル コーポレイション コプロセッサのためのダイレクトi/oアクセス
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
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
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
US8705349B2 (en) 2011-11-27 2014-04-22 Mellanox Technologies Ltd. Destination-based congestion control
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
US9749413B2 (en) 2012-05-29 2017-08-29 Intel Corporation Peer-to-peer interrupt signaling between devices coupled via interconnects
JP6016262B2 (ja) * 2012-07-31 2016-10-26 日本電気通信システム株式会社 移動端末、制御ノード、パケット転送ノード、及び輻輳制御のための方法
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
US9237111B2 (en) 2013-03-14 2016-01-12 International Business Machines Corporation Credit-based flow control in lossless ethernet networks
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
US20150103667A1 (en) 2013-10-13 2015-04-16 Mellanox Technologies Ltd. Detection of root and victim network congestion
US9769078B2 (en) 2013-11-05 2017-09-19 Cisco Technology, Inc. Dynamic flowlet prioritization
US10778584B2 (en) 2013-11-05 2020-09-15 Cisco Technology, Inc. System and method for multi-path load balancing in network fabrics
US9648148B2 (en) 2013-12-24 2017-05-09 Intel Corporation Method, apparatus, and system for QoS within high performance fabrics
EP3127254B1 (en) 2014-03-31 2019-06-12 Hughes Network Systems, LLC System and method for congestion management for downlink queues of digital processing satellites for differentiated quality-of-service (qos)
US9660914B1 (en) * 2014-05-08 2017-05-23 Google Inc. System and method for providing congestion notification in layer 3 networks
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
CN107005494B (zh) 2014-12-24 2021-03-19 英特尔公司 用于在交换机中缓冲数据的装置和方法
US9762491B2 (en) 2015-03-30 2017-09-12 Mellanox Technologies Tlv Ltd. Dynamic thresholds for congestion control
US9699095B2 (en) 2015-05-21 2017-07-04 Mellanox Technologies Tlv Ltd. Adaptive allocation of headroom in network devices
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
US11088951B2 (en) 2017-01-16 2021-08-10 Intel Corporation Flow classification apparatus, methods, and systems
US10389646B2 (en) 2017-02-15 2019-08-20 Mellanox Technologies Tlv Ltd. Evading congestion spreading for victim flows
US10944660B2 (en) * 2019-02-08 2021-03-09 Intel Corporation Managing congestion in a network

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150029887A1 (en) * 2012-03-09 2015-01-29 British Telecommunications Public Limited Company Signalling congestion
US20170093699A1 (en) * 2015-09-29 2017-03-30 Mellanox Technologies Ltd. Hardware-based congestion control for TCP traffic
US20190116126A1 (en) * 2016-06-13 2019-04-18 Huawei Technologies Co., Ltd. Network Congestion Control Method, Device, and System
CN108307434A (zh) * 2017-01-12 2018-07-20 马维尔以色列(M.I.S.L.)有限公司 用于流控制的方法和设备
CN109391560A (zh) * 2017-08-11 2019-02-26 华为技术有限公司 网络拥塞的通告方法、代理节点及计算机设备
CN109691039A (zh) * 2018-01-16 2019-04-26 华为技术有限公司 一种报文传输的方法及装置

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113411264A (zh) * 2021-06-30 2021-09-17 中国工商银行股份有限公司 一种网络队列的监控方法、装置、计算机设备和存储介质
CN113411264B (zh) * 2021-06-30 2023-03-14 中国工商银行股份有限公司 一种网络队列的监控方法、装置、计算机设备和存储介质
CN115314442A (zh) * 2022-08-08 2022-11-08 北京云脉芯联科技有限公司 拥塞控制和基于Group的限速限窗装置及方法、限速限窗方法
CN115314442B (zh) * 2022-08-08 2023-09-12 北京云脉芯联科技有限公司 拥塞控制和基于Group的限速限窗装置及方法、限速限窗方法

Also Published As

Publication number Publication date
US20200396170A1 (en) 2020-12-17
CN111800351B (zh) 2023-10-27
DE102020207426A1 (de) 2020-12-17
US11005770B2 (en) 2021-05-11

Similar Documents

Publication Publication Date Title
CN111800351B (zh) 由交换机进行的拥塞通知分组生成
US11646967B2 (en) Packet control method and network apparatus
US11115339B2 (en) Network congestion control method, device, and system
US11228534B2 (en) Congestion control method, network device, and network interface controller
CN107204931B (zh) 通信装置和用于通信的方法
CN111788803B (zh) 网络中的流管理
US7706277B2 (en) Selective flow control
US10728156B2 (en) Scalable, low latency, deep buffered switch architecture
US10320686B2 (en) Load balancing eligible packets in response to a policing drop decision
US20190052564A1 (en) Network element with congestion-aware match tables
CN111224888A (zh) 发送报文的方法及报文转发设备
US20160308754A1 (en) Dropping Cells of a Same Packet Sent Among Multiple Paths within a Packet Switching Device
CN114095448A (zh) 一种拥塞流的处理方法及设备
US10749803B1 (en) Enhanced congestion avoidance in network devices
US10778568B2 (en) Switch-enhanced short loop congestion notification for TCP
US20210344782A1 (en) Explicit notification of operative conditions along a network path
US11729100B2 (en) Integrated traffic profile for indicating congestion and packet drop for congestion avoidance
TWI799259B (zh) 電子裝置及其流量控制方法
US11528227B1 (en) Integrated traffic profile for indicating multi-level congestion and packet drop for congestion avoidance
EP3968571A1 (en) Method and apparatus for determining port attribute
EP4131890A1 (en) Scalable e2e network architecture and components to support low latency and high throughput
CN117354253A (zh) 一种网络拥塞通知方法、装置及存储介质
CN117221225A (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
TA01 Transfer of patent application right

Effective date of registration: 20230625

Address after: Israel Yuekeni Mourinho

Applicant after: Mellanox Technologies, Ltd.

Address before: Israel

Applicant before: Mellanox Technologies TLV Ltd.

TA01 Transfer of patent application right
GR01 Patent grant
GR01 Patent grant