CN114567597B - 一种物联网中基于深度强化学习的拥塞控制方法及装置 - Google Patents
一种物联网中基于深度强化学习的拥塞控制方法及装置 Download PDFInfo
- Publication number
- CN114567597B CN114567597B CN202210157995.7A CN202210157995A CN114567597B CN 114567597 B CN114567597 B CN 114567597B CN 202210157995 A CN202210157995 A CN 202210157995A CN 114567597 B CN114567597 B CN 114567597B
- Authority
- CN
- China
- Prior art keywords
- period
- node
- rto
- data packet
- data
- 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 27
- 230000002787 reinforcement Effects 0.000 title claims abstract description 22
- 230000009471 action Effects 0.000 claims abstract description 52
- 238000003062 neural network model Methods 0.000 claims abstract description 28
- 230000005540 biological transmission Effects 0.000 claims description 49
- 230000008569 process Effects 0.000 claims description 11
- 230000007246 mechanism Effects 0.000 claims description 10
- 238000012549 training Methods 0.000 claims description 7
- 230000006855 networking Effects 0.000 claims 1
- 230000006870 function Effects 0.000 description 7
- 238000013528 artificial neural network Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 4
- 210000002569 neuron Anatomy 0.000 description 3
- ORILYTVJVMAKLC-UHFFFAOYSA-N Adamantane Natural products C1C(C2)CC3CC1CC2C3 ORILYTVJVMAKLC-UHFFFAOYSA-N 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 238000011156 evaluation Methods 0.000 description 2
- 238000002474 experimental method Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000013178 mathematical model Methods 0.000 description 2
- 230000007704 transition Effects 0.000 description 2
- 230000004913 activation Effects 0.000 description 1
- 230000004075 alteration Effects 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000001186 cumulative effect Effects 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 230000003203 everyday effect Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 230000009191 jumping Effects 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000001953 sensory effect Effects 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
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
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- 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
- G06N3/084—Backpropagation, e.g. using gradient descent
-
- 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
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/50—Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Life Sciences & Earth Sciences (AREA)
- Molecular Biology (AREA)
- Artificial Intelligence (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明属于计算机技术领域,具体涉及一种物联网中基于深度强化学习的拥塞控制方法及装置,采用低功耗有损网络拓扑结构,将中央协调器作为根节点,智能体作为子孙节点;获取子孙节点的数据集并上传给中央协调器;构建基于DQN算法的神经网络模型,中央协调器从数据集中得到子孙节点下一时刻的状态输入训练好的神经网络模型;神经网络模型输出子孙节点下一时刻的动作并通过中央协调器分配给相应的子孙节点,实现网络的拥塞控制;本发明采用集中式方法收集网络节点信息,通过模型获取节点下一个动作,并根据中央协调器进行分配,无需每个节点自己来进行退避因子的计算,减少了整个网络的开销,降低网络的拥塞程度,减少数据包重传次数。
Description
技术领域
本发明属于计算机技术领域,具体涉及一种物联网中基于深度强化学习的拥塞控制方法及装置。
背景技术
物联网(Internet of Things,IoT)是一个由互连的计算设备,机械,数字设备,具有唯一标识符的对象组成的系统。IoT能够将车辆、手表、空调等日常设备连接到互联网并从这些设备收集传感数据,而无需任何人与人之间或人与计算机之间的交互。但是IoT生成的大量数据会非常迅速地聚集在一起,增加了对网络具有更高吞吐量,可靠性和可预测性的需求。
IoT系统通常建立在小型的电池供电设备上,故IoT设备通常计算能力有限,并且依赖低功耗通信技术来交换数据。传统的互联网协议可能无法适用于资源受限的环境,尤其是考虑到这些设备的资源限制。为了解决这个问题,考虑到通信模式和资源可用性提出了几种新协议,其中就有受限应用协议(Constrained Application Protocol,CoAP)。CoAP是互联网工程任务组(The Internet Engineering Task Force,IETF)为物联网中受限设备制定的RESTful风格的应用层协议,其传输层采用的是用户数据报协议(User DatagramProtocol,UDP),因此它的开销很少,特别适用于IoT中资源受限,且只有少量内存空间和有限计算能力的设备。
CoAP的传输层协议不提供可靠传输保证的UDP,导致CoAP数据包在到达接收端时可能会发生乱序、重复或者丢失,因此CoAP引入了可确认(Confirmable,CON)和不可确认(Non-confirmable,NON)的消息类型,实现了一个轻量级的可靠性传输机制。CoAP可靠性传输机制主要分为两个方面:(1)针对CON数据包,设计了简单的基于二进制指数退避(BinaryExponential Backoff,BEB)的停止等待重传机制;(2)对CON和NON数据包进行重复性检测。当接收端接收到一个CON数据包后,需要向发送端返回一个确认(Acknowledge,ACK),如果ACK丢失或者发送端没有在固定的重传超时(Retransmission Timeout,RTO范围内接收到ACK,那么发送端就会以指数级的速率增加RTO并重传CON数据包,直到接收到ACK或者重传次数达到上限。
CoAP通过RTO和BEB提供可靠性和最小拥塞控制,但是它不维护端到端的连接信息,因此不能根据网络条件调整RTO。此外,CoAP在收到重传数据包的确认ACK后将RTO重置为其默认值。这种重置RTO的方法会降低具有高延迟的网络的性能并导致虚假重传。现有技术大多都是通过建立数学模型来对RTO进行更新,这些数学模型的参数虽然是通过大量实验后进行设定的,但这些实验只是针对部分特定网络结构,且实验环境大多是稳定的仿真环境,不能很好的符合真实场景。同时现有技术很少对历史传输信息进行挖掘,仅仅只是考虑根据上次或者前几次的传输对下一次传输所造成的影响。
发明内容
为解决上述问题,本发明提供了一种物联网中基于深度强化学习的拥塞控制方法及装置,在中央协调器(Central Coordinator,CCO)上应用DQN算法,得到当前状态下的最优策略,以此来降低网络的拥塞程度,减少数据包重传次数,且适用于任何网络结构,包括星型、网格型、纺锤体型、随机型、线性。
一种物联网中基于深度强化学习的拥塞控制方法,采用低功耗有损网络拓扑结构,其包括一个根节点和多个子孙节点,基于深度强化学习的拥塞控制方法包括以下步骤:
S1.将中央协调器作为根节点,智能体作为子孙节点;
S2.获取子孙节点的数据并上传给中央协调器,数据包括重传超时的平均值,往返时延的平均值,PDR以及最小的往返时延;
S3.构建基于DQN算法的神经网络模型,中央协调器从数据集中得到子孙节点下一时刻的状态输入训练好的神经网络模型;
S4.神经网络模型输出子孙节点下一时刻的动作,通过中央协调器将下一时刻的动作分配给相应的子孙节点,实现网络的拥塞控制。
进一步的,子孙节点收集对应数据并上传给中央协调器的过程包括:
S11.设定一个周期时间为k;
S12.在周期时间k内子孙节点进行正常数据包的传输;
S13.子孙节点判断周期k是否结束,若是,则执行步骤S14,否则返回步骤S12;
S14.子孙节点统计该周期k内的所需数据并发送给中央协调器,发送完成后子孙节点进入下一个周期。
进一步的,子孙节点在正常数据包的传输中发生重传时,采用退避机制扩增重传超时时间,包括:
S21.发送数据包后判断在重传超时时间内是否收到ACK,若收到,则接受该数据包并执行步骤S24,否则执行步骤S22;
S22.判断该数据包的重传次数是否超过最大重传次数,若是,则丢弃当前数据包并执行步骤S24,否则执行步骤S23;
S23.通过公式RTOi+1=RTOi×at更新重传超时时间,更新后返回步骤S21;
S24.根据RTOinit更新算法计算并更新下一个数据包第一次传输的重传超时初始值,更新后结束流程;
其中,RTOi表示当前数据包第i次传输的重传超时时间,at为子孙节点t时刻的动作。
进一步的,RTOinit更新算法表示为:
其中,RTOinit是数据包第一次传输的重传超时初始值,RTTmin表示为周期k内测量的最小的往返时延,RTTmax表示为周期k内测量的最大的往返时延,RTO表示上一次传输使用到的重传超时初始值。
进一步的,中央协调器通过DQN算法对子孙节点的数据集进行处理的过程包括:
解析子孙节点上传的数据,得到当前子孙节点的下一时刻状态和奖励/>
将下一时刻状态输入神经网络模型得到下一时刻的动作;
中央协调器将下一时刻动作发送给当前子孙节点。
在训练过程中,还需要将状态动作、奖励/>和下一时刻状态/>组合为四元组,去掉该四元组与当前子孙节点的关联性后放入经验池。
进一步的,子孙节点的状态表示为:
其中,为子孙节点i在t时刻的状态,RTOavg为周期k内重传超时的平均值,RTTavg为周期k内往返时延的平均值,RTTmin为周期k内测量的最小的往返时延,TC为周期k内平均每个数据包传输次数,最大传输次数为5,PDR为周期k内的包递交率。
进一步的,子孙节点的奖励表示为:
其中,为子孙节点i在t时刻的奖励,RTOavg为周期k内重传超时的平均值,RTTavg为周期k内往返时延的平均值,RTTmin为周期k内测量的最小的往返时延,TC为周期k内平均每个数据包传输次数,最大传输次数为5。
一种基于深度强化学习的拥塞控制装置,包括:
周期判断模块,用于设定一个周期时间并判断网络节点的一个周期是否结束;
数据获取模块,用于获取网络节点在一个周期内的所需数据,数据包括重传超时的平均值,往返时延的平均值,PDR以及最小的往返时延;
中央协调模块,用于收集网络节点的数据并分析,得到网络节点的下一时刻状态和当前奖励,并将神经网络模型的输出结果分配给相应的网络节点;
神经网络模型,用于根据网络节点的下一时刻状态得到其下一时刻的动作。
本发明的有益效果:
提出一种物联网中基于深度强化学习的拥塞控制方法,采用CCO进行集中式的控制方式,由CCO收集网络中普通节点上传的信息并从中解析出下一时刻的状态和当前奖励,再将下一时刻的状态输入到基于DQN算法的神经网络模型中,得到下一时刻的动作,CCO将该动作发送给具体的普通节点;普通节点每个周期统计该周期内,重传超时的平均值、往返时延的平均值、包递交率、传输次数以及最小的往返时延,并将这些信息发送给CCO,然后进入下一个周期。
本发明使用集中式的方式在CCO上应用DQN算法,得到当前状态下的最优策略,以此来降低网络的拥塞程度,减少数据包重传次数,并且该方法能在一段时间内收敛,不会造成网络太大的波动。
附图说明
图1为本发明的网络拓扑结构示意图;
图2为本发明的方法流程图;
图3为本发明的CCO的一次DQN算法执行流程图;
图4为本发明的普通节点一个周期内DQN算法运行流程图;
图5为本发明的退避机制示意图;
图6为本发明的神经网络模型结构图;
图7为本发明神经网络模型中的神经网络结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
低功耗有损网络(Low-Power and Lossy Networks,LLN)是一种树形网络,有一个根节点和若干子孙节点。LLN是一类内部链接和路由器都受限的网络,该网络下的路由器的处理器功能、内存及系统功耗(电池供电)都可能受到较大的限制,而里面的网络连接也具有高丢包率、低数据传输率及不稳定的特性,LLN网络的拓扑结构如图1所示,其中C是CCO,其余节点是普通节点,为此本发明提出一种物联网中基于深度强化学习的拥塞控制方法及装置。网络开始运行的时候,每个普通节点都有自己默认的一个退避因子F(默认值为2)。当运行一段时间之后,即一个周期K之后,网络中的普通节点会把自己的一些状态信息发送给CCO,CCO在收到了这些信息后,会运行智能算法并给出一个k值,返回给相应的普通节点,普通节点收到对应的k值后更新自己的退避因子值。
一种基于深度强化学习的拥塞控制方法,采用低功耗有损网络的拓扑结构进行拥塞控制,如图2所述,包括以下步骤:
S1.将中央协调器作为根节点,智能体作为子孙节点,子孙节点也称为普通节点;
S2.获取子孙节点的数据集并上传给中央协调器,数据集包括重传超时的平均值、往返时延的平均值、包递交率、传输次数以及最小的往返时延;
S3.构建基于DQN算法的神经网络模型,中央协调器从数据集中得到子孙节点下一时刻的状态输入训练好的神经网络模型;
S4.神经网络模型输出子孙节点下一时刻的动作,通过中央协调器将下一时刻的动作分配给相应的子孙节点,实现网络的拥塞控制。
本发明应用深度Q网络(Deep Q-Network,DQN)算法,采用集中式的方式,由中央协调器(Central Coordinator,CCO),即根节点运行DQN算法并分配网络中每个节点的退避因子,用以解决网络拥塞问题。DQN是强化学习和深度学习的结合,在强化学习的基础上,加入了神经网络。
强化学习是一种通过环境交互,学习状态到行为的映射关系,以获得最大累积期望回报的方法。强化学习中有两个可以进行交互对象,分别是智能体(Agent)和环境(Environment)。智能体与环境进行交互,感知环境的状态(State),并根据反馈的奖励(Reward)学习选择一个合适的动作(Action),从而最大化长期总收益。环境接收智能体执行的动作,环境发生改变,并反馈新的奖励给智能体。本发明的智能体为网络中的普通节点,环境为整个LLN网络。
强化学习基于马尔科夫决策过程(Markov Decision Process,MDP),智能体下一时刻的状态只和当前的状态和行为有关系,和之前的所有历史状态无关。MDP由四元组(S,A,P,R)组成,其中各元素定义如下所示:
S:状态空间集,st表示t时刻的状态,S={s1,s2,s3,…,st,…,sn}。
A:动作空间集,at表示t时刻采取的动作,A={a1,a2,a3,…,at,…,an}。
P:状态转移概率,表示当前状态st下执行动作at后跳转到下一状态st+1的概率分布。
R:奖励,在状态st下执行动作at后转移到状态st+1的奖励为rt,rt=R(st,at)。
强化学习的目标是学习出一种策略π,能够指导下一个动作的执行,或者学习出一种最优的动作值函数Q*(s,a),用它来选择最优动作进行执行:
at=argmaxaQ*(st,a)
DQN使用神经网络来近似值函数,有目标网络和经验回放两大机制。经验回放是指,智能体在探索环境时,会积累一定的经验或记忆,当累积到一定程度时,随机抽取一小批样本进行训练。DQN中有两个神经网络,即估计网络eval_net和目标网络target_net。利用一个估计网络来近似表示当前Q值,另一个目标网络预测目标Q值。DQN算法更新表示为:
其中,表示目标网络的输出,/>表示值函数的优化目标,即Q值。目标网络的参数不用主动更新,而是由当前值网络的参数θ更新后,经过C轮迭代后传入。不断最小化当前Q值和目标Q值之间的误差值,网络参数也不断的更新。
在本发明中,网络中有两类节点,一类节点是根节点,即CCO,另一类节点是普通节点,其各自功能如下所述:
1)普通节点:设定一个周期时间为k,在一个周期内结束时,普通节点i统计该周期内的RTO的平均值(RTOavg)、RTT的平均值(RTTavg)、包递交率(PDR,Packet Delivery Rate)、传输次数(Transmission Count,TC)以及最小的RTT(RTTmin),并将这些信息转化为下一时刻状态和当前奖励发送给CCO,然后进入下一个周期。同时,若普通节点收到了来自CCO的动作时,会更新自己当前的退避因子为/>若没有收到来自CCO的动作/>则保持前一周期的退避因子不变。
2)CCO节点:CCO不断收集网络中普通节点上传的信息,并从这些信息中得出下一时刻的状态和当前奖励/>其中i表示普通节点i,CCO得到下一时刻的状态/>后,将下一时刻的状态/>输入神经网络模型中,并得到新的动作/>将该动作发送给普通节点i。
优选地,普通节点的状态表示为:
其中,为子孙节点i在t时刻的状态,/>为子孙节点i在t+1时刻的状态,RTOavg为周期k内重传超时的平均值,RTTavg为周期k内往返时延的平均值,RTTmin为周期k内测量的最小的往返时延,TC为周期k内平均每个数据包传输次数,最大传输次数为5,PDR为周期k内的包递交率。
优选地,DQN用经验回放训练强化学习的学习过程,设置一个经验池,在经验池中存放一个四元组(st,at,rt,st+1),当CCO得到普通节点i的下一时刻的状态和当前的奖励/>后,将其与节点i先前的状态/>和动作/>组成四元组/>去掉四元组中节点的信息,即变成了(st,at,rt,st+1),将这个四元组存入经验池。
优选地,本实施例中采用的神经网络模型结构如图6所示,环境为整个LLN网络,定义了两个神经网络,分别是评估网络eval_net和目标网络target_net。首先为LLN网络中每个普通节点设置了一个初始的状态以及初始动作/>模型开始运行时,先在eval_net中进行训练。
具体地,当从环境中获取到普通节点的下一时刻状态以及当前奖励/>后,首先将其组成四元组/>并去除节点信息,存入经验池。同时将下一时刻状态输入到eval_net中,eval_net的输出是长度为7的向量,其值是动作价值函数Q(s,a;θ),为了得到当前状态下最佳的动作,选泽动作价值最大的动作,即argmaxaQ(s,a;θ)。
本实施例中采用的策略是∈-greedy策略,即以一定概率随机选择动作执行,随机选择动作的概率为0.1;以0.9的概率选择动作价值最大的动作argmaxaQ(s,a;θ)。
经验池的大小为2000,当经验池满时,将最新的经验覆盖掉最老的经验。同时,当经验池满时,target_net开始学习,此后每隔100时间步,将eval_net的参数拷贝给target_net。target_net学习时,从经验池中随机取出20条经验,计算出eval_net和target_net的Q值,并得出他们的误差,然后进行误差反向传播。同时使用Adam优化器更新eval_net的所有参数。构造Adam优化器时,使用了评估网络的参数和学习率作为优化器的构造参数,其中学习率设置为0.1。神经网络模型的相关参数设置如表1所示:
表1神经网络模型相关参数
具体地,神经网络模型结构如图7所示,输入层神经元为4个,全连接层的神经元有50个,输出层神经元个数为7个。输入层到全连接层为4×50,全连接层到输出层为50×7,最后使用ReLU激活函数。
在一实施例中,CCO的一次DQN算法执行流程如图3所示,包括:
S11.CCO节点收到普通节点上传的信息;
S12.CCO节点解析普通节点上传的数据信息,得到对应普通节点的下一时刻状态和奖励/>
S13.将下一时刻状态输入神经网络模型得到下一时刻的动作;
S14.中央协调器将下一时刻动作发送给对应普通节点。
在一实施例中,普通节点一个周期内DQN算法运行流程如图4所示,包括:
S21.设定一个周期时间为k;
S22.在周期时间k内普通节点进行正常数据包的传输;
S23.普通节点判断周期k是否结束,若是,则执行步骤S24,否则返回步骤S22;
S24.普通节点统计该周期k内的所需数据并发送给中央协调器,发送完成后普通节点进入下一个周期;
S25.普通节点等待CCO返回动作;
S26.判断普通节点是否收到CCO返回的动作,若是,则更新普通节点的退避因子并结束流程,否则返回步骤S25。
优选地,子孙节点在正常数据包的传输中发生重传时,采用退避机制扩增重传超时时间,如图5所示,包括:
S31.发送数据包后判断在重传超时时间内是否收到ACK,若收到,则接受该数据包并执行步骤S34,否则执行步骤S32;
S32.判断该数据包的重传次数是否超过最大重传次数,若是,则丢弃当前数据包并执行步骤S34,否则执行步骤S33;
S33.通过公式RTOi+1=RTOi×at更新重传超时时间,更新后返回步骤S31;
S34.根据RTOinit更新算法计算并更新下一个数据包第一次传输的重传超时初始值,更新后本轮数据包传输结束;
其中,RTOi表示当前数据包第i次传输的重传超时时间,at为子孙节点t时刻的动作。
优选地,RTOinit是数据包第一次传输时设置的初始值,当一个数据包传输成功或者传输失败并丢弃后,会对下一个数据包的RTOinit进行更新,RTOinit更新算法表示为:
其中,RTOinit是数据包第一次传输的重传超时初始值,RTTmin表示为周期k内测量的最小的往返时延,RTTmax表示为周期k内测量的最大的往返时延,RTO表示上一次传输使用到的重传超时初始值。
一种基于深度强化学习的拥塞控制装置,包括:
周期判断模块,用于设定一个周期时间并判断网络节点的一个周期是否结束;
数据获取模块,用于获取网络节点在一个周期内的所需数据,数据包括重传超时的平均值,往返时延的平均值,PDR以及最小的往返时延;
中央协调模块,用于收集网络节点的数据并分析,得到网络节点的下一时刻状态和当前奖励,并将神经网络模型的输出结果分配给相应的网络节点;
神经网络模型,用于根据网络节点的下一时刻状态得到其下一时刻的动作。
在一实施例中,本装置的状态、动作以及奖励的设置为:
状态:
动作:at∈{1,1.2,1.5,2,2.3,2.6,3},当节点发生重传时,其退避因子更新为RTOi+1=RTOi×at;
奖励:
其中RTOavg为周期k内平均的RTO值,RTTavg为周期k内平均的RTT值,RTTmin为周期k内测量的最小的RTT,TC为周期k内平均每个数据包传输次数,最大传输次数为5,PDR为周期k内的包递交率,RTOi表示当前数据包第i次传输的重传超时时间,at为子孙节点t时刻的动作。
本发明只需要在CCO上进行一段时间的深度强化学习训练,就能够得到各种网络状态下的最优RTO退避因子,CCO采用集中式方式,收集网络中每个节点的状态和奖励,将状态输入到模型中,并输出该状态下最合适的动作,并将该动作发送给对应节点,无需每个节点自己来进行退避因子的计算,减少了整个网络的开销。同时,集中式的方式有助于对全局信息的观测,得出来的结果更加符合当前网络状态。
同时DQN使用了经验回放机制,充分利用历史传输信息,有助于对当前网络中每个节点选择一个合适的动作,即退避因子。
尽管已经示出和描述了本发明的实施例,对于本领域的普通技术人员而言,可以理解在不脱离本发明的原理和精神的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由所附权利要求及其等同物限定。
Claims (2)
1.一种物联网中基于深度强化学习的拥塞控制方法,其特征在于,采用低功耗有损网络拓扑结构,其包括一个根节点和多个子孙节点,基于深度强化学习的拥塞控制方法包括以下步骤:
S1.将中央协调器作为根节点,智能体作为子孙节点;
S2.获取子孙节点的数据并上传给中央协调器,数据包括重传超时的平均值、往返时延的平均值、包递交率、传输次数以及最小的往返时延;
子孙节点收集对应数据并上传给中央协调器的过程包括:
S11.设定一个周期时间为k;
S12.在周期时间k内子孙节点进行正常数据包的传输;
S13.子孙节点判断周期k是否结束,若是,则执行步骤S14,否则返回步骤S12;
S14.子孙节点统计该周期k内的所需数据并发送给中央协调器,发送完成后子孙节点进入下一个周期,中央协调器根据子孙节点上传的信息得出下一时刻的状态和当前奖励;
子孙节点在正常数据包的传输中发生重传时,采用退避机制扩增重传超时时间,包括:
S21.发送数据包后判断在重传超时时间内是否收到ACK,若收到,则接受该数据包并执行步骤S24,否则执行步骤S22;
S22.判断该数据包的重传次数是否超过最大重传次数,若是,则丢弃当前数据包并执行步骤S24,否则执行步骤S23;
S23.通过公式RTOi+1=RTOi×at更新重传超时时间,更新后返回步骤S21;
S24.根据RTOinit更新算法计算并更新下一个数据包第一次传输的重传超时初始值,更新后结束流程;
其中,RTOi表示当前数据包第i次传输的重传超时时间,at为子孙节点t时刻的动作;
RTOinit更新算法表示为:
其中,RTOinit是数据包第一次传输的重传超时初始值,RTTmin表示为周期k内测量的最小的往返时延,RTTmax表示为周期k内测量的最大的往返时延,RTO表示上一次传输使用到的重传超时初始值;
子孙节点的状态表示为:
其中,为子孙节点i在t时刻的状态,RTOavg为周期k内重传超时的平均值,RTTavg为周期k内往返时延的平均值,RTTmin为周期k内测量的最小的往返时延,TC为周期k内平均每个数据包传输次数,最大传输次数为5,PDR为周期k内的包递交率;
子孙节点的奖励表示为:
其中,为子孙节点i在t时刻的奖励,RTOavg为周期k内重传超时的平均值,RTTavg为周期k内往返时延的平均值,RTTmin为周期k内测量的最小的往返时延,TC为周期k内平均每个数据包传输次数,最大传输次数为5;
S3.构建基于DQN算法的神经网络模型,中央协调器从数据集中得到子孙节点下一时刻的状态输入训练好的神经网络模型;
S4.神经网络模型输出子孙节点下一时刻的动作,通过中央协调器将下一时刻的动作分配给相应的子孙节点,实现网络的拥塞控制。
2.一种物联网中基于深度强化学习的拥塞控制装置,其特征在于,包括:
周期判断模块,用于设定一个周期时间并判断网络节点的一个周期是否结束;
数据获取模块,用于获取网络节点在一个周期内的所需数据,数据包括重传超时的平均值,往返时延的平均值,PDR以及最小的往返时延;
获取网络节点在一个周期内的所需数据并上传给中央协调器的过程包括:
S11.设定一个周期时间为k;
S12.在周期时间k内网络节点进行正常数据包的传输;
S13.网络节点判断周期k是否结束,若是,则执行步骤S14,否则返回步骤S12;
S14.网络节点统计该周期k内的所需数据并发送给中央协调器,发送完成后网络节点进入下一个周期,中央协调器根据网络节点上传的信息得出下一时刻的状态和当前奖励;
网络节点在正常数据包的传输中发生重传时,采用退避机制扩增重传超时时间,包括:
S21.发送数据包后判断在重传超时时间内是否收到ACK,若收到,则接受该数据包并执行步骤S24,否则执行步骤S22;
S22.判断该数据包的重传次数是否超过最大重传次数,若是,则丢弃当前数据包并执行步骤S24,否则执行步骤S23;
S23.通过公式RTOi+1=RTOi×at更新重传超时时间,更新后返回步骤S21;
S24.根据RTOinit更新算法计算并更新下一个数据包第一次传输的重传超时初始值,更新后结束流程;
其中,RTOi表示当前数据包第i次传输的重传超时时间,at为网络节点t时刻的动作;
RTOinit更新算法表示为:
其中,RTOinit是数据包第一次传输的重传超时初始值,RTTmin表示为周期k内测量的最小的往返时延,RTTmax表示为周期k内测量的最大的往返时延,RTO表示上一次传输使用到的重传超时初始值;
网络节点的状态表示为:
其中,为网络节点i在t时刻的状态,RTOavg为周期k内重传超时的平均值,RTTavg为周期k内往返时延的平均值,RTTmin为周期k内测量的最小的往返时延,TC为周期k内平均每个数据包传输次数,最大传输次数为5,PDR为周期k内的包递交率;
网络节点的奖励表示为:
其中,为网络节点i在t时刻的奖励,RTOavg为周期k内重传超时的平均值,RTTavg为周期k内往返时延的平均值,RTTmin为周期k内测量的最小的往返时延,TC为周期k内平均每个数据包传输次数,最大传输次数为5;
中央协调模块,用于收集网络节点的数据并分析,得到网络节点的下一时刻状态和当前奖励,并将神经网络模型的输出结果分配给相应的网络节点;
神经网络模型,用于根据网络节点的下一时刻状态得到其下一时刻的动作。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210157995.7A CN114567597B (zh) | 2022-02-21 | 2022-02-21 | 一种物联网中基于深度强化学习的拥塞控制方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210157995.7A CN114567597B (zh) | 2022-02-21 | 2022-02-21 | 一种物联网中基于深度强化学习的拥塞控制方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114567597A CN114567597A (zh) | 2022-05-31 |
CN114567597B true CN114567597B (zh) | 2023-12-19 |
Family
ID=81714747
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210157995.7A Active CN114567597B (zh) | 2022-02-21 | 2022-02-21 | 一种物联网中基于深度强化学习的拥塞控制方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114567597B (zh) |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109194583A (zh) * | 2018-08-07 | 2019-01-11 | 中国地质大学(武汉) | 基于深度增强学习的网络拥塞链路诊断方法及系统 |
WO2019219969A1 (en) * | 2018-05-18 | 2019-11-21 | Deepmind Technologies Limited | Graph neural network systems for behavior prediction and reinforcement learning in multple agent environments |
CN110581808A (zh) * | 2019-08-22 | 2019-12-17 | 武汉大学 | 一种基于深度强化学习的拥塞控制方法及系统 |
CN111867139A (zh) * | 2020-07-06 | 2020-10-30 | 上海交通大学 | 基于q学习的深度神经网络自适应退避策略实现方法及系统 |
WO2021128181A1 (zh) * | 2019-12-25 | 2021-07-01 | 深圳大学 | 一种自适应调节拥塞控制初始窗口的方法和系统 |
CN113992595A (zh) * | 2021-11-15 | 2022-01-28 | 浙江工商大学 | 一种基于优先经验回放dqn的sdn数据中心拥塞控制方法 |
CN114025330A (zh) * | 2022-01-07 | 2022-02-08 | 北京航空航天大学 | 一种空地协同的自组织网络数据传输方法 |
CN115335804A (zh) * | 2020-03-31 | 2022-11-11 | 阿里巴巴集团控股有限公司 | 通过减半加倍的集群通信避免网络拥塞 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20200162535A1 (en) * | 2018-11-19 | 2020-05-21 | Zhan Ma | Methods and Apparatus for Learning Based Adaptive Real-time Streaming |
-
2022
- 2022-02-21 CN CN202210157995.7A patent/CN114567597B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019219969A1 (en) * | 2018-05-18 | 2019-11-21 | Deepmind Technologies Limited | Graph neural network systems for behavior prediction and reinforcement learning in multple agent environments |
CN109194583A (zh) * | 2018-08-07 | 2019-01-11 | 中国地质大学(武汉) | 基于深度增强学习的网络拥塞链路诊断方法及系统 |
CN110581808A (zh) * | 2019-08-22 | 2019-12-17 | 武汉大学 | 一种基于深度强化学习的拥塞控制方法及系统 |
WO2021128181A1 (zh) * | 2019-12-25 | 2021-07-01 | 深圳大学 | 一种自适应调节拥塞控制初始窗口的方法和系统 |
CN115335804A (zh) * | 2020-03-31 | 2022-11-11 | 阿里巴巴集团控股有限公司 | 通过减半加倍的集群通信避免网络拥塞 |
CN111867139A (zh) * | 2020-07-06 | 2020-10-30 | 上海交通大学 | 基于q学习的深度神经网络自适应退避策略实现方法及系统 |
CN113992595A (zh) * | 2021-11-15 | 2022-01-28 | 浙江工商大学 | 一种基于优先经验回放dqn的sdn数据中心拥塞控制方法 |
CN114025330A (zh) * | 2022-01-07 | 2022-02-08 | 北京航空航天大学 | 一种空地协同的自组织网络数据传输方法 |
Non-Patent Citations (3)
Title |
---|
Jean P.Martins,Ricardo S.Souza,Igor Almeida,Silvia Lins.Rainbow deep reinforcement learning for TCP congestion control.IEEE.2021,全文. * |
李婧 ; 管毓瑶.基于机器学习的网络拥塞控制研究.上海电力大学学报.2021,全文. * |
自适应拥塞控制算法的研究与仿真;周朋;惠晓威;;计算机仿真(第09期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN114567597A (zh) | 2022-05-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Yates et al. | Age of information: An introduction and survey | |
CN113595923B (zh) | 一种网络拥塞控制方法及装置 | |
CN112491714B (zh) | SDN环境下基于深度强化学习的智能QoS路由优化方法、系统 | |
CN107634911B (zh) | 一种信息中心网络中基于深度学习的自适应拥塞控制方法 | |
CN111818570B (zh) | 一种面向真实网络环境的智能拥塞控制方法及系统 | |
CN109462858A (zh) | 一种无线传感器网络参数自适应调节方法 | |
CN111092823A (zh) | 一种自适应调节拥塞控制初始窗口的方法和系统 | |
CN102592171A (zh) | 基于bp神经网络的认知网络性能预测方法及装置 | |
Sun et al. | Accelerating convergence of federated learning in MEC with dynamic community | |
CN103596191A (zh) | 一种无线传感器网络智能配置系统及其方法 | |
Alipio et al. | RT-CaCC: A reliable transport with cache-aware congestion control protocol in wireless sensor networks | |
Bachl et al. | Rax: Deep reinforcement learning for congestion control | |
CN114567597B (zh) | 一种物联网中基于深度强化学习的拥塞控制方法及装置 | |
Bhattacharyya et al. | QFlow: A learning approach to high QoE video streaming at the wireless edge | |
CN110581810B (zh) | 基于spma协议的数据通信方法、装置、设备及介质 | |
Tang et al. | ABS: Adaptive buffer sizing via augmented programmability with machine learning | |
CN113783941B (zh) | 基于大规模MIMO-MEC中最小化平均AoI的方法 | |
Badarla et al. | Learning-TCP: A stochastic approach for efficient update in TCP congestion window in ad hoc wireless networks | |
CN114362892B (zh) | 基于CoAP的物联网重传超时更新方法、装置及介质 | |
CN113300970B (zh) | 基于深度学习的tcp拥塞动态控制方法及装置 | |
CN114125746B (zh) | 基于UCB的动态CoAP模式选择方法及设备 | |
Efraimidis et al. | Window-games between TCP flows | |
Lei et al. | Deep reinforcement learning based sensing bidirectional nodes congestion control mechanism in wireless sensor networks | |
Alipio et al. | A cache-aware congestion control mechanism using deep reinforcement learning for wireless sensor networks | |
Rumuly | A Reinforcement Learning Approach to Self-Configuring Edge Wireless Networks |
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: 20231121 Address after: 518100, Building 801, Shenzhen Qianwan Hard Technology Industrial Park, Nanchang Community, Xixiang Street, Bao'an District, Shenzhen City, Guangdong Province Applicant after: SHENZHEN YQT ELECTRONIC CO.,LTD. Address before: 400065 Chongwen Road, Nanshan Street, Nanan District, Chongqing Applicant before: CHONGQING University OF POSTS AND TELECOMMUNICATIONS |
|
TA01 | Transfer of patent application right | ||
GR01 | Patent grant | ||
GR01 | Patent grant |