专利名称:用于数字视频广播的分组调度系统的制作方法
技术领域:
本发明一般涉及数据通信。更具体地,本发明涉及用来调度数据以最优化用于数字视频广播传送的带宽及调制和编码率使用的系统和方法。
背景技术:
数字视频广播-卫星-第二代(DVB-S》是用于卫星广播的标准。按照DVB-S2标准,组装的数据帧被认为是基带帧(BBFrame)。BBFrame可具有从3072到58192比特的可变长度。此外,每个帧在被传送时能有不同的调制和编码率、或M0DC0D。调制定义了比特到符号的映射并因此定义了通过某符号运送的比特的数目,而编码则用于纠错。更大保护性的MODCOD更容忍较差的传送环境,并因此防止错误,但每符号传送不多的比特。从发射机到接收机的BBFrame传输流的传送可以是恒定比特率(“CBR”)或可变比特率(“VBR”)的。DVB-S2还支持自适应传送模式自适应编码和调制(ACM)。ACM在传送期间调整载波的编码和调制以优化服务质量和吞吐量,适应于改变的链路条件。因此,基于传送条件,恒定的符号率(symbol rate)可以运送不同比特率的信息。网络发射机装置可以连接到单个出境链路。如果发射机装置支持多入境客户 (client)流,则发射机装置为仲裁多入境客户流之间的单个出境链路的共享负责。一种现有技术仲裁方案是先到先服务方案。在该解决方案中,通过发射机装置从入境客户接收分组。发射机装置以分组被接收的相同顺序将分组传送给出境链路。该方案并不排除一个客户独占或不公平地消费整个出境链路。另一个现有技术仲裁方案是分组轮式方案(packet-wise round-robin scheme)。 在该解决方案中,发射机装置周期性地服务每个入境客户或进入(incoming)队列。发射机装置每当入境客户被服务时将分组发送到出境链路上。该解决方案阻止了单个流独占整个链路。然而,传送并不是变化进入分组大小的函数,并因此不能保证入境客户流之间的公平性。该方案的另一种变化是估计来自入境客户的每个进入比特。然而,尽管该方法提供了最细粒度级(finest level of granularity),但是该方法消耗了大量资源且实际上实施困难。然而,现有技术方法都没有考虑在调度用于传送的分组时变化出境调制链路编码的灵活性。因此,存在对以下系统和方法的需求,该系统和方法考虑传送帧时自适应调制能力,以更有效地调度输入流的多路复用。
发明内容
在本发明的一个实施例中,提供了用于仲裁IP通信至输出的装置。该装置包括 (1)存储第一输入流的第一输入缓存;( 存储第二输入流的第二输入缓存;C3)耦合到第一输入缓存和第二输入缓存的调度多路复用器,以基于估计的符号消耗调度用于传送的多个分组;(4)耦合到调度多路复用器的输出缓存,以存储被调度用于传送的分组;以及(5) 耦合到输出缓存的成帧器,以确定实际符号消耗。
4
在本发明的另一个实施例中,提供了用于仲裁IP通信至输出的方法。该方法包括接收多个输入流;识别与所述多个输入流中的每一个相关联的最小比特率、最大比特率、以及调制和编码(MODCOD)率;将至少两个输入流的分组分成第一类和第二类;调度包括第一通行(pass)和第二通行的数据传送的轮次(轮round),其中第一通行包括第一类中的分组,其中第二通行包括第二类中的分组;传送调度给第一通行的分组;以及传送调度给第二通行的分组,其中,如果下一数据帧小于整帧的数据并且数据传送的轮次具有比下一数据帧更大保护性和更低效的调制和编码率,则第二通行中传送的分组大于给第二通行的调度分组。以上是选择性实施例的概要并因此按需要包括对细节的简化、概括、和省略;因此,本领域技术人员将意识到该概要仅仅是说明性的,而绝非意味着限制性的。如单由权利要求定义的,本公开的其它方面、创造性特征、及优点将在以下给出的非限制性的详细描述中变得明显。
图1是用于仲裁IP通信至网络的发射机装置的实施例的方框图。图2是加权公平排队调度算法的实施例的流程图。图3是轮式调度算法的实施例的流程图。图4是成帧算法的实施例的流程图。
具体实施例方式在以下的详细描述中,给出许多具体细节,以彻底理解本发明。然而,本领域技术人员将理解,没有这些具体细节也能实施本发明。在其它实例中,没有具体描述众所周知的方法、程序、部件、及电路,以免使本发明不明显。DVB-S2标准可以用于经由卫星传递数据。数据可以包括hternet协议(IP)通信。图1描述了用于仲裁IP通信至网络或输出通信链路的发射机装置的实施例的方框图。 通过卫星的IP通信可以是语音、传输控制协议(TCP)、或用户数据报协议(UDP)。根据本发明的原理能使用其它形式的数据。发射机装置100可以包括输入缓存110、115,编码器120、125,调度多路复用器 130,输出缓存135,打包器(packetizer) 140,成帧器150,以及调制器160。输入缓存110可以耦合到编码器120,并且输入缓存115可以耦合到编码器125。编码器120、125可以耦合到调度多路复用器130。调度多路复用器130可以耦合到输出缓存135。输出缓存135可以耦合到打包器140。打包器140可以耦合到成帧器150。成帧器150可以耦合到调制器 160。发射机装置100可以接收多个输入流。尽管图1描述了带两个输入的多路复用器, 并且在带两个输入的多路复用器的情况下进行讨论,但本发明的原理能应用于包括带N个输入的装置的其它实施例中。因此,尽管并未在图1中描述,发射机装置100可以具有N个输入缓存,其中N是代表输入流数目的整数。每个输入流存储到数据缓存或队列。例如,第一输入流可以存储到可是先入先出队列的输入缓存110,并且第二输入流可以存储到输入缓存115。对于本发明的这个实施例,多个入境客户流共享单个出境链路。
输入流可以具有变化类型,如长度及调制和编码方法(MODCOD)。每个输入流可以包括与出境传输流相关联的特征,或者可与它们以某种方式相关联,与出境传输流相关联的特征即诸如最小比特率、最大比特率、以及MODCOD的服务质量参数。输入流的比特率或其它服务质量参数可以用来保留用于出境传输流的带宽。网络可以具有用于传输数据的有限出境带宽。最小比特率和最大比特率定义可以由用户或其他系统部件配置的数据传送要求。输入流的最小比特率可以是由调度器(多路复用器)提供以传输传输流的所需保证带宽,而最大比特率可以定义最大化数据传输的“最尽力(best effort)”带宽。IP分组的输入流在由输入缓存接收之后可以经受编码。编码器120可以将来自输入缓存110的输入分组压缩和转换为另一数字格式。编码器125也可以将来自输入缓存 115的输入分组压缩和转换为另一数字格式。第一编码器120产生第一基本流,并且第二编码器125产生第二基本流。第一和第二处理并不需要具有相同的特征和处理。基本流输入到调度多路复用器130,用于调度到网络的传送。输出传送应该不超过出境链路带宽来传送传输流,并且其不能超过最大符号率并且其通常为常数。调度多路复用器130可以基于优先级将输入流分成类。例如,可以通过最小和最大比特率来定义优先级。调度多路复用器130估计不违反出境链路的总符号率约束(aggregate symbol rate constraint)传送的分组或符号的数目。可以通过比较输入流的比特率与出境链路的总符号率约束来执行该估计。调度多路复用器130可以调度用于传送的某数目的分组,该数目不超过要传送的分组或符号的估计数目。典型地,周期性地或按调度轮次执行调度。尽管入境客户流和出境链路在比特率方面都可以是可变的,但出境链路在符号率方面典型地是常数。以下以图2和3更详细地描述调度算法。被调度用于传送的分组被送往输出缓存135。在输出缓存135中可以收集分组,以提高后续传输流组装效率。根据调度轮次持续时间,输出缓存135的存储容量可以与网络带宽大致相当。输出缓存135可以累积某数目的分组,该数目大致等于该调度轮次要传送的符号的估计数目。被调度用于传输的IP分组可以在打包器140中打包成MPEG-2传输流分组。本领域技术人员将意识到可能使用其它传输协议方案。每个打包的基本流(PEQ典型地包括信头和有效载荷。信头可包含解码有效载荷比特所需的信息,且有效载荷可包括IP数据。打包的基本流在成帧器150中成帧。在本实施例中,在该处,每个打包的基本流都放置在BBFRAME中。为了使用可获得的带宽,成帧器150可以将具有较高效MODCOD的数据移到较低效M0DC0D。如果相对于所估计的,符号添加到传输流或从传输流删除,则成帧器 150将该信息经由反馈路径155传递到调度多路复用器130。以下以图4更加详细地描述成帧算法。调度多路复用器130可以基于在先轮次的实际符号消耗,为下一轮次的调度调节要传送或消耗的符号的估计数目。调制器160可以将成帧的传输流转换为通过天线165传送的射频(RF)符号流。RF 符号流在单个出境链路上传送至网络(或传送至不是网络的目的地)。尽管使用卫星传送链路来说明本实施例,但也能使用其它技术。图2描述了加权公平排队调度算法的实施例的流程图,它是输入排队调度算法的一个实施例。在操作210中,接收至少两个输入流。输入流可以包括IP数据。在操作220 中,最小比特率、最大比特率、以及MODCOD信息可以被提取或不然被获取并与每个输入流相关联。在操作230中,至少两个编码的输入流可以分成类。例如,具有比最小比特率还小的比特率的分组可以分组到第一类,而具有从最小比特率到最大比特率的剩余分组分组到第二类。第二类分组可以进一步基于它们的大小及MODCOD进行划分或区分优先级。用于将分组分组到类的其它方案是可能的。在操作MO中,调度数据传输的第一通行。该第一通行可包括第一类中的所有分组。用于这些分组的带宽是有保证的。在操作250中,为第二类中的分组调度数据传送的第二通行。数据传输可以通过加权公平排队方案以递减级(descending stage)调度,其中,每个输入缓存通过适合在当前通行中传送的剩余比特数目进行加权。被调度用于在给定轮次中传送的分组或比特的数目可以有赖于出境链路的带宽和估计的符号消耗。在操作沈0中,被标记用于传送的分组封装成MPEG-2传输流分组、放置在基带帧中并传送。获得该轮次的实际符号消耗。所有适合的分组被传送,或者,如果不的话,则适合的分组中的一些必须等待下一轮次。用于本轮次的实际符号消耗从成帧器获得,并且它将此信息实时地传回到调度多路复用器。在操作265中,确定在操作沈0中的实际符号消耗与在操作250中在先估计的符号消耗是否不同。该信息可以由成帧器确定并传递至多路复用器。在其它实施例中,成帧器传递实际符号使用,并将它传递至多路复用器,其确定与在先估计的符号结构的差。在每一种情况下,实时运送信息以使得多路复用器能使用该信息影响下一轮次。如果所有适合的分组都被传送,则传送的实际符号消耗和估计的符号消耗之间的差用填充的BBFRAME 以最低MODCOD来填充。没有被传送的任何适合的分组都转入下一轮次的调度。在操作沈5中,如果实际符号消耗大致等于估计的符号消耗,则算法可以返回到操作210,以开始对下一轮次的调度的处理。每个调度轮次可以包括第一通行和第二通行。 调度可以周期性地发生。例如,调度轮次可以按照时钟周期发生,时钟周期可以典型地为大致20毫秒。另一方面,如果实际符号消耗不同于估计的符号消耗,则可以适当地调整用于下一轮次的估计的符号消耗或配额。例如,如果估计的符号消耗大于实际符号消耗,则可以施加补偿以允许更多符号(并因此更多数据)在下一轮次中传送。符号调度可以与在先轮次的实际符号消耗和估计的符号消耗之间的差成正比地增加。如果估计的符号消耗小于实际符号消耗,则可以施加补偿以允许较少符号(并因此较少数据)在下一轮次中传送。符号调度可以与在先轮次的估计的符号消耗和实际符号消耗之间的差成正比地减少。由于轮次之间的该符号补偿,保持了传输的符号的稳定总吞吐量。在操作270之后算法可以返回到操作210,以开始对下一轮次的调度的处理。图3描述了轮式调度算法的实施例的流程图。在操作310中,服务输入缓存。输入缓存包含来自客户的输入流。输入缓存可以具有预定义的容量。可以从输入缓存中读取分组。在操作320中,调度由输入缓存接收的分组,用于传送。对于本发明的该实施例, 周期性地服务每个客户。当从输入缓存读取输入流时,输入流被调度用于传送。每个客户具有它自己的输入缓存。如果输入流具有多于输入缓存能存储的比特,在输出出现未发出比特的亏欠(deficit);例如,需要发送补充信息(additional information) 0否则,如果输入流具有小于输入缓存容量的比特,则出现未发出比特的盈余(surplus),例如需要发送较少信息。在操作330中,如果没有未发出比特的盈余或亏欠,则算法返回到操作310以服务下一输入缓存。另一方面,如果存在未发出比特的亏欠或盈余,则在操作340中,通过适当地增加或减少输入缓存容量(例如,增加或减少亏欠或盈余量),为下一轮次调整客户的输入缓存容量。可以通过向客户流指派不相等的输入缓存容量为它们分配出境链路的不等共享。算法在操作340之后可以返回到操作310。尽管公开了两种调度算法,但可以以各种调度算法使用本发明的原理,并且本发明的原理不依赖于上述各种调度算法。图4描述了成帧算法的实施例的流程图。在操作410中,从调度器接收分组用于当前轮次的传送。在操作420中,确定运送数据的符号是可以加到本轮次还是对本轮次是不必要的。如果下一帧具有小于整帧的数据并且当前轮次具有更大的保护性但较低效的 M0DC0D,则运送数据的符号可以加到本轮次。如果当前轮次具有部分帧(partial frame) 并且下一轮次具有更大的保护性但较低效的M0DC0D,则符号可从本轮次中删除(例如,较少符号用于实际运送数据)。将符号从下一轮次移动到当前轮次,或者反过来,可以节省一帧符号。如果确定移动符号将节省帧,则分组在操作430中移至下一轮次。在操作430中增加或删除的符号的数目可在操作440中传递至调度器。调度器可使用该信息以在调度用于下一轮次期间的估计的符号消耗中合适地进行补偿(The scheduler may use the information to compensate appropriately in scheduling the estimated symbol consumption for the next round during)。例如,如果对当前传送轮次使用补充符号 (additional symbols),则用于下一轮次的估计的符号消耗将成比例地减少。如果对当前传送轮次使用较少符号,则用于下一轮次的估计的符号消耗将成比例地增加。如果在操作420中没有要进行的符号调整,则要传送的实际分组将在操作450中放置到BBFRAME中。如果在操作420中有要进行的符号调整,则在操作440后执行操作450。 做为选择,操作450可在操作440之前执行。在前述说明书中,已参考本发明的具体示例性实施例对本发明进行了描述。然而, 显然可以对其作出各种修改和改变,而不背离所附权利要求给出的本发明的较宽的精神和范围。因此,认为说明书和附图具有说明性而不是限制性的含义。
8
权利要求
1.一种用于多路复用多MPEG视频流的系统,包括从接收来自第一输入缓存的输出的第一编码器接收第一输入的多路复用器,所述多路复用器从接收来自第二输入缓存的输出的第二编码器接收第二输入,其中所述多路复用器的输出耦合到输出缓存的输入,所述输出缓存具有耦合到打包器的输出,所述打包器具有耦合到成帧器的输出;所述系统的特征在于所述第一输入缓存,配置成存储第一输入流;以及所述第二输入缓存,配置成存储第二输入流,其中,所述多路复用器配置成基于通过所述成帧器的估计的符号消耗,调度来自所述第一编码器的所述输出和所述第二编码器的所述输出的用于传送的多个分组,其中所述输出缓存存储被调度用于传送的分组;以及其中所述成帧器确定所述多个分组的实际符号消耗。
2.权利要求1的系统,其中,所述打包的输出包括MPEG-2传输流,并且所述成帧器确定所述实际符号消耗和所述估计的符号消耗之间的差。
3.权利要求2的系统,其中所述成帧器将所述实际符号消耗和所述估计的符号消耗之间的差传递给所述调度多路复用器,以调度下一传送轮的符号传送。
4.权利要求3的系统,其中使用第一调制和编码(MODCOD)率来传送被调度用于传送的所述分组,并且所述下一传送轮使用第二 MODCOD率。
5.权利要求1的系统,进一步包括调制器,其耦合到所述成帧器,以将基带帧的流转换为射频符号的流。
6.权利要求4的系统,其中多路复用器基于估计的符号消耗,周期性地调度来自所述第一输入和所述第二输入的用于传送的输入流分组,其中,用于传送的被调度分组小于所述估计的符号消耗。
7.权利要求6的系统,其中如果1)下一数据帧小于整帧数据并且2)当前传送轮具有小于所述下一传送轮的调制和编码率,则所述成帧器增加分组到所述当前传送轮中的调度的分组。
8.权利要求7的系统,其中如果所述成帧器在所述当前传送轮中增加要传送的分组, 则所述调度器调整所述下一传送轮的估计的符号消耗。
9.权利要求6的系统,其中如果当前传送轮具有部分帧的数据,并且所述当前传送轮具有比所述下一传送轮更大的调制和编码率,则所述成帧器从所述当前传送轮中调度的分组中移除分组。
10.权利要求9的系统,其中如果所述成帧器在所述当前传送轮中移除要传送的分组, 则所述调度器增加所述下一传送轮的估计的符号消耗。
11.一种用于多路复用器中调度多路复用业务量的方法,所述多路复用器接收包括第一编码的MPEG输入流和第二编码的MPEG输入流的多个输入流,所述方法的特征在于所述多路复用器执行以下步骤从所述多个输入流中的每一个中提取相应的最小比特率、最大比特率、以及调制和编码(MODCOD)率;将至少两个输入流的分组分成第一类和第二类;调度包括第一通行和第二通行的数据传送的轮,其中所述第一通行包括所述第一类中的分组,并且其中所述第二通行包括所述第二类中的分组;传送调度给所述第一通行的分组;并且传送调度给所述第二通行的分组,其中如果下一数据帧小于整帧的数据并且所述数据传送的轮具有比所述下一数据帧更大的保护性和更低效的调制和编码率,则所述第二通行中传送的分组的数目大于给所述第二通行的调度的分组的数目。
12.权利要求11的方法,其中具有比其相应的输入流的所述最小比特率还小的比特率的分组被放置到所述第一类中,其中具有从其相应的输入流的所述最小比特率到所述最大比特率的比特率的分组被放置到所述第二类中。
13.权利要求12的方法,其中所述第二类中的分组按照适合传输的比特的数目来区分优先级。
14.权利要求13的方法,其中基于用于所述轮的估计的符号消耗和优先级,调度所述第二类中的分组,用于传送给所述第二通行。
15.权利要求11的方法,进一步包括如果在所述第二通行中传送的分组的数目不同于给所述第二通行的调度的分组的数目,则调整随后轮的估计的符号传送。
全文摘要
提供一种用于处理到单个出境链路的多个客户流的系统和方法。具体地,调度器在总输出流上实施最大符号率。基于服务参数的个体质量,调度入境客户流,用于输出。对每一调度轮次,在第一通行中处理被配置用于第一带宽范围的分组,并且在第二通行中处理被配置用于第二带宽范围的分组。分组在传送前被放置在帧中。比较实际符号使用与估计的符号,该比较用来确定如何调度用于所述轮次的第二通行的入境客户流。
文档编号H04N21/2365GK102217318SQ200980145405
公开日2011年10月12日 申请日期2009年9月4日 优先权日2008年9月9日
发明者李晓光 申请人:爱立信电视公司