CN101803263A - 用于分组交换传输的可伸缩检错和交叉会话定时同步 - Google Patents
用于分组交换传输的可伸缩检错和交叉会话定时同步 Download PDFInfo
- Publication number
- CN101803263A CN101803263A CN200880107847A CN200880107847A CN101803263A CN 101803263 A CN101803263 A CN 101803263A CN 200880107847 A CN200880107847 A CN 200880107847A CN 200880107847 A CN200880107847 A CN 200880107847A CN 101803263 A CN101803263 A CN 101803263A
- Authority
- CN
- China
- Prior art keywords
- enhancement layer
- verification
- corresponding enhancement
- layer
- payload
- 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
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/0078—Avoidance of errors by organising the transmitted data in a format specifically designed to deal with errors, e.g. location
- H04L1/0083—Formatting with frames or packets; Protocol or part of protocol for error control
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0056—Systems characterized by the type of code used
- H04L1/0061—Error detection codes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/0078—Avoidance of errors by organising the transmitted data in a format specifically designed to deal with errors, e.g. location
- H04L1/0079—Formats for control data
- H04L1/008—Formats 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)
- Data Exchanges In Wide-Area Networks (AREA)
- Detection And Prevention Of Errors In Transmission (AREA)
Abstract
用于针对分组交换传输提供改进的可伸缩检错的***和方法。在一个实施方式中,以这样的方式对可伸缩净荷的核心层和增强层应用校验和检错,即丢弃来自净荷的一个或若干个增强层并不改变CRC校验和的值。例如在净荷报头中或在较低层协议的报头中发送仅一个校验和。发送器以这样的方式修改了编码的比特流,即部署可伸缩净荷并且从分组移除层的网络中的实体不需要重新计算放置在净荷或分组报头中的CRC,甚至当净荷大小改变时。前缀/尾部比特字段被添加到每个增强层的开始/结尾中以使得校验和校验与公共的CRC校验和匹配。在另一个实施方式中,接收器可以同时校验每个接收到的层的正确性,并且如果期望,则仅使用来自正确接收到的层的数据。
Description
技术领域
本发明一般地涉及分组交换网络。更具体地,本发明涉及可伸缩实时媒体,媒体适配、实时传输协议(RTP)的同步、通过分组交换网络的容错和传输,例如通过IP的话音(VoIP)和视频会议。
背景技术
本部分旨在为权利要求书中陈述的本发明提供背景或上下文。在此处的描述可能包括可以贯彻的概念,但不必是那些之前已经想到或者贯彻的概念。因此,除非在此指出,否则在本部分中描述的内容对于本申请的说明书和权利要求书而言不是现有技术,并且并不因为包括在本部分中就被认为是现有技术。
通常用于VoIP的分组交换网络传输协议包括封装在用户数据报协议(UDP)中的RTP,其进一步封装进因特网协议(IP)。在UDP和IP中使用的校验和导致丢弃其中接收器检测到比特错误的所有分组。换句话说,接收器中的协议栈并不将任何失真的分组传送到应用层。因此,当通过易发生错误的无线电链路或通过引入传输错误的任意介质来传送IP分组时,应用层可能将面临丢包。相反地,到达应用层的任意分组将不包含任何的残留比特错误。由于该现象,错误隐藏算法不能使用部分正确的帧,但在例如电路交换GSM电话服务中是可以做到的。相反,错误帧需要被完全替换。这将可能使得错误隐藏处理比在电路交换服务中使用的方法效率更低。
分组交换网络的另一方面涉及介质层可伸缩性。该伸缩性可以部署在传输层中,例如用于控制网络容量或对多播媒体流进行成形,以便促进与不同带宽的接入链路后的参与者之间的操作。在应用层中,可伸缩性可以用于控制例如计算复杂度、编码延迟或所期望的质量水平。
可伸缩媒体数据包括总是需要在接收端中能够重构的核心层,以及可以用于向重构的媒体(例如,改进的媒体质量)提供添加值的一个或若干个增强层。应该注意到尽管在一些场景中,可伸缩性可以应用于发送端点中,也存在这样的一些操作场景,其中允许中间网元来执行伸缩更为有意义。增强层可以连同核心层数据一起发送,或者在单独的分组中发送。尽管在与核心层数据分开的分组中发送增强层由于可以通过丢弃全部的分组来执行伸缩操作而令伸缩操作变得更为直接,但其例如在会话建立和控制过程中提供了一些挑战。另一方面,在相同的分组中连同核心层数据一起来发送增强层就传输带宽使用方面而言将更为有效且也支持更为简单的会话建立。
网络拥塞和有限的链路带宽是可能需要从IP分组移除可伸缩内容部分的原因的例子。进一步,所有的接收器可能无法接收或消费全部的比特率内容。因此,控制传输链路的网元可以移除一些更高层的内容。
当来自增强层的数据在与核心层数据相同的分组中发送时,可伸缩操作意味着分组内容的修改。IP分组的修改总是需要对净荷进行打开以及重新打包。尽管接收器和发送器信息不会改变,分组大小和相应的报头信息可以被修改。例如,当净荷内容被改变时,任何的检错校验和需要被重新计算。
可以被划分成两个或多个重要性类别的媒体数据可以从这样的方法获益,其中针对不同类别的数据单独地执行检错。如果仅在数据的“不太重要”部分存在错误,则许多应用仍能够使用接收到的数据的无错误部分。携带增强层连同核心数据的可伸缩媒体分组通过其设计清楚地形成类似的情形;增强层中的可能错误不会影响核心层,并且因此在一些增强层被破坏的情况下,核心数据应该能够用于应用。可伸缩媒体的另一个优势来自于这样的事实,即针对每个层的单独检错校验和有助于简单地伸缩功能。进一步,不同的前向纠错(FEC)设置也可以用于核心和增强层。
各种方法已经被引入以处理分组丢失情况。例如部分校验和方法的一些方法涉及仅处理净荷数据的某些部分。特别地,当UDP-Lite协议处于争论中时,部分校验和可以用于不等检错。对于可伸缩内容,出现的问题在于,当净荷大小被修改时,涉及需要重新计算部分校验和。
通常,在电路交换***中,相比较于最不敏感的比特,以更强劲的FEC设置来保护语音编码器的最为敏感比特。例如循环冗余校验(CRC)的部分检错码可以用于在最为敏感的比特包含错误时将整个帧归类为丢失。类似的方法可以用于在分组交换网络中。
用于语音帧的不等FEC保护方法是基于以降序优先级来对参数进行排序。例如,根据可伸缩性层和它们的重要性,可伸缩编解码器比特流可以被分类成各种类别。每个优先级类别接着可以以不等纠错能力来保护。此类的不等保护设置对于通常非标准化的接收器实现需要两个特征。首先,协议栈,并且尤其是UDP和IP协议实现,应该被修改以便将部分不正确的分组净荷传递到上述的协议栈层。可替换地,可以使用允许将错误的净荷传递到应用的协议(例如UDP-Lite)。
不等检错的优势涉及当较不敏感性的比特中的错误不造成整个分组的丢弃时,允许容量提升,特别是在无线链路中。应用层仍处理在最不敏感性内容中包含错误的净荷。
一种用于检错的方法涉及具有覆盖整个净荷数据的单个校验和。这是例如用于UDP协议中的方法。该操作模式根本不支持UED,并且在可伸缩内容的情况下,从净荷中移除一个或多个增强层需要重新计算校验和。尽管这是个完全有效的解决方案,但每次分组被缩放时,附加CRC计算的计算复杂度可能在某些场景中不是可行的方法。另一方面,在该方法中仅需要一个校验和来覆盖整个净荷,由此提供了传输带宽的有效使用。附加地,在该设置中,端点仅必须计算/验证单个校验和。
对如上讨论的单个校验和方法的增强是具有仅覆盖净荷数据的选定部分的单个校验和,由此留下净荷数据的剩余部分未覆盖。该方法支持简单的UED,提供了净荷数据的校验和覆盖部分和未覆盖部分。进一步,通过令核心层作为校验和覆盖部分而令增强层作为未覆盖部分,可以支持简单的两级可伸缩性。在这种情况下,通过丢弃增强层来实现可伸缩性将不需要改变校验和,除非净荷的改变影响到校验和的值。通过提供允许校验和来仅覆盖在净荷数据开始处的数据的选定部分的能力,这种功能使用在例如UDP-Lite中。使用这种UED支持的功能需要必须以合适的方式来设置净荷数据(即,最重要的数据应该出现在净荷的开始处)并且通过不理会未覆盖部分中的错误,应用可以获益。此类净荷的例子是针对AMR和AMR-WB语音编解码器的RTP净荷,其提供了将CRC比特字段包括在净荷报头中的选项。在最为敏感的语音比特(即类别A比特)上执行CRC校验。在该场景中,目标是仅当最为敏感的比特中存在比特错误时丢弃帧。另一方面,可以忍受帧剩余部分中的错误。当前,仅在UDP-Lite和DCCP协议中可以完全使用不等检错。这些协议支持功能的使用,允许将部分破坏的分组向上传递到应用层。
在上述方法的变形中,UDP-Lite校验和例如可以用于覆盖部分净荷,而单独的净荷内部校验和将用于覆盖未由UDP-Lite校验和覆盖的净荷的一部分。该方法提供了对净荷的完全校验和覆盖,其支持在检测到错误时,丢弃净荷数据的不太重要的部分。在不能忍受任何(未检测到的)错误的一些应用中,这是特别有用的。
对于更为灵活的净荷设计的另外选择涉及将数据划分成若干个子段并且对每个子段进行单独的校验和。该***支持灵活的UED和灵活的可伸缩性。当每个层由单独的校验和覆盖时,可以执行任意层的丢弃(由于检测到的错误或由于可伸缩操作)而不需要重新计算校验和。然而,该***的缺陷在于使用若干个校验和相比较于先前仅具有单个校验和的方法来说需要发送更多的数据。进一步,在该设置中,需要在发送器单独地计算若干个校验和并且在接收端进行验证。另一方面,该方法支持对错误的增加的鲁棒性以及灵活的可伸缩性,而不需要在执行伸缩的中间单元中重新计算校验和。
IP传输机制提供了用于FEC分组的工具。例如,因特网工程任务组(IETF)请求注释(RFC)2733(可以在www.ietf.org/rfc2733.txt中找到)提供了一种用于在单独的RTP会话中传输基于XOR的前向纠错数据的通用机制。FEC分组的净荷报头包含标识分组净荷的比特掩蔽(mask)(在其上计算比特方式的XOR运算)以及用于受保护分组的RTP报头恢复的若干个字段。一个XOR FEC分组支持一个丢失的源分组的恢复。
正在进行这样的工作,即以也包括保护的不均等分级能力的用于基于XOR的FEC保护的类似RTP净荷格式来替换IETF RFC2733,这里称为ULP因特网草案(A.H.Li,“RTP payload format for genericforward error correction”,因特网工程任务组因特网草案draft-ietf-avt-ulp-23.txt,2007年8月)。受保护源分组的净荷被划分成连续的字节范围,其起始于净荷的开始处。起始于分组的开始的第一字节范围对应于保护的最强级,并且保护等级作为字节范围顺序的函数而降低。因此,可以以这样的方式来组织受保护分组中的媒体数据,即在净荷内以重要性的降序顺序出现的媒体数据以及类似数量的字节对应于在受保护分组中的质量上的类似主观影响。FEC修复分组中的受保护级别的数目是可选择的,并且当保护一组源分组的级别数目改变时,获得不均等的保护级别。例如,如果有三种保护级别,那么一个FEC分组可以保护所有三个级别,第二分组可以保护头两个级别,而第三分组可以仅保护第一级别。当被应用到包含AMR-WB编码数据的RTP净荷时,相比较于类别B比特,ULP因特网草案可以用于更为鲁棒性地保护类别A比特。涉及AMR和AMR-WB帧的不相等错误保护和比特分类的细节可以在IETF RFC 4867的3.6章节中找到,其可以在www.ietf.org/rfc/rfc4867.txt处,以及在第三代合作伙伴计划(3GPP)规范3GPP TS 26.201中找到。
媒体编码领域中另一个出现的趋势涉及到所谓的“分层编解码器”。此类的分层编解码器包括例如国际电信联盟(ITU)电信标准部分(ITU-T),嵌入式可变比特率(EV-VBR)语音/音频编解码器和ITU-T可伸缩视频编解码器(SVC)。可伸缩媒体数据包括:核心层,其总是需要在接收端处支持重构;以及一个或多个增强层,其可以用于向重构的媒体提供添加值(例如,提供改进的媒体质量或相对于传输错误提供增加的鲁棒性等级等等)。可伸缩性可以部署在传输层处,例如用于控制网络性能或对多播媒体流进行成形,以便有助于与不同带宽的接入链路后的参与方之间的操作。在应用层,可伸缩性可以用于控制例如计算复杂度、编码延迟或期望的质量等级。应该注意尽管在某些场景中,可伸缩性可以应用在发送端点处,但也存在这样的工作场景,其中更有意义的是允许中间网元来执行缩放。
从媒体传输的角度来看,可伸缩编解码器提供两种基本的选项-增强层可以在相同的分组内与核心层数据一起发送,或增强层(的子集)可以在单独的分组流中发送。单独分组流中的传输也需要可以用于将携带相同媒体源的层的分组数据流绑定在一起的信令机制。
在单个分组中携带(媒体帧的)所有层的方法提供了低开销以及容易的交叉层同步。另一方面,该方法也导致了中间网元中的更为复杂的缩放;缩放可能性需要网元知道分组结构的细节。进一步,缩放也意味着分组的修改。
使用针对层(的子集)的单独的数据流的方法提供了简单的缩放可能性,因为缩放可以通过丢弃一些数据流的所有分组来实现。这不需要关于分组结构的深度知识,只要关于数据流之间关联的(信令)信息是可用的。然而,该方法导致增加的开销,因为每个数据流引入了其自身的协议开销(例如,IP/UDP/RTP)。与该方法关联的另外挑战涉及交叉层同步,即,接收器如何能够基于其接收的在多个数据流上分布的层来重构媒体帧。应该注意到,使用多个数据流(例如多个RTP会话)是用于在RTP框架内传送分层的媒体数据的传统方法(经常称为可伸缩多播)。
在RTP分组中接收到的媒体流的时间线可以基于包括在RTP报头中的时间戳(TS)信息来重构。相比较于在相同的RTP会话中传送的其他RTP分组,RTP TS提供关于时间差的信息,这使得将每个接收到的媒体帧放置在时间线的正确位置中。然而,RTP会话的RTPTS的初始值是随机的,这意味着RTP TS并不指示绝对时间。相反,RTP TS仅引用RTP会话内的RTP会话中的定时参考。应该注意到该“随机性”可以被认为是离绝对时间的未知偏移,其在每个RTP会话中是不同的。因此,两个或多个RTP会话不能仅基于它们的RTP TS值来进行同步。对于用于携带分层化编码的层(的子集)的单独RTP会话来说也是如此。
RTp内用于同步多个RTP会话的常规机制是基于在每个会话内传送的RTCP报告。在该方法中,发送器包括定时参考(NTP)以及根据规定的规则传送的RTCP发送器报告(SR)的RTP TS域中的发送时刻。这支持接收器针对其接收到的每个RTP会话来计算离定时参考(NTP)的RTP TS偏移。这些偏移值接着可以被用于匹配在单独的RTP会话中接收到的媒体数据的定时,例如以便组合在多个RTP会话中接收到的媒体帧的层。然而,该方法要求在媒体帧的完全重构可能之前,针对每个RTP会话的第一个RTCP SR是可用的。在实践中,这意味着到同步信息可用之前,只有分层编码的核心层是可用的。
对于上述的一个可替换方案涉及在发送端点中跨RTP会话对RTP TS空间进行预同步。在该方法中,对于每个RTP会话,RTP TS的“随机”初始值将是相同的。尽管这可以提供简单的交叉会话同步机制而不需要发送附加数据,但其并不完全符合RTP规范,并且现有的RTP实现可能不支持它。进一步,此类机制将提供在RTP(报头)水平的(预)同步,但其仅对RTP净荷的子集可用。在处理多净荷类型的***中,在RTP水平的此类净荷类型相关处理是不期望的特征。
用于同步多个RTP会话的另一个方法涉及对于每个发送的层附接附加的信息,指示其在呈现时间线中的时间位置。此类信息可以例如包括交叉层序列号或附加的时间戳信息,其可以用于对媒体帧以及帧中的层的呈现顺序进行重构。然而,对于每个发送的层,该方法仍将引入额外的开销。这是重要的,因为尤其在较小段的语音/音频数据的情况下,例如在10-20字节的级别中,即使一个附加字节的开销可能对整体***性能具有显著的影响。
发明内容
本发明的各种实施方式提供用于针对分组交换传输提供改进的可伸缩检错的***和方法。在一个实施方式中,以这样的方式对可伸缩净荷的核心层和增强层应用公共CRC检错:即丢弃来自净荷的一个或若干个增强层并不改变CRC校验和的值。例如在净荷报头中或在较低层协议的报头中发送仅一个CRC校验和。发送器以这样的方式修改了编码的比特流:即部署可伸缩净荷并且从分组中移除层的网络中的实体不需要重新计算放置在净荷或分组报头中的CRC,甚至当净荷大小改变时也是如此。前缀/尾部比特字段被添加到每个增强层的开始/结尾中以使得CRC校验与公共的CRC校验和匹配。
在另一个实施方式中,接收器可以同时校验每个接收到的层的正确性,并且如果期望,则使用仅来自正确接收到的层的数据。进一步,接收器不需要知道原始分组结构,即,增强层的数目。不论发送和接收到的增强层的数目,对于每个层而言公共CRC校验和具有相同的值。
各种实施方式也提供了用于可伸缩交叉会话定时同步的改进的***和方法。该***和方法涉及在可伸缩媒体帧的核心层和增强层在单独的RTP会话中发送的场景中,对于所述核心层和增强层应用公共CRC校验和。以这样的方式来制订发送的数据:即在对应于特定核心层的增强层上计算的CRC校验和被修改为具有与包括在携带用于相应核心层的数据的分组中的CRC校验和相同的值。通过计算增强层上的CRC校验和并且找到具有匹配CRC校验和的接收到的核心层,接收器可以将增强层关联到特定的核心层。一旦找到核心层和增强层的匹配对,则将建立携带该核心层和该特定增强层的RTP会话之间的同步。
本发明的各种实施方式可以应用于出现的ITU-T下的可伸缩语音、音频编码器和视频编码器,例如EV-VBR和SVC。
从下面结合附图的详细描述中,本发明的这些以及其他优点和特征,以及其操作的组织和方式将变得清楚明了,其中相同的元件在下述的整个附图中具有相同的数字。
附图说明
图1是其中本发明的各种实施方式可以被实现的***的概略图;
图2(a)和图2(b)示出具有在净荷报头中的公共CRC比特字段(多项式Rref(z))以及每个可伸缩层的开始中的前缀比特(多项式Ri(z)+Rref(z))的净荷结构;
图3是示出通过其可以实现本发明的各种实施方式的处理的流程图;
图4是具有在核心层分组净荷报头中的公共CRC比特字段(多项式Rref(z))以及在每个可伸缩层的结尾中的尾部比特(多项式Ri(z)+Rref(z))的净荷结构的示图;
图5是当两个帧被封装进相同的RTP分组中的净荷结构的示图;
图6是示出通过其本发明的各种实施方式可以被实现的处理的流程图;
图7是可以结合本发明的各种实施方式的实现使用的电子设备的透视图;以及
图8是可以包括在图7的电子设备中的电路的示意图。
具体实施方式
图1是其中可以实现本发明的各种实施方式的通用多媒体通信***的图形表示。如图1中所示,数据源100提供模拟、未压缩数字、或压缩数字格式,或这些格式的任意组合的源信号。编码器110将源信号编码成编码的媒体比特流。应该注意到将要解码的比特流可以从位于本质上任意类型的网络的远端设备直接或间接接收。另外,比特流可以从本地硬件或软件接收。编码器110可以编码多于一个的媒体类型,或可能需要多于一个的编码器110来编码不同媒体类型的源信号。编码器110也可以获得合成生成的输入,例如图形以及文本,或其可以能够产生合成媒体的编码比特流。在下文中,仅考虑一个媒体类型的一个编码的媒体比特流的处理以简化描述。然而,应该注意到,通常实时广播服务包括若干个流(通常至少一个音频、视频和文本字幕流)。还应该注意到***可以包括许多编码器,但在图1中,仅呈现出一个编码器110以简化描述而不失一般性。应该进一步理解到尽管包含在这里的文本和例子可以专门描述编码处理,但本领域技术人员将理解相同的概念和原理也可以应用于相应的解码处理并且反之亦然。
编码的媒体比特流被传输到存储器120。存储器120可以包括任意类型的大容量存储器以存储编码的媒体比特流。存储器120中的编码的媒体比特流的格式可以是基本的自包含比特流格式,或一个或多个编码的媒体比特流可以被封装进容器文件中。一些***工作于“实况”,即,省略存储器并且将编码的媒体比特流从编码器110直接传输到发送器130。编码的媒体比特流接着基于需要被传输到发送器130(也称为服务器)。使用在传输中的格式可以是基本自包含比特流格式、分组流格式,或者一个或多个编码媒体比特流可以被封装进容器文件中。编码器110、存储器120和发送器130可以驻留在相同的物理设备中或它们可以包括在分离的设备中。编码器110和发送器130可以以实况实时内容进行操作,在该情况中,编码的媒体比特流通常不被永久性地存储,而是在内容编码器110和/或在发送器130中缓冲一小段时间,以便平滑掉在处理延迟、传输延迟和编码的媒体比特率中的变化。
发送器130使用通信协议栈来发送编码的媒体比特流。栈可以包括但不限于RTP、UDP和IP,尽管也注意到3GPP电路交换电话也可以用在本发明的各种实施方式的环境中。当通信协议栈是面向分组的,则发送器130将编码的媒体比特流封装进分组。例如,当使用RTP时,发送器130根据RTP净荷格式将编码的媒体比特流封装进RTP分组。通常,每个媒体类型具有专门的RTP净荷格式。应该再次注意到的是***可以包含多于一个的发送器130,并且为了简化,下面的描述仅考虑一个发送器130。
发送器130可以或可以不通过通信网络连接到网关140。网关140可以执行不同类型的功能,例如将根据一种通信协议栈的分组流转译到另一种通信协议栈,合并和分流数据流,以及根据下行链路和/或接收器性能来封装数据流,例如根据占主要优势的下行链路网络条件来控制前向流的比特率。网关140的例子包括MCU、电路交换和分组交换视频电话之间的网关、通过蜂窝服务器的一键通(PoC)、数字视频广播-手持(DVB-H)***中的IP封装器或将广播传输本地转发到家庭无线网络的机顶盒。当使用RTP时,网关140可以称为RTP混合器或RTP转译器,即端到端RTP会话的“中间节点”。可替换地,网关140可以充当RTP会话的端点。
***包括一个或多个接收器150,其通常能够对发送的信号进行接收、解调并且解封装成编码的媒体比特流。编码的媒体比特流被传输到记录存储器155。记录存储器155可以包括存储编码的媒体比特流的任意类型的大容量存储器。记录存储器155可以可替换地或附加地包括例如随机存取存储器的计算存储器。记录存储器155中的编码的媒体比特流的格式可以是基本的自包含比特流格式,或一个或多个编码的媒体比特流可以被封装进容器文件中。如果存在许多彼此关联的编码的媒体比特流,则通常使用容器文件并且接收器150包含或附接到从输入的流产生容器文件的容器文件生成器。一些***操作于“实况”,即省略记录存储器155并且将编码的媒体比特流从接收器150直接传输到解码器160。在一些***中,在记录存储器155中仅保持所记录的流的最近部分,例如所记录的流的最近10分钟的选录,而任何更早记录的数据将从记录存储器155丢弃。
编码的媒体比特流从记录存储器155传输到解码器160。如果存在彼此关联的许多编码的媒体比特流并且被封装进容器文件,则文件解析器(在图中未示出)将用于从容器文件解封装每个编码的媒体比特流。记录存储器155或解码器160可以包含文件解析器,或文件解析器附接到记录存储器155或解码器160。
编码的媒体比特流通常由解码器160进行进一步处理,该解码器160的输出是一个或多个未压缩的媒体流。最后,呈现器170可以利用例如扬声器来再生未压缩的媒体流。接收器150、记录存储器155、解码器160和呈现器170可以驻留在相同的物理设备中或它们可以包括在分离的设备中。
本发明的各种实施方式提供用于针对分组交换传输提供改进的可伸缩检错的***和方法。在一个实施方式中,以这样的方式对可伸缩净荷的核心层和增强层应用公共CRC检错:即丢弃来自净荷的一个或若干个增强层并不改变CRC校验和的值。例如在净荷报头中或在较低层协议的报头中发送仅一个CRC校验和。发送器以这样的方式修改了编码的比特流:即部署可伸缩净荷并且从分组移除层的网络中的实体不需要重新计算放置在净荷或分组报头中的CRC,甚至当净荷大小改变时。前缀/尾部比特字段被添加到每个增强层的开始/结尾中以使得CRC校验与公共CRC校验和匹配。
在另一个实施方式中,接收器可以同时校验每个接收到的层的正确性,并且如果期望,则使用仅来自正确接收到的层的数据。进一步,接收器不需要知道原始分组结构,即,发送的增强层的数目。对于每个层,无论发送和接收到的增强层的数目,公共CRC校验和具有相同的值。
在本发明的各种实施方式中,针对核心和每个增强层具有公共CRC校验多项式,网元或另一个实体可以从净荷移除增强层而不需要接触到CRC并且因此不需要重新计算覆盖净荷的CRC。进一步,接收机不需要知道是否在发送器和接收器之间接触到净荷。CRC验证将匹配,而无论接收到多少增强层。当CRC位于(较低层)分组报头时,对于可伸缩内容来说公共CRC尤其具有优势,并且在整个净荷上执行CRC校验。
根据各种实施方式,对于每个增强层具有单独的CRC校验是不必要的。在这样的情形中,不执行针对每个层的单独错误校验。然而,当可以执行单独的错误校验时,接收器可以仅使用正确接收到的核心层和增强层来重构帧。进一步,不相等错误保护可以用于核心层和增强层。例如,当无错误地接收到核心比特流时,具有较少保护或根本不具有保护的比特流的剩余部分可以被应用于增强解码和重构更高的比特率模式。当公共CRC被放置在较低层协议报头中时,网元可以从净荷中移除一些增强层而不需要重新计算报头中的校验和信息。这可以是相当有用的,因为尽管一些应用/编解码器可以使用可能或可能不包含错误的增强层数据,但其他的应用/编解码器不能这样做。
在更为常规的***中,媒体净荷报头包含对于规则UDP传输在整个净荷上计算的校验和(相等检错),或对于例如UDP-Lite传输在净荷的最为敏感部分上部分地计算的校验和(不相等检错)。更进一步,www.ietf.org/rfc/rfc4340.txt处讨论的数据报拥塞控制协议(DCCP)可以用于携带作为协议报头(可选的)一部分的CRC校验和。
CRC校验和是最为常见的检错方法。通过基本上将消息多项式除以选定的和公知的密钥多项式来生成校验和。多项式除法运算的余数就是将被传送的实际CRC校验和信息。
M(z)=Q(z)K(z)+R(z)
在上式中,M(z)是净荷中的实际消息,K(z)是密钥多项式(除数),Q(z)是商而R(z)是余数,其也是作为分组的一部分发送到接收器的CRC校验和(在净荷中或在分组报头中)。当密钥多项式K(z)的长度是N+1,则余数(CRC校验和)的长度是N。下面示出了简单的CRC计算:
M(z)=[1 1 0 1 1 0 1](=z6+z5+z3+z2+z0),K(z)=[1 0 1 1](=z3+z1+z0)
在上面中,计算的余数(CRC多项式)是R(z)=[1 0 0]。
可替换地,可以通过在CRC计算前以零附接消息多项式来执行CRC校验。换句话说,CRC多项式的长度的零矢量被附接到消息的结尾。消息比特被有效地向左移动N个位置,并且N个零被***到消息的最低有效位,即,M(z)乘以zN,并且结果如下:
M(z)zN=Q(z)K(z)+R(z)
下面示出了简单的CRC计算,该计算阐明了将零矢量附接到消息的结尾的效果:
M(z)=[1 1 0 1 1 0 1](=z6+z5+z3+z2+z0),K(z)=[1 0 1 1](=z3+z1+z0)。
消息多项式M(z)接着与z3相乘以确定余数。因此,M(z)z3=[1 1 0 1 10 1 0 0 0]
在上面中,计算的余数(CRC多项式)是R(z)=[1 1 1]。
如果余数多项式附接在等式M(z)zN=Q(z)K(z)+R(z)的两侧,则结果是长度为N的余数多项式附接在消息多项式的结尾,并且通过密钥多项式的除法运算的余数消失:
M(z)zN+R(z)=Q(z)K(z)
当CRC校验和多项式附接在消息多项式的结尾时,示出作为零出现的余数R(z)的例子如下:
M(z)=[1 1 0 1 1 0 1],K(z)=[1 0 1 1],R(z)=[1 1 1]
该结果稍后在针对可伸缩比特流的公共CRC多项式设计时应用。该结果的优势在于,为了执行CRC校验,接收器不需要将多项式除法的结果与发送的CRC比特进行比较,但错误校验完成并且当余数为零时,无错误传输得到验证或确定。
根据各种实施方式,可伸缩比特流伴随有公共CRC字段。净荷报头或较低层协议报头包含CRC字段,针对其校验接收到的净荷的正确性。相同的CRC字段用于核心层以及所有的增强层。
通常,针对核心层比特流Mcore(z)的CRC校验如下:
Mcore(z)=Qcore(z)K(z)+Rref(z)
针对核心层计算的余数多项式Rref(z)也用作针对增强层的CRC校验。当除以包含核心和增强层的消息多项式时,余数是不同的。应该注意到核心层和增强层可以作为单个比特流而被一起处理,或它们可以被分别地处理。因此,前缀/尾部比特需要被***到每个增强层的开始/结尾中。
当针对核心层比特流计算的余数(CRC校验比特)是Rref(z),则任意的比特流可以被裁减以产生相同的余数。该方法涉及将核心层比特流的余数多项式作为前缀/尾部比特添加到消息多项式,即(逐比特)添加Rref(z)到附接到消息多项式的结尾的R(z)。结果是如下期望的余数:
M(z)zN+R(z)+Rref(z)=Q(z)K(z)+Rref(z)
替代于具有零的余数,消息M(z)zN+R(z)+Rref(z)的CRC校验将产生期望的输出余数多项式Rref(z)。还需要注意的是,由于前缀/尾部比特字段R(z)+Rref(z)的长度是相同的N,所以当期望的余数多项式被添加到消息的结尾处时,消息长度将不会增加。
下面的例子示出期望的余数,其表现为在消息的结尾处被第一次添加到CRC多项式时除法运算的结果:
M(z)=[1 1 0 1 1 0 1],K(z)=[1 0 1 1],R(z)=[1 1 1],期望的余数例如Rref(z)=[1 0 0],R(z)+Rref(z)=[0 1 1]
如上面所指出,期望的余数Rref(z)=[1 0 0]出现在计算中。
考虑净荷包含核心比特流和m个增强层的情况是有帮助的。核心的长度是N0个比特并且增强层i的长度是Ni个比特。因此,消息多项式如下:
替代于每个增强层的专用余数Ri(z),包括多项式Ri(z)+Rref(z)的前缀/尾部比特被添加到每个增强层Mi(z)的开始/结尾中。结果是公共CRC多项式Rref(z)可以用于分别校验核心层和每个增强层的正确性。对核心层和任意的增强层的CRC校验(在接收器中)产生相同的结果。换句话说,总是可以针对CRC比特字段来比较除法运算的余数,该CRC比特字段在各种实施方式中可以位于净荷中、位于净荷报头中或位于分组报头中。
图2(a)和图2(b)示出具有在净荷报头200中的公共CRC比特字段210(多项式Rref(z))以及每个可伸缩层220的开始中的前缀比特240(多项式Ri(z)+Rref(z))的净荷结构。也示出了核心层230,每个增强层220的CRC校验单独地(如图2(a)中所示)或连同所有较低层(如图2(b)中所示)将产生存储在净荷(或分组)报头200中的公共余数。附加地,CRC字段210可以被携带在净荷中的其他地方,在分组报头中或在较低层协议的报头中而不是在净荷报头中。仍进一步,CRC校验可以被执行为图2(a)和图2(b)中绘出的***的组合或混合。例如,直到特定的点,可以针对每个相应的层连同所有较低的层来执行CRC校验。然而,在该点后,可以对每个层单独地执行单独的校验(而不需要考虑较低的层)。此类混合***的其他变形也是可以的。
图3是示出通过其本发明的各种实施方式可以实现的处理的流程图。在图3的310处,多个层被编码,即形成分组,包括核心层和至少一个增强层。在320处,编码单个校验和。应该注意到尽管310和320示为按顺序发生,这些处理可以同时发生和/或作为单个处理发生。如前所讨论,单个校验和可以用于执行核心层和每个增强层的错误校验。在增强层的情况下,单个校验和可以单独地或与每个较低增强层和核心层组合地应用于针对每个增强层的错误校验。如前所讨论,这可以在必要时通过将附加字段添加到每个增强层来完成,使得单个校验和在任意的随后检错期间(不存在错误或丢失数据)将被匹配。在300处示出添加这些字段。在330处,从发送设备向接收设备传送编码的数据。
在340处,由接收器处理来自比特流的核心层和任意的增强层,并且在350处处理单个校验和。再次,尽管这些处理被示出为按顺序发生,但这些处理可以同时发生和/或作为单个处理发生。在360处,针对一个或多个层使用单个校验和来执行至少一个错误校验。无论哪个层(哪些层)被校验,单个校验和都可以用于错误校验。如前所讨论,可以针对每个增强层来单独地检错,或可以结合每个较低增强层和核心层来校验每个增强层。在370处以及在一个实施方式中,只有那些没有数据丢失或错误的层用于进一步的处理。
各种实施方式也提供了用于可伸缩交叉会话定时同步的改进的***和方法。该***和方法涉及在核心层和增强层在单独的RTP会话中发送的场景中,对于可伸缩媒体帧的核心层和增强层应用公共CRC校验和。以这样的方式来制订发送的数据:即在对应于特定核心层的增强层上计算的CRC校验和被修改为具有与包括在携带用于相应核心层的数据的分组中的CRC校验和相同的值。通过计算增强层上的CRC校验和并且找到具有匹配CRC校验和的接收到的核心层,接收器可以将增强层关联到特定的核心层。一旦找到核心层和增强层的匹配对,则将建立携带该核心层和该特定增强层的RTP会话之间的同步。
图4示出用于可伸缩媒体内容的典型传输***,其具有在核心层分组净荷报头200中的公共CRC比特字段210(多项式Rref(z))以及在每个可伸缩层220的结尾中的尾部比特400(多项式Ri(z)+Rref(z))。核心层230和每个增强层220在单独的RTP会话的单独RTP分组中传送。编码器/发送器确定每个增强层220的尾部比特字段400。尾部比特400以及相应的核心层CRC校验和210被附接到RTP净荷、净荷报头或分组报头。可替换地,CRC校验和210可以附接到任意的增强层分组。每个层的CRC校验将单独地产生与在核心层的分组报头、净荷或净荷的报头中传送的那个相同的校验和。
图5示出用于在RTP分组中传送多于一个帧的可伸缩媒体内容的可替换传输机制。在该设置中,核心层230和每个增强层220在单独的RTP分组中传送,即,在单独的RTP会话中传送。公共CRC比特字段210(多项式Rref(z))放置在核心层分组净荷报头中,而尾部比特400(多项式Ri(z)+Rref(z))放置在第二帧的核心层230的结尾以及每个可伸缩层中。编码器/发送器确定如上所述的尾部比特字段400。尾部比特400以及相应的核心层CRC校验和210附接到RTP净荷、净荷报头或分组报头。可替换地,CRC校验和210可以附接到任意的增强层分组。再次,每个层的CRC校验将单独地产生与核心层230的分组报头、净荷或净荷报头中发送的那个相同的校验和。
应该注意到的是在各种实施方式中,净荷/分组的第二帧的CRC校验和对于同步不是至关重要的。当实现净荷/分组的第一帧的核心层和增强层的同步时,第二帧将自动地处于同步。替代地,正如前所述,CRC校验和可以仅用于可伸缩不等检错。
在对于上面的替代方案中,可以以校验和总是与先前的增强层和核心层相结合的方式来将尾部比特附接在编码器/发送器中。换句话说,核心层+增强层#1的校验和需要与核心层CRC匹配。进一步,核心层+增强层#1+增强层#2+...+增强层#N的校验和需要与核心层CRC匹配。当中间增强层丢失时,该实施方式防止了使用更高层的增强层。在这其中附加的增强层总是使用所有较低层信息的增加的架构中是特别有利的。
通过将在每个层处(在单独的RTP会话中接收的)在接收器处计算的CRC校验和与针对核心层的接收到的CRC校验和进行比较,接收器将核心层与相应的增强层同步。如果校验和不匹配,则增强层RTP会话将被破坏,或者假定其被附接到另一个核心层RTP会话。如果校验和确实匹配,则增强层属于与核心层相同的媒体帧,并且在用于核心层的RTP会话和用于所讨论的增强层的RTP会话之间的RTP TS偏移可以被计算。这为这些层之间的交叉层同步提供了必要的信息。应该注意,仅在针对RTP会话之一中时间戳空间引入了断续时,才需要重新同步。因此,执行交叉层同步就足够了,例如在会话的开始中的若干个帧中或(在若干个帧中)以规则的间隔。
也应该注意到当公共CRC被放置在较低层协议报头时,网元可以从净荷移除一些增强层而不需要重新计算报头中的校验和信息。
通过具有针对核心层和每个增强层的公共CRC校验和多项式,在核心层和所有增强层之间的同步被保持而不需要发送附加的同步数据。核心层(或增强层之一)中CRC校验和的专用比特模式和所需的尾部比特确保不会产生核心层和增强层的错误组合。另外,该设置不受任何IP/UDP协议限制,因为同步在应用层中完成。仍进一步,可以对可伸缩媒体格式重新使用现有的基于CRC校验和的检错机制,特别是当多于一个的帧被封装进相同的RTP分组中的时候。
图6是示出通过其可以实现本发明的各种实施方式的处理的流程图。在图6中的610处,编码多个层,包括核心层和至少一个增强层。在620处,编码单个校验和。应该注意到尽管610和620示出为按顺序发生,但这些处理可以同时发生和/或作为单独的处理发生。如前所讨论,单个校验和可以应用于执行核心层和每个相应的增强层的错误校验。如前所讨论,当必要时,这可以通过向一个或多个增强层添加附加字段来实现(图4和图5的尾部比特字段),使得单个校验和将在不存在错误或丢失数据的任意随后错误校验期间被匹配。在600处示出这些字段的添加。以这样的方式来制订发送的数据:即,在对应于某个核心层的增强层上计算的CRC校验和被修改以便具有与包括在携带针对相应的核心层的数据的分组中的CRC校验和相同的值。在630处,编码的数据在多个会话中从发送设备发送到接收设备。
在640处,由接收器处理来自比特流的核心层和增强层,并且在650处处理单个校验和。再次,尽管这些处理示出为按顺序发生,但这些处理可以同时发生和/或作为单个处理发生。在660处,在增强层上确定CRC校验和。在670处,接收器找到具有与在660处确定的CRC校验和匹配的CRC校验和的接收到的核心层。当找到这样的匹配CRC校验和时,在680处,增强层和核心层彼此关联。在这点上,建立携带在670处识别的核心层的和在660处确定CRC校验和的增强层的RTP会话之间的同步。
图7和图8示出了一个代表性移动设备12,其中,本发明的各种实施方式可以在该电子设备中被实现。然而,应当理解,本发明不旨在限于一种特定类型的电子设备。图7和图8的移动设备12包括外壳30、采用液晶显示器形式的显示器32、小键盘34、麦克风36、耳机38、电池40、红外端口42、天线44、根据本发明的一个实施方式的采用UICC形式的智能卡46、读卡器48、无线接口电路52、编解码器54、控制器56和存储器58。各个电路和元件都是现有技术中已知的类型,例如诺基亚范围内的移动电话。
这里所描述的本发明的各种实施方式在方法步骤或处理的一般上下文中描述,其中所述方法步骤或处理在一个实施方式中可以由包含在计算机可读介质中的、包括例如程序代码的计算机可执行指令的计算机程序产品来实现,所述程序代码由计算机在联网环境中执行。计算机可读介质可以包括可移动和不可移动存储设备,包括但不限于只读存储器(ROM)、随机存取存储器(RAM)、压缩盘(CD)、数字多功能盘(DVD)等。一般地,程序模块可以包括执行特定任务或实现特定的抽象数据类型的例程、程序、对象、组件、数据结构等。计算机可执行指令、相关的数据结构以及程序模块代表了用于执行这里公开的方法步骤的程序代码示例。此类可执行指令或相关的数据结构的特定序列代表用于实现在这样的步骤或处理中所描述的功能的相应动作的例子。
本发明的各种实施方式的软件和web实现可以利用使用基于规则的逻辑和其它逻辑来完成各种数据库搜索步骤或处理、关联步骤或处理、比较步骤或处理和判决步骤或处理的标准编程技术来完成。还应当指出,术语“组件”和“模块”当用在此处和权利要求中时旨在包含使用一行或多行软件代码的实现和/或硬件实现和/或用于接收手动输入的设备。
本发明的实施方式的前述描述已为了示例和描述目的而被呈现。上述的描述不旨在是穷举性的,或者将本发明的实施方式限于所公开的精确形式,并且,符合以上教导的修改和变型是可能的,或者可以从本发明的各种实施方式的实现中获得。这里讨论的实施方式被选择和描述,其是为了阐明本发明的各种实施例的原理和特性及其实际应用,以便使本领域的技术人员能够在各种实施方式中以及在带有适于所设想的特定使用的修改的情况下使用本发明。此处描述的实施方式的特征可以被并入方法、装置、模块、***和计算机程序产品的所有可能组合中。
Claims (61)
1.一种将数据编码进比特流的方法,包括:
将核心层和至少一个相应增强层编码进所述比特流;以及
将单个校验和编码进所述比特流,所述单个校验和可应用于独自地或与每个较低的相应增强层和所述核心层结合来执行每个相应增强层的校验。
2.根据权利要求1所述的方法,其中所述单个校验和包括循环冗余校验校验和。
3.根据权利要求1所述的方法,其中所述单个校验和被编码在针对编码的核心层和所述至少一个相应增强层的净荷报头中。
4.根据权利要求1所述的方法,其中所述单个校验和被编码在针对编码的核心层和所述至少一个相应增强层的较低层协议的报头中。
5.根据权利要求1所述的方法,其中所述单个校验和被编码在净荷中。
6.根据权利要求1所述的方法,其中所述单个校验和被编码在分组报头中。
7.根据权利要求1所述的方法,进一步包括,在编码所述至少一个相应增强层前,向所述至少一个相应增强层的至少一个添加附加字段,使得如果没有数据丢失或没有数据发生错误,则任意涉及包括所述附加字段的相应增强层的随后校验将匹配所述单个校验和。
8.根据权利要求7所述的方法,其中所述附加字段被添加在每个相应增强层的开始处。
9.根据权利要求7所述的方法,其中所述附加字段被添加在每个相应增强层的结尾处。
10.根据权利要求7所述的方法,其中所述附加字段被编码在净荷中。
11.根据权利要求7所述的方法,其中所述附加字段被编码在分组报头中。
12.根据权利要求7所述的方法,其中所述附加字段被编码在净荷报头中。
13.根据权利要求1所述的方法,其中在多个会话中将所述核心层和所述至少一个相应增强层发送到远端设备。
14.一种包含在计算机可读存储介质中的计算机程序产品,包括配置成执行权利要求1的处理的计算机代码。
15.一种设备,包括:
电子设备,配置成:
将核心层和至少一个相应增强层编码进比特流;以及
将单个校验和编码进所述比特流,所述单个校验和可应用于独自地或与每个较低的相应增强层和所述核心层结合来执行每个相应增强层的校验。
16.根据权利要求15所述的设备,其中所述单个校验和包括循环冗余校验校验和。
17.根据权利要求15所述的设备,其中所述单个校验和被编码在针对编码的核心层和所述至少一个相应增强层的净荷报头中。
18.根据权利要求15所述的设备,其中所述单个校验和被编码在针对编码的核心层和所述至少一个相应增强层的较低层协议的报头中。
19.根据权利要求15所述的设备,其中所述单个校验和被编码在净荷中。
20.根据权利要求15所述的设备,其中所述单个校验和被编码在分组报头中。
21.根据权利要求15所述的设备,其中所述电子设备进一步配置成在编码所述至少一个相应增强层前,向所述至少一个相应增强层的至少一个添加附加字段,使得如果没有数据丢失或没有数据发生错误,则任意涉及包括所述附加字段的相应增强层的随后校验将匹配所述单个校验和。
22.根据权利要求21所述的设备,其中所述附加字段被添加在每个相应增强层的开始处。
23.根据权利要求21所述的设备,其中所述附加字段被添加在每个相应增强层的结尾处。
24.根据权利要求21所述的设备,其中所述附加字段被编码在净荷中。
25.根据权利要求21所述的设备,其中所述附加字段被编码在分组报头中。
26.根据权利要求21所述的设备,其中所述附加字段编码在净荷报头中。
27.根据权利要求15所述的设备,其中在多个会话中将所述核心层和所述至少一个相应增强层发送到远端设备。
28.一种设备,包括:
用于将核心层和至少一个相应增强层编码进比特流的装置;以及
用于将单个校验和编码进所述比特流的装置,所述单个校验和可应用于独自地或与每个较低的相应增强层和所述核心层结合来执行每个相应增强层的校验。
29.根据权利要求28所述的设备,进一步包括用于在编码所述至少一个相应增强层前,向所述至少一个相应增强层的至少一个添加附加字段,使得如果没有数据丢失或没有数据发生错误,则任意涉及包括所述附加字段的相应增强层的随后校验将匹配所述单个校验和的装置。
30.一种处理来自比特流的编码的数据的方法:
处理来自所述比特流的核心层和至少一个相应增强层;
处理来自所述比特流的单个校验和;以及
使用所述单个校验和,独自地或与每个较低的相应增强层和核心层结合来执行所述至少一个相应增强层之一的校验,其中所述单个校验和是可用的,无论在所述校验中使用的相应增强层的数目如何。
31.根据权利要求30所述的方法,其中所述单个校验和包括循环冗余校验校验和。
32.根据权利要求30所述的方法,其中所述单个校验和位于针对编码的核心层和所述至少一个相应增强层的净荷报头中。
33.根据权利要求30所述的方法,其中所述单个校验和位于针对编码的核心层和所述至少一个相应增强层的较低层协议的报头中。
34.根据权利要求30所述的方法,其中所述单个校验和被编码在净荷中。
35.根据权利要求30所述的方法,其中所述单个校验和被编码在分组报头中。
36.根据权利要求30所述的方法,其中附加字段先前已经添加到所述至少一个相应增强层的至少一个,使得如果没有数据丢失或没有数据发生错误,则涉及相应增强层的校验将匹配所述单个校验和。
37.根据权利要求36所述的方法,其中所述附加字段已经被添加在每个相应增强层的开始处。
38.根据权利要求36所述的方法,其中所述附加字段已经被添加在每个相应增强层的结尾处。
39.根据权利要求36所述的方法,其中所述附加字段被编码在净荷中。
40.根据权利要求36所述的方法,其中所述附加字段被编码在分组报头中。
41.根据权利要求36所述的方法,其中所述附加字段被编码在净荷报头中。
42.根据权利要求30所述的方法,其中在多个会话中接收来自远端设备的所述核心层和所述至少一个相应增强层,并且进一步包括:
使用执行的校验来将所述核心层与所述至少一个相应增强层进行匹配;以及
对包括所述核心层和所述至少一个相应增强层的多个会话进行同步。
43.根据权利要求30所述的方法,其中对于每个相应增强层和所述核心层同时执行校验,并且进一步包括在后续的处理中仅使用那些已经被正确接收的层。
44.一种包含在计算机可读存储介质中的计算机程序产品,包括配置成执行权利要求30的处理的计算机代码。
45.一种设备,包括:
电子设备,配置成:
处理来自所述比特流的核心层和至少一个相应增强层;
处理来自所述比特流的单个校验和;以及
使用所述单个校验和,独自地或与每个较低的相应增强层和核心层组合来执行所述至少一个相应增强层之一的校验,其中所述单个校验和是可用的,无论在所述校验中使用的相应增强层的数目如何。
46.根据权利要求45所述的设备,其中所述单个校验和包括循环冗余校验校验和。
47.根据权利要求45所述的设备,其中所述单个校验和位于针对编码的核心层和所述至少一个相应增强层的净荷报头中。
48.根据权利要求45所述的设备,其中所述单个校验和位于针对编码的核心层和所述至少一个相应增强层的较低层协议的报头中。
49.根据权利要求45所述的设备,其中所述单个校验和被编码在净荷中。
50.根据权利要求45所述的设备,其中所述单个校验和被编码在分组报头中。
51.根据权利要求45所述的设备,其中附加字段先前已经添加到所述至少一个相应增强层的至少一个,使得如果没有数据丢失或没有数据发生错误,则涉及相应增强层的校验将匹配所述单个校验和。
52.根据权利要求51所述的设备,其中所述附加字段已经被添加在每个相应增强层的开始处。
53.根据权利要求51所述的设备,其中所述附加字段已经被添加在每个相应增强层的结尾处。
54.根据权利要求51所述的设备,其中所述附加字段被编码在净荷中。
55.根据权利要求51所述的设备,其中所述附加字段被编码在分组报头中。
56.根据权利要求51所述的设备,其中所述附加字段被编码在净荷报头中。
57.根据权利要求45所述的设备,其中在多个会话中接收来自远端设备的所述核心层和所述至少一个相应增强层,并且其中所述电子设备进一步配置成:
使用执行的校验来将所述核心层与所述至少一个相应增强层进行匹配;以及
对包括所述核心层和所述至少一个相应增强层的多个会话进行同步。
58.根据权利要求45所述的设备,其中对于每个相应增强层和所述核心层同时执行校验,并且进一步包括在后续的处理中仅使用那些已经被正确接收的层。
59.一种设备,包括:
用于处理来自比特流的核心层和至少一个相应增强层的装置;
用于处理来自所述比特流的单个校验和的装置;以及
用于使用所述单个校验和,独自地或与每个较低的相应增强层和核心层结合来执行所述至少一个相应增强层之一的校验的装置,其中所述单个校验和是可用的,无论在所述校验中使用的相应增强层的数目如何。
60.根据权利要求35所述的设备,其中附加字段先前已经添加到所述至少一个相应增强层的至少一个,使得如果没有数据丢失或没有数据发生错误,则涉及相应增强层的校验将匹配所述单个校验和。
61.根据权利要求60所述的设备,其中对于每个相应增强层和所述核心层同时执行校验,并且进一步包括用于在后续的处理中仅使用那些已经被正确接收的层的装置。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US97440107P | 2007-09-21 | 2007-09-21 | |
US60/974,401 | 2007-09-21 | ||
US99164007P | 2007-11-30 | 2007-11-30 | |
US60/991,640 | 2007-11-30 | ||
PCT/IB2008/053823 WO2009037672A2 (en) | 2007-09-21 | 2008-09-20 | Scalable error detection and cross-session timing synchronization for packet-switched transmission |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101803263A true CN101803263A (zh) | 2010-08-11 |
CN101803263B CN101803263B (zh) | 2012-12-26 |
Family
ID=40468545
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2008801078472A Active CN101803263B (zh) | 2007-09-21 | 2008-09-20 | 用于分组交换传输的可伸缩检错和交叉会话定时同步 |
Country Status (5)
Country | Link |
---|---|
US (1) | US8570869B2 (zh) |
EP (1) | EP2191604B1 (zh) |
CN (1) | CN101803263B (zh) |
AT (1) | ATE533243T1 (zh) |
WO (1) | WO2009037672A2 (zh) |
Families Citing this family (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8782274B2 (en) * | 2007-10-19 | 2014-07-15 | Voxer Ip Llc | Method and system for progressively transmitting a voice message from sender to recipients across a distributed services communication network |
US8699383B2 (en) * | 2007-10-19 | 2014-04-15 | Voxer Ip Llc | Method and apparatus for real-time synchronization of voice communications |
US8099512B2 (en) * | 2007-10-19 | 2012-01-17 | Voxer Ip Llc | Method and system for real-time synchronization across a distributed services communication network |
US8250181B2 (en) * | 2007-10-19 | 2012-08-21 | Voxer Ip Llc | Method and apparatus for near real-time synchronization of voice communications |
US8559319B2 (en) | 2007-10-19 | 2013-10-15 | Voxer Ip Llc | Method and system for real-time synchronization across a distributed services communication network |
WO2009099357A1 (en) * | 2008-02-07 | 2009-08-13 | Telefonaktiebolaget L M Ericsson (Publ) | Method and device for transport delay analysis |
US9204293B2 (en) * | 2008-02-21 | 2015-12-01 | Telefonaktiebolaget L M Ericsson (Publ) | Apparatuses, methods, and computer program products for data retention and lawful intercept for law enforcement agencies |
US10805840B2 (en) | 2008-07-03 | 2020-10-13 | Silver Peak Systems, Inc. | Data transmission via a virtual wide area network overlay |
US10164861B2 (en) | 2015-12-28 | 2018-12-25 | Silver Peak Systems, Inc. | Dynamic monitoring and visualization for network health characteristics |
US8804821B2 (en) * | 2008-09-26 | 2014-08-12 | Microsoft Corporation | Adaptive video processing of an interactive environment |
US9596293B2 (en) * | 2010-09-08 | 2017-03-14 | Panasonic Intellectual Property Management Co., Ltd. | Content transmission device and network node |
KR101297318B1 (ko) | 2012-02-17 | 2013-08-16 | 조선대학교산학협력단 | 대소 비교 연산 유닛을 위한 확장형 오류검출코드 기반의 오류 검출 장치 및 그 오류 검출 장치를 포함하는 자가검사 대소 비교 연산 유닛 |
WO2013105709A1 (ko) * | 2012-01-10 | 2013-07-18 | 조선대학교산학협력단 | 확장형 오류검출코드 기반의 오류 검출 장치 및 그 오류 검출 장치를 포함하는 자가검사 프로그래머블 연산 유닛 |
US9948496B1 (en) | 2014-07-30 | 2018-04-17 | Silver Peak Systems, Inc. | Determining a transit appliance for data traffic to a software service |
US9875344B1 (en) | 2014-09-05 | 2018-01-23 | Silver Peak Systems, Inc. | Dynamic monitoring and authorization of an optimization device |
US9967056B1 (en) * | 2016-08-19 | 2018-05-08 | Silver Peak Systems, Inc. | Forward packet recovery with constrained overhead |
US9967306B1 (en) * | 2016-09-08 | 2018-05-08 | Sprint Spectrum L.P. | Prioritized transmission of redundancy data for packetized voice communication |
FR3061381B1 (fr) * | 2016-12-23 | 2019-05-31 | Thales | Procede de reception, recepteur, emetteur et systeme de communication associes |
US11044202B2 (en) | 2017-02-06 | 2021-06-22 | Silver Peak Systems, Inc. | Multi-level learning for predicting and classifying traffic flows from first packet data |
US10892978B2 (en) | 2017-02-06 | 2021-01-12 | Silver Peak Systems, Inc. | Multi-level learning for classifying traffic flows from first packet data |
US10771394B2 (en) | 2017-02-06 | 2020-09-08 | Silver Peak Systems, Inc. | Multi-level learning for classifying traffic flows on a first packet from DNS data |
WO2018164355A1 (ko) * | 2017-03-10 | 2018-09-13 | 엘지전자 주식회사 | 멀티캐스트 신호 송수신 방법 및 장치 |
US11212210B2 (en) | 2017-09-21 | 2021-12-28 | Silver Peak Systems, Inc. | Selective route exporting using source type |
US11652571B1 (en) * | 2017-11-20 | 2023-05-16 | Harmonic, Inc. | Incremental cyclic redundancy (CRC) process |
US10637721B2 (en) | 2018-03-12 | 2020-04-28 | Silver Peak Systems, Inc. | Detecting path break conditions while minimizing network overhead |
US11863318B2 (en) * | 2020-08-31 | 2024-01-02 | Frontiir Pte Ltd. | Error correction for network packets |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6877043B2 (en) * | 2000-04-07 | 2005-04-05 | Broadcom Corporation | Method for distributing sets of collision resolution parameters in a frame-based communications network |
US7627121B1 (en) * | 2001-02-15 | 2009-12-01 | At&T Mobility Ii Llc | Apparatus, system and method for detecting a loss of key stream synchronization in a communication system |
US6909753B2 (en) | 2001-12-05 | 2005-06-21 | Koninklijke Philips Electronics, N.V. | Combined MPEG-4 FGS and modulation algorithm for wireless video transmission |
US7558954B2 (en) * | 2003-10-31 | 2009-07-07 | Hewlett-Packard Development Company, L.P. | Method and apparatus for ensuring the integrity of data |
US20060010366A1 (en) | 2004-05-18 | 2006-01-12 | Takako Hashimoto | Multimedia content generator |
EP1797661B1 (en) * | 2004-10-06 | 2011-06-01 | Nokia Corporation | Assembling forward error correction frames |
US7450134B2 (en) | 2004-11-18 | 2008-11-11 | Time Warner Cable Inc. | Methods and apparatus for encoding and decoding images |
US8160868B2 (en) * | 2005-03-14 | 2012-04-17 | Panasonic Corporation | Scalable decoder and scalable decoding method |
US7725799B2 (en) | 2005-03-31 | 2010-05-25 | Qualcomm Incorporated | Power savings in hierarchically coded modulation |
CN100450187C (zh) * | 2005-10-17 | 2009-01-07 | 华为技术有限公司 | 支持错误弹性的多媒体数据网络实时传送方法 |
US7567515B2 (en) * | 2005-11-04 | 2009-07-28 | Via Telecom, Inc. | Inter-layer communication of receipt confirmation for releasing retransmission buffer contents |
CN101203005B (zh) * | 2007-12-13 | 2010-12-08 | 展讯通信(上海)有限公司 | 一种解决单芯片双卡双待手机主副卡载波冲突的方法 |
KR101124482B1 (ko) * | 2008-06-17 | 2012-03-15 | 삼성전자주식회사 | 듀얼 모드를 지원하는 이동통신 단말기의 동작 방법 및 장치 |
-
2008
- 2008-09-19 US US12/234,512 patent/US8570869B2/en active Active
- 2008-09-20 EP EP08807737A patent/EP2191604B1/en active Active
- 2008-09-20 CN CN2008801078472A patent/CN101803263B/zh active Active
- 2008-09-20 WO PCT/IB2008/053823 patent/WO2009037672A2/en active Application Filing
- 2008-09-20 AT AT08807737T patent/ATE533243T1/de active
Also Published As
Publication number | Publication date |
---|---|
US20090154495A1 (en) | 2009-06-18 |
EP2191604B1 (en) | 2011-11-09 |
CN101803263B (zh) | 2012-12-26 |
ATE533243T1 (de) | 2011-11-15 |
WO2009037672A3 (en) | 2009-09-11 |
WO2009037672A2 (en) | 2009-03-26 |
EP2191604A2 (en) | 2010-06-02 |
US8570869B2 (en) | 2013-10-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101803263B (zh) | 用于分组交换传输的可伸缩检错和交叉会话定时同步 | |
US8503538B2 (en) | Method, apparatus, system, and program for content encoding, content distribution, and content reception | |
US10361810B2 (en) | Data packet transmission/reception apparatus and method | |
US20220286729A1 (en) | Broadcasting signal transmission device, broadcasting signal reception device, broadcasting signal transmission method, and broadcasting signal reception method | |
CN101622879B (zh) | 以rtp净荷格式传输sei消息 | |
Li | RTP payload format for generic forward error correction | |
JP5130352B2 (ja) | マルチメディアコンテナファイルの受信ヒントトラックに記録するメディアストリーム | |
US20080199021A1 (en) | Method and Apparatus For Providing Ip Datacasting Service in Digital Audio Broadcasting System | |
JP6523249B2 (ja) | パケットヘッダを圧縮する方法及び装置 | |
CN101536088B (zh) | 用于提供冗余管理的***和方法 | |
KR101340762B1 (ko) | 지상파 디지털 멀티미디어 방송 서비스의 인터넷 프로토콜패킷 재전송 방법 | |
CN102342057A (zh) | 用于可伸缩媒体的封装的方法和装置 | |
US8081635B2 (en) | Reconstruction of errored media streams in a communication system | |
KR20120042833A (ko) | 역방향의 강력한 헤더 압축 수신기 | |
JP4944250B2 (ja) | Amr−wbdtx同期化を提供するためのシステムおよび方法 | |
US9667384B2 (en) | Apparatus and method for transmitting and receiving forward error correction packet | |
US8068721B2 (en) | Method of transmitting video data | |
Fonnes | Reducing packet loss in real-time wireless multicast video streams with forward error correction | |
Li | RFC 5109: RTP Payload Format for Generic Forward Error Correction | |
KR20150079399A (ko) | 데이터 전송 디바이스 및 그 전송 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
C41 | Transfer of patent application or patent right or utility model | ||
TR01 | Transfer of patent right |
Effective date of registration: 20160214 Address after: Espoo, Finland Patentee after: Technology Co., Ltd. of Nokia Address before: Espoo, Finland Patentee before: Nokia Oyj |