用于解析网络抽象层以实现可靠数据通信的方法和设备的制作方法

文档序号:7915689阅读:137来源:国知局
专利名称:用于解析网络抽象层以实现可靠数据通信的方法和设备的制作方法
用于解析网络抽象层以实现可靠数据通信的方法和设备本申请涉及以下联合待审的共有美国专利申请(1)2009年10月7日作为国际专利申请(申请号为PCT/US09/005499,Thomson文档号PU090136)提交的题为ANEFFICIENT APPLICATIONLAYER AUTOMATIC REPEAT REQUEST (ARQ) RETRANSMISSION SCHEMEFOR RELIABLE REAL-TIME STREAMING IN WIRELESS NETWORKS 的 No. XXX;以及(2)在 XXX日期作为国际专利申请(申请号XXX,Thomson文档号PU090176)提交的题为A METHOD ANDAPPARATUS FOR RETRANSMISSION DECISION MAKING 的 No. XXX。本申请总体涉及数字数据网络,具体涉及一种用于对数字数据优先级化以实现可靠数字数据传输的抽象层首部解析器。在组播或广播应用中,典型地通过有线和/或无线网络从服务器向多个接收机传输数据。本文使用的组播系统是服务器同时向多个接收机传输相同数据的系统,其中这些接收机形成了多达全部接收机并且包含全部接收机的子集。广播系统是服务器同时向所有接收机传输相同数据的系统。即,组播系统按照定义可以包括广播系统。 通常将数据格式化成分组和/或帧以用于传输。即,分组和/或帧是数据格式化方案。本文使用的数据可以被格式化成任何合适的格式以用于传输,所述格式包括分组和/或帧。因此,本文中将使用“分组”来定义本领域技术人员已知的任何数据格式化方案。本文中,使用无线网络中的视频传输或分布作为数字数据网络的一个应用的示例。无线数据网络中的视频传输一般涉及由于诸如干扰、信道衰减、冲突等信道错误状况而引起的分组丢失。当发生这种信道错误状况时,协议栈的无线链路层可以尝试在固定的时间段内将分组重传固定的次数。如果这些重传没有成功,则无线链路层丢弃分组。基于互联网协议(IP)网络的视频传输典型地使用实时传送协议(RTP)协议将视频分组传递至目的地(接收机;本文中有时称作客户端),该目的地使用可靠的传输控制协议(TCP)传送协议或较不可靠的用户数据报协议(UDP)传送协议。当使用较不可靠的UDP协议时,例如,该协议并没有提供一种检测乱序分组或恢复丢失分组的措施,而是使应用来负责恢复分组传递错误。然而,当使用TCP协议时,提供端到端应答,使得协议尝试严格按照应用程序处理分组的顺序来发送和/或恢复媒体(音频、视频、多媒体……)分组(数据)。当检测到分组错误时,TCP针对数据流控制提供滑动窗口机制,并降低分组传输速率。TCP保持对丢失分组的重传,直到这些丢失分组被恢复。视频传输是以下这种应用的示例该应用实时发生,并且具有与数据的接收和呈现有关的用户体验。等待时间或时间约束(在等待时间或时间约束之内分组必须被传递或恢复)不应影响最终用户的观看体验。因此,分组错误应当在有限时间内被恢复,否则数据可能无法观看。TCP目前并没有提供基于时间约束对分组恢复的控制。因此,使用TCP作为无线网络的传送协议可能引起较差的用户观看体验。此外,TCP需要针对所有传输的数据分组的肯定应答。TCP上行链路应答(从数据接收机至数据发射机(发送方))与下行链路数据业务(从发射机(发送方)至接收机)争夺无线带宽。如果在下行链路传输和上行链路传输之间发生冲突,冲突将会导致进一步的吞吐量降低。2009年10月7日提交的PCT申请US/09/005,499公开了一种高效的应用层自动重复请求重传方法,其中,在用于实现可靠媒体协议的模块处缓冲或高速缓存要传输的数据,以恢复丢失的数据分组并帮助例如实时流传递(如,视频)数据应用。简要参考图I(得自于上述PCT申请US/09/005,499的图5),在实时服务器100处提供实时协议打包模块120,用于接收视频数字数据输入105。提供流传递应用的实时协议(RTP)打包模块120例如经由插座式应用编程接口(API)或接口 115连接至可靠媒体协议模块130。该可靠媒体协议模块接受例如由数字应用确定的配置数据参数125 (如,高速缓存或缓冲器大小、等待分组恢复所需的最长时间等等)。数字应用可以是例如电话、音频、视频、多媒体或其他已知的应用。本地缓冲器或高速缓存存储器135临时存储初始传输的分组,直到可以确定这些分组需要被重传还是被丢弃。服务器100通过M)P/IP发射机接口 140或TCP/IP发射机/接收机接口 145之一以及数字数据网络接口(例如,Ethernet/802. 11接口 150)来传输数字数据。例如,可以经由初始传输160向网络110进行初始实时传输,其中将实时分组临时存储在高速缓存/缓冲器135中,等待重传ACK/NACK控制155的接收或预定的超时。有利的是,提供一种高效的方法和设备来提高基于可靠媒体协议的实时数据传输系统(如,以上PCT申请US/09/005,499中公开的)的可靠性。本发明解决了这些和/或其他问题。
根据本发明的一方面,公开了一种方法。根据示例实施例,该方法包括解析数字数据分组的抽象层首部,以获得层表示数据;以及响应于所述解析,针对所述层表示为所述数字数据分组分派优先级。根据本发明另一方面,公开了一种设备。根据示例实施例,该设备包括用于从数字数据分组获得层表示数据并向所述层表示数据分派优先级的装置,如抽象层首部解析器;以及用于将具有所分派的优先级的最近传输的分组存储在所述存储器中的装置,如存储器。根据本发明另一方面,公开了一种设备。根据示例实施例,该设备包括用于解析数字数据分组的抽象层首部以获得层表示数据的解析装置,如抽象层首部解析器;以及用于响应于所述解析针对所述层表示为所述数字数据分组分派优先级的解析装置,如抽象层首部解析器。结合附图,参考以下对本发明实施例的描述,本发明的上述和其他特征和优点以及实现这些特征和优点的方式将变得更加清楚,并且将更好地理解本发明,其中图I是服务器的示意性框图,该服务器具有可靠媒体协议模块和用于存储例如实时分组从而等待重传决定的本地高速缓存或缓冲器,图I得自于上述相关PCT申请US/09/005, 499 的图 5。图2A是根据本发明原理的服务器的示意性框图,进一步示出了根据本发明的网络抽象层(NAL)首部解析器以及网络监视器和重传决定制定器,网络监视器和重传决定制定器用于监视当前网络统计数据的网络接口并向可靠媒体协议(RMP)模块提供输入;图28是根据本发明原理的相关客户端的示意性框图,该客户端具有网络监视器,该网络监视器用于收集接收机网络特定统计数据以传输至图2A的服务器。图3A是根据本发明原理的流传递服务器的简化示意性框图,该流传递接收机具有NAL首部解析器、网络监视器和重传决定制定器,NAL首部解析器用于接收来自可缩放视频编码(SVC)编码器的输入。图3A还示出了用于接收来自流传递服务器的数字数据的流传递接收机。图3B是示出了图3A的流传递服务器的示意性框图,示出了接收来自本地MP4文件读取器的输入的NAL首部解析器,图3C示出了图3A的经由解包器接收来自网络的输入的NAL首部解析器。图4示出了根据本发明原理的针对抽象层首部解析在发送方侧的操作的流程图,还包括在发送方侧的网络监视,其中发送方可以是图2A或图3的发射机、服务器或流传递服务器。图4还示出了接收机侧的另外的网络监视。接收机侧可以是图2B的客户端或图3的流传递接收机。图5示出了根据本发明原理的用于解析的可缩放视频编码器(SVC)网络抽象层(NAL)扩展首部的示例数据内容表示格式。图6示出了实时协议(RTP)首部的示例格式,根据本发明的方面,可以从该实时协议(RTP)首部得到网络监视统计量。

图7示出了 MPEG传送流(TS)首部的示例格式,例如,MPEG-2,包括连续计数(CC)字段,根据本发明的方面,可以从该MPEG传送流(TS)首部得到网络监视统计量。图8示出了包括传输请求和端到端分组丢失率的消息的示例格式,根据本发明的方面,可以从该消息得到网络监视统计量。图9示出了 ARQ请求(NACK)分组的第一示例格式,根据本发明的方面,可以在该ARQ请求(NACK)分组中传输和获得网络监视统计量。

图10示出了 RMPARQ请求(NACK)分组的第二示例格式,根据本发明的方面,可以在该RMPARQ请求(NACK)分组中传输和获得网络监视统计量。本发明涉及一种方法和设备,在发射机或接收机侧对作为输入的抽象层首部进行解析,以实时(例如,实时协议或RTP)打包,从而用于针对可靠媒体协议(RMP)的模块。根据一个实施例,网络抽象层(NAL),例如实时视频编码器(如,MPEG-4可缩放视频编码器(SVC))的H. 264/AVC网络抽象层(NAL)包括首部,所述首部提供了能够被解析以确定数字数据优先级的字段。例如,NAL是网络友好的,并且可以表示多种数字数据应用之一,例如,视频电话应用、视频会话应用、视频会议应用或其他对话应用;以及非对话应用,如,下载的电影在存储器中的存储、广播或组播应用、流传递数据应用工或其他非对话应用。例如,NAL可以被定义为以具有一个或多个字节的分组形式来表示多个抽象层单元。每个NAL单元的第一字节可以是对单元的数据类型加以指示的首部字节,而其余的字节包含由NAL首部指示的类型的有效载荷数据。根据一个实施例,抽象层首部解析器包括解析可缩放视频编码器抽象层首部以从多个字段之一获得数据。根据该实施例的方面,抽象层首部解析器可以例如对MPEG 4文件的输出数字视频数据进行操作,或者接受来自网络的在解包器处接收到的数字数据。例如,抽象层首部解析器可以解析DID字段,所述DID字段表示了层表示的层间编码依赖级别。QID字段表示了层表示的中粒度可缩放性(MGS)质量级别。TID字段表示了层表示的时间级另IJ。对包括这样的字段在内的抽象层首部进行解析的一个结果是,识别出与后面的有效载荷数据关联的层。响应于有效载荷数据类型的识别,可以针对每个识别的层分派不同的优先级。例如,由于对于接收机侧的完整解码而言基本层是必不可少的,所以基本层可以针对从缓冲器或高速缓存存储器的重传而接收高优先级。由于对于更高层的解码来说增强层数据是必要的,所以可以为增强层分派中优先级。另一方面,可以为高增强层分派低优先级。一旦分派了优先级,例如低、中、高,就可以在实时协议(RTP)首部的“有效载荷类型”(PT)或类似字段中(如果在传送层调用重传的话),或者在IP首部的服务类型(TOS)字段中,表示优先级信息。服务类型字段在技术中例如还已知为差分服务(DS)字段。DS字段字节的前两个比特已知为显式拥塞通知(ECN)比特,接下来的六个比特已知为差分服务代码点(DSCP)比特。本文通常使用的服务类型指的是用于提供服务类型数据的这些和其他格式。因此,当被修改为合并了抽象层首部解析器以及根据一个实施例的方法时,由可靠媒体协议模块做出的实时分组传输决定可以是知晓层的。在另一实施例中,提供网络监视器用于经由数据网络接口监视数据网络质量以及例如收集当前网络数据统计量,如,分组丢失率、可用带宽和针对向重传决定制定器的输入的往返延迟。重传决定制定器可以向可靠媒体协议(RMP)模块提供输入,使得可以根据在网络监视器处收集的数据网络统计数据,基于当前网络状况来做出关于重传的决定。相应地,一种数字重传方法包括解析数字数据分组的抽象层首部以获得层表示数据;以及响应于解析针对表示层为数字数据分组分派优先级。获得层表示数据可以包括以下操作中的一个或全部确定层间编码依赖级别,确定粒度可缩放性质量级别,以及确定层表示的时间级别。此外,该方法还可以包括以下操作之一在实时传送分组(RTP)首部的 有效载荷类型字段中或者在互联网协议分组首部的服务类型字段中表示优先级级别。如上所述,至抽象层首部解析器的输入可以是从用于接收网络数据的解包器接收的,或者是从例如与MPEG文件读取器相关联的本地服务器存储器接收的。此外,在另一实施例中,数字数据发射机可以包括抽象层首部解析器,用于从数字数据分组获得层表示数据并为层表示数据分派优先级;数字数据监视器,用于收集网络传送统计量;以及重传决定制定器,用于基于数字数据分组优先级和收集的网络传送统计量来判定是否重传数据分组。如上所述,在另一实施例中这种抽象层首部解析器可以是用于数字视频数据分组应用的网络抽象层首部解析器。更具体地,参考图2-10,无线网络中的视频传输或分布典型地使用实时传送协议(RTP)、通过UDP的运动画面专家组2传送流(MEPG2TS)。可以从单个源向单个目的地分发实时视频(单播模式),或者从单个源向多个目的地分发实时视频(组播模式)。由于无线网络中信道状况的不同,当信道状况不佳时,如果链路层错误恢复没有成功,则分组传输会引起丢弃的分组。在这些情况下,分组序列中存在间隙,从而对最终用户造成了较差的观看质量。本发明提供了一种用于高效的基于应用层的重传方案的抽象层首部解析功能(本文称作可靠媒体协议(RMP),以恢复分组丢失,从而帮助可靠的实时流传递应用以及网络监视能力,进而改进分组重传决定的制定。参考图2A和2B,在本发明的可靠媒体协议(RMP)方法中,通过包括根据本发明原理的NAL首部解析器210,来辅助RTP分组220和可靠媒体协议(RMP)模块230。此外,与网络接口 250接口连接的网络监视器270收集当前网络统计量,并经由重传决定制定器275来提高RMP模块230的可靠性。在图2A中加亮了 NAL首部解析器210、网络监视器270和重传决定制定器275,以示出图2A与图I不同,以下将进一步说明这一点。首先,RMP模块230使用UDP 240经由接口 250和信道260向网络110传输常规的单播和组播数据或分组。数据初始地存储在本地高速缓冲235中,具有由NAL首部解析器210经由RTP打包220而分派的优先级。除此之外,在图2A的源(发射机,发送方)与图2B的目的地(接收机、宿、客户端)201之间建立附加可靠的基于TCP的控制信道245、250、255,以请求和接收丢失分组的重传。为了使这种机制正常运行,发射机(发送方,月艮务器)200维持发送至其接收机/客户端201 (图2B)的最新分组的高速缓存235。一个或多个接收机/客户端201 (图2B)从发射机/服务器200接收数据分组,并且可以例如使用RTP(图6)或MPEG传送流(TS)首部(图7)中存在的序列号字段来检测接收到的数据分组中的序列间隙。如果接收机201检测到序列间隙,则接收机201在基于TCP的控制信道255上发送选择性地重传丢失的数据分组的请求。当发射机/服务器200从其接收机/客户端201中的一个或多个接收到重传请求时,发射机/服务器200在最新分组的本地高速缓存235中进行查找。如果在最新分组的本地高速缓存235中找到所请求的一个或多个分组,则发送方/服务器200根据所分派的优先级和当前网络统计量,通过网络110在基于TCP的控制信道255上以单播的形式向接收机201重传分组的副本。如果在本地高速缓存/缓冲器235中没有找到所请求的分组,则发送方200继续为其余的重传请求服务。接收机/客户端201维持传递队列(缓冲器/高速缓存)236,以保持从数据信道和控制信道两者接收到的数据分组。接收机/客户端201在该队列内将重传的分组重排序成正确的序列、(位置),并在正确的时间以合适的顺序将分组传递至应用,例如,显示器206的视频播放器应用221。接收机/客户端201 (图2B)维持可配置时间窗,以等待任意的重传,而不是永远等待下去,从而分组延迟和延迟抖动可以保持在应用限度之内。此外,根据一个实施例,接收机/客户端201具有网络监视器271,以从接收机/客户端201的角度收集网络统计量,从而经由控制信道255传输至发射机/服务器200。在图2B中以加亮的形式示出了网络监视器271,以示出根据本发明在网络监视器271与网络接口 251之间的协作,网络接口 251用于收集网络统计量并将网络统计量提供至发射机/服务器200,以改进传输决定的指定,本文将进一步描述这一点。如果针对丢失的分组的重传回复中的一些没有被及时接收到,图2B的接收机/客户端201将来自传递序列的其余接收到的分组传送至应用,例如,视频播放器221和显示器206。如果重传的数据分组中的一些是在可接受回复时间窗之外接收到的,则接收机/客户端201可以丢弃这些重传的数据分组。应注意,视频应用可以在视频解码中使用错误隐藏技术来承受一定的数据分组丢失。再次参考图2A,本发明的可靠媒体协议(RMP)方案经由实时应用/RTP/MEEG TS和UDP/TCP/IP之间的RMP模块230、231,在解析器210的帮助下工作,以实现优先级化并借助于网络监视器270和271进行改进的重传决定制定。在服务器/发射机200处,抽象层首部解析器,例如,网络抽象层(NAL)首部解析器210对本地提供的或网络提供的数字视频数据205进行操作。NAL首部解析器210输出优先级以及用于实时协议(RTP)打包220的数据。此外,网络监视器270恢复当前网络110统计量,并向重传决定制定器275输出控制数据,以帮助RMP模块230。例如,为了促进增强层分派有中优先级而基本层分派有高优先级的示例,当网络监视器270检测到的可用带宽在给定的阈值以下时,RMP模块230将仅重传高优先级基本层数据,而不传输中优先级增强层数据。例如,并不传输高速缓存/缓冲器存储器235中保持的所有分组,重传决定制定器275可以基于网络监视器收集的统计量(如,分组丢失率或其他网络状况)和NAL首部解析器210分派的优先级(其与层有关),选择存储器235中保持的分组的一部分来进行重传。例如,为了促进增强层分派有中优先级而基本层分派有高优先级的示例,当网络监视器270检测到的可用带宽在给定的阈值以下时,RMP模块230将重传高优先级基本层数据,而不传输中优先级增强层数据。因此,在解析器210处为数据分派优先级与根据重传决定制定器275来做出重传决定相结合,提供了非常可靠的媒体协议(RMP)模块230,以下将结合图4进一步描述这一点。再次参考图2A,典型的网络接口 250被示为在网络110与服务器/发射机200处的RMP模块230之间。网络接口模块250的示例是以太网卡、IEEE 802. 11/WiFi卡、以及技术中已知的与计算机网络110相连的其他装置。图2B示出了客户端设备201的示例实现方式的示意图。客户端可以包括视频播放器/流传递应用模块221、显示器206、缓冲器(高速缓存存储器)236、可靠媒体协议(RMP)模块231、UDP/IP模块241、TCP/IP模块246和网络接口 251。网络接口 251可以例如是以太网接口或IEEE802. 11接口或者其他已知的网络接口。网络接口 251接收所有到来的消息。消息到达不同的插座/地址。网络监视器271从接收机/客户端201的角度从 网络接口 251收集当前网络状态,并在信道255上输出合适的控制消息以报告收集的统计量。因此,网络接口 251可以确定将从网络110接收到的消息转发至哪里,并将来自网络监视器271和TCP/IP模块246的消息输出。网络接口模块251将新到来的数据分组转发至UDP/IP接口。RMP模块231将数据分组重传请求以及重传的数据分组转发至TCP/IP模块246。RMP模块231确定接收到的数据分组中是否有数据分组损坏,并利用UDP/IP 241和TCP/IP 246两者来配合进行分组恢复。然后RMP模块231将重传请求转发至TCP/IP模块246以通过网络110传输。在网络接口 251处,将网络监视器271收集的任何网络统计数据都合并到重传请求中以通过网络110传输。RMP模块231还将接收到的分组存储在本地缓冲器236中以重新排序。一旦经由TCP/IP模块从TCP控制信道接收到重传的分组,RMP模块231就按照正确的顺序来排列分组。RMP 231维持按序列号排序的队列,并且将会把分组重新排序并插入到该缓冲区/队列236中。当恢复窗超期时,RMP模块231将分组例如传递至播放器/流传递应用221以用于显示器206。RMP模块231提供插座式应用协议接口(API) 261来进行数据传送以及与应用的集成。注意,可以不通过恢复窗的超时来恢复一些分组。在图4中,将恢复窗超期之后到达的数据分组丢弃。根据应用,例如对于视频来说,流传递/播放器应用221将数据解包和/或解码,并将数据传送至显示器/扬声器206。将到来的分组存储在RMP"缓冲区”236中,并且在应用请求分组时转交至例如用于呈现(显示)的应用。标有“配置”226的方框是至RMP模块231的“配置接口”。可以在初始化时配置RMP模块,以设置诸如高速缓存大小、等待分组恢复所需的最长时间等参数。在根据图2B的接收机/客户端201处,网络监视器271可以在网络监视器271处经由接口 251从接收机/客户端201的角度收集当前网络统计量,并经由控制信道255将客户端/接收机201的网络经验输出至经由数字数据网络110与该客户端/接收机201相连的服务器。当在发射机/服务器200处经由网络110接收到这种收集到的网络统计量时,经由接口 250将这种收集到的网络统计量输出至网络监视器270,以补充由网络监视器270从网络110的发射机/服务器的角度收集的统计量。数字数据网络110可以是任何数字数据网络,包括但不限于卫星网络、基于地面的有线网络、光纤网络、同轴线缆网络、双绞线网络、局域网、广域网以及其他已知的数字数据网络。典型的网络接口 251被示为在网络110与客户端/接收机201处的RMP模块231之间。网络接口模块的示例包括连接到计算机网络110的以太网卡、IEEE. 802. 11/WiFi卡等。在详细讨论图3之前,重要的是注意到图中相似的参考数字表示相似的元件。此夕卜,参考数字的第一位数字,如,用于网络接口 110的参考数字110的第一位数字I表示该元件所在的图的编号。因此,例如,RMP模块230首先出现在图2中,其与图I中的可靠媒体协议(RMP)模块130相似,但是是与图I的可靠媒体协议(RMP)模块130不同的模块,因为图2中引入了 NAL首部解析器210、网络监视器270和重传决定制定器275,而图I中并未出现这些模块。此外,根据本发明的原理,图2B的客户端/接收机201的网络监视器271改进了图2A的RMP模块230和重传决定制定器275的操作。以上已经描述了解析器210、网络监视器270和271以及重传决定制定器275的一些优点,但以下将结合图3和图4进一步详细描述这些优点。图3参考向经由网络110而连接的一个或多个流传递接收机的传输,提供了流传递服务器/发射机的NAL抽象层首部解析器210、网络监视器270和重传决定制定器275 的直接表示。参考图3A,示出了可缩放视频编码(SVC)编码器300,可缩放视频编码(SVC)编码器300可以位于流传递服务器处或者位于流传递服务器的远程处。可缩放视频编码(SVC)提供了时间或帧速率可缩放性、空间或画面尺寸可缩放性(例如,以多种分辨率和长宽比来对视频进行编码)、以及信噪比(SNR)或质量/保真度可缩放性,以下将进一步描述这一点。NAL首部解析器210可以是符合H. 264的AVC网络抽象层(NAL)首部解析器或具有类似功能的其他抽象层首部解析器,以下将结合图4来进一步描述这一点。例如,参考图3B,NAL首部解析器210可以接收来自本地存储器存储(例如,MP-4文件读取器302)的输入。示例流传递服务器实施例可以是用于提供IP电视频道或电影服务的流传递服务器。在图3C的备选实施例中,示出了解包器304,解包器304用于接收例如来自网络110的流传递视频,并将接收到的分组输出至NAL首部解析器210。图3C的流传递服务器的示例视频应用可以是视频电话,其中所描述的流传递服务器是从一个视频通信终端到另一视频通信终端的网络路径中的一个服务器。在图3A、3B和3C的每一个中,NAL首部解析器210可以经由解包器310向本地高速缓存235提供分组/帧优先级。对于初始传输,解析器210向解包器310输出解析数据和优先级。对于每条路径312,将拷贝放置在本地高速缓存235中,对于每条路径314,解包器将分组数据发送至流传递接收机的解包器320。网络监视器270向重传决定制定器275提供网络传送状况数据,以选择性地判定是否重传本地高速缓存235中存储的分组/帧以经由网络110在路径316上重传至解包器320。路径316用于根据传送状况和解析器分派的优先级来重传选定的分组。现在参考图4,将参考所示的流程图来进一步描述根据本发明的抽象层首部解析器、网络监视器和重传决定制定器的功能操作,该流程图示出了发送方或发射机/服务器侧操作以及接收机/客户端/终端侧操作。在方框400,图3的服务器/发射机例如从本地文件(图3B中,文件读取器302)获得数据,或从网络接口(例如从图3C的网络110和解包器304)接收数据。将接收到的数据提供至方框410,方框410表示图2A和图3的抽象层首部解析器210。
简要参考图5,示出了典型的抽象层首部,例如,SVC NAL抽象层首部,其提供了要解析的字段。例如,抽象层首部解析器410可以解析所示的在第二字节(字节I)的位置1-3处出现的DID字段,第二个字节(字节I)表示了层表示的层编码依赖性或空间/分辨率可缩放性级别。接下来可以是QID字段,其例如在第二字节(字节I)的位置4-7处,表示了层表示的中粒度可缩放性(MGS)质量级别。例如在第三字节(字节2)的位置0-2处的TID字段表示了层表示的时间级别。对包括这些字段的抽象层首部进行解析的一个结果是,识别了与接下来的有效载荷数据相关联的层。响应于识别出有效载荷数据类型,图4的解析器方框410处的解析器可以针对每个识别出的层为接下来的数据分派不同的优先级,例如,低优先级、中优先级或高优先级。在备选实施例中可以采用多于3个优先级。例如,由于对于接收机201处的完整解码而言基本层是必不可少的,所以针对有效载荷数据类型的基本层可以针对从缓冲器或高速缓存存储器的重传而接收高优先级。由于对于更高层的解码来说增强层数据是必要的,所以可以为例如提高了分辨率的增强层分派中优先级。数字数据的SVC编码可以包括基本层和一个增强层。另一方面,可以提供第二或更多个增强层以用于更高的画面质量欣赏,但对于观看来说不是必要的,因此可以针对关联的有效载 荷数据在高速缓存235中为更高的增强层分派低优先级。为了提供简化的示例,如果SVC编码视频数据具有分辨率为416X240比特率为600kbps的基本层以及更高分辨率832 X 480并因此比特率为I. 2吉比特/秒的增强层用于视频流传递,则解析器410可以基于DID字段来识别基本层NAL单元,并为基本层分派较高的优先级。另一方面,可以为增强层分派较低的优先级(以提供更高的分辨率)。在该示例中,为基本层分派比增强层高的优先级。可以在图6的位置9-15处所示的RTP首部的有效载荷类型(PT)字段中,指示输出优先级级别。一旦被分派了优先级(例如,低、中、高),还可以在传送层调用了重传的情况下在实时协议(RTP)首部的类似字段中表示优先级信息,或者在IP首部的服务类型(TOS)字段中表示优先级信息。初始地,在经由“发送分组”450通过网络110向接收机传输分组时,方框420处将副本缓冲在430处的本地高速缓存/缓冲器存储器中。分组可能在网络中丢失或者被接收。本地高速缓存430中的分组等待与网络状况以及是否接收到分组有关的确定结果。如果接收到分组并且网络状况良好,则在460处接收分组,在465处接收机确定预期的分组是否丢失(是或否)。如果丢失(是),则在485处发送重传请求,并经由图2B的控制信道255将接收机的恢复计时器设置回发送方/发射机/服务器200。如果否,则在490处,按照合适的顺序将接收到的分组放置在接收缓冲器中,例如以用于接收机/客户端201处的显示功能206。如果经由485发送了重传请求,则启动网络监视器功能块405,并处理接收到的重传请求。如本文将进一步描述的,可以在网络监视器271处确定给定时刻的端到端分组丢失率,作为来自接收机侧的当前网络110状况。当前网络状况,例如,端到端分组丢失率与重传请求预期被提供至网络监视器功能块405和重传决定制定器功能块415。在发送方/服务器200处于有线网络110上的情况下,网络监视器功能块405例如可以是机顶盒(有线电视的或卫星的)或家庭网关,接收机侧(例如,客户端201)是与无线接入点(AP)相关联的移动设备或个人计算机。中间节点/无线接入点(AP/路由器)可以向发送方报告网络和无线信道状况。因此,当被修改为合并了抽象层首部解析器以及根据一个实施例的方法时,根据本发明原理的可靠媒体协议(RMP)模块230做出的实时分组重传决定可以是层知晓的。重传决定制定器415询问当前端到端传输分组丢失率是否高,意味着是否在RMP模块230的存储器中设定的阈值级别以上。如果回答是是,则在445处丢弃较低优先级分组,而仅将较高优先级分组从高速缓存/缓冲器430中移除并重传。除了分组丢失率以外,传送状况的其他度量可以是可用带宽(例如,端到端路径中的最低可用带宽)和往返延迟(较长的往返延迟可能需要高速缓存/缓冲器235的超时来进行重传)。可以将这些度量中的每一个(包括可用带宽在内)与存储器中设定的相关阈值级别相比较,以做出关于分组重传的决定。可以采用以上度量中的一个或多个以及通过解析410而设定的分组优先级来做出重传决定。如果回答是否,则在435经由“发送分组”450和网络110从高速缓存/缓冲器430重传所有所请求的分组。在接收时,在460处接收重传的分组并在470处将其识别为重传的分组。在给定 实时观看体验的情况下,在475处检查接收时间。提出问题重传是否晚了?如果过晚地接收到重传的分组,即,节目观看体验已经进行到下一帧,则在480处丢弃重传分组。另一方面,如果重传分组没有晚(即,回答是否),则在490处按顺序将重传分组放置在接收缓冲器中以用于显示。本发明的RMP方法可以以灵活的软件库、硬件、固件、任何计算机或处理器、特定用途集成电路(ASIC)、精简指令集计算机(RISC)、现场可编程门阵列(FPGA)或其组合的形式来实现。本发明的RMP方法使用插座式用户空间API和基础传送装置,以容易地与流传递服务器和播放器应用集成。本发明的RMP方法对于其支持的流传递应用而言是透明的。内部地维持M)P数据信道和TCP信道。本发明的RMP方法可扩展为支持其他错误恢复方案,如FEC和混合ARQ。现在将参考图6、7和8来进一步描述本发明的网络监视器功能块405。图6示出了一种可能的方法,其中,网络监视器271例如可以根据序列号(第一条线的位置6-1)来检测序列间隙。另一种方法是使用一个字节的MPEG-2传送流首部的连续计数(CC)字段,如图7所示。 图8示出了用于向图2A的服务器/发射机200发送由图2B的接收机/客户端201的网络监视器271收集的统计量的消息的格式。消息格式可以类似于RTP控制协议(RTCP)接收机报告(RR)消息。具体地,可以提供“少量丢失”字段,例如,在线4的位置0-7处。可以提供其他相关数据,如,累计分子丢失数目,可以将该累计分子丢失数目与在相同信道上先前接收到的累计分组丢失数目相比较。差值提供了在由连续消息的成功接收之间的时间来定义的间隔内的分组丢失数目。图9提供了针对发送方/服务器/发射机的格式,所述发送方/服务器/发射机通过重传从接收机/客户端201接收到的请求来获得网络分组丢失。图4的网络监视器功能块405根据字段“起始分组的基本序列号”和“结尾分组的偏移”来计算丢失分组的数目。类似地,图10的RMPARQ请求(NACK)分组提供了基本序列号,可以存储该基本序列号并将其与后续接收到的基本序列号相比较。所示的基本序列号和比特图指示了接收机请求重传的分组的序列。另一种确定网络传送状况的方法是监视较低的层,例如,网络/MAC/PHY级别传输统计量,以估计信道状况和可用带宽。
在本发明的上述RMP方案中,并没有对数据信道255上发送的分组做出任何改动。因此保持了后向兼容性。此外,由于仅以较低的开销在控制信道上请求和重传丢失的媒体分组,所以本发明的RMP方案有效地利用了带宽。丢失分组请求起到NACK(否定应答)的作用,并且还向发送方提供了反馈。由于可以在恢复时间窗内多次重传丢失的分组,所以可以在各种不同的信道状况下提供高可靠性。此外,本发明的RMP方案通过设定用于重传的最大等待时间(即,恢复窗),强加了应用的等待时间约束,从而在给定的时间约束内在最强传递模式下工作。 注意,使用视频传输说明了以上实施例。本发明还可以应用于音频(例如电话)传输以及其他实时多媒体流传递应用。尽管关于无线网络描述了本发明的以上方案,然而本发明的方案可以用在涉及分组丢失的任何类型的网络中。应理解,可以以各种形式的硬件、软件、固件、专用处理器或其组合来实现本发明。优选地,将本发明实现为硬件和软件的组合。此外,优选地将软件实现为有形地体现在程序存储设备上的应用程序。可以将应用程序上载到包括任何合适架构的机器并由该机器来执行。优选地,将该机器实现在计算机平台上,所述计算机平台具有硬件,如,一个或多个中央处理单元(CPU)、随机存取存储器(RAM)和输入/输出(I/O)接口。计算机平台还包括操作系统和微指令代码。本文描述的各种过程和功能可以是微指令代码的一部分或应用程序的一部分,所述微指令代码或应用程序经由操作系统来执行。此外,可以将多种外围设备连接到计算机平台,如,附加的数据存储设备和打印设备。还应理解,由于附图所示的系统组件和方法步骤中的一些优选地是以软件形式实现的,所以系统组件(或过程步骤)之间的实际连接可能根据本发明编程方式的不同而不同。根据本文的教义,本领域技术人员将能够想到本发明的这些和类似实现方式或配置。
权利要求
1.一种方法,包括 解析(210,410)数字数据分组的抽象层首部,以获得层表示数据;以及 响应于所述解析,针对所述表示层为所述数字数据分组分派(410)优先级。
2.根据权利要求I所述的方法,其中, 获得层表示数据包括确定包括层间编码依赖级别的空间可缩放性(字节I)。
3.根据权利要求I所述的方法,其中, 获得层表示数据包括确定粒度可缩放性的质量级别(字节I)。
4.根据权利要求I所述的方法,其中, 获得层表示数据包括确定所述层表示的时间级别(字节2)。
5.根据权利要求I所述的方法,还包括 在实时传送分组首部的有效载荷类型字段(PT)中表示所述优先级级别。
6.根据权利要求I所述的方法,还包括 在互联网协议分组首部的服务类型字段(TOS)中表示所述优先级级别。
7.根据权利要求I所述的方法,还包括 存储(302)用于解析的数字数据文件。
8.根据权利要求I所述的方法,还包括 在解包器(304)处接收用于解析的数字数据。
9.根据权利要求I所述的方法,其中, 所述抽象层首部包括符合H. 264的网络抽象层首部。
10.根据权利要求I所述的方法,其中, 针对基本层分派(410)高优先级。
11.根据权利要求I所述的方法,其中, 针对增强层分派(410)中优先级。
12.根据权利要求11所述的方法,其中, 针对更高增强层分派(410)低优先级。
13.根据权利要求I所述的方法,还包括 在与数字网络接口(250)相连的网络监视器(270)处收集(405)当前网络统计数据。
14.根据权利要求13所述的方法,其中, 所述网络统计量包括信道状况数据,所述信道状况数据包括可用带宽、端到端分组丢失率和往返延迟之一。
15.根据权利要求14所述的方法,还包括 将最近传输的分组存储(420,430)在存储器(235)中;以及 响应于由所述网络监视器确定的所述信道状况数据,确定是否选择性地重传所述存储器中存储的所请求的丢失分组。
16.—种设备,包括 抽象层首部解析器(210),用于从数字数据分组获得层表示数据,并向所述层表示数据分派优先级,以及 缓冲存储器,用于将具有所分派的优先级的最近传输的分组存储在所述存储器中。
17.根据权利要求16所述的设备,还包括用于监控当前网络统计数据的网络监视器(270),以及响应于所述网络监视器的重传决定制定器(275)。
18.根据权利要求16所述的设备,其中, 所述抽象层首部解析器解析符合H. 264的网络抽象层首部。
19.一种数字数据处理设备,包括 用于解析数字数据分组的抽象层首部以获得层表示数据的解析装置(210,410);以及用于响应于所述解析针对所述层表示为所述数字数据分组分派优先级的分派装置(410)。
20.根据权利要求19所述的装置,还包括 用于存储具有所分派的优先级的最近传输的分组的存储装置。
21.根据权利要求19所述的装置,还包括 用于监控当前网络统计数据的监控装置(270)以及用于响应于所述监控装置的装置(275)。
22.根据权利要求19所述的设备,其中, 所述用于解析抽象层首部的解析装置(210,410)解析符合H. 264的网络抽象层首部。
全文摘要
描述了一种方法和设备,包括解析(410)抽象层首部,向要传输的分组分派优先级,缓冲要传输的数据,经由数据报协议(240,245)传输从缓冲器(235)获取的数据,接收(405)重传数据的请求,确定(415)所请求的数据是否在缓冲器中,以及经由提供了数据的端到端肯定应答和错误恢复的协议来重传所请求的数据。发射机的网络监视器(270,405)连接在网络接口(250)与重传决定制定器(275)之间,重传决定制定器(275)用于例如基于所分派的优先级和所收集的网络统计量来判定重传哪些分组。还可以在接收机(201)处提供网络监视器(271),以收集当前网络统计量并将这些当前网络统计量报告给发射机(200)。
文档编号H04L29/06GK102742245SQ201080062802
公开日2012年10月17日 申请日期2010年1月28日 优先权日2010年1月28日
发明者伊珊·尤蒂·曼德勒卡, 刘航, 吕秀平, 拉姆库马·佩努曼南 申请人:汤姆森许可贸易公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1