一种基于udp广播的视频流媒体数据分发与预缓存方法

文档序号:9474746阅读:914来源:国知局
一种基于udp广播的视频流媒体数据分发与预缓存方法
【技术领域】
[0001]本发明属于无线移动自组网中的数据传输与缓存领域,尤其是一种无线移动自组网中的视频流媒体数据分发与预缓存方法。
【背景技术】
[0002]移动流媒体业务的快速发展使得传统基于B2D基站接入的流媒体架构模式难以满足日益增长的流媒体带宽需求,制约着移动流媒体业务的大规模应用推广,并严重影响了移动流媒体业务的服务质量与可靠性。
[0003]为此人们提出了利用智能手机无线网卡的ad-hoc模式组建移动自组网,并在网内通过D2D方式分享流媒体数据的方法,来缓解基站的压力。然而随着手机数的增多,移动自组网内的信道冲突将显著提升,严重影响了移动自组网中的通信效率,这一问题急待解决。

【发明内容】

[0004]发明目的:针对现有技术中存在的上述问题,本发明提供了一种基于UDP广播的视频流媒体数据分发与预缓存方法,通过融合无线信道传输的广播特征,有效降低智能手机移动自组网的本地数据传输开销,以优化提高移动自组网内的通信效率。
[0005]技术方案:
[0006]为达到上述目的,本发明提供的一种基于UDP广播的视频流媒体数据分发与预缓存方法,包括以下步骤:
[0007]I)为每一个待发送的视频缓存数据包添加预设的包头信息,生成待分发传输的数据包;所述包头信息包括路由信息和视频索引信息;
[0008]2)使用基于UDP广播的视频流媒体数据分发方法传输数据包;
[0009]3)使用基于决策树判断的视频数据预缓存方法对收到的数据包进行预缓存处理。
[0010]优选的,所述步骤I)中包头信息中的路由信息至少包括如下字段:
[0011]源节点IP地址sourceAddress,用于表明最先广播数据包的节点地址;
[0012]目的节点IP地址destinat1nAddress,用于表明一次完整的数据分发过程最终的目的节点地址;
[0013]转发节点IP地址forwardAddress,用于表明在一次完整的数据分发过程中,需要进行再次广播以进行数据转发的节点地址;
[0014]所述步骤I)中包头信息中的视频索引信息至少包括如下字段:
[0015]视频编号ID,用于标志所传输的视频缓存数据属于哪一个视频文件;
[0016]视频片段偏移量offset,用于表明所传输的视频缓存数据在完整的视频文件中所处的位置。
[0017]作为优选的,所述步骤2)中使用基于UDP广播的视频流媒体数据分发方法传输数据包,包括如下步骤:
[0018]21)发送节点通过查询路由表,得到将数据包传给目的节点所需要经过的下一跳节点的IP地址,并修改数据包中的forwardAddress字段为该地址;
[0019]22)发送节点将数据包以UDP广播的方式发送出去;
[0020]23)周围节点接收到广播包后,解析包头,并根据包头中的相关字段判断是接收数据包还是继续转发数据包还是对数据包进行预缓存;所述判断步骤包括:
[0021]231)判断destinat1nAddress与自身IP地址是否相同,如是则表明自身为目的节点,接收数据包,整个传输过程结束;如否则进入步骤232);
[0022]232)判断forwardAddress与自身IP地址是否相同,如是则表明自身为转发节点,一方面将自身作为发送节点进入步骤21),另一方面进入步骤3)对收到的数据包进行预缓存处理,如否则表明自身是广播监听节点,直接进入步骤3)对数据包进行预缓存处理。
[0023]作为优选的,所述步骤3)中使用基于决策树判断的视频数据预缓存方法对收到的数据包进行预缓存处理,包括如下步骤:
[0024]31)取出数据包包头信息中包含的视频编号ID与视频片段偏移量offset ;
[0025]32)根据ID与offset查询本地是否有相同缓存片段,若有,则将本次广播接收到的数据包丢弃;若无,则根据以下步骤进一步判断:
[0026]321)若ID与本节点正在观看的视频ID不同,则取出数据包中的视频缓存数据,将其保存到本地磁盘缓存;
[0027]322)若ID与本节点正在观看的视频ID相同,则根据以下步骤进一步判断:
[0028]3221)若offset小于本节点正在播放的视频播放点,则取出数据包中的视频缓存数据,将其保存到本地磁盘缓存;
[0029]3222)若offset大于本节点正在播放的视频播放点,则根据本地内存缓存情况进行如下判断:
[0030]32221)若内存缓存未满,则取出数据包中的视频缓存数据,将其保存到内存缓存;
[0031]32222)若内存缓存已满,使用LRU替换算法替换缓存,将内存缓存中最旧的视频数据块取出放入到磁盘缓存,然后将数据包中的视频缓存数据取出,将其保存到内存缓存。
[0032]有益效果:本发明提供的基于UDP广播的视频流媒体数据分发与预缓存方法,通过为每一个待发送的视频缓存数据包添加预设的包头信息,并融合无线信道传输的广播特征,采用基于UDP广播的方式进行视频流媒体数据的分发和传输,结合基于决策树判断的视频数据预缓存方法对收到的数据包进行预缓存处理,用于在由智能手机通过无线网卡的ad-hoc模式而构建成的移动自组网中传输与缓存视频流媒体数据。
[0033]在该类移动自组网中,源手机节点以UDP广播的方式向目的手机节点发送视频流媒体数据包,处于发送节点无线信号覆盖范围之内的其他手机节点可以根据自身的缓存情况,以本发明提供的基于决策树判断的策略来决定是否对监听到的广播数据进行预缓存处理,通过一次数据传输就不仅可以使得目的节点和中间转发节点收到此数据,还可以使得处于发送节点和中间转发节点信号范围内的节点也收到了此数据,从而有效降低了移动自组网中的数据传输次数。通过预缓存策略,节点在主动请求数据前就已经获得了此数据,从而大大提高了缓存命中率,减少了移动自组网内数据请求的次数。综上所述,本发明大幅降低了移动自组网中的数据传输频次和数据传输量,减少了移动自组网中数据传输时的信道冲突次数,降低了移动自组网的本地数据传输开销,提高了移动自组网的网络容量和数据传输效率,有效提升了移动自组网内的通信效率。
【附图说明】
[0034]图1是实施例中的应用场景示意图;
[0035]图2是实施例中各手机节点上部署的数据传输模块示意图;
[0036]图3是实施例中传输的视频缓存数据包格式示意图;
[0037]图4是实施例中基于决策树判断的预缓存处理流程示意图。
【具体实施方式】
[0038]下面结合附图和实施例对本发明作更进一步的说明。
[0039]图1是本实施例的应用场景示意图,本实施例应用场景为,在由智能手机通过无线网卡的ad-hoc模式而构建成的移动自组网中,各手机节点通过D2D通信的方式互相分享各自拥有的视频缓存数据。
[0040]图2是各手机节点上部署的数据传输模块示意图,每部手机上都部署有发送器与接收器,分别维持一个发送队列与接收队列,本发明用于发送器中的广播发送与接收队列后的分析部分。
[0041]图3是本实施例中传输的视频缓存数据包格式。
[0042]本实施例提供的一种基于UDP广播的视频流媒体数据分发与预缓存方法,包括以下步骤:
[0043]步骤I)为每一个待发送的视频缓存数据包添加预设的包头信息,生成待分发传输的数据包;所述包头信息包括路由信息和视频索引信息。
[0044]即:每一个在移动自组网中进行传输的视频缓存数据包,在首次发送前都为其添加预设的包头信息,如图3所示,所述包头信息包括如下字段:
[0045]计数编号packetID,为每个数据包的计数编号,每产生一个新的数据包,计数编号自动加I ;
[0046]路由信息:
[0047]源节点IP地址sourceAddress,用于表明最先广播数据包的节点地址;
[0048]目的节点IP地址destinat1nAddress,用于表明一次完整的数据分发过程最终的目的节点地址;
[0049]转发节点IP地址forwardAddress,用于表明在一次完整的数据分发过程中,需要进行再次广播以进行数据转发的节点地址;
[0050]视频索引信息:
[0051]视频编号ID,用于标志所
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1