CN1778080A - 支持具有服务质量要求的应用程序流程的通信系统中的允许进入控制和资源分配 - Google Patents

支持具有服务质量要求的应用程序流程的通信系统中的允许进入控制和资源分配 Download PDF

Info

Publication number
CN1778080A
CN1778080A CNA2004800109988A CN200480010998A CN1778080A CN 1778080 A CN1778080 A CN 1778080A CN A2004800109988 A CNA2004800109988 A CN A2004800109988A CN 200480010998 A CN200480010998 A CN 200480010998A CN 1778080 A CN1778080 A CN 1778080A
Authority
CN
China
Prior art keywords
flow process
qos
application flows
communication system
application
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
CNA2004800109988A
Other languages
English (en)
Other versions
CN100579060C (zh
Inventor
M·塔纳佳
R·潘卡
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.)
Qualcomm Inc
Original Assignee
Qualcomm Inc
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 Qualcomm Inc filed Critical Qualcomm Inc
Publication of CN1778080A publication Critical patent/CN1778080A/zh
Application granted granted Critical
Publication of CN100579060C publication Critical patent/CN100579060C/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Abstract

一种在通信系统中进行允许进入控制的方法和设备。接入网络(AN)元件确定可用的资源。当可用资源足以支持一个请求应用程序流程的要求时,AN允许该应用程序流程进入。AN周期性地,并在触发事件发生时更新可用资源的度量。允许进入控制可与应用程序对应于每条流程类型的补偿因子和给定用户的总流程的补偿因子的调度器协同操作。

Description

支持具有服务质量要求的应用程序流程的通信系统中的允许进入控制和资源分配
根据35U.S.C.§119的优先权要求
本专利申请要求转让给本发明受让人的于2003年3月17日提交的题为“System for Allocating Resources in a Communication System”的临时专利申请第60/455,906号的优先权,并因此这儿并入作参考。
                            背景
1. 发明领域
本发明涉及通信系统。特别地,这些实施例是针对在一个通信系统的多个用户之间分配通信资源。
2. 有关技术
已经给出了若干方案来解决在多个用户之间对通信系统中的单个节点所提供的有限通信资源进行分配的问题。此类系统的一个目标是在各个节点处提供足够的资源,以满足所有用户的需求并同时将成本最小化。由此,通常是以在各用户之间有效分配资源的目标来设计此类系统。
各种系统已经实现频分多址(FDMA)方案,该方案将资源并发地分配给每一个用户。此类系统中的通信节点通常在任何时间点向网络中的每个用户发送信息或从每个用户接收信息的带宽都是有限的。此方案通常涉及将总带宽的不同部分分配给单个用户。尽管对于用户要求与通信节点有不受干扰的通信的系统来说,这一方案可能是有效的,但是当此类持续的、不受干扰的通信并非必须时,对总带宽更好的利用是可以实现的。
其它在多个用户之间分配单个通信节点的通信资源的方案包括时分多址(TDMA)方案。在用户不要求与单个通信节点有持续的、不受干扰的通信的情况下,这些TDMA方案于在多个用户之间分配单个通信节点的有限带宽资源时特别有效。TDMA方案通常按指定的时间间隔,使单个通信节点的全部带宽专供每一个用户使用。在使用码分多址(CDMA)方案的无线通信系统中,这可通过在时分复用基础上,按指定的时间间隔将所有代码信道分配给每一个用户来实现。通信节点实现与用户相关联的唯一的载波频率或通道代码以允许与该用户进行专有通信。TDMA方案还可使用物理接触中继交换或分组交换在陆线系统中实现。
TDMA系统通常以循环方式将相等的时间间隔分配给每个用户。这可能导致某些用户对某些时间间隔的不充分利用。类似地,其它用户可能有超过所分配时间间隔的对通信资源的需求,使得这些用户不能得到满足。系统操作员可选择负担增加节点带宽的成本以确保没有用户得不到满足,或者允许得不到满足的用户继续保持得不到满足的状态。
由此,需要提供一种根据一种在用户之间分配通信资源的网络策略,在通信网络的用户之间有效和公平地分配通信资源的系统和方法。与之一致的是,需要将系统所服务的用户数量最大化,包括,但不限于,提供各种响应于系统的具体要求、限制、和/或目标,在每条流程的基础上和/或在合计的基础上进行资源分配的机制。此外还需要将资源分配最优化的允许进入控制和先占方法。
                          附图简述
图1示出根据本发明的一个实施例的一种通信网络。
图2A示出根据本发明的一个实施例配置的基站控制器和基站设备的框图。
图2B示出根据本发明的一个实施例配置的远程站设备的框图。
图3示出在图2A所示的信道调度器的实施例中执行一种调度算法的流程图。
图4是一种支持多媒体应用程序的通信系统,其中每个应用程序通信由一个应用程序流程表示。
图5是一个应用程序流程队列。
图6是一张时序图,描述一个应用程序流程的一部分的信号定时。
图7A是一张时序图,描述对一个应用程序流程的抖动测量。
图7B是一张时序图,描述为处理一个应用程序流程,在若干时隙期间发送连续的IP分组。
图8是一张流程图,描述在一种通信系统中对若干应用程序流程进行调度。
图9是一张流程图,描述对若干具有不同服务质量(QoS)要求的应用程序流程进行调度。
图10是一张根据一个实施例的体系结构图,示出应用程序流程与一种调度算法一致的每个应用程序流程的定义。
图11是根据一个实施例识别分类的类型的表。
图12A描述根据一个实施例的一种调度算法的一部分,包括对应用程序流程的初始化。
图12B描述根据一个实施例的一种调度算法的一部分,包括根据类的类型对应用程序流程的处理。
图12C描述根据一个实施例的一种调度算法的一部分,包括对模式II的应用程序流程的处理和对模式III的应用程序流程的处理。
图12D描述根据一个实施例的一种调度算法的一部分,包括对模式I的应用程序流程的处理。
图12E描述根据一个实施例的一种调度算法的一部分,包括自适应加权和以其为基础的调度。
图13示出一种基站收发器系统(BTS),用于在无线通信系统中实现一种用自适应加权算法来调度应用程序流程的算法。
图14是一张时序图,测绘诸如数据率(LMAX)、保留资源(Res(t))、和可用资源(Avail(t))等最大资源作为时间的函数。
图15是一张时序图,测绘从高速率分组数据类型系统中的用户接收到的数据请求、和在时间t要保留的估算能力L(t)作为时间的函数。
图16是一张信息流程图,描述用于支持多个具有服务质量(QoS)要求的应用程序流程的高速率分组数据类型系统的调度器,其中这些流程是应用每条流程的补偿来调度的。
图17是一张信息流程图,描述用于支持多个具有服务质量(QoS)要求的应用程序流程的高速率分组数据类型系统的调度器,其中这些流程是应用合计补偿来调度的。
图18A到18E示出一种在支持多个具有服务质量(QoS)要求的应用程序流程的高速率分组数据类型系统中进行允许进入控制的算法。
图19示出一种在支持多个具有服务质量(QoS)要求的应用程序流程的高速率分组数据类型系统中进行先占的算法。
图20是支持多个具有服务质量(QoS)要求的应用程序流程的高速率分组数据类型系统中的一种接入网络(AN)的框图。
具体描述
本发明的各个实施例针对于一种在通信网络中由单个通信节点服务的多个用户之间分配资源的系统和设备。在单独的离散的传输间隔,或称“服务间隔”,单个用户排斥所有其它用户地占用通信节点的有限资源。基于与单个用户相关联的权值或得分,单个用户被选择以占用该有限资源。较佳的是,对与单个用户相关联的权值的改变是基于该单个用户能够消耗该有限资源的瞬时速率。
参考附图,图1表示一种示例性的可变速率的通信系统。一个此类系统在转让给Qualcomm有限公司的于1997年11月3日提交的题为Method and Apparatusfor High Rate Packet Data Transmission(高速率分组数据传输的方法和设备)的美国专利申请第08/963,386号中描述,且这儿并入作为参考。可变速率通信系统包括多个单元2A-2G。每个单元2由一个对应的基站4服务。各个远程站分布遍及该通信系统。在该示例性实施例中,每个远程站6都以任意的数据传输间隔在前向链路上与至多一个基站4通信。例如,在时隙n在前向链路上,基站4A排他地向远程站6A传输数据,基站4B排他地向远程站6B传输数据,而基站4C排他地向远程站6C发送数据。如图1所示,较佳的是每个基站4在任意给定时刻向一个远程站6传输数据。在其它实施例中,基站4可在特定数据传输间隔与一个以上远程站6通信,同时排斥与基站4相关联的所有其它远程站6。此外,数据率是可变的,在一个实施例中,数据率是取决于接收远程站6所测得的载波干扰比(C/I),和要求的每比特能量噪声比(Eb/No)。为简化起见,图1中未示出从远程站6到基站4的后向链路。根据一个实施例,远程站6是具有由无线数据服务用户操作的无线收发器的移动单元。
示出一种示例性可变速率通信系统的基本子系统的框图在图2A-2B中示出。基站控制器10与分组网络接口24、公共交换电话网络(PSTN)30、和通信系统中的所有基站4(为简化起见,图2中仅示出一个基站4)相接。基站控制器10协调通信网络中的远程站6与连接到分组网络接口24和PSTN 30的其它用户之间的通信。PSTN 30通过标准电话网络(图2中未示出)与用户相接。
基站控制器10包含许多选择器元件14,尽管为简化起见,图2A中仅示出一个。每个选择器元件14都被指派以控制一个或多个基站4和一个远程站6之间的通信。如果选择器元件14未被指派给远程站6,则通知呼叫控制处理器16有寻呼远程站6的需要。呼叫控制处理器16随即指派基站4来寻呼远程站6。
数据源20包含要传输到远程站6的大量数据。数据源20将数据提供给分组网络接口24。分组网络接口24接收数据,并将数据发送到选择器元件14。选择器元件14将数据传输到每个与远程站6通信的基站4。在该示例性实施例中,每个基站4都维护一个数据队列40,它存储要传输到远程站6的数据。
数据是以数据分组的形式从数据队列40传输到信道元件42。在该示例性实施例中,在前向链路上,“数据分组”指一定量的数据,它最多是1024位,并且要在一个“时隙”(诸如≈1.667毫秒)之内传输到目标远程站6。对于每个数据分组,信道元件42插入必需的控制字段。在该示例性实施例中,信道元件42将数据分组和控制字段进行CRC编码,并插入一组代码尾位。数据分组、控制字段、CRC奇偶校验位、和代码尾位组成格式化的分组。在该示例性实施例中,信道元件42随即对已格式化的分组进行编码,并将已编码的分组内的符号交错(或重新排序)。在该示例性实施例中,用Walsh代码覆盖交错处理分组、并用短PNI和PNQ代码对经交错处理的分组进行扩展。已扩展的数据被提供给RF单元44,它对信号进行正交调制、过滤和放大。前向链路信号是通过前向链路50上的天线46在空气中传输。
在远程站6,前向链路信号由天线60接收并发送到前端62内部的接收机。接收机对信号进行过滤、放大、正交解调和量化。数字化的信号被提供给解调器(DEMOD)64,在该处用短PNI和PNQ代码去扩展,并用Walsh代码去覆盖。已解调的数据被提供给解码器66,它执行在基站4处所作的信号处理功能的逆转功能,具体而言是去交错、解码、和CRC校验功能。已解码的数据被提供给数据接收机68。
如以上所指出的硬件支持在前向链路上对数据、消息通信、语音、视频和其它通信进行可变速率的传输。从数据队列40传输的数据的速率变动以适应远程站6处的信号强度和噪音环境的变化。较佳的是,每个远程站6在每个时隙都向相关联的基站4传输一个数据率控制(DRC)信号。DRC指一种控制机制,远程站通过这种机制为前向链路确定合乎需要的数据率,即,在远程站处接收数据的数据率。远程站经由DRC消息,向基站发送如同数据率请求或指令的期望数据率。DRC信号向基站4提供信息,包括远程站6的身份,和该远程站要从其相关联的数据队列接收数据的速率。由此,远程站6处的电路测量信号强度并估计远程站6处的噪音环境,以确定要在DRC信号中传输的速率信息。
每个远程站6所传输的DRC信号沿着后向链路信道52行进,并在基站4处通过天线46和RF单元44被接收。在该示例性实施例中,DRC信息在信道元件42中被解调,并被提供给位于基站控制器10中的信道调度器12A,或提供给位于基站4中的信道调度器12B。在第一示例性实施例中,信道调度器12B位于基站4中。在替换实施例中,信道调度器12A位于基站控制器10中,并连接到该基站控制器10内部的所有选择器元件14。
在一个实施例中,信道调度器12B从数据队列40接收指示为每个远程站所排队的数据量(亦称队列大小)的信息。信道调度器12B随即基于DRC信息和基站4所服务的每个远程站的队列大小进行调度。如果在替换实施例中使用的调度算法请求队列大小,则信道调度器12A可从选择器元件14接收队列大小的信息。
本发明的各个实施例适用于可能支持可变速率传输的其它硬件体系结构。可以很容易地扩展本发明以覆盖后向链路上的可变速率传输。例如,基站4不是基于来自远程站6的DRC信号来确定基站4处接收数据的速率,而是测量从远程站6所接收的信号的强度并估计噪音环境以确定从远程站6接收数据的速率。基站4随即向每个相关联的远程站6传输要从远程站6出发在后向链路中传输的数据的速率。基站4随即可以类似本文中就前向链路所描述的方式,基于后向链路上不同的数据率来对后向链路上的传输进行调度。
同样,以上所讨论的实施例的基站4用CDMA方案,向所选择的一个或数个远程站进行传输,同时排斥与该基站4相关联的其余远程站。在任何特定时间,基站4通过使用一种分配给该接收基站4的代码,对所选择的一个或数个远程站6进行传输。但是,本发明还可适用于其它系统,这些系统使用不同TDMA方法提供数据来选择若干基站4并同时排斥其它基站4,以对传输资源进行最优化的分配。
信道调度器12对前向链路上可变速率的传输进行调度。信道调度器12接收指示要向远程站6传输的数据量的队列大小,和来自远程站6的消息。较佳的是,信道调度器12对数据传输进行调度,以实现将数据吞吐量最大化并同时遵守公平性约束的系统目标。
如图1中所示,远程站6分布遍及通信系统,并可在前向链路上与零个或一个基站4通信。在该示例性实施例中,信道调度器12协调整个通信系统上的前向链路数据传输。一种用于高速数据传输的调度方法和设备在2002年1月1日授权的美国专利第6,335,922号中具体描述,该专利已转让给本发明的受让人,并这儿并入作为参考。
根据一个实施例,信道调度器12在计算机系统中实现,该系统包括处理器、随机存取存储器(RAM)、和用于存储要由处理器执行的指令的程序存储器(未图示)。处理器、RAM和程序存储器可由信道调度器12的各个功能占用。在其它实施例中,处理器、RAM和程序存储器可为用于执行基站控制器10处的其它功能的共享计算资源的一部分。
图3示出一种调度算法的实施例,该算法控制信道调度器12对从基站4到远程站6的传输进行调度。如以上所讨论的,一个数据队列40与每个远程站6相关联。信道调度器12使每个数据队列40与在步骤110处估值的“权值”相关联,用于选择与基站4相关联的特定远程站6,从在随后的服务间隔内接收数据。信道调度器12选择单个的远程站6,以在离散的服务间隔内接收数据传输。在步骤102,信道调度器为每个与基站4相关联的队列初始化权值。
信道调度器12按传输间隔或服务间隔从步骤104到112进行循环。在步骤104,信道调度器12判定是否由于在前一个服务间隔中检测到的另一个远程站6与基站4之间的相关联,而有任何其它队列要添加。信道调度器12在步骤104还对与新队列相关联的权值进行初始化。如以上所讨论的,基站4按诸如时隙等规律的间隔,从与其相关联的每个远程站6接收DRC信号。
此DRC信号还提供信息供信道调度器在步骤106使用,以为与每个队列相关联的远程站确定消耗信息(或接收所传输数据)的瞬时速率。根据一个实施例,从任何远程站6传输的DRC信号指示该远程站6能够以多个有效数据率中的任何一个接收数据。
基于远程站6的相关联接收数据的瞬时速率(如在最近接收到的DRC信号中所指示的),信道调度器12在步骤108确定服务间隔的长度,在该服务间隔期间,数据被发送到任何特定的远程站6。根据一个实施例,在步骤106,接收数据的瞬时速率Ri决定与特定数据队列相关联的服务间隔长度Li
信道调度器12在步骤110选择特定数据队列进行传输。所要发送的相关联数据量随即从数据队列40被检索,并被提供给信道元件42,用于传输给与该数据队列40相关联的远程站6。如以下所讨论的,信道调度器12在步骤110选择用于提供数据的队列,该队列在接下来的服务间隔中用包括与每个队列相关联的每个权值在内的信息来传输。与所传输的队列相关联的权值随即在步骤112得到更新。
本领域技术人员可以理解,信道调度器12可用各种方法来实现,而不会偏离本发明。例如,信道调度器12可用包括处理器、随机存取存储器(RAM)和用于存储要由处理器执行的指令的程序存储器(未图示)的计算机系统来实现。在其它实施例中,信道调度器12的各个功能可并入共享的计算资源,该共享的计算资源还用于执行基站4或基站控制器10处的其它功能。此外,用于执行信道调度器功能的处理器可以是通用微处理器、数字信号处理器(DSP)、可编程逻辑设备、专用集成电路(ASIC)、或能够执行本文中所描述的各种算法的其它设备,而不会偏离本发明。
如图1的实施例中所示,远程站6是移动的,并且能够改变不同基站4之间的关联。例如,远程站6F起初从基站4F接收数据传输。远程站6F随后可能移出基站4F的单元并移入基站4G的单元。远程站6F随即可开始传输DRC信号来警告基站4G,而不是基站4F。通过不再从远程站6F收到DRC信号,基站4F处的逻辑推论远程站6F已经脱离且不准备再接收数据传输。与远程站6F相关联的数据队列随即可经由陆线或RF通信链路传输到基站4G。
自适应加权调度算法
此外,当在无线通信系统中传输多媒体服务或其它具有各种传输要求的服务时存在一个问题,其中称为“流程”的多媒体服务传输引起突发性的通信量。突发性的通信量的特征由若干变量描述,包括突发性的量度、和平均数据率。此外,需要满足系统中各条流程中每一个的服务质量(QoS)要求。诸如比例公平(PF)算法等当前的调度方法一般基于按被请求的数据率(称为数据率控制数据请求或“DRC”)对吞吐量(记为“T”)的比率给出的度量,来选择要服务的流程。此类计算可能无法确保所有用户所需的QoS。因此,纯粹的PF算法可能不能提供足够的复杂程度来满足访问多媒体或其它应用程序的用户的QoS要求。需要一种能够满足这些不同要求的调度器。
注意以下讨论考虑支持如IS—856中所描述的高速率分组数据(HRPD)服务的cdma2000系统。此系统是作为示例使用。本发明适用于能根据调度算法选择要服务的用户的其它系统。
在HRPD系统中,空中接口可支持多达4个并行的应用程序流。第一个流携带信令信息,其它三个流可用于携带具有不同服务质量(QoS)要求的应用程序或其它应用程序。
为清楚理解下文所呈现的一个实施例起见,提供以下词汇表。以下词汇表并不试图穷举。以下词汇表并不试图将本发明限制于此,而是为就一种支持自适应加权调度算法的通信系统的实施例的清楚和理解而提供的。
                             词汇表
接入网络(AN)—提供蜂窝网络和分组交换数据网络(通常指因特网)和AT两两之间的数据连通性的网络设备。HRPD系统中的AN等效于蜂窝通信系统中的基站。
接入终端(AT)—提供到用户的数据连通性的设备。HRPD系统中的AT对应于蜂窝通信系统中的移动站。AT可连接到诸如膝上个人计算机等计算设备,或者它可以是诸如个人数字助理(PDA)等自含式数据设备。
应用程序流程—为给定应用程序流所指定的从源到AT的传输路径。每个应用程序流程由源、目的、通信量概况和服务质量概况来标识。
应用程序流—对应于一个应用程序的数据通信。大多数应用程序流都有指定的服务质量要求。
自动重复请求(ARQ)—发射机基于一事件的发生或者不发生而初始化数据重新传输的机制。
可用资源(t):前向链路上在时间t无限制的带宽。
平均数据率(r)—给定应用程序流程一段时间的平均输入数据率。
平均延迟(AvgD)—从AN到AT的多个分组或比特上所承受的平均延迟。
突发性(σ)—对应用程序流程中的数据分组的突发性或密度与时间关系的度量。
数据率控制(DRC)—AT向AN传输所请求的数据率的机制。
亏数分组(defpkts)—在时隙n的开始处为流程k所定义。亏数分组是还未在流程中传输的分组,且defpkts具体定义为在BTS停留时间超过流程k的延迟阈值的相等大小的分组(例如,诸如媒体访问控制(MAC)分组等中间处理分组)的个数。
亏数位(defbits)—对应于亏数分组的位数。
延迟边界—从AN到AT传输一个数据分组所允许的指定时间。
延迟阈值—延迟边界或抖动边界的函数,用于计算defpkts。
延迟补偿因子(Φ)—用于补偿延迟违反的补偿因子。
DRC补偿因子(β)—虑及与应用程序流程的用户相关联的数据请求要求的补偿因子。用于对应用程序进行恰当恢复。
增强抖动阈值(dv)—用于在检测到流程的两个相继IP分组之间的抖动违反时对增强抖动补偿函数进行计算。
流程权值(w)—适用于每个使用自适应加权调度算法的应用程序流程的初始权值。自适应权值(aw)是权值的自适应值。
前向链路(FL)—从AN到AT的传输空中链路。
排头(HOL)分组—队列中的第一个分组。
高速率分组数据(HRPD)-以高数据率传输分组数据通信的数据服务。也称作高数据率(HDR),在题为“cdma2000 High Rate Packet Data Air InterfaceSpecification”(cdma2000高速率分组数据空中接口标准)的IS—856标准中详细说明。
抖动—所接收到的连续的分组两两之间的时间变化。
抖动边界(j)—在给定应用程序流程的抖动上的边界。
增强抖动补偿因子(δ)—为流程补偿抖动违反的补偿因子。
Lmax-BTS可在前向链路上传输数据的最大速率(例如,在cdma2000 1xEV—DO类型网络中为2.4兆比特/秒)。
L(t)—基于先前的QoS违反的统计量和网络负荷有关的统计量对在时间t保留的前向链路容量的估计。
归一化亏数分组(ndefpkts)—用亏数分组和该流程所请求的速率计算的归一化亏数分组。
归一化亏数位(ndefbits)—对应于归一化亏数分组的归一化亏数位。
运动图像专家组(MPEG)-传输多媒体材料的协议。
未决分组—pendk,j[n]—时隙n中BTS和BSC中流程k的IP分组j的未决字节数。
比例公平(PF)算法—根据按所请求的数据率对吞吐量的比率为每个AT计算的选择因子对数据通信进行调度的调度算法。
服务质量(QoS)—涉及分组数据通信传输的要求,包括但不限于,延迟、请求速率、和抖动。
QoS和网络补偿函数(Φ,γ,α,β,δ)—如在自适应加权调度算法中使用的补偿函数。
服务质量组(QSG)—具有相似QoS要求的应用程序类型组。
速率补偿因子(α)—为补偿速率违反而计算的补偿因子。
服务速率(R)或所请求的速率(required_rate)—流程所请求的速率。
Res(t):前向链路上在时间t保留的带宽。
重新发送队列(Rx)—存储为重新发送而调度的应用程序流程的重新发送队列。
后向链路(RL)—从AT到AN的传输空中链路。
选择度量(Y)—为调度决定而比较应用程序流程所用的度量。
交通量概况(σ,r)—涉及突发性和数据率的度量。
传输队列(Tx)—为给定BTS存储应用程序流程的传输队列。
等待时间参数(γ)-AN内部排头IP分组的等待时间的度量。
将自适应权值应用于比例公平调度算法
为cdma2000 1xEV-DO网络的前向链路描述了比例公平(PF)调度算法,它基于度量DRC/T选择要服务的流程。PF算法被设计成向每个用户提供大约相同个数的传输时隙。为加强这一调度算法,本文中所描述的是一种自适应加权DRC/T算法,它扩展并优化DRC/T算法以满足不同类型的应用程序的不同QoS要求。每个多媒体应用程序分别有各自具体的QoS要求。调度算法的目标包括满足各种QoS要求。本文中所给出的自适应算法(也称作自适应w*DRC/T算法)为其中应用程序流程包括多媒体应用程序服务的cdma2000 1xEV-DO网络的前向链路,提供各种优于DRC/T算法的性能优势。使用自适应算法,满足cdma2000 1xEV-DO网络前向链路上延迟和抖动敏感应用程序的延迟和抖动边界要求。此外,自适应调度算法确保满足速率要求和减少多媒体应用程序的平均延迟。尽管提供多媒体应用程序作为示例来说明自适应调度算法的实现,但是本文中所描述的方法和设备可适用于其它具有QoS要求或与其相关联的可量化要求的应用程序。
对于诸如网络浏览和游戏等具有速率和等待时间要求的应用程序,自适应调度算法提供速率保证并减少平均延迟。对于其它仅具有速率要求的应用程序,可使用自适应加权调度算法来满足速率保证。提供这些QoS保证的同时,自适应加权调度算法还作用于将总吞吐量维持在合理高的等级,并实现接近于当使用纯粹PF调度算法时所达到的总吞吐量。纯粹PF调度算法指使用DRC/T计算的算法。在给予有QoS违反的流程额外资源的同时,自适应加权调度算法以公平方式分配可用资源。本文中提供了各种与其一致的补偿机制。
图4示出支持多媒体应用程序的系统800。再次注意,本发明适用于具有QoS要求的其它系统。系统800包括耦合到分组数据服务节点(PDSN)806的多媒体源802。PDSN 806还耦合到基站控制器(BSC)804,基站控制器804可包括多个BSC。BSC 804经由基站收发器系统(BTS)808,810与各个AT 812、814、816、818等通信。系统800可包括比图示更多的BTS和AT。图示出三条流程:第一条流程从多媒体源802经由PDSN 806、BSC 804、和BTS 808、到AT 812;第二条流程从多媒体源802经由PDSN 806、BSC 804、和BTS 810、到AT 816;第三条流程从多媒体源802经由PDSN 806、BSC 804、和BTS 810、到AT 818。注意一个AT可以是多条流程的目的。在一个示例中,运动图像专家组(MPEG)类型应用程序的传输将音频和视频分成单独的流程。
系统800中要传输的每个应用程序流程具有:相关联的源地址;目的地址;和QoS要求。随即就从源到目的的传输对应用程序流程进行调度。应用程序流程穿过类似于图4中所示的路径。
每个BTS 808、810都适用于维护如图5中所示的流程队列。注意,每个BTS维护对应于其前向链路(FL)上的每个应用程序流程的一组队列。一个应用程序流程针对于一个AT。但是,注意多条流程可针对于一个AT。每条流程都具有一个与之相关联的服务质量组(QSG)类型。每个QSG由一组QoS参数定义。某一给定QSG的每条流程都有具体的值对应于组中每个参数。例如,一个QSG可由包括延迟和抖动的组来定义。具有这一QSG的哪些流程将指定对于延迟和抖动的要求。对于队列中的每条流程,BTS维护包括以下三个单独队列的组:(1)原始传输队列(Tx);(2)重新传输队列(Rx);和(3)自动重复请求队列(ARQ)。在一个实施例中,ARQ队列可对应于诸如先前决策ARQ等为在BTS和MS之间所执行的任何类型的重复机制存储流程的队列。多媒体应用程序可包括诸如视频会议等具有延迟边界要求的对延迟敏感的应用程序。延迟边界是从AN传输到AT接收所允许的指定时间。自适应加权算法致力于满足延迟边界要求和减少此类应用程序的IP分组所经受的平均延迟。对于同时具有速率和平均延迟要求的应用程序,自适应加权算法致力于满足速率要求和减少平均延迟。
对于诸如多媒体视频应用程序等某些类型的应用程序的另一个考虑事项是多媒体传输中连续的分组之间所经受的“抖动”。抖动指所接收的分组两两之间的时间变化。当连续波形稍早或稍迟到达接收机时,即发生抖动。在无线通信中,此类波形通常传递逻辑1或0,它们随即在接收机处被解码。定义为抖动的时间变化使所接收到的传输的视觉效果产生畸变。自适应加权调度算法降低最坏情况的延迟变化,以及对延迟敏感的应用程序的相继分组之间的延迟变化。
满足各用户的QoS要求的同时,自适应算法还被设计成当若干应用程序流程“一致”时满足那些流程的速率要求。如果应用程序流程根据预先指定的通信量概况发送数据,则称其为“一致的”。如果具有速率要求的流程不一致,即,它们发送的数据多于其通信量概况中所预先指定的,则该算法将较高的优先权给予具有较低数据率的流程。尽管本文中在cdma2000 1xEV-DO的上下文中描述自适应加权算法,但是这些概念和方法也可适用于其它类型的无线网络。
就多媒体应用程序流程而言,每条流程由以下各项定义:(1)通信量概况;(2)QoS概况;(3)因特网协议(IP)源地址;和(4)IP目的地址。流程还可包括:(5)L4协议类型;(6)L4端口号;和(7)L4目的端口号,其中L4指协议栈中的传输控制协议(TCP)/用户数据报协议(UDP)层。例如,可将对应于一个MPEG应用程序的MPEG音频和MPEG视频视为两个单独的流程。
每条流程都由通信量概况指定,并受到监视或整形以确保其与该通信量概况一致。通信量概况由记为σ的表示突发性的度量的变量,和记为r的流程平均数据率定义。因此,每条流程由通信量概况(σ,r)描述。QoS概况由以下各参数中的至少一个定义:(1)记为“D”的延迟边界,它定义IP分组从传输到接收所允许的时间。对于多媒体应用程序流程,系统可指定延迟边界。对于诸如网络浏览等一些其它应用程序流程,系统可指定平均延迟(AvgD)来取代或补充延迟边界;(2)记为“j”的抖动边界,它定义在AT处所接收的分组两两之间最大可允许的时间变化;和(3)记为“R”或“req_rate”的服务速率(请求速率)。
为定义延迟边界D,参考图6,它是包括各个AN元件和一个AT的时序图。多媒体流程从多媒体源(未图示)经由PDSN、BSC、和BTS传输到AT。一个IP分组在时间t0从PDSN发送,并在时间t3在AT处接收。参数D定义从时间t0到时间t3的最大可允许时间,即,D指定对t3-t0的限制。
为定义抖动边界j,参考图7A,它是包括若干AN元件和一个AT的时序图。第一个分组在时间t1从PDSN发出,并在时间t1’在AT处接收。第二个分组在时间t2从PDSN发出,并在时间t2’在AT处接收。抖动边界j定义连续分组两两之间最大可允许的变化,其中变化给定为(t2’-t1’)-(t2-t1)。图7B进一步详述在若干时隙上传输的若干连续IP分组。
在一个实施例中,QoS概况被归类成组,称为QoS调度组(QSG)。表1列出了这些类别。
                                      表1
  索引   延迟边界(D)   抖动边界(J)   服务速率(R)   平均延迟(AvgD)   应用程序示例
  1   X   X   X   -   MPEG会议,VoIP,视频流
  2   -   -   X   X   网络浏览
  3   -   -   X   -   FTP
  4   -   -   -   -   尽力服务型
图8示出根据自适应加权调度算法对流程的处理。流程900、902、904和906由标记为“S”的调度单元908处理。调度单元908应用一种自适应加权调度算法,其中为每条流程使用QSG概况。QSG概况识别用于如以下详述地计算自适应权值的变量。调度单元908随即将调度传输输出到所选择的AT。
描述称为DRC/T算法的PF调度算法,其中各分组被分类到m个队列,例如Q1、Q2、……、Qm。令DRC[k,n]为由移动站请求的DRC,对应于时隙n的流程k。调度器选择具有最高选择度量值的流程,其中:
      Y[k,n+1]=DRC[k,n+1]/Tk[n+1],k,n。      (1)
Y[k,n+1]是时隙(n+1)中队列Qk的选择度量,并且
T k [ n + 1 ] = ( 1 - 1 t c ) T k [ n ] + 1 t c R [ k , n ] , - - - ( 2 )
1 t c ≤ 1 , 并且
      0<1/tc                                         (3)
如本文中所使用的,tc是计算平均值所用的时间常数。
自适应w*DRC/T算法
在一个实施例中,称为“自适应w*DRC/T”算法的自适应加权调度算法,向每条流程分配一个初始权值。假设分配给流程k的初始权值记为Wk,由AT请求的对应于时隙n流程k的DRC是DRC[k,n]。自适应w*DRC/T算法在每个时隙n为每条流程k计算以下度量:
      Yk[n]=awk[n]*DRCk[n]/Tk[n]                     (4)
此处,流程k和时隙n的吞吐量Tk[n]是如PF算法中为DRC/T所定义的。如在自适应加权调度算法中所使用的,awk[n]是流程k在时隙n的自适应权值。自适应w*DRC/T调度算法以数种模式工作,其中模式是由QSG定义的。流程k在时隙n的自适应权值awk[n]是基于如下所述的调度器模式和一组所选择的策略或机制所计算的。注意要为每条流程计算等式(4),其中将根据专属于每条流程的公式来计算自适应权重。换言之,该调度算法考虑给定流程的QoS概况,并使用该QoS概况来构造对该流程的自适应权值的计算。以此方式,具有不同QoS要求的不同流程可具有不同地计算得到的自适应权值。该调度算法接下来选择具有最大Yk[n]值的流程以在时隙n中服务。
自适应w*DRC/T调度器以以下模式工作:
模式I[aw*DRC/T](r,d,j):为延迟和抖动敏感应用程序而设计对延迟和抖动边界具有严格要求并要求某个最小速率。
模式II[aw*DRC/T](r,d):用于具有平均延迟和速率要求的应用程序。
模式III[aw*DRC/T](r):用于仅指定速率要求的应用程序。
模式IV[DRC/T]:用于未指定任何QoS计划但由DRC/T算法服务的流程。基于QoS要求,可对给定流程使用特定模式的自适应w*DRC/T算法。还可对流程应用模式II以增加调度器给予该流程的吞吐量。例如,模式II可用于FTP应用程序,以潜在地增加对应应用程序流程的吞吐量。
以下给出分组应用程序(即,QSG)的一个示例:
组I:对延迟边界和延迟变化具有严格要求类似于IP电话(VoIP)的应用程序。注意此类应用程序还常常具有速率要求。使用调度器模式I。
组II:对延迟边界和延迟变化具有严格要求的多媒体会议应用程序。即时这些应用程序中的一些是自适应的,为一致的高质量起见确保服务速率仍然是合乎需要的。使用调度器模式I。
组III:对于延迟边界、速率和延迟变化具有要求的视频流应用程序。使用调度器模式I。
组IV:具有速率和(平均)延迟要求的网络浏览应用程序——使用调度器模式II。
组V:具有速率要求的FTP应用程序——使用调度器模式III。或者,使用具有不严格的延迟限制的调度器模式II。
组VI:尽力服务型应用程序——使用无自适应加权的PF算法,即,DRC/T算法。
注意,数据库事务、游戏和其它应用程序也可分别根据QoS要求分类到合适的组中。
图9示出具有多个等级的自适应加权调度器,多个等级包括,但不限于,等级I和等级II。等级I调度器具有多个调度器S1、S2、S3、……、Sm,其中m指组的总数。图9中的每个等级I调度器运行自适应w*DRC/T调度算法的一个特定操作模式,并从该组中选择一条流程。首先,等级I调度器计算Y的部分,具体而言是吞吐量T,以及速率补偿因子α。接下来,等级II调度器考虑各条流程,并向等级I调度器提供足够的输入,以由等级I调度器完成对选择度量Y的计算。一旦为所有未决流程完成完成对Y的计算,等级I调度器对Y值进行估值,并选择具有最高Y值的流程。每个等级I调度器对一组具有相似QoS要求的流程进行估值。每个等级I调度器所选择的流程随即被提供给等级II调度器,以供与来自其它组的流程进行比较。等级II调度器考虑每组一个所选择的流程,并选择具有最高度量(aw*DRC/T)或Y值的流程。当调度器需要选择一条流程进行服务时,为每个时隙重复此过程。替换实施例可使用单等级的调度器,或可使用比图9中所示更多的等级。替换实施例可包括不同个数的等级I调度器,其中等级I调度器对应于流程组织。
一般而言,将自适应权值的计算是给定为若干参数的函数,并给定为:
        a=f(Φ,γ,α,β,δ)。                            (5)
延迟补偿函数记为Φ。等待时间常数记为γ。速率补偿函数记为α。DRC补偿函数记为β。增强抖动补偿因子记为δ。注意不是对于所有多媒体服务所有参数都具有实际的值。例如,当仅给定流程的QoS要求是指定的数据率时,那么变量α将被指定,(速率参数将有实际的值)而所有其它常数将被设为等于1。在此情形中,自适应权值计算中将仅包括速率参数。在一个实施例中,自适应权重按下式计算:
        a=Φ*γ*α*β*δ                                     (6)
其中算子为乘号。以下讨论提供自适应权值计算中可包括的各种补偿项的细节。
对于模式I的应用程序,QoS概况指定等式(6)中所指示的所有参数。自适应权值计算考虑由于延迟阈值违反而产生的延迟补偿,由于等待时间阈值违反而产生的延迟补偿,由于速率违反而产生的速率补偿,和由于加强抖动阈值违反而产生的加强抖动补偿。此概念提高违反指定QoS要求的流程的权值。一旦被违反QoS要求所触发,此类流程即被给予信任分。信任分是通过将流程的权值乘以延迟补偿函数的合适的值来实现的。这个结果还要乘以速率补偿和加强抖动补偿。
相反,当流程表现为在接收超额的服务时,该流程可被处罚。可用各种方法中的任何一种来处罚流程。根据一种方法,可通过减少流程权值来直接处罚流程。根据另一种方法,可通过维持该流程权值并同时增加其它落后的(即,那些未达到所要求的QoS的流程)用户的权值来间接处罚流程。
有各种计算延迟补偿以考虑违反延迟阈值的机制。假设流程k的延迟阈值记为dth_Фk,流程k在时隙n中由于延迟阈值违反而产生的延迟补偿记为Фk[n]。为计算延迟补偿Фk[n],考虑每条流程所有三个队列(即,Tx、RTx和ARQ)中的分组。
对于每条流程,还对Φ指定最大和最小阈值,以确保一条流程不会消耗若干个相继的时隙而使其它流程匮乏时隙。这样设计还确保由于延迟阈值违反而产生的流程延迟补偿项至少和最小阈值一样好。令Φthres,min,k和Φthres,max,k是为每条流程k指定的最小和最大阈值。这(对于所有k和所有n)导致:
        φthres,min,k≤φk[n]≤φthres,max,k,k,n。        (7)
将使用以下定义来推导对延迟补偿的计算:
D[n]:定义在时隙n的开始处经受延迟阈值违反的一组流程(即,每个此类流程在时隙n的开始处都至少有一个超过该流程延迟阈值的分组)。
defpktsk[n]:定义在时隙n的开始处流程k的“亏数”分组。亏数分组是还未在流程中传输的分组,defpkts具体定义为在BTS中停留时间超过流程k的延迟阈值的同等大小的(MAC)分组的个数。
required_ratek:定义流程k的请求速率。
ndefpktsk:定义流程k的归一化亏数分组个数,具体定义为:
ndefpkts k = defpkts k required _ rate k - - - ( 8 )
注意BTS、BSC和PDSN中的分组可能是不相等的大小,因此,这里计算亏数位而不是分组的个数是有好处的。
如果流程的HOL分组在BTS队列中停留的时间段大于预先指定的阈值,则可用以下机制对该流程进行补偿。为此目的使用的等待时间阈值应当大于或等于为计算Φ所使用的阈值。对于流程k,等待时间阈值记为dth_γk,其中等待时间阈值受dth_γk≥dth_φk,k的约束。为了选择流程的HOL分组,首先考虑来自流程的Tx、RTx和ARQ队列的HOL分组,并基于BTS处的等待时间选择其中的一个,即,选择在BTS中等待了最长时间的那一个。令γk[n]为在时隙n开始处流程k的等待时间补偿,Sk[n]为在时隙n处流程k的HOL分组在BTS队列中停留的时间。对于每条流程k,还指定最小阈值Sthres,min,k和最大阈值Sthres,max,k,满足Sthres,min,k≤Sk[n]≤Sthresh,max,k,k,n。
根据一个实施例,当流程经受延迟阈值违反或等待时间阈值违反时应用延迟补偿。该机制将DRC数据率请求应用到自适应权值。令βk[n]为时隙n中流程k的DRC调整函数。为每条流程k指定最小阈值βmin,thres,k和最大阈值βmax,thres,k,满足βmin,thres,k≤βk[n]≤βmax,thres,k
尽管对于诸如视频/音频会议等一些应用程序来说,上述补偿机制帮助减少流程中的延迟变化,包括更有效地延迟变化(抖动)控制并进一步减少延迟变化可能是合乎需要的。以下机制通过减少流程相继分组两两之间的延迟变化,来提供有效的延迟变化控制。具有较大IP分组大小的流程从此补偿机制中获益更多。
假设at(k,j)为BSC入口处流程k的IP分组j的到达时间。令dt(k,j)为此IP分组从BTS离开的时间,即,到此时间为止此IP分组的所有分段都已由BTS处的前向链路调度器所传输。令pendk,j[n]为BTS和BSC处流程k的IP分组j的字节总长度。假设dvk,target为流程k相继IP分组两两之间的目标延迟变化(抖动),dvk,thres为此流程预先定义的增强抖动阈值,并使dvk,thres<dvk,target。在一个实施例中,当相继IP分组两两之间的延迟变化超过dvk,thres时,该算法即为流程k触发增强延迟变化补偿机制。
图10提供对应于一个实施例的体系结构图。每个应用程序流程由通信量概况、QoS概况和DRC请求(即,请求数据率)描述。每个通信量概况包括突发性的度量和平均数据率。每个QoS概况包括类类型和参数边界。类类型可以是模式I、模式II、模式III或模式IV中的一种。边界指定延迟、抖动、和所请求的数据率的边界。诸如网络浏览等一些应用程序可指定平均延迟而不是延迟边界。选择模式I的延迟阈值小于抖动边界;对于模式II,选择延迟阈值小于平均延迟。选择增强抖动阈值小于抖动边界。替换实施例可将较多或较少信息应用于每个应用程序流程,其中QoS要求可专属于网络和配置。
图11是为每个类类型指定QoS要求和QoS参数的表。如图所示,模式I对应于最严格的要求,而模式IV对应于不指定任何QoS要求的尽力服务型。替换实施例可包括其它QoS要求、QoS参数和/或模式。
图12A到12E作为有效应用程序流程的一部分,示出对应用程序流程的处理和对该应用程序流程的调度。图12A所示是对单个应用程序流程进行初始化和设置的流程图。该过程在步骤1100开始以选择用于每个补偿参数的机制。补偿参数包括,但不限于:延迟(Φ);未决时间(γ);DRC(β)、抖动(δ)、和速率(α)。在步骤1102为适用的补偿参数选择阈值。注意补偿参数可包括对于AN具有重要性的应用程序流程的任何参数。在步骤1102选择用于计算中间权值的算法,其中中间权值用于计算调度所用的自适应权值。在步骤1106设置比例参数(C)和优先权因子(Z),这两者都用于计算自适应权值。在步骤1108为此应用程序流程设置初始权值。在步骤1110对该应用程序流程的QoS要求进行估值。如果除了DRC要求所标识的速率以外没有指定的QoS要求,则适用默认条件。默认条件为如上所述的“尽力服务型”。在此情形中,默认处理将用于此应用程序流程的所有补偿因子设为等于1。对于本实施例来说,在此情形中,对等式(6)的计算适用乘法算子,因此将各因子设为1有效地忽略那些因子,即,那些因子不影响加权。注意替换实施例可实现其它机制和函数,并因此适用其它机制来忽略具体或所有的补偿因子。
尽力服务型处理在步骤1112和1116继续。所得的调度因子计算是与比例公平计算一致的。如果应用程序流程具有QoS要求,则处理前进至步骤1114。步骤1114和1116指示处理在接下来的附图中继续。
图12B从步骤1114起继续图12A的处理。在步骤1120对当前时隙的处理开始。在步骤1122判定应用程序流程的类类型。在步骤1128处理模式I,在步骤1126处理模式II,在步骤1124处理模式III。在步骤1128监视模式I的QoS参数;在步骤1124监视模式III的QoS参数。随即在步骤1130、1140和1150处对QoS违反进行检查,这在图12C和12D中进一步详述。
对于模式I、II或III的应用程序,应用程序流程的处理在图12C的步骤1130继续。在步骤1132,该算法周期性地监视速率违反。注意周期性地进行速率补偿计算,并在其后的多个时隙中使用。如果在步骤1134检测到速率违反,则处理前进至步骤1138以计算速率补偿因子(α)。否则,在步骤1136将速率补偿因子(α)设为等于1。处理随即前进至步骤1160,这将在图12E中进一步详述。
对于模式I或II的应用程序,应用程序流程的处理在图12C的步骤1140继续。在步骤1142该方法在每个时隙对延迟和抖动违反进行监视。如果在步骤1144检测到延迟和/或抖动违反,则处理前进至1148以根据在初始化所选择机制计算延迟补偿因子(Φ)。对于具有请求的增强抖动补偿的模式I的流程,那么还计算增强抖动补偿因子(δ)。对于没有请求的增强抖动补偿的模式I流程和对于模式II的流程,δ设为1。否则,在步骤1146将延迟补偿因子(Φ)设为等于1,并将δ设为等于1。处理随即前进至步骤1160,这在图12E中进一步详述。注意对于模式I或模式II的应用程序流程,可一前一后地或并行地进行违反检查。换言之,可在时间上连续地或并行地进行速率违反和延迟/抖动违反检查。
对于模式I的应用程序,应用程序流程的处理在图12D的步骤1150继续。在步骤1152该方法对于等待时间违反进行监视。如果在步骤1154检测到等待时间违反,则处理前进至步骤1158以根据在初始化选择的机制来计算等待时间补偿因子(γ)。否则,在步骤1156将等待时间补偿因子(γ)设为等于1。处理随即前进至步骤1160,这在图12E中进一步详述。注意对于模式I的应用程序流程,可一前一后或并行地进行违反检查。换言之,可在时间上连续地或并行地进行速率违反、延迟/抖动违反和等待时间违反的检查。
图12E示出转自步骤1160和1116的处理。在步骤1162根据QoS参数和补偿因子,为应用程序流程计算自适应权值,给定为:
       aw=f(Φ,γ,α,β,δ)          (9)
在步骤1164按下式计算调度因子或调度度量:
       调度因子=aw*(DRC)/T               (10)
该调度算法随即根据为每个有效的应用程序流程计算所得的调度因子,对应用程序流程进行调度。
图13根据一个实施例示出适合应用调度算法的BTS 1200。BTS 1200包括调度单元1202、应用程序流程处理器单元1206、QoS参数估值1204、自适应权值计算单元1212和CPU 1208,以上每一个都耦合到通信总线1210。调度单元1202通过为每个应用程序流程准备调度因子、随后根据这些调度因子在各个有效应用程序流程之间进行选择来进行调度。给定系统的策略和目标被结合到调度算法中。QoS参数估值1204对QoS违反进行监视,并向调度单元1202和权值计算单元1212提供信息。应用程序流程处理执行处理,包括,但不限于,将分组引导到目标AT,从目标AT接收用于调度的QoS信息、并将该信息提供给QoS参数估值1204。BTS1200还包括存储器1214,用于存储中间信息,和维护用于计算平均值、流程队列等的数据。违反检查是在BTS处进行的。一个实施例持续对为每条流程所发出的字节数进行计数,并将该信息用于速率违反的检查。当每个分组到达BSC处,它都被打上时间戳。只要分组仍停留在AN、BSC或BTS,时间就持续渐增。BTS将此时间用于检测阈值违反,并随即根据流程计算延迟、等待时间或增强抖动补偿函数。
允许进入控制
允许进入控制指允许请求数据服务的用户进入中的决策过程。当新用户请求诸如具有QoS要求的应用程序等数据服务时,AN确定是否有可用资源来支持该使用。允许进入过程考虑所请求的应用程序、当前的使用、以及QoS和网络统计量。如果AN确定可支持该新用户,那么对应的应用程序流程即被允许。否则,如果当前没有可用资源,则应用程序流程被拒绝或放置在队列中以等待状态的改变。注意新用户实际上可以是具有请求额外服务的当前有效的应用程序流程,即,额外应用程序流程。
除了允许进入控制以外,并作为其一部分,可实现一种用于终止有效应用程序流程的先占过程,其中对当前操作情况进行估值来作出先占的决策。在此情形中,就QoS违反以及数据率对每个当前流程进行估值。
本节给出一种自适应的每个扇区的允许进入控制算法。该允许进入控制算法决定在给定无线多媒体网络中是否允许(或先占)一条流程。因此可能能够确定给定网络中可允许的(每个类的)流程数量。本文中所给出的允许进入控制算法的若干实施例包括同时执行用户间和用户内QoS两者监视、并随即将此信息应用于允许进入和/或先占决策的机制。这些实施例被设计成确保对于所允许进入的流程和用户,每条流程和每个用户的QoS要求得到满足。这些机制有助于协调允许进入控制算法和分层结构调度算法。
调度和允许进入控制是无线网络中前向链路(FL)QoS管理的一部分,其中此类管理是一个复杂的问题。QoS管理是通信网络的设计和操作中一个重要的考虑因素。应用程序流程是根据如系统所定义的准则等来分类的。在一个实施例中,分类是根据QoS要求。首先,允许进入控制确定在当前操作情况下可允许进入的流程数量。该流程数量随即被分成每个类的流程数量。系统随即进行操作以满足每个所允许进入的流程的QoS要求。注意流程的数量可随时间并随应用程序的类型动态地改变。例如,在第一时间,接入网络(AN)可支持对每类应用程序准许具体数量流程的第一情形。在第二时间,AN可支持对各类应用程序中的至少一类允许不同数量流程的第二情形。
调度器(即,调度算法)在所允许的流程中实现一种公平策略。调度器还试图试图对有QoS违反的流程进行恰当恢复。操作者的收入和利益是取决于所用调度算法的有效性。更有效和特征丰富的算法提供增加这些利益的机会。
就允许进入控制而言,一个实施例实现一种基于预订因素的方法。注意基于预订的方法常常用在有线网络的允许进入控制算法中。在无线网络中,每个用户的信道情况持续变化,因此如BTS调度器所见的前向链路容量也持续变化。基于有线预订因素的算法假设固定的链路容量,并因此不能直接适用于无线网络。
对于无线网络,一个实施例为FL管理提供一种自适应预订因素基(ASF)的允许进入控制算法,其中网络支持多个具有QoS要求的应用程序流程。无线网络中的ASF允许进入控制通过监视QoS统计量和网络统计量,来动态地更新预订因素。可使用各种机制来执行更新功能。因此能够利用自适应预订因素来采取纠正性的行动。此外,ASF还用于实现先占方法。
在每个时间t计算ASF,AS(t)。该过程为AS(t)确定最小阈值ASmin_prespecified,和最大阈值ASmax_prespecified,以使1<ASmin_prespecified≤AS(t)≤ASmx_prespecified<∞,t。初始时,向ASF分配值Sinitial,以使AS(0)=Sinitial
图14是一张时序图,测绘出作为时间函数的最大数据率、保留带宽、和可用带宽。BTS在前向链路上可传输数据的最大速率(Lmax)提供资源分配的上界。对有效应用程序流程进行估值以确定保留带宽Res(t)。使用QoS违反和网络负载有关的统计量,进行自适应预订因素的计算和对在时间t希望保留的前向链路容量L(t)估计。注意L(t)≤Res(t)是可能的。例如,假设所允许的流程在它们被允许进入的时候经历非常好的信道情况。现在,若干流程的信道情况变差并且一些流程没有达到相关联的QoS保证。在此情形中,系统可能希望在允许更多流程上变得更加保守,并设Avail(t)=0。另一方面,如果L(t)>Res(t),则系统可设Avail(t)=L(t)-Res(t)。值L(t)即为基于先前的QoS违反和网络负荷有关的统计量,对在时间t希望保留的前向链路容量的估计,并根据Lmax和ASF进行计算,如下:
L ( t ) = L max AS ( t ) , ∀ t , - - - ( 11 )
其约束为:
L ( t ) &le; L max AS min _ prespecified < L max 并且                                                 (12)
L ( t ) &GreaterEqual; L max AS max _ prespecified > 0 . - - - ( 13 )
可用带宽Avail(t)按下式计算:
Avail(t)=maximum(L(t)-Res(t),0)                (14)
如图14中所示的各种资源的度量是由从用户接收的数据率控制(DRC)数据请求来确定的。每个用户在后向链路上发送DRC数据请求。在cdma2000 1xEV-DO或其它HRPD类型的系统中,用户在每个RL传输的时隙上发送DRC数据请求。如所示的,来自用户1的数据请求(DRC 1)和来自用户2的数据请求(DRC 2)随时间改变。这些数据请求和所要求的QoS确定保留带宽(Res)。注意提供该DRC值和Res之间的关系是作为示例。替换实施例和情形可能导致不同的关系。
每个应用程序流程都具有平均速率和突发性方面的指定通信量概况,其中流程fk的通信量概况由(σk,rk)给定。此处,rk是流程fk的平均请求速率,σk是突发性的度量,其中流程fk的所请求速率给定为req_rate(fk)=rk
根据一个实施例,允许进入控制就允许进入对流程fk进行估值。允许进入控制首先为用户应用对应于流程fk的观测到的DRC,u(fk)以满足所请求的速率,其中所观测到的DRC小于或等于该用户的平均DRC数据要求,如下所示:
    req_rate(fk)≤Avg(drc(u(fk)))。     (15)
随即进行ASF的计算AS(t),并将其用于按下式计算Avail(t):
Avail ( t ) = max imum ( L max AS ( t ) - Res ( t ) , 0 ) - - - ( 16 )
最后,对于流程fk的允许进入决策在时间t考虑:
    req_rate(fk)≤Avail(t)。            (17)
如果流程fk被允许进入,则如图14中所示的资源度量按下式更新:
    Res(t)=Res(t)+req_rate(fk)          18)
    Avail(t)=Avail(t)-req_rate(fk)     (19)
AN继续为所有所允许进入的流程监视QoS统计量,并监视网络有关的统计量。监视为适应预订因素提供反馈。
AS(t)的自适应方法:每个扇区的QoS和网络统计量
图18A到18E提供一种支持多个具有QoS要求的应用程序流程的系统的允许进入控制的方法300的流程图。在图18A中,当在判定菱形框302AN接收到对新流程的请求时,在步骤304应用允许进入控制程序。否则,该过程等待新的流程请求。注意在此时间期间,AN继续监视当前的操作情况,来进行当前有效流程的QoS统计量和流程的网络统计量。允许进入控制程序确定是否有资源可用以支持该新流程。诸如图14中所示的资源度量在步骤305得到更新。如果在判定菱形框306,新的流程被允许进入,则处理前进至307以应用自适应调度过程。
步骤304的允许进入控制程序在图18B中进一步详述。在判定菱形框308,如果流程fk的请求速率大于流程fk的平均DRC数据要求,则处理前进至步骤312以拒绝流程fk进入。否则,处理返回判定菱形框312以确定流程fk的请求速率是否大于在时间t的可用资源Avail。如果所请求的速率小于Avail,那么在步骤314该流程被允许进入,否则在步骤312拒绝该流程。
步骤305对资源度量的更新在图18C中进一步详述。在步骤320,资源度量Avail和Res得到更新。在步骤322QoS统计量得到更新和监视。在步骤324,ASF基于步骤320和322的结果得到更新。在步骤326,估计的资源等级L被重新计算。如果在步骤328有新的流程被请求,则处理返回以在图18A的步骤304进行处理。如果在步骤328没有新的流程被请求,那么在步骤330为每个用户确定用户在该扇区中的存在。在步骤332确定采样持续周期。
继续讨论图18D,为每条流程选择QSG参数。考虑两个并行的处理路径,其中第一路径在步骤342在速率采样间隔上处理速率违反。注意该速率采样间隔大于在步骤332计算所得的采样持续时间。第二路径将每个有效流程的处理具体化。对于给定的流程,该过程在步骤344确定在采样持续时间期间有延迟违反的IP分组的比率。在步骤346,为所考虑的流程计算采样持续时间期间有抖动违反的IP分组的比率。随即在步骤348计算在采样持续时间期间流程所用时隙的分数。在步骤350该过程确定在采样持续时间期间给予具有QoS要求的流程的时隙的分数。在步骤352,该过程就QoS违反进行检查,并在步骤354确定QoS分组ID。
处理前进至图18E,步骤360为每个QoS分组计算流程的数量。在步骤362该过程随即计算对应于每个QoS统计量的QoS流程的分数。随即在步骤364将步骤360和362的结果与预先确定的阈值相比较。注意阈值可在操作期间被动态更新。在步骤366据此调整ASF。
图18A到18E提供允许进入控制方法的一个实施例。在下文讨论允许进入控制方法的其它细节。诸如BTS等AN元件为每条流程收集每个扇区的统计量,并将此信息用于每个扇区的允许进入控制和先占算法。仅在对应于流程的用户在该分区中的期间收集每个扇区的统计量。BTS周期性地收集QoS和网络有关的统计量。令T为收集这些信息之前的那个时间周期,其中Z是采样索引,t=Z*T。
考虑扇区s中的流程fk,其中u(fk)是对应于流程fk的用户。该用户在时间tenter进入扇区s。在扇区s内部,在持续时间[treserve(fk,s),tfree(fk,s)]内为此流程保留资源,其中资源在时间treserve得到保留。在用户请求应用程序服务时,资源被保留。用户u(fk)在以上持续时间内,在tenter,j(fk,s)第j次进入扇区s,并在tleave,j(fk,s)第j次离开。因此,treserve(fk,s)≤tenter,first(fk,s)且tfree(fk,s)≥tleave,last(fk,s)。注意,出于预计该用户可能在某个未来的时间点移到此扇区,经由QoS信令协议AN会被告知要为流程保留资源是可能的。此处,tenter,first(fk,s)是用户u(fk)第一次进入此扇区s的时间,而tleave,last(fk,s)是在流程fk的生命期期间此用户最后一次离开扇区s的时间。
仅当在时间t以下三个条件都得到满足时,该算法在时间t将QoS和网络有关的性能统计量纳入考虑:
     treserve(fk,s)≤t≤tfree(fk,s)             (20)
   tenter_latest(fk,s)+δ(fk)≤t≤tleave_latest(fk,s),并且   (21)
   IN_IP_PKTS(fk,t,s)>θ(fk)                                 (22)
其中,δ(fk)和θ(fk)是为流程fk预先指定的,IN_IP_PKTS(fk,t,s)是在扇区s中在时间段(max(t-T,tenter_latest(fk,s)),t]期间由BTS前向链路调度器调度以供传输的流程fk的输入IP分组的个数。如果IP分组的最后一位在扇区s中被传输,则该位被计入该扇区的IN_IP_PKTS。变量δ(fk)指在该扇区中的出现被视为重要之前的时间。换言之,一旦用户在扇区s中停留了δ秒,则该过程开始对资源进行估值。注意,一旦得到允许,用户无须要求重新允许即刻离开和重新进入该扇区。
Qos和网络统计量随即被用于为每个请求应用程序服务的流程进行允许进入准则的估值。在时间段(max(t-T,tenter_latest(fk,s)),t]期间扇区s中对应于流程fk的延迟IP分组按下式计算:
Frac _ delayed _ IP _ Pkts ( f k , t , s ) = DELAYED _ IP _ PKTS ( f k , t , s ) IN _ IP _ PKTS ( f k , t , s ) - - - ( 23 )
其中DELAYED_IP_PKTS(fk,t,s)对应于到时间t为止在扇区s的BTS处延迟了超过流程fk对应的延迟边界的IP分组的个数。一旦在扇区s中检测到IP分组的延迟违反,即渐增该扇区延迟违反的计数。到时间t为止流程fk有抖动边界违反的IP分组对的分数按下式计算:
Frac _ jitter _ viol ( f k , t , s ) = JTR _ VIOL _ PKT _ PAIRS ( f k , t , s ) IN _ IP _ PKTS ( f k , t , s ) - 1 , - - - ( 24 )
其中JTR_VIOL_PKT_PAIRS(fk,t,s)对应于到时隙t为止流程fk有抖动边界违反的(相继IP分组的)IP分组对的数量。当一条流程的两个相继IP分组在一扇区上传输时,为该扇区进行此计数。
在时间段(tenter_latest(fk,s),t]期间流程fk的速率违反,
Rate _ viol ( f k , t , s ) = req _ rate ( f k ) - served _ rate ( f k , t , s ) req _ rate ( f k ) - - - ( 25 )
其中req_rate(fk)>served_rate(fk,t,s)。否则当流程fk在时间t没有速率违反时,计算在(tenter_latest(fk,s),t)时间期间扇区s中流程fk的served_rate(fk,t,s)。
注意,对于速率违反,该过程将时间段(tenter_lates(fk,s),t)作为采样持续时间应用,但是对于延迟和抖动违反,该过程将时间段(max(t-T,tenter_latest(fk,s)),t]作为采样持续时间应用。
在时间段(max(t-T,tenter_latest(fk,s)),t]期间流程fk所使用的时隙分数按下式计算:
Frac _ slots _ flow ( f k , t , s ) = SERVED _ SLOTS ( f k , t , s ) IN _ SECTOR ( f k , t , s ) - - - ( 26 )
其中SERVED_SLOTS(fk,t,s)是在由(max(t-T,tenter_latest(fk,s)),t)定义的时间段期间流程fk受到服务的时隙的数量,IN_SECTOR(fk,t,s)是(max(t-T,tenter_latest(fk,s)),t)期间时隙的总数。在时间段(t-T,t]期间给予扇区s中具有QoS要求的流程的时隙的分数由下式给出:
动态流程分类
对于每条流程fk,以下四个阈值是预先指定的,并用于执行每条流程的QoS和信道情况有关的检查:
    Frac_delayed_IP_pkts_thres(fk),(分数延迟IP分组阈值(fk))
    Frac_jitter_viol_IP_pkts_thres(fk),(分数抖动违反IP分组阈值(fk))
    rate_viol_thres(fk),(速率违反阈值(fk))和
    Frac_slots_viol_thes(fk),(分数时隙违反阈值(fk))。
系统在每个时间T之后周期性地适应ASF,其中T是预先指定的值。在给定时间t当第Z次(即,t=Z*T)进行自适应检查时,该过程考虑扇区s中有一些资源得到保留的那些流程,即,满足treverse(fk,s)≤t≤tfree(fk,s)的流程。对于来自此组流程的每一条流程fk,进行检查以对以下“每条流程的阈值检查”进行估值:
    Frac_delayed_IP_Pkts(fk,t,s)>Frac_delayed_IP_pkts_thres(fk)         (28)
                (分数延迟IP分组(fk,t,s)>分数延迟IP分组阈值(fk))
    Frac_jitter_viol_IP_pkts(fk)>Frac_jitter_viol_IP_pkts_thres(fk,t,s) (29)
                (分数抖动违反IP分组(fk)>分数抖动违反IP分组阈值(fk,t,s))
    Rate_viol(fk,t,s)>rateviol_thres(fk)                                (30)
                (速率违反(fk,t,s)>速率违反阈值(fk))
    Frac_slots_flow(fk,t,s)>Frac_slots_viol_thes(fk)                    (31)
                (分数时隙流程(fk,t,s)>分数时隙违反阈值(fk))
如果满足以下两个条件,则对流程fk进行以上四个检查:
    tenter_latest(fk,s)+δ(fk)≤t≤tleave_latest(fk,s),以及             (32)
    IN_IP_PKTS(fk,t,s)>θ((fk))                                         (33)
当对于一条流程,条件(32)、(33)中的至少一个没有满足,但treserve(fk,s)≤t≤tfree(fk,s)为真时,为该流程将每条流程的阈值检查的结果标记为NA。
该过程计算在采样持续时间期间,为具有QoS要求的流程使用的时隙的分数,还计算此分数值的阈值,其中Frac_slot_thres_qos_flows(s)是扇区s中在时间段T内分配给具有QoS要求的流程的时隙的分数的上阈值。Frac_slot_thres_qos_flows(s)的值用来检查下式是否成立:
    frac_slots_qos_flows(t,s)>Frac_slots_thres_qos_flows(s)。             (34)
该过程将当前的流程分类到以下QoS调度组(QSG)之一:
    QSG I或Q_DJR:具有延迟、抖动和速率要求的流程,
    QSG II或Q_RavgD:具有速率和平均延迟要求的流程,
    QSG III或Q_R:具有速率要求的流程。
考虑一组属于Q_DJR类的流程。如果给定流程fk对于NA类别是不合格的,并且或者满足:
    Frac_delayed_IP_Pkts(fk,t,s)>Frac_delayed_IP_pkts_thres(fk),        (35)或者满足
    Frac_jitter_viol_IP_pkts(fk,t,s)>Frac_jitter_viol_IP_pkts_thres(fk),(36)此流程被指定为有delay_or_itter_viol(fk,t,s)=Y(延迟或抖动违反(fk,t,s)=是)。否则,该过程为此流程设delay_or_itter_viol(fk,t,s)=N(延迟或抖动违反(fk,t,s)=否)。另一方面,如果在NA类别中是合格的,那么delay_or_jitter_viol(fk,t,s)=NA。
                                     表2
  QoS状态组ID(QS_GID)   QoS类  delay_or_jitter_viol(fk,t,s)  rate_viol(fk,t,s)>rate_viol_thres(fk)
  1   用于Q_DJR流程   是   是
  2   用于Q_DJR流程   是   否
  3   用于Q_DJR、Q_RavgD、Q_R流程   否   是
  4   用于Q_DJR、Q_RavgD、Q_R流程   否(或NA)   否(或NA)
在每个时间t,当进行AS(t)的自适应检查时,该过程如表2中所示对QoS流程(即,具有QoS要求的流程)进行分类。每条流程都被分配一个QoS状态组ID(QS_GID)。
QS_GID=1:有速率和延迟(或抖动)违反的Q_DJR类的流程。
QS_GID=2:有延迟(或抖动)违反而没有速率违反的Q_DJR类的流程。
QS_GID=3:没有延迟和抖动违反、但有速率违反的Q_DJR类的流程。
对于自适应应用程序可能产生此情形。并且,有速率违反的对应于Q_R和Q_RavgD类的流程被分配到此组中。
QS_GID=4:没有QoS(速率、延迟和抖动)违反的流程。如上文所述的NA类别中的流程也被放到此组中。
预订因素的自适应
令Nk(t,s)为在时间t对应于QSG k的流程个数,N(t,s)为在时间t在扇区s中有一些资源得到保留的流程总数。
N ( t , s ) = &Sigma; k N k ( t , s ) - - - ( 37 )
令M表示QoS状态组ID(QS_GID),结果为:
N Q _ DJR ( t ) = &Sigma; M = 1 4 N Q _ DJR ( t , M ) - - - ( 38 )
N Q _ RAvgD ( t ) = &Sigma; M = 3 4 N Q _ RAvgD ( t , M ) - - - ( 39 )
N Q _ R ( t ) = &Sigma; M = 3 4 N Q _ R ( t , M ) - - - ( 40 )
在时间t(在扇区s中)在QoS状态组M中,对应于流程k的QSG_k的流程的分数由下式给出:
F k ( t , M , s ) = N k ( t , M , s ) N k ( t , s ) - - - ( 41 )
在时间t有延迟(或抖动)和速率违反的流程的分数由下式给出:
        Frac_flows_DJR_viol(t,s)=FQ_DJR(t,M=1,s)            (42)
在时间t有延迟(或抖动)违反,但没有速率违反的流程的分数由下式给出:
        Frac_flows_DJ_viol(t,s)=FQ_DJR(t,M=2,s)             (43)
在时间t仅有速率违反的流程的分数由下式给出:
Frac _ flows _ R _ only _ viol ( t , s ) =
N Q _ DJR ( t , M = 3 , s ) + N Q _ RAvgD ( t , M = 3 , s ) + N Q _ R ( t , M = 3 , s ) N Q _ DJR ( t , s ) + N Q _ RAvgD ( t , s ) + N Q _ R ( t , s ) - - - ( 44 )
没有QoS违反(或在NA类别中的)流程分数由下式给出:
Frac _ flows _ no _ na _ viol ( t , s ) =
N Q _ DJR ( t , M = 4 , s ) + N Q _ RAvgD ( t , M = 4 , s ) + N Q _ R ( t , M = 4 , s ) N Q _ DJR ( t , s ) + N Q _ RAvgD ( t , s ) + N Q _ R ( t , s ) - - - ( 45 )
S(t)的自适应是在每个时间段T之后周期性地进行的,T是预先指定的。出于自适应的目的,可如下考虑以上各个组。
                                     表3
  QSG   QS_GID=1的流程的分数   QID=2的分数   QID=3的分数 QID=4的分数
  QSG_DJR   Frac_flows_DJR_viol(t,s)  Frac_flows_DJ_viol(t,s)   与Frac_flows_R_only_viol(t,s)结合 与Frac_flows_no_na_viol(t,s)结合
  QSG_RavgD   不适用  未使用   与Frac_flows_R_only_viol(t,s)结合 与Frac_flows_no_na_viol(t,s)结合
  QSG_R   不适用  不适用   与Frac_flows_R_only_viol(t,s)结合 与Frac_flows_no_na_viol(t,s)结合
以下阈值是预先指定的,并在以下所示的自适应方法中使用。
Frac_flows_thres_DJR:有延迟(或抖动)和速率违反的流程的分数上的阈值
Frac_flows_thres_DJ:有延迟(或抖动)违反、且无速率违反的流程的分数上的阈值
Frac_flows_thres_R:有速率违反(且无延迟或抖动违反)的流程的分数上的阈值
Frac_flows_thres_ok_qos:无QoS违反的流程的分数上的阈值
每当为AS(t)进行自适应检查之后,该过程立即按以下顺序继续执行:
步骤1:如果Frac_flows_DJR_viol(t,s)≥Frac_flows_thres_DJR:
AS(t+)=fqos*AS(t)+xqos,从而AS(t+)≥AS(t)。此处,fqos和xqos是预先指定的。否则,
步骤2:如果Frac_flows_DJ_viol(t,s)≥Frac_flows_thres_DJ:
则AS(t+)=fdelay_jitter*AS(t)+xdelay_jitter,从而AS(t+)≥AS(t)。此处,fdelay_jitter和xdelay_jitter是预先指定的。否则,
步骤3:如果Frac_flows_R_only_viol(t,s)≥Frac_flows_thres_R:
则AS(t+)=frate*AS(t)+xrate,从而AS(t+)≥AS(t)。此处,frate和xrate是预先指定的。否则,
步骤4:如果Frac_flows_no_na_viol(t,s)≥Frac_flows_thres_ok_qos:
则AS(t+)=fall_qos_flows*AS(t)+xall_qos_flows,从而AS(t+)≥AS(t)。此处,fall_qos_flows和xall_qos_flows是预先指定的。否则,
步骤5:如果Frac_flows_no_na_viol(t,s)≥Frac_flows_thres_ok_qos,并且如果Frac_slots_qos_flows(t,s)<Frac_thres_slots_qos_flows:
则AS(t+)=fok*AS(t)+xok,从而AS(t+)≤AS(t)。此处,fok和xok是预先指定的。否则,
步骤6:如果Frac_flows_no_na_viol(t,s)≥Frac_flows_thres_ok_qos,并且如果Frac_slots_qos_flows(t,s)≥Frac_thres_slots_qos_flows:则AS(t+)=AS(t)。
先占方案
图19根据一个实施例示出一种先占方法400。方法400由在判定菱形框402确定ASF是否得到增加而开始。当检测到ASF的增加时,处理前进至步骤404以确定有最高速率违反次数的流程。换言之,当ASF增加时,先占方法400开始标识要先占的那些流程。在本实施例中,具有速率违反的流程被表示为先占的最佳候选。替换实施例可给予其它流程优先权,并可以动态改变优先权方案。
如果在判定菱形框406达到先占的最大值PMAX(以下详述),则处理前进至步骤408以先占有最高延迟违反次数的流程。否则处理返回判定菱形框402。当在步骤408先占一条流程之后,处理前进至判定菱形框410以确定是否有多个具有最高延迟违反次数的流程。对于多条流程,处理前进至步骤412以先占使用最多时隙的流程。通常,此流程将具有很低的数据率,并因此在给定时间段期间消耗最多的时隙。处理随即返回判定菱形框402。
在一个实施例中,应用该先占方法400,其中P_max是在任何给定时间点允许被先占的最大流程个数。考虑满足表3中所示的两个先占组的条件的流程子集。具体而言,先占组1包含属于QSG_R或QSG_RavgD的流程,并有
        rate_viol(fk,t,s)>rate_viol_thres((fk),和                   (46)
        Frac_slot_flow(fk,t,s)>frac_thres_slots_flow(fk)。           (47)
先占组2包含属于Q_DJR QSG的流程,并且所述流程含有
        Frac_delayed_IP_Pkts(fk,t,s)>Frac_delayed_IP_Pkts_thres(fk)和(48)
        Frac_slots_flow(fk,t,s)>frac_thres_slots_flow(fk)。          (49)
                          表4
  先占组ID   QSG   QoS违反   时隙阈值违反
  1   Q_R,Q_RavgD rate_viol(fk,t,s)>rate_viol_thres((fk) Frac_slot_flow(fk,t,s)>frac_thres_slots_flow(fk)
  2   Q_DJR Frac_delayed_IP_Pkts(fk,t,s)>Frac_delayed_IP_pkts_thres(fk) Frac_slots_flow(fk,t,s)>frac_thres_slots_flow(fk)
步骤1:如果在某个时间点,AS(t)得到增加(如在AS(t)的自适应方法中),则该过程查看是否有一个或数条流程是有资格先占的。注意,当AS(t)未得到增加时,没有流程被先占。
步骤2:考虑对应于先占组1的流程子集。从这些流程外,选择具有最大rate_viol值的P_max条流程。如果有平局,则先占具有较大Frac_slots_flow值的流程。如果P_max条流程被先占,那么不再为速率违反先占更多的流程。
步骤3:考虑对应于先占组2的流程子集。这些流程具有延迟和抖动要求,并有Frac_delayed_IP_Pkts(fk,t,s)>Frac_delayed_IP_Pkts_thres(fk)和Frac_slots_flow(fk,t,s)>frac_thres_slots_flow(fk)。从这些流程外,选择P_max减去
步骤2中先占的具有最大Frac_delayed_IP_Pkts的流程个数。如果有平局,则先占具有较大Frac_slots_flow值的流程。
用户内和用户间的QoS
一个移动用户可能同时有多条流程,即,多个应用程序。如本文中所给出的,用户可指定以下各项:
每条流程的关于其是否对延迟和抖动敏感的指示。如果它对延迟和抖动敏感,则要指定延迟和抖动边界。
每个用户的总目标速率(ATR)。这是前向链路分层结构的调度器旨在给予此用户的目标速率。
允许进入控制
给定在时间t的R(t)个用户,记为U1、U2、……、UR(t),将num_flows(Uj,t)看作为在时间t用户Uj的流程个数。假设,在时间t用户Uj有(k-1)条流程被允许进入,即num_flows(Uj,t)=k-1。为决定在时间t允许用户Uj的一个新流程fk,j进入,该过程使用用户Uj的所观测的DRC来检查以下:
&Sigma; c = 1 k req _ rate ( f c , j ) &le; Avg ( drc ( U j ) ) . - - - ( 50 )
当进行如前所述的ASF的自适应时,流程所取的时隙数和其对应的DRC也被纳入考虑。该过程按下式计算AS(t)和Avail(t):
Avail ( t ) = max imum ( L max AS ( t ) - Res ( t ) , 0 ) - - - ( 51 )
如果下式成立,则该过程在时间t允许流程fk,j进入:
        req_rate(fk,j)≤Avail(t)                       (52)
如果此流程被允许进入,则作如下更新:
        Res(t)=Res(t)+req_rate(fk,j),               (53)
        Avail(t)=Avail(t)-req_rate(fk,j),           (54)
        ATR(Uj,t)=ATR(Uj,t)+req_rate(fk,j),    (55)
该过程继续为所有被允许进入的流程和用户监视QoS统计量,并监视网络有关的统计量。使用这些信息来继续适应预订因素。随即计算并应用ASF AS(t)。
分层结构的调度器
每条流程和每个用户的补偿:
每个延迟和抖动敏感的流程都被分配一个抖动阈值。对于用户Uk的每个对延迟和抖动敏感的流程fx,该过程计算对应的延迟和抖动补偿Φ。如果流程在一个队列中没有任何超过延迟阈值的分组,那么
        φ(fx(Uk))=1。                                 (56)
否则,计算
&phi; ( fx ( U k ) ) = C delay ( fx ( U k ) ) * ndefpkts ( fx ( U k , n ) ) ndefpkts min ( n ) - - - ( 57 )
此处,
ndefpkts ( fx ( U k , n ) = defpkts ( fx ( U k , n ) req _ rate ( fx ( U k ) ) - - - ( 58 )
对于用户Uk的每条流程fx,
        ndefpktsmin(n)=ndefpkts的最小值                (59)
考虑在时隙n的(所有用户的)所有流程,
defpkts(fx(Uk,n)=在时隙n用户Uk的流程fx违反其延迟阈值的未决MAC分组的个数。                                                (60)
对于在时隙n的用户Uk的速率补偿,定义,
&alpha; ( U k , n ) = ATR ( U k ) ASR ( U k , n prev ( n ) ) - - - ( 61 )
此处,
        ASR(Uk,nprev(n))=时隙nprev中用户Uk的总服务速率,并且(62)
            nprev≤n。                                        (63)
时隙号nprev是当出于调度算法的目的监视速率时n上或之前的最后一个时隙。
该过程为用户Uk定义在任意时隙n的总延迟补偿。考虑此用户具有延迟要求的所有流程,并查看每个这些延迟敏感的流程的排头(HOL)MAC分组。如果没有任何一个在系统中停留时间超过其延迟阈值,则:
        agg_delay_comp(Uk,n)=1。                            (64)
否则,为此用户考虑有HOL分组在系统中停留时间长于延迟阈值的流程子集。对于此用户,为有HOL MAC分组在系统中停留时期超过这些流程的延迟阈值的用户Uk的所有流程fx,计算:
agg _ delay _ comp ( U k , n ) = &Sigma; x w ( fx ( U k ) ) * &phi; ( fx ( U k ) , n ) , - - - ( 65 )
此处,w(fx(Uk))是分配给用户Uk的流程fx的初始权值。
自适应权值计算
为了为此用户计算自适应权值,该过程在每个时隙为每个至少有一个延迟敏感流程的用户的每一条流程进行延迟阈值违反的检查。该过程为每个这样的用户Uk计算:
        agg_delay_comp(Uk,n)                                (66)
如果agg_delay_comp(Uk,n)>1,则该过程如下为用户Uk计算自适应权值:
        awt(Uk,n)=agg_delay_comp(Uk,n)*awt(Uk,n-1)       (67)
另一方面,如果agg_delay_comp(Uk,n)=1,则该过程计算:
        awt(Uk,n)=a(Uk,nprev(n))*w(Uk)                    (68)
此处,nprev,k(n)是当ASR(Uk,nprev(n))受到监视(并且因此α(Uk,nprev(n))被计算)时在n之上或之前的最后一个时隙。该过程继续按下式为此用户计算最终的自适应权值:
            aw(Uk,n)=Z(Uk,n)*awt(Uk,n)                   (69)
此处,如果用户Uk任何延迟敏感流程的RTx或DARQ队列中没有任何分组,则Z(Uk,n)=1。否则,Z(Uk,n)=C(Uk)。此处,C(Uk)是预先指定的常数。
用户和流程选择方法
该过程为每个在其队列中至少有一个分组的用户计算以下时隙n中的度量,
    Y(Uk,n)=aw(Uk,n)*DRC(Uk,n)/T(Uk,n)                (70)
此处, T ( U k , n ) = &Sigma; fz T ( fz ( U k , n ) 是用户Uk的平均服务速率(即,包括所有对应的流程)。该过程选择具有最大Y(Uk,n)值的用户。一旦用这一调度器选择了一个用户,该过程即为该用户选择一个流,根据每个如下方案进行服务。
考虑分到以下各组中的流程:
组1:QSG_延迟_抖动。VoIP流程。
组2:QSG_延迟_抖动。视频会议流程。
组3:QSG_延迟_抖动。视频流的流程。
组4:QSG_速率_平均_延迟。具有速率和平均延迟要求的流程。
组5:QSG_速率。仅具有速率要求的流程。
在执行本文中所描述的调度算法中,可遵循以下步骤。
步骤1:考虑在该时隙中所选择用户的所有后备的流程。
步骤2:考虑该用户对应于组1和2的流程。选择HOL分组已违反其延迟阈值并且最接近该流程延迟边界的一条流程。如果找到流程,即服务此流程。否则,前进至步骤3。
步骤3:考虑对应于组3的且其中HOL分组已超过延迟阈值的流程,并选择其中HOL分组最接近延迟边界的流程。如果找到流程,即服务此流程。否则,前进至下一个步骤。
步骤4:考虑对应于组4的且其中HOL分组已超过延迟阈值的流程,并选择其中HOL分组最接近延迟边界的流程。如果找到流程,即服务此流程。否则,前进至下一个步骤。
步骤5:从组1到4中选出一个后备流程来服务。给予具有最小组号的流程以优先权。如果已选择了流程,则服务它。否则,前进至下一个步骤。
步骤6:考虑该用户对应于组5的后备流程。选择具有最大所请求速率/服务速率值的那一个。服务此流程。如果没有任何一个被选择,则前进至下一个步骤。
步骤7:服务该用户的尽力服务型流程。如果有一个以上,选择具有最小服务速率值的那一个。
图16示出一种应用每条流程和每个用户的补偿的两级调度器。图16和图17中所示的调度器是用于如本文中所述的用户间和用户内QoS补偿的分层结构的调度器。如图16中所示,表示为等级1的第一级包括多个调度元件或节点S1、S2、……、SM,其中每个节点处理一个不同的QSG。在此例中,M是要处理的QSG分组数。例如,调度节点S1处理IP电话(VoIP)类型的应用程序流程。尽管给出IP电话作为示例,但是任何分类成QSG 1的应用程序流程将在S1处得到处理。这些流程具有指定用于评估QoS要求的延迟和抖动边界。多个应用程序IP电话类型的流程在调度元件S1处得到处理。类似地,每个调度元件为一个指定的QSG处理流程。注意,替换实施例可向一个调度元件提供多个QSG的应用程序流程。注意,处理同一个QSG组可使用多个调度元件。
图16中所示的调度器的等级I计算每条流程的补偿的一部分。每个用户的多个应用程序流程在图16中示出。等级II调度元件完成每条流程的补偿的计算。
图17示出具有调度节点 S1S2、……、 Sz的调度器。在此步骤,z是用户的个数。注意,用户个数是动态的,因此当前调度节点的个数可动态改变。每个调度节点 S1S2、……、 Sz都适用于从一个给定用户接收多条流程。调度节点 S1为用户1(U1)接收流程F1到Fk。这里k是当前为用户1处理的应用程序流程的总数。使用由图16中的等级I和等级II调度器计算的每条流程的补偿,图17中的等级II调度器为每个用户计算总用户补偿。等级II调度器随即根据以上就用户选择方法所描述的自适应加权DRC/T算法来选择在时隙中要服务的用户。等级II调度器随后在从等级I调度器接收到的加权值之间进行选择。如所指示的,W(Uk)是分配给用户Uk的初始权值,ATR(Uk)是用户Uk的总目标速率。一旦选择了用户,对应于该用户的等级I调度器即根据上述的流程选择方法,为该用户选择该时隙中要服务的流程。
一种前向链路调度器可允许每个用户在一个时隙中在给定的DRC值处为要服务的流程指定承受的价格。一旦指定了价格,自适应帧结构调度器运行以满足不同类型的应用程序的QoS要求。对应的调度机制允许服务供应商在增加利益和满足应用程序的QoS要求目标之间寻找很好的平衡。该调度机制还提供终端用户的动态成本控制,并可用于具有速率和/或平均延迟要求的应用程序或用于流应用程序,等等。一个实施例提供一种定价选择,其中每条流程指定当其被服务时每个时隙的价格。此价格依赖于在该时隙中用户为该流程所请求的DRC值。流程j(即,访问流程j的用户)在时隙m愿意支付的价格记为c[j,m,DRC[j,m]]。此处DRC[j,m]表示在时隙m中服务此用户的速率。用户可静态地指定价格,诸如为每个DRC值预先指定价格。或者,用户可动态地指定价格,诸如在应用程序的生命期期间改变价格。这允许用户对价格有某种程度的控制,以响应于变化的信道情况并达到期望的QoS。操作者可使用这样的一个调度器连同为用户间和用户内QoS所给出的调度器。这允许操作者指定至少两种类型的定价方案。对于用户间和用户内QoS调度器,操作员可指定静态定价方案(基于静态服务等级协议),并且在同时允许基于自适应帧结构的调度器的动态定价方案。用户可选择对不同流程使用不同的方案。
一个实施例将时间分成若干个帧,并根据DRC值、QoS要求、QoS违反统计量和每个用户所指定的价格为每个时隙作调度决策。帧结构基本上给出一轮中应服务的用户队列的次序。网络在每轮调度中决定在给定时隙要为该轮服务哪条流程/用户以达到所期望的目标。帧结构,即在每一轮服务流程的次序,持续变化,并被称为基于AFS的算法。
以下定义对计算过程中使用的一些符号进行解释。给定N个队列(每条流程一个队列),假设如果以速率r[j]服务流程j,则其QoS要求得到满足。还为每条流程j预指定初始权值w[j]和时间标度ts[j]。该过程旨在为流程j提供速率保证,流程j在每个时间标度的整数倍的时隙(即,在每个m*ts[j]时隙,其中m是整数)受到监视。
令start[j]为当流程j最初开始受到考虑要在一轮中被服务的时隙。到时隙z结束时,系统希望服务S[j,z]=r[j]*(z-start[j])个比特,其中对于某个整数m有z=m*ts[j]。使用一种调度机制,该系统能够平衡所希望分配给一个给定流程的时隙数和所希望为该流服务的比特数。
此外,其它用于AFS调度器的参数如下:
slots_alloc[j,n]:在第n轮分配给队列(流程)j的时隙数。
slot_served[j,n]:当队列(流程)j在第n轮得到服务时的时隙数。
S_r[j,n]:到第n轮结束时为止要为流程j服务的比特数。
round_len[n]:第n轮时隙数长度。
round_len_thres:一轮的长度以此阈值为上界。
B[n]:在时隙n的开始时后备队列的列表。
Rout_round[j,n]:由调度器在第n轮为队列j服务的比特数。
Rout[j,n,g]:在时间间隔[n,g]期间为队列j服务的比特数,其中g≥n。
使用以上给出的描述,在第n轮开始队列j的亏数比特由下式给出:
def _ bits _ r [ j , n ] = max ( S _ r [ j , n - 1 ] - &Sigma; k = 1 n - 1 R out _ round [ j , k ] , 0 ) , &ForAll; n , &ForAll; j - - - ( 71 )
当亏数比特为正时,对应的流程在服务中落后,并要得到补偿。另一方面,流程所受到的额外服务不显示地受到处罚,但间接地受到处罚,因为此流程不会得到补偿,而在服务中落后的其它流程将得到补偿。
此外,在第n轮的开始流程j的归一化亏数比特由下式给出:
ndef _ bits _ r [ j , n ] = def _ bits _ r [ j , n ] S _ r [ j , n - 1 ] , &ForAll; j , &ForAll; n . - - - ( 72 )
在第n轮的开始队列j的亏数时隙由下式给出:
def _ slots _ r [ j , n ] = max ( &Sigma; k = 1 n - 1 slots _ alloc [ j , k ] - &Sigma; k = 1 n - 1 slots _ served [ j , k ] , 0 ) , &ForAll; n , &ForAll; j - - - ( 73 )
该过程定义在第n轮的开始队列j的归一化亏数时隙如下:
ndef _ slots _ r [ j , n ] = def _ slots _ r [ j , n ] &Sigma; k = 0 n - 1 slots _ alloc [ j , k ] , &ForAll; j , &ForAll; n . - - - ( 74 )
令lslot[n]为第n轮的最后一个时隙,fslot[n]为第n轮的第一个时隙。假设aw[j,n]表示第n轮分配给流程j的(自适应)权值。此权值决定在第n轮分配给流程j的时隙数。
对用户所请求的DRC值进行排序。具体而言,如果DRC1[B,S]优于DRC2[B,S],那么(B/S)1>(B/S)2。这里B是每个分组的比特数,S是时隙数。
对于AFS调度器的每轮调度,该过程都为每一轮计算以上给出的状态变量,随后在每一轮的开始为每条流程计算权值,以在该轮向此流程分配某个数量的时隙。出于此目的,该过程使用一种自适应权值计算机制,并用一种每一轮的服务规律来为每一轮计算帧结构。
自适应权值计算机制
令ndef_bits_rthres,min为预先指定的ndef_bits_r的阈值。该过程在第n轮的开始定义一个数组ndefbits_set[n]如下:
        ndefbits_set[n]={k:ndef_bits_rk≥ndef_bits_rthres,min}。    (75)
令S_I[n]为在第n轮的开始该数组中的流程个数。类似地,ndef_slots_rthres,min是预先定义的ndef_slots_r的阈值。该过程定义在第n轮的开始的ndefslots_set[n]如下:
        ndefslot_set[n]={k:ndef_slots_rk≥ndef_slots_rthres,min}。  (76)令S_II[n]为在第n轮的开始此数组中的流程个数。
对于任意的流程j,在第n轮的开始,定义对应的时隙补偿函数如下:
如果ndef_bits_rj≥ndef_bits_rthres,min
则slot_comp[j,n]=slot_comp_I[j,n]*slot_comp_II[j,n],                            (77)
如果ndef_bits_rj<ndef_bits_rthres,min
则,slot_comp[j,n]=1。                                                            (78)
此处,
如果ndef_bits_rj≥ndef_bits_rthres,min
slot _ comp _ I [ j , n ] = ndef _ bits _ r j ndef _ bits _ r avg [ n ] , - - - ( 79 )
对于所有k: k &Element; ndefbits _ set [ n ] , ndef _ bits _ r avg [ n ] = &Sigma; k ndef _ bits _ r k S _ I [ n ] - - - ( 80 )
如果ndef_bits_rj<ndef_bits_rthres,min
则slot_comp_I[j,n]=1。                                                            (81)
对于每条流程j,定义两个阈值,slot_comp_Ithres,min[j]和slot_comp_Ithres,max[j],以使:
slot_comp_Ithres,min[j]≤slot_comp_I[j,n]≤slot_comp__Ithres,max[j],j,n    (82)
使用这些阈值连通本文所描述的自适应权值计算机制对,可预防任何流程在一轮中不公平地消耗大量时隙,并且同时不对超过给定限制的该流程进行处罚。
如果ndef_slots_rj_≥ndef_slots_rthres,min
slot _ comp _ II [ j , n ] = ndef _ slots _ r j ndef _ slots _ r avg [ n ] - - - ( 83 )
如果ndef_slots_rj<ndef_slots_rthres,min
则slot_comp_II[j,n]=1。                                                           (84)
对于每条流程j,定义两个阈值,slot_comp_IIthres,min[j]和slot_comp_IIthres,max[j],以使:
slot_comp_IIthres,min[j]≤slot_comp_II[j,n]≤slot_comp_IIthres,max[j],j,n  (85)
在每一轮的开始,流程被分成如表5中所给出的四组。
                      表5
  组   ndef_bits_rflow≥ndef_bits_rthres,min ndef_slots_rflow≥ndef_slots_rthres,min
  组I   是
  组II   否
 组III   是   是
 组IV   否   否
在任意一轮n的开始,对于每个属于组II或IV的流程j,使用slot_comp[j,n]=1。在第n轮的开始,对于每个属于组I的流程j,应用下式:
    slot_comp[j,n]=slot_comp_I[j,n]。                               (86)
如果在第n轮的开始流程j属于组III,则应用下式:
    slot_comp[j,n]=slot_comp_I[j,n]*slot_comp_II[j,n]              (87)
该过程随即计算流程j的自适应权值,其中在第n轮非空队列的自适应权值如下:
aw [ j , n ] = slot _ comp [ j , n ] * w [ j ] * r [ j ] r min , n , &ForAll; j &Element; B [ n ] - - - ( 88 )
此处,rmin,n=min{r[k];k∶k∈B[n]}。对于每条流程j,定义阈值awthres,max[j]并用这个阈值确保:
    aw[j,n]≤awthres,max[j],j,n。                              (89)
接下来,这些自适应权值被应用于计算将分配给每条流程的时隙数和每轮的长度,以使:
    sloc_alloc[j,n]∝aw[j,n],j,j∶j∈B[n]                        (90)
&Sigma; j : j &Element; B [ n ] slot _ alloc [ j , n ] &le; round _ len [ n ] &le; round _ len _ thres , &ForAll; n . - - - ( 91 )
每轮的调度规律
一旦已分配好每条流程,则已计算了一轮中的若干时隙和该轮的长度。下一步是要选择在任何给定时隙中要服务的流程。在第n轮的任意给定时隙m中,如果在先前的时隙之一所选择的分组仍在受到服务,则无需选择要服务的新流程。另一方面,如果在第n轮的此时隙m中,没有任何分组正在受到服务,则以如下方式选择要服务的流程。对于调度器需要选择要服务的新流程的每个时隙m,及对于每个流程j,计算以下流程j的第n轮的时隙m的选择度量,
YY[j,n,m]=c[j,m,DRC[j,m]]*wait_comp[j,n,m]*DRC[j,m],n,    (92)以使j∈B[n]和slots_served[j,n]<θ(j)*slots_alloc[j,n],此处,θ(j)是为每条流程j预先指定的,wait_comp是给予流程以改进其延迟边界的等待补偿。令wait[j,n,m]为在第n轮的时隙m的开始流程j的排头分组的等待时间。
wait _ comp [ j , n , m ] = wait [ j , n , m ] wait _ avg [ n , m ] , &ForAll; j , j : j &Element; B j - - - ( 93 )
且在第n轮的时隙m的开始,流程j至少有一个分组未决。接下来,为流程k计算:
wait _ avg [ n , m ] = &Sigma; k wait [ k , n , m ] wait _ num [ n , m ] , - - - ( 94 )
以使k∈B[n],且这些流程的个数为wait_num[n,m]。对于每条流程j,对wait_compthres,min[j]和wait_compthres,max[j]这两个阈值进行赋值,并用于确保
wait_compthres,min[j]≤wait_comp[j,n,m]≤wait_compthres,max[j],m,n,j。(95)
具有选择度量YY的最大值的流程被选择由此AFS调度器在任何给定时隙中进行服务。
根据一个实施例的AN元件在图20中示出。AN元件500接收应用程序流程数据并处理该数据以供向用户传输。AN元件500对多个应用程序流程进行调度,其中每条流程都具有QoS要求。注意,如上文所述,应用程序流程可包括尽力服务型流程。AN元件500包括流程分类单元502,适用于识别与流程相关联通信量概况和QoS概况、并将流程映射到类(或QSG)流程。流程分类器单元502耦合到调度器504、允许进入控制单元510和QoS监视器506。调度器504可实现各种调度算法中的任何一种,包括,但不限于,比例公平(PF)算法和自适应加权PF算法。允许进入控制单元510将一种允许进入控制方案应用到AN 500所接收到的应用程序流程。允许进入控制单元510基于QoS和网络统计量,对所请求的每个新流程进行估值,并确定是否有足够资源可用以支持该新流程。自适应单元耦合到允许进入控制单元,在那里ASF得到更新。自适应单元512适用于对当前有效的应用程序流程进行先占决策。先占考虑到某一给定流程有关数据率、所用时隙、和其它QoS和网络统计量流程的性能。QoS监视器适用于监视所接收的应用程序流程的QoS要求。注意,AN元件500通常接收多条流程,并在它们之间选择以供向用户传输。调度器504从允许进入控制单元510接收关于新流程是否被允许进入的信息。调度器504从QoS监视器506接收QoS统计量和其它信息,其中调度器504应用该QoS信息来选择传输的流程。
本文中所给出的是在无线通信系统中用于应用程序流程的允许进入控制、先占和调度的方法和设备。允许进入控制考虑新流程所请求的数据率,并将此与可用资源相比较。一旦被允许进入,流程即被提供给调度器,调度器适用于执行每条流程和每个用户的分析,来选择在每个时隙或指定的时间段中进行传输的用户。
本领域技术人员将能理解,信息和信号可用各种不同的方法和技术来表示。例如,贯穿以上描述可引用的数据、指令、命令、信息、信号、比特、符号、和芯片可由电压、电流、电磁波、磁场或磁粒子、光场或光粒子、或其任意组合来表示。
此外,本领域技术人员还将理解,结合本文中所解释的各个实施例所描述的各种示例性逻辑框、模块、电路、和算法步骤可被实现为电子硬件、计算机软件、或两者的组合。为了清楚地说明硬件和软件的这一可交换性,以上就其功能一般描述了各种示例性组件、框、模块、电路、和步骤。此类功能实现为硬件还是软件是取决于特定的应用程序和制约整个系统的设计限制。本领域技术人员可为每个特定的应用程序以各种方式实现所描述的功能,但此类实现决定不应被解释成致使偏离本发明的范围。
结合本文中所揭示的各个实施例所描述的各种示例性逻辑框、模块、和电路可用通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、场可编程门阵列(FPGA)或其它可编程逻辑设备、分立门或晶体管逻辑、分立硬件组件、或其设计成执行本文中所描述的各种功能的任何组合来实现或执行。通用处理器可以是微处理器,但是,替换地,处理器可以是任何常规处理器、控制器、微控制器、或状态机。处理器可实现为若干计算设备的组合,例如DSP和微处理器、多个微处理器、结合DSP核心的一个或多个微处理器的组合,或任何其它此类配置。
结合本文中所揭示的各个实施例所描述的方法或算法的步骤可直接在硬件中、在处理器执行的软件模块中、或这两者的组合中具体化。软件模块可驻留在RAM存储器、闪存、ROM存储器、EPROM存储器、EEPROM存储器、寄存器、硬盘、可移动磁盘、CD-ROM、或现有技术中已知的任何其它形式的存储介质中。示例性存储介质被耦合到处理器,以使处理器可从该存储介质读取信息,并将信息写到该存储介质中。或者,存储介质可集成到处理器中。处理器和存储介质可驻留在ASIC中。ASIC可驻留在用户终端中。或者,处理器和存储介质可作为分立组件驻留在用户终端中。
提供所揭示的实施例的以上描述,以使本领域中任何技术人员能够制造或使用本发明。对于本领域技术人员来说,对这些实施例的各种修改将是显而易见的,并且本文中所定义的普遍原理可适用于其它实施例,而不会偏离本发明的精神和范围。因此,并不试图将本发明限于本文中所示的实施例,而是要使其符合与本文中所揭示的原理和新颖特性相一致的最宽泛的范围。

Claims (23)

1.一种在支持因特网协议(IP)的应用程序的通信系统中进行允许进入控制的方法,所述通信系统包括一接入网络(AN)和多个接入终端(AT),所述AT中的每一个都向所述AN发送一请求数据率,所述通信系统支持对所述AT具有QoS要求的应用程序流程,所述方法包括:
确定所述通信系统中的可用资源;
接收对具有第一通信量概况和第一QoS概况的第一应用程序流程的请求;
确定所述可用资源是否支持对所述第一应用程序流程的请求;
如果所述第一应用程序流程有大于平均请求数据率的对应数据率,则拒绝所述第一应用程序流程;以及
如果所述对应数据率不大于所述平均请求数据率,且如果所述可用资源支持对所述第一应用程序流程的请求,则允许所述第一应用程序流程进入。
2.如权利要求1所述的方法,其特征在于,确定所述可用资源是否支持所述第一应用程序流程包括:
确定所述通信系统中的保留资源;
将所述保留资源与所述通信系统的容量相比较;以及
将所述可用资源确定为所述容量和所述保留资源之差。
3.如权利要求2所述的方法,其特征在于,还包括:
确定所述第一应用程序流程的自适应预订因素。
4.如权利要求3所述的方法,其特征在于,还包括:
基于所述第一应用程序流程的服务质量(QoS)统计量对所述自适应预订因素进行更新。
5.如权利要求4所述的方法,其特征在于,还包括:
确定所述第一应用程序流程的QoS统计量;
将所述第一应用程序流程的QoS统计量与该扇区中的其它当前流程相比较;以及
响应于所述第一应用程序流程的QoS统计量与所述扇区中其它当前流程的比较,更新所述可用资源和保留资源。
6.如权利要求5所述的方法,其特征在于,还包括:
确定所述第一应用程序流程的用户是否出现在所述无线通信系统的一个扇区中;以及
确定所述第一应用程序流程的采样持续时间,其中,确定所述第一应用程序流程的QoS统计量包括:
确定在所述采样持续时间期间所述第一应用程序流程的QoS统计量。
7.如权利要求6所述的方法,其特征在于,第一采样持续时间与速率违反相关联,第二采样持续时间与延迟违反相关联。
8.如权利要求6所述的方法,其特征在于,将所述第一应用程序流程的QoS统计量与所述扇区中的其它当前流程相比较包括:
计算在所述采样周期期间由具有QoS要求的流程所使用的第一时隙分数;
计算在所述采样周期期间由所述第一应用程序流程所使用的第二时隙分数;
计算对应于第一QoS统计量的QoS流程的第三分数;
将所述第三分数与一对应阈值相比较;以及
响应于将所述第三分数与对应阈值相比较,对自适应预订进行估值。
9.一种在支持因特网协议(IP)应用程序的通信系统中分配资源的方法,所述通信系统包括一接入网络(AN)和多个接入终端(AT),所述AT中的每一个都向所述AN发送一请求数据率,所述通信系统支持对所述AT具有QoS要求的应用程序流程,所述方法包括:
对于自适应预订中的增加,先占具有第一类QoS违反的第一流程;
确定所述第一类QoS违反已经到达先占最大值;以及
先占具有第二类QoS违反的第二流程。
10.如权利要求9所述的方法,其特征在于,先占第二流程还包括:
基于所述第二流程的传输所使用的时隙数来选择所述第二流程。
11.一种在支持分组数据应用程序流程的无线通信系统中对资源进行调度的方法,所述方法包括:
为与第一类应用程序流程相关联的服务质量参数选择至少一个补偿因子;
基于服务质量参数计算所述至少一个补偿因子;
根据所述至少一个补偿因子为所述第一类应用程序流程计算权值;
使用所述权值计算每条流程的调度因子;以及
基于所述调度因子对所述应用程序流程进行调度。
12.如权利要求11所述的方法,其特征在于,第一用户有多个有效的应用程序流程,所述方法还包括:
为所述多个应用程序流程计算总补偿因子。
13.如权利要求12所述的方法,其特征在于,所述多个有效的应用程序流程包括所述第一类和第二类的应用程序流程。
14.如权利要求13所述的方法,其特征在于,还包括:
为第二类应用程序流程计算权值。
15.如权利要求14所述的方法,其特征在于,还包括:
选择所述多个有效的应用程序流程中的一个进行传输。
16.一种用于在支持因特网协议(IP)应用程序的通信系统中进行允许进入控制的设备,所述通信系统包括一接入网络(AN)和多个接入终端(AT),所述AT中的每一个都向所述AN发送一请求数据率,所述通信系统支持对所述AT具有QoS要求的应用程序流程,所述设备包括:
用于确定所述通信系统中的可用资源的装置;
用于接收对具有第一通信量概况和第一QoS概况的第一应用程序流程的请求的装置;
用于确定所述可用资源是否支持对所述第一应用程序流程的请求的装置;
用于在所述第一应用程序流程含有比所述平均请求数据率大的对应数据率的情况下拒绝所述第一应用程序流程的装置;
用于在所述对应数据率不大于所述平均请求数据率、并且所述可用资源支持对所述第一应用程序流程的请求的情况下允许所述第一应用程序流程进入的装置;
17.一种在支持因特网协议(IP)应用程序的通信系统中分配资源的设备,所述通信系统包括一接入网络(AN)和多个接入终端(AT),所述AT中的每一个都向所述AN发送一请求数据率,所述通信系统支持对所述AT具有QoS要求的应用程序流程,所述设备包括:
用于为自适应预订中的增加先占具有第一类QoS违反的第一流程的装置;
用于确定所述第一类QoS违反已经到达先占最大值的装置;以及
用于先占具有第二类QoS违反的第二流程的装置。
18.一种在支持分组数据应用程序流程的无线通信系统中对资源进行调度的设备,所述设备包括:
用于为与第一类应用程序流程相关联的服务质量参数选择至少一个补偿因子的装置;
用于基于服务质量参数计算所述至少一个补偿因子的装置;
用于根据所述至少一个补偿因子为所述第一类应用程序流程计算权值的装置;
用于使用所述权值计算每条流程的调度因子的装置;以及
用于基于所述调度因子对所述应用程序流程进行调度的装置。
19.一种用于在支持因特网协议(IP)应用程序的通信系统中分配资源的设备,所述通信系统包括一接入网络(AN)和多个接入终端(AT),所述AT中的每一个都向所述AN发送一请求数据率,所述通信系统支持对所述AT具有QoS要求的应用程序流程,所述设备包括:
适用于接收应用程序流程并确定所述应用程序流程的服务质量(QoS)要求的流程分类单元;
耦合到所述流程分类单元、适用于对分组数据传输进行调度的调度器;
耦合到所述流程分类单元和调度器的允许进入控制单元,所述允许进入控制单元适用于在可用资源支持一请求数据率时允许应用程序流程进入。
耦合到所述流程分类单元、调度器和允许进入控制单元的QoS监视器,所述QoS监视器适用于确定所述应用程序流程的QoS违反和维护QoS统计量;以及
耦合到所述允许进入控制单元的自适应单元,所述自适应单元适用于更新可用资源的度量。
20.如权利要求19所述的设备,其特征在于,所述调度器适用于响应于请求数据率对应用程序流程进行调度。
21.如权利要求19所述的设备,其特征在于,所述调度器适用于响应于QoS统计量对应用程序流程进行调度。
22.如权利要求19所述的设备,其特征在于,所述调度器适用于响应于QoS要求对应用程序流程进行调度。
23.如权利要求19所述的设备,其特征在于,所述调度器适用于基于预订信息对应用程序流程进行调度。
CN200480010998A 2003-03-17 2004-03-17 支持ip应用程序的通信系统中控制允许进入的方法和设备 Expired - Fee Related CN100579060C (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US45590603P 2003-03-17 2003-03-17
US60/455,906 2003-03-17
US10/425,854 2003-04-28

Related Child Applications (3)

Application Number Title Priority Date Filing Date
CN2008101691478A Division CN101414968B (zh) 2003-03-17 2004-03-17 无线通信系统中对资源进行调度的方法和设备
CN2008101691463A Division CN101414967B (zh) 2003-03-17 2004-03-17 支持服务质量的通信系统中的允许进入控制和资源分配
CN200810169142.5A Division CN101582843B (zh) 2003-03-17 2004-03-17 支持服务质量的通信系统中的允许进入控制和资源分配

Publications (2)

Publication Number Publication Date
CN1778080A true CN1778080A (zh) 2006-05-24
CN100579060C CN100579060C (zh) 2010-01-06

Family

ID=36766716

Family Applications (4)

Application Number Title Priority Date Filing Date
CN2008101691463A Expired - Fee Related CN101414967B (zh) 2003-03-17 2004-03-17 支持服务质量的通信系统中的允许进入控制和资源分配
CN200480010998A Expired - Fee Related CN100579060C (zh) 2003-03-17 2004-03-17 支持ip应用程序的通信系统中控制允许进入的方法和设备
CN2008101691478A Expired - Fee Related CN101414968B (zh) 2003-03-17 2004-03-17 无线通信系统中对资源进行调度的方法和设备
CN200810169142.5A Expired - Fee Related CN101582843B (zh) 2003-03-17 2004-03-17 支持服务质量的通信系统中的允许进入控制和资源分配

Family Applications Before (1)

Application Number Title Priority Date Filing Date
CN2008101691463A Expired - Fee Related CN101414967B (zh) 2003-03-17 2004-03-17 支持服务质量的通信系统中的允许进入控制和资源分配

Family Applications After (2)

Application Number Title Priority Date Filing Date
CN2008101691478A Expired - Fee Related CN101414968B (zh) 2003-03-17 2004-03-17 无线通信系统中对资源进行调度的方法和设备
CN200810169142.5A Expired - Fee Related CN101582843B (zh) 2003-03-17 2004-03-17 支持服务质量的通信系统中的允许进入控制和资源分配

Country Status (5)

Country Link
JP (1) JP5204139B2 (zh)
CN (4) CN101414967B (zh)
HK (1) HK1088463A1 (zh)
IL (1) IL170840A (zh)
UA (1) UA90450C2 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104272706A (zh) * 2012-04-17 2015-01-07 Wi-Lan研究所公司 用于通信网络中应用感知准入控制的系统和方法
CN104753812A (zh) * 2013-12-30 2015-07-01 Wi-Lan研究所公司 通信系统中的应用质量管理

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0886403B1 (en) * 1997-06-20 2005-04-27 Alcatel Method and arrangement for prioritised data transmission of packets
JP3776573B2 (ja) * 1997-09-24 2006-05-17 富士通株式会社 ストリーム帯域制御方法
US6236656B1 (en) * 1998-03-19 2001-05-22 Telefonaktiebolaget Lm Ericsson (Publ) Link-efficiency based scheduling in radio data communications systems
JP3142268B2 (ja) * 1999-02-23 2001-03-07 株式会社エイ・ティ・アール環境適応通信研究所 通信サービス品質制御方法及び装置
JP3676121B2 (ja) * 1999-06-01 2005-07-27 三菱電機株式会社 パラメータ決定装置、パラメータ決定方法およびその方法をコンピュータに実行させるプログラムを記録したコンピュータ読み取り可能な記録媒体
GB2367715B (en) * 2000-02-08 2002-05-29 Marconi Comm Ltd Communications system
US6493331B1 (en) * 2000-03-30 2002-12-10 Qualcomm Incorporated Method and apparatus for controlling transmissions of a communications systems
JP3776308B2 (ja) * 2000-12-06 2006-05-17 日本電信電話株式会社 通信制御方法、通信制御装置および制御プログラムを記録した記録媒体
DE60144343D1 (de) * 2001-01-16 2011-05-12 Netsocket Inc Netzwerkbetriebsmittelmanager in einem mobiltelekommunikationssystem

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104272706A (zh) * 2012-04-17 2015-01-07 Wi-Lan研究所公司 用于通信网络中应用感知准入控制的系统和方法
CN104753812A (zh) * 2013-12-30 2015-07-01 Wi-Lan研究所公司 通信系统中的应用质量管理
CN104753812B (zh) * 2013-12-30 2019-12-10 台湾积体电路制造股份有限公司 通信系统中的应用质量管理

Also Published As

Publication number Publication date
JP5204139B2 (ja) 2013-06-05
JP2010166582A (ja) 2010-07-29
CN100579060C (zh) 2010-01-06
UA90450C2 (ru) 2010-05-11
CN101414967A (zh) 2009-04-22
CN101414968A (zh) 2009-04-22
CN101582843B (zh) 2014-11-26
CN101414968B (zh) 2011-08-10
IL170840A (en) 2010-11-30
CN101582843A (zh) 2009-11-18
CN101414967B (zh) 2012-07-25
HK1088463A1 (en) 2006-11-03

Similar Documents

Publication Publication Date Title
CN101060706A (zh) 通信模式控制方法,移动通信系统,基站控制装置,基站和移动通信终端
CN1669255A (zh) 使用专用频道的封包切换连接
CN1278527C (zh) 无线局域网设备
CN1781268A (zh) 具有增强时隙分配的无线通信系统
CN1943259A (zh) 移动台、基站、通信系统、数据量信息发送方法、发送控制信息通知方法及无线通信方法
CN1788432A (zh) 包括数据优先化和分组接收差错确定特征的无线通信网络及相关方法
CN1144441C (zh) 移动通信系统中按照无线电链路协议发送可变长度数据的装置和方法
CN1350378A (zh) 管理主站驱动时分双工无线网络内功率消耗的系统和方法
CN1788509A (zh) 建立通信链路,估计定向链路的总体质量,并向通信系统中的olsr报告的方法和设备
CN1281093C (zh) 准入控制方法以及准入控制装置
CN1795646A (zh) 数据通信系统、通信装置及其通信程序
CN1291616C (zh) 在网络上通信的方法与设备
CN1881825A (zh) 通信系统
CN1774890A (zh) 用于网络中速率控制服务的系统和方法
CN1849782A (zh) 传送层中继方法、传送层中继设备、及其程序
CN1552168A (zh) 服务器、移动通信系统、位置信息管理方法、无线基站、移动台、移动通信系统的呼叫方法以及移动通信方法
CN1855862A (zh) 无线电通信系统
CN1521991A (zh) 移动通信系统、基站、无线网络控制器及资源分配控制法
CN101044721A (zh) 移动通信网络中管理无线资源的方法和系统、相关网络及其计算机程序产品
CN1679285A (zh) 执行媒体专用以确保穿越无线网络传送实时数据的服务质量的方法
CN1767535A (zh) 数据安全层协议单元以及相关装置和方法
CN1886948A (zh) 在具有不同cdma信道的通信系统中的业务管理
CN1685672A (zh) 通信控制方法及系统,数据包转发及监测方法和系统
CN1611035A (zh) 数据流处理器中的数据流管理
CN1870832A (zh) 用于在数据通信系统内选择服务扇区的方法和装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 1088463

Country of ref document: HK

C14 Grant of patent or utility model
GR01 Patent grant
REG Reference to a national code

Ref country code: HK

Ref legal event code: GR

Ref document number: 1088463

Country of ref document: HK

CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20100106

Termination date: 20190317