CN112787951B - 拥塞控制方法、装置、设备和计算机可读存储介质 - Google Patents
拥塞控制方法、装置、设备和计算机可读存储介质 Download PDFInfo
- Publication number
- CN112787951B CN112787951B CN202010789061.6A CN202010789061A CN112787951B CN 112787951 B CN112787951 B CN 112787951B CN 202010789061 A CN202010789061 A CN 202010789061A CN 112787951 B CN112787951 B CN 112787951B
- Authority
- CN
- China
- Prior art keywords
- message
- information
- delay threshold
- time delay
- forwarding
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 94
- 230000005540 biological transmission Effects 0.000 claims abstract description 20
- 238000012545 processing Methods 0.000 claims description 152
- 230000006870 function Effects 0.000 claims description 87
- 238000004364 calculation method Methods 0.000 claims description 11
- 238000004590 computer program Methods 0.000 claims description 5
- 239000000523 sample Substances 0.000 claims 1
- 238000011144 upstream manufacturing Methods 0.000 description 25
- 230000008569 process Effects 0.000 description 18
- 238000010586 diagram Methods 0.000 description 15
- 238000004458 analytical method Methods 0.000 description 8
- 230000000903 blocking effect Effects 0.000 description 6
- 238000011143 downstream manufacturing Methods 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 6
- 238000007726 management method Methods 0.000 description 6
- 238000013507 mapping Methods 0.000 description 6
- 238000013461 design Methods 0.000 description 4
- 230000009467 reduction Effects 0.000 description 3
- 239000013589 supplement Substances 0.000 description 3
- 230000003139 buffering effect Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- HRULVFRXEOZUMJ-UHFFFAOYSA-K potassium;disodium;2-(4-chloro-2-methylphenoxy)propanoate;methyl-dioxido-oxo-$l^{5}-arsane Chemical compound [Na+].[Na+].[K+].C[As]([O-])([O-])=O.[O-]C(=O)C(C)OC1=CC=C(Cl)C=C1C HRULVFRXEOZUMJ-UHFFFAOYSA-K 0.000 description 2
- 230000007480 spreading Effects 0.000 description 2
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 2
- 241000287828 Gallus gallus Species 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 230000006978 adaptation Effects 0.000 description 1
- 230000002776 aggregation Effects 0.000 description 1
- 238000004220 aggregation Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/16—Threshold monitoring
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0852—Delays
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0852—Delays
- H04L43/0858—One way delays
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/10—Active monitoring, e.g. heartbeat, ping or trace-route
- H04L43/106—Active monitoring, e.g. heartbeat, ping or trace-route using time related information in packets, e.g. by adding timestamps
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/11—Identifying congestion
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/28—Flow control; Congestion control in relation to timing considerations
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/28—Flow control; Congestion control in relation to timing considerations
- H04L47/283—Flow control; Congestion control in relation to timing considerations in response to processing delays, e.g. caused by jitter or round trip time [RTT]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/31—Flow control; Congestion control by tagging of packets, e.g. using discard eligibility [DE] bits
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/32—Flow control; Congestion control by discarding or delaying data units, e.g. packets or frames
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/33—Flow control; Congestion control using forward notification
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/30—Peripheral units, e.g. input or output ports
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Environmental & Geological Engineering (AREA)
- Health & Medical Sciences (AREA)
- Cardiology (AREA)
- General Health & Medical Sciences (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请提出一种拥塞控制方法、装置、设备和计算机可读存储介质,该方法包括:根据所接收报文的接收时间戳信息和发送时间戳信息,计算报文在本节点设备内部的转发时延值;若报文在本节点设备内部的转发时延值大于预设的报文的预设时延门限值,则对报文进行拥塞通知标记,以通过拥塞通知标记对报文进行拥塞控制。本申请的技术方案,可通过网络节点内部完整转发时延来进行拥塞通知标记,保障低时延业务在网络传输中的时延要求。
Description
技术领域
本申请涉及通信技术领域,具体涉及一种拥塞控制方法、装置、设备和计算机可读存储介质。
背景技术
数据中心在线密集服务、深度学习、高频交易等应用对传统以太网提出了挑战。传统以太网络是有损网络,会产生局部拥塞,从而导致延迟、丢包、网络吞吐率下降等性能损失,影响客户体验。因此,数据中心的低时延业务需要无损网络的支撑,并对无损网络中的报文传输进行拥塞控制。
发明内容
本申请提供一种拥塞控制方法、装置、设备和计算机可读存储介质。
本申请实施例提供一种拥塞控制方法,包括:根据所接收报文的接收时间戳信息和发送时间戳信息,计算报文在本节点设备内部的转发时延值;若报文在本节点设备内部的转发时延值大于预设的报文的预设时延门限值,则对报文进行拥塞通知标记,以通过拥塞通知标记对报文进行拥塞控制。
本申请实施例提供一种拥塞控制装置,包括:时延门限计算模块,用于根据所接收报文的接收时间戳信息和发送时间戳信息,计算报文在本节点设备内部的转发时延值;拥塞通知标记携带模块,用于若报文在本节点设备内部的转发时延值大于预设的报文的预设时延门限值,则对报文进行拥塞通知标记,以通过拥塞通知标记对报文进行拥塞控制。
本申请实施例提供一种网络节点设备,包括:一个或多个处理器;存储器,其上存储有一个或多个程序,当一个或多个程序被一个或多个处理器执行,使得一个或多个处理器实现本申请实施例中的任意一种拥塞控制方法。
本申请实施例提供了一种计算机可读存储介质,存储介质存储有计算机程序,计算机程序被处理器执行时实现本申请实施例中的任意一种拥塞控制方法。
根据本申请实施例的拥塞控制方法、装置、设备和计算机可读存储介质,可以根据报文的接收时间戳和报文的发送时间戳,计算报文在该网络节点内部的完整转发时延,该转发时延大于预设时延门限值时,对报文进行拥塞通知标记。本申请实施例通过网络节点内部完整转发时延来进行拥塞通知标记,可以保障低时延业务在网络传输中的时延要求。
关于本申请的以上实施例和其他方面以及其实现方式,在附图说明、具体实施方式和权利要求中提供更多说明。
附图说明
图1示出本申请实施例的拥塞控制方法的流程示意图。
图2示出本申请实施例的集中式转发网络节点设备的功能单元和关系示意图。
图3示出本申请实施例的分布式转发网络节点设备的功能单元和关系示意图。
图4示出本申请实施例的根据入接口进行拥塞通知标记的流程示意图。
图5示出本申请实施例的根据出端口进行拥塞通知标记的流程示意图。
图6示出本申请实施例的根据入接口和优先级进行拥塞通知标记的流程示意图。
图7示出本申请实施例的根据出端口和优先级进行拥塞通知标记的流程示意图。
图8示出本申请实施例的根据访问控制列表进行拥塞通知标记的流程示意图。
图9示出本申请实施例中能够实现在物理接口获取时间戳信息和进行拥塞通知标记的网络节点结构示意图。
图10示出本申请一实施例提供的拥塞控制装置的结构示意图。
图11示出能够实现根据本申请实施例的方法和装置的计算设备的示例性硬件架构的结构图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚明白,下文中将结合附图对本申请的实施例进行详细说明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。
在本申请实施例中,数据中心低延时业务需要无损网络的支撑,而显性拥塞通知(Explicit Congestion Notification,ECN)和基于优先级的流量控制(Priority-basedFlow Control,PFC)技术作为避免拥塞的重要手段经常应用于无损网络的拥塞控制中。
ECN是征求评议文件(Request For Comments,RFC)3168中,将互联网协议(Internet Protocol,IP)头中的服务条款(Terms of Service,TOS)保留位,重新定义为ECN字段,当前允许通过以太网使用远程直接内存访问(RDMA)的网络协议(RDMA overConverged Ethernet,ROCE)网络,利用ECN标记技术实现网络节点的拥塞控制。
对于使能ECN标记功能的网络节点,通常会在出口队列拥塞时对具备ECN能力的报文进行ECN标记,标记为拥塞的报文达目的端后,目的端会反馈拥塞信息到报文发送的源端,报文发送的源端对拥塞流进行降速处理。降速的目的一方面可以避免因网络节点出现拥塞丢包,另一方面对于时延敏感业务也通过降速避免了本地缓存大量报文从而带来更大的传输时延。在网络节点上,传统的ECN标记方法通常是报文在入队或出队操作时,根据出口队列拥塞程度来决定是否进行ECN标记。若队列深度超过了设置的ECN标记门限,则对报文进行ECN标记,否则对报文不进行ECN标记。
上述标记方式是把报文在本网络节点的拥塞简化为用出口队列的拥塞来表示的方法。然而网络节点对于一个报文的完整转发流程,会经过入端口接收报文、入口缓存、上行转发处理、上行流量管理、交换网、下行转发处理、下行流量管理等多个阶段。出口队列的拥塞程度只是反应了流量管理阶段报文在出口队列的拥塞状况,并没有完整反应报文在本网络节点从入端口接收报文到出端口发送的内部完整的拥塞情况。
实际应用场景中,报文在内部转发过程中会经过多处资源的竞争,这些资源包括入口缓存资源、转发查表资源、报文上行流量管理器TM(Traffic Manager)资源、交换网转发及下行TM资源等,这些资源的竞争都可能会引起报文的拥塞及转发时延增加,因此只通过出口队列的拥塞程度来进行ECN标记具有局限性,不能完整反应报文在整个网络节点因资源竞争导致的时延。在无损网络的应用中存在的大量时延敏感业务,对这些业务低时延的保障不仅需要感知出口队列的拥塞,同时还需要感知整个网络节点转发的时延来进行相应的拥塞控制,从避免网络节点时延偏大带来较差的客户体验。
在一些实施例中,PFC技术也是无损网络经常使用的拥塞控制技术,但是利用PFC技术会引起队头阻塞(Head-of-line blocking,HOL)。同一入口进来的报文可能转发到多个出口,包含拥塞出口和非拥塞的出口。但是入口的PFC流控会导致本入口同一优先级的所有流量都停止发送,因此转发到其他非拥塞出口的流也被阻塞了,从而引起队头阻塞,严重时还会导致拥塞蔓延,网络吞吐量急剧下降。
本申请实施例提供一种拥塞控制方法,通过计算网络节点的报文完整转发时延并基于时延对报文进行ECN标记,可以保障低时延业务在网络传输中的时延要求,并对PFC的队头阻塞进行改善。
图1示出本申请实施例的拥塞控制方法的流程示意图。如图1所示,本申请实施例中的拥塞控制方法可以包括以下步骤。
S110,根据所接收报文的接收时间戳信息和发送时间戳信息,计算报文在本节点设备内部的转发时延值。
S120,若报文在本节点设备内部的转发时延值大于预设的报文的预设时延门限值,则对报文进行拥塞通知标记,以通过拥塞通知标记对报文进行拥塞控制。
根据本申请实施例的拥塞控制方法,可以根据在报文接收阶段获取的接收时间戳和在报文发送之前获取的发送时间戳,计算报文在该网络节点内部的完整转发时延,该转发时延大于预先配置的预设时延门限值时,对报文进行拥塞通知标记。本申请实施例通过检测网络节点内部完整转发时延来进行拥塞通知标记,可以保障低时延业务在网络传输中的时延要求。
在一个实施例中,在预定的报文接收阶段,方法还包括:S140,若确定无需对报文开启拥塞通知标记功能,则配置报文的第二时间戳标记;S141,在发送报文之前,根据第二时间戳标记确定拥塞通知标记功能未开启,并按照预定转发方式转发报文,其中,第二时间戳标记携带于报文的指定位置或作为报文的随路信息进行传输。
在一个实施例中,本申请实施例的拥塞控制方法可以应用与网络节点设备,该网络节点设备可以是集中式转发网络节点设备,或者是分布式转发网络节点设备。下面通过图2和图3,分别介绍本申请实施例的集中式转发网络节点设备和分布式转发网络节点设备的功能单元和关系示意图。
图2示出本申请实施例的集中式转发网络节点设备的功能单元和关系示意图。如图2所示,集中式转发网络节点设备的功能单元可以包括:入端口10、上行ECN处理模块11、报文上行处理模块12、流量管理器13、报文下行处理14、下行ECN处理模块15和出端口16。
其中,入端口10和出端口16可以是物理端口(Physical,PHY),上行ECN处理模块11和报文上行处理模块12,形成集中式转发网络节点设备对报文进行处理的上行流水线,报文下行处理14和下行ECN处理模块15,形成集中式转发网络节点设备对报文进行处理的下行流水线。
在一个实施例中,在集中式转发网络节点设备中,报文接收阶段包括从本节点设备的入端口10到本节点设备的转发芯片之间进行报文处理的任一阶段,以及,发送报文之前的报文处理阶段,包括从本节点设备的转发芯片到本节点设备的出端口16之间进行报文处理的任一阶段。
在图2中,本节点设备的转发芯片对报文的上行处理,可以参见图2中,上行ECN处理模块11和报文上行处理模块12对报文的处理,本节点设备的转发芯片对报文的下行处理,可以参见图1中,报文下行处理14和下行ECN处理模块15对报文的处理。
通过图2可知,入端口10可以用于进行报文接收和报文缓存,上行ECN处理模块11可以用于获取本申请实施例中的时延门限模板,报文上行处理模块12可以用于进行报文的上行转发处理,流量管理器13用于进行流量管理,报文下行处理14可以用于报文的下行转发处理,下行ECN处理模块15用于获取本申请实施例中的时延门限模板,以及出端口16用于进行报文发送,从而实现集中式转发节点设备对于一个报文的完整转发流程。
图3示出本申请实施例的分布式转发网络节点设备的功能单元和关系示意图。如图3所示,分布式转发网络节点设备可以包括:入口芯片端口(简称入端口)20、入口芯片上行ECN处理模块21、入口芯片上行报文处理22、入口芯片上行流量管理器23、交换网模块24、出口芯片下行报文处理25、出口芯片下行流量管理器26、出口芯片下行ECN处理模块27和出口芯片端口(简称出端口)28。其中,入口芯片端口20和出口芯片端口28可以是物理端口PHY。
在一个实施例中,在分布式转发网络节点设备中,报文接收阶段包括从本节点设备的入端口20到本节点设备的上行转发芯片之间进行报文处理的任一阶段,以及,发送报文之前的报文处理阶段,包括从本节点设备的下行转发芯片到本节点设备的出端口28之间进行报文处理的任一阶段。
在图3中,本节点设备的上行转发芯片对报文的上行处理,可以参见图3中,入口芯片上行ECN处理模块21、入口芯片上行报文处理22和入口芯片上行流量管理器23对报文的处理,本节点设备的转发芯片对报文的下行处理,可以参见图3中,出口芯片下行报文处理25、出口芯片下行流量管理器26和出口芯片下行ECN处理模块27对报文的处理。
通过图3可知,入口芯片端口(简称入端口)20用于进行报文接收和报文缓存,入口芯片上行ECN处理模块21可以用于获取本申请实施例中的时延门限模板,入口芯片上行报文处理22可以用于进行报文的上行转发处理,入口芯片上行流量管理器23用于进行上行流量管理,交换网模块24用于对报文进行交换网转发,出口芯片下行报文处理25用于进行报文的下行转发处理,出口芯片下行流量管理器26用于进行下行流量管理,出口芯片下行ECN处理模块27用于获取本申请实施例中的时延门限模板,以及,出口芯片端口(简称出端口)28用于进行报文发送,从而实现分布式转发节点设备对于一个报文的完整转发流程。
在本申请实施例中,网络节点设备从入端口接收报文,在报文接收阶段根据预定的配置信息识别能够开启时延ECN标记功能的数据流,并对该数据流对应的报文进行时延ECN标记并打上***时间戳,该时间戳作为报文接收时间戳。
在一个实施例中,在上述步骤S110之前,该方法还可以包括:S10,在预定的报文接收阶段,根据接收到的报文所对应的流匹配信息,判断是否需要对报文开启拥塞通知标记功能;S11,若判定需要开启拥塞通知标记功能,则获取报文的接收时间戳信息,并配置报文的时延门限模板,时延门限模板中包含预设时延门限值。
在步骤S10,流匹配信息项包括如下项中的至少一项:入端口流量、出端口流量、入端口、出端口、报文优先级和报文特征信息。在步骤S11,第一时间戳标记用于指示拥塞通知标记功能已开启,时延门限模板号用于索引预先配置的包含预先配置的时延门限值的时延门限模板。
通过上述实施例的描述可知,在本申请实施例中,通过预先配置的流匹配信息项,可以对不同的数据流开启时延标记功能,并为其配置相应的时延门限模板。流匹配信息项,可以基于全局、端口、端口和优先级、流特征等粒度来进行识别和匹配。
在一个实施例中,在步骤S11之后,拥塞控制方法还可以包括:S12,确定报文的第一时间戳标记和对应的时延门限模板号,其中,第一时间戳标记用于指示拥塞通知标记功能已开启,时延门限模板号用于索引所配置的时延门限模板。
在该实施例中,S110具体可以包括:在发送报文之前,检测到报文的第一时间戳标记时,计算接收时间戳信息和获取的发送时间戳信息的差值,得到报文的转发时延值,并根据报文对应的时延门限模板号获取报文的预设时延门限值。
其中,第一时间戳标记、接收时间戳信息和对应的时延门限模板号携带于报文的指定位置或作为报文的随路信息进行传输。
在本申请实施例的拥塞控制方法中,在根据流匹配信息项确定需要开启拥塞通知标记功能时,可以根据在报文接收阶段获取的接收时间戳和报文发送之前获取的发送时间戳,计算报文在该网络节点内部的完整转发时延,该转发时延大于预先配置的预设时延门限值时,对报文进行拥塞通知标记,从而通过检测网络节点内部完整转发时延来进行拥塞通知标记,保障低时延业务在网络传输中的时延要求。
在一个实施例中,接收时间戳的获取位置可以是报文从入端口PHY到流量管理器的任何环节,在这里不做具体限制。
在一个实施例中,可以基于流获取对应的时延门限模板。例如,在上述图2的上行ECN处理模块11和图3中的入口芯片上行ECN处理模块21中,可用于基于流获取对应的时延门限模板。
在一个实施例中,若本节点设备为集中式转发节点设备,则在步骤110之后,和步骤S120之前,该拥塞控制方法还包括:S21,在本节点设备内部转发报文,并发送报文至本节点设备的转发芯片。
在一个实施例中,若本节点设备为分布式转发节点设备,则在步骤110之后,和步骤S120之前,该拥塞控制方法还包括:S22,在本节点设备内部将报文经交换网转发至本节点设备的下行转发芯片。
在一个实施例中,报文在经过交换网时,第一时间戳标记、接收时间戳信息和对应的时延门限模板号的报文携带于报文的指定位置,指定位置为报文内部、或与交换网对应的附加报文头部中。也就是说,第一时间戳标记、接收时间戳信息和对应的时延门限模板号,可以携带于报文内部,或携带于报文的与交换网对应的附加报文头部中。
在本申请实施例中,网络节点设备内部在对报文转发过程中,时间戳标记、接收时间戳信息及时延门限模板号随报文一起在网络节点内部传送。
如果是集中式设备,参见图2中,报文下行处理14和下行ECN处理模块15对报文的处理,以上信息随报文转发到本网络节点设备的转发芯片进行下行处理。
如果是分布式设备,参见图3中,出口芯片下行报文处理25、出口芯片下行流量管理器26、出口芯片下行ECN处理模块27对报文的处理,以上信息随包先经过交换网转发后传送到本网络节点的下行转发芯片处理。
在该实施例中,报文携带上述三个信息在网络节点内部转发。对于集中式转发的网络节点,上述三个信息(第一时间戳标记、接收时间戳信息和对应的时延门限模板号)随报文一起经过上行流水线的上行处理模块后到达及下行流水线的下行处理模块;对于分布式转发架构的网络节点,上述三个信息需要随报文经过交换网模块,经过交换网时,上述三个信息可以选择在报文内部携带,也可以选择在报文经过交换网的附加头部携带,在此不做限制。报文经过交换网后到达出口芯片的下行处理模块。
在本申请实施例中,网络节点设备在报文从出口发送出去之前,例如选择转发芯片报文处理下行流水线到出端口PHY的任意阶段,可以获取***时间戳,作为报文发送时间戳。
作为示例,若本网络节点设备为集中式设备,图2中的下行ECN处理模块15,可以用于通过计算接收时间戳和发送时间戳的差值获取报文的转发时延,并通过时延配置模板获取时延门限,当转发时延大于时延门限模板配置的门限值时,对报文进行ECN标记。
作为示例,若本网络节点设备为分布式设备,图3中的出口芯片下行ECN处理模块27,可以用于通过计算接收时间戳和发送时间戳的差值获取报文的转发时延,并通过时延配置模板获取时延门限,当转发时延大于时延门限模板配置的门限值时,对报文进行ECN标记。
通过本申请上述实施例的描述可知,本申请实施例的拥塞控制方法,可以通过检测网络节点内部完整转发时延来进行ECN标记,从而保障了低时延业务在网络传输中的时延要求。
在本申请实施例中,图2中的上行ECN处理模块11与图3中的入口芯片上行ECN处理模块可以实现相同或等同的功能,图2中的报文上行处理模块12和图3中的入口芯片上行报文处理模块可以实现相同或等同的功能,图2中的报文下行处理模块14与图3中的出口芯片下行报文处理模块25可以实现相同或等同的功能,图2中的下行ECN处理模块与图3中的出口芯片下行ECN处理模块27可以实现相同或等同的功能。因此,为了描述方便,在下述实施例的描述中,当以集中式转发网络节点中的模块为例描述对应的报文处理过程时,分布式转发网络节点中的相应模块具有相同或等同的功能;同样,当以分布式转发网络节点中的模块为例描述对应的报文处理过程时,集中式转发网络节点中的相应模块具有相同或等同的功能,本申请实施例不再赘述。
图4示出本申请实施例的根据入接口进行拥塞通知标记的流程示意图。如图4所示,在一个实施例中,根据入接口进行拥塞通知标记的过程具体可以包括如下步骤。
S41,入端口接收报文。
S42,入端口是否使能基于时延的ECN标记功能。
在该实施例中,用户可以选择业务编排器、控制器、网管及命令行等方式之一来对网络节点入接口开启时延ECN标记功能并为其配置相应的时延门限模板,配置模板中的主要参数是时延门限值。ECN标记功能开启及时延门限模板相关配置信息可以记录在接口属性表或其他表项,具体不做限定。
S43,若未使能基于时延的ECN标记功能,则按照预定流程转发报文。
在该步骤中,若入端口未使能ECN标记功能,按照原有的预定流程正常转发报文即可。
S44,若已使能基于时延的ECN标记功能,则识别入口流量,并进行ECN时间戳标记,获取接收时间戳。
S45,报文携带ECN时间戳标记、接收时间戳信息和时延门限模板号到下行处理模块,下行处理模块解析ECN时间戳标记和接收时间戳信息。
S46,下行ECN处理模块获取发送时间戳,进行时延值的计算,根据计算结果对报文进行ECN标记。
在本申请实施例中,网络节点设备识别入接口接收到的报文,被识别的报文例如在上行ECN处理模块11需要被打上三个信息,一个信息为ECN时间戳标记第二个信息为具体的入口接收时间戳信息,第三个信息为时延门限模板号。其中ECN时间戳标记的作用是表示此报文被ECN标记功能打上了接收时间戳;时延门限模板号用来索引时延门限模板,不同的时延门限模板中保存着为不同时延需求业务配置的时延门限值。本申请实施例中的ECN时间戳标记可以用1个位(bit)或多个bit来表示,本申请实施例不做限定。
以集中式转发网络节点为例,通过携带的ECN时间戳标记,下行ECN处理模块15可以在识别ECN时间戳标记后,继续获取发送时间戳且进行时延计算,并和时延门限模板索引到的时延门限模板获取时延门限值比较,从而决策是否进行ECN标记。
上述三个信息的携带可以是选择携带在报文中的任何位置,也可以是不携带于报文中而选择作为报文的随路信息传输的方式。本申请对采用哪种方式不做限定,两种方式都在本专利的保护范围之内。
继续以集中式转发网络节点为例,下行处理模块14可以负责报文的下行转发处理,本申请利用下行处理模块14的报文解析功能,可以用于完成接收时间戳标记、时间戳信息及时延门限模板的解析。解析出来的三个信息为下行ECN处理模块所用。需要说明的是这三个信息的解析也可以放在后面下行ECN处理模块15来解析,而不是必须在下行处理模块解析。具体的报文解析位置,本专利不做具体限定。
S46,下行ECN处理模块获取发送时间戳进行时延值的计算,根据计算结果对报文进行ECN标记。
在该步骤中,下行ECN处理模块15,在获取到下行处理模块14或本模块解析出来的时间戳标记、时间戳信息及时延门限模板。判断时间戳标记是否有效,若时间戳标记有效,说明报文携带接收时间戳并需要进行ECN标记的逻辑处理,则进一步获取时间戳信息。若时间戳标记为无效值,则说明此报文不需要进行基于时延的ECN标记处理。
作为示例,时间戳标记被置位或取值为第一预定值,表示报文需要使用拥塞通知标记功能,即时间戳标记有效,时间戳标记未被置位或取值为第二预定值,表示报文不需要使用拥塞通知标记功能,即时间戳标记无效。在该实施例中,可以将时间戳标记被置位或取值为第一预定值,作为第一时间戳标记,时间戳标记未被置位或取值为第二预定值,作为第二时间戳标记。其中,第二预定值与第一预定值不相同。
在该实施例中,下行ECN处理模块15经过时间戳标记判断后,对于需要基于时延ECN标记的报文,下行ECN处理模块继续获取当前***时间戳作为报文发送时间戳,并计算发送时间戳和接收时间戳的差值。同时下行ECN处理模块15可以根据时延门限模板查表获取ECN时延门限。若计算的时间戳差值超过时延门限模板预设的时延门限,则对报文进行ECN标记。
在图4所示的实施例中,本申请实施例中预设的流匹配信息为入端口;上述步骤S10具体可以包括如下步骤。
S301,若报文是本节点设备从预定的入端口接收的报文,且本节点设备的入端口流量为无损业务流量,则判定需要对报文开启拥塞通知标记功能。
在一个实施例中,若所接收的报文是本节点设备从预定的入端口接收的报文,但本节点设备的入端口流量非无损业务流量;或者,本节点设备的入端口流量为无损业务流量,但所接收的报文是本节点设备从预定的入端口以外的其他端口接收的报文,则可以判定无需对报文开启拥塞通知标记功能。
在该实施例中,上述步骤S11中配置报文的时延门限模板的步骤,具体可以包括:S302,将报文承载的时延需求业务所对应的时延门限模板,作为报文的时延门限模板,其中,不同的时延需求业务预先设置有不同的时延门限模板。
在一个实施例中,步骤S301中的入端口(或入接口),例如可以是物理端口、LAG端口、及各种逻辑端口等,在此不***腿限定。需要说明的是,基于入接口开启时延ECN标记功能的具体含义是:对本入接口的流使能基于时延进行ECN标记功能,并不是说在入接口进行ECN标记,ECN的标记动作都是在报文的下行处理流程中实施。
在该实施例中,如果已知某入接口流量为对丢包和时延敏感的无损业务流量时,可以在此入接口开启基于时延的ECN标记使能,从而达到本入接口流量的转发低时延的目的,报文的目的端收到带有ECN标记的报文后,发送流控信息通知发送端对流进行降速。
图5示出本申请实施例的根据出端口进行拥塞通知标记的流程示意图。
在本申请实施例中,多对一的聚合(Incast)流量是数据中心高度并行化的云应用产生的一种现象,Incast 具体指的是在高带宽、低延时、有限缓冲区的数据中心环境中,当多个服务器同时响应客户端请求并同时向客户端发送数据时,在连接客户端的网络节点的出口会发生拥塞。这也已经被证明是引起数据中心大部分丢包或时延增加的原因。基于上述场景,在数据中心leaf节点连接客户端的服务器的出口配置基于时延的ECN标记功能,从而有效缓解incast引起的丢包或时延增加。
如图5所示,在一个实施例中,根据出端口进行拥塞通知标记的过程具体可以包括如下步骤。
S51,入端口接收报文。
S52,查报文转发表获取出端口号。
在该步骤中,络节点收到报文后,在上行流水线通过转发表查找获取出端口号。
S53,查预设的第一ECN标记匹配表。
在该步骤中,配置信息可以记录在第一ECN标记匹配表中,在第一ECN标记匹配表中中,查表关键字为出端口号,查表结果为时延门限模板。具体表的存储和查找形式不做限定,可以是访问控制列表(Access Control Lists,ACL)表项,也可以是其他类型内核内存(Random Access Memory,RAM)表等。
S54,判断查表结果是否命中。
S55,若未命中,则按照预定流程转发报文。
S56,若命中,则对报文进行ECN时间戳标记,获取接收时间戳,以及查ECN标记匹配表得到时延门限模板。
通过上述步骤S54-S56,在上行流水线获取到出端口号后,上行ECN处理模块11以查转发表获取的报文出端口号作为关键字继续查找第一ECN标记匹配表。如果未命中,则说明此报文不需要进行出口ECN标记。如果命中则从查找结果中获取时延门限模板号,同时对报文设置ECN时间戳标记,同时获取***时间戳作为报文接收时间戳。至此报文在上行需要打上的三个信息已经完全获取到。
S57,报文携带ECN时间戳标记、接收时间戳信息和时延门限模板号到下行处理模块,下行处理模块解析ECN时间戳标记和接收时间戳信息。
在该步骤中,对ECN时间戳标记和接收时间戳信息的解析可以参照结合图4描述的步骤S45,本实施例不再赘述。
S58,下行ECN处理模块获取发送时间戳进行时延值的计算,根据计算结果对报文进行ECN标记。
在该实施例中,报文可以携带三个信息在网络节点内部转发。三个信息随报文在集中式和分布式架构的网络节点的转发设计可以参考上述结合图2和图3描述的网络节点设备内部在对报文转发过程,本申请实施例不再赘述。
在该步骤中,报文下行处理模块14可以负责完成接收时间戳标记、时间戳信息及时延门限模板的解析,下行ECN处理模块15负责判断接收时间戳标记,获取发送时间戳,计算报文转发时延并根据时延和预设门限比较来决定是否对报文进行ECN标记。对ECN时间戳标记和接收时间戳信息的解析可以参照结合图4描述的步骤S45,本实施例不再赘述。
在图5所示的实施例中,流匹配信息为出端口;上述步骤S10具体可以包括如下步骤。S311,若报文是本节点设备作为预定服务器接收的报文,且预定服务器的出端口用于发送预定数据中心网络中的多对一Incast流量数据,则通过查找预设的报文转发表确定报文的出端口号;S312,若在预设的第一拥塞通知标记匹配表中,查找到与出端口号对应的时延门限模板,则判定需要对报文开启拥塞通知标记功能。
在该实施例中,上述步骤S11中配置报文需要携带的时延门限模板号的步骤,具体可以包括:S314,将查找到的与出端口号对应的时延门限模板号,作为需要携带的时延门限模板号。
在一个实施例中,若在预设的第一拥塞通知标记匹配表中,未查找到与出端口号对应的时延门限模板,则可以判定无需对报文开启拥塞通知标记功能。
根据本申请实施例的拥塞控制方法,报文的目的端收到带有ECN标记的报文后,发送流控信息通知发送端对流进行降速。
在一个实施例中,在上述步骤S11中配置报文需要携带的时延门限模板号时,方法还包括:S315,设置需要携带的时延门限模板号为空值,并在确定报文已开启拥塞通知标记功能之后,以及在发送报文之前,从预先配置的下行出端口属性表中获取与出端口号对应的时延门限模板号。
在一个实施例中,可以根据报文的第一时间戳标记确定拥塞通知标记功能已开启。
在该实施例中,存放时延门限的时延门限模板也可以在下行处理模块从出接口属性表获取。在下行出接口属性表获取时延门限模板方法的优势就是报文从上行流水转发到下行流水只需要携带接收时间戳标记和时间戳信息,不需要携带时延门限模板,从而降低了附加信息对交换网有效带宽的占用,提升了交换网加速比。具体是通过上行获取时延门限模板携带到下行处理模块、还是采用下行处理模块直接获取时延门限模板,本专利不做限定。
图6示出本申请实施例的根据入接口和优先级进行拥塞通知标记的流程示意图。
在本申请实施例中,PFC是无损网络中经常使用的流控技术,PFC实现了基于入口和报文优先级的流控,这种流控是在发生拥塞的节点向上游节点的反压,缺点是会引起队头阻塞。也就是说,针对PFC并未考虑出口的拥塞情况,并对转发到未拥塞出口的报文也进行了反压处理的明显缺陷,本申请实施例基于上述PFC的应用场景,在数据中心网络节点开启基于入口和报文优先级的时延ECN标记功能。
如图6所示,在一个实施例中,根据入接口和优先级进行拥塞通知标记的过程具体可以包括如下步骤。
S61,入端口接收报文。
S62,获取入端口号和报文优先级。
在该步骤中,网络节点设备收到报文后,在上行流水会获取报文的优先级。作为示例,优先级可以是以太网头中的802.1p字段映射获得,也可以是IP头中的差分服务代码点(Differentiated Services Code Point,DSCP)字段映射获得,或者是通过其他流分类手段映射获得,在此不做限制。
S63,查预设的第二ECN标记匹配表。
在该步骤中,用户可以选择业务编排器、控制器、网管及命令行等方式之一来对网络节点开启基于入口和优先级的时延ECN标记功能并配置时延门限模板,配置模板中的主要参数是时延的门限值。配置信息可以记录在第二ECN标记匹配表中。在第二ECN标记匹配表中,查表关键字为入端口号+报文优先级,查表结果为时延门限模板。具体表的存储和查找形式不做限定,可以是ACL表项,也可以是其他类型RAM表等。
S64,判断查表结果是否命中。
S65,若未命中,则按照预定流程转发报文。
S66,若命中,则对报文进行ECN时间戳标记,获取接收时间戳,以及查ECN标记匹配表得到时延门限模板号。
通过上述步骤S64-S66,上行ECN处理模块11以入端口号和报文优先级作为关键字继续查找第二ECN标记匹配表。如果未命中,则说明不需要进行入口和报文优先级的ECN标记。如果命中则从查找结果中获取时延门限模板号,同时对报文设置ECN时间戳标记,同时获取***时间戳作为报文接收时间戳。至此报文在入向需要打上的三个信息已经完全获取到。
在该实施例中,报文可以携带三个信息在网络节点内部转发。三个信息随报文在集中式和分布式架构的网络节点的转发设计可以参考上述结合图2和图3描述的网络节点设备内部在对报文转发过程,本申请实施例不再赘述。
S67,报文携带ECN时间戳标记、接收时间戳信息和时延门限模板号到下行处理模块,下行处理模块解析ECN时间戳标记和接收时间戳信息。
步骤S67中对ECN时间戳标记和接收时间戳信息的解析可以参照结合图4描述的步骤S45,本实施例不再赘述。
S68,下行ECN处理模块获取发送时间戳进行时延值的计算,根据计算结果对报文进行ECN标记。
在该步骤中,下行ECN处理模块15负责判断接收时间戳标记,获取发送时间戳,计算报文转发时延并根据时延和预设门限比较来决定是否对报文进行ECN标记,处理流程请参考结合图4描述的实施例中的步骤S46,本实施例不再赘述。
在该实施例中,报文的目的端收到带有ECN标记的报文后,发送流控信息通知发送端对流进行降速。
在图6所示的实施例中,流匹配信息为入端口和报文优先级;上述步骤S10具体可以包括如下步骤。
S321,若报文是本节点设备从预定的入端口接收的具有优先级信息的报文,且本节点设备的入端口流量为无损业务流量,且在预设的第二拥塞通知标记匹配表中,查找到与报文的入端口号和优先级信息对应的时延门限模块号时,判定需要对报文开启拥塞通知标记功能;S322,若查找到与入端口号和优先级信息对应的时延门限模块号,则判定需要对报文开启拥塞通知标记功能。
在该实施例中,上述步骤S11中配置报文的时延门限模板的步骤,具体可以包括:S323,将查找到的与入端口号和优先级信息对应的时延门限模块,作为报文的时延门限模板。
本申请实施例中,基于时延的ECN标记功能是考虑内部完整的转发延时,对于未拥塞出口的报文,因为在入向流量管理器TM和出向流量管理器TM都不会拥塞引起时延增加,因此未拥塞出口的报文时延不会超过预设门限,因此也不会进行ECN标记;只有出接口是拥塞出口的报文因为转发时延会超过预设门限因此会被进行ECN标记。报文的目的端只对ECN标记的流通知其发送端降速,不会影响非拥塞流,因此有效改善了PFC的队头阻塞和拥塞蔓延。
图7示出本申请实施例的根据出端口和优先级进行拥塞通知标记的流程示意图。如图7所示,在一个实施例中,普通的ECN通知标记功能正是基于出口和报文优先级来开启的,但是它只是根据出口队列的拥塞状况来决定是否进行ECN标记。而本申请的基于内部时延的ECN标记也可以基于出口和报文优先级开启,但是它体现的是转发节点内部完整的拥塞状况。本实施例基于上述场景,在网络节点基于出口和优先级来配置时延ECN标记功能。
如图7所示,根据出端口和优先级进行拥塞通知标记的过程具体可以包括如下步骤。
S71,入端口接收报文。
S72,获取出端口号和报文优先级。
在该步骤中,网络节点收到报文后,在上行流水线通过转发表查找获取出端口号。同时在上行流水会获取报文的优先级,优先级可以是以太网头中的802.1p字段映射获得,也可以是IP头中的DSCP映射获得,或者是通过其他流分类手段映射获得,在此不做限制。
S73,查预设的第三ECN标记匹配表。
在该步骤中,用户可以选择业务编排器、控制器、网管及命令行等方式之一来对网络节点基于出口+优先级来开启时延ECN标记功能并配置时延门限模板,配置模板中的主要参数是时延的门限值。配置信息可以记录在第三ECN标记匹配表中,在第三ECN标记匹配表中,查表关键字为出端口号和报文优先级,查表结果为时延门限模板。具体表的存储和查找形式不做限定,可以是ACL表项,也可以是其他类型RAM表等。
S74,判断查表结果是否命中。
S75,若未命中,则按照预定流程转发报文。
S76,若命中,则对报文进行ECN时间戳标记,获取接收时间戳,以及查ECN标记匹配表得到时延门限模板。
在上述步骤S74-S76,在上行流水线获取到出端口号及报文优先级后,上行ECN处理模块12以出端口号和报文优先级作为关键字继续查找第三ECN标记匹配表。如果未命中,则说明不需要进行ECN标记。如果命中则从查找结果中获取时延门限模板号,同时对报文设置ECN时间戳标记,同时获取***时间戳作为报文接收时间戳。至此报文在入向需要打上的三个信息已经完全获取到。
S77,报文携带ECN时间戳标记、接收时间戳信息和时延门限模板号到下行处理模块,下行处理模块解析ECN时间戳标记和接收时间戳信息。
在该实施例中,报文可以携带三个信息在网络节点内部转发。三个信息随报文在集中式和分布式架构的网络节点的转发设计可以参考上述结合图2和图3描述的网络节点设备内部在对报文转发过程,本申请实施例不再赘述。
在一个实施例中,下行处理模块负责完成接收时间戳标记、时间戳信息及时延门限模板的解析,可以参照结合图4描述的步骤S45,本实施例不再赘述。
S78,下行ECN处理模块获取发送时间戳进行时延值的计算,根据计算结果对报文进行ECN标记。
在该步骤中,下行ECN处理模块负责判断接收时间戳标记,获取发送时间戳,计算报文转发时延并根据时延和预设门限比较来决定是否对报文进行ECN标记,处理流程请参考结合图4描述的实施例中的步骤S46,本实施例不再赘述。
在本申请实施例中,报文的目的端收到带有ECN标记的报文后,发送流控信息通知发送端对流进行降速。
在图7所示的实施例中,流匹配信息为出端口和优先级信息;上述步骤S10具体可以包括如下步骤。S331,通过查找预设的报文转发表确定报文的出端口号,并获取报文的优先级信息;S332,若在预设的第三拥塞通知标记匹配表中,查找到与出端口号和优先级信息对应的时延门限模块,则判定需要对报文开启拥塞通知标记功能。
在一个实施例中,若在预设的第三拥塞通知标记匹配表中,未查找到与出端口号和优先级信息对应的时延门限模块,则判定无需对报文开启拥塞通知标记功能。
在该实施例中,上述步骤S11中配置报文需要携带的时延门限模板号的步骤,具体可以包括:S334,将查找到的与出端口号和优先级信息对应的时延门限模块号,作为需要携带的时延门限模板号。
根据该实施例中拥塞控制方法,在网络节点基于出口和优先级来配置时延ECN标记功能,从而报文的目的端收到带有ECN标记的报文后,发送流控信息通知发送端对流进行降速。
图8示出本申请实施例的根据访问控制列表进行拥塞通知标记的流程示意图。
在一个实施例中,基于入向ACL可以根据配置的报文特征字段来匹配需要进行时延ECN标记的流量,ACL可以匹配的字段可以是报文头和报文内容中的任何特征字段,也可以匹配报文在上行流水中产生的metadata数据,在此不做限定。如图8所示,根据ACL进行拥塞通知标记的过程具体可以包括如下步骤。
S81,入端口接收报文。
S82,解析ACL查找需要的关键字。
在该步骤中,网络节点收到报文后,上行流水线在ACL阶段会查ACL表进行流匹配,如果没有rule命中,则说明不需要进行ECN标记。如果命中则从查找结果中获取时延门限模板号,同时对报文设置ECN时间戳标记,同时获取***时间戳作为报文接收时间戳。至此报文在入向需要打上的三个信息已经完全获取到。
S83,查预设的ACL表。
在该步骤中,用户可以选择业务编排器、控制器、网管及命令行等方式之一来对网络节点基于ACL来开启时延ECN标记功能并配置时延门限模板,配置模板中的主要参数是时延的门限值。配置信息记录在ACL表中,在ACL表中,ACL查表关键字为上述描述的任意字段,查表结果为时延门限模板。
S84,判断查表结果是否命中。
S85,若未命中,则按照预定流程转发报文。
S86,若命中,则对报文进行ECN时间戳标记,获取接收时间戳,以及查ECN标记匹配表得到时延门限模板。
在上述步骤S84-S86,网络节点收到报文后,上行流水线在ACL阶段会查ACL表进行流匹配,如果没有rule命中,则说明不需要进行ECN标记。如果命中则从查找结果中获取时延门限模板号,同时对报文设置ECN时间戳标记,同时获取***时间戳作为报文接收时间戳。至此报文在入向需要打上的三个信息已经完全获取到。
在该实施例中,报文可以携带三个信息在网络节点内部转发。三个信息随报文在集中式和分布式架构的网络节点的转发设计可以参考上述结合图2和图3描述的网络节点设备内部在对报文转发过程,本申请实施例不再赘述。
S87,报文携带ECN时间戳标记、接收时间戳信息和时延门限模板号到下行处理模块,下行处理模块解析ECN时间戳标记和接收时间戳信息。
在该步骤中,对ECN时间戳标记和接收时间戳信息的解析可以参照结合图4描述的步骤S45,本实施例不再赘述。
S88,下行ECN处理模块获取发送时间戳进行时延值的计算,根据计算结果对报文进行ECN标记。
在该步骤中,计算报文转发时延并根据时延和预设门限比较来决定是否对报文进行ECN标记,处理流程请参考结合图4描述的实施例中的步骤S46,本实施例不再赘述。
根据图8的实施例中,流匹配信息为报文特征信息;上述步骤S10具体可以包括如下步骤。
S341,若在预设的第四拥塞通知标记匹配表中,查找到与报文特征信息对应的时延门限模块号,则判定需要对报文开启拥塞通知标记功能。
其中,报文特征信息包括:报头信息、报文内容的任一特征字段信息或报文在报文接收阶段产生的元数据
在一个实施例中,若在预设的第四拥塞通知标记匹配表中,未查找到与报文特征信息对应的时延门限模块号,则判定无需对报文开启拥塞通知标记功能。
在该实施例中,上述步骤S11中配置报文需要携带的时延门限模板号的步骤,具体可以包括:S343,将查找到的与报文特征信息对应的时延门限模块,作为报文对应的时延门限模板。
在该实施例中,基于入向ACL可以根据配置的报文特征字段来匹配需要进行时延ECN标记的流量,报文的目的端收到带有ECN标记的报文后,发送流控信息通知发送端对流进行降速。
图9示出本申请实施例中能够实现在物理接口获取时间戳信息和进行拥塞通知标记的网络节点结构示意图。
在上述结合图4-图8的描述的实施例中,接收时间戳的处理都是在上行ECN处理模块11中进行,发送时间戳及ECN标记都是在下行ECN处理模块15中完成。
本实施例提供了一种在入口PHY模块打接收时间戳,在出口PHY模块实现下行ECN处理逻辑的方法,这种方法使得接收和发送时间戳的位置更贴近接收和发送端口,因此更能准确的反应报文在网络节点内部完整的转发时延。
应理解,本实施例只是提供了一种在PHY打戳和ECN标记的方法,并不限定打戳和ECN标记必须在PHY完成。
在图9中,该网络节点可以包括入端口31,流分类和接收时间戳处理模块32和出端口33。其中,入端口模块31,可以包括入向物理端口PHY311和接收时间戳获取逻辑单元312;流分类和接收时间戳处理模块32,可以包括流分类处理单元321和接收时间戳处理单元322;出端口模块33可以包括下行ENC处理逻辑单元331和出向物理端口PHY332。
在图9所示的实施例中,可在入端口模块31和出端口模块33配置入向时延ECN标记和出向时延ECN标记使能。
作为示例,用户可以选择业务编排器、控制器、网管及命令行等方式之一,来对网络节点开启时延ECN标记功能并配置时延门限模板,配置模板中的主要参数是时延的门限值。
在该实施例中,网络节点设备收到报文后,如果入端口模块31的接收方向没有配置ECN标记使能,则报文会绕过接收时间戳获取逻辑单元312传送到上行流水线的流分类及接收时间戳处理模块。如果入端口PHY的接收方向配置了ECN标记使能,则在入端口模块31对接收报文打上接收时间戳,且报文携带接收时间戳传送到上行流水线的流分类及接收时间戳获取逻辑单元312。
在该实施例中,流分类及接收时间戳处理模块32可以通过流分类处理单元321,对报文进行流分类,并通过接收时间戳处理单元322,对时延ECN标记进行上述实施例中描述的基于时延门限模板映射。
与上述结合图4-图8的描述的实施例不同,该实施例中,无需在上行ECN处理模块获取接收时间戳,而是直接使用报文从入向物理端口PHY311携带过来的时间戳作为接收时间戳。需要说明的是本实施例考虑各种流分类及后续处理逻辑较为复杂,这些逻辑处理可以不放在PHY模块实现,而是由流分类及接收时间戳处理模块32完成。在一些实施例中,上行时延ECN的处理逻辑也可以完全放到入端口模块31完成,本专利不做限定。
在该实施例中,报文到达出端口模块33时,如果出端口模块33的发送方向未使能时延ECN标记,则报文绕过出端口模块33的下行ENC处理逻辑单元331,直接传送给PHY处理。如果出口PHY模块的发送方向使能时延ECN标记,则需要在PHY模块完成下行ECN处理的完整逻辑,包括获取报文发送时间戳;计算接收时间戳和发送时间戳的差值为报文的转发时延;通过时延门限模板获取时延门限,实际转发时延若超过配置的时延门限值则对报文进行ECN标记,否则不进行标记。在该实施例中,时延门限值也可以在PHY模块之前的下行流水阶段获取后带到PHY模块,这里不做限定。
在该实施例中,出端口模块33的下行ECN处理逻辑对报文进行ECN标记后,报文进一步经过出口PHY处理后从出端口发出。报文的目的端收到带有ECN标记的报文后,发送流控信息通知发送端对流进行降速。
在图9所示的实施例中,接收时间戳信息是从接收报文的物理端口获取的时间戳信息,或者在预定的报文接收阶段获取的***时间戳信息;发送时间戳信息是从发送报文之前的报文处理阶段获取的***时间戳信息,或者是从发送报文的物理端口获取的时间戳信息。
在本实施例中,可以在入口PHY模块打接收时间戳,在出口PHY模块打接收时间戳,从而实现下行ECN处理逻辑,这种方法使得接收和发送时间戳的位置更贴近接收和发送端口,因此更能准确的反应报文在网络节点内部完整的转发时延。
在一个实施例中,在上述步骤S130之后,该拥塞控制方法还包括:S150,发送携带拥塞通知标记的报文至预定的目的端设备,携带拥塞通知标记的报文在目的端设备中被用于触发目的端设备发送流控信息,流控信息用于通知报文对应的数据流的发送端对数据流进行降速。
根据本申请实施例的报文拥塞处理方法,通过检测网络节点内部完整转发时延来进行ECN标记的方法,本方法通过计算网络节点的报文完整转发时延并基于时延对报文进行ECN标记,从而保障了低时延业务在网络传输中的时延要求。本申请提出的基于网络节点内部完整时延的ECN标记技术,是对现有无损网络基于队列拥塞进行ECN标记方法的补充,同时对PFC的队头阻塞也有很好的改善。
下面结合附图,详细介绍根据本申请实施例的拥塞控制装置。图10示出本申请一实施例提供的拥塞控制装置的结构示意图。如图10所示,拥塞控制装置可以包括如下模块。
转发时延计算模块410,用于根据所接收报文的接收时间戳信息和发送时间戳信息,计算报文在本节点设备内部的转发时延值。
拥塞通知标记模块420,用于若报文在本节点设备内部的转发时延值大于预设的报文的预设时延门限值,则对报文进行拥塞通知标记,以通过拥塞通知标记对报文进行拥塞控制。
根据本申请实施例的拥塞控制装置,通过计算网络节点的报文完整转发时延并基于时延对报文进行ECN标记,从而保障了低时延业务在网络传输中的时延要求;并且,该基于网络节点内部完整时延的ECN标记技术,是对现有无损网络基于队列拥塞进行ECN标记方法的补充,同时对PFC的队头阻塞也有很好改善。
在一个实施例中,该拥塞控制装置还可以包括:功能开启判断单元,用于在预定的报文接收阶段,根据接收到的报文所对应的流匹配信息,判断是否需要对报文开启拥塞通知标记功能,流匹配信息包括如下项中的至少一项:入端口流量、出端口流量、入端口、出端口、报文优先级和报文特征信息;信息配置单元,用于若判定需要开启拥塞通知标记功能,则获取报文的接收时间戳信息,并配置报文的时延门限模板,时延门限模板中包含预设时延门限值。
在一个实施例中,拥塞控制装置还用于:确定报文的第一时间戳标记和对应的时延门限模板号,其中,第一时间戳标记用于指示拥塞通知标记功能已开启,时延门限模板号用于索引所配置的时延门限模板;转发时延计算模块410,具体还用于:在发送报文之前,检测到报文的第一时间戳标记时,计算接收时间戳信息和获取的发送时间戳信息的差值,得到报文的转发时延值,并根据报文对应的时延门限模板号获取报文的预设时延门限值。
其中,第一时间戳标记、接收时间戳信息和对应的时延门限模板号携带于报文的指定位置或作为报文的随路信息进行传输。
在一个实施例中,流匹配信息包括入端口;功能开启判断单元,具体可以用于:若报文是本节点设备从预定的入端口接收的报文,且本节点设备的入端口流量为无损业务流量,则判定需要对报文开启拥塞通知标记功能;信息配置单元,具体还用于:将报文承载的时延需求业务所对应的时延门限模板,作为报文的时延门限模板,其中,不同的时延需求业务预先设置有不同的时延门限模板。
在一个实施例中,流匹配信息项包括出端口;拥塞控制装置还可以包括:若报文是本节点设备作为预定服务器接收的报文,且预定服务器的出端口用于发送预定数据中心网络中的多对一Incast流量数据,则通过查找预设的报文转发表确定报文的出端口号;功能开启判断单元,具体可以用于:若在预设的第一拥塞通知标记匹配表中,查找到与出端口号对应的时延门限模板,则判定需要对报文开启拥塞通知标记功能;信息配置单元,还用于将查找到的与出端口号对应的时延门限模板,作为报文的时延门限模板。
在一个实施例中,信息配置单元,还可以用于设置需要携带的时延门限模板号为空值,并在确定报文已开启拥塞通知标记功能之后,以及在发送报文之前,从预先配置的下行出端口属性表中获取与出端口号对应的时延门限模板。
在一个实施例中,流匹配信息为入端口和报文优先级;功能开启判断单元,具体可以用于:若报文是本节点设备从预定的入端口接收的具有优先级信息的报文,且本节点设备的入端口流量为无损业务流量,且在预设的第二拥塞通知标记匹配表中,查找到与报文的入端口号和优先级信息对应的时延门限模块号时,判定需要对报文开启拥塞通知标记功能。在该实施例中,信息配置单元,还可以用于将查找到的与入端口号和优先级信息对应的时延门限模块,作为报文的时延门限模板。
在一个实施例中,流匹配信息项为出端口和优先级信息;拥塞控制装置还可以包括:出端口和优先级获取模块,用于通过查找预设的报文转发表确定报文的出端口号,并获取报文的优先级信息;功能开启判断单元,具体还可以用于:若在预设的第三拥塞通知标记匹配表中,查找到与出端口号和优先级信息对应的时延门限模块,则判定需要对报文开启拥塞通知标记功能;在该实施例中,信息配置单元,还可以用于将查找到的与出端口号和优先级信息对应的时延门限模块号,作为报文的时延门限模板。
在一个实施例中,流匹配信息项为报文特征信息;功能开启判断单元,具体可以用于:若在预设的第四拥塞通知标记匹配表中,查找到与报文特征信息对应的时延门限模块号,则判定需要对报文开启拥塞通知标记功能,其中,报文特征信息包括:报头信息、报文内容的任一特征字段信息或报文在报文接收阶段产生的元数据;在该实施例中,信息配置单元,还可以用于将查找到的与报文特征信息对应的时延门限模块,作为报文对应的时延门限模板。
在一个实施例中,在预定的报文接收阶段,信息配置单元,还用于若确定无需对报文开启拥塞通知标记功能,则配置报文的第二时间戳标记;报文转发模块,用于在发送报文之前,根据第二时间戳标记确定拥塞通知标记功能未开启,并按照预定转发方式转发报文,其中,第二时间戳标记携带于报文的指定位置或作为报文的随路信息进行传输。
在一个实施例中,接收时间戳信息是从接收报文的物理端口获取的时间戳信息,或在预定的报文接收阶段获取的***时间戳信息;发送时间戳信息是从发送报文之前的报文处理阶段获取的***时间戳信息,或是从发送报文的物理端口获取的时间戳信息。
在一个实施例中,若本节点设备为集中式转发节点设备,则报文接收阶段包括从本节点设备的入端口到本节点设备的转发芯片之间进行报文处理的任一阶段,以及,发送报文之前的报文处理阶段,包括从本节点设备的转发芯片到本节点设备的出端口之间进行报文处理的任一阶段。
在一个实施例中,若本节点设备为分布式转发节点设备,则报文接收阶段包括从本节点设备的入端口到本节点设备的上行转发芯片之间进行报文处理的任一阶段,以及,发送报文之前的报文处理阶段,包括从本节点设备的下行转发芯片到本节点设备的出端口之间进行报文处理的任一阶段。
在一个实施例中,若本节点设备为集中式转发节点设备,则拥塞控制装置还可以包括:内部转发模块,用于在报文中携带第一时间戳标记、接收时间戳信息和对应的时延门限模板号之后,以及发送报文之前,在本节点设备内部转发所接收的报文,并发送报文至本节点设备的转发芯片;
在一个实施例中,若本节点设备为分布式转发节点设备,则拥塞控制装置还可以包括:在报文中携带第一时间戳标记、接收时间戳信息和对应的时延门限模板号之后,以及发送报文之前,在本节点设备内部将所接收的报文经交换网转发至本节点设备的下行转发芯片。
在该实施例中,报文在经过交换网时,第一时间戳标记、接收时间戳信息和对应的时延门限模板号的报文携带于报文的指定位置,指定位置为报文内部或与交换网对应的附加报文头部中。
在一个实施例中,报文发送模块,还用于对报文进行拥塞通知标记之后,发送携带拥塞通知标记的报文至预定的目的端设备,携带拥塞通知标记的报文在目的端设备中被用于触发目的端设备发送流控信息,流控信息用于通知报文对应的数据流的发送端对数据流进行降速。
根据本申请实施例的拥塞控制装置,通过检测网络节点内部完整转发时延来进行ECN标记的方法,保障了低时延业务在网络传输中的时延要求。该拥塞控制装置可以对现有无损网络基于队列拥塞进行ECN标记方法的补充,同时对PFC的队头阻塞也有很好的改善。
需要明确的是,本申请并不局限于上文实施例中所描述并在图中示出的特定配置和处理。为了描述的方便和简洁,这里省略了对已知方法的详细描述,并且上述描述的***、模块和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
图11是示出能够实现根据本申请实施例的拥塞控制方法和装置的计算设备的示例性硬件架构的结构图。
如图11所示,计算设备500包括输入设备501、输入端口502、中央处理器503、存储器504、输出端口505、以及输出设备506。其中,输入端口502、中央处理器503、存储器504、以及输出端口505通过总线510相互连接,输入设备501和输出设备506分别通过输入端口502和输出端口505与总线510连接,进而与计算设备500的其他组件连接。
具体地,输入设备501接收来自外部的输入信息,并通过输入端口502将输入信息传送到中央处理器503;中央处理器503基于存储器504中存储的计算机可执行指令对输入信息进行处理以生成输出信息,将输出信息临时或者永久地存储在存储器504中,然后通过输出端口505将输出信息传送到输出设备506;输出设备506将输出信息输出到计算设备500的外部供用户使用。
在一个实施例中,图11所示的计算设备可以被实现为一种网络节点设备,该网络节点设备可以包括:存储器,被配置为存储程序;处理器,被配置为运行存储器中存储的程序,以执行上述实施例描述的拥塞控制方法。
以上所述,仅为本申请的示例性实施例而已,并非用于限定本申请的保护范围。一般来说,本申请的多种实施例可以在硬件或专用电路、软件、逻辑或其任何组合中实现。例如,一些方面可以被实现在硬件中,而其它方面可以被实现在可以被控制器、微处理器或其它计算装置执行的固件或软件中,尽管本申请不限于此。
本申请的实施例可以通过移动装置的数据处理器执行计算机程序指令来实现,例如在处理器实体中,或者通过硬件,或者通过软件和硬件的组合。计算机程序指令可以是汇编指令、指令集架构(ISA)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、或者以一种或多种编程语言的任意组合编写的源代码或目标代码。
本申请附图中的任何逻辑流程的框图可以表示程序步骤,或者可以表示相互连接的逻辑电路、模块和功能,或者可以表示程序步骤与逻辑电路、模块和功能的组合。计算机程序可以存储在存储器上。存储器可以具有任何适合于本地技术环境的类型并且可以使用任何适合的数据存储技术实现,例如但不限于只读存储器(ROM)、随机访问存储器(RAM)、光存储器装置和***(数码多功能光碟DVD或CD光盘)等。计算机可读介质可以包括非瞬时性存储介质。数据处理器可以是任何适合于本地技术环境的类型,例如但不限于通用计算机、专用计算机、微处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、可编程逻辑器件(FGPA)以及基于多核处理器架构的处理器。
通过示范性和非限制性的示例,上文已提供了对本申请的示范实施例的详细描述。但结合附图和权利要求来考虑,对以上实施例的多种修改和调整对本领域技术人员来说是显而易见的,但不偏离本申请的范围。因此,本申请的恰当范围将根据权利要求确定。
Claims (17)
1.一种拥塞控制方法,其特征在于,所述方法包括:
根据所接收报文的接收时间戳信息和发送时间戳信息,计算所述报文在本节点设备内部的转发时延值;其中,所述接收时间戳信息的获取位置包括:所述报文在上行方向从入端口到相应流量管理器的任意位置,所述发送时间戳信息的获取位置包括:所述报文在下行方向从相应流量管理器到出端口的任意位置;
若所述报文在本节点设备内部的转发时延值大于预设的所述报文的预设时延门限值,则对所述报文进行拥塞通知标记,以通过所述拥塞通知标记对所述报文进行拥塞控制;
其中,所述报文,是在报文接收阶段识别出的能够开启时延拥塞通知功能的不同的数据流的报文;所述不同的数据流至少包括满足如下条件的数据流:
所述报文是本节点设备作为预定服务器接收的报文,所述预定服务器的出端口用于发送预定数据中心网络中的多对一聚合流量数据,在预设的第一拥塞通知标记匹配表中记录有所述出端口对应的时延门限模块号;
本节点设备采用基于优先级的流量控制,所述报文是从本节点设备的预定入端口接收的具有优先级信息的报文,本节点设备的入端口流量为无损业务流量,且在预设的第二拥塞通知标记匹配表中记录有所述报文的入端口号和所述优先级信息对应的时延门限模块号;
以及,在访问控制列表中记录有与所述报文的报文特征信息对应的时延门限模块号。
2.根据权利要求1所述的方法,其特征在于,在根据所接收报文的接收时间戳信息和发送时间戳信息,计算所述报文在本节点设备内部的转发时延值之前,所述方法还包括:
在预定的报文接收阶段,根据接收到的报文所对应的流匹配信息,判断是否需要对所述报文开启拥塞通知标记功能,所述流匹配信息包括如下项中的至少一项:入端口流量、出端口流量、入端口、出端口、报文优先级和报文特征信息;
若判定需要开启拥塞通知标记功能,则获取所述报文的接收时间戳信息,并配置所述报文的时延门限模板,所述时延门限模板中包含所述预设时延门限值。
3.根据权利要求2所述的方法,其特征在于,在获取所述报文的接收时间戳信息,并配置所述报文的时延门限模板之后,所述方法还包括:
确定所述报文的第一时间戳标记和对应的时延门限模板号,其中,所述第一时间戳标记用于指示所述拥塞通知标记功能已开启,所述时延门限模板号用于索引所配置的时延门限模板;
所述根据所接收报文的接收时间戳信息和发送时间戳信息,计算所述报文在本节点设备内部的转发时延值,包括:
在发送所述报文之前,检测到所述报文的第一时间戳标记时,计算所述接收时间戳信息和获取的发送时间戳信息的差值,得到所述报文的转发时延值,并根据所述报文对应的时延门限模板号获取所述报文的预设时延门限值;其中,
所述第一时间戳标记、所述接收时间戳信息和对应的时延门限模板号携带于所述报文的指定位置或作为所述报文的随路信息进行传输。
4.根据权利要求2所述的方法,其特征在于,所述流匹配信息为入端口;所述根据接收到的报文所对应的流匹配信息,判断是否需要对所述报文开启拥塞通知标记功能,包括:
若所述报文是本节点设备从预定的入端口接收的报文,且本节点设备的入端口流量为无损业务流量,则判定需要对所述报文开启拥塞通知标记功能;
所述配置所述报文的时延门限模板,包括:将所述报文承载的时延需求业务所对应的时延门限模板,作为所述报文的时延门限模板,其中,不同的时延需求业务预先设置有不同的时延门限模板。
5.根据权利要求2所述的方法,其特征在于,所述流匹配信息为出端口;所述根据接收到的报文所对应的流匹配信息,判断是否需要对所述报文开启拥塞通知标记功能,包括:
若所述报文是本节点设备作为预定服务器接收的报文,且所述预定服务器的出端口用于发送预定数据中心网络中的多对一Incast流量数据,则通过查找预设的报文转发表确定所述报文的出端口号;
若在预设的第一拥塞通知标记匹配表中,查找到与所述出端口号对应的时延门限模板,则判定需要对所述报文开启拥塞通知标记功能;
所述配置所述报文的时延门限模板,包括:将查找到的与所述出端口号对应的时延门限模板,作为所述报文的时延门限模板。
6.根据权利要求5所述的方法,其特征在于,在配置所述报文的时延门限模板号时,所述方法还包括:
设置需要携带的时延门限模板号为空值,并在确定所述报文已开启拥塞通知标记功能之后,以及在发送所述报文之前,从预先配置的下行出端口属性表中获取与所述出端口号对应的时延门限模板。
7.根据权利要求2所述的方法,其特征在于,所述流匹配信息为入端口和报文优先级;所述根据接收到的报文所对应的流匹配信息,判断是否需要对所述报文开启拥塞通知标记功能,包括:
若所述报文是本节点设备从预定的入端口接收的具有优先级信息的报文,且本节点设备的入端口流量为无损业务流量,且在预设的第二拥塞通知标记匹配表中,查找到与所述报文的入端口号和所述优先级信息对应的时延门限模块号时,判定需要对所述报文开启拥塞通知标记功能;
所述配置所述报文的时延门限模板,包括:将查找到的与所述入端口号和所述优先级信息对应的时延门限模块,作为所述报文的时延门限模板。
8.根据权利要求2所述的方法,其特征在于,所述流匹配信息为出端口和优先级信息;所述根据接收到的报文所对应的流匹配信息,判断是否需要对所述报文开启拥塞通知标记功能,包括:
通过查找预设的报文转发表确定所述报文的出端口号,并获取所述报文的优先级信息;
若在预设的第三拥塞通知标记匹配表中,查找到与所述出端口号和所述优先级信息对应的时延门限模块,则判定需要对所述报文开启拥塞通知标记功能;
所述配置所述报文的时延门限模板,包括:将查找到的与所述出端口号和所述优先级信息对应的时延门限模块号,作为所述报文的时延门限模板。
9.根据权利要求2所述的方法,其特征在于,所述流匹配信息为报文特征信息;所述根据接收到的报文所对应的流匹配信息,判断是否需要对所述报文开启拥塞通知标记功能,包括:
若在预设的第四拥塞通知标记匹配表中,查找到与所述报文特征信息对应的时延门限模块号,则判定需要对所述报文开启拥塞通知标记功能;
所述配置所述报文的时延门限模板,包括:将查找到的与所述报文特征信息对应的时延门限模块,作为所述报文对应的时延门限模板;其中,
所述报文特征信息包括:报头信息、报文内容的任一特征字段信息或所述报文在所述报文接收阶段产生的元数据。
10.根据权利要求2-9中任一项所述的方法,其特征在于,在预定的报文接收阶段,所述方法还包括:
若确定无需对所述报文开启拥塞通知标记功能,则配置所述报文的第二时间戳标记;
在发送所述报文之前,根据所述第二时间戳标记确定所述拥塞通知标记功能未开启,并按照预定转发方式转发所述报文,其中,所述第二时间戳标记携带于所述报文的指定位置或作为所述报文的随路信息进行传输。
11.根据权利要求2-9中任一项所述的方法,其特征在于,
所述接收时间戳信息是从接收所述报文的物理端口获取的时间戳信息,或在预定的报文接收阶段获取的***时间戳信息;
所述发送时间戳信息是从发送所述报文之前的报文处理阶段获取的***时间戳信息,或是从发送所述报文的物理端口获取的时间戳信息。
12.根据权利要求11所述的方法,其特征在于,
若本节点设备为集中式转发节点设备,则所述报文接收阶段包括从本节点设备的入端口到本节点设备的转发芯片之间进行报文处理的任一阶段,以及,所述发送所述报文之前的报文处理阶段,包括从本节点设备的转发芯片到本节点设备的出端口之间进行报文处理的任一阶段;
若本节点设备为分布式转发节点设备,则所述报文接收阶段包括从本节点设备的入端口到本节点设备的上行转发芯片之间进行报文处理的任一阶段,以及,所述发送所述报文之前的报文处理阶段,包括从本节点设备的下行转发芯片到本节点设备的出端口之间进行报文处理的任一阶段。
13.根据权利要求3所述的方法,其特征在于,所述方法还包括:
若本节点设备为集中式转发节点设备,则在本节点设备内部转发所接收的报文,并发送所述报文至本节点设备的转发芯片;
若本节点设备为分布式转发节点设备,则在本节点设备内部将所接收的报文经交换网转发至本节点设备的下行转发芯片;其中,
所述报文在经过交换网时,所述第一时间戳标记、所述接收时间戳信息和所述对应的时延门限模板号携带于所述报文的指定位置,所述指定位置为报文内部、或与所述交换网对应的附加报文头部中。
14.根据权利要求2-9中任一项所述的方法,其特征在于,对所述报文进行拥塞通知标记之后,所述方法还包括:
发送携带所述拥塞通知标记的报文至预定的目的端设备,所述携带拥塞通知标记的报文在所述目的端设备中被用于触发所述目的端设备发送流控信息,流控信息用于通知所述报文对应的数据流的发送端对所述数据流进行降速。
15.一种拥塞控制装置,其特征在于,所述装置包括:
转发时延计算模块,用于根据所接收报文的接收时间戳信息和发送时间戳信息,计算所述报文在本节点设备内部的转发时延值;其中,所述接收时间戳信息的获取位置包括:所述报文在上行方向从入端口到相应流量管理器的任意位置,所述发送时间戳信息的获取位置包括:所述报文在下行方向从相应流量管理器到出端口的任意位置;
拥塞通知标记模块,用于若所述报文在本节点设备内部的转发时延值大于预设的所述报文的预设时延门限值,则对所述报文进行拥塞通知标记,以通过所述拥塞通知标记对所述报文进行拥塞控制;
其中,所述报文,是在报文接收阶段识别出的能够开启时延拥塞通知功能的不同的数据流的报文;所述不同的数据流至少包括满足如下条件的数据流:
所述报文是本节点设备作为预定服务器接收的报文,所述预定服务器的出端口用于发送预定数据中心网络中的多对一聚合流量数据,在预设的第一拥塞通知标记匹配表中记录有所述出端口对应的时延门限模块号;
本节点设备采用基于优先级的流量控制,所述报文是从本节点设备的预定入端口接收的具有优先级信息的报文,本节点设备的入端口流量为无损业务流量,且在预设的第二拥塞通知标记匹配表中记录有所述报文的入端口号和所述优先级信息对应的时延门限模块号;
以及,在访问控制列表中记录有与所述报文的报文特征信息对应的时延门限模块号。
16.一种网络节点设备,包括:
一个或多个处理器;
存储器,其上存储有一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现权利要求1-14中任一项所述的方法。
17.一种计算机可读存储介质,其特征在于,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时实现权利要求1-14任一项所述的方法。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010789061.6A CN112787951B (zh) | 2020-08-07 | 2020-08-07 | 拥塞控制方法、装置、设备和计算机可读存储介质 |
EP21853344.6A EP4195594A1 (en) | 2020-08-07 | 2021-08-04 | Congestion control method and apparatus, network node device and computer-readable storage medium |
PCT/CN2021/110501 WO2022028456A1 (zh) | 2020-08-07 | 2021-08-04 | 拥塞控制方法和装置、网络节点设备,及计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010789061.6A CN112787951B (zh) | 2020-08-07 | 2020-08-07 | 拥塞控制方法、装置、设备和计算机可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112787951A CN112787951A (zh) | 2021-05-11 |
CN112787951B true CN112787951B (zh) | 2024-02-27 |
Family
ID=75750246
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010789061.6A Active CN112787951B (zh) | 2020-08-07 | 2020-08-07 | 拥塞控制方法、装置、设备和计算机可读存储介质 |
Country Status (3)
Country | Link |
---|---|
EP (1) | EP4195594A1 (zh) |
CN (1) | CN112787951B (zh) |
WO (1) | WO2022028456A1 (zh) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112787951B (zh) * | 2020-08-07 | 2024-02-27 | 中兴通讯股份有限公司 | 拥塞控制方法、装置、设备和计算机可读存储介质 |
CN113810383B (zh) * | 2021-08-25 | 2022-12-20 | 杭州安恒信息技术股份有限公司 | Web应用防火墙及拥塞控制方法、介质及电子设备 |
CN116192754A (zh) * | 2021-11-26 | 2023-05-30 | 苏州盛科通信股份有限公司 | 报文的控制方法和装置、存储介质及电子装置 |
CN114285733A (zh) * | 2021-12-28 | 2022-04-05 | 苏州盛科通信股份有限公司 | 基于报文染色的ioam网络设备拥塞及时延检测方法和装置 |
CN114760252B (zh) * | 2022-03-24 | 2024-06-07 | 北京邮电大学 | 数据中心网络拥塞控制方法及*** |
CN116233017B (zh) * | 2022-12-23 | 2024-06-04 | 中国联合网络通信集团有限公司 | 时延保证方法、装置及存储介质 |
CN116932273B (zh) * | 2023-09-18 | 2024-06-11 | 深圳云豹智能有限公司 | 一种用于rdma中的功能级复位处理方法、装置及存储介质 |
CN118250197A (zh) * | 2024-05-23 | 2024-06-25 | 新华三半导体技术有限公司 | 一种时延预测方法、装置、电子设备及介质 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103338133A (zh) * | 2013-06-28 | 2013-10-02 | 盛科网络(苏州)有限公司 | 动态监测报文转发端口拥塞的方法及装置 |
WO2016008519A1 (en) * | 2014-07-16 | 2016-01-21 | Nec Europe Ltd. | Method and system for managing flows in a network |
CN106302228A (zh) * | 2016-10-18 | 2017-01-04 | 中南大学 | 一种数据中心网络中基于任务感知的传输控制方法 |
CN108989235A (zh) * | 2018-08-28 | 2018-12-11 | 新华三技术有限公司 | 一种报文转发控制方法及装置 |
CN109309625A (zh) * | 2017-07-28 | 2019-02-05 | 北京交通大学 | 一种数据中心网络灾备传输方法 |
CN109462553A (zh) * | 2018-10-24 | 2019-03-12 | 盛科网络(苏州)有限公司 | 一种基于时延的动态队列管理芯片实现方法 |
CN110784415A (zh) * | 2019-11-04 | 2020-02-11 | 盛科网络(苏州)有限公司 | 一种ecn快速响应的方法及装置 |
CN111385121A (zh) * | 2018-12-29 | 2020-07-07 | 华为技术有限公司 | 一种操作管理维护iOAM报文的传输方法及相应装置 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101188611A (zh) * | 2007-11-21 | 2008-05-28 | 华为技术有限公司 | 拥塞通知方法、***和节点设备 |
CN108075935B (zh) * | 2016-11-15 | 2021-01-29 | 华为技术有限公司 | 测量时延的方法及设备 |
CN108667739B (zh) * | 2017-03-27 | 2020-12-08 | 华为技术有限公司 | 拥塞控制方法、装置及*** |
CN110022264B (zh) * | 2018-01-08 | 2020-09-08 | 华为技术有限公司 | 控制网络拥塞的方法、接入设备和计算机可读存储介质 |
CN108270691A (zh) * | 2018-01-11 | 2018-07-10 | 电子科技大学 | 一种用于数据中心的可选择性显式拥塞通知标记方法 |
US11159428B2 (en) * | 2018-06-12 | 2021-10-26 | Verizon Patent And Licensing Inc. | Communication of congestion information to end devices |
CN108965151B (zh) * | 2018-08-27 | 2020-08-28 | 华中科技大学 | 一种基于排队时延的显式拥塞控制方法 |
US10951527B2 (en) * | 2018-12-28 | 2021-03-16 | Juniper Networks, Inc. | Switch fabric packet flow reordering |
CN112787951B (zh) * | 2020-08-07 | 2024-02-27 | 中兴通讯股份有限公司 | 拥塞控制方法、装置、设备和计算机可读存储介质 |
-
2020
- 2020-08-07 CN CN202010789061.6A patent/CN112787951B/zh active Active
-
2021
- 2021-08-04 EP EP21853344.6A patent/EP4195594A1/en active Pending
- 2021-08-04 WO PCT/CN2021/110501 patent/WO2022028456A1/zh unknown
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103338133A (zh) * | 2013-06-28 | 2013-10-02 | 盛科网络(苏州)有限公司 | 动态监测报文转发端口拥塞的方法及装置 |
WO2016008519A1 (en) * | 2014-07-16 | 2016-01-21 | Nec Europe Ltd. | Method and system for managing flows in a network |
CN106302228A (zh) * | 2016-10-18 | 2017-01-04 | 中南大学 | 一种数据中心网络中基于任务感知的传输控制方法 |
CN109309625A (zh) * | 2017-07-28 | 2019-02-05 | 北京交通大学 | 一种数据中心网络灾备传输方法 |
CN108989235A (zh) * | 2018-08-28 | 2018-12-11 | 新华三技术有限公司 | 一种报文转发控制方法及装置 |
CN109462553A (zh) * | 2018-10-24 | 2019-03-12 | 盛科网络(苏州)有限公司 | 一种基于时延的动态队列管理芯片实现方法 |
CN111385121A (zh) * | 2018-12-29 | 2020-07-07 | 华为技术有限公司 | 一种操作管理维护iOAM报文的传输方法及相应装置 |
CN110784415A (zh) * | 2019-11-04 | 2020-02-11 | 盛科网络(苏州)有限公司 | 一种ecn快速响应的方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
WO2022028456A1 (zh) | 2022-02-10 |
EP4195594A1 (en) | 2023-06-14 |
CN112787951A (zh) | 2021-05-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112787951B (zh) | 拥塞控制方法、装置、设备和计算机可读存储介质 | |
US11005769B2 (en) | Congestion avoidance in a network device | |
US9185047B2 (en) | Hierarchical profiled scheduling and shaping | |
US9516138B2 (en) | Method and apparatus to process interest messages and data messages based on priorities in content-centric network (CCN) | |
US9356844B2 (en) | Efficient application recognition in network traffic | |
US10284460B1 (en) | Network packet tracing | |
US10397116B1 (en) | Access control based on range-matching | |
US11637787B2 (en) | Preventing duplication of packets in a network | |
WO2021052379A1 (zh) | 一种数据流类型识别方法及相关设备 | |
KR20070080177A (ko) | 네트워크에서의 혼잡 발생 예고 시스템 및 방법 | |
Tian et al. | P-PFC: Reducing tail latency with predictive PFC in lossless data center networks | |
US11863459B2 (en) | Packet processing method and apparatus | |
TW201707417A (zh) | 適用於異質網路架構的異常預測方法及系統 | |
CN112737940B (zh) | 一种数据传输的方法和装置 | |
CN116545936A (zh) | 拥塞控制方法、***、装置、通信设备及存储介质 | |
US11277342B2 (en) | Lossless data traffic deadlock management system | |
WO2021147370A1 (zh) | 故障检测模型的训练方法、装置及*** | |
US11218394B1 (en) | Dynamic modifications to directional capacity of networking device interfaces | |
US11528187B1 (en) | Dynamically configurable networking device interfaces for directional capacity modifications | |
US11032206B2 (en) | Packet-content based WRED protection | |
WO2021147371A1 (zh) | 故障检测方法、装置及*** | |
CN115277504A (zh) | 一种网络流量监控方法、装置和*** | |
CN110336759A (zh) | 基于rdma的协议报文转发方法及装置 | |
US10560317B2 (en) | Subscription to a subset of switching events | |
JP2015032985A (ja) | 通信制御装置、通信制御方法、および通信制御システム |
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 |