CN115665442A - 一种基于喷泉码驱动的流媒体传输优化方法 - Google Patents
一种基于喷泉码驱动的流媒体传输优化方法 Download PDFInfo
- Publication number
- CN115665442A CN115665442A CN202211307393.1A CN202211307393A CN115665442A CN 115665442 A CN115665442 A CN 115665442A CN 202211307393 A CN202211307393 A CN 202211307393A CN 115665442 A CN115665442 A CN 115665442A
- Authority
- CN
- China
- Prior art keywords
- sending
- transmission
- packets
- packet
- video
- 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
- 230000005540 biological transmission Effects 0.000 title claims abstract description 64
- 238000000034 method Methods 0.000 title claims abstract description 23
- 238000005457 optimization Methods 0.000 title claims abstract description 10
- 230000000153 supplemental effect Effects 0.000 claims description 8
- 238000004364 calculation method Methods 0.000 claims description 6
- 230000008569 process Effects 0.000 claims description 6
- 239000013589 supplement Substances 0.000 claims description 4
- 101150012763 endA gene Proteins 0.000 claims description 3
- 208000001613 Gambling Diseases 0.000 abstract description 7
- 239000002699 waste material Substances 0.000 abstract description 4
- 230000008859 change Effects 0.000 abstract description 2
- 238000004891 communication Methods 0.000 abstract description 2
- 230000009471 action Effects 0.000 description 12
- 239000012634 fragment Substances 0.000 description 8
- 230000003044 adaptive effect Effects 0.000 description 4
- 230000008901 benefit Effects 0.000 description 4
- 238000011156 evaluation Methods 0.000 description 2
- 238000002474 experimental method Methods 0.000 description 2
- 238000013178 mathematical model Methods 0.000 description 2
- 239000013598 vector Substances 0.000 description 2
- 241000287196 Asthenes Species 0.000 description 1
- 238000012935 Averaging Methods 0.000 description 1
- 241001508791 Medicago sativa subsp. x varia Species 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000008030 elimination Effects 0.000 description 1
- 238000003379 elimination reaction Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 239000000047 product Substances 0.000 description 1
- 230000000135 prohibitive effect Effects 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 101150049349 setA gene Proteins 0.000 description 1
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明属于无线通信技术领域,公开了一种基于喷泉码驱动的流媒体传输优化方法。本发明采用了喷泉码实现分组传输,由于喷泉码无需反馈、重发,所以能够显著降低完成时间。本发明还采用了基于多臂赌博机模型的‘暂停‑侦听’式分组传输方法,通过对发送端是否接收到接收端的停止发送信息来判断是否需要补发分组,同时通过对补发分组的次数、发送端总共发送的分组数与接收端收到的分组数之间的差值进行评价、学习来动态的调整下一视频片段一次性传输的分组数,有效的减少了发送分组的浪费,并且能够很好的根据网络环境的改变选择最佳的发送分组数。
Description
技术领域
本发明属于无线通信技术领域,具体涉及一种基于喷泉码驱动的流媒体传输优化方法。
背景技术
自适应流媒体(ABS)是目前最受欢迎的互联网应用之一,其业务流量占网络的80%以上。在现今的ABS系统中,比如HTTP直播(HLS)和HTTP动态自适应流媒体(DASH),一个视频被分成多个可播放的视频片段文件,每个文件被编码成多个不同比特率的版本,然后存储在服务器上。客户端根据自适应比特率(ABR)算法,来请求不同比特率的片段。
随着下一代无线系统向空天地一体化(space-air-ground-integrated,SAGI)规模发展,SAGI网络中ABS的需求越来越重要。然而,在SAGI网络中,链路往往是有损的,传播延迟长。这对ABS构成了挑战,因为反馈和重传变得很昂贵。喷泉码传输是解决这一难题的有效方法。在喷泉码传输中,使用某种形式的无速率码,如Raptor和随机线性网络码(RLNC),它们有一个共同的特征,即可以从源文件中生成无限数量的编码数据包。服务器不断的发送编码数据包,接收端只要收集到足够数量的数据包,就可以恢复文件,无论收集到的是哪些数据包。接收方只在完成后进行确认,服务器在接收到停止消息时停止发送。但是,喷泉码虽然支持无限的背靠背发送,在实践中存在一个问题,即会出现接收方已经完成恢复,但由于链路的传播时延较长,服务器仍在发送,直到停止消息到达。如果链路带宽较高,这将导致大量的无效分组发送,造成昂贵的带宽(例如卫星链路的租赁成本)浪费,并可能对与其他业务共享的链路造成拥塞。具体来说,被浪费的数据包数量近似等于以数据包为单位的链路带宽时延积(Bandwidth-Delay Product,BDP)。
发明内容
本发明采用一种基于喷泉码驱动的流媒体传输优化方法,该流媒体传输优化方法可以避免大量分组的浪费,同时保持喷泉码传输的关键优点,即无反馈/重传和较低的完成时间。
本发明提供的技术方案如下:
一种基于喷泉码驱动的流媒体传输优化方法,所述流媒体传输为接收端向发送端发送视频请求,所述发送端将所述视频分为L个视频片段后依次传输给所述接收端,所述发送端将第/个视频片段传输给所述接收端的过程,l=0,...,L-1,包括以下步骤:
进一步的,步骤S1中,所述确定裕量因子η具体为:根据历史数据采用置信区间上界(UCB)算法从集合选择一个值作为裕量因子η,所述历史数据包括奖励值Rl和集合中各个值作为裕量因子被选择的次数,所述奖励值Rl的计算公式如下:
其中,Nr为前一个视频片段传输完成时接收端接受到的编码分组数,Nsent为发送端收到前一个视频片段的停止消息时,传输的该视频片段的编码分组总数,W为前一个视频片段传输完成时发送端暂停的次数。
进一步的,步骤S2中,预设时间Tw为1.05*RTT。
与现有技术相比,本发明具有以下技术效果:
1)该方法具有接近传统喷泉码方案的传输完成时间,同时大幅降低传统喷泉码在长传播时延链路中发送的无效分组数目,避免链路带宽的浪费。
2)该方法以在线学习方式实现,不需要预先建立数学模型来分析完成传输目标所需的编码分组数量,可适用于任何应用无速率码的ABS系统,并且能够很好地适应链路条件动态改变的场景。
附图说明
图1为本发明实施例中采用的ABS系统模型
图2为本发明实施例提供的流媒体传输优化方法过程示意图;
图3为1%丢包率条件下各传输方案的Nsent和Tcomp的对比图;
图4为动态丢包率条件下各传输方案的Nsent和Tcomp对比图。
具体实施方式
下面将结合附图对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本申请一部分实施例,并不是全部的实施例。基于本申请实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本发明提供了一种基于喷泉码驱动的流媒体传输优化方法,所述流媒体传输为接收端向发送端发送视频请求,所述发送端将所述视频分为L个视频片段后依次传输给所述接收端,所述发送端将第l个视频片段传输给所述接收端的过程,l=0,...,L-1,包括以下步骤:
S2.所述发送端发送完所述数目编码分组后暂停,设置暂停时间Tw,Tw大于往返时间RTT,优选为1.05*RTT,暂停时间用于侦听所述接收端发送的停止信息,若暂停结束前接收到所述停止信息,则所述视频片段的传输完成,若未接收到所述停止信息,则转入步骤S3;其中,停止信息为停止发送视频片段的编码分组的信息,具体的,是指接收端接受到编码分组后恢复成视频片段,然后向发送端发送出的停止信息;
确定裕量因子η具体为:
其中,Nr为前一个视频片段传输完成时接收端接受到的编码分组数,Nsent为发送端收到前一个视频片段的停止消息时,传输的该视频片段的编码分组总数,W为前一个视频片段传输完成时发送端暂停的次数。
在本发明的一个实施例中,考虑以下ABS系统模型。
如图1所示,假设接收端(客户端)向远程服务器(发送端)请求一段视频。在服务器上,该视频被分成L个片段,记为每段编码成N个版本,比特率为对应不同的分辨率。表示分辨率为Qn的片段大小为字节。ABS客户端依次请求其中bl∈{1,...,N}是对应片段所请求分辨率的索引,由客户端具体的ABR算法决定。
考虑服务器和客户端之间链路具有较长的传播时延Tp和随机丢包率pe。在向客户端发送所请求的视频片段文件时,采用喷泉码传输:在服务器上,被请求的每个文件都被视为大小为K字节的若干分组。即假设对视频片段请求的文件为则对应个源分组数,分别表示为然后对源分组应用无速率码生成编码报文。以RLNC为例,索引为j的编码分组可以表示为
其中每个分组可看作个取自有限域的元素,q为有限域的大小,gi,j则是从中随机选择的编码系数。例如,如果q=2s,那么K字节分组可用K个有限域元素表示。向量称为编码分组的编码向量(EV)。生成的编码分组通过长时延有损链路发送。当译码器收集到足够多的编码分组,使得其中存在个线性无关分组,译码器可成功译码并重构文件(RLNC可使用高斯消元译码算法)。此时,客户端向服务器发送停止消息,然后系统进入下一个片段的请求和传输。
对于喷泉码传输,在停止消息到达之前传输的总分组数记为Nsent,片段的完成时间记为Tcomp。这是两个关键的性能指标。Tcomp被定义为服务器接收到片段请求至服务器接收到停止消息之间消逝的时间。
在传统的喷泉码传输中,服务器会一直发送编码分组,直到停止消息到达,因此它本质上是以大量Nsent为代价实现最小化Tcomp。在本发明中,我们考虑对Nsent进行优化,以实现最小化Nsent并保持较短的Tcomp。
本发明实施例提出一种基于喷泉码驱动的流媒体传输优化方法,在该方案中,发送端(服务器)首先发送最多个编码分组,然后暂停Tw时间以侦听停止消息。这里的Tw比链路的RTT稍长,使得客户端有足够的时间收集所有已传输的编码分组,并且如果能够恢复文件,有足够时间发送停止消息并在暂停定时器到期之前到达服务器端。在服务器端,如果停止消息在暂停过期之前到达,则表示片段传输完成,系统将开始下一个片段的请求和传输;如果停止消息在暂停到期时没有到达,服务器就认为之前传输的编码分组不够,进而将补充发送个分组,然后再次暂停Tw并侦听。重复上述过程,直到接收到停止消息为止。该过程的例子如图2所示,其中发生了一次补充发送,片段传输在第二次暂停到期前完成。
设W≥1为视频片段完成传输所“暂停-侦听”的次数。Nsent近似等于:
这里取近似值是因为停止消息可能在补充发送完成之前到达。设TD为每个分组的传输时间,传输时间与服务器的传输速率有关。Tcomp约为
Tcomp≈NsentTD+WTw
显然,η的选择是关键,它不仅决定了Nsent,还影响了W,从而影响了Tcomp。注意,较大的η则回退至传统的喷泉方案。
在本发明的一个实施例中,将η的选择建模为K臂赌博机问题。设η选自集合η1<η2<…<ηk,δ=minj>i(ηj-ηi)为补充发送的比例。此处,假设和都为整数。赌博机问题的基本思想是采取“探索-利用”权衡的方式。在“利用”中,采取当前价值最高的动作,而在“探索”中,选取一些其他的动作。动作价值用于衡量动作的“质量”,在行动中逐步更新(即学习)。在ABS系统中,动作对应各视频片段选取恰当的η,目标是使平均Nsent最小,同时尽可能避免额外的补充发送。为此,定义以下奖励
其中Nr为客户端恢复完成视频片段l时收到的分组数,可以在停止消息中携带到服务器端。这个函数会用-1来惩罚补充发送;在没有补充发送的情况下,则发送的数据包越少,给予的奖励越大。
在本发明的一个实施例中,基于通用的赌博机算法,设计了喷泉码ABS系统服务器上的完整程序(即算法1)来跨段进行学习。在“探索-利用”权衡中采用了基于置信区间上界(upper-confidence-bound,UCB)的动作选择策略[11],即视频片段l根据以下公式选择动作
其中Nl(a)为动作ηa在此前视频片段中已被选取过的次数。注意,当Nl(a)=0时,则a就被认为是满足最大化条件的动作。与另一种常用的ε-greedy策略相比,我们的实验表明,当链接条件非平稳时,UCB的适应性更好。在算法1中,Nsbp是一个计数器,表示两次暂停之间发送的分组数。动作价值Q(a),a=1,...,k的更新发生在每个视频片段的传输完成后。这里以恒定的学习率a跟踪可能的非平稳链路条件。
需要指出的是,赌博机算法本身不需要明确的RTT信息。这是基于学习式建模的一个主要好处。但是,在实践中,设置暂停计时器确实需要用到RTT。所设计的系统可以通过在客户端发送stop消息时携带时间戳来估计RTT。
本发明基于用户数据报协议(user datagram protocol,UDP)实现了一个客户端和服务器原型,其中ABS视频片段由服务器上的m3u8文件指定。客户端通过请求这个文件发起播放请求,并根据这个文件发出对各视频片段的连续请求。对于每个视频片段,服务器使用一个称为带码的RLNC的稀疏变体作为喷泉码传输的编码方案。带的宽度为64,有限域取服务器通过UDP套接字以恒定的速率发送编码分组。请注意,在现实场景中,发送速率可能由流量(拥塞)控制算法确定。
实验通过将服务器和客户端部署在两个Ubuntu 20.04LTS节点上进行评估,其中节点之间的连接条件由Linux的tc工具模拟。单向传播时延设置为250ms。服务器发送速率为25Mbps。该设置模拟在SAGI网络中扮演核心角色的地球同步卫星链路。最大传输单元为1500字节,因此每个分组的传输时间为TD=1500×8/25/106=0.00048s,其他参数设置为a=0.1,δ=0.01,Tw=1.05·RTT,c=1。
首先在一个丢包率恒定为1%的链路上进行评估。本发明选择了传统的喷泉码传输、所需的最小线性无关分组数量的多次请求(简称多次请求)作为参考方案。为简单起见,计算中的每个段都由相同数量的组成,bl=236个数据包,大小K=1280字节,这相当于一个约5秒的360p视频段。图3所示为采用各方案进行600个视频片段的传输所得出的Nsent和Tcomp的滑动平均值,滑动窗口为20。在这个具体场景中,由于a)每个视频片段的分组数量小且相同,b)链路条件已知且是平稳的,c)无速率码的性能与RLNC大致相同,因此将Lucani等人在D.E.Lucani,M.Stojanovic,and M.Medard,“Random linear network coding fortime division duplexing:When to stop talking and start listening,”in IEEEINFOCOM,pp.1800-1808,2009一文中提出的方案也纳入参考,以下简称Lucani et al.方案。该方案基于RLNC译码概率的数学模型,在已知数据包数目、链路丢包率条件下可计算出以RLNC方式实现喷泉码时的最佳请求数目。其中离线计算对应分组的最佳请求数目的复杂度是可接受的。但是,此处强调,如果视频片段较大且大小不同,Lucani et al.方案的计算复杂度将难以承受。例如,当时,在MAC mini 2018上面利用Matlab 2020a计算耗时接近12小时。
传统喷泉码方案的缺点在图3中有很清楚的显现。传统喷泉码方案在实现最小的Tcomp的同时,发送了超过所需分组数5倍的分组,浪费了大量的资源。这表明,传统的喷泉码传输不适合在具有长传播时延的链路上传输相对较小的文件。另一方面,正如预期的那样,多次请求发送了最少数量的分组,但需要花费很长的时间来完成,因为完成一个片段可能需要多次请求。使用Lucani et al.方案的计算表明,在评估的场景中应该发送245个数据包。从图3可以看出,它确实可以一次完成(即不需要补充)片段传输,并且达到最小的Tcomp。本文提出的K臂赌博机方案,以略高的Tcomp代价,使Nsent值非常接近于最小值。注意,在传输开始时,基于UCB的探索至少会将所有可用的动作尝试一次,因此在这段时间内会发送较多的分组。
接下来,评估方案在前300个片段丢包率为2%,后300个片段丢包率跳转到4%的链路条件下的表现。在这种情况下,由于丢包率是变化的,Lucani et al.方案不再适用。图4显示了其他三种方案的Nsent和Tcomp的滑动平均值,滑动窗口仍然是20。同样,传统的喷泉通过非常大的Nsent实现最小的Tcomp,而多次请求通过更高的Tcomp实现最小的Nsent。从图中可以看出,我们所提出的方案很好地平衡了传统的喷泉码传输和多次请求的优缺点。当链路条件稳定时,该方案只比多次请求多发送几个分组,而完成时间非常接近传统的喷泉码传输。在第300段时,当pe从2%变化到4%时,Tcomp会急剧上升,这是因为之前学习的策略不再适合。不过,基于K臂赌博机的方案能够在几个片段后适应变化,显示出在线学习方法的优势。
Claims (3)
1.一种基于喷泉码驱动的流媒体传输优化方法,所述流媒体传输为接收端向发送端发送视频请求,所述发送端将所述视频分为L个视频片段后依次传输给所述接收端,其特征在于,所述发送端将第l个视频片段传输给所述接收端的过程,l=0,...,L-1,包括以下步骤:
S2.所述发送端发送完所述数目编码分组后暂停,设置暂停时间Tw以侦听所述接收端发送的停止信息,若暂停结束前接收到所述停止信息,则所述视频片段的传输完成,若未接收到所述停止信息,则转入步骤S3;其中,设置暂停时间Tw大于往返时间RTT;所述停止信息为停止发送视频片段的编码分组的信息;
3.根据权利要求1所述的流媒体传输优化方法,其特征在于,步骤S2中,预设时间Tw为1.05*RTT。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211307393.1A CN115665442A (zh) | 2022-10-24 | 2022-10-24 | 一种基于喷泉码驱动的流媒体传输优化方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211307393.1A CN115665442A (zh) | 2022-10-24 | 2022-10-24 | 一种基于喷泉码驱动的流媒体传输优化方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115665442A true CN115665442A (zh) | 2023-01-31 |
Family
ID=84990610
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211307393.1A Pending CN115665442A (zh) | 2022-10-24 | 2022-10-24 | 一种基于喷泉码驱动的流媒体传输优化方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115665442A (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106100804A (zh) * | 2016-05-23 | 2016-11-09 | 南京航空航天大学 | 一种基于选择重传arq的数字喷泉码传输方法 |
US20160381596A1 (en) * | 2015-06-25 | 2016-12-29 | The Board Of Trustees Of The University Of Alabama | Intelligent multi-beam medium access control in ku-band for mission-oriented mobile mesh networks |
CN114859911A (zh) * | 2022-04-28 | 2022-08-05 | 云南红岭云科技股份有限公司 | 一种基于drl的四足机器人路径规划方法 |
-
2022
- 2022-10-24 CN CN202211307393.1A patent/CN115665442A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160381596A1 (en) * | 2015-06-25 | 2016-12-29 | The Board Of Trustees Of The University Of Alabama | Intelligent multi-beam medium access control in ku-band for mission-oriented mobile mesh networks |
CN106100804A (zh) * | 2016-05-23 | 2016-11-09 | 南京航空航天大学 | 一种基于选择重传arq的数字喷泉码传输方法 |
CN114859911A (zh) * | 2022-04-28 | 2022-08-05 | 云南红岭云科技股份有限公司 | 一种基于drl的四足机器人路径规划方法 |
Non-Patent Citations (1)
Title |
---|
任加勒: "数字喷泉码在流媒体传输中的研究与应用", 优秀硕士学位论文, 27 May 2015 (2015-05-27) * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9258084B2 (en) | Method and implementation for network coefficents selection | |
Iannucci et al. | No symbol left behind: A link-layer protocol for rateless codes | |
WO2012174763A1 (zh) | 一种基于tcp协议的自适应网络控制传输方法和系统 | |
CN111314022B (zh) | 一种基于强化学习和喷泉码的屏幕更新传输方法 | |
CN105450357A (zh) | 编码参数的调整、反馈信息的处理方法及装置 | |
US8677220B2 (en) | Error control on-demand | |
CN115037416A (zh) | 数据前向纠错处理方法、装置、电子设备和存储介质 | |
KR102002939B1 (ko) | 주문형 파일 복구 방법 및 시스템 | |
CN111385055B (zh) | 一种数据传输方法和装置 | |
CN113612580B (zh) | 基于喷泉码编码策略和冗余自适应的屏幕更新传输方法 | |
US7168022B2 (en) | Transmission control method and system | |
Ali et al. | Bandwidth efficient adaptive forward error correction mechanism with feedback channel | |
CN104115497A (zh) | 图像传输设备、图像传输方法和程序 | |
CN115665442A (zh) | 一种基于喷泉码驱动的流媒体传输优化方法 | |
CN115378548A (zh) | 一种面向无连接的二元叠加确定线性网络编码传输方法 | |
US10135576B2 (en) | Rateless encoding | |
US20180192088A1 (en) | Transmitting/receiving audio and/or video data over a wireless network | |
JP2007074413A (ja) | コンテンツ配信装置およびコンテンツ受信装置、ならびにコンテンツ配信システム、コンピュータプログラム | |
CN109005011B (zh) | 一种用于水声网络的数据传输方法、系统及可读存储介质 | |
CN113301387B (zh) | 数据编解码方法、相关设备及系统 | |
Li et al. | Fountain coded streaming for SAGIN with learning-based pause-and-listen | |
Emara et al. | Ivory: Learning network adaptive streaming codes | |
CN112165655A (zh) | 基于视联网的数据传输方法、装置、设备及介质 | |
Oh et al. | Mesh-pull-based p2p video streaming system using fountain codes | |
Matthew et al. | The use and performance of LT codes for multicast with relaying |
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 |