用于通过无线网络的数字视频传输的方法和系统的制作方法

文档序号:7950079阅读:309来源:国知局
专利名称:用于通过无线网络的数字视频传输的方法和系统的制作方法
技术领域
本发明涉及用于通过不可靠的无线通道的数字视频传输控制的方法和系统。本发明还涉及在数字视频系统中的数据分组的自适应传输。
背景技术
由于在无线网络中可利用的数据带宽小于通过该网络传输的数字视频的数据传输率,因此使用诸如MPEG之类视频编码标准的、通过无线网络的数字视频的传输通常会导致所显示视频无法接受的品质降低。
一种使数字视频适合于可利用的带宽的方法是将单层数字视频数据流分割为包含基本层(BL)和至少一个增强层(EL)的多层视频流,并随后通过网络传输这些层。BL分组包括视觉上的重要数据,EL分组包括视觉上的不太重要的数据。BL和EL分组必须在预定的截止时间(其确定最大可容许的端到端延迟)之前到达接收机,以便重组图像。
通过不可靠的无线通道传输的分层视频数据通常会遇到减小的介质容量。当无线介质的容量降低到低于压缩(分层的)视频的比特率时,典型的流控制算法就指示必须丢弃一些分组。就是说,在预定传递截止时间之后到达接收机的任何分组是没有用的。因此,最好首先丢弃这些分组而不传输它们,以便能使用剩余的通道带宽来传输能及时到达接收机的分组。
现有的用于视频数据的流控制方法或者太复杂或者要求可能是无法得到的额外信息,例如通道状态信息(CSA)。例如,如上所述,在现有视频传输系统中,视频内容被组织为多个层或优先级等级。该区分优先级的信息驻留在应用层中,并需要传递到通信设备的较低层(具体而言,数据链路层和介质访问控制层)以区分传输。新出现的IEEE 802.11e标准指定一种方法,即业务量规范(traffic specification)或TSPEC,以将数据业务量流信息传递到数据链路(DL)层和介质访问控制(MAC)层。然而,IEEE 802.11e的实施要求在无线LAN(WLAN)设备中的多个队列并且要对MAC协议进行修改,因此只能采用这种设备的新设计方案来实现。另外,许多现有WLAN设备或WLAN HW/SW设计方案不能被升级以支持IEEE 802.11e。
最后,尽管具有可论证的有效性,当前的使用在RTP标题中的专有视频负载型规范的信号通知机制使得RTP分组与RTP规范不相符。而且,它只能工作在点对点通信情况。所希望的是在每个通信会话期间或流执行这种信号通知,而不是每个分组都执行,以减小系统开销量,并遵守通信堆栈的较低层的基于流的设计原理。

发明内容
本发明的系统和方法提供了区分优先级的/自适应的流和分层视频流方法,以减轻带宽不足的影响,来容纳数字视频的高数据传输率。而且,本发明的系统和方法将信息从应用层提供到DL和MAC层,并同时保持视频数据分组形式服从现有的、用于采用多个同时进行的视频应用进行区分传输的通信协议和各种算法。
本发明的系统和方法提供了几个可选实施例,用于根据对于传输数字视频的各个视频应用所进行的传输控制是共同进行的还是分别进行的,来进行区分优先级的传输控制。
本发明包括有差异的传输(不相等的错误保护或UEP,及基于缓冲器充满程度的、选择性的分组丢弃)算法,其只适用于一个视频应用的点对点传输。在自适应流式传输系统中,诸如在本发明中所述的分层视频流式传输系统,给予每个层(或类似的,数据的每个部分或子集)的优先级对于用于UEP和链接自适应目的的DL和MAC层都是重要的。由于每个视频层(或视频数据子组;由此以后“层”用于指代二者)与唯一的发送者/接受者IP地址和端口对相关联,因此,在优选实施例中使用了这种关联的隐含的或明确的映射,以向DL和MAC发信号告知分层/优先级信息。
在一个优选实施例中,基本服务区(BSS)的接入点(AP)为多个视频应用充当聚集点。AP知晓所有此种视频业务量,并用每个视频应用的区分优先级的/自适应机制和分层的信号发送来进行每个视频流的传输控制。


图1A-B示出了多层数字视频序列的基本和增强层的、基于帧的分组传输顺序;图2示出了根据本发明的多层视频传输系统修改的设备的概念框图;图3示出了同时传送视频和数据业务量的无线网络;图4示出了用于包括不同类型的数据业务量的排队规则;图5示出了优先级排队;图6示出了用于分层视频流式传输的多缓冲器排队规则;图7示出了用于分层视频流式传输的双缓冲器排队规则;及图8示出了用于并行应用的分层视频流式传输的操作系统网络堆栈。
具体实施例方式
本领域的普通技术人员会理解,提供以下的说明是为了解释而不是用于限制。技术人员会理解在本发明的精神和所附的权利要求的范围内存在许多变化。从当前说明省略了已知的功能和操作的不必要的细节,以使得本发明不难于理解。
本发明的系统和方法几个备选方案,用于根据对于传输数字视频的各个视频应用所进行的传输控制是共同进行的还是分别进行的,来实现数字视频分组传输控制。这些控制包括·区分优先级的/自适应的传输1.基于缓冲器充满程度的对比基于错误统计的2.总体的对比每个视频节目分离的
·分层信号发送。
对于各个视频应用的总体传输控制是有差异的传输的一种简化形式,其中,在控制传输过程中仅仅使用优先级信息,即每个分组的优先级决定其如何传输,而无需考虑分组属于哪个视频应用。例如,AP 306能够·将不同的重试限制(通信设备重新传输分组直至接收到肯定应答为止的次数)应用到不同优先级等级,以进行区分;·将不同传输率(越高越不可靠)应用到不同优先级等级;及·如果输出的(传输)队列超出充满程度的特定阈值(表示马上将要发生队列溢出并且因此造成队列中的分组丢失),就丢弃一些增强层分组,其中,丢弃的增强层分组的数量使得输出队列状态低于溢出阈值,且丢弃的执行无需考虑各个增强层分组相关联的视频应用,以确保公平。
在操作的总体模式中,在相同优先级等级中的各分组之间没有做出区分,即使它们属于不同视频应用也是如此。这具有低实现复杂性的优点,然而,是以具有比更复杂的方法更低的传输效率为代价的。例如,如果一些视频应用的增强层分组被大量丢弃,它们就会受到不公平的损害。然而这个简单的区分传输方案确实实现了粗略的不相等的错误保护和信道自适应传输。
在一个方面,优先级和应用依赖于采用多个队列的传输,为每个应用保留单独的队列。设备驱动器或固件保持对状态的跟踪,并分别控制各个视频应用的传输。这再次具有在通信设备中的单一传输队列。
设备驱动器或固件在进程中跟踪各个视频应用的状态。特定分组的丢弃或发送不仅取决于队列状态和分组的优先级,还取决于分组属于哪个视频应用,以便确保对于每个视频应用进行丢弃的EL分组的公平分配。为了这个目的,设备驱动器记录每个视频应用的丢弃的分组的百分比。如果一个视频应用历史丢弃比率超出其它视频应用的丢弃比率达到一个预定阈值(例如,20%以内),那么该视频应用的EL分组就被不丢弃。
在再另一方面,丢弃在视觉上不太重要的EL分组是为了给将来的重要的BL数据腾出空间,即使EL分组能够及时到达解码器也是如此。一个优选实施例包括,对BL分组使用固定的端到端延迟,而对EL分组使用更短的截止时间(实际上是更小的端到端延迟)。这样,以丢弃当前EL分组为代价,确保了将来的BL分组的传输。
现在参照图3,IEEE 802.11WLAN的基本结构单元是基本服务区(BSS)301,其由接入点(AP)306和多个站点(STA)307.i组成。在典型A/V流式传输应用中,A/V流式传输服务器201(见图2)能够通过有线连接305连接到AP 306,或者直接采用插入到服务器的无线发射机(未示出)充当AP的主机。在以上任何一种情况下,AP 306都是业务量聚集和控制点,通过AP 306,所有分组经由WLANBSS 301传输。
现在参照图1B和3,在分层视频传输系统的一个优选实施例中,视频内容被划分为对于传输具有不同重要性或者优先级等级的几个层204。在发送方163212,这些优先级等级在多个传输会话期间(RTP会话期间)被传送,并向下传递到网络堆栈163(到较低层,例如DLL和MAC)。区分优先级提供了业务量分级和识别,其能用于下层的网络层,来执行链接或信道自适应。这类分级和识别通过垂直信号发送机制165向下传递到较低的网络层。在链接自适应网络层154中执行链接自适应算法。
由于在无线网络中可利用的数据带宽小于通过网络传输的数字视频的数据传输率,使用诸如MPEG之类的视频编码标准的、通过无线网络的数字视频的传输通常会导致所显示视频无法接受的品质降低。为了避免这种情况,可以使用分层视频传输系统。分层视频传输系统由三个部件组成在发射机中的分离器203和自适应调度装置205,及在接收机209中的合并器。
首先,使用区分优先级的方案将视频数据划分为包含重要信息的BL 101和包含不太重要信息的一个或多个EL 102.1-102.n,n≥1。其次,为了使接收的视频质量达到最大值,则进行自适应,其中,总是传输BL 101,而只要可利用的网络带宽对于所有视频数据的传输是不够的,一些或全部增强层就会被“丢弃”(即不发送)。
现在参照图1B,对于一个多层数字视频序列的BL和EL,示出了分组传输的基于帧的顺序。该多层视频数据层依次被分割为数据分组104 105,其通过网络传输。每个分组104 105由此分别与BL 101或EL 102.1-102.n,n≥1相关。对于每个视频帧103.i而言,与该帧相对应的分组被连续传输。通常,一个指定帧的所有BL分组104在该帧的EL分组105之前传输。如果使用了一个以上的EL 105,则各个分组就按照它们所属的EL 105的优先级的降序次序进行传输。这么做是为了确保较高优先级的分组更可能被发送并被接收。对于所有连续视频帧103.i重复这种排序。
可以预见,将来的数据、声音和音频/视频业务量将通过家用无线网络传送,该无线网络可能会通过家用网关304连接到外部网络,诸如因特网303。图3示出了基于IEEE 802.11的家用无线多媒体网络的实例。基本服务区(BSS)301传送由视频和数据组成的混合业务量。接入点(AP)306传输两个数字视频流,视频1 308.3和视频2308.1,以及一个数据流308.2。视频1308.3是发送到站点STA5307.5的多层视频流,视频2 308.1是发送到站点STA1307.1的单层视频流。发送到站点STA2307.2的数据流与因特网会话相对应。最后,站点STA4307.4向站点STA3307.3发送多层视频流视频3 308/4。
在该示意性实例中,在图2中所示的服务器201连接到诸如因特网的外部网络303;分离器203包含在家用网关中;包括多个传输缓冲器220的自适应传输205由AP 306执行;信道带宽包括由IEEE802.11网络为视频1分配的可利用量;接收、合并器和客户机程序包含在STA5内。此外,服务器、分离器和自适应传输包含在STA4内;信道带宽包括由IEEE 802.11网络为视频3 308.4分配的可利用量;接收、合并器和客户机程序包含在STA3307.3内。
无线IEEE 802.11网络301起到分组交换网络的作用,其中,每个发射机充当一个节点,其在通过通信链路发送网络分组之前,将其存储在数据缓冲器中;这被称为存储转发。排队规则402确定等待进行传输的分组的存储方式和它们随后进行传输的顺序。基本上,如图5所示,排队规则402包括分类器502、一个或多个数据缓冲器503和调度装置504。
图4示出了如何使用排队规则接收包含在数据分组中的不同类别的输入业务量401(例如,视频和数据),并通过通信链路将它们作为数据分组中输出业务量406进行发送。
现有技术的排队规则,诸如WFQ(加权公平排队)、CBWFQ(基于分类的加权公平排队)、WRR(加权循环)和PQ(优先级排队),都没有利用分层视频的唯一特性,因此仅仅能够获得次最佳的效率。图5示出了优先级排队(PQ),作为典型排队规则的一个实例。分类器502确定输入业务量分组501所属的类别(即,C1、C2或C3),并将其存储在适当的缓冲器或队列503中。随后,调度装置504根据优先级,从这三个队列(每一个对应一个类别)的每一个中选择分组,用于作为输出业务量508通过通信链路进行传输。然而,在这个排队规则中,只在不同类别的业务量分组之间(例如,在视频和数据流之间或在任何不同类型的流之间)进行区分,而不是在相同类别的不同层之间进行区分。此外,分层流式传输的选择性分组自适应的现有方法需要修改设备驱动器或甚至接入设备本身,或者另外需要来自无线接收机的信息或与其有关的知识。在本发明中,网络条件和可利用带宽的确定,及EL的实际丢弃全部包含在排队规则505中。
在优选实施例中,本发明提供了排队规则505,其以使得传输的EL分组数量最大同时确保在任何可能时刻的BL分组的传输的方式,来自适应地选择一个多层视频流的数据分组进行传输。
在本发明的优选实施例中所使用的,用于决定何时丢弃EL分组的技术是基于这个原则如果分组存储在缓冲器(队列)中用于通过网络进行传输,则在一定时间段内该缓冲器中的分组平均数量与在该时间段内可利用的网络带宽量相对应。具体而言,如果网络非常拥挤,或者具有低可利用带宽,分组被存储在缓冲器中的速度会比将它们移出而进行传输的速度更快,则在缓冲器中的平均分组数量会很大。一方面,如果网络不拥挤,可利用其全部带宽,可以将分组非常迅速地从缓冲器移出,则在缓冲器中的平均分组数量将会很小。在该缓冲器中的数据量充当可利用网络带宽的指示,这进而用于确定是传输还是丢弃EL分组。
本发明的一种方法的优选实施例是一种手段,用于控制在多层数字视频流式传输系统中通过无线网络对EL分组的传输。在图6中示出了用于这种方法的缓冲器结构和排队规则的框图。
以下一系列阈值与来自BL队列的分组的传输相关联D_THLD_ELiA_THLD_ELi根据以下方案,确定ELi以便为传输过程而分别对ELi丢弃和增加分组。
要被传输的数据分组存储在一个缓冲器中,其与分组所属的视频流层(EL或BL)相对应,它由分类器502来为每个分组确定。在逐步降低可利用网络带宽的条件下,EL 605.1-605.n被丢弃,从最低优先级的层开始,接着是第二低优先级的层,并持续这种方式直到最高优先级的增强层。使用在基本层缓冲器BL 604中的分组的平均数量作为可利用网络带宽的量度标准。如果该数量超过阈值D_THLD_ELn,则将最低优先级的增强层分组从EL缓冲器ELn605.n中丢弃;这意味着通过网络传输更少的来自视频流的数据分组,由此减轻了网络拥塞,并确保接收到更高比例的传输的较高优先权EL分组。
如果丢弃该增强层导致传输的分组的速率低于由网络带宽施加的限制,则在基本层缓冲器BL 604中的分组平均数据不会继续增加,甚至会减小。如果它确实超过了第二阈值D_THLD_ELn-1,则就从缓冲器ELn-1605.n-1中丢弃第二最低优先级的增强层分组。用与相继的更高优先级的增强层缓冲器ELn605.n相对应的各个阈值D_THLD_ELn,对基本层缓冲器BL 604中的分组平均数量的相继的更高阈值进行如此处理,直至到达最高优先级层的缓冲器EL1的阈值D_THLD_EL1;在这时,所有EL分组都被丢弃。
在某时刻,由于网络条件改善,可利用带宽增加,BL缓冲器中的分组平均数量会开始减小。当该数值下降到低于与当前没有传输的最高优先级的缓冲器ELK(即,已经在以前被丢弃的)相对应的阈值A_THLD_ELK时,则恢复对来自该EL的分组的传输。随着缓冲器BL中的分组平均数量继续下降到低于相继的更低阈值A_THLD_ELn,其每一个都与相继的更低优先级的增强层缓冲器ELn相对应,对该增强层的分组的传输被恢复;如此进行直至达到最低优先级的缓冲器ELn的阈值A_THLD_ELn;在这时,所有EL分组都被再次传输。
对于各个增强层缓冲器ELn,用于丢弃分组的基本层缓冲器BL的阈值D_THLD_ELn高于用于恢复传输的阈值A_THLD_ELn。这么做是因为数字视频流会是非常“突发性的”,在其中存在数据分组数非常大的时间段,以及非常小的时间段。为了确保第一种情况不被误解为网络带宽降低的情形,用于从指定增强层中丢弃分组的阈值必须设定为一个足够高的值。与此相反,用于从该增强层中恢复传输的阈值必须足够低,以使得上述第二种情况不被误解为网络带宽改善的情形。无论如何,前一阈值必须高于后一阈值,两个阈值随EL优先级单调增大,以使得D_THLD_ELn≥A_THLD_ELnD_THLD_ELn+1≤D_THLD_ELnA_THLD_ELn+1≤A_THLD_ELn在优选实施例中,根据系统要求和实施,实际的增强层分组丢弃包括两种方法。在第一种情况下,EL分组在被存储于它们的适当缓冲器(ELn)中之前就被丢弃。排队策略随后由缓冲器BL 604中的分组平均数量来控制,并由分类器502执行,其确定分组所属的缓冲器ELn605.1-605.N,并仅仅包括不向已经被丢弃的EL的缓冲器中写入任何分组。这种情况的离队策略是以下之一顺序读取每个缓冲器中的每个分组、从BL缓冲器604开始并按照优先级的降序依次针对所有EL而进行(即以EL1605.1开始,以ELn605.n结束)、以及立即传输每个分组。在以下伪代码段中给出与该规则相对应的用于排队和离队策略的各自的算法使得
current_buffer 指示当前(BL或ELn)缓冲器,current_frame 指示当前视频帧。
排队/*在队列中存储当前输入的分组*/分类分组并选择适当的缓冲器(BL或ELK)if缓冲器是激活的and不满在缓冲器中存储分组确定增强层ELn分组是否需要被丢弃else丢弃分组离队/*从队列中取回下一个输出分组*/do forever(循环)if在current_buffer中的队列前部的分组属于current_frame退出循环else /*前进到下一个缓冲器*/ifcurrent_buffer是最低优先级的缓冲器(ELN)将current_buffer设定为BL缓冲器递增current_frameelse将current_buffer设定为下一个较低优先级的缓冲器(ELn+1)确定增强层ELn是否能被设定为激活的从current_buffer取回并发送队列前部的分组在第二优选实施例中,所有EL分组都存储在适当的缓冲器(ELn605.n)中,但如果其已被丢弃就不进行传输。于是,排队策略包括按照分类器所确定的,将每一个分组写入到其所属的缓冲器ELn605.n中。在此情况下,离队策略由基本层缓冲器BL 604中的分组平均数量来控制,并简单的包括不从已被丢弃的增强层的缓冲器中读取任何分组。该实施例具有减小在网络带宽变化的确定与传输的分组数量的相应增加或减小之间的等待时间的优点。在以下伪代码段中给出与该规则相对应的用于排队和离队策略的各自的算法排队/*在队列中存储当前输入的分组*/分类分组并选择适当的缓冲器(BL或ELK)if 缓冲器是满的丢弃分组else在缓冲器中存储分组确定增强层ELn分组是否需要被丢弃离队/*从队列取回下一个输出分组*/do forever(循环)if在current_buffer中的队列前部的分组属于current_frameif current_bufer是激活的/*找到适合传输的分组*/退出循环else/*找到需要被丢弃的分组*/丢弃分组继续循环的下一个重复else/*前进到下一个缓冲器*/if current_buffer是最低优先级的缓冲器(ELN)将current_buffer设定为BL缓冲器递增current_frameelse将current_buffer设定为下一个较低优先级的缓冲器(ELn+1)确定增强层ELn是否能被设定为激活的从current_buffer取回并发送队列前部的分组一个可选实施例利用了这样一个事实对于指定的增强层,增强层分组被连续传输,这些连续的组能够按照增强层优先级的降序依次进行传输。就是说,如果一个增强层被丢弃,所有具有比其更低的优先级的增强层对于接收机就没有用了。因此,以上述顺序排列的增强层分组的传输能够在视频帧中的任意点被截断。接收机207随后能够使用所有传输的EL数据来提供与该数据量成比例的视频质量等级。该数据量又对应于该截断点,能够选择该点的位置以使得能够传输来自指定帧的任意期望数量的EL分组。这可以用作一个机制,用于响应于任意的网络带宽减少量,丢弃任意数量的EL分组,其中,网络带宽的减少量由基本层缓冲器中的分组的平均数量来确定。它还具有另一个优点只需要两个缓冲器,一个给BL分组,一个给所有EL分组。在图7中示出了用于该方法的缓冲器结构705 706和排队规则703的框图700。
在该可选实施例中。分类器502确定各个数据分组所属的层。基本层分组存储在缓冲器BL 705中。EL分组存储在缓冲器EL 706中,但对于每一个EL必须排列为相连的组,这些组必须依次按照EL优先级降序来组织(即,对于指定的视频帧,EL1的EL分组的相连的组首先被存储,接着是EL2的组,等等,ELn的组最后被存储)。再一次,根据缓冲器BL 705中的分组平均数量确定网络带宽。如果这个数量超过阈值THLD_1,就从增强层分组序列的末尾丢弃指定数量的分组。如果在缓冲器BL 705中的分组数量超过第二个较高的阈值THLD_2,就丢弃更多数量的EL分组。被丢弃的EL分组数随着所超过的最大平均EL分组数量阈值THLD_n而单调增加。优选的,不同阈值用于丢弃指定数量的分组,并且用于恢复同一数量分组的传输,前一阈值总是高于后者,以使得该方法在突发网络数据业务量的情况下更稳固。
尽管在框图中示出了阈值等级的离散的数值,被丢弃的分组数量也可以实现为缓冲器BL 705中的分组平均数量的连续单调函数。为了使得该可选实施例在突发网络数据业务量的情况下更稳固,该函数优选的进一步扩充为连续、单调的滞后(hysteresis)函数,类似于施加了磁场的铁磁性材料的磁化。
EL分组的丢弃减少了通过网络传输的分组数量,减轻了网络拥塞,并确保接收到更高比例的传输的分组。优选的,排队规则包括在存储之前(排队)或之后(离队)丢弃这些分组。与这两个规则相对应的、用于排队和离队策略的各自的算法在以下伪代码段中给出使得current_buffer指示当前(BL或EL)缓冲器,current_frame指示当前视频帧。
TN_EL_T指示要传输的来自current_frame的EL分组数量N_EL_T指示已经传输的来自current_frame的EL分组数量在排队时丢弃增强层分组排队/*在队列中存储当前输入的分组*/分类分组并选择适当的缓冲器(BL或EL)if缓冲器是满的丢弃分组elseif缓冲器是BL缓冲器在缓冲器中存储分组计算TN_EL_T设定N_EL_T=0else if(N_EL_T≤TN_EL_T)在缓冲器中存储分组递增N_EL_Telse丢弃分组离队/*从队列取回下一个输出的分组*/do forever(循环)if 在current_buffer中队列前部的分组属于current_frame
退出循环else /*前进到下一个缓冲器*/if current_buffer是EL缓冲器将current_buffer设定为BL缓冲器递增current_frameelse将current_buffer设定为EL缓冲器从current_buffer取回并发送队列前部的分组if current_buffer是BL缓冲器计算TN_EL_T在离队时丢弃增强层分组排队/*在队列中存储当前输入的分组*/分类分组并选择适当的缓冲器(BL或EL)if 缓冲器是满的丢弃分组else在缓冲器中存储分组if缓冲器是BL缓冲器计算TN_EL_T离队/*从队列取回下一个输出的分组*/do forever(循环)if 在current_buffer中队列前部的分组属于current_frameif current_buffer是BL缓冲器退出循环else if(N_EL_T≤TN_EL_T)退出循环递增N_EL_Telse丢弃分组继续循环的下一个重复else /*前进到下一个缓冲器*/if current_buffer是EL缓冲器将current_buffer设定为BL缓冲器递增current_frame将N_EL_T设定为0else将current_buffer设定为EL缓冲器从current_buffer取回并发送队列前部的分组if current_buffer是BL缓冲器计算TN_EL_T作为一个实例,图8示出了实际的流式传输视频系统,图8显示了在服务器节点上的操作系统网络堆栈,该服务器节点还运行一个或多个其它应用程序,该堆栈包括应用层812和内核网络堆栈802。
各个应用程序通过套接字803.i将数据发送到内核网络堆栈,在此该应用程序被输入到与其相对应的套接字缓冲器804.i。来自不同应用程序的数据流随后被多路复用到网络设备(例如,无线发射机)的排队规则805中。在该实例中,排队规则805是具有两个业务量类别的优先级队列,第一个是由流式传输服务器发送的分层视频流,第二个是由其它应用程序发送的数据。一旦网络分组已经被分类器806与一个业务量类别相关联,其就被输入到第二级排队规则中。分层视频流的第二级排队规则807包括本发明,而在此情况下的剩余数据业务量的第二级排队规则利用了先进先出(FIFO)操作方法808。
现在参照图1B,在优选实施例中,本发明的系统和方法为多个视频应用提供了优先级分类信号发送,这些视频应用通过AP传输到一个或多个接收机。每个视频应用都与唯一的接收地址和端口组相关联。一个视频应用包括多个层,其每一个都具有唯一的对应IP端口号。因此,特定视频应用流的视频层与唯一的一个IP地址与端口对相关联。该信息由应用层所掌握,应用层随后能够构建一个表,将每个IP地址/端口对分配到一个优先级,并在应用程序初始化时,例如在允许进行控制期间,将该表向下传递到DLL/MAC。下层通信设备的DLL/MAC接收该表,并基于在IP分组中发现的IP地址/端口信息,用该表将优先级分配给各个输入的分组。
尽管已经示出并说明了本发明的优选实施例,本领域的技术人员会理解在此所述的管理架构、设备体系结构和方法是说明性的,可以做出各种变化和修改,等效物可以替代其要素,而不会脱离本发明的真正范围。另外,可以做出许多修改以使本发明的教导适用于特定的情况,而不会脱离其主要范围。因此,本发明意图不限于作为设想用于执行本发明的最佳模式而公开的特定实施例,本发明包括落入所附权利要求范围内的所有实施例。
权利要求
1.一种用于对视频应用的视频流进行自适应传输控制的设备,所述视频应用包括多个区分优先级的视频分组,所述多个视频分组具有多个优先级,所述设备包括传输端(212),包括多个传输缓冲器(220),用于存储所述多个区分优先级的视频分组;自适应传输部件(205),包括用于选择性地传输/丢弃视频分组的机制,所述视频分组的传输/丢弃由所述多个传输缓冲器(220)中的至少一个的预定充满阈值来决定;以及接收部件(207),接收所述视频流的被传输的多个视频分组。
2.如权利要求1所述的设备,其中所述多个传输缓冲器(220)是多个区分优先级的队列(503),其按照预定的排队方案(403)(502)(806),与各个区分优先级的分组中的分组(402)(505)(805)相对应并对其进行存储;以及所述自适应传输部件(205)还包括一种机制,用于根据预定的区分优先级的队列充满方案(610),离队/丢弃被排队的用于传输的分组(606)(707)。
3.如权利要求2所述的设备,其中,所述预定排队方案(403)(502)(806)包括在具有相同的预先分配的优先级的队列(404)(503)中存储区分优先级的视频分组。
4.如权利要求3所述的设备,其中,所述预先分配的优先级包括至少一个最高优先级,其与视觉上重要的数据相对应,以及至少一个较低优先级,其与视觉上不太重要的数据相对应。
5.如权利要求2所述的设备,其中,所述自适应传输部件(205)还包括针对最高优先级分组的离队使用固定的端到端延迟,针对丢弃较低优先级分组使用较小的端到端延迟。
6.如权利要求2所述的设备,其中所述视频流还包括与视频应用相对应的至少一个多层视频流(100)(204),每个所述层与所述多个优先级中的一个优先级相对应;所述自适应传输部件(205)还包括对所述多个多层视频流(100)的总体传输控制,包括i.对所述多个区分优先级的队列中的至少一个使用不同的重试限制,ii.对所述多个区分优先级的队列中的至少一个使用不同的传输速率,以及iii.如果传输队列超过预定的充满阈值,就从该传输队列中丢弃预定数量的较低优先级分组,以使得该传输队列不再超过所述预定的充满阈值,而无需考虑与每个分组相关的视频应用。
7.如权利要求6所述的设备,其中通过将优先级分配给唯一的IP地址与端口号对,使得每个视频应用的每个层与优先级相关联,所述IP地址与端口号对来自于发送该层的视频应用的唯一的接收地址和该层的唯一的对应的因特网协议(IP)端口号;以及所述预先分配的优先级由一个表确定,所述表在所述视频应用初始化期间被向下传递到数据链路层/MAC(154/155),所述表包括每个视频层的所述的唯一的IP地址与端口号对。
8.如权利要求7所述的设备,其中,所述自适应传输部件(205)为每个视频应用保留较低优先级分组的历史丢弃比率,并且,如果一个应用的历史丢弃比率超出另一个视频应用的丢弃比率达到一个预定的丢弃阈值,就不丢弃这个视频应用的较低优先级分组。
9.如权利要求2所述的设备,其中所述视频流还包括与视频应用相对应的至少一个多层视频流(100)(204);为每个视频应用单独保留所述多个区分优先级的队列(220);以及所述自适应传输部件(205)还包括对于所述多个多层视频流(204)中的每一个的独立的传输控制,包括i.对所述多个区分优先级的队列(220)中的至少一个使用不同的重试限制,以及ii.对所述多个区分优先级的队列(220)中的至少一个使用不同的传输速率,所述自适应传输部件(205)还包括总体传输控制,以便存在单一传输队列,并且,如果所述单一传输队列超过预定的充满阈值,就从该传输队列中丢弃预定数量的较低优先级分组,以使得该传输队列不再超过所述预定充满阈值,而无需考虑与每个分组相关的视频应用。
10.如权利要求9所述的设备,其中通过将优先级分配给唯一的IP地址与端口号对,使得每个视频应用的每个层(101)(102)与优先级相关联,所述IP地址与端口号对来自于发送该层的视频应用的唯一的接收地址和该层的唯一的对应的因特网协议(IP)端口号;以及所述预先分配的优先级由一个表确定,所述表在所述视频应用初始化期间被向下传递到数据链路层/MAC(154/155),所述表包括每个视频层的所述的唯一的IP地址与端口号对。
11.如权利要求10所述的设备,其中,所述自适应传输部件(205)为每个视频应用保留较低优先级分组的历史丢弃比率,并且,如果一个应用的历史丢弃比率超出另一个视频应用的丢弃比率达到一个预定的丢弃阈值,就不丢弃这个视频应用的较低优先级分组。
12.如权利要求2所述的设备,其中,所述区分优先级的队列的充满方案(610)(703)包括一种手段,用于决定是否丢弃或增加层的分组的传输,以使得具有较高优先级的分组的传输达到最大程度。
13.如权利要求12所述的设备,其中,所述区分优先级的队列的充满方案(610)(703)部分地基于以下原理如果分组存储在用于传输的队列中,则在一个时间段内在所述队列中的分组的平均数量与该时间段内可利用的网络带宽量相对应。
14.如权利要求13所述的设备,其中所述多个层(204)和相应的队列(205)包括具有最高优先级的基本层(BL)(101)和相应的BL队列(604)(705),以及具有预定的较低优先级的至少一个增强层i(ELi)(102.i)和相应的ELi队列(605.i)(706);所述区分优先级的充满方案还包括用于每个ELi队列的一系列阈值(610)D_THLD_ELi,用于从ELi中丢弃分组A_THLD_ELi,用于向ELi中增加分组,所述一系列阈值用来确定在所述BL队列(604)中的分组的平均数量何时超过D_THLD_ELi以致于在所述增强层队列ELi(605.i)中的分组被丢弃,以及在所述BL队列(604)中的分组的平均数量何时降低到低于A_THLD_ELi以至于在所述增强层队列ELi(605.i)中的分组被增加。
15.如权利要求14所述的设备,其中,所述的两个阈值随着EL优先级而单调增大,以使得D_THLD_ELi≥A_THLD_ELiD_THLD_ELi+1≤D_THLD_ELiA_THLD_ELi+1≤A_THLD_ELi。
16.如权利要求15所述的设备,其中,借助于从以下组中选出的技术来进行EL分组的丢弃i.在EL分组被排队之前将其丢弃,以及ii.对EL分组进行排队,但对于已经被丢弃的EL不使得任何用于传输的分组离队。
17.如权利要求13所述的设备,其中所述多个层(204)和相应的队列(220)包括具有最高优先级的基本层(BL)(101)和相应的BL队列(705),以及具有较低优先级的至少一个增强层i(ELi)(102.i)和一个合并的EL队列(706);所述区分优先级的充满方案还包括用于每个ELi(102.i)的一系列阈值D_THLD_i,用于从所述EL队列(706)中丢弃预定数量的分组A_THLD_i,用于从所述EL队列(706)中恢复预定数量的分组的传输,所述一系列阈值用来确定所述BL队列(705)中的分组的平均数量何时超过D_THLD_i以致于在所述增强层队列EL(706)末尾的预定数量的分组被丢弃,或者当所述平均数量降低到低于A_THLD_i时相同预定数量的分组被增加到队列EL(706)的末尾。
18.如权利要求17所述的设备,其中,所述阈值随着EL优先级而单调增大,以使得D_THLD_i≥A_THLD_iD_THLD_i≥D_THLD_i+1A_THLD_i≥A_THLD_i+1。
19.一种用于对多个应用中的视频应用的至少一个多层视频流(204)进行自适应传输控制的系统,所述系统包括服务器(201),所述服务器(201)包括操作系统网络堆栈,所述堆栈包括i.应用层(812);以及ii.核心网络堆栈(802),其包括排队规则(805),所述排队规则(805)包括如权利要求11所述的用于对所述至少一个多层视频流(204)进行自适应传输控制的设备(205)。
20.一种用于多个应用的视频应用的至少一个多层视频流(204)的自适应传输控制的系统,所述系统包括服务器(201),所述服务器(201)包括操作系统网络堆栈,所述堆栈包括i.应用层(812);以及ii.核心网络堆栈(802),包括排队规则(805),所述排队规则(805)包括如权利要求14所述的用于对所述至少一个多层视频流(204)进行自适应传输控制的设备(205)。
21.一种分层视频传输系统,包括服务器(201),用于传输单层视频流(202);分离器(203),其创建视频流,所述视频流具有多个层(204),包括来自所述单层视频(202)的至少一个基本层(101)和至少一个增强层(102.i);以及自适应传输部件(205),包括从由以下设备构成的组中选出的设备如权利要求14所述的设备,以及如权利要求17所述的设备,所述选择的设备用于所述多层视频流(204)的传输;接收模块(207),用于接收所述被传输的多层视频流(213);以及合并模块(209),其将所接收的多个层(208)合并,以向客户机(211)输出合并图像。
22.如权利要求21所述的系统,其中,第一无线设备(307.4)包括服务器、分离器和自适应传输部件,第二无线设备(307.3)是所述客户机并且包括接收模块、合并模块。
23.如权利要求22所述的系统,其中,所述第一无线设备(307.4)和所述第二无线设备(307.4)是IEEE 802.11基本服务区(BSS)的站点。
24.如权利要求21所述的系统,其中所述服务器(201)连接到外部网络(303);并且所述系统还包括i.网关节点,其包括所述分离器(304),ii.无线网络(301),其具有接入点(306),所述接入点(306)包括所述自适应传输部件和至少一个站点(307.i),所述至少一个站点(307.i)配置为客户机(211)并且包括所述接收模块(207)和合并模块(209)。
25.如权利要求24所述的系统,其中,所述外部网络(303)是因特网,所述无线网络(301)是IEEE 802.11基本服务区(BSS)。
26.一种用于对视频应用的视频流(204)的传输进行自适应控制的方法,所述视频应用包括多个区分优先级的视频分组层,所述方法包括步骤提供多个区分优先级的队列(220),其中,所述优先级包括最高优先级和至少一个较低优先级,分别与视觉上的重要数据和视觉上的不太重要的数据(100)相对应;将每个所述区分优先级的分组在具有相同的预先分配优先级的队列(220)中进行排队(403)(502)(603)(704)(806);根据预定的区分优先级的队列充满方案(610)(703),使被排队的用于传输的分组离队(405)(504)(606)(807)。
27.如权利要求26所述的方法,其中,所述离队步骤(405)(504)(606)(807)包括步骤针对最高优先级分组的离队使用固定的端到端延迟,针对丢弃较低优先级分组使用较小的端到端延迟。
28.如权利要求27所述的方法,其中所述视频流(204)还包括与视频应用相对应的至少一个多层视频流(204);所述离队步骤(405)(504)(606)(807)还包括通过执行以下步骤中的至少一个步骤而对所述多个多层视频流进行总体传输控制i.对所述多个区分优先级的队列中的至少一个使用不同的重试限制,ii.对所述多个区分优先级的队列中的至少一个使用不同的传输速率,以及iii.当一个传输队列超过预定的充满阈值时,就从该传输队列中丢弃预定数量的较低优先级分组,以使得该传输队列不再超过所述预定的充满阈值,而无需考虑与各个分组相关的视频应用。
29.如权利要求28所述的方法,还包括步骤通过将优先级分配给唯一的IP地址与端口号对,将每个视频应用的每个层与优先级相关联,所述IP地址与端口号对来自于发送该层的视频应用的唯一的接收地址和该层的唯一的对应的因特网协议(IP)端口号;以及建立每个视频层的唯一IP地址与端口号对的表;在所述视频应用初始化期间将所述表向下传递到数据链路层/MAC(154/155);以及使用所述向下传递的表确定所述预先分配的优先级。
30.如权利要求29所述的方法,还包括步骤为每个视频应用保留较低优先级分组的历史丢弃比率;当第一应用的历史丢弃比率超出其它视频应用的丢弃比率达到一个预定的丢弃阈值时,就保留所述第一应用的较低优先级分组。
31.如权利要求26所述的方法,其中所述视频流还包括与视频应用相对应的至少一个多层视频流(204);为每个视频应用独立地保留所述多个区分优先级的队列(220);以及所述离队步骤(405)(504)(606)(807)还包括步骤通过执行以下步骤,来独立地控制所述多个多层视频流中的每一个i.对所述多个区分优先级的队列中的至少一个使用不同的重试限制,及ii.对所述多个区分优先级的队列中的至少一个使用不同的传输速率,iii.当所述单个传输队列超过预定的充满阈值时,就从该传输队列中丢弃预定数量的较低优先级分组,以使得该传输队列不再超过所述预定的充满阈值,而无需考虑与每个分组相关的视频应用。
32.如权利要求31所述的方法,还包括步骤通过将优先级分配给唯一的IP地址与端口号对,将每个视频应用的每个层与优先级相关联,所述IP地址与端口号对来自于发送该层的视频应用的唯一的接收地址和该层的唯一的对应的因特网协议(IP)端口号;建立每个视频层的唯一IP地址与端口号对的表;在所述视频应用初始化期间将所述表向下传递到数据链路层/MAC(154/155);以及使用所述向下传递的表确定所述预先分配的优先级。
33.如权利要求32所述的方法,还包括步骤为每个视频应用保留较低优先级分组的历史丢弃比率;当第一应用的历史丢弃比率超出其它视频应用的丢弃比率达到一个预定的丢弃阈值时,就保留所述第一应用的较低优先级分组。
34.如权利要求26所述的方法,还包括步骤决定是否丢弃或增加层的分组的传输,以使得具有较高优先级的分组的传输达到最大程度。
35.如权利要求34所述的方法,其中,所述决定步骤部分地基于以下原理如果分组存储在用于传输的队列中,则在一个时间段内在所述队列中的分组的平均数量与该时间段内可利用的网络带宽量相对应。
36.如权利要求26所述的方法,其中所述提供步骤还包括步骤提供所述多个层(204)和相应的队列(220)作为具有最高优先级的基本层(BL)(101)和相应的BL队列(604)(705),以及具有预定的较低优先级的至少一个增强层i(ELi)(102.i)和相应的ELi队列(605.i)(706);所述离队还包括步骤i.为每个ELi队列(605.i)(706)分配一系列阈值D_THLD_ELi,用于从ELi(605.i)(706)中丢弃分组A_THLD_ELi,用于向ELi(605.i)(706)中增加分组,ii.当所述BL队列(604)(705)中的分组平均数量超过D_THLD_ELi时,丢弃在所述增强层队列ELi(605.i)(706)中的分组,并且iii.当所述BL队列(604)(705)中的分组平均数量降低到低于A_THLD_ELi时,增加在所述增强层队列ELi(605.i)(706)中的分组。
37.如权利要求36所述的方法,其中,所述的两个阈值随着EL优先级而单调增大,以使得D_THLD_ELi≥A_THLD_ELiD_THLD_ELi+1≤D_THLD_ELiA_THLD_ELi+1≤A_THLD_ELi。
38.如权利要求36所述的方法,其中,所述丢弃EL分组的步骤还包括执行从以下步骤构成的组中选出的一个步骤i.在EL分组被排队之前将其丢弃,以及ii.对EL分组进行排队,但对于已经被丢弃的EL不使得任何用于传输的分组离队。
39.如权利要求26所述的方法,其中所述提供步骤还包括步骤提供所述多个层和相应的队列作为具有最高优先级的基本层(BL)(101)和相应的BL队列(604)(705),以及具有预定的较低优先级的至少一个增强层i(ELi)(102.i)和相应的ELi队列(605.i)(706);所述离队还包括步骤i.为每个ELi队列(605.i)(706)分配一系列阈值D THLD_i,用于从所述EL队列(605.i)(706)中丢弃预定数量的分组A_THLD_i,用于从所述EL队列(605.i)(706)中恢复相同预定数量的分组的传输ii.当所述BL队列(604)(705)中的分组平均数量超过D_THLD_i时,丢弃在所述增强层队列EL(605.i)(706)末尾的预定数量的分组,以及iii.当所述BL队列(604)(705)中的分组平均数量降低到低于A_THLD_i时,将相同预定数量的分组增加到所述增强层队列EL(605.i)(706)的末尾。
40.如权利要求39所述的方法,其中,所述阈值随着EL优先级而单调增大,以使得D_THLD_i≥A_THLD_iD_THLD_i≥D_THLD_i+1A_THLD_i≥A_THLD_i+1。
全文摘要
提供了一种设备、系统和方法,用于对通过无线局域网(WLAN)的分层流式传输的视频进行自适应流控制。在一个方面,基于缓冲器充满程度以及丢弃视觉上的不重要的分组以便将来的视觉上更重要的分组能够及时到达解码器,而提供了区分优先级的和自适应的传输机制。在另一个方面,为所有视频应用提供了总体控制,以及为每个视频应用提供单独控制。
文档编号H04L12/56GK101077010SQ200580042798
公开日2007年11月21日 申请日期2005年12月12日 优先权日2004年12月15日
发明者Y·陈, R·施米特, R·陈, K·威蒂格, K·沙拉帕利 申请人:皇家飞利浦电子股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1