CN115086236A - 调整数据转发队列的方法、装置及计算机可读存储介质 - Google Patents
调整数据转发队列的方法、装置及计算机可读存储介质 Download PDFInfo
- Publication number
- CN115086236A CN115086236A CN202110264211.6A CN202110264211A CN115086236A CN 115086236 A CN115086236 A CN 115086236A CN 202110264211 A CN202110264211 A CN 202110264211A CN 115086236 A CN115086236 A CN 115086236A
- Authority
- CN
- China
- Prior art keywords
- queue
- data forwarding
- forwarding queue
- data
- parameters
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 45
- 238000003860 storage Methods 0.000 title claims abstract description 16
- 238000010801 machine learning Methods 0.000 claims abstract description 25
- 238000013135 deep learning Methods 0.000 claims description 52
- 238000012549 training Methods 0.000 claims description 18
- 238000012545 processing Methods 0.000 claims description 17
- 238000010845 search algorithm Methods 0.000 claims description 12
- 238000013527 convolutional neural network Methods 0.000 claims description 8
- 238000012423 maintenance Methods 0.000 abstract description 11
- 238000010586 diagram Methods 0.000 description 18
- 230000006870 function Effects 0.000 description 15
- 238000013473 artificial intelligence Methods 0.000 description 8
- 230000008569 process Effects 0.000 description 8
- 238000005516 engineering process Methods 0.000 description 7
- 238000004590 computer program Methods 0.000 description 5
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000011156 evaluation Methods 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000003139 buffering effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Images
Classifications
-
- 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/12—Avoiding congestion; Recovering from congestion
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- 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
-
- 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/12—Avoiding congestion; Recovering from congestion
- H04L47/127—Avoiding congestion; Recovering from congestion by using congestion prediction
-
- 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/25—Flow control; Congestion control with rate being modified by the source upon detecting a change of network conditions
-
- 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/26—Flow control; Congestion control using explicit feedback to the source, e.g. choke packets
- H04L47/263—Rate modification at the source after receiving feedback
-
- 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/29—Flow control; Congestion control using a combination of thresholds
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Physics & Mathematics (AREA)
- Signal Processing (AREA)
- Software Systems (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Artificial Intelligence (AREA)
- Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Medical Informatics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本公开提供了一种调整数据转发队列的方法、装置及非瞬时性计算机可读存储介质,涉及计算机技术领域。调整数据转发队列的方法包括:将数据转发队列的状态参数输入预先训练的机器学习模型,获得数据转发队列的队列控制参数;为数据转发队列设置队列控制参数,以调整数据转发队列的状态参数。本公开能够对数据转发队列的队列控制参数进行动态的自动化设置,从而实现了对数据转发队列的队列状态参数进行动态的自动化调整,进而提升了转发队列所在中间网络设备的运维效率。
Description
技术领域
本公开涉及计算机技术领域,特别涉及一种调整数据转发队列的方法、装置及非瞬时性计算机可读存储介质。
背景技术
在数据中心网络中,通常使用ECN(Explicit Congestion Notification,主动拥塞通知)技术结合PFC(Power Factor Correction,功率因数校正)技术,来对数据中心网络中的各个设备进行运维。
ECN是一种基于流的端到端流控技术,通过TCP(Transmission ControlProtocol,传输控制协议)发送端、接收端以及中间网络设备的配合,能够感知中间网络设备中各个端口所对应转发队列的拥塞情况,主动减缓TCP发送端向中间网络设备发送数据的速率,从而避免网络拥塞而导致数据包丢失,保障低时延业务的无损传输需求。
发明内容
本公开解决的一个技术问题是,如何提升转发队列所在中间网络设备的运维效率。
根据本公开的一个方面,提供了一种调整数据转发队列的方法,包括:将数据转发队列的状态参数输入预先训练的机器学习模型,获得数据转发队列的队列控制参数;其中,状态参数包括数据转发队列的转发时延和队列深度,队列控制参数包括主动拥塞通知水线和数据转发队列缓存;为数据转发队列设置队列控制参数,以调整数据转发队列的状态参数;其中,在队列深度未超过主动拥塞通知水线的情况下,数据转发队列通知数据发送端以第一速率向数据转发队列发送数据;在队列深度超过主动拥塞通知水线的情况下,数据转发队列通知数据发送端以第二速率向数据转发队列发送数据;第二速率大于第一速率。
在一些实施例中,将数据转发队列的状态参数输入预先训练的机器学习模型包括:在转发时延大于第一阈值或小于第二阈值的情况下,或者,在队列深度大于第三阈值或小于第四阈值的情况下,将状态参数输入预先训练的机器学习模型,其中,第一阈值大于第二阈值,第三阈值大于第四阈值。
在一些实施例中,将数据转发队列的状态参数输入预先训练的机器学习模型,获得数据转发队列的队列控制参数包括:将数据转发队列的状态参数输入预先训练的第一深度学习网络,以识别状态参数的业务类型;若状态参数的业务类型为已有业务,将状态参数输入预先训练的第二深度学习网络,获得数据转发队列的第一队列控制参数,第一队列控制参数包括第一主动拥塞通知水线和第一数据转发队列缓存;若状态参数的业务类型为新业务,利用启发式搜索算法对状态参数进行处理,获得数据转发队列的第二队列控制参数,第二队列控制参数包括第二主动拥塞通知水线和第二数据转发队列缓存。
在一些实施例中,该方法还包括:利用数据转发队列的历史状态参数和标注的业务类型标签,对第一深度学习网络进行训练,使第一深度学习网络能够识别状态参数的业务类型,其中,业务类型标签包括已有业务类型标签和新业务类型标签。
在一些实施例中,第一深度学习网络为卷积神经网络。
在一些实施例中,该方法,还包括:利用数据转发队列的历史状态参数和队列控制参数经验值,对第二深度学习网络进行训练,使第一深度学习网络能够根据输入的状态参数输出第一队列控制参数。
在一些实施例中,第二深度学习网络为深度Q网络。
根据本公开的另一个方面,提供了一种调整数据转发队列的装置,包括:状态参数输入模块,被配置为:将数据转发队列的状态参数输入预先训练的机器学习模型,获得数据转发队列的队列控制参数;其中,状态参数包括数据转发队列的转发时延和队列深度,队列控制参数包括主动拥塞通知水线和数据转发队列缓存;控制参数设置模块,被配置为:为数据转发队列设置队列控制参数,以调整数据转发队列的状态参数;其中,在队列深度未超过主动拥塞通知水线的情况下,数据转发队列通知数据发送端以第一速率向数据转发队列发送数据;在队列深度超过主动拥塞通知水线的情况下,数据转发队列通知数据发送端以第二速率向数据转发队列发送数据;第二速率大于第一速率。
在一些实施例中,状态参数输入模块被配置为:在转发时延大于第一阈值或小于第二阈值的情况下,或者,在队列深度大于第三阈值或小于第四阈值的情况下,将状态参数输入预先训练的机器学习模型,其中,第一阈值大于第二阈值,第三阈值大于第四阈值。
在一些实施例中,状态参数输入模块被配置为:将数据转发队列的状态参数输入预先训练的第一深度学习网络,以识别状态参数的业务类型;若状态参数的业务类型为已有业务,将状态参数输入预先训练的第二深度学习网络,获得数据转发队列的第一队列控制参数,第一队列控制参数包括第一主动拥塞通知水线和第一数据转发队列缓存;若状态参数的业务类型为新业务,利用启发式搜索算法对状态参数进行处理,获得数据转发队列的第二队列控制参数,第二队列控制参数包括第二主动拥塞通知水线和第二数据转发队列缓存。
在一些实施例中,该装置还包括第一网络训练模块,被配置为:利用数据转发队列的历史状态参数和标注的业务类型标签,对第一深度学习网络进行训练,使第一深度学习网络能够识别状态参数的业务类型,其中,业务类型标签包括已有业务类型标签和新业务类型标签。
在一些实施例中,第一深度学习网络为卷积神经网络。
在一些实施例中,该装置还包括第二网络训练模块,被配置为:利用数据转发队列的历史状态参数和队列控制参数经验值,对第二深度学习网络进行训练,使第一深度学习网络能够根据输入的状态参数输出第一队列控制参数。
在一些实施例中,第二深度学习网络为深度Q网络。
根据本公开的又一个方面,提供了又一种调整数据转发队列的装置,包括:存储器;以及耦接至存储器的处理器,处理器被配置为基于存储在存储器中的指令,执行前述的调整数据转发队列的方法。
根据本公开的再一个方面,提供了一种非瞬时性计算机可读存储介质,其中,非瞬时性计算机可读存储介质存储有计算机指令,指令被处理器执行时实现前述的调整数据转发队列的方法。
本公开能够对数据转发队列的队列控制参数进行动态的自动化设置,从而实现了对数据转发队列的队列状态参数进行动态的自动化调整,进而提升了转发队列所在中间网络设备的运维效率。
通过以下参照附图对本公开的示例性实施例的详细描述,本公开的其它特征及其优点将会变得清楚。
附图说明
为了更清楚地说明本公开实施例或相关技术中的技术方案,下面将对实施例或相关技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1示出了本公开一些实施例的调整数据转发队列的方法的流程示意图。
图2示出了利用机器学习模型获得队列控制参数的一些实施例的流程示意图。
图3示出了本公开调整数据转发队列的方法的应用例的示意图。
图4示出了本公开一些实施例的调整数据转发队列的装置的结构示意图。
图5示出了本公开另一些实施例的调整数据转发队列的装置的结构示意图。
具体实施方式
下面将结合本公开实施例中的附图,对本公开实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本公开一部分实施例,而不是全部的实施例。以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本公开及其应用或使用的任何限制。基于本公开中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本公开保护的范围。
发明人研究发现,通过设置数据转发队列的队列控制参数,能够调整对数据转发队列的队列状态参数。例如,当数据转发队列的队列深度超过主动拥塞通知水线时,数据转发队列通知数据发送端减缓数据发送端向中间网络设备发送数据的速率,从而减小数据转发队列的队列深度。然而,如果将数据转发队列的队列控制参数设置为固定值,则数据转发队列无法动态适应实时数据的流量变化,可能导致网络的数据转发质量恶化,无法保障业务性能;如果实时调整数据转发队列的队列控制参数,则需要有经验的工程师进行大量的人工操作,来尝试队列控制参数的设定值。因此,调整数据转发队列的传统方法导致转发队列所在中间网络设备的运维效率较低。
有鉴于此,本公开提供了一种调整数据转发队列的方法,能够提升转发队列所在中间网络设备的运维效率。
首先结合图1描述本公开调整数据转发队列的方法的一些实施例。
图1示出了本公开一些实施例的调整数据转发队列的方法的流程示意图。如图1所示,这些实施例包括步骤S101~步骤S102。
在步骤S101中,将数据转发队列的状态参数输入预先训练的机器学习模型,获得数据转发队列的队列控制参数。
其中,状态参数包括数据转发队列的转发时延和队列深度,队列控制参数包括主动拥塞通知水线和数据转发队列缓存。机器学习模型经过预先训练后,能够根据输入的数据转发队列的状态参数,输出数据转发队列的队列控制参数。
在一些实施例中,在转发时延大于第一阈值或小于第二阈值的情况下,或者,在队列深度大于第三阈值或小于第四阈值的情况下,将状态参数输入预先训练的机器学习模型,其中,第一阈值大于第二阈值,第三阈值大于第四阈值。
在数据转发队列的状态参数满足一定阈值条件的情况下,将状态参数输入预先训练的机器学习模型进行处理,能够有效控制预测队列控制参数的触发条件,降低机器学习模型的工作负荷。
在步骤S102中,为数据转发队列设置队列控制参数,以调整数据转发队列的状态参数。
例如,在队列深度未超过主动拥塞通知水线的情况下,数据转发队列通知数据发送端以第一速率向数据转发队列发送数据。在队列深度超过主动拥塞通知水线的情况下,数据转发队列通知数据发送端以第二速率向数据转发队列发送数据。其中,第二速率大于第一速率。
上述实施例通过人工智能技术,能够对数据转发队列的队列控制参数进行动态的自动化设置,从而实现了对数据转发队列的队列状态参数进行动态的自动化调整,进而提升了转发队列所在中间网络设备的运维效率。同时,上述实施例能够较为准确的设置数据转发队列缓存和主动拥塞通知水线,能够在缓解网络拥塞的同时,保障了中间网络设备在数据转发时延和吞吐量等方面的网络性能。
下面结合图2描述利用机器学习模型获得队列控制参数的一些实施例。
图2示出了利用机器学习模型获得队列控制参数的一些实施例的流程示意图。如图2所示,这些实施例中包括步骤S2012~步骤S2014。
在步骤S2012中,将数据转发队列的状态参数输入预先训练的第一深度学习网络,以识别状态参数的业务类型。
其中,第一深度学习网络例如可以为具有分类功能的卷积神经网络。
若状态参数的业务类型为已有业务,则执行步骤S2013。在步骤 S2013中,将状态参数输入预先训练的第二深度学习网络,获得数据转发队列的第一队列控制参数。其中,第一队列控制参数包括第一主动拥塞通知水线和第一数据转发队列缓存。
若状态参数的业务类型为新业务,则执行步骤S2014。在步骤S2014中,利用启发式搜索算法对状态参数进行处理,获得数据转发队列的第二队列控制参数。其中,第二队列控制参数包括第二主动拥塞通知水线和第二数据转发队列缓存。
根据在利用启发式搜索算法对状态参数进行处理时,可以根据数据转发队列的转发时延、拥塞丢包率和队列占用率来构建估价函数。
如果第二主动拥塞通知水线设置得过小,数据发送端将在大多数情况下以较低的速率向中间网络设备的数据转发队列发送数据,这将导致数据转发队列的转发时延较高。如果第二主动拥塞通知水线设置得过大,数据发送端将在大多数情况下以较高的速率向中间网络设备的数据转发队列发送数据,这将导致数据转发队列的拥塞丢包率较高。
如果第二数据转发队列缓存设置得过小,将导致数据转发队列的拥塞丢包率较高;如果第二数据转发队列缓存设置得过大,将导致数据转发队列的队列占用率较低,造成资源浪费。
由此可见,第二主动拥塞通知水线以及第二数据转发队列缓存的设置,将影响到数据转发队列的转发时延、拥塞丢包率和队列占用率。有鉴于此,估价函数的函数值分别与数据转发队列的转发时延、拥塞丢包率和队列占用率成正比,并在利用启发式搜索算法进行处理时,寻找尽可能使估价函数的函数值最小的第二主动拥塞通知水线以及第二数据转发队列缓存。
在一些实施例中,还包括步骤S2010。在步骤S2010中,利用数据转发队列的历史状态参数和标注的业务类型标签,对第一深度学习网络进行训练,使第一深度学习网络能够识别状态参数的业务类型。其中,业务类型标签包括已有业务类型标签和新业务类型标签。
在一些实施例中,还包括步骤S2011。在步骤S2011中,利用数据转发队列的历史状态参数和队列控制参数经验值,对第二深度学习网络进行训练,使第一深度学习网络能够根据输入的状态参数输出第一队列控制参数。
步骤S2010列举了采用监督学习的方式训练第一深度学习网络的过程,步骤S2011列举了采用监督学习的方式训练第二深度学习网络的过程。此外,还可以采用非监督学习的方式训练第二深度学习网络,或者采用深度Q网络作为第二深度学习网络。采用深度Q网络作为第二深度学习网络时,思路与前述启发式搜索算法相类似,将数据转发队列的状态参数作为当前状态s0,将第一队列控制参数作为动作a0,将设置了第一队列控制参数后数据转发队列的状态参数作为下一状态 s1。同时,设置奖励函数r,奖励函数r的函数值分别与数据转发队列的转发时延、拥塞丢包率和队列占用率成反比。
本领域技术人员能够理解,这些实施例中的启发式搜索算法以及深度Q网络可以采用现有技术来实现,启发式搜索算法以及深度Q网络本身不作为本公开的发明点。
上述实施例能够较为准确的设置数据转发队列缓存和主动拥塞通知水线,能够在缓解网络拥塞的同时,保障了中间网络设备在数据转发时延和吞吐量等方面的网络性能。
下面结合图3描述本公开调整数据转发队列的方法的应用例。
图3示出了本公开调整数据转发队列的方法的应用例的示意图。如图3所示,该应用例中包括位于中间网络设备的数据转发队列、人工智能芯片、控制参数配置装置。该应用例的工作流程如下:
(1)数据转发队列接收到数据包后,会根据数据转发队列的状态参数判断是否使能INT(Inband Network Telemetry,带内网络遥测) 功能。如果使能INT功能,会将数据转发队列的转发时延和队列深度等信息封装到INT元数据,并且在数据推送Postcard模式下,直接在本跳设备(中间网络设备)将INT元数据推送到人工智能芯片。
INT元数据具体举例如下,包括:
版本号Ver,占2bit;
标识Flags,占9bit,包括允许复制标识以及其它预留比特;
收集数据项的数量Instruction Count,占5bit;
最大跳数Max Hop Count,占8bit,表示报文中可封装的元数据的最大数量;
当前总跳数Total Hop Count,占8bit,表示当前报文中封装的元数据的数量;
元数据的具体内容Instruction Bitmap,占8bit。
其中,Instruction Bitmap字段8个bit分别对应8个数据选项,每个bit的代表该项数据需要收集到元数据中。Instruction Bitmap的字段设置例如表1所示。
表1
字段 | 数据选项 |
bit0 | 交换机ID |
bit1 | 入端口号 |
bit2 | 数据转发时间戳 |
bit3 | 队列深度 |
bit4 | 数据流入时间戳 |
bit5 | 队列占用率 |
bit6 | 队列拥塞状态 |
bit7 | 出端口链路利用率 |
数据转发队列支持配置基于阈值来触发INT元数据推送,能够有效控制INT元数据推送的触发条件,可降低人工智能芯片的处理负载,避免大量带内测量数据对人工智能芯片的冲击。
(2)人工智能芯片根据CNN(Convolutional Neural Networks, 卷积神经网络)对INT元数据中的状态参数进行识别。对于已有业务类型的状态参数,通过DQN(Deep QNetwork,深度Q网络)算法进行处理;对于新业务类型的状态参数,采用启发式搜索算法进行处理。
人工智能芯片中,通过不同的算法对状态参数进行分类处理,能够大幅提升人工智能处理效率,根据触发的INT推送数据中的队列状态参数,分析得到合适的队列控制参数。
(3)控制参数配置装置将分析得到队列控制参数转发至数据转发队列,并为数据转发队列配置队列控制参数。队列控制参数具体可以包括ECN水线、数据转发队列缓存等等。
根据数据转发队列缓存判断拥塞发生时,一方面自动调高数据转发队列缓存,缓存突发的数据流量,避免丢包重传对业务质量造成负面影响;另一方面自动调低ECN水线,通知数据发送端降低发送速率,解决网络拥塞。
根据数据转发队列缓存判断拥塞消失时,一方面自动调低队列缓存,保障缓存资源的利用率;另一方面调高ECN水线,通知数据发送端提高发送速率,降低数据转发时延,提高业务响应速率和数据吞吐量。
本领域技术人员能够理解,边缘计算网络通常承载对数据转发时延敏感的业务。在业务流量不均衡的情况下,网络丢包重传对这些业务的用户体验影响较大。同时,边缘计算网络的机房位置相对偏远,分布地点也较为分散,当这些业务发生卡顿甚至中断的情况下,运维人员很难实时、精准的定位网络拥塞问题和数据丢包问题。在上述应用例中,将人工智能芯片集成在边缘计算网络的中间网络设备中,能够实现对边缘计算网络的自动化运维,有效提高边缘计算网络的运维效率。
下面结合图4描述本公开调整数据转发队列的装置的一些实施例。
图4示出了本公开一些实施例的调整数据转发队列的装置的结构示意图。如图4所示,调整数据转发队列的装置40包括:状态参数输入模块402,被配置为:将数据转发队列的状态参数输入预先训练的机器学习模型,获得数据转发队列的队列控制参数;其中,状态参数包括数据转发队列的转发时延和队列深度,队列控制参数包括主动拥塞通知水线和数据转发队列缓存;控制参数设置模块403,被配置为:为数据转发队列设置队列控制参数,以调整数据转发队列的状态参数;其中,在队列深度未超过主动拥塞通知水线的情况下,数据转发队列通知数据发送端以第一速率向数据转发队列发送数据;在队列深度超过主动拥塞通知水线的情况下,数据转发队列通知数据发送端以第二速率向数据转发队列发送数据;第二速率大于第一速率。
上述实施例通过人工智能技术,能够对数据转发队列的队列控制参数进行动态的自动化设置,从而实现了对数据转发队列的队列状态参数进行动态的自动化调整,进而提升了转发队列所在中间网络设备的运维效率。同时,上述实施例能够较为准确的设置数据转发队列缓存和主动拥塞通知水线,能够在缓解网络拥塞的同时,保障了中间网络设备在数据转发时延和吞吐量等方面的网络性能。
在一些实施例中,状态参数输入模块402被配置为:在转发时延大于第一阈值或小于第二阈值的情况下,或者,在队列深度大于第三阈值或小于第四阈值的情况下,将状态参数输入预先训练的机器学习模型,其中,第一阈值大于第二阈值,第三阈值大于第四阈值。
在数据转发队列的状态参数满足一定阈值条件的情况下,将状态参数输入预先训练的机器学习模型进行处理,能够有效控制预测队列控制参数的触发条件,降低机器学习模型的工作负荷。
在一些实施例中,状态参数输入模块402被配置为:将数据转发队列的状态参数输入预先训练的第一深度学习网络,以识别状态参数的业务类型;若状态参数的业务类型为已有业务,将状态参数输入预先训练的第二深度学习网络,获得数据转发队列的第一队列控制参数,第一队列控制参数包括第一主动拥塞通知水线和第一数据转发队列缓存;若状态参数的业务类型为新业务,利用启发式搜索算法对状态参数进行处理,获得数据转发队列的第二队列控制参数,第二队列控制参数包括第二主动拥塞通知水线和第二数据转发队列缓存。
在一些实施例中,该装置40还包括第一网络训练模块400,被配置为:利用数据转发队列的历史状态参数和标注的业务类型标签,对第一深度学习网络进行训练,使第一深度学习网络能够识别状态参数的业务类型,其中,业务类型标签包括已有业务类型标签和新业务类型标签。
在一些实施例中,第一深度学习网络为卷积神经网络。
在一些实施例中,该装置40还包括第二网络训练模块401,被配置为:利用数据转发队列的历史状态参数和队列控制参数经验值,对第二深度学习网络进行训练,使第一深度学习网络能够根据输入的状态参数输出第一队列控制参数。
在一些实施例中,第二深度学习网络为深度Q网络。
上述实施例能够较为准确的设置数据转发队列缓存和主动拥塞通知水线,能够在缓解网络拥塞的同时,保障了中间网络设备在数据转发时延和吞吐量等方面的网络性能。
在本申请所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,可以为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
下面结合图5描述本公开调整数据转发队列的装置的另一些实施例。
图5示出了本公开另一些实施例的调整数据转发队列的装置的结构示意图。如图5所示,调整数据转发队列的装置50包括:存储器510以及耦接至该存储器510的处理器520,处理器520被配置为基于存储在存储器510中的指令,执行前述任意一些实施例中的调整数据转发队列的方法。
其中,存储器510例如可以包括系统存储器、固定非易失性存储介质等。系统存储器例如存储有操作系统、应用程序、引导装载程序(Boot Loader)以及其他程序等。
调整数据转发队列的装置50还可以包括输入输出接口530、网络接口540、存储接口550等。这些接口530、540、550以及存储器510 和处理器520之间例如可以通过总线560连接。其中,输入输出接口 530为显示器、鼠标、键盘、触摸屏等输入输出设备提供连接接口。网络接口540为各种联网设备提供连接接口。存储接口550为SD卡、 U盘等外置存储设备提供连接接口。
本公开还包括一种非瞬时性计算机可读存储介质,其上存储有计算机指令,该指令被处理器执行时实现前述任意一些实施例中的调整数据转发队列的方法。
前述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备 (可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、只读存储器 (ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
本公开是参照根据本公开实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、商品或者设备中还存在另外的相同要素。
以上所述仅为本公开的较佳实施例,并不用以限制本公开,凡在本公开的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本公开的保护范围之内。
Claims (16)
1.一种调整数据转发队列的方法,包括:
将数据转发队列的状态参数输入预先训练的机器学习模型,获得数据转发队列的队列控制参数;其中,所述状态参数包括数据转发队列的转发时延和队列深度,所述队列控制参数包括主动拥塞通知水线和数据转发队列缓存;
为数据转发队列设置所述队列控制参数,以调整数据转发队列的状态参数;其中,在所述队列深度未超过主动拥塞通知水线的情况下,数据转发队列通知数据发送端以第一速率向数据转发队列发送数据;在所述队列深度超过主动拥塞通知水线的情况下,数据转发队列通知数据发送端以第二速率向数据转发队列发送数据;第二速率大于第一速率。
2.根据权利要求1所述的方法,其中,所述将数据转发队列的状态参数输入预先训练的机器学习模型包括:在所述转发时延大于第一阈值或小于第二阈值的情况下,或者,在所述队列深度大于第三阈值或小于第四阈值的情况下,将所述状态参数输入预先训练的机器学习模型,其中,第一阈值大于第二阈值,第三阈值大于第四阈值。
3.根据权利要求1所述的方法,其中,所述将数据转发队列的状态参数输入预先训练的机器学习模型,获得数据转发队列的队列控制参数包括:
将数据转发队列的状态参数输入预先训练的第一深度学习网络,以识别所述状态参数的业务类型;
若所述状态参数的业务类型为已有业务,将所述状态参数输入预先训练的第二深度学习网络,获得数据转发队列的第一队列控制参数,所述第一队列控制参数包括第一主动拥塞通知水线和第一数据转发队列缓存;
若所述状态参数的业务类型为新业务,利用启发式搜索算法对所述状态参数进行处理,获得数据转发队列的第二队列控制参数,所述第二队列控制参数包括第二主动拥塞通知水线和第二数据转发队列缓存。
4.根据权利要求3所述的方法,还包括:
利用数据转发队列的历史状态参数和标注的业务类型标签,对第一深度学习网络进行训练,使第一深度学习网络能够识别所述状态参数的业务类型,其中,所述业务类型标签包括已有业务类型标签和新业务类型标签。
5.根据权利要求3所述的方法,其中,所述第一深度学习网络为卷积神经网络。
6.根据权利要求3所述的方法,还包括:
利用数据转发队列的历史状态参数和队列控制参数经验值,对第二深度学习网络进行训练,使第一深度学习网络能够根据输入的所述状态参数输出所述第一队列控制参数。
7.根据权利要求3所述的方法,其中,所述第二深度学习网络为深度Q网络。
8.一种调整数据转发队列的装置,包括:
状态参数输入模块,被配置为:将数据转发队列的状态参数输入预先训练的机器学习模型,获得数据转发队列的队列控制参数;其中,所述状态参数包括数据转发队列的转发时延和队列深度,所述队列控制参数包括主动拥塞通知水线和数据转发队列缓存;
控制参数设置模块,被配置为:为数据转发队列设置所述队列控制参数,以调整数据转发队列的状态参数;其中,在所述队列深度未超过主动拥塞通知水线的情况下,数据转发队列通知数据发送端以第一速率向数据转发队列发送数据;在所述队列深度超过主动拥塞通知水线的情况下,数据转发队列通知数据发送端以第二速率向数据转发队列发送数据;第二速率大于第一速率。
9.根据权利要求8所述的装置,其中,所述状态参数输入模块被配置为:在所述转发时延大于第一阈值或小于第二阈值的情况下,或者,在所述队列深度大于第三阈值或小于第四阈值的情况下,将所述状态参数输入预先训练的机器学习模型,其中,第一阈值大于第二阈值,第三阈值大于第四阈值。
10.根据权利要求8所述的装置,其中,所述状态参数输入模块被配置为:
将数据转发队列的状态参数输入预先训练的第一深度学习网络,以识别所述状态参数的业务类型;
若所述状态参数的业务类型为已有业务,将所述状态参数输入预先训练的第二深度学习网络,获得数据转发队列的第一队列控制参数,所述第一队列控制参数包括第一主动拥塞通知水线和第一数据转发队列缓存;
若所述状态参数的业务类型为新业务,利用启发式搜索算法对所述状态参数进行处理,获得数据转发队列的第二队列控制参数,所述第二队列控制参数包括第二主动拥塞通知水线和第二数据转发队列缓存。
11.根据权利要求10所述的装置,还包括第一网络训练模块,被配置为:利用数据转发队列的历史状态参数和标注的业务类型标签,对第一深度学习网络进行训练,使第一深度学习网络能够识别所述状态参数的业务类型,其中,所述业务类型标签包括已有业务类型标签和新业务类型标签。
12.根据权利要求10所述的装置,其中,所述第一深度学习网络为卷积神经网络。
13.根据权利要求10所述的装置,还包括第二网络训练模块,被配置为:利用数据转发队列的历史状态参数和队列控制参数经验值,对第二深度学习网络进行训练,使第一深度学习网络能够根据输入的所述状态参数输出所述第一队列控制参数。
14.根据权利要求10所述的装置,其中,所述第二深度学习网络为深度Q网络。
15.一种调整数据转发队列的装置,包括:
存储器;以及
耦接至所述存储器的处理器,所述处理器被配置为基于存储在所述存储器中的指令,执行如权利要求1至7中任一项所述的调整数据转发队列的方法。
16.一种非瞬时性计算机可读存储介质,其中,所述非瞬时性计算机可读存储介质存储有计算机指令,所述指令被处理器执行时实现如权利要求1至7中任一项所述的调整数据转发队列的方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110264211.6A CN115086236A (zh) | 2021-03-11 | 2021-03-11 | 调整数据转发队列的方法、装置及计算机可读存储介质 |
PCT/CN2021/128415 WO2022188440A1 (zh) | 2021-03-11 | 2021-11-03 | 调整数据转发队列的方法、装置及计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110264211.6A CN115086236A (zh) | 2021-03-11 | 2021-03-11 | 调整数据转发队列的方法、装置及计算机可读存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115086236A true CN115086236A (zh) | 2022-09-20 |
Family
ID=83226289
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110264211.6A Pending CN115086236A (zh) | 2021-03-11 | 2021-03-11 | 调整数据转发队列的方法、装置及计算机可读存储介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN115086236A (zh) |
WO (1) | WO2022188440A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115801708A (zh) * | 2023-02-03 | 2023-03-14 | 中国科学技术大学 | 基于强化学习的ecn水线自适应配置方法 |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116880770A (zh) * | 2023-07-27 | 2023-10-13 | 山东溯源安全科技有限公司 | 一种u盘读取控制方法、电子设备及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120224480A1 (en) * | 2009-10-27 | 2012-09-06 | Shell Nakash | Technique for throughput control for packet switches |
CN111372284A (zh) * | 2020-03-10 | 2020-07-03 | 中国联合网络通信集团有限公司 | 一种拥塞处理方法及装置 |
US20200280518A1 (en) * | 2020-01-28 | 2020-09-03 | Intel Corporation | Congestion management techniques |
CN112104562A (zh) * | 2019-06-17 | 2020-12-18 | 华为技术有限公司 | 拥塞控制方法及装置、通信网络、计算机存储介质 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2823610B1 (en) * | 2012-03-09 | 2019-01-02 | British Telecommunications public limited company | Signalling congestion |
CN107634911B (zh) * | 2017-10-31 | 2020-03-10 | 河南科技大学 | 一种信息中心网络中基于深度学习的自适应拥塞控制方法 |
CN110278157B (zh) * | 2018-03-14 | 2022-08-09 | 华为技术有限公司 | 拥塞控制方法及网络设备 |
CN114157603A (zh) * | 2018-05-04 | 2022-03-08 | 华为技术有限公司 | 拥塞控制方法、装置、设备及存储介质 |
CN112054964B (zh) * | 2019-06-05 | 2023-11-28 | 中兴通讯股份有限公司 | 队列拥塞控制方法、装置、设备及存储介质 |
CN110891027B (zh) * | 2019-12-06 | 2022-07-12 | 湖南大学 | 基于队列调度的命名数据网络传输控制方法、装置和设备 |
CN111526096B (zh) * | 2020-03-13 | 2022-03-15 | 北京交通大学 | 智融标识网络状态预测与拥塞控制系统 |
US11979330B2 (en) * | 2020-06-22 | 2024-05-07 | Google Llc | Rate update engine for reliable transport protocol |
-
2021
- 2021-03-11 CN CN202110264211.6A patent/CN115086236A/zh active Pending
- 2021-11-03 WO PCT/CN2021/128415 patent/WO2022188440A1/zh active Application Filing
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120224480A1 (en) * | 2009-10-27 | 2012-09-06 | Shell Nakash | Technique for throughput control for packet switches |
CN112104562A (zh) * | 2019-06-17 | 2020-12-18 | 华为技术有限公司 | 拥塞控制方法及装置、通信网络、计算机存储介质 |
US20200280518A1 (en) * | 2020-01-28 | 2020-09-03 | Intel Corporation | Congestion management techniques |
CN111372284A (zh) * | 2020-03-10 | 2020-07-03 | 中国联合网络通信集团有限公司 | 一种拥塞处理方法及装置 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115801708A (zh) * | 2023-02-03 | 2023-03-14 | 中国科学技术大学 | 基于强化学习的ecn水线自适应配置方法 |
CN115801708B (zh) * | 2023-02-03 | 2023-04-21 | 中国科学技术大学 | 基于强化学习的ecn水线自适应配置方法 |
Also Published As
Publication number | Publication date |
---|---|
WO2022188440A1 (zh) | 2022-09-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP1192762B1 (en) | Improving system performance in a data network through queue management based on ingress rate monitoring | |
US9800483B2 (en) | Method and apparatus for dynamic bandwidth allocation for optimizing network utilization | |
US20160173383A1 (en) | Method and apparatus for priority flow and congestion control in ethernet network | |
CN115086236A (zh) | 调整数据转发队列的方法、装置及计算机可读存储介质 | |
CN102984077B (zh) | 网络拥塞的控制方法及系统 | |
US10380047B2 (en) | Traffic-dependent adaptive interrupt moderation | |
US9674779B2 (en) | Methods for deciding when to switch between communication channel states, and network nodes therefor | |
CN109451534A (zh) | 一种用于5G系统会话管理中QoS流的动态控制方法和装置 | |
Abualhaj et al. | FLRED: an efficient fuzzy logic based network congestion control method | |
CN109660468B (zh) | 一种端口拥塞管理方法、装置和设备 | |
CN102823206B (zh) | 用于降低分组处理线卡中的能量消耗的方法以及分组处理线卡 | |
CN101360049A (zh) | 一种报文转发方法及装置 | |
CN101547159A (zh) | 一种避免网络拥塞的方法和设备 | |
CN107431667A (zh) | 在网络设备中调度数据包 | |
Tshiningayamwe et al. | A priority rate-based routing protocol for wireless multimedia sensor networks | |
EP3267639A1 (en) | Congestion control within a communication network | |
EP4054134A1 (en) | Congestion control method and releated device | |
CN118102318B (zh) | 一种基于5g技术的数据传输系统 | |
US12052607B2 (en) | Communication apparatus, communication method, and program | |
Danladi et al. | DyRED: An enhanced random early detection based on a new adaptive congestion control | |
CN106453114B (zh) | 流量分配方法及装置 | |
US20150289162A1 (en) | Methods circuits devices systems and associated computer executable code for implementing cell congestion detection in a mobile network | |
Kühn | Systematic classification of self-adapting algorithms for power-saving operation modes of ICT systems | |
CN112491573B (zh) | 一种网络参数配置方法及装置 | |
US20150131446A1 (en) | Enabling virtual queues with qos and pfc support and strict priority scheduling |
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 |