用于点对多点传输系统的点对点修复请求机制的制作方法

文档序号:7947489阅读:227来源:国知局
专利名称:用于点对多点传输系统的点对点修复请求机制的制作方法
技术领域
本发明涉及一种用于能够进行点对多点传输的系统的方法、系统、发射机、网元、接收机和软件应用。
背景技术
对于通过系统的诸如互联网协议(IP)多播、IP数据播送(IPDC)以及多媒体广播/多播服务(MBMS)的点对多点服务(也称为一对多服务)来说,诸如多媒体文件下载的文件递送是一项重要的服务。
然而,用于通过诸如文件传送协议(FTP)和超文本传送协议(HTTP)的点对点协议来递送文件的许多特征对于点对多点情境来说是有问题的。特别地,利用诸如传送控制协议(TCP)的类似点对点应答(ACK)协议进行文件的可靠递送,即文件的有保证递送不是切实可行的。
国际工程任务组(IETF)的可靠多播传送(RMT)工作组目前处于对两类错误弹性多播传送协议进行标准化的过程中。在第一分类中,可靠性通过(主动式)前向纠错(FEC)的使用来实施,即,通过发送能够帮助接收机重构错误数据的一定量冗余数据;在第二分类中,可靠性通过使用接收机的反馈来实施。
异步分层编码(ALC)是属于第一分类的协议实例,而面向NACK的可靠多播(NORM)协议属于第二分类。这些协议可在接入网络上使用,该接入网络包括但不限于例如通用移动通信系统(UMTS,包括全球移动通信系统的演进无线接入网(GERAN,Global Systemfor Moblie Communications Evolution Radio Access Network)和UMTS陆地无线接入网(UTRAN,UMTS Terrestrial Radio AccessNetwork))的无线多播接入网络、无线局域网(WLAN)、数字视频广播-陆地(DVB-T)网络和数字视频广播-卫星(DVB-S)网络。
简短地说,ALC协议是一种基于主动式FEC的方案,该方案允许接收机重构被损坏的分组或没有被接收到的分组。ALC协议在多个信道上使用FEC编码,允许发送方以多个速率(信道)向可能的不同种类的接收机发送数据。此外,ALC协议使用拥塞控制机制在不同的信道上维持不同的速率。
因为不需要上行链路信令,所以ALC协议在用户数目方面是整体可缩放的。因此,任意数量的额外接收机不会对系统提出更进一步的需求。然而,ALC协议不是100%可靠的,因为接收是没有保障的,因此通常不描述其是鲁棒的。
接着,NORM规定使用否定应答(NACK)消息以便用信号指定预计到达接收机的哪个数据分组根本没有在接收机处接收到,或没有被正确地接收到。换句话说,接收机使用NACK消息向发射机指示传输数据分组的丢失或破坏。因此,从数据传输中丢失一些数据分组的接收机可发送NACK消息到发射机(或修复服务器)以请求发射机(或修复服务器)重传丢失的一个或多个数据块。NORM协议还可选地允许使用数据分组级FEC编码以便进行主动式的鲁棒性传输。
NACK消息一般不是NORM专用的,但是,它们还可结合其他协议或系统使用,例如结合支持由基于单向传送的文件递送(FLUTE)协议所控制的会话的系统。
FLUTE是在FEC和ALC构建块上构建的一对多传送协议。该协议旨在用于通过单向系统从发射机到接收机的文件递送。其具有使其适于无线点对多点系统的特定作用。在由上述的IETF的RMT工作组所准备的标题为“FLUTE-File Delivery over UnidirectionalTransport(FLUTE-基于单向传送的文件递送协议)”(互联网草案)的公开物中更加详细地描述了该FLUTE协议的细节。
FLUTE的使用例如由第三代合作伙伴(3GPP)规定以用于MBMS系统会话中的文件下载。FEC可能用于或可能不用于这种FLUTE会话中。不管怎样,不是会话中的所有接收机都能够被期望当在会话结束时接收整个文件。为此,3GPP处于定义点对点修复会话的过程中,其中允许接收机经由NACK消息向发射机或修复服务器发送关于数据分组重传的请求,以便能够重构下载的内容。
当结合FLUTE会话(或在使用尤其针对支持点对多点传输的传送层协议的其他会话中)使用NACK消息时,在接收机处丢失的数据分组的标识是一项重要问题。使用旨在进行例如TCP的点对点传输的协议以及它们的应当方法在这里不是必定可实行的。
在FLUTE会话中,诸如多媒体文件或其部分的传送对象由传送对象标识符(TOI)进行标识,并且在传送会话中从发射机传输到多个接收机,该传送会话由传送会话标识符(TSI)进行标识。所述传送对象的传输实际上由FLUTE数据分组的传输来执行,其中FLUTE数据分组包括所述传送对象的原始部分或编码部分,即所谓的编码符号,作为净荷。所述FLUTE数据分组进一步包括TSI和TOI以及FEC净荷ID,将在下面对其进行解释。
RMT工作组所规定的各种FEC方案建立在源块和编码符号结构的基础上。这种FEC方案在RFC出版物3452“Forward ErrorCorrection Building Block”和RFC出版物3695“Compact ForwardError Correction(FEC)Schemes”中被描述。每个编码符号可由它的源块号(SBN)和它的编码符号ID(ESI)进行标识。所有的这些FEC方案假设在每个传送对象中SBN顺序地逐一递增,并且假设在源块中,对于每个被传输的编码符号ESI逐一递增。SBN和ESI都包括在FLUTE数据分组中包含的FEC净荷ID中。
在这些FEC方案中,在接收机处根本没有接收到或没正确接收到的FLUTE数据分组的标识可通过它们的SBN和ESI来完成,这些SBN和ESI包括在FLUTE数据分组的FEC净荷IF中。接着这些参数可作为NACK被发送回发射机以使得重传这些经标识的数据分组。
然而,M.Luby的出版物“Simple Forward Error Correction(FEC)Schemes”(互联网草案)引入FEC方案,该方案使用更为简单的FEC净荷ID并且能够在不使用任何显式源块结构的情况下递送对象。这些FEC方案例如可以使用诸如路比(Luby)变换(LT)或Raptor码的低速率码。
LT编码器(参见在计算机科学基础论文集(FOCS)ACM学报(Proceedings of the ACM Sumposium on Fundations of ComputerScience)中M.Luby的“LT-codes”)传输编码比特流,该编码比特流是k个数据比特的稀疏随机线性组合。接收机拾取编码比特的噪声形式并且使用信度传播解码器来试图计算出k个数据比特。成功解码所需的噪声编码比特的数目n取决于信道的质量和类型。使用“鲁棒性孤立子程度分布(robust soliton degree distribution)”设计的LT码可获得在每个二元删除信道(BEC,binary erasure channel)上的容量。换句话说,对于每个删除几率p,得到的R=k/n可任意地接近(1-p)。
Raptor编码(参见2003年6月Digital Fountain公司的技术出版物DF2003-06-001中A.Shokrollahi的“Raptor codes”)的关键思想是放宽所有的输入符号需要被恢复的条件。如果LT码仅需要恢复其输入符号的常量部分,则考虑到线性时间编码,其解码图仅需要具有O(k)个边(edge)。通过将传统校正码与LT码连接,所有的输入符号依然可以被恢复。接着通过利用(k,n)删除校正块码对k个输入符号进行编码可获得n个中间输入符号,其中该删除校正块码能够从中间符号的固定部分恢复所有的输入符号。接着利用LT码对n个中间符号进行编码,该LT码可以从它的输出符号恢复所需的中间符号部分。
针对这些FEC方案提出的FEC净荷ID包括4字节的密钥,通过该密钥生成解码图。SBN不包括在该FEC净荷ID中,并且在这种情况下,ESI意味着携带诸如所述4字节密钥的标识符。
此外,密钥由FEC编码器随机生成。因此,接收机可能无法从它在会话中接收到的其他数据分组的密钥中识别出丢失的数据分组。作为结果,在这些FEC方案中,由它们的关联SBN和ESI对丢失的FLUTE数据分组所进行的标识是不适用的。

发明内容
鉴于上述的问题,需要一种改进的方法、系统、发射机、网元、接收机和软件应用以在能够进行点对多点传输的系统中进行数据分组传输。
提供了一种用于在能够进行点对多点传输的系统中传输数据分组的方法,该方法包括从发射机传输一个或多个数据分组到一个或多个接收机,其中在所述接收机的至少一个特定接收机处需要对修复数据分组进行接收;以及,发送修复信息到修复服务器以触发所述修复数据分组的传输,其中所述修复信息包括与在所述特定接收机处正确接收到的传输数据分组的数目相关的信息。
所述系统可表示任何的无线或有线系统,其中数据分组从至少一个发射机传输到一个或多个接收机。所述传输可以是广播传输,其中所有的接收机由所述发射机寻址;或是多播传输,其中仅所有接收机的子群由所述发射机寻址。所述系统例如可以在UMTS、LAN、WLAN、DVB-T或DVB-S的环境中部署,并且可旨在向多个接收机分发诸如多媒体文件的内容。所述一个或多个数据分组的所述传输可在单向或双向的传输链路上执行。
所述传输的数据分组例如可涉及将要被传送到所述接收机的内容。该内容可被分段并被处理以允许到所述接收机的传输,而所述数据分组将被理解为该分段和处理的结果。例如,所述数据分组可以是FLUTE数据分组,该数据分组的净荷可通过对诸如多媒体文件的传送对象的FEC编码来获得。在这种情况下,所述FLUTE数据分组的所述净荷例如可以是编码符号或编码分组。
至少在一个所述接收机(其被称为特定接收机)处,需要接收修复数据分组,这可以归因于多种原因,例如传输数据分组的不正确接收或丢失。所述特定接收机可在所述数据分组的传输期间或在数据分组传输完成以后意识到需要接收修复数据分组。
所述修复数据分组例如可以是没有被所述特定接收机接收到的传输数据分组的简单副本。同样,它们在编码和实际内容方面可以不同。例如,如果使用低速率FEC编码,当生成修复数据分组时可应用不同的密钥。因此修复数据分组可服务于下列目的,即向所述特定接收机提供所述特定接收机所需的一定量信息。
为了触发来自所述修复服务器的修复数据分组的传输,所述特定接收机向所述修复服务器发送修复数据信息。这可发生在点对点传送中。因此修复服务器能够生成合适的修复数据分组并且将它们传输到特定接收机。该传送例如可以是点对点传送。
根据本发明,提出该修复信息包括与在所述特定接收机处正确接收到的传输数据分组的数目相关的信息。其中,术语“正确接收到”可以这样的一种方式来理解,即接收机能够使用包括在所述接收到的数据分组中的信息以便进一步处理并且不需要丢弃该数据分组。这例如可基于包括在数据分组中的检验和来确定。该建议背后的基本原理是,对于某种FEC编码技术(其可用于从在所述发射机和所述一个或多个接收机之间的所述点对多点传送中实际待被传送的数据对象生成所述数据分组),对数据分组的最小数目的接收足够使得接收机能够重构所述数据对象本身。例如,如果数据对象被编码成N个数据分组,那么在接收机处可仅需要L<N个数据分组以能够重构所述数据对象。其中,此外可以不需要接收L个特定数据分组,而仅接收N个数据分组中的L个不同数据分组。因此为了使得修复服务器能够生成修复数据分组,关于在所述特定接收机处有多少数据分组被正确接收的信息,连同关于FEC编码技术的进一步的结构性信息是足够的。
相比较于现有技术,所述特定接收机所需的数据分组的确切标识(例如根据关于某个传送对象和某个传送会话的SBN和ESI)不再需要发送回所述修复服务器,这极大地减小了修复会话中遇到的信令开销。
根据本发明的方法的优选实施方式,由于在所述特定接收机处的至少一个所述传送数据分组的丢失或不正确接收,所以需要所述修复数据分组。这例如可以由传输信道的衰减、延迟、失真或加性噪声所导致。同样,在所述特定接收机处根本不接收部分或全部所述传输数据分组。
根据本发明的方法的进一步的优选实施方式,所述传输数据分组与数据对象相关。例如,所述数据分组可以包括原始形式或编码形式的部分所述数据对象。
根据本发明的方法的优选实施方式,需要所述修复数据分组在所述特定接收机处重构所述数据对象的至少一个。例如,可能发生这样一种情形,即在特定接收机已经接收它重构当前正在下载的整个传送对象所需的所有数据分组之前,所述发射机终止数据分组的传输。然后,在所述特定接收机处丢失的数据分组可以是此前实际上没有被所述发射机所传输的数据分组。
根据本发明的方法的进一步的优选实施方式,所述数据对象可以是传送对象,并且所述修复信息包括所述传送对象之一的标识符。所述传送对象例如可以是(多媒体)文件或其部分。
根据本发明的方法的进一步的优选实施方式,所述数据对象是传送对象的部分,并且所述修复信息包括所述部分之一的标识符以及相应传送对象的标识符。所述传送对象例如可以是由所述接收机所下载的(多媒体)文件。所述传送对象可被分段成多个部分,例如传送对象的源块,接着其表示所述数据对象。然后根据所述部分(源块),可以生成所述数据分组,例如通过将所述源块进行FEC编码为N个数据分组。接着有利地提供所述部分的标识符(例如其SBN)和相应传送部分的标识符(例如其TOI),从而基于关于在所述特定接收机处接收到关于传送对象的源块的多少数据分组的信息,修复服务器可确定需要将多少关于所述传送对象的所述源块的修复数据分组传输到所述特定接收机。也可以将传送对象分段成若干合成源块结构,并且接着所述传送对象的所述部分的所述标识符可以标识所述合成源块结构之一以及包括在其中的源块。
根据本发明的方法的进一步的优选实施方式,所述传送对象涉及传送会话,并且所述修复信息包括所述传送会话的标识符。可以在同一个传送会话中传输多个传送对象,并且还可以存在若干并发的传送会话。
根据本发明的方法的进一步的优选实施方式,所述修复信息包括在所述特定接收机处正确接收到的传输数据分组的数目。
根据本发明的方法的进一步的优选实施方式,所述修复信息包括在所述特定接收机处没有正确接收到的传输数据分组的数目。如果所述特定接收机额外知道传输的或所需的数据分组的整体数目,则只要可以从正确接收到的数据分组的所述数目中将其确定,没有正确接收到的数据分组的数目就与正确接收到的数据分组的数目相关。
根据本发明的方法的进一步的优选实施方式,所述数据分组和所述修复数据分组通过前向纠错编码而从所述数据对象中生成。所述数据分组例如可通过立即对所述完整的数据对象进行编码或通过对其进行分段编码来生成。其中,术语“编码”被理解为这样的任何技术,即,对原始数据添加冗余,以简化对由于传输信道引入的破坏造成的编码数据的破坏进行的检测和/或纠正。
根据本发明的方法的进一步的优选实施方式,所述编码至少部分地基于包括在所述数据分组和修复数据分组中的编码密钥。所述密钥可能需要用于对所述数据分组进行解码。所述密钥例如可以是二进制伪随机密钥。
根据本发明的方法的进一步的优选实施方式,所述前向纠错编码具有这样的属性,即与一个数据对象相关的所有传输数据分组的仅一个子集必须由接收机正确地接收以便能够重构所述数据对象。例如,如果在对所述数据对象(或其部分)进行编码的过程中生成N个数据分组,可以仅需要L<N个正确接收到的数据分组以重构所述数据对象(或其部分)。然而,对额外数据分组的接收可以有助于增加重构的质量。
根据本发明的方法的进一步的优选实施方式,所述修复服务器至少部分地基于所述发送的修复信息来确定需要将多少修复数据分组传输到所述特定接收机以使得其能够重构所述数据对象,生成所述修复数据分组并将所述修复数据分组至少传输到所述特定接收机。所述确定例如可基于从特定接收机发送的被正确接收到的数据分组的数目、所述数据对象的大小(例如依据所述数据对象被分段得到的部分的数目)、以及类似接收开销的参数,其指示超出正确重构数据对象所需的数据分组的最小量的多少数据分组应该提供给接收机。
根据本发明的方法的进一步的优选实施方式,所述前向纠错至少部分基于LT码。
根据本发明的方法的进一步的优选实施方式,所述前向纠错至少部分地基于Raptor码。
根据本发明的方法的进一步的优选实施方式,所述到一个或多个接收机的一个或多个数据分组的传输至少部分地由针对单向点对多点传送的基于会话的协议来控制。
根据本发明的方法的进一步的优选实施方式,所述到一个或多个接收机的一个或多个数据分组的传输至少部分地由单向传送文件递送协议(File Delivery Over Unidirectional Transport protocol)来控制。而所述数据分组可以例如是FLUTE协议的协议数据单元。
根据本发明的方法的进一步的优选实施方式,所述修复信息的所述发送在所述特定接收机和所述修复服务器之间的点对点会话中执行。
根据本发明的方法的进一步的优选实施方式,所述修复信息的所述发送至少部分地由超文本传送协议来控制。
根据本发明的方法的进一步的优选实施方式,超文本传送协议的GET或POST方法用于所述修复信息的所述发送。
根据本发明的方法的进一步的优选实施方式,从所述修复服务器到所述特定接收机的所述修复数据分组的所述传输在点对点会话中执行。
根据本发明的方法的进一步的优选实施方式,所述系统是根据第三代合作伙伴计划的标准的多媒体广播/多播系统。
进一步提出了一种用于传输数据分组的系统,其中所述系统能够进行点对多点传输,该系统包括发射机、一个或多个接收机和修复服务器,其中一个或多个数据分组从所述发射机传输到所述接收机,其中在所述接收机的至少一个特定接收机处,需要对修复数据分组进行接收,其中修复信息被发送到所述修复服务器以触发所述修复数据分组的传输,并且其中所述修复信息包括与在所述特定接收机处正确接收到的传输数据分组的数目相关的信息。
进一步提出了一种能够进行点对多点传输的系统中的发射机,该发射机包括设置成向一个或多个接收机传输一个或多个数据分组的装置,其中在所述接收机的至少一个特定接收机处,需要对修复数据分组进行接收,其中修复信息被发送到修复服务器以触发所述修复数据分组的传输,并且其中所述修复信息包括与在所述特定接收机处正确接收到的传输数据分组的数目相关的信息。所述发射机可与所述修复服务器共同定位或甚至一致。
根据本发明的发射机的优选实施方式,所述传输数据分组与数据对象相关,该所述发射机进一步包括设置成通过前向纠错编码从所述数据对象中生成所述数据分组的装置。
进一步提出了一种能够进行点对多点传送的系统中的网元,其中一个或多个数据分组从发射机传输到一个或多个接收机,并且其中在所述接收机的至少一个接收机处,需要对修复数据分组进行接收;所述网元包括设置成接收发送到所述网元的修复信息以触发所述修复数据分组的传输的装置,其中所述修复信息包括与在所述特定接收机处正确接收到的传输数据分组的数目相关的信息。所述网元可与所述发射机共同定位或甚至一致,并且所述网元例如可以是修复服务器。
根据本发明的网元的优选实施方式,所述传输数据分组与数据对象相关,所述修复数据分组通过前向纠错编码从所述数据对象中生成,所述前向纠错编码具有这样的属性,即与一个数据对象相关的所有传输数据分组的仅一个子集必须由接收机正确地接收以便能够重构所述数据对象,并且所述网元包括用于确定的装置,该装置至少部分地基于所述发送的修复数据而确定需要将多少修复数据分组传输到所述特定接收机以使得其能够重构所述数据对象;用于生成所述修复数据分组的装置;以及用于将所述修复数据分组至少传输到所述特定接收机的装置。
根据本发明的网元的进一步的优选实施方式,所述传输数据分组与数据对象相关,并且所述网元进一步包括设置成通过前向纠错编码从所述数据对象中生成所述修复数据分组的装置。
进一步提出一种在能够进行点对多点传输的系统中的接收机,该接收机包括设置成接收从发射机传输到一个或多个接收机的一个或多个数据分组的装置,其中至少在所述接收机处,需要对修复数据分组进行接收,以及用于将修复信息发送到修复服务器以触发所述修复数据分组的传输的装置,其中所述修复信息包括与在所述接收机处正确接收到的传送数据分组的数目相关的信息。
进一步提出可在能够进行点对多点传送的系统的接收机中执行的软件应用,该软件应用包括用于使得接收机接收从发射机传输到一个或多个接收机的一个或多个数据分组的程序代码,其中至少在所述接收机处,需要对修复数据分组进行接收;以及用于使得接收机发送修复信息到修复服务器以触发所述修复数据分组的传输的程序代码,其中所述修复信息包括与在所述接收机处正确接收到的传送数据分组的数目相关的信息。
软件应用也可以是计算机程序产品,该产品包括存储在介质上的程序代码,该介质例如是存储器。
结合以下描述的实施方式,本发明的这些和其他方面将是明显的并且得到阐明。


图中示出图1根据针对MBMS文件下载的Raptor码规范将传送对象编码成一系列的数据分组的示意图;图2a根据本发明的点对多点系统的示意图,其中数据分组从发射机传送到多个接收机;图2b根据本发明的点对多点系统的示意图,其中特定接收机将修复信息发送回修复服务器;图2c根据本发明的点对多点系统的示意图,其中修复服务器将修复数据分组传输到特定接收机;以及图3根据本发明的在点对多点系统中接收数据分组和修复数据分组的方法的示例性流程图。
具体实施例方式
作为初始说明,应该注意到本专利申请的介绍部分的主题可用于支持该详细的描述。
本发明提出,将与在点对多点数据分组传输系统中的特定接收机处正确接收到的数据分组的数目相关的信息发送回修复服务器以触发所述特定接收机所需的修复数据分组的传输。这考虑到特别有效的信息反馈,该信息反馈使得修复服务器能够确定哪些修复数据分组需要被传输到所述特定接收机。当通过经由例如LT码或Raptor码的低速率码对传送对象进行FEC编码而生成所述数据分组时,该方法是特别有益的。
图1示意性的示出在使用N个编码密钥2-1...2-N情况下,将尺寸为3MB(MBMS文件下载的典型尺寸)的传送对象1FEC编码成N个编码分组3-1...3-N的序列,其中该FEC编码对应于用于MBMS文件下载的Raptor码规范(参见3GPP出版物Tdoc S4-040230“Raptor Code Specification for MBMS file download”,SA4#31,蒙特利尔,加拿大,2004年5月17-21日)。然后,通过所述FEC编码(特别地,一个或多个编码符号30-i)所获得的编码分组3-1...3-N的部分可例如用作FLUTE数据分组的净荷,以下将进行更为详细的描述。
图1中可由TOI标识的传送对象1仅代表在TSI所标识的传送会话中从发射机传输到多个接收机的多个传送对象中的一个。根据图1,传送对象1由16个源块10-1...10-16组成,其中这些源块中的每一个由K=6144个32字节的源符号组成,其针对源块10-1被示例性标记为100-1...100-6144。每个源块10-1...10-16具有的尺寸为32字节乘以6144。
对整个传送对象1进行的FEC编码可通过将传送对象1与K×N矩阵进行矩阵相乘来实现,该矩阵的列由6144×1的二进制编码密钥构成,其中编码密钥“1”被示意性地表示为黑色区域而“0”被示意性地表示为白色区域。所述N个不同的编码密钥例如可代表二进制伪随机码,但同样也可以更为仔细地进行选择。
所使用的编码密钥的数目N大于K并且确定接收机的开销。随着N增大,从该组编码符号3-1...3-N中正确重构传送对象1的可能性增大。
通过执行上述的矩阵相乘,得到N个编码分组3-1...3-N,其中每个编码分组的尺寸是512个字节。从施加在编码分组中的不同阴影可以容易地看出每个编码分组分别包括16个编码符号,例如编码分组30-1...30-16针对编码符号3-1。还可以看出编码符号30-1受源块10-1的所有元素的影响,还受编码密钥2-1影响。类似地,编码符号30-2受源块10-2的所有元素和编码密钥2-1的影响。因此,编码密钥2-1作为密钥31包括在编码分组3-1中,并且类似地,其他的编码密钥2-1...2-N分别地包括在N个编码分组3-2...3-N中。其中,包括不必然意味着图1所示的整个二进制密钥被包括在编码分组中。更有效的是,通过相应的4个字节的标识来标识相应的编码密钥2-1...2-N,对于编码分组3-1,该标识在图1中作为密钥31示例性地示出。所述标识例如可以与适于创建所需的编码密钥的移位寄存器等的状态相关。
每个编码分组3-i仅取决于一个编码密钥2-i,这种事实不应该造成这样的印象,即基于单个编码分组的整个源块的去耦合解码将是可能的。实际上,从图1中可以看到,一个源块10-i的信息包括在所有编码分组3-1...3-N的相应编码符号中。为了正确地解码源块10-i,由于低速率码字的属性,必须处理至少K个编码分组。对大于K个(例如所有N个)编码符号的处理提高了解码的质量。还可以容易地看出,当足够的(大于K)编码分组可用于解码时,不仅一个源块10-i可被解码,而且所有的源块10-1..10-16都可被解码。因此,当大于K的编码分组可用于解码时,则整个传送对象1可被重构。
当在有损传输信道上使用低速率码字时使用了该原理。当传送对象(其源块由K个源符号构成,每个源符号如图1中所示)被编码成N个编码分组时,接收机不必正确接收所有的N个编码分组以便能够重构传送对象1。另外,甚至不需要编码分组的某序列的接收或编码分组的时间相邻块的接收,因为编码密钥中的信息(同样也包括在每个编码分组中)足以使用接收到的数据分组以对传送对象进行解码。
为了确保在接收机处有足够的编码分组可用,正如本发明所提出的,将正确接收到的数据分组的数目(其对应于正确接收到的编码分组的数目,因为在这种情况下每个数据分组包含一个作为净荷的编码分组)发送到修复服务器,接着该服务器负责另外的编码分组(修复数据分组)的生成,这些另外的编码分组在它们被正确接收后,使得接收机对所述传送对象进行解码。由至少所述正确接收到的数据分组的数目(在这种情况下对应于正确接收到的编码分组的数目)构成的所述修复请求信息优选地进一步包括TSI和TOI,以允许对传送会话的标识,以及如果存在几个传送对象,则允许对需要修复数据分组的传送对象的标识。此外,修复请求还可包括发射机的IP地址。这之所以需要是因为同一个服务器可用作针对多个发射机的优选修复服务器。在这种情况下,修复请求可能也必须要提到发射机的IP地址。因此发射机的IP地址和TSI唯一地标识了一个会话。
在图1中,整体传输块1被分段成源块10-1...10-10,利用相同的编码密钥2-1...2-N对其进行联合编码以获得编码分组3-1...3-N。需要理解的是,如果每个FLUTE数据分组包括整个的编码分组3-i,则在由于丢失的数据分组引起的特定接收机的修复请求的情况下,修复服务器必须生成完整的编码分组3-i。然而,将传送块分段成源块是有利的,以便有助于在接收机的解码器处利用小的快速存储器来解码,即接收机的快速存储器仅需要每次保持对应于一个源块的编码符号。此外,解码器可重复恢复每个源块的过程中的相同步骤,因为它接着从在接收到的序列中共享完全相同位置的编码符号中进行解码。
相比而言,如果每个FLUTE数据分组仅包含每个编码分组(例如图1中的3-1)的编码符号(例如图1中的30-1),那么在丢失数据分组的情况下,只需要生成包括编码符号的修复数据分组而不需生成整个编码分组。然而,这可能需要每个FLUTE数据分组的FEC净荷ID中的SBN的附加指示以便能够标识编码符号所相关的源块。接着每个FLUTE数据分组报头例如包括TSI、TOI、SBN和密钥标识符,并且在FLUTE数据分组丢失或不正确的接收的情况下,除了已经正确接收到的FLUTE数据分组的数目以外,特定的接收机可能必须进一步包括丢失数据分组中的编码符号所涉及的传送对象的源块的SBN。接着修复服务器仅针对由SBN在修复信息中所指示出的源块生成新的编码符号。
如果源文件太大以致其无法适合图1中所示出的合成源块结构,则可能必须要将源文件分段成多于一个的合成源块结构。在这种情况下,修复请求可能也必须要包括合成源块结构ID。接着每个FLUTE数据分组例如可包括TSI、TOI、合成SBN和密钥标识符,并且在丢失FLUTE数据分组或不正确接收FLUTE数据分组的情况下,除了已经正确接收到的FLUTE数据分组的数目(在这种情况下对应于正确接收到的编码符号的数目)以外,特定接收机还可能必须包括丢失FLUTE数据分组中的编码符号所涉及的传送对象的源块的合成SBN。接着修复服务器仅针对由合成SBN在修复信息中所指示出的合成源块生成新的编码符号。
上面提到的将整个编码分组的编码符号或仅仅将单个的编码符号集成到FLUTE数据分组的可能性都是是本发明所着眼的。
图2a给出关于在点对多点传输方案中发射机4和接收机5-1的功能组件的概观,其中FLUTE数据分组(携带编码分组的所有编码符号或仅携带单个的编码符号作为上述的净荷)被传输到多个接收机5-1...5-3。
发射机4包括到例如互联网的网络6的接口40,并因此能够访问由该网络所提供的并且将在广播/多播会话中被分布到所述接收机5-1...5-3的内容。然后这样的内容例如可以存储在所述发射机的存储器41中。为了能够传输这样的内容,由调制和编码实例42执行对所述内容进行编码和调制。由所述实例42执行的操作完成由ISO/OSI协议栈的不同协议层所施加的需求。特别地,在实例42中执行基于传送对象的FEC编码生成FLUTE数据分组以获得作为FLUTE数据分组的净荷(每个数据分组一个或几个);以及,定义FLUTE数据分组的报头字段(例如包含TSI、TOI和FEC净荷ID(在对应于4个字节的密钥标识符和可能的SBN的低速率FEC编码的情况下))。接着实例42输出由实例43传输的调制信号,实例43用作到无线或有线(例如,光)传输信道的接口。发射机4的所有实例40、41、42和43由控制单元44控制。
在此处被看作是特定接收机的接收机5-1处,经由实例50接收调制的信号,该调制的信号接着被馈送到在功能上对应于发射机4的编码和调制实例42的解调和解码实例51。特别地,调制的信号被解调,并且检查FLUTE数据分组是否被正确地接收到。这例如可由低于FLUTE层的协议层通过校验和或类似技术来完成。如果确定FLUTE数据分组被正确地接收到,则所述实例51中的计数器510增加。所述解调和解码实例51也用作接收到的FLUTE数据分组的缓冲器,并且如果已经接收到足够的FLUTE分组,则执行FLUET数据分组的解码以重构期望的传送对象,接着其可被存储在接收机5-1的存储器52中。所述接收机5-1进一步包括具有与发射机4的调制和编码实例44类似功能的调制和编码实例53,以及用作到传输信道的接口的实例54。所有实例50、51、52、53和54由控制实例55控制。
图2b示出在如图2a中示出的数据分组的传输期间或传输完成之后在修复服务器7和特定接收机5-1之间建立的点对点修复会话。为此,接收机5-1检查计数器510以确定是否已经接收到足够的FLUTE数据分组来重构传送对象。如果不是这样,则控制器55使得由调制和编码实例53生成修复请求消息(类似于NACK消息),该修复请求消息包括修复信息,例如TSI、TOI、由所述计数器510所计数的正确接收到的数据分组的数目以及可能的SBN。所述修复请求消息的生成所使用的协议栈至少部分不同于所述点对多点传输所使用的协议栈,例如可使用HTTP。所述修复请求消息例如可以采取下面的形式GEThttp://www.website.com/greatmusic/numberl.mp3?mbms-re16-FLUTErepair&TSI=123&TOI=456&NumRxedPkts=5432HTTP/1.1在该GET消息中,修复服务器、TSI(123)、TOI(456)和正确接收到的数据分组的数目被包含为修复消息。MBMS服务器(发射机)的IP地址(或URL)也可包括在修复请求消息中。
可选地,例如POST的其他HTTP方法可用于请求丢失的数据分组。例如,下面的POST消息等效于上述表示的GET消息。
POSThttp://www.website.com/greatmusic/HTTP/1.1Fromsubscriber10@provider.comContent-Typeapplication/x-www-form-url-encodedContent-Length56numberl.mp3&mbms-re16-FLUTE-repair&TSI=123&TOI=456&
NumRxedPkts=5432该修复请求消息接着经由实例54传输到修复服务器7,其中该修复请求消息经由实例70接收,并且在实例71中被解调和解码,该实例71向特定接收机5-1中的实例53提供反向的功能,如果需要,则该修复请求消息存储在存储器72中。所述修复服务器7进一步包括调制和编码实例73、传输实例74和到网络6的接口75。修复服务器的所有实例由控制实例76控制。
最后,图2c示出当修复服务器7响应于图2b中发送的所述修复请求消息,传送FLUTE修复数据分组到所述特定接收机5-1时的情形。为此,修复服务器评估经由HTTP从特定接收机5-1接收到的修复信息,并且确定需要生成多少数据分组并且传送到所述特定接收机以重构所述传送对象。修复服务器7从它的存储器或经由接口75从网络6提取所述传送对象或其部分,并且对如图1中所示出的所述传送对象或其部分执行FEC编码以获得用作FLUTE修复数据分组的净荷的编码符号,其中一个或若干个编码符号可用作数据分组的净荷。修复服务器7可例如基于传送对象1的列的数目(图1中的变量K)、接收开销、以及由特定接收机在其修复请求消息中发送的正确接收到的FLUTE数据分组的数目,确定针对每个(TSI、TOI和可能的SBN)对象的FLUTE修复数据分组的数目M。接着修复服务器7生成一组M个密钥并且生成相应的编码符号,接着这些将被嵌入到FLUTE修复数据分组(作为一个或几个编码符号),经由实例73和74调制并传输到所述特定接收机5-1。
在所述接收机5-1处,包括FLUTE修复数据分组的调制的信号接着经由实例50接收并在实例51中被处理以确定数据分组是否被正确接收。如果已经正确接收到足够的FLUTE数据分组或修复数据分组,则可由所述实例51对传送对象进行重构并存储在存储器52中以便进一步的处理。
图3示出用于在点对多点系统中的接收机处接收数据分组的示例性流程图。在第一步骤801中,分组计数器被设置成零,例如为了开始接收关于新的传送对象的数据分组。接着在步骤802中,接受由发射机传送到多个接收机的数据分组。在步骤803中,检查每个单个的接收数据分组是否正确。如果正确,则在步骤804,分组计数器被增加一,否则,该增加将被略过。接着在步骤805中,检查数据分组的传输是否完成。如果没有完成,则本方法跳回到接收数据分组的步骤802。否则,在步骤806中,通过比较分组计数器是否等于或大于数据分组的最小所需数目来检查是否接收到足够的数据分组。如果接收到足够的数据分组,则在步骤807中,对接收到的数据分组进行解码以获得期望的传送对象。如果没有接收到足够的数据分组,则必须通过在修复请求消息中发送修复信息到修复服务器来启动修复会话,该修复信息至少包括修复请求消息中的分组计数器和可能的SBN,并且优选地进一步包括TSI和TOI。接着修复服务器基于所述发送的修复信息开始传送修复数据分组,从而接收机跳回到接收修复数据分组的步骤802。该进程将持续直到在所述接收机处接收到足够数据分组,如步骤806中所检测到的。
通过优选实施方式对本发明进行描述。应该注意到存在对于本领域技术人员显而易见的可选方式和变形并且可以在不背离所附权利要求书的范围和精神的情况下被实施。
权利要求
1.一种用于在能够进行点对多点传输的系统中传输数据分组的方法,该方法包括-从发射机传输一个或多个数据分组到一个或多个接收机,其中在所述接收机的至少一个特定接收机处需要对修复数据分组进行接收;以及-发送修复信息到修复服务器以触发所述修复数据分组的传输,其中所述修复信息包括与在所述特定接收机处正确接收到的传输数据分组的数目相关的信息。
2.根据权利要求1所述的方法,其中,由于在所述特定接收机处至少一个所述传输数据分组的丢失或不正确接收,需要所述修复数据分组。
3.根据权利要求1所述的方法,其中,所述传输数据分组与数据对象相关。
4.根据权利要求3所述的方法,其中,需要所述修复数据分组以便在所述特定接收机处重构至少一个所述数据对象。
5.根据权利要求3所述的方法,其中,所述数据对象是传送对象,并且其中,所述修复信息包括一个所述传送对象的标识符。
6.根据权利要求3所述的方法,其中,所述数据对象是传送对象的部分,并且其中,所述修复信息包括所述部分之一的标识符以及相应传送对象的标识符。
7.根据权利要求5所述的方法,其中,所述传送对象与传送会话相关,并且其中,所述修复信息包括所述传送会话的标识符。
8.根据权利要求3所述的方法,其中,所述修复信息包括在所述特定接收机处正确接收到的传送数据分组的数目。
9.根据权利要求3所述的方法,其中,所述修复信息包括在所述特定接收机处没有正确接收到的传送数据分组的数目。
10.根据权利要求3所述的方法,其中,所述数据分组和所述修复数据分组通过前向纠错编码从所述数据对象中生成。
11.根据权利要求10所述的方法,其中,所述编码至少部分地基于包括在所述数据分组和修复数据分组中的编码密钥。
12.根据权利要求10所述的方法,其中,所述前向纠错编码具有这样的属性,即与一个数据对象相关的所有传送数据分组的仅一个子集必须由接收机正确地接收以便能够重构所述数据对象。
13.根据权利要求12所述的方法,其中,所述修复服务器至少部分地基于所述发送的修复信息来确定需要将多少修复数据分组传输到所述特定接收机以使得其能够重构所述数据对象,生成所述修复数据分组并至少将所述修复数据分组传输到所述特定接收机。
14.根据权利要求10所述的方法,其中,所述前向纠错至少部分地基于LT码。
15.根据权利要求10所述的方法,其中,所述前向纠错至少部分地基于Raptor码。
16.根据权利要求1所述的方法,其中,到一个或多个接收机的一个或多个数据分组的所述传输至少部分地由针对单向点对多点传送的基于会话的协议来控制。
17.根据权利要求1所述的方法,其中,到一个或多个接收机的一个或多个数据分组的所述传输至少部分地由单向传送文件递送协议来控制。
18.根据权利要求1所述的方法,其中,所述修复信息的所述发送在所述特定接收机和所述修复服务器之间的点对点会话中执行。
19.根据权利要求1所述的方法,其中,所述修复信息的所述发送至少部分地由超文本传送协议来控制。
20.根据权利要求19所述的方法,其中,超文本传送协议的GET或POST方法用于所述修复信息的所述发送。
21.根据权利要求1所述的方法,其中,从所述修复服务器到所述特定接收机的所述修复数据分组的所述传输在点对点会话中执行。
22.根据权利要求1所述的方法,其中,所述系统是根据第三代合作伙伴计划的标准的多媒体广播/多播系统。
23.一种用于传送数据分组的系统,其中所述系统能够进行点对多点传输,包括-发射机;-一个或多个接收机;以及-修复服务器,其中一个或多个数据分组从所述发射机传输到所述接收机,其中在所述接收机的至少一个特定接收机处,需要对修复数据分组进行接收,其中修复信息被发送到所述修复服务器以触发所述修复数据分组的传输,并且其中所述修复信息包括与在所述特定接收机处正确接收到的发送数据分组的数目相关的信息。
24.一种在能够进行点对多点传输的系统中的发射机,包括-设置成向一个或多个接收机传输一个或多个数据分组的装置,其中在所述接收机的至少一个特定接收机处,需要对修复数据分组进行接收,其中修复信息被发送到修复服务器以触发所述修复数据分组的传输,并且其中所述修复信息包括与在所述特定接收机处正确接收到的传输数据分组的数目相关的信息。
25.根据权利要求24所述的发射机,其中,所述传输数据分组与数据对象相关,进一步包括-设置成通过前向纠错编码从所述数据对象中生成所述数据分组的装置。
26.一种在能够进行点对多点传送的系统中的网元,其中一个或多个数据分组从发射机传输到一个或多个接收机,并且其中在所述接收机的至少一个接收机处,需要对修复数据分组进行接收,所述网元包括-设置成接收发送到所述网元的修复信息以触发所述修复数据分组的传输的装置,其中所述修复信息包括与在所述特定接收机处正确接收到的传输数据分组的数目相关的信息。
27.根据权利要求26所述的网元,其中所述传输数据分组与数据对象相关,其中所述修复数据分组通过前向纠错编码从所述数据对象中生成,并且其中所述前向纠错编码具有这样的属性,即与一个数据对象相关的所有传输数据分组的仅一个子集必须由接收机正确地接收以便能够重构所述数据对象,所述网元包括-用于确定的装置,该装置至少部分地基于所述发送的修复数据而确定需要将多少修复数据分组传输到所述特定接收机以使得其能够重构所述数据对象;-用于生成所述修复数据分组的装置;以及-用于将所述修复数据分组至少传输到所述特定接收机的装置。
28.根据权利要求26所述的网元,其中,所述传送的数据分组与数据对象相关,进一步包括-设置成通过前向纠错编码从所述数据对象生成所述修复数据分组的装置。
29.一种在能够进行点对多点传输的系统中的接收机,包括-设置成接收从发射机传输到一个或多个接收机的一个或多个数据分组的装置,其中至少在所述接收机处,需要对修复数据分组进行接收;以及-用于将修复信息发送到修复服务器以触发所述修复数据分组的传输的装置,其中所述修复信息包括与在所述接收机处正确接收到的传送数据分组的数目相关的信息。
30.一种在能够进行点对多点传送的系统的接收机中执行的软件应用,该软件应用包括-用于使得接收机接收从发射机传输到一个或多个接收机的一个或多个数据分组的程序代码,其中至少在所述接收机处,需要对修复数据分组进行接收;以及-用于使得接收机发送修复信息到修复服务器以触发所述修复数据分组的传输的程序代码,其中所述修复信息包括与在所述接收机处正确接收到的传送数据分组的数目相关的信息。
全文摘要
本发明涉及一种用于能够进行点对多点传输的系统的方法、系统、发射机、网元、接收机和软件应用,其中从发射机传输一个或多个数据分组到一个或多个接收机,其中在所述接收机的至少一个特定接收机处需要对修复数据分组进行接收,其中发送修复信息到修复服务器以触发所述修复数据分组的传输,其中所述修复信息包括与在所述特定接收机处正确接收到的传输数据分组的数目相关的信息。所述系统例如可以是3GPP多媒体广播/多播系统,所述数据分组的所述传输至少部分地由单向传送文件递送协议来控制,并且所述修复信息的所述发送例如可以由超文本传送协议来控制。
文档编号H04L1/18GK1973476SQ200580020399
公开日2007年5月30日 申请日期2005年7月27日 优先权日2004年7月30日
发明者拉马克里施纳·维丹撒姆, 达维德·莱昂, 伊戈尔·屈尔西奥, 罗德·沃尔什 申请人:诺基亚公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1