CN113839830B - 数据包多发参数的预测方法、装置与存储介质 - Google Patents

数据包多发参数的预测方法、装置与存储介质 Download PDF

Info

Publication number
CN113839830B
CN113839830B CN202110802811.3A CN202110802811A CN113839830B CN 113839830 B CN113839830 B CN 113839830B CN 202110802811 A CN202110802811 A CN 202110802811A CN 113839830 B CN113839830 B CN 113839830B
Authority
CN
China
Prior art keywords
data packet
time period
value
packet
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.)
Active
Application number
CN202110802811.3A
Other languages
English (en)
Other versions
CN113839830A (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.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen 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 Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN202110802811.3A priority Critical patent/CN113839830B/zh
Publication of CN113839830A publication Critical patent/CN113839830A/zh
Application granted granted Critical
Publication of CN113839830B publication Critical patent/CN113839830B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0823Errors, e.g. transmission errors
    • H04L43/0829Packet loss
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/12Arrangements for detecting or preventing errors in the information received by using return channel
    • H04L1/16Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
    • H04L1/18Automatic repetition systems, e.g. Van Duuren systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0852Delays

Landscapes

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

Abstract

本申请实施例提供一种数据包多发参数的预测方法、装置与存储介质,该方法包括:获取接收设备在第i时间周期内的第一时刻接收到第一数据包时的检测信息,检测信息包括丢包信息和时延信息中的至少一个;根据第一数据包对应的检测信息,确定网络的第一状态值;根据网络的第一状态值,预测发送设备在第i+1时间周期内发送数据包时的目标多发参数。即本申请通过确定第i时间周期内网络的状态,并根据第i时间周期内网络的状态来预测数据包在第i+1时间周期内的多发参数,进而有效地提升重复多发的抗丢包性能和效果。

Description

数据包多发参数的预测方法、装置与存储介质
技术领域
本申请实施例涉及计算机技术领域,尤其涉及一种数据包多发参数的预测方法、装置与存储介质。
背景技术
在音视频通话、网络直播等业务中,语音质量主要受网络丢包影响,由于传输网络的不稳定性导致传输过程出现丢包现象,造成接收端声音的卡顿和不连贯,降低收听者体验。
为了抵抗网络丢包,重复多发技术应用而生。重复多发是将原始数据包复制多份并在不同时间间隔下发送到接收端。重复多发可以有效避免网络丢包导致接收端收不到相应数据包的问题,但是由于重复多发需要额外消耗带宽,对于带宽受限网络,重复发送倍数增加会导致网络拥塞加剧,进一步触发更多的丢包。由此可知,准确确定数据包的多发参数尤为重要。
但是,目前数据包的多发参数主要是基于人工经验确定的,没有考虑网络状态,造成数据包重复多发的抗丢包性能差。
发明内容
本申请实施例提供一种数据包多发参数的预测方法、装置与存储介质,用以提高数据包的多发参数的准确预测,提高不网络下数据包重复多发的抗丢包性能和效果。
第一方面,本申请实施例提供一种数据包多发参数的预测方法,包括:
获取接收设备在第i时间周期内的第一时刻接收到第一数据包时的检测信息,所述检测信息包括丢包信息和时延信息中的至少一个,i为正整数;
根据所述第一数据包对应的检测信息,确定网络的第一状态值;
根据所述网络的第一状态值,预测发送设备在第i+1时间周期内发送数据包时的目标多发参数,其中,所述目标多发参数用于指示所述发送设备在所述第i+1时间周期内根据所述目标多发参数重复发送数据包。
在一些实施例中,所述根据量化后的所述丢包检测结果、所述目标数据包的到达时延值、所述连续丢包个数、所述时延统计值,确定所述网络的目标状态值,包括:
将量化后的所述丢包检测结果、所述目标数据包的到达时延值、所述连续丢包个数、所述时延统计值的加权和,确定为所述网络的目标状态值。
第二方面,本申请实施例提供一种数据包多发参数的预测装置,包括:
获取单元,用于获取接收设备在第i时间周期内的第一时刻接收到第一数据包时的检测信息,所述检测信息包括丢包信息和时延信息中的至少一个,i为正整数;
确定单元,用于根据所述第一数据包对应的检测信息,确定网络的第一状态值;
预测单元,用于根据所述网络的第一状态值,预测发送设备在第i+1时间周期内发送数据包时的目标多发参数,其中,所述目标多发参数用于指示所述发送设备在所述第i+1时间周期内根据所述目标多发参数重复发送数据包。
第三方面,本申请实施例提供一种电子设备,包括处理器和存储器;
所述存储器,用于存储计算机程序;
所述处理器,用于执行所述计算机程序以实现上述第一方面所述的方法。
第四方面,本申请实施例提供了一种计算机可读存储介质,所述存储介质包括计算机指令,当所述指令被计算机执行时,使得所述计算机实现如第一方面所述的方法。
第五方面,本申请实施例提供一种计算机程序产品,所述程序产品包括计算机程序,所述计算机程序存储在可读存储介质中,计算机的至少一个处理器可以从所述可读存储介质读取所述计算机程序,所述至少一个处理器执行所述计算机程序使得计算机实施第一方面所述的方法。
本申请实施例提供的数据包多发参数的预测方法、装置与存储介质,通过获取接收设备在第i时间周期内的第一时刻接收到第一数据包时的检测信息,检测信息包括丢包信息和时延信息中的至少一个,i为正整数;根据第一数据包对应的检测信息,确定网络的第一状态值;根据网络的第一状态值,预测发送设备在第i+1时间周期内发送数据包时的目标多发参数,其中,目标多发参数用于指示发送设备在第i+1时间周期内根据目标多发参数重复发送数据包。即本申请通过确定第i时间周期内网络的状态,并根据第i时间周期内网络的状态来预测数据包在第i+1时间周期内的多发参数,进而有效地提升重复多发的抗丢包性能和效果。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。
图1A为本申请实施例涉及的强化学习方式的框架示意图;
图1B为本申请一实施例涉及的丢包反馈示意图;
图2为本申请一实施例提供的数据包多发参数的预测方法的流程示意图;
图3为本申请一实施例提供的数据包多发参数的预测方法的流程示意图;
图4为本申请一实施例提供的数据包多发参数的预测方法的流程示意图;
图5为本申请一实施例提供的数据包多发参数的预测方法的流程示意图;
图6为本申请实施例提供的数据包多发参数的预测装置的一种结构示意图;
图7为本申请实施例涉及的电子设备的框图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行描述。
应理解,在本发明实施例中,“与A对应的B”表示B与A相关联。在一种实现方式中,可以根据A确定B。但还应理解,根据A确定B并不意味着仅仅根据A确定B,还可以根据A和/或其它信息确定B。
在本申请的描述中,除非另有说明,“多个”是指两个或多于两个。
另外,为了便于清楚描述本申请实施例的技术方案,在本申请的实施例中,采用了“第一”、“第二”等字样对功能和作用基本相同的相同项或相似项进行区分。本领域技术人员可以理解“第一”、“第二”等字样并不对数量和执行次序进行限定,并且“第一”、“第二”等字样也并不限定一定不同。
本申请实施例应用于软件测试技术领域,尤其应用于对需求数据的合法性检查,以便于根据合法的需求数据稳定、高效地生成测试用例。
为了便于理解本申请的实施例,首先对本申请实施例涉及到的相关概念进行如下简单介绍:
人工智能(Artificial Intelligence,AI)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。
人工智能技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。
机器学习(Machine Learning,ML)是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。机器学习是人工智能的核心,是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域。机器学习和深度学习通常包括人工神经网络、置信网络、强化学习、迁移学习、归纳学习、式教学习等技术。
强化学习是机器学习的重要分支,是一种基于环境反馈作为输入、通过不断探索尝试自主学习,实现从环境状态到动作映射的机器学习方法。强化学习在每个动作的尝试中会获得相应的奖励值,通过累积奖励值最大来最优化动作。强化学习有别于监督学习,强化学习不需要事先提供训练样本,是一种在线学习技术,强化学习agent只需要记忆其所处的环境状态和当前策略知识,在累积的探索经验中获得适用于当前环境的最优决策。
图1A为本申请实施例涉及的强化学习方式的框架示意图,如图1A所示,在强化学习中有五个核心组成部分,它们分别是:环境(Environment)、智能体(Agent)、状态(State)、动作(Action)和奖励(Reward)。强化学习是智能体(agent)通过与环境(Environment)不断地进行交互学习一个从环境到动作的映射,学习的目标就是使累计回报最大化。强化学习也是一种试错学习,在各种环境状态下尽量尝试所有可以选择的动作,通过环境给出的反馈(即奖励)来判断动作的优劣,最终获得环境和最优动作的映射关系。在强化学习里面涉及几个要素:环境状态、动作、奖励。而实际应用强化学习则需要结合实际应用定义好这几个要素,通过反复大量的验证或试错,总结出复杂的强化学习经验库,该经验库在不断的自学习过程中升级和丰富。
网络丢包:在音视频通话、网络直播业务中,语音质量主要受网络丢包影响,由于传输网络的不稳定性导致传输过程出现丢包现象,造成接收端声音的卡顿和不连贯,使收听者体验很不好。网络丢包的成因有很多,例如网络数据拥塞到了一定程度触发了网络设备主动弃包,网络设备或传输线路故障导致的数据包丢失,无线网络受干扰导致数据异常而无法通过校验而弃包等。网络丢包具有较大的随机性和突发性,所以对音视频通话、直播业务带来很大的挑战。
为了抵抗网络丢包,有很多种方法,包括:前向纠错(forward error correction,简称FEC)、丢包隐藏(Packet Loss Concealment,简称PLC)、自动重传请求(AutomaticRepeat Request,简称ARQ)、重复多发等。
其中,重复多发是将原始数据包复制多份并在不同时间间隔下发送到接收端,重复多发可以有效避免网络丢包导致接收端收不到相应数据包的问题。例如图1B所示,发送端根据接收端统计到的实时丢包状态的反馈配置重复多发参数,例如多发倍数100%~400%,丢包率越高配置的多发倍数值越大,即生成更多的重复冗余数据包,接收端会收到更多的来自发送端的重复数据包,部分重复包会因为网络丢包而丢失无法传送到接收端,而部分重复包会成功到达接收端,进而送到解码器进行解码后发出声音信号。
目前,多发技术的参数配置主要基于接收端的实时丢包状态反馈,结合工程师经验设计的非常有限多发配置规则,根据反馈的丢包状态映射出相应的多发配置参数,例如丢包率达到20%~30%时则配置100%多发倍数,丢包率达到30~50%时则配置200%的多发倍数等等。
但是,传输网络自身特征是复杂多变的,而已有的多发配置规则是固定的有限的,在实际工程应用中,工程师通常是基于当前丢包状态下给出决策,而不具备对历史状态回归和未来状态预测的关联分析和调控能力,工程师把应对当前丢包状态的有限规则以数学表达形式通过程序代码来固化和实现,这种简单方法是不科学的,与万变的网络状态存在一定矛盾。而且仅凭当前实测网络丢包状态驱动多发策略实施,缺乏对未来状态的预测和长期多发动作最优规划调控的手段,即目前手段是被动的,会导致不合理的多发策略引发较大的丢包问题,导致因丢包引起的接收端声音卡顿,播放内容信息不完整,严重影响用户听觉体验和沟通效果。
另外,现有方案是依赖工程师固化的经验规则,但实际传输网络是动态多变的,当工程师配置的多发参数后其多发抗丢包能力完全超过了当前出现丢包的破坏,即有足够多的多发冗余数据包能覆盖了丢失的数据包,这种场景下多发丢包修复比较好,但传输网络具有多变性,例如在带宽受限网络下,这种“正确”经验会导致网络拥塞,反而会加大丢包程度,造成效果不佳的结果。
综上可知,目前技术方案对各种千变万化的网络,无法准确预测出数据包的多发参数,造成抗丢包性能差。
为了解决上述技术问题,本申请实施例通过确定第i时间周期内网络的状态,并根据第i时间周期内网络的状态来预测数据包在第i+1时间周期内的多发参数,进而有效地提升重复多发的抗丢包性能和效果。
下面通过一些实施例对本申请实施例的技术方案进行详细说明。下面这几个实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例不再赘述。
图2为本申请一实施例提供的数据包多发参数的预测方法的流程示意图,如图2所示,本申请实施例的方法包括:
S201、获取接收设备在第i时间周期内的第一时刻接收到第一数据包时的检测信息。
本申请实施例的执行主体可以为任意具有数据处理功能的装置,例如为数据包多发参数的预测装置,该预测装置可以为发送设备、接收设备,或者为除发送设备和接收设备之外的第三设备。
上述第i时间周期的时间长度为预设值。
在一些实施例中,上述第i时间周期可以理解为当前时间周期。
上述第一时刻为第i时间周期内的任意时刻。
在一些实施例中,上述第一时刻为第i时间周期内的第一时刻,或者为第i时间周期内接收设备第一次接收到发送设备发送的数据包的时刻。
为了便于描述,本申请实施例将接收设备在第i时间周期内的第一时刻接收到的数据包记为第一数据包。
可选的,第一数据包可以为音频数据包,或者为视频数据包,或者为其他类型的数据包,本申请实施例对此不做限制。
上述检测信息包括丢包信息和时延信息中的至少一个。
S202、根据第一数据包对应的检测信息,确定网络的第一状态值。
有上述可知,第一数据包对应的检测信息包括丢包信息和/或时延信息。这样,可以根据第一数据包对应的丢包信息和/或时延信息,确定网络的第一状态值。
在一些实施例中,第一数据包对应的丢包信息可以是接收设备在接收到第一数据包之前是否丢包,若丢包,则丢包的个数。第一数据包对应的延时信息可以是接收设备接收的第一数据包是否存在时延,若存在时延,则时延值的大小等。
在一些实施例中,第一数据包对应的检测信息包括接收设备在接收第一数据包之前是否丢包的丢包检测结果、第一数据包的到达时延值、接收设备从上一个成功接收的数据包到接收第一数据包之间的连续丢包个数、接收设备接收N个数据包的时延统计值中的至少一个。其中,上述N个数据包包括第一数据包,以及第一数据包之前成功接到的N-1个数据包,N为大于1的正整数。
需要说明的是,发送设备在发送数据包时按照数据包的标识信息的大小依次发送,例如按照数据包的标识信息的大小按照从小到大的顺序发送数据包。
基于此,接收设备在接收第一数据包之前是否丢包的丢包检测结果可以根据第一数据包的标识信息,以及接收设备在接收第一数据包之前成功接收的数据包a的标识信息确定出。具体是,若第一数据包的标识信息与数据包a的标识信息连续,则说明未丢包,即丢包检测结果为0。若第一数据包的标识信息与数据包a的标识信息不连续,则说明丢包,即丢包检测结果为1。
其中,第一数据包的到达时延值可以根据接收设备接收第一数据包的时间1,以及接收设备在接收第一数据包之前成功接收数据包a的时间2,以及预设的数据包的发送时间间隔△t确定出,例如将时间1减去时间2减去△t的值确定为第一数据包的到达时延值。
其中,接收设备从上一个成功接收的数据包a到接收第一数据包之间的连续丢包个数可以根据第一数据包的标识信息,以及接收设备在接收第一数据包之前成功接收的数据包a的标识信息确定出。具体是,将第一数据包的标识信息与数据包a的标识信息的差值,确定为接收设备从上一个成功接收的数据包a到接收第一数据包之间的连续丢包个数。
其中,接收设备接收N个数据包的时延统计值可以根据接收设备接收这N个数据包的实际延时值的加权和。举例说明,假设N=5,前5个数据包的实际延时值进行加权求和,其加权系数分别:0.1,0.15,0.2,0.25,0.3,代表第一数据包之前的第4个数据包的实际延时值乘以0.1,第一数据包之前的第3个数据包的实际延时值乘以0.15,第一数据包之前的第2个数据包的实际延时值乘以0.2,第一数据包之前的第1个数据包的实际延时值乘以0.25,第一数据包的实际延时值乘以0.3。接着,将上述5个数据包乘以权重系数的实际延时值进行相加,得到接收设备接收5个数据包的时延统计值。
可选的,上述数据包的实际延时值为接收设备实际接收到该数据包的时间与接收设备理论上接收到该数据包的时间的差值。举例说明,假设数据包m的为视频流中的第m个数据包,每个数据包的理论传输时间间隔为△t,因此,接收设备理论上接收到该数据包m的时间为m△t。但是由于网络等原因,接收设备实际接收到该数据包的时间为T1,因此,该数据包的实际延时值为T1-m△t。
由上述可知,本申请实施例的第一数据包对应的检测信息不仅包括第一数据的延时信息和丢包信息,还包括第一数据包之前的历史数据包的延时信息,而历史数据包的延时是由历史时刻网络的状态引起的。这样根据该第一数据包对应的检测信息确定网络的第一状态值,进而实现根据历史时刻网络的状态,准确预测当前时刻网络的状态。
下面对上述S202中根据第一数据包对应的检测信息,确定网络的第一状态值的具体过程进行介绍。
由上述可知,第一数据包对应的检测信息包括上述丢包检测结果、第一数据包的到达时延值、连续丢包个数、时延统计值中的至少一个。基于此,上述S202包括根据上述第一数据包对应的丢包检测结果、第一数据包的到达时延值、连续丢包个数、时延统计值中的至少一个,确定网络的第一状态值。
在一些实施例中,第一数据包对应的检测信息包括第一数据包对应的丢包检测结果、第一数据包的到达时延值、连续丢包个数、时延统计值。此时,上述S202包括如下S202-A:
S202-A、根据第一数据包对应的丢包检测结果、第一数据包的到达时延值、连续丢包个数和时延统计值,确定网络的目标状态值。
其中,上述S202-A的实现方式包括但不限于如下几种:
方式一,将第一数据包对应的丢包检测结果、第一数据包的到达时延值、连续丢包个数和时延统计值之和,确定为网络的第一状态值。
方式二,上述S202-A包括S202-A1和S202-A2:
S202-A1、根据预设的量化规则分别对丢包检测结果、第一数据包的到达时延值、连续丢包个数、时延统计值分别进行量化;
S202-A2、根据量化后的丢包检测结果、第一数据包的到达时延值、连续丢包个数、时延统计值,确定网络的目标状态值。
其中,丢包检测结果的量化规则是:0代表无丢包,1代表丢包。
第一数据包的到达时延值的量化规则是:0代表时延值在0~50ms,1代表50~100ms,2代表100~200ms,3代表200~500ms,4代表500ms以上。
连续丢包个数的量化规则是:0代表没有出现连续丢包,1代表连续丢包1个,2代表连续丢包2个,3代表连续丢包3~6个,4代表连续丢包7~10个,5代表连续丢包10个以上。
时延统计值的量化规则是:0代表时延值在0~50ms,1代表50~100ms,2代表100~200ms,3代表200~500ms,4代表500ms以上。
需要说明的是,上述量化规则仅为示例,本申请实施例涉及的量化规则包括但不限于上述量化规则。
根据上述量化规则,对第一数据包对应的丢包检测结果、第一数据包的到达时延值、连续丢包个数、时延统计值分别进行量化后,根据量化后的丢包检测结果、第一数据包的到达时延值、连续丢包个数、时延统计值,确定网络的目标状态值。
在一些实施例中,上述S202-A2包括:将量化后的丢包检测结果、第一数据包的到达时延值、连续丢包个数、时延统计值的加权和,确定为网络的第一状态值。
例如,根据如下公式(1),确定网络的第一状态值:
St1=curloss1*C1+curdelay1*C2+lossnum1*C3+delayavg1*C4 (1)
其中,St1为网络的第一状态值,curloss1为量化后的丢包检测结果,curdelay1为量化后的第一数据包的到达时延值,lossnum1为量化后的连续丢包个数,delayavg1为量化后的时延统计值,C1、C2、C3、C4为预设权重值。
本申请实施例对上述C1、C2、C3、C4的大小不做限制,具体根据实际需要确定。
可选的,C1=1。
可选的,C2=2。
可选的,C3=5*2=10。
可选的,C4=6*5*2=60。
根据上述方法确定出网络的第一状态值后,执行如下S203。
S203、根据网络的第一状态值,预测发送设备在第i+1时间周期内发送数据包时的目标多发参数。
其中,目标多发参数用于指示发送设备在第i+1时间周期内根据目标多发参数重复发送数据包。
在一些实施例中,获取预设的多发参数与网络状态值的关系表,该关系表中包括不同的网络状态值与不同的多发参数的对应关系,基于此,可以根据网络的第一状态值的大小,从上述关系表中,查询该第一状态值对应的多发参数,将该第一状态值对应的多发参数,确定为发送设备在第i+1时间周期内发送数据包时的目标多发参数。
在一些实施例中,上述S203包括:根据网络的第一状态值,基于强化学习方式,预测发送设备在第i+1时间周期内发送数据包时的目标多发参数。下面结合的具体的示例,对基于强化学习方式,预测发送设备在第i+1时间周期内发送数据包时的目标多发参数的过程进行详细介绍。
如图1A所示,在强化学习中包括智能体(Agent)、状态(State)、动作(Action)和奖励(Reward)。
其中,状态可以理解为网络的状态。
动作可以理解为多发参数,以多发参数为多发倍数为例,多发倍数例如为:0%、100%、200%、300%、400%,将上述每个多个倍数作为一个动作,共5个动作。
本申请实施例,采用强化学习方式,在网络的第一状态值下尽量尝试所有可以选择的多发参数(即动作),通过环境给出的反馈(即奖励)来判断多发参数(即动作)的优劣,最终获得网络在第一状态值下的最优多发参数。将该网络在第一状态值下的最优多发参数确定为发送设备在第i+1时间周期内发送数据包时的目标多发参数。
可选的,本申请实施例采用的强化学习方式为Q-learning算法。在强Q-learning算法中需要维护一个Q数据表,该Q数据表是一个状态数m×动作数n大小的表格,Q数据表是用来记录每个状态动作对下的长期奖励值Q(s,a)。
在本申请实施例,Q数据表包括不同网络状态值下采取不同多发参数时所获得的长期奖励值,具体如表1所示:
表1
Q(s,a) a1 a2 …… an
s1 Q(s1,a1) Q(s1,a2) …… Q(s1,an)
s2 Q(s2,a1) Q(s2,a2) …… Q(s2,an)
…… …… …… …… ……
sm Q(sm,a1) Q(sm,a2) …… Q(sm,an)
上述多发参数包括:a1、a2…an,网络状态值包括:s1、s2…sm,Q(s,a)表示在网络状态值s下采取多发参数a时所获得的长期奖励值。
基于上述表1,在一些实施例中,上述S203包括S203-A1至S203-A3的步骤:
S203-A1、获取第i时间周期的Q数据表;
S203-A2、根据第一状态值,从第i时间周期的Q数据表中,查询在第一状态值下达到最大长期奖励值时所采取的第一多发参数;
S203-A3、将第一多发参数确定为目标多发参数。
假设第i时间周期的Q数据表如表1所示,上述步骤确定的网络的第一状态值为s2,这样在上述表1中查询在第一状态值下达到最大长期奖励值时所采取的第一多发参数,例如,上述表1中第一状态值对应的最大长期奖励值为Q(s2,an),则确定第一多发参数为an,进而将该第一多发参数an确定为发送设备在第i+1时间周期内发送数据包时的目标多发参数。
根据上述步骤确定出发送设备在第i+1时间周期内发送数据包时的目标多发参数后,将该目标多发参数发送给发送设备,使得发送设备在第i+1时间周期内根据该目标多发参数重复发送数据包,例如,上述目标多发参数为200%,则发送设备在第i+1时间周期内根据2倍的多发倍率重复发送数据包,以实现根据不同网络状态实时调节数据包的多发参数,进而提高了数据包的发送可靠性。即本申请通过强化学习方式,对实际传输网络进行不断探索学习,准确预测适合于不同网络的多发参数,进而有效地提升重复多发的抗丢包性能和效果。
在一些实施例中,本申请实施例还包括上述Q数据表的更新过程。下面对Q数据表的更新过程进行介绍。
在一些实施例中,本申请实施例Q数据表的更新过程包括如下步骤:
步骤1、获取接收设备在第i时间周期内的丢包恢复个数,以及接收设备在第i时间周期内的实际丢包个数。
步骤2、根据丢包恢复个数、实际丢包个数和目标多发参数,确定第i时间周期对应的临时奖励值。
步骤3、根据第i时间周期对应的临时奖励值,更新第i时间周期的Q数据表,得到第i+1时间周期的Q数据表。
本申请实施例的Q数据表如表1所示,是一个状态数m×动作数n大小的表格,例如,m=300,n=5,则Q数据表的大小为300×5。初始化Q数据表,可选的根据现有经验对每个状态动作对下的长期奖励值Q(s,a)给出初始值。接着,根据第i时间周期对应的临时奖励值,更新第i时间周期的Q数据表,得到第i+1时间周期的Q数据表。其中,第i时间周期可以理解为第i+1时间周期的前一个时间周期,第i+1时间周期可以理解为第i时间周期的下一个时间周期。
下面对上述步骤2中确定第i时间周期对应的临时奖励值的过程进行介绍。
在一些实施例中,上述步骤2中根据丢包恢复个数、实际丢包个数和目标多发参数,确定第i时间周期对应的临时奖励值包括如下步骤21和步骤22:
步骤21、根据丢包恢复个数、实际丢包个数和目标多发参数,确定第一数值。
步骤22、将第一数值和预设值中的最大值,确定为第i时间周期对应的临时奖励值。
其中预设值为0或正数。
本步骤对根据丢包恢复个数、实际丢包个数和目标多发参数,确定第一数值的方式不做限制。
在一种可能的实现方式中,上述步骤21包括:根据丢包恢复个数与实际丢包个数的比值,确定第二数值;根据第二数值与目标多发参数的差值,得到第一数值。
在一些实施例中,上述根据第二数值与目标多发参数的差值,得到第一数值包括:确定第二数值和第一预设权重值的第一乘积,以及目标多发参数与第二预设权重的第二乘积;将第一乘积与第二乘积的差值,确定为第一数值。
在一些实施例中,以预设值为0为例,根据如下公式(2)确定第一数值:
r=max(0,β1*(num_r/num_l)-β2*rr) (2)
其中,r为第i时间周期对应的临时奖励值,0为预设值,num_r为接收设备在第i时间周期内的丢包恢复个数,num_l为接收设备在第i时间周期内的实际丢包个数,rr为目标多发参数,β1为第一预设权重,β2为第二预设权重,num_r/num_l为第二数值,β1*(num_r/num_l)-β2*rr为第一数值。
可选的,β1=0.8。
可选的,β2=0.05。
根据上述方式,确定出第i时间周期对应的临时奖励值后,执行上述步骤3根据第i时间周期对应的临时奖励值,更新第i时间周期的Q数据表,得到第i+1时间周期的Q数据表。
在一些实施例中,上述步骤3包括如下步骤31至步骤34:
步骤31、获取接收设备在第i时间周期内的第二时刻所接收到第二数据包时的检测信息;
步骤32、根据第二数据包对应的检测信息,确定网络的第二状态值;
步骤33、根据网络的第二状态值,从第i时间周期的Q数据表中,查询第二状态值对应的最大长期奖励值;
步骤34、根据第二状态值对应的最大长期奖励值,以及第i时间周期对应的临时奖励值,更新第i时间周期的Q数据表,得到第i+1时间周期的Q数据表。
上述第二时刻为第i时间周期内第一时刻之后的时刻。
可选的,上述第二时刻为二分之一第i时间周期对应的时刻。
上述接收设备在第i时间周期内的第二时刻所接收到第二数据包时的检测信息包括丢包信息和/或时延信息。
在一些实施例中,第二数据包对应的检测信息包括接收设备在接收第二数据包之前是否丢包的丢包检测结果、第二数据包的到达时延值、接收设备从上一个成功接收的数据包到接收第二数据包之间的连续丢包个数、接收设备接收N个数据包的时延统计值中的至少一个。其中,该N个数据包包括第二数据包,以及第二数据包之前成功接到的N-1个数据包,N为大于1的正整数。
其中,获取第二数据包对应的检测信息方式与获取上述第一数据包对应的检测信息的过程一致,具体参照上述S202的描述。
例如,接收设备在接收第二数据包之前是否丢包的丢包检测结果可以根据第二数据包的标识信息,以及接收设备在接收第二数据包之前成功接收的数据包b的标识信息确定出。具体是,若第二数据包的标识信息与数据包b的标识信息连续,则说明未丢包,即丢包检测结果为0。若第二数据包的标识信息与数据包b的标识信息不连续,则说明丢包,即丢包检测结果为1。
其中,第二数据包的到达时延值可以根据接收设备接收第二数据包的时间3,以及接收设备在接收第二数据包之前成功接收数据包b的时间4,以及预设的数据包的发送时间间隔△t确定出,例如将时间3减去时间4减去△t的值确定为第二数据包的到达时延值。
其中,接收设备从上一个成功接收的数据包b到接收第二数据包之间的连续丢包个数可以根据第二数据包的标识信息,以及接收设备在接收第二数据包之前成功接收的数据包b的标识信息确定出。具体是,将第二数据包的标识信息与数据包b的标识信息的差值,确定为接收设备从上一个成功接收的数据包b到接收第二数据包之间的连续丢包个数。
其中,接收设备接收N个数据包的时延统计值可以根据接收设备接收这N个数据包的实际延时值的加权和,该N个数据包包括第二数据包,以及第二数据包之前成功接到的N-1个数据包。
根据上述方式获取第二数据包对应的检测信息后,执行步骤32根据第二数据包对应的检测信息,确定网络的第二状态值,其中,上述步骤32的实现过程与上述S203相似,参照上述S203的描述。
在一些实施例中,根据如下公式(3),确定网络的第二状态值:
St2=curloss2*C1+curdelay2*C2+lossnum2*C3+delayavg2*C4 (3)
其中,St2为网络的第二状态值,curloss2为第二数据包对应的量化后的丢包检测结果,curdelay2为第二数据包对应的量化后的第一数据包的到达时延值,lossnum2为第二数据包对应的量化后的连续丢包个数,delayavg2为第二数据包对应的量化后的时延统计值,C1、C2、C3、C4为预设权重值。
根据上述步骤确定出网络的第二状态值后,根据网络的第二状态值,从第i时间周期的Q数据表中,查询第二状态值对应的最大长期奖励值。具体说明,假设网络的第二状态值为sm,上述表1中第二状态值sm对应的最大长期奖励值为Q(sm,a2)。
接着,根据第二状态值对应的最大长期奖励值,以及第i时间周期对应的临时奖励值,更新第i时间周期的Q数据表,得到第i+1时间周期的Q数据表。
在一种示例中,根据如下公式(4)更新第i时间周期的Q数据表,得到第i+1时间周期的Q数据表:
其中,等式左侧的Q(s,a)为第i+1时间周期的Q数据表,等式右侧的Q(s,a)为第i时间周期的Q数据表,r为第i时间周期对应的临时奖励值,α为学习率(例如为0.01),γ为奖励性衰变系数(例如为0.9),并采用时间差分法的方法进行更新,为第二状态值对应的最大长期奖励值,s′为网络的第二状态值,a′为第二状态值下的多发参数。
根据上述公式(4)对更新第i时间周期的Q数据表,得到第i+1时间周期的Q数据表,依次循环进行。
本申请实施例提供数据包多发参数的预测方法,通过获取接收设备在第i时间周期内的第一时刻接收到第一数据包时的检测信息,检测信息包括丢包信息和时延信息中的至少一个,i为正整数;根据第一数据包对应的检测信息,确定网络的第一状态值;根据网络的第一状态值,预测发送设备在第i+1时间周期内发送数据包时的目标多发参数,其中,目标多发参数用于指示发送设备在第i+1时间周期内根据目标多发参数重复发送数据包。即本申请通过确定第i时间周期内网络的状态,并根据第i时间周期内网络的状态来预测数据包在第i+1时间周期内的多发参数,进而有效地提升重复多发的抗丢包性能和效果。
下面结合不同的执行主体,对本申请实施例的数据包多发参数的预测方法进行介绍。
图3为本申请一实施例提供的数据包多发参数的预测方法的流程示意图,以接收设备为执行主体为例,如图3所示,本申请实施例的方法包括:
S300、接收设备获取多发参数的确定方式指示信息。
在一些实施例中,由于在初步的学习中,Q值会不准确,如果在这个时候都按照Q值来选择,那么会造成错误。另外学习一段时间后,Agent可能出现动作选择相对固定无法对环境进行有效的探索。因此可以考虑使用epsilon-greedy算法,即在每次选择多发动作的时候,不完全按照Q表而以一部分的概率随机选择动作,而另一部分的概率按照最优的Q值选择动作。同时,这个选择随机动作的概率应当随着训练的过程逐步减小。
基于此,本申请实施例包括:获取多发参数的确定方式指示信息,上述确定方式指示信息用于指示每个时间周期对应的多发参数通过强化学习方式确定的概率为第一概率,通过随机选择确定的概率为第二概率。
根据该多发参数的确定方式指示信息,在确定第i+1时间周期内的目标多发参数是通过强化学习方式确定的时,执行如下S301至S305的步骤,在确定第i+1时间周期内的目标多发参数是通过随机选择方式确定的时,执行如下S306。
S301、接收设备根据该多发参数的确定方式指示信息,在确定第i+1时间周期内的目标多发参数是通过强化学习方式确定的时,获取接收设备在第i时间周期内的第一时刻接收到第一数据包时的检测信息。
其中,检测信息包括丢包信息和时延信息中的至少一个,i为正整数。
S302、接收设备根据第一数据包对应的检测信息,确定网络的第一状态值。
上述S301和S302的具体实现方式参照上述S201和S202的描述,在此不再赘述。
S303、接收设备获取第i时间周期的Q数据表。
S304、接收设备根据第一状态值,从第i时间周期的Q数据表中,查询在第一状态值下达到最大长期奖励值时所采取的第一多发参数。
S305、接收设备将第一多发参数确定为目标多发参数。
上述S303至S305的实现方式可以参照上述S203-A1至S203-A3的描述,在此不再赘述。
S306、在确定第i+1时间周期内的目标多发参数是通过随机选择方式确定的时,接收设备从预设的多个多发参数中随机选择一多发参数作为目标多发参数。
S307、接收设备将目标多发参数发送给发送设备。
发送设备在第i+1时间周期内根据该目标多发参数重复发送数据包,提高数据包的抗丢包性能。
S308、接收设备对第i时间周期的Q数据表更新,得到第i+1时间周期的Q数据表。
其中,Q数据表的更新过程参照上述步骤1至步骤3的描述,在此不再赘述。
本申请实施例中,接收设备通过强化学习方式,对实际传输网络进行不断探索学习,准确预测适合于第i+1时间周期内网络的目标多发参数,并将预测的目标多发参数发送给发送设备,使得发送设备在第i+1时间周期内根据该目标多发参数重复发送数据包,进而有效地提升重复多发的抗丢包性能和效果。
下面结合不同的执行主体,对本申请实施例的数据包多发参数的预测方法进行介绍。
图4为本申请一实施例提供的数据包多发参数的预测方法的流程示意图,以发送设备为执行主体为例,如图4所示,本申请实施例的方法包括:
S400、接收设备获取多发参数的确定方式指示信息。
上述确定方式指示信息用于指示每个时间周期对应的多发参数通过强化学习方式确定的概率为第一概率,通过随机选择确定的概率为第二概率。
根据该多发参数的确定方式指示信息,在确定第i+1时间周期内的目标多发参数是通过强化学习方式确定的时,执行如下S401至S405的步骤,在确定第i+1时间周期内的目标多发参数是通过随机选择方式确定的时,执行如下S406。
S401、在确定第i+1时间周期内的目标多发参数是通过强化学习方式确定的时,接收设备将接收设备在第i时间周期内的第一时刻接收到第一数据包时的检测信息发送给发送设备。
其中,检测信息包括丢包信息和时延信息中的至少一个,i为正整数。
S402、发送设备根据第一数据包对应的检测信息,确定网络的第一状态值。
上述S401和S402的具体实现方式参照上述S201和S202的描述,在此不再赘述。
S403、发送设备获取第i时间周期的Q数据表。
S404、发送设备根据第一状态值,从第i时间周期的Q数据表中,查询在第一状态值下达到最大长期奖励值时所采取的第一多发参数。
S405、发送设备将第一多发参数确定为目标多发参数。
上述S403至S405的实现方式可以参照上述S203-A1至S203-A3的描述,在此不再赘述。
S406、在确定第i+1时间周期内的目标多发参数是通过随机选择方式确定的时,发送设备从预设的多个多发参数中随机选择一多发参数作为目标多发参数。
发送设备在第i+1时间周期内根据该目标多发参数重复发送数据包,提高数据包的抗丢包性能。
示例性的,发送设备在预设时间内没有收到发送设备发送的接收设备在第i时间周期内的第一时刻接收到第一数据包时的检测信息,则确定第i+1时间周期内的目标多发参数是通过随机选择方式确定的。
S407、发送设备对第i时间周期的Q数据表更新,得到第i+1时间周期的Q数据表。
其中,Q数据表的更新过程参照上述步骤1至步骤3的描述,在此不再赘述。
本申请实施例中,发送设备通过强化学习方式,对实际传输网络进行不断探索学习,准确预测适合于第i+1时间周期内网络的目标多发参数,使得发送设备在第i+1时间周期内根据该目标多发参数重复发送数据包,进而有效地提升重复多发的抗丢包性能和效果。
下面结合不同的执行主体,对本申请实施例的数据包多发参数的预测方法进行介绍。
图5为本申请一实施例提供的数据包多发参数的预测方法的流程示意图,以除发送设备和接收设备之外的计算设备为执行主体为例,如图5所示,本申请实施例的方法包括:
S500、接收设备获取多发参数的确定方式指示信息。
上述确定方式指示信息用于指示每个时间周期对应的多发参数通过强化学习方式确定的概率为第一概率,通过随机选择确定的概率为第二概率。
根据该多发参数的确定方式指示信息,在确定第i+1时间周期内的目标多发参数是通过强化学习方式确定的时,执行如下S501至S405的步骤,在确定第i+1时间周期内的目标多发参数是通过随机选择方式确定的时,执行如下S406。
S501、在确定第i+1时间周期内的目标多发参数是通过强化学习方式确定的时,接收设备将接收设备在第i时间周期内的第一时刻接收到第一数据包时的检测信息发送给计算设备。
其中,检测信息包括丢包信息和时延信息中的至少一个,i为正整数。
S502、计算设备根据第一数据包对应的检测信息,确定网络的第一状态值。
上述S501和S502的具体实现方式参照上述S201和S202的描述,在此不再赘述。
S503、计算设备获取第i时间周期的Q数据表。
S504、计算设备根据第一状态值,从第i时间周期的Q数据表中,查询在第一状态值下达到最大长期奖励值时所采取的第一多发参数。
S505、计算设备将第一多发参数确定为目标多发参数。
上述S503至S505的实现方式可以参照上述S203-A1至S203-A3的描述,在此不再赘述。
S506、在确定第i+1时间周期内的目标多发参数是通过随机选择方式确定的时,计算设备从预设的多个多发参数中随机选择一多发参数作为目标多发参数。
S507、计算设备将目标多发参数发送给发送设备。
发送设备在第i+1时间周期内根据该目标多发参数重复发送数据包,提高数据包的抗丢包性能。
S508、计算设备对第i时间周期的Q数据表更新,得到第i+1时间周期的Q数据表。
其中,Q数据表的更新过程参照上述步骤1至步骤3的描述,在此不再赘述。
本申请实施例中,计算设备通过强化学习方式,对实际传输网络进行不断探索学习,准确预测适合于第i+1时间周期内网络的目标多发参数,并将目标多发参数发送给发送设备,使得发送设备在第i+1时间周期内根据该目标多发参数重复发送数据包,进而有效地提升重复多发的抗丢包性能和效果。
以上结合附图详细描述了本申请的优选实施方式,但是,本申请并不限于上述实施方式中的具体细节,在本申请的技术构思范围内,可以对本申请的技术方案进行多种简单变型,这些简单变型均属于本申请的保护范围。例如,在上述具体实施方式中所描述的各个具体技术特征,在不矛盾的情况下,可以通过任何合适的方式进行组合,为了避免不必要的重复,本申请对各种可能的组合方式不再另行说明。又例如,本申请的各种不同的实施方式之间也可以进行任意组合,只要其不违背本申请的思想,其同样应当视为本申请所公开的内容。
还应理解,在本申请的各种方法实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
上文结合图2至图5,详细描述了本申请的方法实施例,下文结合图6至图7,详细描述本申请的装置实施例。
图6为本申请实施例提供的数据包多发参数的预测装置的一种结构示意图。该预测装置可以是电子设备,也可以是电子设备的部件(例如,集成电路,芯片等等)。该预测装置还可以是发送设备、接收设备或其他的计算设备。
如图6所示,该确定装置10可以包括:
获取单元11,用于获取接收设备在第i时间周期内的第一时刻接收到第一数据包时的检测信息,所述检测信息包括丢包信息和时延信息中的至少一个,i为正整数;
确定单元12,用于根据所述第一数据包对应的检测信息,确定网络的第一状态值;
预测单元13,用于根据所述网络的第一状态值,预测发送设备在第i+1时间周期内发送数据包时的目标多发参数,其中,所述目标多发参数用于指示所述发送设备在所述第i+1时间周期内根据所述目标多发参数重复发送数据包。
在一些实施例中,预测单元13,具体用于获取所述第i时间周期的Q数据表,所述Q数据表包括不同网络状态值下采取不同多发参数时所获得的长期奖励值;根据所述第一状态值,从所述第i时间周期的Q数据表中,查询在所述第一状态值下达到最大长期奖励值时所采取的第一多发参数;将所述第一多发参数确定为所述目标多发参数。
在一些实施例中,所述预测单元,还用于获取所述接收设备在所述第i时间周期内的丢包恢复个数,以及所述接收设备在所述第i时间周期内的实际丢包个数;根据所述丢包恢复个数、所述实际丢包个数和所述目标多发参数,确定所述第i时间周期对应的临时奖励值;根据所述第i时间周期对应的临时奖励值,更新所述第i时间周期的Q数据表,得到所述第i+1时间周期的Q数据表。
在一些实施例中,预测单元13,具体用于根据所述丢包恢复个数、所述实际丢包个数和所述目标多发参数,确定第一数值;将所述第一数值和预设值中的最大值,确定为所述第i时间周期对应的临时奖励值,其中所述预设值为0或正数。
在一些实施例中,预测单元13,具体用于根据所述丢包恢复个数与所述实际丢包个数的比值,确定第二数值;根据所述第二数值与所述目标多发参数的差值,得到所述第一数值。
在一些实施例中,预测单元13,具体用于确定所述第二数值和第一预设权重值的第一乘积,以及所述目标多发参数与第二预设权重的第二乘积;将所述第一乘积与所述第二乘积的差值,确定为所述第一数值。
在一些实施例中,预测单元13,具体用于获取所述接收设备在第i时间周期内的第二时刻所接收到第二数据包时的检测信息,所述第二时刻为所述第一时刻之后的时刻;根据所述第二数据包对应的检测信息,确定所述网络的第二状态值;根据所述网络的第二状态值,从所述第i时间周期的Q数据表中,查询所述第二状态值对应的最大长期奖励值;根据所述第二状态值对应的最大长期奖励值,以及所述第i时间周期对应的临时奖励值,更新所述第i时间周期的Q数据表,得到所述第i+1时间周期的Q数据表。
在一些实施例中,目标数据包对应的检测信息包括所述接收设备在接收所述目标数据包之前是否丢包的丢包检测结果、所述目标数据包的到达时延值、所述接收设备从上一个成功接收的数据包到接收所述目标数据包之间的连续丢包个数、所述接收设备接收N个数据包的时延统计值中的至少一个,所述N个数据包包括所述第一数据包,以及所述第一数据包之前成功接到的N-1个数据包,所述目标数据包括为所述第一数据包或所述第二数据包,所述N为大于1的正整数。
在一些实施例中,确定单元12,具体用于根据所述丢包检测结果、所述目标数据包的到达时延值、所述连续丢包个数、所述时延统计值,确定所述网络的目标状态值;
其中,若所述目标数据包为所述第一数据包,则所述网络的目标状态值为所述网络的第一状态值,若所述目标数据包为所述第二数据包,则所述网络的目标状态值为所述网络的第二状态值。
在一些实施例中,确定单元12,具体用于根据预设的量化规则分别对所述丢包检测结果、所述目标数据包的到达时延值、所述连续丢包个数、所述时延统计值分别进行量化;根据量化后的所述丢包检测结果、所述目标数据包的到达时延值、所述连续丢包个数、所述时延统计值,确定所述网络的目标状态值。
在一些实施例中,确定单元12,具体用于将量化后的所述丢包检测结果、所述目标数据包的到达时延值、所述连续丢包个数、所述时延统计值的加权和,确定为所述网络的目标状态值。
在一些实施例中,获取单元11还用于获取多发参数的确定方式指示信息,所述确定方式指示信息用于指示每个时间周期对应的多发参数通过强化学习方式确定的概率为第一概率,通过随机选择确定的概率为第二概率;根据所述多发参数的确定方式指示信息,在确定所述第i+1时间周期内的目标多发参数是通过所述强化学习方式确定的时,获取所述接收设备在所述第i时间周期内的第一时刻接收到所述第一数据包时的检测信息。
在一些实施例中,预测单元13,还用于,所述方法根据所述多发参数的确定方式指示信息,在确定所述第i+1时间周期内的目标多发参数是通过随机选择方式确定的时,从预设的多个多发参数中随机选择一多发参数作为所述目标多发参数。
应理解,装置实施例与方法实施例可以相互对应,类似的描述可以参照方法实施例。为避免重复,此处不再赘述。具体地,图6所示的装置可以对应于执行本申请实施例的方法中的相应主体,并且预测装置10中的各个模块的前述和其它操作和/或功能分别为了实现图2至图5中的各个方法中的相应流程,为了简洁,在此不再赘述。
上文中结合附图从功能模块的角度描述了本申请实施例的装置。应理解,该功能模块可以通过硬件形式实现,也可以通过软件形式的指令实现,还可以通过硬件和软件模块组合实现。具体地,本申请实施例中的方法实施例的各步骤可以通过处理器中的硬件的集成逻辑电路和/或软件形式的指令完成,结合本申请实施例公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。可选地,软件模块可以位于随机存储器,闪存、只读存储器、可编程只读存储器、电可擦写可编程存储器、寄存器等本领域的成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述方法实施例中的步骤。
图7为本申请实施例涉及的电子设备的框图,该设备可以是计算设备、发送设备或接收设备,用于执行上述实施例所述的方法,具体参见上述方法实施例中的说明。
图7所示的电子设备200包括存储器201、处理器202、通信接口203。存储器201、处理器202、通信接口203之间彼此通信连接。例如,存储器201、处理器202、通信接口203之间可以采用网络连接的方式,实现通信连接。或者,上述电子设备200还可以包括总线204。存储器201、处理器202、通信接口203通过总线204实现彼此之间的通信连接。图7是以存储器201、处理器202、通信接口203通过总线204实现彼此之间的通信连接的电子设备200。
存储器201可以是只读存储器(Read Only Memory,ROM),静态存储设备,动态存储设备或者随机存取存储器(Random Access Memory,RAM)。存储器201可以存储程序,当存储器201中存储的程序被处理器202执行时,处理器202和通信接口203用于执行上述方法。
处理器202可以采用通用的中央处理器(Central Processing Unit,CPU),微处理器,应用专用集成电路(Application Specific Integrated Circuit,ASIC),图形处理器(graphics processing unit,GPU)或者一个或多个集成电路。
处理器202还可以是一种集成电路芯片,具有信号的处理能力。在实现过程中,本申请的方法可以通过处理器202中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器202还可以是通用处理器、数字信号处理器(digital signal processing,DSP)、专用集成电路(ASIC)、现成可编程门阵列(field programmable gate array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器201,处理器202读取存储器201中的信息,结合其硬件完成本申请实施例的方法。
通信接口203使用例如但不限于收发器一类的收发模块,来实现电子设备200与其他设备或通信网络之间的通信。例如,可以通过通信接口203获取数据集。
当上述电子设备200包括总线204时,总线204可包括在电子设备200各个部件(例如,存储器201、处理器202、通信接口203)之间传送信息的通路。
根据本申请的还提供了一种计算机存储介质,其上存储有计算机程序,该计算机程序被计算机执行时使得该计算机能够执行上述方法实施例的方法。或者说,本申请实施例还提供一种包含指令的计算机程序产品,该指令被计算机执行时使得计算机执行上述方法实施例的方法。
根据本申请的还提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述方法实施例的方法。
换言之,当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。该计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行该计算机程序指令时,全部或部分地产生按照本申请实施例该的流程或功能。该计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。该计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,该计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(digital subscriber line,DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。该计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。该可用介质可以是磁性介质(例如,软盘、硬盘、磁带)、光介质(例如数字视频光盘(digital video disc,DVD))、或者半导体介质(例如固态硬盘(solid state disk,SSD))等。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的模块及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,该模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个模块或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或模块的间接耦合或通信连接,可以是电性,机械或其它的形式。
作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理模块,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。例如,在本申请各个实施例中的各功能模块可以集成在一个处理模块中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个模块中。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。另外,各个方法实施例之间、各个装置实施例之间也可以互相参考,在不同实施例中的相同或对应内容可以互相引用,不做赘述。

Claims (14)

1.一种数据包多发参数的预测方法,其特征在于,包括:
获取接收设备在第i时间周期内的第一时刻接收到第一数据包时的检测信息,所述检测信息包括丢包信息和时延信息中的至少一个,i为正整数;
根据所述第一数据包对应的检测信息,确定网络的第一状态值;
根据所述网络的第一状态值,从所述第i时间周期的Q数据表中,查询在所述第一状态值下达到最大长期奖励值时所采取的第一多发参数,所述Q数据表包括不同网络状态值下采取不同多发参数时所获得的长期奖励值;
将所述第一多发参数确定为发送设备在第i+1时间周期内发送数据包时的目标多发参数,其中,所述目标多发参数用于指示所述发送设备在所述第i+1时间周期内根据所述目标多发参数重复发送数据包。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
获取所述接收设备在所述第i时间周期内的丢包恢复个数,以及所述接收设备在所述第i时间周期内的实际丢包个数;
根据所述丢包恢复个数、所述实际丢包个数和所述目标多发参数,确定所述第i时间周期对应的临时奖励值;
根据所述第i时间周期对应的临时奖励值,更新所述第i时间周期的Q数据表,得到所述第i+1时间周期的Q数据表。
3.根据权利要求2所述的方法,其特征在于,所述根据所述丢包恢复个数、所述实际丢包个数和所述目标多发参数,确定所述第i时间周期对应的临时奖励值,包括:
根据所述丢包恢复个数、所述实际丢包个数和所述目标多发参数,确定第一数值;
将所述第一数值和预设值中的最大值,确定为所述第i时间周期对应的临时奖励值,其中所述预设值为0或正数。
4.根据权利要求3所述的方法,其特征在于,所述根据所述丢包恢复个数、所述实际丢包个数和所述目标多发参数,确定第一数值,包括:
根据所述丢包恢复个数与所述实际丢包个数的比值,确定第二数值;
根据所述第二数值与所述目标多发参数的差值,得到所述第一数值。
5.根据权利要求4所述的方法,其特征在于,所述根据所述第二数值与所述目标多发参数的差值,得到所述第一数值,包括:
确定所述第二数值和第一预设权重值的第一乘积,以及所述目标多发参数与第二预设权重的第二乘积;
将所述第一乘积与所述第二乘积的差值,确定为所述第一数值。
6.根据权利要求2所述的方法,其特征在于,所述根据所述第i时间周期对应的临时奖励值,更新所述第i时间周期的Q数据表,得到所述第i+1时间周期的Q数据表,包括:
获取所述接收设备在第i时间周期内的第二时刻所接收到第二数据包时的检测信息,所述第二时刻为所述第一时刻之后的时刻;
根据所述第二数据包对应的检测信息,确定所述网络的第二状态值;
根据所述网络的第二状态值,从所述第i时间周期的Q数据表中,查询所述第二状态值对应的最大长期奖励值;
根据所述第二状态值对应的最大长期奖励值,以及所述第i时间周期对应的临时奖励值,更新所述第i时间周期的Q数据表,得到所述第i+1时间周期的Q数据表。
7.根据权利要求6所述的方法,其特征在于,目标数据包对应的检测信息包括所述接收设备在接收所述目标数据包之前是否丢包的丢包检测结果、所述目标数据包的到达时延值、所述接收设备从上一个成功接收的数据包到接收所述目标数据包之间的连续丢包个数、所述接收设备接收N个数据包的时延统计值中的至少一个,所述N个数据包包括所述第一数据包,以及所述第一数据包之前成功接到的N-1个数据包,所述目标数据包括为所述第一数据包或所述第二数据包,所述N为大于1的正整数。
8.根据权利要求7所述的方法,其特征在于,所述方法还包括:
根据所述丢包检测结果、所述目标数据包的到达时延值、所述连续丢包个数、所述时延统计值,确定所述网络的目标状态值;
其中,若所述目标数据包为所述第一数据包,则所述网络的目标状态值为所述网络的第一状态值,若所述目标数据包为所述第二数据包,则所述网络的目标状态值为所述网络的第二状态值。
9.根据权利要求8所述的方法,其特征在于,所述根据所述丢包检测结果、所述目标数据包的到达时延值、所述连续丢包个数、所述时延统计值,确定所述网络的目标状态值,包括:
根据预设的量化规则分别对所述丢包检测结果、所述目标数据包的到达时延值、所述连续丢包个数、所述时延统计值分别进行量化;
根据量化后的所述丢包检测结果、所述目标数据包的到达时延值、所述连续丢包个数、所述时延统计值,确定所述网络的目标状态值。
10.根据权利要求1所述的方法,其特征在于,所述获取接收设备在第i时间周期内的第一时刻接收到第一数据包时的检测信息之前,包括:
获取多发参数的确定方式指示信息,所述确定方式指示信息用于指示每个时间周期对应的多发参数通过强化学习方式确定的概率为第一概率,通过随机选择确定的概率为第二概率;
所述获取接收设备在第i时间周期内的第一时刻接收到第一数据包时的检测信息,包括:
根据所述多发参数的确定方式指示信息,在确定所述第i+1时间周期内的目标多发参数是通过所述强化学习方式确定的时,获取所述接收设备在所述第i时间周期内的第一时刻接收到所述第一数据包时的检测信息。
11.根据权利要求10所述的方法,其特征在于,所述方法还包括:
根据所述多发参数的确定方式指示信息,在确定所述第i+1时间周期内的目标多发参数是通过随机选择方式确定的时,从预设的多个多发参数中随机选择一多发参数作为所述目标多发参数。
12.一种数据包多发参数的预测装置,其特征在于,包括:
获取单元,用于获取接收设备在第i时间周期内的第一时刻接收到第一数据包时的检测信息,所述检测信息包括丢包信息和时延信息中的至少一个,i为正整数;
确定单元,用于根据所述第一数据包对应的检测信息,确定网络的第一状态值;
预测单元,用于根据所述网络的第一状态值,从所述第i时间周期的Q数据表中,查询在所述第一状态值下达到最大长期奖励值时所采取的第一多发参数,所述Q数据表包括不同网络状态值下采取不同多发参数时所获得的长期奖励值;并将所述第一多发参数确定为发送设备在第i+1时间周期内发送数据包时的目标多发参数,其中,所述目标多发参数用于指示所述发送设备在所述第i+1时间周期内根据所述目标多发参数重复发送数据包。
13.一种电子设备,其特征在于,包括:处理器和存储器;
所述存储器,用于存储计算机程序;
所述处理器,用于执行所述计算机程序以实现如权利要求1至11任一项所述的数据包多发参数的预测方法。
14.一种计算机可读存储介质,其特征在于,所述存储介质包括计算机指令,当所述指令被计算机执行时,使得所述计算机实现如权利要求1至11任一项所述的数据包多发参数的预测方法。
CN202110802811.3A 2021-07-15 2021-07-15 数据包多发参数的预测方法、装置与存储介质 Active CN113839830B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110802811.3A CN113839830B (zh) 2021-07-15 2021-07-15 数据包多发参数的预测方法、装置与存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110802811.3A CN113839830B (zh) 2021-07-15 2021-07-15 数据包多发参数的预测方法、装置与存储介质

Publications (2)

Publication Number Publication Date
CN113839830A CN113839830A (zh) 2021-12-24
CN113839830B true CN113839830B (zh) 2023-10-24

Family

ID=78962824

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110802811.3A Active CN113839830B (zh) 2021-07-15 2021-07-15 数据包多发参数的预测方法、装置与存储介质

Country Status (1)

Country Link
CN (1) CN113839830B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117041139B (zh) * 2023-10-09 2024-03-26 腾讯科技(深圳)有限公司 数据包传输方法、装置、计算机设备和存储介质
CN117336251B (zh) * 2023-11-30 2024-02-23 上海鉴智其迹科技有限公司 一种车载数据的交互方法、装置、电子设备及存储介质

Citations (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016015582A1 (zh) * 2014-07-30 2016-02-04 华为技术有限公司 传输报文的方法、装置和系统
CN107864084A (zh) * 2016-09-22 2018-03-30 腾讯科技(深圳)有限公司 数据包的传输方法和装置
CN108234224A (zh) * 2016-12-13 2018-06-29 腾讯科技(深圳)有限公司 可用带宽的探测方法及装置
WO2019080656A1 (zh) * 2017-10-27 2019-05-02 维沃移动通信有限公司 丢包率计算方法、网络设备及终端
WO2019114926A1 (en) * 2017-12-11 2019-06-20 Nokia Solutions And Networks Oy Transmission method and apparatus
CN110012502A (zh) * 2019-03-27 2019-07-12 芜湖职业技术学院 数据传输控制方法、通讯系统和机器可读存储介质
CN110022615A (zh) * 2018-01-08 2019-07-16 电信科学技术研究院 一种数据传输方法、装置、设备及计算机可读存储介质
CN110247736A (zh) * 2019-06-27 2019-09-17 北京奇艺世纪科技有限公司 一种数据传输方法及装置
CN110266551A (zh) * 2019-07-29 2019-09-20 腾讯科技(深圳)有限公司 一种带宽预测方法、装置、设备及存储介质
CN110460533A (zh) * 2019-07-12 2019-11-15 锐捷网络股份有限公司 基于rdma的数据传输方法及装置
CN110620738A (zh) * 2019-10-15 2019-12-27 腾讯科技(深圳)有限公司 带宽分配方法、装置、设备及存储介质
EP3614786A1 (en) * 2018-08-23 2020-02-26 Guangdong Oppo Mobile Telecommunications Corp., Ltd. Data transmission method and apparatus
CN111277502A (zh) * 2020-01-20 2020-06-12 北京红云融通技术有限公司 多链路聚合传输数据的方法及发送设备
WO2020125647A1 (zh) * 2018-12-17 2020-06-25 杭州海康威视数字技术股份有限公司 重传数据的方法、装置和系统
CN111953454A (zh) * 2020-07-16 2020-11-17 西安万像电子科技有限公司 丢包重传方法、设备及存储介质
CN111970208A (zh) * 2020-08-27 2020-11-20 腾讯科技(深圳)有限公司 网络传输方法、装置、设备及计算机可读存储介质
WO2020244327A1 (zh) * 2019-06-05 2020-12-10 西安万像电子科技有限公司 数据处理方法及装置
WO2021081696A1 (zh) * 2019-10-28 2021-05-06 华为技术有限公司 传输数据的方法和通信装置
WO2021103706A1 (zh) * 2019-11-30 2021-06-03 华为技术有限公司 控制数据包发送方法、模型训练方法、装置及系统

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1249970A1 (en) * 2001-04-10 2002-10-16 Alcatel A method to ensure the quality of preferred communication services such as voice versus regular data
CN110300003B (zh) * 2018-03-21 2021-01-12 华为技术有限公司 数据处理方法以及客户端

Patent Citations (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016015582A1 (zh) * 2014-07-30 2016-02-04 华为技术有限公司 传输报文的方法、装置和系统
CN107864084A (zh) * 2016-09-22 2018-03-30 腾讯科技(深圳)有限公司 数据包的传输方法和装置
CN108234224A (zh) * 2016-12-13 2018-06-29 腾讯科技(深圳)有限公司 可用带宽的探测方法及装置
WO2019080656A1 (zh) * 2017-10-27 2019-05-02 维沃移动通信有限公司 丢包率计算方法、网络设备及终端
WO2019114926A1 (en) * 2017-12-11 2019-06-20 Nokia Solutions And Networks Oy Transmission method and apparatus
CN110022615A (zh) * 2018-01-08 2019-07-16 电信科学技术研究院 一种数据传输方法、装置、设备及计算机可读存储介质
EP3614786A1 (en) * 2018-08-23 2020-02-26 Guangdong Oppo Mobile Telecommunications Corp., Ltd. Data transmission method and apparatus
WO2020125647A1 (zh) * 2018-12-17 2020-06-25 杭州海康威视数字技术股份有限公司 重传数据的方法、装置和系统
CN110012502A (zh) * 2019-03-27 2019-07-12 芜湖职业技术学院 数据传输控制方法、通讯系统和机器可读存储介质
WO2020244327A1 (zh) * 2019-06-05 2020-12-10 西安万像电子科技有限公司 数据处理方法及装置
CN110247736A (zh) * 2019-06-27 2019-09-17 北京奇艺世纪科技有限公司 一种数据传输方法及装置
CN110460533A (zh) * 2019-07-12 2019-11-15 锐捷网络股份有限公司 基于rdma的数据传输方法及装置
CN110266551A (zh) * 2019-07-29 2019-09-20 腾讯科技(深圳)有限公司 一种带宽预测方法、装置、设备及存储介质
CN110620738A (zh) * 2019-10-15 2019-12-27 腾讯科技(深圳)有限公司 带宽分配方法、装置、设备及存储介质
WO2021081696A1 (zh) * 2019-10-28 2021-05-06 华为技术有限公司 传输数据的方法和通信装置
WO2021103706A1 (zh) * 2019-11-30 2021-06-03 华为技术有限公司 控制数据包发送方法、模型训练方法、装置及系统
CN111277502A (zh) * 2020-01-20 2020-06-12 北京红云融通技术有限公司 多链路聚合传输数据的方法及发送设备
CN111953454A (zh) * 2020-07-16 2020-11-17 西安万像电子科技有限公司 丢包重传方法、设备及存储介质
CN111970208A (zh) * 2020-08-27 2020-11-20 腾讯科技(深圳)有限公司 网络传输方法、装置、设备及计算机可读存储介质

Also Published As

Publication number Publication date
CN113839830A (zh) 2021-12-24

Similar Documents

Publication Publication Date Title
CN113839830B (zh) 数据包多发参数的预测方法、装置与存储介质
CN111629380B (zh) 面向高并发多业务工业5g网络的动态资源分配方法
EP4037256A1 (en) Bandwidth prediction method and apparatus, electronic device and storage medium
CN111405327A (zh) 网络带宽预测模型训练方法、视频数据播放方法及装置
CN113408209A (zh) 跨样本联邦分类建模方法及装置、存储介质、电子设备
CN110460880A (zh) 基于粒子群和神经网络的工业无线流媒体自适应传输方法
CN112733043B (zh) 评论推荐方法及装置
CN110890930A (zh) 一种信道预测方法及相关设备
CN114819190A (zh) 基于联邦学习的模型训练方法、装置、系统、存储介质
CN114757352B (zh) 智能体训练方法、跨域异构环境任务调度方法及相关装置
CN113419849A (zh) 边缘计算节点选择方法及终端设备
CN115310360A (zh) 基于联邦学习的数字孪生辅助工业物联网可靠性优化方法
CN112383485A (zh) 一种网络拥塞控制方法及装置
CN114064394A (zh) 基于边缘计算的安全监控方法、装置及终端设备
CN113923743A (zh) 电力地下管廊的路由选择方法、装置、终端及存储介质
US20230153633A1 (en) Moderator for federated learning
Bhattacharyya et al. QFlow: A learning approach to high QoE video streaming at the wireless edge
CN116320620A (zh) 基于个性化联邦强化学习的流媒体比特率自适应调整方法
CN116362894A (zh) 多目标学习方法、装置、电子设备及计算机可读存储介质
CN113313245B (zh) 用于共享学习的模型处理方法、系统、装置以及电子设备
CN114584476A (zh) 一种流量预测方法、网络训练方法、装置及电子设备
CN116957067B (zh) 公共安全事件预测模型的强化联邦学习方法及装置
Mikhailenko et al. Analysis of the adaptive neural network router
CN117076131B (zh) 一种任务分配方法、装置、电子设备及存储介质
CN114697974B (zh) 网络覆盖优化方法、装置、电子设备及存储介质

Legal Events

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