一种卫星视频利用UDP及TCP分层传输的方法与流程
未命名
08-15
阅读:84
评论:0
一种卫星视频利用udp及tcp分层传输的方法
技术领域
1.本发明涉及信号传输技术领域,更具体的说,本发明涉及一种卫星视频利用udp及tcp分层传输的方法。
背景技术:
2.在手机上观看直播视频时,一般手机界面由两部分组成,其中第一部分为视频部分,这部分是占用流量最多的部分。第二部分是文字和礼物部分的显示和互动。此部分暂用少量的流量资源。
3.在陆地网络中,我们使用地面网络观看直播,因为手机流量和陆地wifi的原因,我们在观看直播时,对消耗的流量和占用的带宽是无感知的。但是在卫星网络环境下,由于卫星网络带宽低,时延高,往往在终端使用过程中,没有足够的通信带宽,为此在很多偏远地区和远洋中的船舶上,不能使用卫星网络观看直播视频和短视频,因为昂贵的卫星带宽和购买力不适配,从而也导致了陆地上的视频业务在远洋和偏远山区无陆地网络的条件下,只能依靠卫星通信的情况下,解决视频播放和观看相关媒体服务,成为一个需要解决的问题。
技术实现要素:
4.为了克服现有技术的不足,本发明提供一种卫星视频利用udp及tcp分层传输的方法。
5.本发明解决其技术问题所采用的技术方案是:一种卫星视频利用udp及tcp分层传输的方法,其改进之处在于,该方法包括以下的步骤:
6.采用udp协议进行广播传输,对于终端上的直播视频,采用udp协议进行广播传输,将各个节目按照不同广播通道进行下发;
7.采用tcp握手协议实现数据的交互传输,对于终端上除直播视频外的互动界面,以tcp握手协议实现交换传输;
8.采用拥塞检测算法,以解决udp协议进行广播传输时多个组播报文重合和路径优化的问题,所述的拥塞检测算法包括:
9.s101、当同时有多个媒体流播送,对应一个媒体流的组播称之为一个会话,每个会话中的所有数据层都属于同一组播地址,只在分组中对其所属的层数进行标记;
10.s102、智能卫星网关路由器持有会话状态表,通过智能卫星网关路由器对经过的每个会话做信息记录;
11.s103、当智能卫星网关路由器检测某一输出链路发生拥塞时,便根据会话状态表依次选择所有会话中的高数据层作为被丢弃的层;
12.s104、根据接收方反馈的tcp友好接收速率值,确定智能卫星网关路由器应过滤的数据层数,并修改会话状态表,过滤相应的数据层以提高其质量。
13.进一步的,所述的步骤s102中,记录的信息包括:会话总数、在智能卫星网关路由
器每个输出端口上对应每个会话所传输的数据层数。
14.进一步的,所述步骤s103中,包括拥塞检测的步骤,其内容如下:
15.s1031、智能卫星网关路由器对输出队列的平均长度ql进行计算,每当有分组进入第j个输出队列时,智能卫星网关路由器就重新计算ql值,计算公式如下:
16.qlj=qw*qc+(1-qw)qo;
17.其中,qi表示第i个会话,qlj表示智能卫星网关路由器第j个输出队列的平均长度,qw是加权值,表示队列长度的变化程度,qc表示当前队列长度,qo表示之前的队列长度;
18.s1032、假设qmax和qmin分别表示输出队列长度的一上界和下界;
19.若qlj》qmax,则表示第j个输出链路发生了拥塞,若qlj《qmin,则表示第j个输出链路处一于未过载状态;否则表示满载状态。
20.进一步的,步骤s104中,接收方反馈的tcp友好接收速率值包括以下步骤:
21.接收方周期性地计算接收方预测tcp友好接收速率,用rf表示接收方tcp友好速率,s表示数据包大小,r表示rtt,p表示链路平均丢包率,tot表示预测的重传时间值,tcp友好控制方程的计算公式如下所示:
[0022][0023]
接收方以时间间隔tl向最近的智能卫星网关路由器发送tcp友好接收速率值。
[0024]
进一步的,所述的步骤s104中,智能卫星网关路由器持有一个tcp友好速率表,对经过每个会话接收方预测的tcp友好接收速率值作信息记录。
[0025]
进一步的,所述的步骤s104中,智能卫星网关路由器根据数据层接收率判断接收方与智能卫星网关路由器之间是否存在瓶颈链路,数据层接收率=接收方接收到的数据层数/智能卫星网关路由器过滤后的数据层数;
[0026]
当接收方与智能卫星网关路由器之间存在瓶颈链路时,通过tcp数据包通知接收方从代理缓冲清求播放媒体流;
[0027]
与瓶颈链路消除后,通知接收方直接从发送方请求播放媒体流。
[0028]
进一步的,智能卫星网关路由器对瓶颈链路的存在与否进行判断,包括:
[0029]
s1041、当链路pj中传输的qj0的数据层数与接收方接收的数据层数之差大于当前传输数据流最高层lds的大小时,认为在智能卫星网关路由器到接收方之间存在瓶颈链路并导致媒体流播放质量下降;
[0030]
其中,pj表示智能卫星网关路由器的第j个输出链路;
[0031]
s1042、智能卫星网关路由器发送pr信号量通知接收方向代理缓冲请求媒体流;同时,对其它输出链路进行分析,若发现链路传输的qi0的层数均低于lds,则表示lds层是应该是被丢弃的,于是智能卫星网关路由器向上一级智能卫星网关路由器发送d(qi,l)消息,要求它过滤掉qi0的第lds层数据的传输;
[0032]
上一级智能卫星网关路由器从某一链路接收到d(qi,l)消息后,同样对其它各链路进行分析,若发现都不需要传输qi0的lds层,则进一步把d(qi,l)往上传;
[0033]
其中,l(pj,qi)表示当前第j个输出链路所传输的qi的总数据层数;d(qi,l)表示智能卫星网关路由器向上一级智能卫星网关路由器发送的丢弃请求,要求其过滤掉第i个
会话的l层数据;ar(qi,l)表示智能卫星网关路由器向上一级智能卫星网关路由器发送的增加层请求,要求其传输第i个会话的l层数据;
[0034]
s1043、当接收方从代理缓冲请求数据层传输时,通过丢弃消息的传递使得整个网络尽可能地过滤掉不需要传输的数据层,以避免带宽的浪费。
[0035]
本发明的有益效果是:本发明一种节省卫星带宽的视频传输方法,将直播、短视频等占用大量流量资源的节目传输到世界各地,利用卫星的广覆盖优势,实现无缝直播和互动。通过设计了拥塞检测算法,解决了多个组播报文重复和路径优化的问题,提高卫星网络的可靠性。
附图说明
[0036]
图1为本发明的一种卫星视频利用udp及tcp分层传输的方法的数据传输示意图。
[0037]
图2为本发明中背包丢弃的标示图。
具体实施方式
[0038]
下面结合附图和实施例对本发明进一步说明。
[0039]
以下将结合实施例和附图对本发明的构思、具体结构及产生的技术效果进行清楚、完整地描述,以充分地理解本发明的目的、特征和效果。显然,所描述的实施例只是本发明的一部分实施例,而不是全部实施例,基于本发明的实施例,本领域的技术人员在不付出创造性劳动的前提下所获得的其他实施例,均属于本发明保护的范围。另外,专利中涉及到的所有联接/连接关系,并非单指构件直接相接,而是指可根据具体实施情况,通过添加或减少联接辅件,来组成更优的联接结构。本发明创造中的各个技术特征,在不互相矛盾冲突的前提下可以交互组合。
[0040]
参照图1所示,本发明揭示了一种卫星视频利用udp及tcp分层传输的方法,通过该方法,将直播、短视频等占用大量流量资源的节目传输到世界各地,利用卫星的广覆盖优势,实现无缝直播和互动。本发明的主要原理如下:直播一类视频,由于收看者一般是以观看为主,互动以评论的文字为主。对占用大量流量资源的直播视频,本方法采用udp协议进行广播传输,将各个节目按照不同广播通道进行下发。在终端(海陆空)实时收看节目,对视频上的文字和礼物等互动的界面以tcp的握手协议,实时交互传输;直播端看到文字和终端收看者进行互动。
[0041]
其中udp协议进行广播传输采用了拥塞检测算法,因为卫星的骨干网络采用双平面的可靠网络,所有设备均由备份,以此来提高业务的可靠性,在采用tcp传输的业务上,在数据传输上,因为路由节点是由协议进行路径优化和数据校验进行传输,不会在网络中产生重复报文和多路传输的情况,但是在udp传输中,因为udp是一种不可靠的传输协议,在双平面的网络结构中,同一份组播报文会在每个备份节点生成两份组播报文,在下一个备份节点同样生成两份组播报文,为此在整个骨干网络中,会导致多份组播报文,最终导致视频失真。
[0042]
基于此,本发明提供的一种卫星视频利用udp及tcp分层传输的方法,结合图1所示,该方法包括以下的步骤:
[0043]
采用udp协议进行广播传输,对于终端上的直播视频,采用udp协议进行广播传输,
将各个节目按照不同广播通道进行下发;
[0044]
采用tcp握手协议实现数据的交互传输,对于终端上除直播视频外的互动界面,以tcp握手协议实现交换传输;
[0045]
采用拥塞检测算法,以解决udp协议进行广播传输时多个组播报文重合和路径优化的问题,提高卫星网络的可靠性。
[0046]
在本发明中,研究了可靠组播协议的拥塞检测技术和背包丢弃数据背包丢弃数据动态缓冲相关技术,数据拥塞检测技术相应的被分为“推”数据与“拉”数据两类技术。而在数据缓冲技术方面,主要提出数据在网络传输上的分层流媒体缓冲技术与网络传输缓冲技术。
[0047]
基于拥塞检测技术,卫星骨干网的网络拓扑,基本都属于树状或者网状架构。由于网络系统中不同节点的设备性能和功能不同,从而对网络带宽和计算能力不同,因此当一个节点新加入树形网络拓扑时,如何选择父节点便成为一个很重要的议题。如果父节点的上行带宽不充裕,则与其相连的子节点的播放质量就要受到影响。同样父节点也需要带宽评估算法去计算自己该接受多少数量的下游节点。影响构造一棵树的主要的因素有两个:树的高度以及树中每个节点的子节点数。当树形拓扑的规模达到一定程度的时候,这两个参数会从不同方面影响流媒体系统性能。如果树的高度过高,则从上游节点“推送”到下游节点的数据延迟就比较大;而如果每个节点的下游节点数目比较多,则该拓扑的动态适应性就会变得比较差。此时如果一旦有节点退出,受影响的范围就会变得很广。但是随着网络规模的扩大,树形拓扑在对参与节点的动态适应性方面的瓶颈表现了出来。当有节点频繁加入退出的时候,会造成系统不停的重构拓扑,节点的的加入退出大量的影响了下游节点的播放质量。
[0048]
因此,本发明采用拥塞检测算法进行改进,所述的拥塞检测算法包括:
[0049]
s101、当同时有多个媒体流播送,对应一个媒体流的组播称之为一个会话,每个会话中的所有数据层都属于同一组播地址,只在分组中对其所属的层数进行标记;
[0050]
s102、智能卫星网关路由器持有会话状态表,通过智能卫星网关路由器对经过的每个会话做信息记录;所述的步骤s102中,记录的信息包括:会话总数、在智能卫星网关路由器每个输出端口上对应每个会话所传输的数据层数;
[0051]
s103、当智能卫星网关路由器检测某一输出链路发生拥塞时,便根据会话状态表依次选择所有会话中的高数据层作为被丢弃的层;
[0052]
所述步骤s103中,包括拥塞检测的步骤,其内容如下:
[0053]
s1031、智能卫星网关路由器对输出队列的平均长度ql进行计算,每当有分组进入第j个输出队列时,智能卫星网关路由器就重新计算ql值,计算公式如下:
[0054]
qlj=qw*qc+(1-qw)qo;
[0055]
其中,qi表示第i个会话,qlj表示智能卫星网关路由器第j个输出队列的平均长度,qw是加权值,表示队列长度的变化程度,qc表示当前队列长度,qo表示之前的队列长度;
[0056]
s1032、假设qmax和qmin分别表示输出队列长度的一上界和下界;
[0057]
若qlj》qmax,则表示第j个输出链路发生了拥塞,若qlj《qmin,则表示第j个输出链路处一于未过载状态;否则表示满载状态。
[0058]
s104、根据接收方反馈的tcp友好接收速率值,确定智能卫星网关路由器应过滤的
数据层数,并修改会话状态表,过滤相应的数据层以提高其质量。
[0059]
步骤s104中,接收方反馈的tcp友好接收速率值包括以下步骤:
[0060]
接收方周期性地计算接收方预测tcp友好接收速率,用rf表示接收方tcp友好速率,s表示数据包大小,r表示rtt,p表示链路平均丢包率,tot表示预测的重传时间值,tcp友好控制方程的计算公式如下所示:
[0061][0062]
接收方以时间间隔tl向最近的智能卫星网关路由器发送tcp友好接收速率值。
[0063]
所述的步骤s104中,智能卫星网关路由器持有一个tcp友好速率表,对经过每个会话接收方预测的tcp友好接收速率值作信息记录。
[0064]
更进一步的,所述的步骤s104中,智能卫星网关路由器根据数据层接收率判断接收方与智能卫星网关路由器之间是否存在瓶颈链路,数据层接收率=接收方接收到的数据层数/智能卫星网关路由器过滤后的数据层数;当接收方与智能卫星网关路由器之间存在瓶颈链路时,通过tcp数据包通知接收方从代理缓冲清求播放媒体流;与瓶颈链路消除后,通知接收方直接从发送方请求播放媒体流。
[0065]
智能卫星网关路由器对瓶颈链路的存在与否进行判断,包括:
[0066]
s1041、当链路pj中传输的qj0的数据层数与接收方接收的数据层数之差大于当前传输数据流最高层lds的大小时,认为在智能卫星网关路由器到接收方之间存在瓶颈链路并导致媒体流播放质量下降;
[0067]
其中,pj表示智能卫星网关路由器的第j个输出链路;
[0068]
s1042、智能卫星网关路由器发送pr信号量通知接收方向代理缓冲请求媒体流;同时,对其它输出链路进行分析,若发现链路传输的qi0的层数均低于lds,则表示lds层是应该是被丢弃的,于是智能卫星网关路由器向上一级智能卫星网关路由器发送d(qi,l)消息,要求它过滤掉qi0的第lds层数据的传输;
[0069]
上一级智能卫星网关路由器从某一链路接收到d(qi,l)消息后,同样对其它各链路进行分析,若发现都不需要传输qi0的lds层,则进一步把d(qi,l)往上传;
[0070]
其中,l(pj,qi)表示当前第j个输出链路所传输的qi的总数据层数;d(qi,l)表示智能卫星网关路由器向上一级智能卫星网关路由器发送的丢弃请求,要求其过滤掉第i个会话的l层数据;ar(qi,l)表示智能卫星网关路由器向上一级智能卫星网关路由器发送的增加层请求,要求其传输第i个会话的l层数据;
[0071]
s1043、当接收方从代理缓冲请求数据层传输时,通过丢弃消息的传递使得整个网络尽可能地过滤掉不需要传输的数据层,以避免带宽的浪费。
[0072]
综上,本发明中,参照图2所示,按照智能卫星网关路由器中的tcp友好速率表,对数据协议包结合背包丢弃算法,数据在路由tcp友好速率表中传输时,将上一层的数据标识头包加载,在下一个路由节点时,加载当前节点的数据标识头包,同时丢弃上一层的数据标识头包,为此在整个链路传输中,传输的数据量大小不变,但是路径却依然形成了最优路由传输,减少了卫星网络带宽和提升了传输效率。
[0073]
以上是对本发明的较佳实施进行了具体说明,但本发明创造并不限于所述实施
例,熟悉本领域的技术人员在不违背本发明精神的前提下还可做出种种的等同变形或替换,这些等同的变形或替换均包含在本技术权利要求所限定的范围内。
技术特征:
1.一种卫星视频利用udp及tcp分层传输的方法,其特征在于,该方法包括以下的步骤:采用udp协议进行广播传输,对于终端上的直播视频,采用udp协议进行广播传输,将各个节目按照不同广播通道进行下发;采用tcp握手协议实现数据的交互传输,对于终端上除直播视频外的互动界面,以tcp握手协议实现交换传输;采用拥塞检测算法,以解决udp协议进行广播传输时多个组播报文重合和路径优化的问题,所述的拥塞检测算法包括:s101、当同时有多个媒体流播送,对应一个媒体流的组播称之为一个会话,每个会话中的所有数据层都属于同一组播地址,只在分组中对其所属的层数进行标记;s102、智能卫星网关路由器持有会话状态表,通过智能卫星网关路由器对经过的每个会话做信息记录;s103、当智能卫星网关路由器检测某一输出链路发生拥塞时,便根据会话状态表依次选择所有会话中的高数据层作为被丢弃的层;s104、根据接收方反馈的tcp友好接收速率值,确定智能卫星网关路由器应过滤的数据层数,并修改会话状态表,过滤相应的数据层以提高其质量。2.根据权利要求1所述的一种卫星视频利用udp及tcp分层传输的方法,其特征在于,所述的步骤s102中,记录的信息包括:会话总数、在智能卫星网关路由器每个输出端口上对应每个会话所传输的数据层数。3.根据权利要求1所述的一种卫星视频利用udp及tcp分层传输的方法,其特征在于,所述步骤s103中,包括拥塞检测的步骤,其内容如下:s1031、智能卫星网关路由器对输出队列的平均长度ql进行计算,每当有分组进入第j个输出队列时,智能卫星网关路由器就重新计算q l值,计算公式如下:q lj=qw*qc+(1-qw)qo;其中,qi表示第i个会话,qlj表示智能卫星网关路由器第j个输出队列的平均长度,qw是加权值,表示队列长度的变化程度,qc表示当前队列长度,qo表示之前的队列长度;s1032、假设qmax和qmin分别表示输出队列长度的一上界和下界;若qlj>qmax,则表示第j个输出链路发生了拥塞,若q lj<qmin,则表示第j个输出链路处一于未过载状态;否则表示满载状态。4.根据权利要求3所述的一种卫星视频利用udp及tcp分层传输的方法,其特征在于,步骤s104中,接收方反馈的tcp友好接收速率值包括以下步骤:接收方周期性地计算接收方预测tcp友好接收速率,用rf表示接收方tcp友好速率,s表示数据包大小,r表示rtt,p表示链路平均丢包率,tot表示预测的重传时间值,tcp友好控制方程的计算公式如下所示:接收方以时间间隔tl向最近的智能卫星网关路由器发送tcp友好接收速率值。5.根据权利要求4所述的一种卫星视频利用udp及tcp分层传输的方法,其特征在于,所述的步骤s104中,智能卫星网关路由器持有一个tcp友好速率表,对经过每个会话接收方预
测的tcp友好接收速率值作信息记录。6.根据权利要求4所述的一种卫星视频利用udp及tcp分层传输的方法,其特征在于,所述的步骤s104中,智能卫星网关路由器根据数据层接收率判断接收方与智能卫星网关路由器之间是否存在瓶颈链路,数据层接收率=接收方接收到的数据层数/智能卫星网关路由器过滤后的数据层数;当接收方与智能卫星网关路由器之间存在瓶颈链路时,通过tcp数据包通知接收方从代理缓冲清求播放媒体流;与瓶颈链路消除后,通知接收方直接从发送方请求播放媒体流。7.根据权利要求6所述的一种卫星视频利用udp及tcp分层传输的方法,其特征在于,智能卫星网关路由器对瓶颈链路的存在与否进行判断,包括:s1041、当链路pj中传输的qj0的数据层数与接收方接收的数据层数之差大于当前传输数据流最高层lds的大小时,认为在智能卫星网关路由器到接收方之间存在瓶颈链路并导致媒体流播放质量下降;其中,pj表示智能卫星网关路由器的第j个输出链路;s1042、智能卫星网关路由器发送pr信号量通知接收方向代理缓冲请求媒体流;同时,对其它输出链路进行分析,若发现链路传输的q i 0的层数均低于lds,则表示lds层是应该是被丢弃的,于是智能卫星网关路由器向上一级智能卫星网关路由器发送d(q i,l)消息,要求它过滤掉q i 0的第lds层数据的传输;上一级智能卫星网关路由器从某一链路接收到d(qi,l)消息后,同样对其它各链路进行分析,若发现都不需要传输qi 0的lds层,则进一步把d(qi,l)往上传;其中,l(pj,qi)表示当前第j个输出链路所传输的qi的总数据层数;d(qi,l)表示智能卫星网关路由器向上一级智能卫星网关路由器发送的丢弃请求,要求其过滤掉第i个会话的l层数据;ar(q i,l)表示智能卫星网关路由器向上一级智能卫星网关路由器发送的增加层请求,要求其传输第i个会话的l层数据;s1043、当接收方从代理缓冲请求数据层传输时,通过丢弃消息的传递使得整个网络尽可能地过滤掉不需要传输的数据层,以避免带宽的浪费。
技术总结
本发明提供了一种卫星视频利用UDP及TCP分层传输的方法,涉及数据传输技术领域;该方法包括以下的步骤:采用UDP协议进行广播传输,对于终端上的直播视频,采用UDP协议进行广播传输,将各个节目按照不同广播通道进行下发;采用TCP握手协议实现数据的交互传输,对于终端上除直播视频外的互动界面,以TCP握手协议实现交换传输;采用拥塞检测算法,以解决UDP协议进行广播传输时多个组播报文重合和路径优化的问题;本发明的有益效果是:将直播、短视频等占用大量流量资源的节目传输到世界各地,利用卫星的广覆盖优势,实现无缝直播和互动;解决了多个组播报文重复和路径优化的问题,提高卫星网络的可靠性。卫星网络的可靠性。卫星网络的可靠性。
技术研发人员:唐德强 闫文凯 张莉 李鑫 王瑞 陈丹丹 林琳 李子剑
受保护的技术使用者:亚太卫星宽带通信(深圳)有限公司
技术研发日:2023.03.23
技术公布日:2023/8/14
版权声明
本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
飞行汽车 https://www.autovtol.com/
