CN115765954A - 一种弱网环境超高码率流媒体传输优化方法 - Google Patents
一种弱网环境超高码率流媒体传输优化方法 Download PDFInfo
- Publication number
- CN115765954A CN115765954A CN202211450989.7A CN202211450989A CN115765954A CN 115765954 A CN115765954 A CN 115765954A CN 202211450989 A CN202211450989 A CN 202211450989A CN 115765954 A CN115765954 A CN 115765954A
- Authority
- CN
- China
- Prior art keywords
- rate
- transmission
- network
- bandwidth
- nack
- 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
Images
Classifications
-
- 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
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种弱网环境超高码率流媒体传输优化方法,采用高实时性NACK传输方案、高可靠性流量控制模型、基于速率的可用带宽探索模型以及采用谷歌拥塞控制方法;将NACK放置于FEC‑QOS传输层之外作为上层应用,并且将FEC‑QOS传输层看做是普通的用户数据报协议UDP传输,采用信令通道与媒体通道分离,使媒体通道的延迟和抖动不对信令通道产生影响。本发明在程序上实现更加简洁,无需在媒体通道上新增包类型来区分哪个包是NACK请求包,媒体包上增加字节也能够直接转化为带宽的增长;能够快速降低速率以适配当前的网络情况,让发送的带宽和网络瓶颈链路的接受能力保持一致。
Description
技术领域
本发明属于信息处理技术领域,特别是涉及一种弱网环境超高码率流媒体传输优化方法。
背景技术
随着半导体集成技术的发展,智能移动设备已经全面普及,进入了移动互联网时代。在移动互联网时代中,大量的网络传输都发生在无线网络环境中,在方便用户使用的同时也带来了一些问题。例如:宽带抖动、传输延迟、数据丢失与错误、异构性。这些因素极大的影响了用户的使用体验。与其他数据传输量较少的应用相比,流媒体传输应用对这三个因素的要求更高。如果说宽带与传输限制还能通过低码率来勉强满足用户的观看需求,那极易丢包以及异构化的环境对于流媒体传输应用的影响则是致命的。
从应用的角度来看,用户对服务的需求和网络基础设施永远是一对不可调和的矛盾。以流媒体传输为例,永远无法保证网络的全时稳定,弱网环境长期存在,特别在很多关乎到生活、生产乃至生命的关键时刻,通信网络往往受到极大的物理条件的限制。如海事作业、应急救灾、高并发场景等。因此,我们更加需要探索新理论新方法来有效的分析、精准的建模、准确的预判,以期实现弱网极限环境下(如小于50kbps的极低带宽,极不稳定网络抖动以及极大延时等)的高质量流媒体通信。因此,为了保证流媒体信道传输的安全、高质量,发展出了很多保护措施。
现有的技术代表,如码率自适应,是服务端和推流端协作控制码率以自动适应网络环境化的技术。码率自适应的目的虽说也是为了对抗弱网环境,在网络好的情况下,适当提高码率,提供语音视频的质量和降低延迟;在网络差的情况下,适当降低码率,保障语音视频通话的可用性和流畅性,牺牲音画质量。由此可见,以牺牲音画质量为条件的传输方案以及相关技术并不能满足弱网环境高码率的流媒体传输。
发明内容
本发明提供了一种弱网环境超高码率流媒体传输优化方法,解决了以上问题。
为解决上述技术问题,本发明是通过以下技术方案实现的:
本发明的一种弱网环境超高码率流媒体传输优化方法,包括采用高实时性NACK传输方案、高可靠性流量控制模型、基于速率的可用带宽探索模型以及采用谷歌拥塞控制方法GCC;
所述高实时性NACK传输方案具体是:将NACK放置于FEC-QOS传输层之外作为上层应用,并且将FEC-QOS传输层看做是普通的用户数据报协议UDP传输,二者并无紧密结合,采用信令通道与媒体通道分离,使媒体通道的延迟和抖动不对信令通道产生影响;所述传输层之外指的是TCP/IP协议中的传输层之外;所述上层应用指的是位于传输层以上的、以传输层为基础实现的协议类型的应用层;
所述高可靠性流量控制模型是以帧为粒度控制采集间隔,采集一段时间内I帧、P帧、B帧出现的频率次数,限制这段时间I帧的流通,进而控制流量;采集方式具体使用双端采集,发端SR为主,收端RR为辅,两者结合快速发现网络拥堵状况,控制流量;
所述基于速率的可用带宽探索模型是在宽带没有用完时,通过当前速率和带宽值预测剩余可用速率,不断向上探寻,以确定合适的速率,当网络拥塞或抖动时,快速降低速率以适配当前的网络情况,让发送的带宽和网络瓶颈链路的接受能力保持一致,实现带降速快速收敛;
所述采用谷歌拥塞控制方法GCC是基于丢包和延迟估算带宽占用和是否拥塞,发端SR和收端RR通过二者持续的交互将整个网络的丢包与延迟清晰地呈现给系统,从而调整流媒体的发送速率;发端SR方采用卡尔曼滤波评估和调整速率;收端RR方采用线性回归的最小二乘法。
本发明相对于现有技术包括有以下有益效果:
(1)本技术方案将NACK放置在原FEC-QOS传输层之外作为上层应用层,NCAK将FEC-QOS看做普通的UDP传输,二者并无紧密结合,其优势是可以与成熟的NACK方案无缝衔接;由于任何NACK方案都必将引入延时抖动,因为接收端在发起重新请求后,需要等待发送端重新发出的数据,在“重传等待时间”内不对外输出数据;而QOS阶段里为解决UDP传输乱序包的问题也引入了一个“丢包等待时间”,当遇到包序号不连续时,将等待这一时间,若仍未收到所需的包则认定丢包,不再等待;若将两个时间合二为一,可以尽量的降低系统时延和抖动;通过对信令通道与媒体通道的分离,NACK请求对于时间特别敏感,希望是越早越快通知对方越好,在信令通道上只进行裸UDP收放,不加入FEC和QOS,避免出现NACK请求包丢失后也发起NACK重传请求的情况,具有更好的兼容性,对于不支持NACK的节点,只需忽略信令通道的内容即可与NACK节点互通,在程序上实现更加简洁,无需在媒体通道上新增包类型来区分哪个包是NACK请求包,媒体包上增加字节也能够直接转化为带宽的增长;
(2)本技术方案的高可靠性流量控制模型是以帧粒度控制采集间隔提供快速发现网络拥塞的方法;以帧粒度控制采集间隔的方式,如果希望延迟的是几十毫秒,那网络波动时,采集周期是一百毫秒,等到一百毫秒才知道网络波动再去做处理,意味着网络一波动就卡顿,这样采集的精度就要求一定要足够细;但是采集精度足够细带来的另一个问题是如何将数据做准确,这是一个非常矛盾的点,急需要很小的采集间隔,有需要将数据做准,甚至能够反映网络情况;以前系统会把采集间隔放的稍微大一点的原因是可以较为准确的反应网络状况,解决这个问题的方式是帧粒度,帧是有逻辑有状态的,通过梳理清楚帧的逻辑和状态并且建模,可有效的控制网络流量;另外,延迟性的存在要求快速发现网络拥塞状况;两种采集方法一种是在发端采集,一种在收端采集,收端采集有一定时间间隔才能往上报,这样会导致判断的时间偏晚,这样和需要的尽可能实时判断和低延迟又是矛盾的,所以建议数据采集是发端为主,收端为辅,因为发端的采集和计算过程可以在任何一个中间态进行,发端采集数据不准的部分,用收端来补充;
(3)本技术方案基于速率的可用带宽探索模型,该模型的本质是不断寻找可用带宽的过程,它的实现过程是带宽没有用完的时候,通过不断上探的方法,找到合适的速率,当网络拥塞或者抖动的时候,快速降低速率以适配当前的网络情况,让发送的带宽和网络瓶颈链路的接受能力保持一致;理由是接收能力是速率,发送带宽也是速率,接收速率来决定降速到多少,可以实现降速的快速收敛,且带宽的探测本质是预测速率,也属于速率模型;
(4)本技术方案采用谷歌拥塞控制方法GCC,快速统计数据包的延迟和丢包率;GCC算法的核心是发送端SR与接收端RR通过二者持续的交互将整个网络的丢包与延迟清晰地呈现给系统;在汇总这些数据之后,得出一个网络质量评估的标准。随后客户端就要通过该网络评估标准来决定应该使用多大的带宽与服务器和其他的客户端进行数据交互;例如,将流媒体传输建立在500kb的网络之下,客户端首先会传输400kb,服务器反馈丢包率很低并且延迟也在可接受范围之内,此时客户端便知道该网络环境尚可,可以持续向上提升比特率;当比特率提升至所需带宽达到450kb时,客户端评估网络仍然能够接受;当比特率提升至所需带宽达到500kb时,服务端侦测到1%的丢包但延迟却没有太大变化,流媒体传输还没有超过带宽的限制,此时服务端将该信息反馈给客户端,如果客户端的评估算法足够精准,那么客户端就不会再继续提升比特率,从而控制丢包率与延迟在合理区间内;但如果评估算法不够精确,那么客户端可能会继续提升所需带宽至510kb、520kb,这会进一步提升丢包与延迟,此时网络环境便会呈现非常糟糕的状态。客户端应该做的是快速降低比特率,使得网关能够很快处理完上一次积压的数据,整个传输在经历一个小范围抖动之后恢复正常;如果在播放器端添加缓冲,那么该抖动可被抹平并达到平稳流畅的播放状态。
当然,实施本发明的任一产品并不一定需要同时达到以上所述的所有优点。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明一种弱网环境超高码率流媒体传输优化方法的高实时性NACK传输方案丢包分析原理图;
图2为本发明一种弱网环境超高码率流媒体传输优化方法的高实时性NACK传输方案的实现流程图;
图3为本发明一种弱网环境超高码率流媒体传输优化方法的高实时性的谷歌拥塞控制方法运行过程原理图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
本发明一种弱网环境超高码率流媒体传输优化方法,包括采用高实时性NACK传输方案、高可靠性流量控制模型、基于速率的可用带宽探索模型以及采用谷歌拥塞控制方法GCC;
高实时性NACK传输方案具体是:将NACK放置于FEC-QOS传输层之外作为上层应用,并且将FEC-QOS传输层看做是普通的用户数据报协议UDP传输,二者并无紧密结合,采用信令通道与媒体通道分离,使媒体通道的延迟和抖动不对信令通道产生影响;所述传输层之外指的是TCP/IP协议中的传输层之外;所述上层应用指的是位于传输层以上的、以传输层为基础实现的协议类型的应用层;
高可靠性流量控制模型是以帧为粒度控制采集间隔,采集一段时间内I帧、P帧、B帧出现的频率次数,限制这段时间I帧的流通,进而控制流量;采集方式具体使用双端采集,发端SR为主,收端RR为辅,两者结合快速发现网络拥堵状况,控制流量;
基于速率的可用带宽探索模型是在宽带没有用完时,通过当前速率和带宽值预测剩余可用速率,不断向上探寻,以确定合适的速率,当网络拥塞或抖动时,快速降低速率以适配当前的网络情况,让发送的带宽和网络瓶颈链路的接受能力保持一致,实现带降速快速收敛;
采用谷歌拥塞控制方法GCC是基于丢包和延迟估算带宽占用和是否拥塞,发端SR和收端RR通过二者持续的交互将整个网络的丢包与延迟清晰地呈现给系统,从而调整流媒体的发送速率;发端SR方采用卡尔曼滤波评估和调整速率;收端RR方采用线性回归的最小二乘法。
请参阅图1所示,为本发明一种弱网环境超高码率流媒体传输优化方法的高实时性NACK传输方案丢包分析原理图,详细描述如下:
将NACK的发起和等待放置在QOS之中,当QOS检测到序号不连续时,可能是发生丢包或者是乱序,此时QOS将通过FEC解码模块分析当前疑似丢包是否将导致FEC无法恢复。此时将产生三种分析结果:
A、当前丢包即使丢了也不影响FEC恢复,比如当前丢失的包为一个或者多个冗余包,且该冗余包所在的group内的媒体包均已接收,或者借助已接收的冗余包足够恢复。
B、当前丢包不能确定是否影响FEC恢复,需要接收更多的包才能确定。比如丢包发生在group的中段且丢的数量小于冗余包总数。
C、当前丢包将导致FEC确定无法恢复,比如同一个group内丢失的包数大于冗余包总数。
对于情况A,QOS将直接不予等待,将后续接收的包直接交与FEC。对于情况B,QOS将进入“丢包等待时间”,以期收到乱序的包。对于情况C,QOS将发起NACK重传并进入等待,这个等待时间即是“丢包等待时间”又是“重传等待时间”,在等待期内不管是该乱序包到达或者重传包到达,都能满足FEC的恢复条件。通过实时获取当前网络的UDP通讯RTT时间来作为“重传等待时间”的参考,计算出合理的值;
参考图2,为本发明一种弱网环境超高码率流媒体传输优化方法的高实时性NACK传输方案的实现流程图,具体如下:
使用独立的一个UDP信令通道用来传输NACK请求,而不是复用媒体通道。对于传输层模块,它是全双工的。在FEC编码之后,所有的发出的UDP(RTP)包均会被存入一个环形缓存区中,当收到远端NACK请求时,将在下一个媒体包传输时触发重传动作,后者将在环形缓存区中检索需要重传的包并在媒体通道上发出。本技术方案没有新增内部线程去执行重传动作,而是借助原本的媒体包发送行为来触发,这样可以简化设计提高稳定性。检索过程中我们进行了数据包的合法性校验和时间戳有效性校验,当发现当前时间距离数据包初次发送时间的间隔已经较大时,将放弃重传,因为此时远端极有可能已经退出等待,没有必要再浪费带宽。检索使用的是RTP头中的序号字段,考虑序号达到最大值时的跳变动作。
图3为本发明一种弱网环境超高码率流媒体传输优化方法的高实时性的谷歌拥塞控制方法运行过程原理图,展示了高实时性的谷歌拥塞控制方法GCC的运行过程,实施者可以参考该GCC的运行过程来解决弱网环境超高码率的流媒体传输问题。其中有两个核心数据包:SR(SendReport)表示发送端(客户端)上报,RR(Receive Report)接收端(服务端)上报。其中的时间表示了发送一个数据包需要多长时间对端才能接收以及其他一些数据标准。以上图展示的为例:首先客户端向服务器发送15个包,数据区间是100-115,发送之后客户端告诉服务端数据包已发送,同时服务端接收到数据包之后就会去检测区间100-115的数据是否接收完整,有多少包在传输过程中丢失。除此之外,服务端也会统计收到这些数据包所花费的时间并将其作为RR发送给客户端,紧接着客户端持续不停地发SR,服务端也会不断地反馈RR……客户端可基于此对网络进行精准评估并得出相应丢包率,以及统计发送这些数据包的开始与结束的时间并得出DLSR,就能知道该数据包发送过程是否存在明显的延迟。通过两个数据包之间来回的交互,统计之间的丢包率和延迟,继而就能够对网络质量有一个相对可靠的评估。
以上公开的本发明优选实施例只是用于帮助阐述本发明。优选实施例并没有详尽叙述所有的细节,也不限制该发明仅为所述的具体实施方式。显然,根据本说明书的内容,可作很多的修改和变化。本说明书选取并具体描述这些实施例,是为了更好地解释本发明的原理和实际应用,从而使所属技术领域技术人员能很好地理解和利用本发明。本发明仅受权利要求书及其全部范围和等效物的限制。
Claims (3)
1.一种弱网环境超高码率流媒体传输优化方法,其特征在于,采用高实时性NACK传输方案、高可靠性流量控制模型、基于速率的可用带宽探索模型以及采用谷歌拥塞控制方法;
所述高实时性NACK传输方案具体是:将NACK放置于FEC-QOS传输层之外作为上层应用,并且将FEC-QOS传输层看做是普通的用户数据报协议UDP传输,采用信令通道与媒体通道分离,使媒体通道的延迟和抖动不对信令通道产生影响;
所述高可靠性流量控制模型是以帧为粒度控制采集间隔,采集一段时间内I帧、P帧、B帧出现的频率次数,限制这段时间I帧的流通,进而控制流量;采集方式具体使用双端采集,发端为主,收端为辅,两者结合快速发现网络拥堵状况,控制流量;
所述基于速率的可用带宽探索模型是在宽带没有用完时,通过当前速率和带宽值预测剩余可用速率,不断向上探寻,以确定合适的速率,当网络拥塞或抖动时,快速降低速率以适配当前的网络情况,让发送的带宽和网络瓶颈链路的接受能力保持一致,实现带降速快速收敛;
所述采用谷歌拥塞控制方法是基于丢包和延迟估算带宽占用和是否拥塞,发端和收端通过二者持续的交互将整个网络的丢包与延迟清晰地呈现给系统,从而调整流媒体的发送速率;发端方采用卡尔曼滤波评估和调整速率;收端方采用线性回归的最小二乘法。
2.根据权利要求1所述的一种弱网环境超高码率流媒体传输优化方法,其特征在于,所述传输层之外指的是TCP/IP协议中的传输层之外。
3.根据权利要求1所述的一种弱网环境超高码率流媒体传输优化方法,其特征在于,所述上层应用指的是位于传输层以上的、以传输层为基础实现的协议类型的应用层。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211450989.7A CN115765954A (zh) | 2022-11-18 | 2022-11-18 | 一种弱网环境超高码率流媒体传输优化方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211450989.7A CN115765954A (zh) | 2022-11-18 | 2022-11-18 | 一种弱网环境超高码率流媒体传输优化方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115765954A true CN115765954A (zh) | 2023-03-07 |
Family
ID=85333285
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211450989.7A Pending CN115765954A (zh) | 2022-11-18 | 2022-11-18 | 一种弱网环境超高码率流媒体传输优化方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115765954A (zh) |
-
2022
- 2022-11-18 CN CN202211450989.7A patent/CN115765954A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3940974B1 (en) | Transmission method and device for data stream | |
JP4000905B2 (ja) | 情報処理システムおよび方法、情報処理装置および方法、記録媒体、並びにプログラム | |
KR100537499B1 (ko) | 전송제어 파라미터 생성방법 및 프레임 특성에 따른선택적 자동 재전송 방법 | |
US7599307B2 (en) | Quality of experience (QoE) method and apparatus for wireless communication networks | |
Matsuzono et al. | Low latency low loss streaming using in-network coding and caching | |
WO2022247550A1 (zh) | 数据重传处理方法、装置、计算机设备和存储介质 | |
EP2312787A1 (en) | Method and device of data transmission | |
KR20060115216A (ko) | 멀티미디어 스트리밍 송신 장치 및 방법 | |
US9781488B2 (en) | Controlled adaptive rate switching system and method for media streaming over IP networks | |
JP2002281078A (ja) | 通信品質制御方法、通信品質制御システム、パケット解析装置及びデータ送信端末装置 | |
JP2003333577A (ja) | メディア・ストリーミング配信システム | |
WO2010078795A1 (zh) | 提高数据传输质量的方法、装置和系统 | |
CN112436924B (zh) | 一种数据传输方法及电子设备 | |
US8873590B2 (en) | Apparatus and method for correcting jitter | |
KR20130047642A (ko) | 통신 시스템에서 데이터 송수신 장치 및 방법 | |
JP4170942B2 (ja) | モバイルアドホックネットワーク環境での効率的なデータ送受信のためのネットワーク装置及びデータ転送方法 | |
WO2006086691A2 (en) | A network for providing a streaming service | |
CN112911650A (zh) | 移动高清视频智能双向探测带宽控制系统 | |
CN103607255A (zh) | 无线信道视频通信丢包率控制方法 | |
US11909800B2 (en) | Method, system and computer program product for initiating downspeeding in a videoconferencing session | |
EP4184885B1 (en) | Method, system and computer program product for determining congestion of a communication link transmitting a media stream over the communication link | |
CN115765954A (zh) | 一种弱网环境超高码率流媒体传输优化方法 | |
WO2021164405A1 (zh) | 数据编解码方法、相关设备及系统 | |
WO2011110130A2 (zh) | 报文冗余度调整方法、相关设备及网络系统 | |
TWI801835B (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 |