CN111935550B - 一种基于时效性的数据包调度方法、装置及电子设备 - Google Patents

一种基于时效性的数据包调度方法、装置及电子设备 Download PDF

Info

Publication number
CN111935550B
CN111935550B CN202010785684.6A CN202010785684A CN111935550B CN 111935550 B CN111935550 B CN 111935550B CN 202010785684 A CN202010785684 A CN 202010785684A CN 111935550 B CN111935550 B CN 111935550B
Authority
CN
China
Prior art keywords
data packet
current data
current
packet
retransmission
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
CN202010785684.6A
Other languages
English (en)
Other versions
CN111935550A (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.)
Beijing University of Posts and Telecommunications
Original Assignee
Beijing University of Posts and Telecommunications
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 Beijing University of Posts and Telecommunications filed Critical Beijing University of Posts and Telecommunications
Priority to CN202010785684.6A priority Critical patent/CN111935550B/zh
Publication of CN111935550A publication Critical patent/CN111935550A/zh
Application granted granted Critical
Publication of CN111935550B publication Critical patent/CN111935550B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/45Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
    • H04N21/462Content or additional data management, e.g. creating a master electronic program guide from data received from the Internet and a Head-end, controlling the complexity of a video stream by scaling the resolution or bit-rate based on the client capabilities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/262Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists
    • H04N21/26208Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists the scheduling operation being performed under constraints
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/637Control signals issued by the client directed to the server or network components
    • H04N21/6375Control signals issued by the client directed to the server or network components for requesting retransmission, e.g. of data packets lost or corrupted during transmission from server
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/647Control signaling between network components and server or clients; Network processes for video distribution between server and clients, e.g. controlling the quality of the video stream, by dropping packets, protecting content from unauthorised alteration within the network, monitoring of network load, bridging between two different networks, e.g. between IP and wireless
    • H04N21/64784Data processing by the network
    • H04N21/64792Controlling the complexity of the content stream, e.g. by dropping packets

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computer Security & Cryptography (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)
  • Communication Control (AREA)

Abstract

本发明实施例提供了一种基于时效性的数据包调度方法、装置及电子设备,其方法包括:数据接收端接收数据发送端发送的当前数据包;对当前数据包进行校验得到校验结果;计算当前数据包的AOI;将当前数据包的AOI,重传次数以及校验结果,确定为当前数据包的状态;计算当前数据包的状态转移概率,构建状态转移矩阵;计算当前数据包的丢包率;基于当前数据包的状态、获取的动作向量、状态转移矩阵,当前数据包的AOI以及丢包率,构建马尔可夫模型;利用马尔可夫模型得到当前数据包的重传策略;将当前数据包的重传策略发送给数据发送端,数据发送端根据当前数据包的重传策略发送对应的数据包。本发明实施例,能够给提高数据解码播放的实时性。

Description

一种基于时效性的数据包调度方法、装置及电子设备
技术领域
本发明涉及数据处理技术领域,特别是涉及一种基于时效性的数据包调度方法、装置及电子设备。
背景技术
随着互联网的快速发展,互联网视频的播放越来越普及。通过无线视频传输以观看互联网视频的过程可以包括:流媒体服务器实时获取已压缩编码的视频数据流,当用户请求视频数据时,通过数据调度设备对流媒体服务器中的视频数据流进行调度,发送至客户端,客户端接收视频流数据并进行解码播放。
视频压缩编码大多采用H.264标准进行,编码后的视频数据之间相关性比较强。例如,以GOP(Group of Pictures,图像组)为例,GOP是一组连续的图像,由一个I帧和多个B帧或P帧组成,其中,第一帧采用帧内编码,后续帧采用帧间编码,而帧间编码需要参考在前的帧内编码数据。在无线视频数据传输过程中,对于解压缩编码的视频数据接收端而言,当在前的参考帧数据接收错误时,该错误的参考帧数据会影响后续帧解码的正确性,即当前帧在数据传输过程中的失真,会导致后续帧产生更大的失真,进而影响视频的播放。
针对当前帧在数据传输过程中的失真,导致后续帧产生更大的失真,进而影响视频播放的问题,现有采用HARQ(Hybrid-Automatic Repeat-reQuest,混合自动重传请求)技术实现对数据包的调度,该技术的实施过程包括:数据发送端将已压缩编码的视频数据流生成数据包,然后,对数据包进行分组,每一分组中包含多个数据包,同时为每一数据包生成冗余校验信息,进而将该组中的数据包和数据包对应的冗余校验信息发送至数据接收端;数据接收端接收数据发送端发送的数据包和数据包对应的冗余校验信息,然后,对每一数据包对应的冗余校验信息进行校验,当数据包校验失败时,判断该数据包的重传次数是否小于预先设置的最大重传次数,如果是,则向数据发送端反馈NACK(Non-ACKnowledgement,不确认)信息,使得数据发送端对该数据包进行重传,如果否,则丢弃该数据包,当该组数据包全部校验完成(包含数据包重传成功或丢弃数据包),对该组中的数据包进行解码进而实现视频的播放,同时向数据发送端反馈ACK(ACKnowledgement,确认)信息,以使数据发送端继续发送下一组数据。
现有对数据包的调度实施过程中,对单个数据包进行校验,根据预先设置的最大迭代次数来确定数据包是否重传,如果最大迭代次数设置过小,还是存在数据失真,影响视频播放的问题,如果最大迭代次数设置过大,会导致数据重传耗费的时间较多,影响数据解码播放的实时性,进而影响视频的播放效果。
发明内容
本发明实施例的目的在于提供一种基于时效性的数据包调度方法、装置及电子设备,通过优化数据重传策略的方式提高数据解码播放的实时性。具体技术方案如下:
第一方面,本发明实施例提供了一种基于时效性的数据包调度方法,应用于数据接收端,所述方法包括:
接收数据发送端所发送的当前数据包以及当前数据包对应的信息,所述当前数据包对应的信息包括:当前数据包的重传次数,当前数据包的生成时隙和当前数据包的冗余校验信息;
根据当前数据包的冗余校验信息对当前数据包进行校验,得到当前数据包对应的校验结果;
基于当前时隙与所述当前数据包的生成时隙,计算当前数据包的信息年龄AOI;
将所述当前数据包的AOI,所述当前数据包的重传次数,以及所述当前数据包对应的校验结果,确定为所述当前数据包的状态;
获取预设的动作向量,所述动作向量由重传策略构成;其中,所述重传策略包含:不传输数据包,传输新的数据包以及重传所述当前数据包;
基于所述当前数据包的重传次数,计算当前数据包的状态转移概率,构建状态转移矩阵;
根据预设的当前数据包的重要度以及所述当前数据包对应的校验结果,计算当前数据包的丢包率;
基于所述当前数据包的状态,所述动作向量,所述状态转移矩阵,所述当前数据包的AOI,以及所述当前数据包的丢包率,构建马尔可夫模型;
利用所述马尔可夫模型对当前数据包进行动作预测,得到所述当前数据包对应的重传策略;
将所述当前数据包对应的重传策略发送给所述数据发送端,以使所述数据发送端根据所述当前数据包对应的重传策略发送对应的数据包。
可选地,所述基于当前时隙与所述当前数据包的生成时隙,计算当前数据包的信息年龄AOI的步骤,包括:
将当前时隙与所述当前数据包的生成时隙的差值,确定为当前数据包的AOI。
可选地,所述基于所述当前数据包的重传次数,计算当前数据包的状态转移概率的步骤,包括:
利用如下表达式计算当前数据包的状态转移概率:
h(r)=p0λr
其中,h(r)表示当前数据包的状态转移概率,r表示当前数据包的重传次数,p0表示第一次传输当前数据包时的错误概率,λ表示根据视频传输信道确定的参数。
可选地,所述根据预设的当前数据包的重要度以及所述当前数据包对应的校验结果,计算当前数据包的丢包率的步骤,包括:
利用如下表达式计算当前数据包的丢包率:
φ=1-(φ1d12d2+...φNdN)
其中,φ表示当前数据包的丢包率,φ1表示第一个数据包的重要度,φN表示当前数据包的重要度,d1表示第一个数据包对应的校验结果,dN表示当前数据包对应的校验结果。
第二方面,本发明实施例还提供了一种基于时效性的数据包调度方法,应用于数据发送端,所述方法包括:
为待发送视频流数据确定数据发送的时隙;
将待发送视频流数据生成数据包,记录每一数据包的生成时隙,并为每一数据包初始化重传次数;
为每一数据包生成冗余校验信息,并按照预设规则对所述数据包进行分组,得到多组数据;
将当前组数据中当前数据包以及当前数据包对应的信息,发送给数据接收端,以使数据接收端根据所述当前数据包对应的信息中当前数据包的冗余校验信息对当前数据包进行校验,以及根据对当前数据包的校验结果、当前数据包的重传次数,当前数据包的信息年龄AOI以及当前数据包的丢包率,为所述当前数据包确定对应的重传策略;其中,所述当前数据包对应的信息包括:当前数据包的重传次数,当前数据包的生成时隙和当前数据包的冗余校验信息;
当接收到所述数据接收端发送的表示当前数据包校验失败的NACK信息时,将当前数据包的重传次数增加1;
接收所述数据接收端发送的当前数据包对应的重传策略,并根据所述重传策略,确定是否对所述当前数据包进行重传。
可选地,所述接收所述数据接收端发送的当前数据包对应的重传策略,并根据所述重传策略,确定是否对所述当前数据包进行重传的步骤,包括:
当接收到所述数据接收端发送的所述当前数据包对应的NACK信息,以及所述当前数据包对应的重传策略时,根据所述重传策略对所述当前数据包进行重传或传输新的数据包;
或者,
当接收到所述数据接收端发送的所述当前数据包对应的ACK信息,以及所述当前数据包对应的重传策略时,根据所述重传策略传输新的数据包或不传输数据包。
第三方面,本发明实施例还提供了一种基于时效性的数据包调度装置,应用于数据接收端,所述装置包括:
第一接收模块,用于接收数据发送端所发送的当前数据包以及当前数据包对应的信息,所述当前数据包对应的信息包括:当前数据包的重传次数,当前数据包的生成时隙和当前数据包的冗余校验信息;
校验模块,用于根据当前数据包的冗余校验信息对当前数据包进行校验,得到当前数据包对应的校验结果;
第一计算模块,用于基于当前时隙与所述当前数据包的生成时隙,计算当前数据包的信息年龄AOI;
第一确定模块,用于将所述当前数据包的AOI,所述当前数据包的重传次数,以及所述当前数据包对应的校验结果,确定为所述当前数据包的状态;
获取模块,用于获取预设的动作向量,所述动作向量由重传策略构成;其中,所述重传策略包含:不传输数据包,传输新的数据包以及重传所述当前数据包;
第一构建模块,用于基于所述当前数据包的重传次数,计算当前数据包的状态转移概率,构建状态转移矩阵;
第二计算模块,用于根据预设的当前数据包的重要度以及所述当前数据包对应的校验结果,计算当前数据包的丢包率;
第二构建模块,用于基于所述当前数据包的状态,所述动作向量,所述状态转移矩阵,所述当前数据包的AOI,以及所述当前数据包的丢包率,构建马尔可夫模型;
策略确定模块,用于利用所述马尔可夫模型对当前数据包进行动作预测,得到所述当前数据包对应的重传策略;
第一发送模块,用于将所述当前数据包对应的重传策略发送给所述数据发送端,以使所述数据发送端根据所述当前数据包对应的重传策略发送对应的数据包。
第四方面,本发明实施例还提供了一种基于时效性的数据包调度装置,应用于数据接收端,所述装置包括:
第二确定模块,用于为待发送视频流数据确定数据发送的时隙;
第一生成模块,用于将待发送视频流数据生成数据包,记录每一数据包的生成时隙,并为每一数据包初始化重传次数;
第二生成模块,用于为每一数据包生成冗余校验信息,并按照预设规则对所述数据包进行分组,得到多组数据;
第二发送模块,用于将当前组数据中当前数据包以及当前数据包对应的信息,发送给数据接收端,以使数据接收端根据所述当前数据包对应的信息中当前数据包的冗余校验信息对当前数据包进行校验,以及根据对当前数据包的校验结果、当前数据包的重传次数,当前数据包的信息年龄AOI以及当前数据包的丢包率,为所述当前数据包确定对应的重传策略;其中,所述当前数据包对应的信息包括:当前数据包的重传次数,当前数据包的生成时隙和当前数据包的冗余校验信息;
重传次数变更模块,用于当接收到所述数据接收端发送的表示当前数据包校验失败的NACK信息时,将当前数据包的重传次数增加1;
第二接收模块,用于接收所述数据接收端发送的当前数据包对应的重传策略,并根据所述重传策略,确定是否对所述当前数据包进行重传。
第五方面,本发明实施例还提供了一种数据接收端电子设备,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现上述第一方面任一所述的一种基于时效性的数据包调度方法。
第六方面,本发明实施例还提供了一种数据发送端电子设备,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现上述第二方面任一所述的一种基于时效性的数据包调度方法。
第七方面,本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述任一所述的一种基于时效性的数据包调度方法。
本发明实施例有益效果:
本发明实施例提供的一种基于时效性的数据包调度方法、装置及电子设备,数据发送端将当前数据包,以及包括当前数据包的重传次数,当前数据包的生成时隙和当前数据包的冗余校验信息的当前数据包信息发送给数据接收端,进而数据接收端对当前数据包进行校验,计算当前数据包的AOI和丢包率,然后利于基于当前数据包的状态、动作向量、状态转移矩阵,当前数据包的AOI,以及当前数据包的丢包率所构建马尔可夫模型,对当前数据包对应的重传策略进行预测,在预测当前数据包对应的重传策略时,不仅考虑了数据包的重传次数,还考虑了数据包的AOI和丢包率,能够增加数据接收端接收数据包的即时性,进而能够提高数据解码播放的实时性,使得视频能够清晰流畅的播放。
当然,实施本发明的任一产品或方法并不一定需要同时达到以上所述的所有优点。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的实施例。
图1为本发明实施例提供的一种数据传输方法示意图;
图2为本发明实施例提供的一种基于时效性的数据包调度方法流程示意图;
图3为本发明实施例提供的一种时隙变化示意图;
图4为本发明实施例提供的另一种基于时效性的数据包调度方法流程示意图;
图5为本发明实施例提供的一种对丢包率与信息年龄的仿真图;
图6为本发明实施例提供的另一种对丢包率与信息年龄的仿真图;
图7为本发明实施例提供的又一种对丢包率与信息年龄的仿真图;
图8为本发明实施例提供的一种基于时效性的数据包调度装置的结构示意图;
图9为本发明实施例提供的另一种基于时效性的数据包调度装置的结构示意图;
图10为本发明实施例提供的一种数据接收端电子设备的结构示意图;
图11为本发明实施例提供的一种数据发送端电子设备的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
为了解决现有数据包重传策略影响数据解码播放的实时性,进而影响视频播放效果的问题,本发明实施例提供了一种基于时效性的数据包调度方法,应用于数据接收端,所述方法包括:
接收数据发送端所发送的当前数据包以及当前数据包对应的信息,所述当前数据包对应的信息包括:当前数据包的重传次数,当前数据包的生成时隙和当前数据包的冗余校验信息;
根据当前数据包的冗余校验信息对当前数据包进行校验,得到当前数据包对应的校验结果;
基于当前时隙与所述当前数据包的生成时隙,计算当前数据包的信息年龄AOI;
将所述当前数据包的AOI,所述当前数据包的重传次数,以及所述当前数据包对应的校验结果,确定为所述当前数据包的状态;
获取预设的动作向量,所述动作向量由重传策略构成;其中,所述重传策略包含:不传输数据包,传输新的数据包以及重传所述当前数据包;
基于所述当前数据包的重传次数,计算当前数据包的状态转移概率,构建状态转移矩阵;
根据预设的当前数据包的重要度以及所述当前数据包对应的校验结果,计算当前数据包的丢包率;
基于所述当前数据包的状态,所述动作向量,所述状态转移矩阵,所述当前数据包的AOI,以及所述当前数据包的丢包率,构建马尔可夫模型;
利用所述马尔可夫模型对当前数据包进行动作预测,得到所述当前数据包对应的重传策略;
将所述当前数据包对应的重传策略发送给所述数据发送端,以使所述数据发送端根据所述当前数据包对应的重传策略发送对应的数据包。
本发明实施例提供的一种基于时效性的数据包调度方法,数据接收端对当前数据包进行校验,计算当前数据包的AOI和丢包率,然后利于基于当前数据包的状态、动作向量、状态转移矩阵,当前数据包的AOI,以及当前数据包的丢包率所构建马尔可夫模型,对当前数据包对应的重传策略进行预测,在预测当前数据包对应的重传策略时,不仅考虑了数据包的重传次数,还考虑了数据包的AOI和丢包率,能够增加数据接收端接收数据包的即时性,进而能够提高数据解码播放的实时性,使得视频能够清晰流畅的播放。
下面对本发明实施例提供的一种基于时效性的数据包调度方法进行详细介绍:
本发明实施例中,以视频流数据对应的数据包为例进行说明,数据发送端可以是流媒体服务器等可以发送视频流数据的设备,数据接收端可以是客户端等可以对视频流数据进行接收,并解码播放的设备。示例性的,数据发送端与数据接收端之间的数据交互如图1所示,数据发送端将数据包通过无线信道发送给数据接收端,数据接收端对数据发送端所发送的数据进行接收,并反馈响应信息。
如图2所示,本发明实施例提供了一种基于时效性的数据包调度方法,应用于数据接收端,该方法可以包括以下步骤:
S101,接收数据发送端所发送的当前数据包以及当前数据包对应的信息。
本发明实施例中的数据接收端接收数据发送端所发送的当前数据包以及当前数据包对应的信息,其中,当前数据包对应的信息可以包括:当前数据包的重传次数,当前数据包的生成时隙和当前数据包的冗余校验信息。
实际应用中,数据发送端可以只向数据接收端发送当前数据包,该当前数据包中携带有当前数据包对应的信息,相应的,数据接收端接收的是携带有当前数据包对应信息的当前数据包。数据发送端也可以将当前数据包与当前数据包对应的信息分开发送,相应的,数据接收端接收的是当前数据包以及当前数据包对应的信息。
S102,根据当前数据包的冗余校验信息对当前数据包进行校验,得到当前数据包对应的校验结果。
当前数据包的冗余校验信息可以是数据发送端为当前数据包生成的循环冗余校验信息,那么,数据接收端在接收到当前数据包以及当前数据包对应的信息后,可以相应的计算循环冗余校验码,进而使用计算的循环冗余校验码,与接收的当前数据包的冗余校验信息进行匹配,对当前数据包进行校验,得到当前数据包对应的校验结果。示例性的,该当前数据包对应的校验结果可以是校验成功,或校验失败,相应的,校验成功表示当前数据包传输成功且传输正确,校验失败表示当前数据包传输失败或传输错误。
在当前数据包对应的校验结果表示校验失败时,向数据发送端发送NACK信息,以告知数据发送端当前数据包校验失败。在当前数据包对应的校验结果表示校验成功时,向数据发送端发送ACK信息,以告知数据发送端当前数据包校验成功。
S103,基于当前时隙与当前数据包的生成时隙,计算当前数据包的信息年龄AOI。
本发明实施例中,将一个数据包通过无线信道的传输时间定义为一个时隙,该时隙可以抽象为时间序列,示例性的,可以使用序号1,2……等表示,相似的,将当前数据包的生成时隙也抽象为时间序列。在数据接收端接收数据发送端所发送的当前数据包时,可以获取当前时隙,进而基于当前时隙与当前数据包的生成时隙,计算当前数据包的AOI(AgeOf Information,信息年龄)。
作为本发明实施例一种可选的实施方式,基于当前时隙与当前数据包的生成时隙,计算当前数据包的信息年龄AOI的步骤,包括:
将当前时隙与当前数据包的生成时隙的差值,确定为当前数据包的AOI。
对于视频数据传输而言,数据包若等待时间过长,那么相应的AOI较大,可以使用AOI衡量数据包的及时性。
示例性的,如图3所示,图3展示了采用本发明实施例以及采用现有技术(该现有技术为背景技术中所描述的现有技术),在视频流数据对应的数据包传输过程中随着数据包传输策略以及数据包重传次数的变化,数据包AOI的变化情况。图3中at表示时隙t下数据包的动作,gt表示时隙t下数据包的AOI,rt表示时隙t下数据包的重传次数,at=i表示时隙t不传输数据包,at=n表示时隙t传输新的数据包,at=x表示时隙t重传当前数据包。
S104,将当前数据包的AOI,当前数据包的重传次数,以及当前数据包对应的校验结果,确定为当前数据包的状态。
示例性的,当前数据包的状态可以表示为:
Figure BDA0002621880480000111
t表示当前时隙,gt表示当前时隙t下当前数据包的AOI,rt表示当前时隙t下当前数据包的重传次数,dt表示当前时隙t下当前数据包对应的校验结果。可以使用dt=1表示当前数据包校验成功,dt=0表示当前数据包校验失败。
S105,获取预设的动作向量。
本发明实施例中,预设的动作向量可以由重传策略构成,重传策略可以包含:不传输数据包,传输新的数据包以及重传当前数据包。即每个时隙的动作向量中可以包含三种动作,示例性的,动作使用a表示,a=i表示不传输数据包,a=n表示传输新的数据包,a=x表示重传当前数据包。其中,传输新的数据包表示传输当前数据包的下一个数据包。
S106,基于当前数据包的重传次数,计算当前数据包的状态转移概率,构建状态转移矩阵。
作为本发明实施例一种可选的实施方式,基于当前数据包的重传次数,计算当前数据包的状态转移概率的步骤,可以包括:
利用如下表达式计算当前数据包的状态转移概率:
h(r)=p0λr
其中,h(r)表示当前数据包的状态转移概率,r表示当前数据包的重传次数,p0表示第一次传输当前数据包时的错误概率,λ表示根据视频传输信道确定的参数。
当前数据包的状态转移概率h(r)也可以表示无线信道传输数据包错误的概率,进而数据包传输过程中状态转移概率可以表示为以下几种情况,其中,g表示当前数据包的AOI,r表示当前数据包的重传次数,i表示不传输数据包,n表示传输新的数据包,x表示重传当前数据包。
P(g+1,0,0|g,r,i)=1,表示在不传输数据包的情况下,AOI增加1,重传次数为0的概率为1;
P(g+1,1,0|g,r,n)=h(0),表示在传输新的数据包的情况下,AOI增加1,重传次数为1,传输失败的概率;
P(1,0,1|g,r,n)=1-h(0),表示在传输新的数据包的情况下,传输成功的概率;
P(g+1,r+1,0|g,r,x)=h(r),表示在重传当前数据包r次的情况下,再次传输失败的概率;
P(g+1,0,1|g,r,x)=1-h(r),表示在重传当前数据包r次的情况下,传输成功的概率;
其余状态下状态转移概率表示为:P(g',r',d'|g,r,d)=0,其中,g'表示g的状态转移,r'表示r的状态转移,d'表示d的状态转移。
进一步,使用上述状态转移概率构建状态转移矩阵。
S107,根据预设的当前数据包的重要度以及当前数据包对应的校验结果,计算当前数据包的丢包率。
在视频编码中,不同帧的重要程度不同,比如,I帧重要程度极高,若丢失I帧,则可能会引起视频出现马赛克等,而B帧和P帧相对没有I帧重要,可以设置相对低的重要度。本发明实施例中,可以根据不同帧的重要程度预先对视频流数据中的数据包设置对应的重要度,进而根据预设的当前数据包的重要度以及当前数据包对应的校验结果,计算当前数据包的丢包率。
作为本发明实施例一种可选的实施方式,根据预设的当前数据包的重要度以及所述当前数据包对应的校验结果,计算当前数据包的丢包率的步骤,可以包括:
利用如下表达式计算当前数据包的丢包率:
φ=1-(φ1d12d2+...φNdN)
其中,φ表示当前数据包的丢包率,φ1表示第一个数据包的重要度,φN表示当前数据包的重要度,d1表示第一个数据包对应的校验结果,dN表示当前数据包对应的校验结果。示例性的,当前数据包为第一个数据包,则当前数据包的丢包率为:φ=1-φ1d1
S108,基于当前数据包的状态,动作向量,状态转移矩阵,当前数据包的AOI,以及当前数据包的丢包率,构建马尔可夫模型。
示例性的,使用S表示当前数据包的状态,A表示动作向量,P表示状态转移矩阵,M表示当前数据包的AOI,以及φ表示当前数据包的丢包率,构建的马尔可夫模型可以表示为:(S,A,P,M,φ)。
S109,利用马尔可夫模型对当前数据包进行动作预测,得到当前数据包对应的重传策略。
本发明实施例中,因当前数据包的状态,状态转移矩阵,当前数据包的AOI,以及当前数据包的丢包率随着传输数据包的变化而变化,即本发明实施例中马尔可夫模型是边使用边训练的过程,故而,在得到当前数据包的状态,当前数据包的AOI以及当前数据包的丢包率时,可以直接利用马尔可夫模型对当前数据包进行动作预测,得到当前数据包对应的重传策略。
本发明实施例中,将马尔可夫模型的目标函数确定为:
Figure BDA0002621880480000131
Figure BDA0002621880480000132
其中,π表示马尔可夫模型的决策集,s0表示马尔可夫模型的初始状态,Jπ(s0)表示在决策集π下所有传输数据包累计的AOI,T表示传输的总时隙,t表示时隙变量,
Figure BDA0002621880480000149
表示第k个数据包在决策集π下的AOI,k表示第k个数据包,φπ(s0)表示累计的保真度大小,φkД[d=1]|s0表示所有传输成功的数据包重要度累计和,φ0表示视频传输要求达到的最小保真度条件。
采用拉格朗日对偶算法对目标函数进行变换,得到变换后的目标函数表示为:
Figure BDA0002621880480000141
其中,η表示给定参数,
Figure BDA0002621880480000142
表示在决策集π和给定参数η下所有传输数据包累计的AOI,
Figure BDA0002621880480000143
表示在决策集π下第t个时隙数据包对应的校验结果,
Figure BDA0002621880480000144
表示在决策集π下第t个时隙所有传输成功的数据包重要度累计和,φk表示第k个数据包的重要度。
对于给定参数η时,可以将上述目标函数转换成瞬时函数
Figure BDA0002621880480000145
因此,存在着最优策略函数满足以上方程,则可知存在函数hη(g,r,d)满足
Figure BDA0002621880480000146
其中,
Figure BDA0002621880480000147
表示给定参数η下差异成本函数,hη(g′,r′,d′)表示给定参数η下的下一个状态的差异成本函数,
Figure BDA0002621880480000148
表示给定参数η下所有传输数据包最优的AOI,g0表示传输数据包的初始AOI,r0表示传输数据包的初始重传次数,(g′,r′,d′)表示状态(g,r,d)下采用动作a后转至的状态,可以定义
Figure BDA0002621880480000151
即满足条件的最优策略满足
Figure BDA0002621880480000152
其中,Qη(g,r,d,a)表示给定参数η下马尔可夫模型的贝尔曼方程,π* η(g,r,d,a)表示最优策略集。
由于AOI可以任意大,状态空间可能无限大。但实际上,如果AOI无限大,则视频数据包根本无法及时到达数据接收端进行解码。可以通过设置AOI的上限,并选择一个有限的rmax(最大重传次数),让AOI的上限达到无限大,用于受限状态空间的最优策略将收敛到原始问题的最优策略。
根据马尔可夫决策过程的策略迭代可知,给定η下,我们可以找到最优策略集
Figure BDA0002621880480000153
单个策略迭代的算法如下所示:
Figure BDA0002621880480000154
Vm+1(g,r,d)←min(Qm+1(g,r,d,a))
hm+1(g,r,d)←Vm+1(g,r,d)-Vm+1(gref,rref,dref)
其中,Qm+1(g,r,d,a)表示马尔可夫模型的贝尔曼方程,Vm+1(g,r,d)表示当前最小的贝尔曼方程式值,hm+1(g,r,d)表示给定常数g,r,d的贝尔曼方程式值的差值,Vm+1(gref,rref,dref)表示给定常数g,r,d的贝尔曼方程式值,m+1表示第m+1次迭代,ref表示常数。
参见图2,S110,将当前数据包对应的重传策略发送给数据发送端,以使数据发送端根据当前数据包对应的重传策略发送对应的数据包。
在得到当前数据包对应的重传策略后,直接将当前数据包对应的重传策略发送给数据发送端,进而数据发送端根据当前数据包对应的重传策略发送对应的数据包。
作为本发明实施例一种可选的实施方式,当前数据包对应的数据信息还可以包括:当前数据包所在当前组的标识;进而,在当前组包含的所有数据包传输完成后,合并当前组中所有数据包的信息,并对当前组中所有数据包进行解码播放,可以提高解码成功的概率。
本发明实施例提供的一种基于时效性的数据包调度方法,数据接收端对当前数据包进行校验,计算当前数据包的AOI和丢包率,然后利于基于当前数据包的状态、动作向量、状态转移矩阵,当前数据包的AOI,以及当前数据包的丢包率所构建马尔可夫模型,对当前数据包对应的重传策略进行预测,在预测当前数据包对应的重传策略时,不仅考虑了数据包的重传次数,还考虑了数据包的AOI和丢包率,能够增加数据接收端接收数据包的即时性,进而能够提高数据解码播放的实时性,使得视频能够清晰流畅的播放。
如图4所示,本发明实施例提供了另一种基于时效性的数据包调度方法,应用于数据发送端,该方法可以包括以下步骤:
S201,为待发送视频流数据确定数据发送的时隙。
本发明实施例中,数据发送端可以为待发送视频流数据确定需要传输该待发送视频流数据所使用的时隙,示例性的,可以使用序号1,2……等表示。
S202,将待发送视频流数据生成数据包,记录每一数据包的生成时隙,并为每一数据包初始化重传次数。
示例性的,可以将待发送视频流数据对应的一帧数据生成一个数据包,同时记录每一数据包的生成时隙,以及为每一数据包初始化重传次数,初始化的重传次数可以设置为0。
S203,为每一数据包生成冗余校验信息,并按照预设规则对数据包进行分组,得到多组数据。
本发明实施例中,可以采用生成循环冗余检验码的方式为每一数据包生成冗余校验信息,然后,对生成的数据包进行随机分组,或是将预设数量个数据包分为一组,本领域技术人员可以根据实际情况设置该预设数量。
S204,将当前组数据中当前数据包以及当前数据包对应的信息,发送给数据接收端,以使数据接收端根据当前数据包对应的信息中当前数据包的冗余校验信息对当前数据包进行校验,以及根据对当前数据包的校验结果、当前数据包的重传次数,当前数据包的信息年龄AOI以及当前数据包的丢包率,为当前数据包确定对应的重传策略。
其中,当前数据包对应的信息包括:当前数据包的重传次数,当前数据包的生成时隙和当前数据包的冗余校验信息。数据发送端可以只向数据接收端发送当前数据包,该当前数据包中携带有当前数据包对应的信息,也可以将当前数据包与当前数据包对应的信息分开发送。
S205,当接收到数据接收端发送的表示当前数据包校验失败的NACK信息时,将当前数据包的重传次数增加1。
在数据接收端对当前数据包进行校验,得到对应的校验结果表示校验失败时,数据接收端向数据发送端返回NACK信息,告知数据发送端当前数据包校验失败,表示当前数据包可能需要重传。数据发送端接收到数据接收端发送的表示当前数据包校验失败的NACK信息时,将当前数据包的重传次数增加1。
S206,接收数据接收端发送的当前数据包对应的重传策略,并根据重传策略,确定是否对当前数据包进行重传。
数据发送端接收数据接收端发送的当前数据包对应的重传策略,然后,根据重传策略,确定是否对当前数据包进行重传。
作为本发明实施例一种可选的实施方式,数据发送端接收数据接收端发送的当前数据包对应的重传策略,并根据重传策略,确定是否对当前数据包进行重传的步骤,可以包括:
当接收到数据接收端发送的当前数据包对应的NACK信息,以及当前数据包对应的重传策略时,根据重传策略对当前数据包进行重传或传输新的数据包。
或者,当接收到数据接收端发送的当前数据包对应的ACK信息,以及当前数据包对应的重传策略时,根据重传策略传输新的数据包或不传输数据包。
本发明实施例提供的一种基于时效性的数据包调度方法,数据发送端将当前数据包,以及包括当前数据包的重传次数,当前数据包的生成时隙和当前数据包的冗余校验信息的当前数据包信息发送给数据接收端,进而数据接收端对当前数据包进行校验,计算当前数据包的AOI和丢包率,然后利于基于当前数据包的状态、动作向量、状态转移矩阵,当前数据包的AOI,以及当前数据包的丢包率所构建马尔可夫模型,对当前数据包对应的重传策略进行预测,在预测当前数据包对应的重传策略时,不仅考虑了数据包的重传次数,还考虑了数据包的AOI和丢包率,能够增加数据接收端接收数据包的即时性,进而能够提高数据解码播放的实时性,使得视频能够清晰流畅的播放。
示例性的,本发明实施例中使用现有的HARQ以及本发明实施例的技术方案分别实现对数据包进行调度,得到的仿真图分别如图5至图7所示。其中,现有的HARQ为背景技术中所描述的现有技术,rmax表示最大重传次数,p0表示第一次传输当前数据包时的错误概率。可见,本发明实施例中,AoI和丢包率在相同条件下都比现有技术有了很大的提升。考虑到p0和rmax可能会对仿真结果有影响,分别改变p0和rmax来进行对比,当p0不变,rmax变化的时候,可以从图中观察到现有技术的AoI明显上升,这是因为rmax越大,则重传次数越大,所以AoI就会随之上升,而对于本发明实施例来说,策略调度算法本身就存在着对重传次数的限制,所以AoI有不明显的上升趋势。现有技术只设定了最大重传次数,而本发明实施例在最大重传次数的限制,需要根据不同数据包的重要程度以及AoI优化条件进一步选择。对于成功解码贡献不大的数据包如果发生多次传输错误,则无需等其重传次数超过最大重传次数,选择直接传输新的数据包,这样在保证不会使当前图像画面有过大损失的基础上,保证后续数据包的正常传输,使得有更加充足的新鲜数据包能在解码截至时间之前到达接收端进行解码,提高了整个传输系统解码的即时性。同时,可以观察到,当rmax不变,p0增大的时候,信息年龄和丢包率也相应地增加了。也就是说,当信道产生错误的概率较小的时候,信息年龄也会有相应的降低;而在限制的最大重传次数增加的时候,在现有技术中,重传次数会明显提升,而针对本发明实施例,信息年龄限制不会产生明显大的差异。综合以上的仿真图像分析,可以得出结论,本发明实施例的重传策略明显优于现有技术。
相应于上述图2所示的方法实施例,本发明实施例提供了一种基于时效性的数据包调度装置,应用于数据接收端,如图8所示,所述装置包括:
第一接收模块301,用于接收数据发送端所发送的当前数据包以及当前数据包对应的信息,当前数据包对应的信息包括:当前数据包的重传次数,当前数据包的生成时隙和当前数据包的冗余校验信息。
校验模块302,用于根据当前数据包的冗余校验信息对当前数据包进行校验,得到当前数据包对应的校验结果。
第一计算模块303,用于基于当前时隙与当前数据包的生成时隙,计算当前数据包的信息年龄AOI。
第一确定模块304,用于将当前数据包的AOI,当前数据包的重传次数,以及当前数据包对应的校验结果,确定为当前数据包的状态。
获取模块305,用于获取预设的动作向量,动作向量由重传策略构成;其中,重传策略包含:不传输数据包,传输新的数据包以及重传当前数据包。
第一构建模块306,用于基于当前数据包的重传次数,计算当前数据包的状态转移概率,构建状态转移矩阵。
第二计算模块307,用于根据预设的当前数据包的重要度以及当前数据包对应的校验结果,计算当前数据包的丢包率。
第二构建模块308,用于基于当前数据包的状态,动作向量,状态转移矩阵,当前数据包的AOI,以及当前数据包的丢包率,构建马尔可夫模型。
策略确定模块309,用于利用马尔可夫模型对当前数据包进行动作预测,得到当前数据包对应的重传策略。
第一发送模块310,用于将当前数据包对应的重传策略发送给数据发送端,以使数据发送端根据当前数据包对应的重传策略发送对应的数据包。
本发明实施例提供的一种基于时效性的数据包调度装置,数据接收端对当前数据包进行校验,计算当前数据包的AOI和丢包率,然后利于基于当前数据包的状态、动作向量、状态转移矩阵,当前数据包的AOI,以及当前数据包的丢包率所构建马尔可夫模型,对当前数据包对应的重传策略进行预测,在预测当前数据包对应的重传策略时,不仅考虑了数据包的重传次数,还考虑了数据包的AOI和丢包率,能够增加数据接收端接收数据包的即时性,进而能够提高数据解码播放的实时性,使得视频能够清晰流畅的播放。
可选地,第一计算模块303,具体用于:将当前时隙与当前数据包的生成时隙的差值,确定为当前数据包的AOI。
可选地,第一构建模块306,具体用于:利用如下表达式计算当前数据包的状态转移概率:
h(r)=p0λr
其中,h(r)表示当前数据包的状态转移概率,r表示当前数据包的重传次数,p0表示第一次传输当前数据包时的错误概率,λ表示根据视频传输信道确定的参数。
可选地,第二计算模块307,具体用于:利用如下表达式计算当前数据包的丢包率:
φ=1-(φ1d12d2+...φNdN)
其中,φ表示当前数据包的丢包率,φ1表示第一个数据包的重要度,φN表示当前数据包的重要度,d1表示第一个数据包对应的校验结果,dN表示当前数据包对应的校验结果。
相应于上述图4所示的方法实施例,本发明实施例提供了一种基于时效性的数据包调度装置,应用于数据发送端,如图9所示,所述装置包括:
第二确定模块401,用于为待发送视频流数据确定数据发送的时隙。
第一生成模块402,用于将待发送视频流数据生成数据包,记录每一数据包的生成时隙,并为每一数据包初始化重传次数。
第二生成模块403,用于为每一数据包生成冗余校验信息,并按照预设规则对数据包进行分组,得到多组数据。
第二发送模块404,用于将当前组数据中当前数据包以及当前数据包对应的信息,发送给数据接收端,以使数据接收端根据当前数据包对应的信息中当前数据包的冗余校验信息对当前数据包进行校验,以及根据对当前数据包的校验结果、当前数据包的重传次数,当前数据包的信息年龄AOI以及当前数据包的丢包率,为当前数据包确定对应的重传策略;其中,当前数据包对应的信息包括:当前数据包的重传次数,当前数据包的生成时隙和当前数据包的冗余校验信息。
重传次数变更模块405,用于当接收到数据接收端发送的表示当前数据包校验失败的NACK信息时,将当前数据包的重传次数增加1。
第二接收模块406,用于接收数据接收端发送的当前数据包对应的重传策略,并根据重传策略,确定是否对当前数据包进行重传。
本发明实施例提供的一种基于时效性的数据包调度装置,数据发送端将当前数据包,以及包括当前数据包的重传次数,当前数据包的生成时隙和当前数据包的冗余校验信息的当前数据包信息发送给数据接收端,进而数据接收端对当前数据包进行校验,计算当前数据包的AOI和丢包率,然后利于基于当前数据包的状态、动作向量、状态转移矩阵,当前数据包的AOI,以及当前数据包的丢包率所构建马尔可夫模型,对当前数据包对应的重传策略进行预测,在预测当前数据包对应的重传策略时,不仅考虑了数据包的重传次数,还考虑了数据包的AOI和丢包率,能够增加数据接收端接收数据包的即时性,进而能够提高数据解码播放的实时性,使得视频能够清晰流畅的播放。
可选地,第二接收模块406,具体用于:当接收到数据接收端发送的当前数据包对应的NACK信息,以及当前数据包对应的重传策略时,根据重传策略对当前数据包进行重传或传输新的数据包;
或者,当接收到数据接收端发送的当前数据包对应的ACK信息,以及当前数据包对应的重传策略时,根据重传策略传输新的数据包或不传输数据包。
本发明实施例还提供了一种数据接收端电子设备,如图10所示,包括处理器501、通信接口502、存储器503和通信总线504,其中,处理器501,通信接口502,存储器503通过通信总线504完成相互间的通信,存储器503,用于存放计算机程序;
处理器501,用于执行存储器503上所存放的程序时,实现如图2所示一种基于时效性的数据包调度方法的步骤,以达到相同的技术效果。
本发明实施例还提供了一种数据发送端电子设备,如图11所示,包括处理器601、通信接口602、存储器603和通信总线604,其中,处理器601,通信接口602,存储器603通过通信总线604完成相互间的通信,存储器603,用于存放计算机程序;
处理器601,用于执行存储器603上所存放的程序时,实现如图4所示一种基于时效性的数据包调度方法的步骤,以达到相同的技术效果。
上述电子设备提到的通信总线可以是PCI(Peripheral ComponentInterconnect,外设部件互连标准)总线或EISA(Extended Industry StandardArchitecture,扩展工业标准结构)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
通信接口用于上述电子设备与其他设备之间的通信。
存储器可以包括RAM(Random Access Memory,随机存取存储器),也可以包括NVM(Non-Volatile Memory,非易失性存储器),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
上述的处理器可以是通用处理器,包括CPU(Central Processing Unit,中央处理器)、NP(Network Processor,网络处理器)等;还可以是DSP(Digital Signal Processing,数字信号处理器)、ASIC(Application Specific Integrated Circuit,专用集成电路)、FPGA(Field-Programmable Gate Array,现场可编程门阵列)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
在本发明提供的又一实施例中,还提供了一种计算机可读存储介质,该计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述任一一种基于时效性的数据包调度方法的步骤,以达到相同的技术效果。
在本发明提供的又一实施例中,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述实施例中任一一种基于时效性的数据包调度方法的步骤,以达到相同的技术效果。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、DSL(Digital Subscriber Line,数字用户线))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD(Digital Versatile Disc,数字多功能光盘))、或者半导体介质(例如SSD(Solid StateDisk,固态硬盘))等。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置/电子设备实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本发明的较佳实施例,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。

Claims (9)

1.一种基于时效性的数据包调度方法,其特征在于,应用于数据接收端,所述方法包括:
接收数据发送端所发送的当前数据包以及当前数据包对应的信息,所述当前数据包对应的信息包括:当前数据包的重传次数,当前数据包的生成时隙和当前数据包的冗余校验信息;
根据当前数据包的冗余校验信息对当前数据包进行校验,得到当前数据包对应的校验结果;
基于当前时隙与所述当前数据包的生成时隙,计算当前数据包的信息年龄AOI;
将所述当前数据包的AOI,所述当前数据包的重传次数,以及所述当前数据包对应的校验结果,确定为所述当前数据包的状态;
获取预设的动作向量,所述动作向量由重传策略构成;其中,所述重传策略包含:不传输数据包,传输新的数据包以及重传所述当前数据包;
基于所述当前数据包的重传次数,计算当前数据包的状态转移概率,构建状态转移矩阵;
根据预设的当前数据包的重要度以及所述当前数据包对应的校验结果,计算当前数据包的丢包率,其中,所述计算当前数据包的丢包率利用如下表达式:
φ=1-(φ1d12d2+...φNdN)
其中,φ表示当前数据包的丢包率,φ1表示第一个数据包的重要度,φN表示当前数据包的重要度,d1表示第一个数据包对应的校验结果,dN表示当前数据包对应的校验结果;
基于所述当前数据包的状态,所述动作向量,所述状态转移矩阵,所述当前数据包的AOI,以及所述当前数据包的丢包率,构建马尔可夫模型;
利用所述马尔可夫模型对当前数据包进行动作预测,得到所述当前数据包对应的重传策略;
将所述当前数据包对应的重传策略发送给所述数据发送端,以使所述数据发送端根据所述当前数据包对应的重传策略发送对应的数据包。
2.根据权利要求1所述的方法,其特征在于,所述基于当前时隙与所述当前数据包的生成时隙,计算当前数据包的信息年龄AOI的步骤,包括:
将当前时隙与所述当前数据包的生成时隙的差值,确定为当前数据包的AOI。
3.根据权利要求1所述的方法,其特征在于,所述基于所述当前数据包的重传次数,计算当前数据包的状态转移概率的步骤,包括:
利用如下表达式计算当前数据包的状态转移概率:
h(r)=p0λr
其中,h(r)表示当前数据包的状态转移概率,r表示当前数据包的重传次数,p0表示第一次传输当前数据包时的错误概率,λ表示根据视频传输信道确定的参数。
4.一种基于时效性的数据包调度方法,其特征在于,应用于数据发送端,所述方法包括:
为待发送视频流数据确定数据发送的时隙;
将待发送视频流数据生成数据包,记录每一数据包的生成时隙,并为每一数据包初始化重传次数;
为每一数据包生成冗余校验信息,并按照预设规则对所述数据包进行分组,得到多组数据;
将当前组数据中当前数据包以及当前数据包对应的信息,发送给数据接收端,以使数据接收端根据所述当前数据包对应的信息中当前数据包的冗余校验信息对当前数据包进行校验,以及根据对当前数据包的校验结果、当前数据包的重传次数,当前数据包的信息年龄AOI以及当前数据包的丢包率,为所述当前数据包确定对应的重传策略;其中,所述当前数据包对应的信息包括:当前数据包的重传次数,当前数据包的生成时隙和当前数据包的冗余校验信息;
当接收到所述数据接收端发送的表示当前数据包校验失败的NACK信息时,将当前数据包的重传次数增加1;
接收所述数据接收端发送的当前数据包对应的重传策略,并根据所述重传策略,确定是否对所述当前数据包进行重传。
5.根据权利要求4所述的方法,其特征在于,所述接收所述数据接收端发送的当前数据包对应的重传策略,并根据所述重传策略,确定是否对所述当前数据包进行重传的步骤,包括:
当接收到所述数据接收端发送的所述当前数据包对应的NACK信息,以及所述当前数据包对应的重传策略时,根据所述重传策略对所述当前数据包进行重传或传输新的数据包;
或者,
当接收到所述数据接收端发送的所述当前数据包对应的ACK信息,以及所述当前数据包对应的重传策略时,根据所述重传策略传输新的数据包或不传输数据包。
6.一种基于时效性的数据包调度装置,其特征在于,应用于数据接收端,所述装置包括:
第一接收模块,用于接收数据发送端所发送的当前数据包以及当前数据包对应的信息,所述当前数据包对应的信息包括:当前数据包的重传次数,当前数据包的生成时隙和当前数据包的冗余校验信息;
校验模块,用于根据当前数据包的冗余校验信息对当前数据包进行校验,得到当前数据包对应的校验结果;
第一计算模块,用于基于当前时隙与所述当前数据包的生成时隙,计算当前数据包的信息年龄AOI;
第一确定模块,用于将所述当前数据包的AOI,所述当前数据包的重传次数,以及所述当前数据包对应的校验结果,确定为所述当前数据包的状态;
获取模块,用于获取预设的动作向量,所述动作向量由重传策略构成;其中,所述重传策略包含:不传输数据包,传输新的数据包以及重传所述当前数据包;
第一构建模块,用于基于所述当前数据包的重传次数,计算当前数据包的状态转移概率,构建状态转移矩阵;
第二计算模块,用于根据预设的当前数据包的重要度以及所述当前数据包对应的校验结果,计算当前数据包的丢包率,其中,所述计算当前数据包的丢包率利用如下表达式:
φ=1-(φ1d12d2+...φNdN)
其中,φ表示当前数据包的丢包率,φ1表示第一个数据包的重要度,φN表示当前数据包的重要度,d1表示第一个数据包对应的校验结果,dN表示当前数据包对应的校验结果;
第二构建模块,用于基于所述当前数据包的状态,所述动作向量,所述状态转移矩阵,所述当前数据包的AOI,以及所述当前数据包的丢包率,构建马尔可夫模型;
策略确定模块,用于利用所述马尔可夫模型对当前数据包进行动作预测,得到所述当前数据包对应的重传策略;
第一发送模块,用于将所述当前数据包对应的重传策略发送给所述数据发送端,以使所述数据发送端根据所述当前数据包对应的重传策略发送对应的数据包。
7.一种基于时效性的数据包调度装置,其特征在于,应用于数据发送端,所述装置包括:
第二确定模块,用于为待发送视频流数据确定数据发送的时隙;
第一生成模块,用于将待发送视频流数据生成数据包,记录每一数据包的生成时隙,并为每一数据包初始化重传次数;
第二生成模块,用于为每一数据包生成冗余校验信息,并按照预设规则对所述数据包进行分组,得到多组数据;
第二发送模块,用于将当前组数据中当前数据包以及当前数据包对应的信息,发送给数据接收端,以使数据接收端根据所述当前数据包对应的信息中当前数据包的冗余校验信息对当前数据包进行校验,以及根据对当前数据包的校验结果、当前数据包的重传次数,当前数据包的信息年龄AOI以及当前数据包的丢包率,为所述当前数据包确定对应的重传策略;其中,所述当前数据包对应的信息包括:当前数据包的重传次数,当前数据包的生成时隙和当前数据包的冗余校验信息;
重传次数变更模块,用于当接收到所述数据接收端发送的表示当前数据包校验失败的NACK信息时,将当前数据包的重传次数增加1;
第二接收模块,用于接收所述数据接收端发送的当前数据包对应的重传策略,并根据所述重传策略,确定是否对所述当前数据包进行重传。
8.一种数据接收端电子设备,其特征在于,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现权利要求1-3任一所述的方法步骤。
9.一种数据发送端电子设备,其特征在于,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现权利要求4-5任一所述的方法步骤。
CN202010785684.6A 2020-08-06 2020-08-06 一种基于时效性的数据包调度方法、装置及电子设备 Active CN111935550B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010785684.6A CN111935550B (zh) 2020-08-06 2020-08-06 一种基于时效性的数据包调度方法、装置及电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010785684.6A CN111935550B (zh) 2020-08-06 2020-08-06 一种基于时效性的数据包调度方法、装置及电子设备

Publications (2)

Publication Number Publication Date
CN111935550A CN111935550A (zh) 2020-11-13
CN111935550B true CN111935550B (zh) 2021-10-12

Family

ID=73306932

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010785684.6A Active CN111935550B (zh) 2020-08-06 2020-08-06 一种基于时效性的数据包调度方法、装置及电子设备

Country Status (1)

Country Link
CN (1) CN111935550B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112511276B (zh) * 2020-11-24 2021-11-30 广州技象科技有限公司 数据处理方法及装置
CN113015020A (zh) * 2021-03-01 2021-06-22 深圳市安赛通科技有限公司 一种网络传输协议快速纠错的算法
EP4192090A1 (en) 2021-12-02 2023-06-07 Airbus (S.A.S.) A method for operating one or more nodes in a communications network for the purpose of coordinating transmissions of different nodes in the network using data validity as decision metric
TWI812355B (zh) * 2022-07-18 2023-08-11 國立高雄師範大學 無線網路系統與其資料傳輸方法

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6931017B2 (en) * 2001-02-01 2005-08-16 Lucent Technologies Inc. Burst ratio: a measure of bursty loss on packet-based networks
CN102104468A (zh) * 2011-02-18 2011-06-22 中兴通讯股份有限公司 一种基于路由代理的媒体感知arq控制方法及系统
CN108024156B (zh) * 2017-12-14 2020-04-14 四川大学 一种基于隐马尔可夫模型的部分可靠视频传输方法

Also Published As

Publication number Publication date
CN111935550A (zh) 2020-11-13

Similar Documents

Publication Publication Date Title
CN111935550B (zh) 一种基于时效性的数据包调度方法、装置及电子设备
CN107276722B (zh) 一种基于udp的数据传输方法和系统
Wu et al. Enabling adaptive high-frame-rate video streaming in mobile cloud gaming applications
Badia et al. A Markov framework for error control techniques based on selective retransmission in video transmission over wireless channels
US7733913B1 (en) Striping data over transmission channels
CN1287567C (zh) 用于在分组信道上的多媒体通信的方法和设备
CN106067847B (zh) 一种语音数据传输方法及装置
CN111371534B (zh) 一种数据重传方法、装置、电子设备和存储介质
US20120151291A1 (en) Receiving apparatus and processing method for receiving apparatus
CN114040257B (zh) 一种自适应视频流传输播放方法、装置、设备及存储介质
CA3069594A1 (en) Media content-based adaptive method, device and system for fec coding and decoding of systematic code, and medium
CN115037416A (zh) 数据前向纠错处理方法、装置、电子设备和存储介质
CN114401253A (zh) 一种基于WebRTC的模拟网络中视频传输方法
Cheng et al. ABRF: Adaptive BitRate-FEC Joint Control for Real-Time Video Streaming
JP4217534B2 (ja) パケット送信装置、パケット受信装置、方法及びプログラム
US10554428B2 (en) Device and method for data transmission
JP4088956B2 (ja) 情報処理装置
CN115086667B (zh) 一种基于自适应学习的实时视频传输方法
Chilamkurti et al. Concurrent multipath transmission with forward error correction mechanism to overcome burst packet losses for delay-sensitive video streaming in wireless home networks
US7372820B1 (en) System and method for striping delay-sensitive data over multiple bursty channels
Kim et al. UDP-based extremely low latency streaming
Huang et al. A hybrid FEC-ARQ protocol for low-delay lossless sequential data streaming
US11489623B2 (en) Error correction in network packets
De Vleeschouwer et al. The virtue of patience in low-complexity scheduling of packetized media with feedback
Hou et al. RL-based Freshness-aware Frame Mode Selection for Real-time Wireless Video Transmission

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