一种用于卫星数据广播系统的大型文件组播分发方法

文档序号:7918667阅读:194来源:国知局
专利名称:一种用于卫星数据广播系统的大型文件组播分发方法
所属领域本发明涉及在卫星的单向不可靠链路上进行文件数据投递的方法,尤其涉及用于卫星数据广播系统的大型文件组播分发方法。
背景技术
卫星传送是比较理想的信息传送途径,它不受地域的限制,灵活方便、速度高并且稳定。各地用户只需安装卫星接收天线和卫星接收卡,即可通过计算机接收到各种数据信息。但是卫星传送系统中数据的正确传输会受到网络状况,服务器处理能力等多方面的影响。尤其对单个巨型文件进行可靠传输时,对各方面要求更高。处于我国国情和经济因素考虑,卫星中不能提供双向的连接,故多采用UDP/IP协议(User Datagram Protocal),通过Multicast多路广播方式传输数据。但是在单向的环境中如何实现可靠的数据传输,尤其是实现GB级大文件的可靠传输,是当前面临的重大难题。目前的现有技术中,有人将局域网的文件发送方法直接搬到卫星系统中,发送的时候占用的带宽很大,其他的业务受这个异常流量的影响无法正常进行;而且带宽不可控,不得不租用很大的卫星带宽。现有的卫星广播系统中大型文件组播分发方法,多采用空包补包技术结合前向纠错FEC技术,但是这样需多次传送数据,数据发生错误的概率却总是存在的。而且在卫星系统长时间的通信过程中,由于自然环境的干扰,可能出现突发误码,这种突发误码也可能导致无法正确接收文件。另外,随着文件的增大,接收正确的概率就越小;文件太大,还将可能导致用户的缓冲区溢出而无法接收,影响卫星传送系统的稳定性。

发明内容
本发明所要解决的问题是提供一种用于卫星数据广播系统的大型文件组播分发方法,保证了在大型文件的传送中,数据可靠正确的传输,同时其发送速度和冗余度可以调整,提高了卫星运营系统的稳定性和质量。
为了达到上述发明目的,本发明的技术方案如下一种用于卫星数据广播系统的大型文件组播分发的方法,采用UDP/IP协议。编码传输层使用前向纠错技术FEC在发送数据前对发送的最小单位数据片断加入数据冗余,发生错误时,接收用户通过对冗余数据的恢复加以纠正。编码传输层还使用了异步分层编码ALC和分层接收控制RLC发送端对原始数据文件进行分层编码,发送端的每个多播组以不同速率发送编码后的各层数据,接收端加入多个多播组同时接收,当数据丢失时,接收端离开一个或多个多播组,降低接收速率。应用层中的文件处理层采用恢复卷Recovery Volumes将大文件分成数百或者数千个小文件,每个小文件都生成文件级别的冗余卷,发生错误时,接收用户通过冗余卷恢复加以纠正。
上述异步分层编码ALC中的分层编码是把文件分成object的大单位,再加上必要的识别信息之后,再分成block块,block块由在网络上传输的最小尺寸单位和前向纠错FEC冗余数据单位组成。
上述异步分层编码ALC在编码时每一层的数据随机的发送。
本发明采用将巨型文件进行分割后进行文件级纠错恢复技术,并且在卫星广播系统中预设置缓冲区和临时分区的大小,将把短时间内发送数据包丢失造成的风险分散开,保证了巨型文件的完整正确性,进而保证了卫星广播系统的稳定性。本发明由于在编码传输层中保留了异步分层编码ALC和分层接收控制RLC,所以当数据产生丢失时,接收端离开一个或多个多播组,降低接收速率,以便保证数据的正确接收。并且每一个数据包从主站发送后,所有客户端的用户都可以收到。不论以何种顺序传输,由于每个数据单元都含有所有的必需信息,所以都可以最终在用户接收端恢复。本发明是专门针对卫星广播系统构造,是专业化的通信系统的软件,发送速度和冗余度可调整,系统的稳定性、质量将符合卫星运营商的要求。


图1为本发明硬件系统的网络结构图;图2为本发明异步分层编码ALC和分层接收控制RLC的原理示意图;图3为本发明分层编码顺序发送每层数据所用时间的示意图;图4为本发明分层编码随机发送每层数据所用时间的示意图;图5为本发明大型文件分割和恢复卷Recovery Volumes的流程示意图。
下面结合附图和具体的实施方式对本发明作进一步的说明。
具体实施例方式
参看图1,本发明在硬件上由文件与流分发的卫星主站和文件与流接收小站组成。本发明硬件系统包括发送端和接收端两部分,其中发送端通过局域网将组播数据传至卫星IPE打包机上,经过调制解调器上星,以卫星信号向下广播。接收端可以有两种方式,一种是接收计算机安装一块卫星接收卡,直接接收卫星信号,在接收计算机上接收文件和转发视频流。另一种用一台卫星接收机接收信号,该机器再将收下来的信号转播到局域网,局域网上的计算机可以直接通过网卡接收数据。本发明传输层上,卫星主站发送端的播发服务器向局域网播发IP数据,数据以以太网帧的形式到达IP/DVB网关,转换成DVB系统的传输格式,经多路复用后送到卫星调制器调制成模拟信号,最后由卫星发送站发送到通讯卫星,通过卫星转发器形成了覆盖全国的传输网络。在接收端,卫星接收站接收卫星的下行信号,通过功分器将信号送到各台接收机。每台接收机都装有一块卫星接收卡,该卡将卫星信号转换成IP包交给接收端软件。在软件应用层上,卫星主站发送端的软件播发平台通过授权模块生成相应的授权控制信息,发送至各个卫星小站,接收端软件首先读取授权控制信息判断自己是否在接收范围之内,不在就不起监听进程接收,如果在控制列表之内,再判断要传送的数据是否已经在数据库中,如果存在同样的数据,不起监听进程,从未接收过同样数据,则起相应进程进行监听。发送端软件将要发送的数据,通常是一个1GB以上的巨型文件,经过编码分割冗余等处理,通过卫星链路广播发送下去。经过授权的接收端经过相应的恢复处理,得到原始文件。
参看图2,本发明编码传输层使用异步分层编码ALC和分层接收控制RLC。发送端对原始数据文件进行分层编码,把文件分成object的大单位,再加上必要的识别信息之后,再分成block块,block块由在网络上传输的最小尺寸单位和前向纠错FEC冗余数据单位组成。发送端的每个多播组以不同速率随机的发送编码后的各层数据,接收端加入多个多播组同时接收,当数据丢失时,接收端离开一个或多个多播组,降低接收速率。文件的正确传输得到了保证,一般传送一遍就可以了。异步分层编码ALC和分层接收控制RLC的原理有些类似视频流的分级编码传输。图象的分级编码是将图象编码压缩成几种不同质量的码流,这几个码流有其叠加性每一级码流可以和其对应的低一级的码流组成更高一级的图象;有很强的灵活性根据网络的带宽状态随时将分级图象组合成适应网络带宽的码流;有很强的鲁棒性如果出现丢包或误码时,只能影响其中一层图象而不会影响整帧图象,使得图象质量还可以被接受。通过异步分层编码ALC和分层接收控制RLC,文件被同时发送了几份(等于层数),从表面上看类似多次重发补包的发送方法,但是实际上大大不同,各层的数据是有一定关联互充性的,接收端在组合还原时不用等待第2,3次发送数据的时间。在一定的带宽情况下,这种发送方法所花的时间要比重发所用的接收时间要短。而且适应了各类接收端,异类的各种接收端因为各种因素,正确接收完毕的时间可能不一样。信号误码率高,处理能力低的接收端的时间较长,信号误码率低,处理能力高的的接收端接收时间短。
参看图3、图4,本发明异步分层编码ALC在编码时每一层的数据随机的发送。异步分层编码ALC在多层传输时,每层数据的重复发送,加上前向纠错FEC所附加的冗余数据,必然使可靠组播传输的速度要低于正常双向链路时TCP/IP的传输速度,就会遇到传输效率的问题。从对数据进行编码分层发送的角度出发,在编码时每一层的数据随机的发送比顺序发送效率要高,接收时间要短。而顺序发送的时间要比随机发送慢。当每一层的数据单元顺序发送时,接收端同时收到的都是重复数据,最迟要在T0时间才能完成数据的接收。当每一层的数据单元随机发送时,接收端同时收到的数据重复率降低,在T0时间之前,理论上最早T1时间就能完成所有数据的接收。
参看图5,应用层中的文件处理层采用恢复卷Recovery Volumes。巨型文件的大小与普通文件不在一个数量级上,为了实现正确传输,在可靠多播传输协议的基础上,我们同时对大文件进行了分割,这种分割是基于文件的分割,即将单个大文件分割成以一定大小(例如1M)为单位尺寸的小文件。生成数百或数千个小文件后,使用RecoveryVolumes技术生成文件级别的冗余卷。生成的文件数可以调整,一般取10%到30%,也可以取更高。这样即使有数个小文件丢失或错误,仍然能够恢复出原始的所有小文件,进而接收端也就能够合并恢复出原始的大文件。详细说明如下若有n个文件和m个恢复文件(m<=n-1),从这n+m个混杂文件中任意拿出小于等于m个文件仍掉,仍都可以完全恢复所有数据。而这种恢复卷是基于可以调整大小的文件级别的,意义显然非常重大。基于协议层的短期内的数据段的丢失将使得超过FEC纠错能力而造成数据有中断。采用文件级别的恢复卷后,将把短时间发送的数据包丢失的风险分散开,这样某一个时间分段内的大误码率也不会影响其整体纠错能力,因此,整个原始巨型文件数据的可靠性得到了保证。
编码传输层使用前向纠错技术FEC在发送数据前对发送的最小单位数据片断加入数据冗余,当数据在卫星链路中传输发生错误时,接收的用户可以通过前向纠错FEC技术,将出错的单位数据片段纠正回来。
权利要求
1.一种用于卫星数据广播系统的大型文件组播分发方法,采用UDP/IP协议,编码传输层使用前向纠错技术FEC,在发送数据前对发送的最小单位数据片断加入数据冗余,发生错误时,接收用户通过对冗余数据的恢复加以纠正;编码传输层还使用了异步分层编码ALC和分层接收控制RLC,发送端对原始数据文件进行分层编码,使发送端的每个多播组以不同速率发送编码后的各层数据,接收端加入多个多播组同时接收,当数据丢失时,接收端离开一个或多个多播组,降低接收速率;其特征在于应用层中的文件处理层采用恢复卷RecoveryVolumes,将大文件分成数百个或者数千个小文件,并由此生成文件级别的冗余,发生错误时,接收用户通过冗余文件恢复加以纠正。
2.按照权利要求1所述的用于卫星数据广播系统的大型文件组播分发方法,其特征在于,所述异步分层编码ALC中的分层编码是把文件分成object的大单位,再加上必要的识别信息之后,再分成block块,block块由在网络上传输的最小尺寸单位和前向纠错FEC冗余数据单位组成。
3.按照权利要求1或2所述的用于卫星广播系统的大型文件组播分发方法,其特征在于,所述异步分层编码ALC在编码时每一层的数据随机的发送。
全文摘要
本发明公开了一种用于卫星数据广播系统的大型文件组播分发方法,属于卫星的单向不可靠链路上进行文件数据投递的方法。本发明保证了在大型文件的传送中,数据可靠正确的传输,同时其发送速度和冗余度可以调整,提高了卫星运营系统的稳定性和质量。本发明采用UDP/IP协议。编码传输层使用前向纠错技术FEC。编码传输层还使用了异步分层编码ALC和分层接收控制RLC。应用层中的文件处理层采用恢复卷Recovery Volumes将大文件分成数百或者数千个小文件,每个小文件都生成文件级别的冗余卷,发生错误时,接收用户通过冗余卷恢复加以纠正。本发明主要应用于卫星的单向不可靠链路上的大型文件传输。
文档编号H04L29/06GK1481132SQ02129349
公开日2004年3月10日 申请日期2002年9月4日 优先权日2002年9月4日
发明者李军, 李 军 申请人:清华同方股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1