CN103650399A - 纠正数据单元的自适应生成 - Google Patents

纠正数据单元的自适应生成 Download PDF

Info

Publication number
CN103650399A
CN103650399A CN201280034933.1A CN201280034933A CN103650399A CN 103650399 A CN103650399 A CN 103650399A CN 201280034933 A CN201280034933 A CN 201280034933A CN 103650399 A CN103650399 A CN 103650399A
Authority
CN
China
Prior art keywords
packet
data
correction
fec
data flow
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201280034933.1A
Other languages
English (en)
Other versions
CN103650399B (zh
Inventor
R.瓦芬
S.V.安德森
M.尼尔森
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Technology Licensing LLC
Original Assignee
Microsoft Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Microsoft Corp filed Critical Microsoft Corp
Publication of CN103650399A publication Critical patent/CN103650399A/zh
Application granted granted Critical
Publication of CN103650399B publication Critical patent/CN103650399B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0041Arrangements at the transmitter end
    • H04L1/0042Encoding specially adapted to other signal generation operation, e.g. in order to reduce transmit distortions, jitter, or to improve signal shape
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/0001Systems modifying transmission characteristics according to link quality, e.g. power backoff
    • H04L1/0015Systems modifying transmission characteristics according to link quality, e.g. power backoff characterised by the adaptation strategy
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/0001Systems modifying transmission characteristics according to link quality, e.g. power backoff
    • H04L1/0009Systems modifying transmission characteristics according to link quality, e.g. power backoff by adapting the channel coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/0001Systems modifying transmission characteristics according to link quality, e.g. power backoff
    • H04L1/0015Systems modifying transmission characteristics according to link quality, e.g. power backoff characterised by the adaptation strategy
    • H04L1/0019Systems modifying transmission characteristics according to link quality, e.g. power backoff characterised by the adaptation strategy in which mode-switching is based on a statistical approach
    • H04L1/002Algorithms with memory of the previous states, e.g. Markovian models
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/0078Avoidance of errors by organising the transmitted data in a format specifically designed to deal with errors, e.g. location
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/0078Avoidance of errors by organising the transmitted data in a format specifically designed to deal with errors, e.g. location
    • H04L1/0079Formats for control data
    • H04L1/008Formats for control data where the control data relates to payload of a different packet

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Quality & Reliability (AREA)
  • Artificial Intelligence (AREA)
  • Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

用于生成涉及数据流的多个数据分组的纠正数据单元的方法、设备以及计算机程序产品,每个纠正数据单元是基于所述数据流的数据分组的集合的,其中所述数据流用于在有损通信信道之上从发送器传输到接收器。针对所述纠正数据单元中的每一个的生成,基于所述数据流,要被优化的性能量度被选择。所述性能量度涉及所述数据流的丢失的数据分组的恢复。对所述纠正数据单元中的每一个的所述生成的编码要求被确定。针对所述纠正数据单元中的每一个的所述生成,在所确定的编码要求的约束内并且基于至少一个先前生成的纠正数据单元确定所述数据流的数据分组中的哪些要包括在所述纠正数据单元的所述生成将基于的集合中以便从而优化所选择的性能量度。所述纠正数据单元中的每一个都基于所述数据流的所述数据分组的相应集合而被生成。所生成的纠正数据单元被包括在所述数据流中。

Description

纠正数据单元的自适应生成
技术领域
本发明涉及纠正数据。特别地,本发明涉及生成涉及数据流的多个数据分组的纠正数据单元。
背景技术
存在其中数据流在通信信道之上被从发送器发送到接收器的许多情形。通信信道可以存在于许多不同的可能网络中的一个(或多个)中。例如,通信信道可以存在于互联网中或者存在于诸如移动电信网络之类的无线网络中。数据流中的数据可以被划分成数据分组以用于在通信信道之上传输。用于将数据划分成数据分组的协议(例如,数据分组的头部的形式和其它这种实施方案细节)可能取决于数据将在其上被发送的通信信道的性质,例如,数据分组将通过其被发送的网络的类型。数据可以在从发送器传输之前被编码器编码以及于在接收器处接收之后被解码器解码。
在理想的系统中,通信信道是无损耗的以便在通信信道之上从发送器发送的每个数据分组在接收器处被接收。然而,在真实的物理系统中,通信信道可能是有损的,意味着经发送的数据分组中的一些在通信信道上将被丢失并且因此将在接收器处未被接收到。这可能是有害的。纠正方案能够被用来帮助在接收器处恢复丢失的数据分组中的至少一些。
作为例子,前向错误纠正(FEC)是能够被用来与通信信道中的分组丢失斗争的一个纠正方案。附加于原始数据分组,FEC产生冗余数据(作为FEC数据单元),并且将FEC数据单元包括在被在通信信道之上发送的数据流中。冗余FEC数据单元可以被放置在它们自己的分组中,与数据流中的数据分组分开。替换地,或者附加地,FEC数据单元可以被附加(或者“背负”)到数据流中的原始数据分组。当原始数据分组中的一些在通信信道中被丢失时,成功地到达的FEC数据单元和成功地到达的数据分组能够被用来恢复丢失的数据分组(中的至少一些)。也就是说,与通信信道中的实际分组丢失相比,FEC减少了由接收器的解码器所看到的分组丢失。
图1a、1b以及1c说明了FEC数据单元可以如何被生成的三个例子。如图1a中所说明的那样,FEC数据单元104可以作为数据流的原始数据分组102的准确拷贝被生成。通过将数据分组102和FEC数据单元104两者包括在数据流中,数据分组102中的数据被发送两次。因此,如果数据分组102在传输期间被丢失但FEC数据单元104被成功地接收,则数据分组102中的数据能够在接收器处被成功地恢复(使用FEC数据单元104)。如图1b中所说明的那样,模块108可以被用来生成FEC数据单元110,其是以较低位速率编码的原始数据分组106的拷贝。如果数据分组106在传输期间被丢失但FEC数据单元110被成功地接收,则数据分组106中的数据能够在接收器处基于FEC数据单元110而被至少部分地恢复。应指出,如果数据分组102和106具有相同的大小(例如,相同数目的位),则FEC数据单元110将比FEC数据单元104具有较小的大小(例如,较少的位)。因此,尽管FEC数据单元104在恢复数据分组102时比FEC数据单元110在恢复数据分组106时可能是更有用的,但是生成如图1b中所示出的FEC数据单元可能是有益的,因为数据单元110针对数据流在通信信道上使用比FEC数据单元104使用的更少的可用位速率。如图1c中所说明的那样,混合模块118可以被用来从多个原始数据分组(例如,数据分组112、114以及116)生成FEC数据单元120。有限域(Galois域)算术可以被用来组合原始数据分组。例如,混合模块118可以确定应用于三个数据分组112、114以及116的异或(XOR)函数的逐位结果以便生成FEC数据单元120。在另一方法中,数据分组112、114以及116使用Galois域GF(28)算术被逐字节组合以生成FEC数据单元120。在这个意义上,FEC数据单元120是组合或混合原始数据分组112、114以及116的结果。如果数据分组112、114以及116中的一个在传输期间被丢失了但其它两个数据分组和FEC数据单元120被成功地接收,则丢失的数据分组中的数据能够在接收器处被成功地恢复(使用其它两个数据分组和FEC数据单元120)。
因此能够看到,FEC数据单元可以以许多不同的方式被生成。不同的FEC方案描述了FEC数据单元将以其被生成的不同方式。FEC方案可以描述涉及FEC数据单元的生成的因素,诸如:被生成的FEC数据单元的数目;哪些数据分组被用来生成FEC数据单元;FEC数据单元如何被发送(例如,作为单独的分组或通过将FEC数据单元附加到数据分组);以及FEC数据被放置在数据流中的地方。FEC方案的丢失-恢复性能描述了FEC方案在接收器处使用FEC数据单元来恢复丢失的数据分组的能力。
一般地,增加数据流中FEC数据单元的数目提高了FEC方案的丢失-恢复性能。然而,增加数据流中FEC数据单元的数目以位速率效率为代价。如果原始数据分组的编码位速率被保持不变,则(例如,通过增加数据流中FEC数据单元的数目)增加的冗余导致增加的总位速率。替换地,如果在通信信道上可用于数据流的总位速率被约束,则(例如,通过增加数据流中FEC数据单元的数目)增加的冗余以原始数据分组的降低的编码位速率为代价。因此目标是使FEC的丢失-恢复性能的冲突因素与数据流的位速率效率平衡。
用于设计适当的FEC方案的一类算法是基于从通信理论获知的错误纠正和纠删(erasure)码的。这种码的一个例子是里德-所罗门(Reed-Solomon)码。所述码根据FEC可以在其中操作的特定场景被设计,以便如果丢失的数据分组的数目不超过预定最大值则确保所有丢失的数据分组的恢复。
用于设计适当的FEC方案的另一类算法是基于训练的。训练被离线执行。给定信道条件以及针对FEC数据单元的编码要求(例如,(i) 设置数据流中冗余数据相对于原始数据的比值的FEC开销,例如数据流中FEC数据单元的数目相对于原始数据分组的数目的比值,以及(ii) FEC深度,其在能够被每个FEC数据单元保护(或者组合到每个FEC数据单元中)的最旧的数据分组与最新的数据分组之间设置数据流中的最大容许位移),原始数据分组的最佳组合/混合被训练成在优化窗口内针对丢失-恢复性能进行优化。因为有关的信道条件、FEC开销以及FEC深度的数目可能是高的,所以被训练方案的数目也可能是高的。
上面所描述的用于设计适当的FEC方案的算法的类别确定用于在优化窗口内使用的适当的FEC方案。也就是说,FEC方案针对优化窗口而被设置以优化FEC在优化窗口期间的性能。优化窗口可以是时间的长度(例如,十秒),或者优化窗口可以是数据流的数据分组的数目(例如,一百个数据分组)。在优化窗口的末期,FEC方案可以针对下一个优化窗口再次被设置。
发明内容
本发明人已经认识到,针对被生成的每个纠正数据单元来优化纠正方案能够是有益的。以这种方式,纠正方案能够总是对于它正在其中操作的当前条件被优化。
根据本发明的第一方面,提供了一种生成涉及数据流的多个数据分组的纠正数据单元的方法,每个纠正数据单元是基于数据流的数据分组的集合的,所述数据流用于在有损通信信道之上从发送器传输到接收器,所述方法包括:针对所述纠正数据单元中的每一个的生成,基于数据流,选择要被优化的性能量度,所述性能量度涉及数据流的丢失的数据分组的恢复;确定针对所述纠正数据单元中的每一个的生成的编码要求;针对所述纠正数据单元中的每一个的生成,在所述确定的编码要求的约束内并且基于至少一个先前生成的纠正数据单元来确定数据流的数据分组中的哪些要包括在纠正数据单元的生成将基于的集合中以便从而优化所选择的性能量度;基于数据流的数据分组的相应集合来生成所述纠正数据单元中的每一个;以及将所生成的纠正数据单元包括在数据流中。
在优选实施例中,有利地,关于数据分组中的哪些要包括在每个纠正数据单元的生成将基于的集合中的确定针对每个纠正数据单元被动态(即,实时地)执行。换句话说,所述方法可以动态地确定数据流的数据分组中的哪些要包括在每个纠正数据单元的生成将基于的集合中。这允许每个纠正数据单元的生成基于当前条件被优化。也就是说,它允许所选择的性能量度针对被生成的每个纠正数据单元被优化。每个纠正数据单元的生成将基于的数据分组的集合可以包括数据流的数据分组中的一个或多个。
纠正数据单元可以根据任何适合的已知纠正方案被生成。例如,纠正数据单元可以根据前向错误纠正(FEC)方案被生成。FEC数据单元可以通过组合原始数据分组而被形成。对于每个FEC数据单元来说,原始数据分组的最佳组合可以被动态决定。例如当FEC数据单元是数据单元的拷贝时,“组合”可以包括数据分组中的仅一个。“组合”可以包括数据分组中的一个以上。最佳组合可以基于通信信道上的当前信道条件并且基于较早地发送的FEC数据单元而被决定,以便在编码要求的约束内优化所选择的性能量度。根据本文中所描述的优选实施例来生成FEC数据单元对于变化的信道条件、FEC开销要求以及FEC深度要求提供高度的灵活性。优选实施例同样允许性能量度被改变,使得随着条件改变FEC数据单元能够被生成以优化不同的性能量度。要被优化的性能量度的选择允许对于数据流中的不同类型的数据的源相关错误纠正和不均匀保护。因为性能量度的选择针对每个纠正数据单元的生成被执行,所以性能量度能够被迅速地改变,从而在性能量度的选择中允许高水平的灵活性。
在优选实施例中,每个FEC数据单元的生成(例如,原始数据分组的组合)基于当前信道条件和先前生成的FEC数据单元而被优化。在优选实施例中,每个FEC数据单元的选择被动态完成。在优选实施例中,每个新的FEC数据单元的生成能够被立即适配成适合变化的信道条件、FEC开销以及FEC深度要求,并且适配成适合对将被优化的性能量度的改变。
与其中FEC方案针对优化窗口被设置的上面所描述的现有技术系统相比,优选实施例在优化FEC数据单元的生成时有利地提供了更大的灵活性。优选实施例允许FEC数据单元的生成针对被生成的每个FEC数据单元被优化。优选实施例因此能够立即对变化的信道条件、编码要求或选择的性能量度起反应。当信道条件、编码要求或选择的性能量度正在迅速地改变时,优选实施例因此是特别有用的,因为FEC数据单元的生成能够被动态(即,实时地)优化以便立即对改变起反应。在现有技术中,FEC数据单元的生成针对优化窗口被设置,使得FEC方案不会立即对发生在优化窗口内的对于信道条件、编码要求或选择的性能量度的改变起反应。
采用现有技术的里德-所罗门码,最佳码针对FEC开销或FEC深度要求的有限数目的组合被定义,使得在所定义的组合之外存在少的灵活性来适应于对这些编码要求的改变。此外,里德-所罗门码提供少的灵活性以便被扩展到源相关FEC。采用现有技术的被训练系统,优化窗口使得这种方法有可能迅速地适应于变化的信道条件以及FEC开销和FEC深度要求。这些问题能够被用本文中所描述的方法来克服。
所述方法可以包括,针对所述纠正数据单元中的每一个的生成,确定通信信道上的当前信道条件,其中确定数据流的数据分组中的哪些要包括在针对纠正数据单元中的每一个的所述集合中的所述步骤是进一步基于针对该纠正数据单元的生成所确定的当前信道条件的。当前信道条件可以包括以下各项中的至少一个:(i) 在通信信道之上发送的数据分组的当前丢失概率;(ii) 在通信信道之上发送的数据分组的丢失突发性的当前量度;(iii) 在通信信道上的当前拥塞;以及(iv) 在通信信道上经历的干扰。当前信道条件可以由吉尔伯特(Gilbert)模型来描述,并且所述方法可以进一步包括:从接收器接收指示数据流的数据分组中的哪些已被成功地接收的反馈信息;基于所接收到的反馈信息来重置吉尔伯特模型的状态概率;以及使用吉尔伯特模型及时传播状态概率以便获得状态概率在当前时间的估计以用于在确定通信信道上的当前信道条件时使用。
所述编码要求可以是针对所述纠正数据单元中的每一个的生成的当前编码要求。编码要求可以包括深度,所述深度在数据分组中的最旧的与最新的数据分组之间设置数据流中的最大容许位移,所述数据分组被允许被包括在纠正数据单元基于的所述集合中的同一个内。编码要求可以包括开销,所述开销设置在数据流中包括的纠正数据单元中的数据量与在数据流中包括的数据分组中的数据量之间的比值。
所选择的性能量度可以包括以下各项中的至少一个:(i) 不能够被恢复的丢失的数据分组的数目;(ii) 在优化窗口内所述数据分组的非恢复概率的和;(iii) 在优化窗口内所述数据分组的被求平方的非恢复概率的和;(iv) 在优化窗口内所述数据分组的加权的非恢复概率的和,其中非恢复概率被加权以便为不同的数据分组提供不同的丢失灵敏度。所选择的性能量度在它被最小化时可以被优化。
所生成的纠正数据单元可以作为与数据流的数据分组分开的分组被包括在数据流中。替换地,将所生成的纠正数据单元包括在数据流中的步骤可以包括将纠正数据单元附加到数据流的数据分组中的至少一些。
在优选实施例中,所述纠正数据单元是前向错误纠正数据单元。
根据本发明的第二方面,提供了一种用于生成涉及数据流的多个数据分组的纠正数据单元的设备,每个纠正数据单元是基于数据流的数据分组的集合的,所述数据流用于在有损通信信道之上从发送器传输到接收器,所述设备包括:选择装置,用于针对所述纠正数据单元中的每一个的生成基于数据流来选择要被优化的性能量度,所述性能量度涉及数据流的丢失的数据分组的恢复;编码要求确定装置,用于确定针对所述纠正数据单元中的每一个的生成的编码要求;数据分组确定装置,用于针对所述纠正数据单元中的每一个的生成,在所述确定的编码要求的约束内并且基于至少一个先前生成的纠正数据单元来确定数据流的数据分组中的哪些要包括在纠正数据单元的生成将基于的集合中以便从而优化所选择的性能量度;生成装置,用于基于数据流的数据分组的相应集合来生成所述纠正数据单元中的每一个;以及包括装置,用于将所生成的纠正数据单元包括在数据流中。
在优选实施例中,所述设备进一步包括信道条件确定装置,其用于针对所述纠正数据单元中的每一个的生成来确定通信信道上的当前信道条件,其中所述数据分组确定装置被配置成基于针对该纠正数据单元的生成所确定的当前信道条件来确定数据流的数据分组中的哪些要包括在针对纠正数据单元中的每一个的集合中。
根据本发明的第三方面,提供了一种用于生成涉及数据流的多个数据分组的纠正数据单元的计算机程序产品,每个纠正数据单元是基于数据流的数据分组的集合的,所述数据流用于在有损通信信道之上从发送器传输到接收器,并且所述计算机程序产品被体现在非暂时性计算机可读介质上并且被配置成当在发送器的处理器上被执行时执行本文中所描述的方法。
附图说明
为了更好地理解本发明以及示出本发明可以如何被付诸实施,现将通过例子对以下图进行参考,在图中:
图1a说明了FEC数据单元可以如何被生成的第一例子;
图1b说明了FEC数据单元可以如何被生成的第二例子;
图1c说明了FEC数据单元可以如何被生成的第三例子;
图2示出了根据优选实施例的通信系统;
图3是在根据优选实施例的通信系统中正被发送的数据流的表示;
图4是示出了数据分组在根据优选实施例的通信系统中的传输的时序图;
图5是根据优选实施例的针对生成纠正数据单元的过程的流程图;
图6是示出了根据优选实施例的用于生成纠正数据单元的功能模块的示意图;以及
图7是表示吉尔伯特模型的示意图。
具体实施方式
现将仅通过例子对本发明的优选实施例进行描述。
参考图2,现描述了根据优选实施例的通信系统200。通信系统200包括发送器202、网络208以及接收器210。发送器202包括用于处理数据的处理器204和用于存储数据的存储器206。类似地,接收器210包括用于处理数据的处理器212和用于存储数据的存储器214。
在操作中,发送器能够(例如,使用处理器204)处理数据(例如,从存储器206检索的数据)以便形成包括多个数据分组的数据流。该处理可以牵涉对用于根据任何已知协议传输的数据进行编码。用于将数据编码并且打包成数据流的方法在本领域内是已知的,并且因此在本文中未被详细地描述。数据流然后能够通过网络208在通信信道之上被发送到接收器210。用于通过网络在通信信道之上发送数据流的方法在本领域内是已知的,并且因此在本文中未被详细地描述。接收器210然后能够(例如,使用处理器212)处理所接收到的数据分组以便检索数据。该处理可以牵涉对来自数据流的数据进行解包和解码。数据可以被存储在接收器处的存储器214中,或者从接收器210输出例如给用户。数据流中的数据可以涉及发送器202的用户与接收器210的用户之间的实时通信事件(诸如,语音呼叫或视频呼叫)。替换地,数据流中的数据可以涉及发送器202与接收器210之间的诸如文件传送之类的数据传送。数据流中的数据可以是任何其它适合类型的数据。
网络208可以是具有在发送器202与接收器210之间提供通信信道的能力的任何适合的网络。网络208可以是广域网(WAN)或局域网(LAN)。作为例子,网络208可以是内联网、互联网或诸如移动电话网络之类的电话网络。发送器202和接收器210可以在任何适合的设备或装置中被实施以用于分别在网络208上发送和接收数据流。例如,发送器202和接收器210可以被实施为诸如具有连接到网络208的能力的个人计算机或电话之类的用户装置,或者被实施为诸如网络中的服务器节点之类的其它装置。
图3示出了正被在通信系统200中从发送器202向接收器210发送的数据流302的表示。数据流302包括在图3中被标记1至8的八个数据分组。为了清楚,仅八个数据分组在图3中被示出,但数据流可以包括比八个多得多的数据分组。如图3中所示,数据流同样包括FEC数据单元(被标记“FEC”)。在图3中,FEC数据单元被示出为与数据流中的数据分组分开的分组。然而,FEC数据单元可以被附加到(或者“背负(piggybacked)”)到数据分组。当FEC数据单元被附加到数据分组时,FEC数据单元不需要它们自己的分组格式化,诸如分组头部,并且因此FEC数据单元所需要的数据流中的数据量可以被略微降低。然而,将FEC数据单元附加到数据分组意味着如果数据分组丢失,则被附加到该丢失的数据分组的FEC数据单元也丢失。附加到数据分组的FEC数据单元保护除它被附加到的数据分组外的其它数据分组。
如上面(例如,与图1a至1c有关地)所描述的那样,FEC数据单元基于数据流的数据分组的集合而被生成。该集合可以包括一个或多个数据分组。FEC数据单元可以例如是原始数据分组的准确拷贝(如图1a中所说明的那样)、或以较低位速率编码的原始数据分组的拷贝(如图1b中所说明的那样)、或原始数据分组的组合/混合(如图1c中所说明的那样)。有限域(Galois域)算术可以被用来组合原始数据分组。在一个方法中,数据分组使用按位异或(XOR)操作而被逐位组合,所述操作被定义为(0 XOR 0) = (1 XOR 1) = 0和(0 XOR 1 ) = (1 XOR 0) = 1。在另一方法中,数据分组使用Galois域GF(28)算术被逐字节组合。这样,FEC数据单元可以通过组合数据分组中的两个或更多个而被生成。
通过网络208的通信信道是有损的,意味着数据流中数据分组中的一些在从发送器202到接收器210的传输期间将丢失。FEC数据单元能够在接收器210处被用来恢复在传输期间被丢失的数据分组。术语“丢失的数据分组”包括在传输期间被损坏无法修复的数据分组以及在传输期间被丢失的数据分组。
如上面所描述的那样,用于生成FEC数据单元的方案设置要被生成的FEC数据单元的数目并且确定在生成FEC数据单元时使用数据分组中的哪些。FEC方案的丢失-恢复性能描述了丢失的数据分组能够在接收器处使用FEC数据单元被恢复到的程度。FEC方案的丢失-恢复性能主要取决于在FEC方案中使用的FEC开销和FEC深度。
FEC开销描述了相对于原始数据量的冗余数据量(例如,相对于原始分组的数目的FEC分组的数目)。较高的开销通常提高FEC方案的丢失-恢复性能。另一方面,较高的开销以位速率效率为代价。如果原始数据的编码位速率被保持不变,则增加的冗余导致增加的总位速率。替换地,如果总位速率被约束,则增加的冗余以原始数据的降低的编码位速率为代价。作为例子,对于被用来生成图3中所示出的数据流302的FEC方案,FEC开销是25%。这是因为存在八个数据分组和两个FEC分组。对于这个计算,假定FEC分组中的数据量与数据分组本身中的数据量相同。
FEC深度描述了能够被FEC数据单元保护(即,组合到FEC数据单元中)的数据分组(包括两个最旧的与最新的数据分组)中的最旧的与最新的数据分组之间的位移。换句话说,它描述了能够被组合到FEC数据单元中的原始数据分组的最大数目。较高的深度为FEC数据单元提供了数据分组的不同组合的更多可能性,从而实现FEC方案的例如对于变化信道条件(conditions)的较高灵活性。在一个极端例子中,在FEC数据单元被约束成为一个原始数据分组的拷贝的情况下,较高的深度提供了在时间上针对原始数据及其拷贝(FEC数据单元)的较大分离的概率。这在突发的分组丢失条件下是有利的,因为它最小化了在通信信道上突发地丢失原始数据分组和拷贝(FEC数据单元)两者的概率。作为例子,如果用来生成图3中所示出的数据流302的FEC方案的FEC深度是五,则在数据分组7与8之间示出的FEC分组可能是基于被标记3、4、5、6以及7的数据分组中的任何一个或多个的。
FEC深度与传输中的延迟相关。FEC数据单元组合先前生成的原始数据分组,并且因此在发送器202处不存在通过使用FEC所引起的附加的算法延迟。然而,为了在接收器210处重建丢失的数据分组,我们在接收器210处假定延迟,因为FEC数据单元比它基于的数据分组被更晚地生成和发送。这能够在图4中所示出的时序图中看到。图4示出了其中数据流的数据分组(402、404以及406)中的三个被用来生成FEC数据单元408的情形。直到数据分组402、404以及406中的所有三个都已被生成了,FEC数据单元才能够被生成。因此,数据分组402和404在FEC数据单元408在发送器202处被生成之前将被从发送器202发送。因此,FEC数据单元408能够被发送的最早时间是紧接在数据分组406之后。这个场景在图4中被示出。数据分组和FEC数据单元的传输花了某个有限的时间量。图4描绘了数据分组402在通过网络208在有损通信信道上的传输期间的丢失(410)。然而,数据分组404和406以及FEC数据单元408在接收器210处全部被成功地接收。数据分组404和406以及FEC数据单元408能够被用来在接收器210处恢复丢失的数据分组402。然而,直到数据分组404和406以及FEC数据单元408中的全部三个已在接收器210处被接收到,丢失的数据分组402才能够被恢复。因此,如图4中所示,在数据分组402在接收器210处应该已被接收(如果它尚未丢失)的时间与该数据分组能够使用FEC数据单元408被恢复的时间之间存在对于数据分组402的FEC恢复所需要的延迟。例如在语音呼叫或视频呼叫中,如果数据流中的数据将在它被接收时被实时地从接收器210输出,则这个延迟可能是有害的。在其它实施例中,例如,当数据将被存储在接收器210处的存储器214中时(例如,当数据流涉及发送器202与接收器210之间的文件传送时),则所述延迟可能不是那么有害的。因此,不同类型的数据流可以具有不同的延迟要求,其定义在恢复丢失的数据分组之前可接受的最大延迟。如果对数据流的延迟要求不满足,则丢失的数据分组402在FEC数据单元408的到达之前将被宣布为在接收器210处不可解码的。这将很可能使FEC方案的性能显著地下降。
然而,这个延迟不需要必定在接收器处通过FEC作为附加的延迟被引入。例如,所需要的延迟可能在接收器210处已经存在。在接收器210处的延迟的一个可能原因是抖动缓冲器的存在。抖动缓冲器将延迟引入到数据流中以便减轻分组到达时间中的随机变化(抖动)。如果FEC数据单元408在数据分组402将被从抖动缓冲器输出的时间之前被接收(它在传输期间尚未丢失),则恢复数据分组402而不在接收器210处引入超过并且高于已经由抖动缓冲器所引入的延迟的任何额外延迟也许是可能的。FEC深度应该被选择以便保持丢失的数据分组与FEC数据单元之间的延迟,所述FEC数据单元能够被用来在接收器210处在延迟要求内恢复丢失的数据分组。因此,对于实时数据传输(例如,视频呼叫或音频呼叫)来说,FEC深度可以被设置为相对低的数,然而对于发送器202与接收器210之间的诸如文件传送之类的数据传送来说,FEC深度可以被设置为相对高的数以便较好地应付通信信道上的突发丢失条件。
参考图5和6,现描述根据优选实施例的生成FEC数据单元的方法。
在步骤S502中,性能量度被选择以便被优化。性能量度是FEC方案的丢失-恢复性能的量度。丢失-恢复性能量度的例子是:
(i) 能够被恢复的丢失的数目;
(ii) 和∑p i ,其中p i 是第i个数据分组的非恢复概率。所述和包括优化窗口内的原始数据分组;
(iii) 和∑(p i )2。再次,所述和包括优化窗口内的原始数据分组。对非恢复概率求平方更严厉地惩罚较高的非恢复概率(即,界外值);以及
(iv) 和∑w i p i ,其中w i 是应用于第i个数据分组的非恢复概率的权重。权重描述了对于不同数据分组的丢失的不同的重要性或灵敏度的水平。再次,该和包括优化窗口内的原始数据分组。使用这样的加权性能量度的FEC方案被称为源相关FEC或不均匀错误保护FEC,因为提供给不同数据分组的保护是不同的。这允许更大的保护的水平被提供用于数据流的更重要的数据分组(例如,来自特定应用或用户的数据分组或具有更大重要性的数据分组,例如,不同的音频数据分组和不同的视频数据分组可以具有由FEC方案提供给它们的不同的保护的水平)。以这种方式,数据分组能够在FEC方案中具有不同的优先级别。
优化窗口可以是上面所描述的和在其上被计算的数据流中的数据分组的数目或时间的长度。
在步骤S504中,通信信道上的当前条件被确定。这个步骤能够包括确定以下各项中的一个或多个:(i) 在通信信道之上发送的数据分组的当前丢失概率;(ii) 在通信信道之上发送的数据分组的丢失突发性的当前量度;(iii) 在通信信道上的当前拥塞;以及(iv) 在通信信道上经历的干扰。最适合的FEC方案取决于通信信道的当前信道条件。
在步骤S506中,FEC开销和FEC深度要求被确定。如上面所描述的那样,对于FEC数据单元的生成的这些编码要求根据所期望的FEC方案的属性被确定。例如,如果数据流是实时通信数据流,则相对于当数据流是文件传送时FEC深度被降低。作为另一例子,如果数据流的位速率效率比FEC方案的丢失-恢复性能更重要,则FEC开销可以被降低。
性能量度在步骤S502中的选择被用来确定哪些信道条件将在步骤S504中被确定(例如,计算所选择的性能量度所需要的条件被确定)。在知道在步骤S502中选择的性能量度和在步骤S504中确定的信道条件情况下,FEC开销和FEC深度因此能够在步骤S506中被确定。
在步骤S508中,确定数据流的数据分组中的哪些要包括在下一个FEC数据单元将基于的数据分组的集合中。这个步骤考虑所确定的当前信道条件(来自步骤S504)、所确定的编码要求(例如FEC开销和FEC深度要求(来自步骤S506))以及要被优化的性能量度的选择(来自步骤S502)。步骤S508中的确定确保FEC数据单元在FEC方案的编码要求的约束内被生成。步骤S508中的确定考虑当前信道条件以便优化在步骤S502中被选择的性能量度。在所选择的性能量度是上面标记为(ii)、(iii)或(iv)的那些中的一个情况下,优化性能量度可能牵涉最小化相应和的结果。以这种方式,已被选择的非恢复概率和被最小化。如果所选择的性能量度是上面被标记(i)的性能量度,则优化性能量度可能牵涉最大化能够被恢复的丢失的数目。在优化性能量度时,步骤S508同样考虑已被生成并且包括在数据流中的较早的FEC数据单元。通过考虑先前生成的FEC单元,步骤S508能够确定FEC数据单元之间的最佳间隙,并且还能够确保在被生成的多个FEC数据单元之间,令人满意的保护(免于丢失)被提供给数据流的数据分组中的全部。数据分组中的一些可以被一个以上的FEC数据单元保护。这意味着被不同FEC数据单元覆盖的数据流的部分可以重叠。以这种方式,FEC数据单元被选择用于生成,从而说明先前生成的FEC数据单元,所述先前生成的FEC数据单元可能地已经在不同程度上保护了数据流的数据分组中的一些。
在步骤S510中,FEC数据单元基于在步骤S508中已被确定的数据分组的集合而被生成。以这种方式,FEC数据单元的生成被执行以便在步骤S506中确定的编码要求内优化在步骤S502中选择的性能量度。
步骤S508和S510被图6中所示出的模块602执行。模块602可以是被在发送器202处的处理器204执行的软件模块。替换地,模块602可以是在发送器202处实施的硬件模块。如图6中所说明的那样,模块602接收信道条件、FEC开销要求、FEC深度要求、所选择的性能量度以及已被生成的较早的FEC数据单元的指示作为输入。基于这些输入,模块602生成下一个FEC数据单元并且输出FEC数据单元以供包括在数据流中。
在步骤S512中,在步骤S510中被生成的FEC数据单元被包括在数据流中以用于在通信信道之上从发送器202传输到接收器210。如上面所描述的那样,FEC数据单元可以作为单独的分组被包括在数据流中,或者可以被附加或者“背负”到数据流中的数据分组中的一个。包括FEC数据单元的数据流在通信信道上被从发送器202发送到接收器210。当图5中所示出的方法的步骤针对下一个FEC数据单元正被执行时,该数据流能够被发送。
图5中所示出的方法步骤S502至S512针对每个FEC数据单元被重复。通过针对每个FEC数据单元执行诸步骤,FEC数据单元的生成立即适应于变化的条件,诸如通信信道上的变化的信道条件、变化的编码要求以及对将被优化的性能量度的改变。以这种方式,FEC数据单元的生成能够被动态适配,即,实时地动态地适配。
因此能够理解,对于给定信道条件、FEC开销以及FEC深度,用于形成FEC数据单元的原始数据分组的最佳组合/混合的选择能够通过优化所选择的丢失-恢复性能量度而被驱动。给定较早的FEC数据单元,每个FEC数据单元被生成以便基于当前信道条件、FEC开销以及FEC深度来优化性能量度。也就是说,考虑到了能够被新的FEC数据单元保护的原始数据分组中的一些可能已经在一定程度上被较早的FEC数据单元保护了。如上面所描述的那样,新的FEC数据单元可以被生成以便由此最小化性能量度∑pi、∑(pi)2或∑wipi中的一个,其中非恢复概率说明信道条件、较早的FEC分组以及针对新的FEC分组的不同侯选选项。
通过考虑先前的FEC数据单元,每个数据分组已经被先前的FEC数据单元保护到的水平能够被用来确定如何生成下一个FEC数据单元。以这种方式,FEC数据的单元的生成能够针对每个FEC数据单元被动态控制,但还能够确保生成的FEC数据单元组总体上将充分的保护提供给数据流的数据分组中的全部。作为例子,如果数据流中的数据分组中的一个已经被一个或多个先前生成的FEC数据单元保护了,则可以确定下一个FEC数据单元不被要求为该数据分组提供保护。然而,如果例如当前信道条件是差的(例如,在通信信道上存在高的分组丢失),则可以确定即使数据分组已经被先前生成的FEC数据单元保护了,下一个FEC数据单元也应该保护该数据分组。当每个FEC数据单元被生成时,这些决定能够被动态实时地做出。这允许FEC数据单元的生成针对每个FEC数据单元被优化,所述每个FEC数据单元基于先前生成的FEC数据单元被生成。
针对每个FEC数据单元的优化被动态执行。在提供了良好的性能的同时,所提出的方法对于如下提供了高程度的灵活性:
· 变化的信道条件;
· 变化的FEC开销要求;
· 变化的FEC深度要求;以及
· 变化的失真量度(例如,源相关FEC中的变化的灵敏度权重)。
在一个例子中,信道条件通过模型来描述。在一个例子中,模型是吉尔伯特模型,如图7中所说明的那样。吉尔伯特模型通过两个状态(分组丢失704和无丢失702)并且通过由如图7中示出的参数p和q所定义的所述状态之间的转移概率来描述。当确定如何优化FEC方案时,参数p和q可以被考虑到。当分组丢失在通信信道上是高的时(例如,当p>q时),则更多数目的FEC数据单元可能是所希望的以便由此将丢失-恢复性能维持在可接受的水平。相比之下,当分组丢失在通信信道上是低的时(例如,当p<q时),则较低数目的FEC数据单元可能是所希望的以便由此提高数据流的位速率效率。
在一些实施例中,吉尔伯特模型中的状态概率可以基于来自接收器210的反馈信息而被重置。在这个上下文中的反馈信息可以指示特定数据分组已被成功地接收或者可以指示特定数据分组在传输期间被丢失了(或者被接收太迟而不能被认为是被成功地接收)。反馈信息被从接收器210发送到发送器202,并且因此反馈信息可在通信信道上的约一个往返时间(RTT)的时间延迟之后在发送器202处得到。因此,在发送器202处接收到的反馈信息涉及与发送器202当前正处理的数据流中的当前点相比延迟约一个RTT的数据流中的点。因此,吉尔伯特模型被使用,借此,状态概率针对时间点t-RTT被重置(即,取决于反馈信息中的指示,一个状态被设置为0并且另一个被设置为1的概率),其中t是当前时间点。吉尔伯特模型然后被用来将状态概率从时间点t-RTT传播到当前时间点t,以便获得状态概率(在时间t处)的当前估计。在时间t处的估计的状态概率能够在确定通信信道上的当前信道条件时被使用,这继而能够被用在如上面所描述的FEC数据单元的生成中。
在一个例子中,一次可以设计一个以上的FEC数据单元。在这种情况下,少量的FEC分组被共同地优化。这个例子充当FEC数据单元的动态确定与同时地为多个FEC数据单元设置FEC方案之间的折衷。代替在FEC数据单元将被生成时对其的生成做决定,所述方法可以等待直到是时候生成下一个FEC数据单元为止,并且然后同时共同地优化两个数据单元,同时考虑了保护能够被这两个FEC数据单元保护的数据分组的先前的FEC数据单元中的全部。当FEC数据单元的生成能够考虑更多信息时,在以这种方式生成FEC数据单元之前等待可以提高FEC方案的恢复性能。然而,以这种方式等待增加了在生成FEC数据单元时的延迟。因此,关于是否像上面所描述的那样在生成FEC数据单元之前等待的决定是延迟与改进的恢复性能之间的折衷。这个决定能够被动态做出。在这个意义上,公共性能量度针对多个FEC数据单元的生成被选择,并且公共编码要求针对多个FEC数据单元的生成被确定。然后,针对所述多个FEC数据单元的生成,共同地确定数据流的数据分组中的哪些要包括在所述多个FEC数据单元中的每一个的生成将基于的相应集合中,以便从而在所确定的公共编码要求的约束内并且基于至少一个先前生成的FEC数据单元来优化所选择的公共性能量度。
在上面所描述的优选实施例中,被使用的纠正方案是FEC方案。在其它实施例中,其它类型的纠正方案可以被使用,其生成不是FEC数据单元的纠正数据单元。
发送原始数据中的全部和冗余FEC数据的FEC方案被称作系统性FEC方案。不发送原始数据中的全部的FEC方案被称作非系统性方案。在后者的情况下,经发送的数据流中的数据的总量仍然高于数据流中的原始数据量(在FEC数据的生成之前),以便从而提供了冗余。为了简单,但在不丢失一般性的情况下,本文中所描述的实施例涉及系统性FEC方案,但对于本领域的技术人员将明显的是,相同的原理能够被应用于非系统性方案。
图5中所示出和本文中所描述的方法步骤可以被用硬件或用软件实施在发送器202处。此外,可以提供包括指令的计算机程序产品(例如,用于存储在发送器202的存储器206中),所述指令当被发送器202处的计算机处理装置执行时将实施上面所描述的方法。特别地,处理器204能够在发送器202处实施图5中的每个步骤。
此外,虽然已经参考优选实施例具体地示出并且描述了本发明,但是本领域内的技术人员应理解,在不背离如由所附权利要求所限定的本发明的范围的情况下可以作出形式和细节上的各种改变。

Claims (10)

1. 一种生成涉及数据流的多个数据分组(102, 106, 112, 114, 116)的纠正数据单元(104, 110, 120)的方法,每个纠正数据单元是基于所述数据流的数据分组的集合的,所述数据流用于在有损通信信道之上从发送器(202)传输到接收器(210),所述方法包括:
针对所述纠正数据单元中的每一个的生成,基于所述数据流,选择要被优化的性能量度,所述性能量度涉及所述数据流的丢失的数据分组的恢复;
确定针对所述纠正数据单元中的每一个的所述生成的编码要求;
针对所述纠正数据单元中的每一个的所述生成,在所述确定的编码要求的约束内并且基于至少一个先前生成的纠正数据单元来确定所述数据流的所述数据分组中的哪些要包括所述纠正数据单元的所述生成将基于的集合中以便从而优化所选择的性能量度;
基于所述数据流的所述数据分组的相应集合来生成所述纠正数据单元中的每一个;以及
将所生成的纠正数据单元包括在所述数据流中。
2. 一种用于生成涉及数据流的多个数据分组(102, 106, 112, 114, 116)的纠正数据单元(104, 110, 120)的设备,每个纠正数据单元是基于所述数据流的数据分组的集合的,所述数据流用于在有损通信信道之上从发送器(202)传输到接收器(210),所述设备包括:
选择装置,用于针对所述纠正数据单元中的每一个的所述生成基于所述数据流来选择要被优化的性能量度,所述性能量度涉及所述数据流的丢失的数据分组的恢复;
编码要求确定装置,用于确定针对所述纠正数据单元中的每一个的所述生成的编码要求;
数据分组确定装置,用于针对所述纠正数据单元中的每一个的所述生成,在所述确定的编码要求的约束内并且基于至少一个先前生成的纠正数据单元来确定所述数据流的所述数据分组中的哪些要包括在所述纠正数据单元的所述生成将基于的集合中以便从而优化所选择的性能量度;
生成装置,用于基于所述数据流的所述数据分组的相应集合来生成所述纠正数据单元中的每一个;以及
包括装置,用于将所生成的纠正数据单元包括在所述数据流中。
3. 根据权利要求1所述的方法或根据权利要求2的设备,其中:
针对所述纠正数据单元中的每一个的所述生成,在所述通信信道上的当前信道条件被确定,并且其中确定所述数据流的所述数据分组中的哪些要包括在针对所述纠正数据单元中的每一个的集合中是进一步基于针对该纠正数据单元的所述生成所确定的当前信道条件的。
4. 根据权利要求2所述的方法或设备,其中所述当前信道条件包括以下各项中的至少一项:(i) 在所述通信信道之上发送的数据分组的当前丢失概率;(ii) 在所述通信信道之上发送的数据分组的丢失突发性的当前量度;(iii) 在所述通信信道上的当前拥塞;以及(iv) 在所述通信信道上经历的干扰。
5. 根据权利要求3或4所述的方法或设备,其中所述当前信道条件由吉尔伯特(Gilbert)模型来描述,并且其中
指示所述数据流的所述数据分组中的哪些已被成功地接收的反馈信息从所述接收器被接收;
所述吉尔伯特模型的状态概率基于所接收到的反馈信息被重置;以及
所述状态概率使用所述吉尔伯特模型被及时传播以便获得所述状态概率在当前时间的估计以用于在确定所述通信信道上的所述当前信道条件时使用。
6. 根据任何前述权利要求所述的方法或设备,其中所述编码要求是针对所述纠正数据单元中的每一个的所述生成的当前编码要求。
7. 根据任何前述权利要求所述的方法或设备,其中所述编码要求包括以下各项中的至少一个:
深度,其在数据分组中的最旧的与最新的数据分组之间设置所述数据流中的最大容许位移,所述数据分组被允许被包括在所述纠正数据单元基于的所述集合中的同一个内;以及
开销,其设置在所述数据流中包括的所述纠正数据单元中的数据量与在所述数据流中包括的所述数据分组中的数据量之间的比值。
8. 根据任何前述权利要求所述的方法或设备,其中所述选择的性能量度包括以下各项中的至少一个:
(i) 不能够被恢复的丢失的数据分组的数目;
(ii) 在优化窗口内所述数据分组的非恢复概率的和;
(iii) 在优化窗口内所述数据分组的求平方的非恢复概率的和;以及
(iv) 在优化窗口内所述数据分组的加权的非恢复概率的和,其中所述非恢复概率被加权以便为不同的数据分组提供不同的丢失灵敏度。
9. 根据任何前述权利要求所述的方法或设备,其中:
公共性能量度针对多个所述纠正数据单元的生成被选择,
公共编码要求针对所述多个纠正数据单元的生成被确定,以及
针对所述多个纠正数据单元的所述生成,共同地确定所述数据流的所述数据分组中的哪些要包括在所述多个纠正数据单元中的每一个的生成将基于的相应集合中,以便从而在所述确定的公共编码要求的约束内并且基于至少一个先前生成的纠正数据单元来优化所选择的公共性能量度。
10. 一种用于生成涉及数据流的多个数据分组(102, 106, 112, 114, 116)的纠正数据单元(104, 110, 120)的计算机程序产品,每个纠正数据单元是基于所述数据流的数据分组的集合的,所述数据流用于在有损通信信道之上从发送器(202)传输到接收器(210),并且所述计算机程序产品被体现在非暂时性计算机可读介质上以及被配置成当在所述发送器的处理器上被执行时执行根据权利要求1、3、4、5、6、7、8以及9中任一项所述的方法。
CN201280034933.1A 2011-07-14 2012-07-14 纠正数据单元的自适应生成 Active CN103650399B (zh)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
GB1112110.0A GB2492830B (en) 2011-07-14 2011-07-14 Correction data
GB1112110.0 2011-07-14
US13/295,864 US9166735B2 (en) 2011-07-14 2011-11-14 Correction data
US13/295864 2011-11-14
PCT/US2012/046822 WO2013010153A1 (en) 2011-07-14 2012-07-14 Adaptive generation of correction data units

Publications (2)

Publication Number Publication Date
CN103650399A true CN103650399A (zh) 2014-03-19
CN103650399B CN103650399B (zh) 2017-01-18

Family

ID=44586593

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201280034933.1A Active CN103650399B (zh) 2011-07-14 2012-07-14 纠正数据单元的自适应生成

Country Status (5)

Country Link
US (1) US9166735B2 (zh)
EP (1) EP2719103B1 (zh)
CN (1) CN103650399B (zh)
GB (1) GB2492830B (zh)
WO (1) WO2013010153A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113728314A (zh) * 2019-04-19 2021-11-30 Emc Ip控股有限公司 生成具有可配置共性的数据流

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB0705329D0 (en) 2007-03-20 2007-04-25 Skype Ltd Method of transmitting data in a communication system
US10498359B2 (en) 2011-07-14 2019-12-03 Microsoft Technology Licensing, Llc Correction data
US20130104006A1 (en) * 2011-10-17 2013-04-25 Electronics And Telecommunications Research Institute Apparatus and method for transmitting data in communication system
GB2520866B (en) 2011-10-25 2016-05-18 Skype Ltd Jitter buffer
GB2495929B (en) * 2011-10-25 2014-09-03 Skype Jitter buffer
GB2495928B (en) 2011-10-25 2016-06-15 Skype Jitter buffer
US10341047B2 (en) * 2013-10-31 2019-07-02 Hewlett Packard Enterprise Development Lp Method and system for controlling the forwarding of error correction data
US10652120B2 (en) 2015-05-07 2020-05-12 Dolby Laboratories Licensing Corporation Voice quality monitoring system
US9967306B1 (en) * 2016-09-08 2018-05-08 Sprint Spectrum L.P. Prioritized transmission of redundancy data for packetized voice communication
US10714098B2 (en) 2017-12-21 2020-07-14 Dolby Laboratories Licensing Corporation Selective forward error correction for spatial audio codecs
CN110198498B (zh) * 2018-02-24 2021-11-30 中兴通讯股份有限公司 一种开关控制方法、装置、设备及存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2005041533A1 (en) * 2003-10-15 2005-05-06 Ntt Docomo, Inc. Apparatus and method for controlling an operation of a plurality of communication layers
CN1878049A (zh) * 2005-06-10 2006-12-13 三星电子株式会社 通过使用纠错包控制传输速率的方法及其通信设备
CN101193060A (zh) * 2006-12-01 2008-06-04 武汉烽火网络有限责任公司 在分组网上采用前向纠错机制实现可靠的e1传送的方法
US20100122127A1 (en) * 2005-04-04 2010-05-13 Stmicroelectronics S.R.L. Method and system for correcting burst errors in communications networks, related network and computer-program product
US20100202309A1 (en) * 2009-02-06 2010-08-12 Canon Kabushiki Kaisha Transmission device, transmission method, and program for the same

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5600663A (en) * 1994-11-16 1997-02-04 Lucent Technologies Inc. Adaptive forward error correction system
US5699365A (en) * 1996-03-27 1997-12-16 Motorola, Inc. Apparatus and method for adaptive forward error correction in data communications
DE69733816T2 (de) * 1996-03-29 2006-04-06 Motorola, Inc., Schaumburg Vorrichtung und verfahren zur verwaltung des spektrums in einem mehrpunkt-kommunikationssystem
US6498808B1 (en) 1999-03-12 2002-12-24 Aware, Inc. Seamless rate adaptive multicarrier modulation system and protocols
GB9911777D0 (en) 1999-05-20 1999-07-21 Univ Southampton Transceiver
EP1503548A1 (en) * 2003-08-01 2005-02-02 fg microtec GmbH Distributed Quality of Service Management System
WO2005041516A2 (en) * 2003-10-15 2005-05-06 Ntt Docomo, Inc. Apparatus and method for controlling an operation of a plurality of communication layers in a layered communication scenario
JP4349114B2 (ja) * 2003-12-10 2009-10-21 ソニー株式会社 送信装置および方法、受信装置および方法、記録媒体、並びにプログラム
US7971121B1 (en) * 2004-06-18 2011-06-28 Verizon Laboratories Inc. Systems and methods for providing distributed packet loss concealment in packet switching communications networks
US7447977B2 (en) * 2005-06-30 2008-11-04 Dolby Laboratories Licensing Corporation Method and system for optimizing forward error correction of multimedia streaming over wireless networks
TWI429227B (zh) * 2006-08-17 2014-03-01 Dolby Lab Licensing Corp 廣播網路之封包佇列損失之暫態分析技術
US8300563B2 (en) 2006-09-29 2012-10-30 Intel Corporation Aggregated transmission in WLAN systems with FEC MPDUs
RU2010150108A (ru) 2008-05-07 2012-06-20 Диджитал Фаунтин, Инк. (Us) Быстрое переключение канала и защита потоковой передачи высокого качества по широковещательному каналу
US8369705B2 (en) 2009-06-10 2013-02-05 Alcatel Lucent System and method for channel-adaptive error-resilient transmission to multiple transceivers
WO2011087905A1 (en) * 2010-01-12 2011-07-21 Quantenna Communications, Inc. Quality of service and rate selection
US10498359B2 (en) 2011-07-14 2019-12-03 Microsoft Technology Licensing, Llc Correction data
GB2495928B (en) 2011-10-25 2016-06-15 Skype Jitter buffer

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2005041533A1 (en) * 2003-10-15 2005-05-06 Ntt Docomo, Inc. Apparatus and method for controlling an operation of a plurality of communication layers
US20100122127A1 (en) * 2005-04-04 2010-05-13 Stmicroelectronics S.R.L. Method and system for correcting burst errors in communications networks, related network and computer-program product
CN1878049A (zh) * 2005-06-10 2006-12-13 三星电子株式会社 通过使用纠错包控制传输速率的方法及其通信设备
CN101193060A (zh) * 2006-12-01 2008-06-04 武汉烽火网络有限责任公司 在分组网上采用前向纠错机制实现可靠的e1传送的方法
US20100202309A1 (en) * 2009-02-06 2010-08-12 Canon Kabushiki Kaisha Transmission device, transmission method, and program for the same

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113728314A (zh) * 2019-04-19 2021-11-30 Emc Ip控股有限公司 生成具有可配置共性的数据流
CN113728314B (zh) * 2019-04-19 2023-10-31 Emc Ip控股有限公司 生成具有可配置共性的数据流

Also Published As

Publication number Publication date
EP2719103A1 (en) 2014-04-16
GB2492830A (en) 2013-01-16
EP2719103B1 (en) 2020-09-23
WO2013010153A1 (en) 2013-01-17
GB201112110D0 (en) 2011-08-31
GB2492830B (en) 2018-06-27
CN103650399B (zh) 2017-01-18
US20130019136A1 (en) 2013-01-17
US9166735B2 (en) 2015-10-20

Similar Documents

Publication Publication Date Title
CN103650399A (zh) 纠正数据单元的自适应生成
Karzand et al. Design of FEC for low delay in 5G
KR101143282B1 (ko) 연쇄 반응 코드의 체계적 인코딩 및 디코딩
US7003712B2 (en) Apparatus and method for adaptive, multimode decoding
JP4242060B2 (ja) ディジタル通信システムにおける方法および構成
US10880202B2 (en) Joint fountain coding and network coding for loss-tolerant information spreading
JP3911263B2 (ja) 適応的ハイブリッド自動再伝送要求方法及び装置
US10903853B2 (en) Computation of forward error correction data units using loss vector probabilities
CN105450357A (zh) 编码参数的调整、反馈信息的处理方法及装置
KR102114847B1 (ko) 이동 통신 시스템에서 멀티미디어 데이터 송수신 방법 및 장치
CN110943800A (zh) 数据包的发送方法、装置及系统、存储介质、电子装置
Zhou et al. Fountain code based adaptive multi-hop reliable data transfer for underwater acoustic networks
US10756843B2 (en) Low-delay packet erasure coding
KR20150022506A (ko) 무선 통신 시스템에서 데이터 패킷 송수신 방법 및 장치
CN112751644B (zh) 数据传输方法、装置及系统、电子设备
CN113055285A (zh) 基于mptcp与网络编码的自适应数据传输方法
JP5600774B1 (ja) データ伝送装置及び方法
Rudow et al. Learning-augmented streaming codes are approximately optimal for variable-size messages
de Alwis et al. Content and network-aware multicast over wireless networks
JP5376855B2 (ja) データ送信装置及びデータ送信方法
US20120005553A1 (en) Transmitting apparatus and transmission method
JP2010109942A (ja) 情報処理装置及びその方法、プログラム、記録媒体
US6981194B1 (en) Method and apparatus for encoding error correction data
CN110233699B (zh) 一种受限反馈下基于相对熵的无速率编码方法和电子设备
JP6071501B2 (ja) 中継端末

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
ASS Succession or assignment of patent right

Owner name: MICROSOFT TECHNOLOGY LICENSING LLC

Free format text: FORMER OWNER: MICROSOFT CORP.

Effective date: 20150702

C41 Transfer of patent application or patent right or utility model
TA01 Transfer of patent application right

Effective date of registration: 20150702

Address after: Washington State

Applicant after: Micro soft technique license Co., Ltd

Address before: Washington State

Applicant before: Microsoft Corp.

C14 Grant of patent or utility model
GR01 Patent grant