一种在单向网络中传输数据的方法及装置的制作方法

文档序号:7719699阅读:189来源:国知局

专利名称::一种在单向网络中传输数据的方法及装置的制作方法
技术领域
:本发明涉及通信
技术领域
,特别涉及一种在单向网络中传输数据的方法及装置。
背景技术
:Internet是基于分组交换的网络,采用的是基于数据包的存储转发技术,每个数据包携带目的地址和源地址等控制信息,交换节点将收到的数据包进行缓存,通过查找路由表再将该数据包交给某个端口转发出去。在Internet网络通信中,网络通信通常建立在TCP协议或UDP协议之上,其中TCP是基于连接的协议,能为应用程序提供可靠的通信连接,可以使一台计算机发出的字节流无差错地发往网络上的其他计算机,具体的,TCP协议通过三次握手信息建立连接,在传输数据时,当数据丢失或错误时,具有重传机制,可以保证数据传输的完整性;而UDP是面向非连接的协议,它不与对方建立连接,而是直接就把数据包发送过去,因此不能保障通信的可靠性。数据包在传输中的损坏和丢包现象不可避免,这对于单向网络通信的情况尤为严重,由于不存在反馈信道,不能采用传统的握手信号,无法通过重传丢失的数据包来保证数据的完整性。再有,数据传输的物理媒介有光纤、电缆和无线信道等。由于信号在媒介的传输中总会有衰减、失真及各种干扰,接收端接收到的数据都会不可避免的出现差错。针对单向网络通信可靠性的问题,目前采用前向纠错编码(ForwardErrorCorrection,FEC)技术可较好地改善误码性能,在Internet通信中应用的FEC方法多涉及音频、图像、流媒体等传输领域,由理论及应用分析可知,采用基于FEC的方法能使单向网络传输性能获得极大的提高。但是,正是因为目前的FEC方法多涉及音频、图像、流媒体等传输领域,因而目前采用FEC方法的多为多播传输,在多播传输中都存在弱反馈现象,即接收端也会通知发送端某个包没收到,发送端会再次针对该包进行多播发送,因此这类FEC差错控制的方法不是纯粹的无反馈。然而有很多场合存在纯粹的无任何反馈的应用场景,如在低密级网络与高密级网络相连时,只能允许低密级信息流向高密级网络而不能有任何反向信息的传输。这样,在Internet的环境下,如何保证在纯粹的无任何反馈的应用场景中单向网络数据传输可靠性成为有待解决的问题。
发明内容本发明实施例在于提供一种在单向网络中传输数据的方法及装置,应用于不同媒体信息的传输,以提高单向网络数据传输的可靠性。本发明实施例提供了一种在单向网络中传输数据的方法,包括如果待传输原始数据为非连续性媒体信息,在发送端,将所述原始数据分组为固定长度的数据包,对所述分组后的数据包进行外码编码,将所述经外码编码后的数据包再进行内码编码,之后,将经内码编码后的数据包送入传输通道;在接收端,根据编码数据的载荷类型判断媒体信息类型,若为非连续性媒体信息,将从传输通道接收到的数据包进行内码解码,将经内码解码后的数据包再进行外码解码,获得原始数据。其中,如果待传输原始数据为连续性媒体信息,则进一步包括在发送端,将所述原始数据分组为固定长度的数据包,对所述分组后的数据包进行内码编码,之后,将经内码编码后的数据包送入传输通道;在接收端,根据编码数据的载荷类型判断媒体信息类型,若为连续性媒体信息,将从传输通道接收到的数据包进行内码解码,获得原始数据。其中,所述内码为Raptor码,所述外码为RS码。其中,所述非连续性媒体信息包括数据信息、文本信息;所述连续性媒体信息包括音频信息、图像信息、流媒体信息。其中,所述送入传输通道的编码后的数据包括载荷类型、数据块号、编码标识、编码序号和编码符号。本发明实施例还提供了一种在单向网络中传输数据的装置,所述装置包括发送端和接收端,如果待传输原始数据为非连续性媒体信息,则所述发送端包括分组模块,用于将所述原始数据分组为固定长度的数据包;外码编码模块,用于对所述分组后的数据包进行外码编码;内码编码模块,用于将所述经外码编码后的数据包再进行内码编码;传送模块,用于将经内码编码后的数据包送入传输通道;所述接收端包括判断单元,用于根据编码数据的载荷类型判断媒体信息类型,若为非连续性媒体信息,将从传输通道接收到的数据包传送给内码解码模块;内码解码模块,用于对接收到的数据包进行内码解码,将经内码解码后的数据包再传送给外码解码模块;外码解码模块,用于对接收到的数据包进行外码解码,获得原始数据。其中,如果待传输原始数据为连续性媒体信息,则所述发送端包括,分组模块,用于将所述原始数据分组为固定长度的数据包;内码编码模块,用于对所述分组后的数据包进行内码编码;传送模块,用于将经内码编码后的数据包送入传输通道;所述接收端包括,判断单元,根据编码数据的载荷类型判断媒体信息类型,若为连续性媒体信息,将从传输通道接收到的数据包传送给内码解码模块;内码解码模块,用于对接收到的数据包进行内码解码,获得原始数据。其中,所述内码为Raptor码,所述外码为RS码。其中,所述非连续性媒体信息包括数据信息、文本信息;所述连续性媒体信息包括音频信息、图像信息、流媒体信息。其中,所述送入传输通道的编码后的数据包括载荷类型、数据块号、编码标识、编码序号和编码符号。应用本发明实施例所述的在单向网络中传输数据的方法及装置,对数据、文本等非连续性媒体信息采用内码和外码级联的编解码方法如RS编码和R即tor编码的级联编解码方法,得到原始数据,增强了数据传输端到端的重构能力,提高了单向网络数据传输的可靠性,从而达到有效提高单向网络通信质量的目标。为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1是根据本发明实施例的一种在单向网络中传输数据的方法示意图;图2是根据本发明实施例的另一种在单向网络中传输数据的方法示意图;图3是根据本发明实施例的一种在单向网络中传输数据的装置结构示意图;图4是根据本发明实施例的另一种在单向网络中传输数据的装置结构示意图。具体实施例方式下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。本发明实施例利用前向纠错编码(ForwardErrorCorrection,FEC)技术来恢复传输过程中丢失的数据包,降低数据传输中的丢包率,提高数据传输的可靠性。本发明提出了在使用外码和内码级联的编解码方法,使得由内码没有恢复出的错误可以由外码恢复出来,如采用RS(ReedSolomonCode)码和Raptor码级联编码的方法,让R即tor译码没有恢复的错误可以由RS译码恢复出来,因此该方法可以大大提高数据传输的可靠性。参见图1,其是根据本发明实施例的一种在单向网络中传输数据的方法示意图。在本实施例中,已确定待传输原始数据是否为非连续性媒体信息,这里,非连续性媒体信息包括数据信息、文本信息等时效性要求不高的媒体信息。在发送端,步骤1)将所述原始数据分组为固定长度的数据包;步骤2)对所述分组后的数据包进行外码编码;本实施例中,外码为RS码,当然,在其他实施例中外码也可以是其他码,如BCH码(Bose,Ray-Chaudhuri,HocquenghemCode),本发明实施例并不对外码所采用的具体编码进行限定。也就是说,本步骤是将分组后的数据包送入RS编码器进行编码;步骤3)将所述经外码编码后的数据包再进行内码编码;本实施例中,内码为Raptor码,当然,在其他实施例中内码也可以是其他码,如LT码(LubyTransformCode),本发明实施例并不对内码所采用的具体编码进行限定;也就是说,本步骤是将RS编码后的数据包送入Raptor编码器进行编码;步骤4)将经内码编码后的数据包送入传输通道;需要说明的是,前向纠错编码算法根据出发点不同,有多种分类。在数据传输中常用的有分组码、巻积码和Turbo码等。作为一种分组码,RS码(ReedSolomonCode)是具有很强的纠错能力的多元码,可以纠正多个错误。Raptor码是一种长度选择灵活、编码与译码简单的纠删码,是一类实用的喷泉码,除了因其编码数据包的平均度很低外,Raptor码的译码复杂度低的关键原因是其迭代译码器适用于纠正删除性错包,适用于IP网络数据包的纠错。在单向网络通信中,为了得到更好的纠错编码性能,本发明实施例提出了采用RS码与R即tor码的级联算法。RS码(Reed-Solomon码)是应用广泛的分组编码算法,它对于随机错误和突发错误均具有很好的纠错性能。R即tor码是基于不规则稀疏二分图构造出来的一种码,由于其编码方法与码率无关,可以根据不同的信道条件,保证接收端正确的接收信息数据而不增加反馈信道。在接收端,步骤5)根据编码数据的载荷类型判断媒体信息类型,若为非连续性媒体信息,则执行步骤6);其中,编码数据的格式如表1所示;步骤6)将从传输通道接收到的数据包进行内码解码;本实施例中,内码为Raptor码;也就是说,本步骤是将接收到的数据包送入Raptor解码器进行编码;步骤7)将经内码解码后的数据包再进行外码解码,获得原始数据。本实施例中,外码为RS码。也就是说,本步骤是将RS解码后的数据包送入R即tor解码器进行编码,从而获得原始数据。至此,图1所示实施例对数据、文本等非连续性媒体信息采用RS编码和R即tor编码的级联编解码方法,得到原始数据,增强了数据传输端到端的重构能力,提高了单向网络数据传输的可靠性,从而达到有效提高单向网络通信质量的目标。需要说明的是,在图1所示实施例中,由于最终的纠错能力取决于外码和内码叠加的累积效果,因而,可以设计外码的纠错能力大于或小于内码的纠错能力,在一较佳实施例中,可以设计外码的纠错能力大于内码的纠错能力,即设计RS的纠错能力大于R即tor的纠错能力,从而更进一步的保证数据传输的可靠性。参见图2,其是根据本发明实施例的另一种在单向网络中传输数据的方法示意图。在本实施例中,已确定待传输原始数据为连续性媒体信息,这里,连续性媒体信息包括音频信息、图像信息、流媒体信息等时效性要求较高的媒体信息。在发送端,步骤1)将所述原始数据分组为固定长度的数据包,步骤2)对所述分组后的数据包进行内码编码本实施例中,内码为R即tor码;当然,在其他实施例中内码也可以是其他码,如LT码,本发明实施例并不对内码所采用的具体编码进行限定;也就是说,本步骤是将分组后的数据包送入RS编码器进行编码;步骤3)将经内码编码后的数据包送入传输通道;在接收端,步骤4)根据编码数据的载荷类型判断媒体信息类型,若为连续性媒体信息,则执行步骤5);其中,编码数据的格式如表1所示;步骤5)将从传输通道接收到的数据包进行内码解码,获得原始数据。本实施例中,内码为Raptor码。也就是说,本步骤是将接收到的数据包送入Raptor解码器进行编码。至此,图2所示实施例对音频信息、图像信息、流媒体信息等时效性要求较高的媒体信息采用Raptor编解码方法,得到原始数据,增强了数据传输端到端的重构能力,提高了单向网络数据传输的可靠性,从而达到有效提高单向网络通信质量的目标。需要说明的是,图1和图2所述实施例中所述送入传输通道的编码后的数据如表l所示表1<table>tableseeoriginaldocumentpage8</column></row><table>其中,送入传输通道的编码后的数据包括载荷类型(PayloadType,PT),本实施例中定义如下PT=1,为文本、数据类型;PT=0,为图像、音频、视频类型。数据块号(DataBlockNumber,DBN),本实施例中从0开始计数,编码标志(EncodingIndicate,EI),本实施例中EI=l,表示源数据符号;EI=O,标识冗余数据符号。编码序号(EncodingDataNumber,EDN),本实施例中从0开始计数。编码符号(EncodingSymbol,ES),为编码数据符号。下面对RS编码方式和Raptor编码方法分别说明如下RS码是多进制码,由多个比特组成一个符号进行处理,适合针对报文丢失的随机错误和突发错分组的恢复。将传输对象分割成连续的数据块,以块为单位进行编码,每一个块包含K个源数据符号,其中K对于不同的块可以是不同的。在每次编码时,发送端对连续K个源数据符号作编码运算,得到N-K个连续冗余数据符号,其中,N为编码后的符号总数;发送端将冗余数据符号和源数据符号组成一个数据编码块,作为一个数据传输块进行网络传输。在这里可以取K=8,N=16。数据包长度选择1024字节。由于数据传输块中的一些数据符号在传输过程中可能会丢失,接收端通过编码符号的序列号来确定丢失的数据符号及其在数据块中所在的位置。由于冗余性的存在,在接收端收到M个不同的编码符号,若M〉K,则取先接收到的K个编码符号进行解码,既可重建出K个源数据符号,其中,M为接收端收到的符号个数。例如,一个文本类对象含有4个数据符号a,b,c和d,编码后冗余数据符号e=aX0Rb,f=cX0Rd。设它被分为两个数据块,则发送的数据包有如下(1,0,1,0;a),(l,O,l,l;b),(l,O,O,O;e),(l,l,l,O;C),(l,l,l,l;d),(l,l,O,O;f)。如果接收端接收到每个数据块的任意两个数据包,则可以通过解码运算得到第三个数据包。如收到(l,O,l,O;a),(l,O,O,O;e),那么对于EDN=1的数据包,可以通过aX0Re=b得到。LT码(LubyTransformCode)是由MichaelLuby提出的用于计算机网络发送容错性数据的一类纠错码,它是一类扩展码,这类码可以生成无穷的冗余信息。它使用一个随机数发生器来独立同分布的从原始符号中生成编码符号。R即tor码是LT码的扩展,它具有线性的编码和解码时间。在Raptor码中可以找到一类子码,该类码具有如下性质对于给定的一个整数k,和一个任意的实数e>0,Raptor码能够生成无穷长度的符号流,而取该符号流中任意的k(l+e)个符号均能以很高的概率正确译码,得到原来的k个符号。R即tor码字的生成量可以很大,而接收的码字仍然只需要和原始数据约等即可。发送端不断的发送新生成的编码符号,接收端接收到其中的任意K个编码符号都可以恢复初始的K个数据符号。本发明实施例中,R即tor码用载荷类型、数据块号和随机选择的编码序号来区分编码符号,其映射是唯一的。可见,为满足单向数据传输的可靠性需求,本发明实施例提出构造基于不同传输内容的多级前向纠错编码体系结构(即RS和R即tor级联编解码的多级前向纠错编码体系结构),将传输数据根据其属性进行分类,增强了数据传输端到端的重构能力,从而达到有效提高单向网络通信质量的目标。本发明实施例还提供了一种在单向网络中传输数据的装置,如图3所示,所述装置包括发送端301和接收端302,如果待传输原始数据为非连续性媒体信息,则所述发送端301包括分组模块3011,用于将所述原始数据分组为固定长度的数据包;外码编码模块3012,用于对所述分组后的数据包进行外码编码;内码编码模块3013,用于将所述经外码编码后的数据包再进行内码编码;传送模块3014,用于将经内码编码后的数据包送入传输通道;所述接收端302包括判断模块3021,用于根据编码数据的载荷类型判断媒体信息类型,若为非连续性媒体信息,将从传输通道接收到的数据包传送给内码解码模块;内码解码模块3022,用于对接收到的数据包进行内码解码,将经内码解码后的数据包再传送给外码解码模块;外码解码模块3023,用于对接收到的数据包进行外码解码,获得原始数据。本发明实施例还提供了另一种在单向网络中传输数据的装置,如图4所示,所述装置包括发送端401和接收端402,如果待传输原始数据为连续性媒体信息,则所述发送端401包括,分组模块4011,用于将所述原始数据分组为固定长度的数据包;内码编码模块4012,用于对所述分组后的数据包进行内码编码;传送模块4013,用于将经内码编码后的数据包送入传输通道;所述接收端402包括,判断单元4021,根据编码数据的载荷类型判断媒体信息类型,若为连续性媒体信息,将从传输通道接收到的数据包传送给内码解码模块;内码解码模块4022,用于对接收到的数据包进行内码解码,获得原始数据。所述内码为Raptor码,所述外码为RS码。所述非连续性媒体信息包括数据信息、文本信息;所述连续性媒体信息包括音频信息、图像信息、流媒体信息。所述送入传输通道的编码后的数据包括载荷类型、数据块号、编码标识、编码序号和编码符号。对于装置实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。需要说明的是,本发明实施例提供的方法和装置即可以应用于传输层,也可以应用于应用层。需要说明的是,在本文中,术语"包括"、"包含"或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句"包括一个......"限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。权利要求一种在单向网络中传输数据的方法,其特征在于,包括如果待传输原始数据为非连续性媒体信息,在发送端,将所述原始数据分组为固定长度的数据包,对所述分组后的数据包进行外码编码,将所述经外码编码后的数据包再进行内码编码,之后,将经内码编码后的数据包送入传输通道;在接收端,根据编码数据的载荷类型判断媒体信息类型,若为非连续性媒体信息,将从传输通道接收到的数据包进行内码解码,将经内码解码后的数据包再进行外码解码,获得原始数据。2.根据权利要求1所述的方法,其特征在于,如果待传输原始数据为连续性媒体信息,则进一步包括在发送端,将所述原始数据分组为固定长度的数据包,对所述分组后的数据包进行内码编码,之后,将经内码编码后的数据包送入传输通道;在接收端,根据编码数据的载荷类型判断媒体信息类型,若为连续性媒体信息,将从传输通道接收到的数据包进行内码解码,获得原始数据。3.根据权利要求1或2所述的方法,其特征在于,所述内码为R即tor码,所述外码为RS码。4.根据权利要求1或2所述的方法,其特征在于,所述非连续性媒体信息包括数据信息、文本信息;所述连续性媒体信息包括音频信息、图像信息、流媒体信息。5.根据权利要求1或2所述的方法,其特征在于,所述送入传输通道的编码后的数据包括载荷类型、数据块号、编码标识、编码序号和编码符号。6.—种在单向网络中传输数据的装置,其特征在于,所述装置包括发送端和接收端,如果待传输原始数据为非连续性媒体信息,则所述发送端包括分组模块,用于将所述原始数据分组为固定长度的数据包;外码编码模块,用于对所述分组后的数据包进行外码编码;内码编码模块,用于将所述经外码编码后的数据包再进行内码编码;传送模块,用于将经内码编码后的数据包送入传输通道;所述接收端包括判断单元,用于根据编码数据的载荷类型判断媒体信息类型,若为非连续性媒体信息,将从传输通道接收到的数据包传送给内码解码模块;内码解码模块,用于对接收到的数据包进行内码解码,将经内码解码后的数据包再传送给外码解码模块;外码解码模块,用于对接收到的数据包进行外码解码,获得原始数据。7.根据权利要求6所述的装置,其特征在于,如果待传输原始数据为连续性媒体信息,则所述发送端包括,分组模块,用于将所述原始数据分组为固定长度的数据包;内码编码模块,用于对所述分组后的数据包进行内码编码;传送模块,用于将经内码编码后的数据包送入传输通道;所述接收端包括,判断单元,根据编码数据的载荷类型判断媒体信息类型,若为连续性媒体信息,将从传输通道接收到的数据包传送给内码解码模块;内码解码模块,用于对接收到的数据包进行内码解码,获得原始数据。8.根据权利要求6或7所述的装置,其特征在于,所述内码为R即tor码,所述外码为RS码。9.根据权利要求6或7所述的装置,其特征在于,所述非连续性媒体信息包括数据信息、文本信息;所述连续性媒体信息包括音频信息、图像信息、流媒体信息。10.根据权利要求6或7所述的装置,其特征在于,所述送入传输通道的编码后的数据包括载荷类型、数据块号、编码标识、编码序号和编码符号。全文摘要本发明公开了一种在单向网络中传输数据的方法和装置,所述方法包括如果待传输原始数据为非连续性媒体信息,在发送端,将所述原始数据分组为固定长度的数据包,对所述分组后的数据包进行外码编码,将所述经外码编码后的数据包再进行内码编码,之后,将经内码编码后的数据包送入传输通道;在接收端,根据编码数据的载荷类型判断媒体信息类型,若为非连续性媒体信息,将从传输通道接收到的数据包进行内码解码,将经内码解码后的数据包再进行外码解码,获得原始数据。应用本发明,增强了数据传输端到端的重构能力,提高了单向网络数据传输的可靠性,从而达到有效提高单向网络通信质量的目标。文档编号H04L12/56GK101702640SQ20091023600公开日2010年5月5日申请日期2009年10月15日优先权日2009年10月15日发明者郭春梅申请人:联想网御科技(北京)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1