法律状态公告日
法律状态信息
法律状态
2018-10-16
未缴年费专利权终止 IPC(主分类):H04L12/56 授权公告日:20090401 终止日期:20171028 申请日:20051028
专利权的终止
2009-04-01
授权
授权
2007-06-27
实质审查的生效
实质审查的生效
2007-05-02
公开
公开
技术领域
本发明涉及通讯领域,尤其涉及一种对集成服务模型进行接纳控制的方法。
背景技术
集成服务模型是IETF(因特网工程师任务组)提出的一种网络交换节点的数据处理模型,其基本思想是在传送数据之前,根据业务的QoS(服务质量)需求进行网络资源预留,从而为该数据流提供端到端的QoS保证。
集成服务模型由分类器、调度器和接纳控制组成。分类器将输入的数据分组按其所属的连接进行分类。调度器执行分组调度过程,对同一类的所有数据分组进行相同的转发处理。接纳控制在连接的建立阶段执行,用于判断节点是否具有足够的资源接纳新连接:如果是,则接纳该连接,并为其分配足够的资源;如果否,则拒绝该连接。
接纳控制是集成服务模型的关键技术之一,现有技术中一种对集成服务模型进行接纳控制的方法为:基于测量的接纳控制方法。即实时测量节点的流量负载,根据测量结果判断节点是否能够接纳新连接。该方法包括两个主要部分:用于评估网络负载的测量部分和以及用于判断节点是否能够接纳新连接的决策部分。不同的接纳控制方法对这两部分可以采用不同的算法。几种常用的基于测量的接纳控制方法包括:
1、测量和法:通过时间窗口法来测量网络负载,以网络负载与新连接的漏桶速率之和作为决策变量。如果决策变量小于网络带宽乘以目标利用率,则判定节点能够接纳新连接,否则拒绝该新连接。
2、Hoeffding(霍夫丁)界法:以Hoeffding界测量网络的等效带宽,以等效带宽与新连接的峰值速率之和作为决策变量。如果决策变量小于网络带宽乘以目标利用率,则判定节点能够接纳新连接,否则拒绝该新连接。
3、峰值正切法:以时间点测量法测量网络负载,以作为决策变量,其中n为接纳的连接数,p为峰值速率,s为Chernoff(切尔诺夫)界的空间参数,为测量的网络负载。如果决策变量小于网络总带宽,则判定节点能够接纳新连接,否则拒绝该新连接。
上述基于测量的接纳控制方法的缺点为:节点的流量负载具有一定的随机性,过去的测量数据不一定符合将来的流量情况,因此,该方法所依据的测量数据并不准确。该方法难以保证在最坏情况(所有业务一起以最高速率突发)下的服务质量。
现有技术中另一种对集成服务模型进行接纳控制的方法为:基于参数的接纳控制方法。即以连接的建立或重协商阶段所约定的流量参数,而不是实时监测到的流量负载为依据,判断节点是否能够接纳新连接。这种方法一般按照最大流量情况为新连接分配带宽,因此能够保证连接在任何时候(不违反流量参数的约定)的服务质量。
该方法包括多种带宽计算方法,一种简单的计算方法为:为新连接分配的带宽r=max{σ/d,ρ},其中σ,ρ为新连接的漏桶参数,d为新连接的延时要求。如果节点的可用带宽小于r,则拒绝该连接。这种方法的计算量很低,但是在处理低速率低延时的业务(如语音业务)时网络带宽利用率较低。
该方法中一种考虑了带宽的统计复用效果的带宽利用率较高的算法的主要过程如下:
步骤1:对约定的流量参数变量进行初始化。
步骤2:为每个未确定带宽的连接分配带宽,并判断哪些连接的带宽可能在以后的迭代中进一步缩小(即带宽已确定),哪些连接的带宽不能进一步缩小(即带宽未确定)。
步骤3:寻找最先清除积压的连接,该连接的富裕带宽可以在以后的迭代中被其他连接使用。
步骤4:如果还存在带宽未确定的连接,并且已确定的带宽之和小于调度器带宽,转步骤2继续迭代。
步骤5:如果所有连接的带宽之和大于调度器带宽,则拒绝新连接。
步骤6:如果所有连接的带宽之和与调度器带宽之差小于一定值,则接纳新连接;否则减小调度器带宽后,转步骤1重新迭代。
上述基于参数的接纳控制方法的缺点为:该方法虽然具有较高的带宽效率,但是计算时间正比于与连接数的平方,不具有可扩展性。该方法是基于连接的,要为每个连接分配带宽,因此难以在计算时间和带宽效率上同时获得较好的表现。
发明内容
本发明的目的是提供一种对集成服务模型进行接纳控制的方法,从而能够在保证连接的QoS和网络的利用率的同时,有效地对集成服务模型进行接纳控制。
本发明的目的是通过以下技术方案实现的:
一种对集成服务模型进行接纳控制的方法,包括:
A、在集成服务模型中建立延时要求不同的延时类;
B、当有新连接请求建立时,为所述延时类分配确定的带宽,根据该确定的带宽和调度器带宽的关系,对新连接进行接纳控制。
所述的步骤A具体包括:
所述延时类是一组延时要求属于同一范围的连接的集合,一个延时类代表一个服务类别,属于同一个延时类的所有连接共用一个缓冲队列。
所述的步骤A具体包括:
所述建立的所有延时类组成一个序列,按照延时要求进行升序排列。
所述的步骤A具体包括:
当有新连接请求建立时,确定该新连接所属的延时类别,并根据该新连接的延时要求,对确定的延时类别的流量参数进行调整。
所述的步骤A具体包括:
当满足条件Dk≤d<Dk+1时,则新连接属于延时类Ck,其中d为新连接的延时要求,Dk为延时类Ck的延时要求,Dk+1为延时类Ck+1的延时要求,
在确定了新连接的延时类别为Ck后,更新Ck的流量参数(σk,ρk)为:σk=σk+σ,ρk=ρk+ρ,其中(σ,ρ)为新连接的流量参数。
所述的步骤B具体包括:
B1、当有新连接请求建立时,按照所有业务一起以最高速率突发的情况,通过迭代过程为所有延时类分配带宽,该分配的带宽包括确定的带宽和未确定的带宽;
B2、在每次迭代时,计算首先清除积压的延时类,将该延时类释放出来的多余带宽重新分配给带宽未确定的延时类,根据确定的延时类的带宽和调度器带宽的关系,对新连接进行接纳控制。
所述的步骤B1具体包括:
B11、对迭代变量进行初始化,将迭代次数变量i置为0,用数组L(i),i=0,1,2,...表示第i个清除积压的延时类,L(0)=0,用数组T(i),i=0,1,2,...表示第i个清除积压的延时类的积压清除时间,T(0)=0,用数组S(i),i=0,1,2,...和R(i),i=1,2,3,...表示第0到第i个服务曲线的参数,S(0)=0,R(1)=1;
B12、将迭代次数变量i加1,按照所有业务一起以最高速率突发的情况为每个未确定带宽的延时类分配带宽r,如果T(i-1)≤d,则
否则,
如果S(i-1)r<σ+ρ(T(i-1)-d),则该延时类的带宽确定为:
则,该延时类的带宽确定为:
所述的步骤B2具体包括:
B21、在所有未清除积压的延时类中,将使表达式值最小的延时类确定为本次迭代中首先清除积压的延时类L(i),L(i)的积压清除时间为:
B22、释放所述L(i)的多余带宽,将释放出来的带宽分配给其它未清除积压的延时类,重新分配带宽后,未清除积压的延时类的带宽为:
B23、判断是否存在带宽未确定的延时类,并且已确定的延时类的带宽之和小于调度器带宽,如果是,重新执行步骤B12;否则,根据确定的延时类的带宽和调度器带宽的关系,对新连接进行接纳控制。
所述的步骤B23具体包括:
B231、判断是否所有已确定的延时类的带宽小于调度器带宽,如果是,执行步骤B232;否则,拒绝所述请求建立的新连接;
B232、判断是否所有已确定的延时类的带宽之和与调度器带宽之差小于一设定值,如果是,接纳所述请求建立的新连接;否则,将调度器带宽减小为所有已确定的延时类的带宽之和,重新执行步骤B11。
由上述本发明提供的技术方案可以看出,本发明通过以数量较少的延时类而不是数量很多的业务连接作为计算对象,从而可以有效地控制计算的时间复杂度,能够在保证连接的QoS和网络的利用率的同时,有效地对集成服务模型进行接纳控制。本发明能够在最坏情况(所有业务一起以最高速率突发)下,所分配的带宽能够保证各连接的QoS。本发明考虑了已清除积压的延时类的带宽释放效应,因此,具有更高的带宽利用率。
附图说明
图1为本方法所述方法的处理流程图;
图2为集成服务模型中调度器的使用原理示意图。
具体实施方式
本发明提供了一种对集成服务模型进行接纳控制的方法,本发明的核心为:以数量较少的延时类而不是数量很多的业务连接作为计算对象,根据确定的延时类的带宽和调度器带宽的关系,对新连接进行接纳控制。
下面结合附图来详细描述本发明,本方法所述方法的处理流程如图1所示,包括如下步骤:
步骤1-1、建立若干个延时要求不同的延时类。
本发明首先需要建立若干个延时要求不同的延时类。延时类是一组具有相似的时延要求的连接的集合。比如说,定义延时类A的时延范围为1~2秒,那么时延要求1.1秒和1.9秒的两个连接都属于延时类A。一个延时类即代表一个服务类别。
该步骤在系统正式运行前进行,每个延时类Ci的延时要求为Di(i=1,L,N),其原则为:序号较小的延时类的延时较小,即,如果i<j,则Di<Dj。Di(i=1,L,N)的具体数值可以根据实际业务的情况来灵活设定。
在本发明中,属于同一个延时类的所有连接共用一个缓冲队列。由于数据业务的突发性,一时来不及转发的数据存储在延时类的缓冲队列中,称作积压。过了一段时间,积压数据转发完毕,延时类的缓冲队列中没有数据,则延时类的积压清除了。从发生积压到积压清除之间的时间就是延时类的积压清除时间。
步骤1-2、根据请求的新连接的延时要求,更新延时类的流量参数。
当系统启动后,处于运行状态时,当有新连接请求建立时,首先确定该新连接的延时类别,确定的方法是:如果Dk≤d<Dk+1,则新连接属于延时类Ck,其中d为新连接的延时要求。
在确定了新连接的延时类别为Ck后,然后更新Ck的流量参数(σk,ρk),更新方法为:σk=σk+σ,ρk=ρk+ρ,其中(σ,ρ)为新连接的流量参数。
步骤1-3、对迭代变量进行初始化,i=0。
本发明接着需要通过迭代运算来为所有延时类分配带宽。在进行迭代运算之前,首先对迭代变量进行初始化。需要进行初始化的迭代变量包括:
i:表示迭代次数。初始化时,i=0。
B:表示未确定带宽、未清除积压的延时类。初始化时,B=所有延时类。
H:表示已确定带宽、未清除积压的延时类。初始化时,H=空集。
P:表示已确定带宽、已清除积压的延时类。初始化时,P=空集。
L(i),i=0,1,2,...:L(i)表示第i个清除积压的延时类。例如,假设第4个清除积压的延时类是延时类3,那么L(4)=3,L(0)=0。
T(i),i=0,1,2,...:T(i)表示第i个清除积压的延时类的积压清除时间。例如,假设第4个清除积压的延时类的积压清除时间为3秒,那么T(4)=3。T(0)=0。
S(i),i=0,1,2,...和R(i),i=1,2,3,...:表示服务曲线的参数。S(0)=0,R(1)=1。
步骤1-4、将迭代变量加1,进行迭代过程。
将迭代变量i加1,即i=i+1,然后,进行迭代过程。
因为每次迭代可以计算出一个延时类的积压清除时间,所以迭代次数反映了各延时类的积压清除顺序。
步骤1-5、为每个未确定带宽的延时类分配带宽。
按照最坏情况(所有业务一起以最高速率突发)为每个未确定带宽的延时类分配带宽r。其具体计算过程为:
如果T(i-1)≤d,则
否则,
如果S(i-1)r=σ+ρ(T(i-1)-d),该延时类的带宽已确定。否则,将该延时类的带宽确定为:
步骤1-6、计算在本次迭代中最早清除积压的延时类L(i),及该延时类的积压清除时间。
计算在本次迭代(即第i次迭代)中首先清除积压的延时类L(i)。其具体方法为:在所有未清除积压的延时类中,寻找使表达式最小的延时类,该延时类即为L(i)。
L(i)的积压清除时间为:
步骤1-7、释放L(i)的多余带宽。
在集成服务模型中,调度器的使用原理图如图2所示,调度器按照一定规则,从各延时类的缓冲队列中取出数据,转发到调度器的输出端口。调度器带宽就是调度器的最大输出速率。
L(i)被清除积压后,其需要的带宽将减少,多余带宽将被释放,释放出来的带宽可以再分配给其它为未清除积压的延时类。
L(i)的多余带宽被释放后,未清除积压的延时类的实际带宽的计算方法为:
假设调度器带宽100,4个延时类A、B、C、D分配的带宽分别为10、20、30、40,4个延时类都有积压。假设过了一段时间,延时类B首先清除积压,积压清除后只需要带宽5即可,那么未清除积压的延时类(A、C、D)的实际带宽就分别是10*(100-5)/(100-20)、30*(100-5)/(100-20)、40*(100-5)/(100-20)。假设又过了一段时间,延时类C清除积压,积压清除后只需要带宽10即可,那么未清除积压的延时类(A、D)的实际带宽就分别是10*(100-5-10)/(100-20-30)、40*(100-5-10)/(100-20-30)。
步骤1-8、存在未确定带宽的延时类,并且已确定的带宽之和大于调度器带宽。
判断是否存在带宽未确定的延时类,并且已确定的带宽之和小于调度器带宽。如果是,执行步骤1-4,继续进行迭代过程;否则,执行步骤1-9。
步骤1-9、所有延时类的带宽之和小于调度器带宽。
判断是否所有已确定的延时类的带宽之和小于调度器带宽。如果是,执行步骤1-12;否则执行步骤1-10。
步骤1-10、拒绝该连接。
拒绝所述请求建立的新连接。
步骤1-11、调度器带宽减小为所有延时类的带宽之和。
将调度器带宽减小为所有已确定的延时类的带宽之和,执行步骤1-3,重新开始迭代。
步骤1-12、所有延时类的带宽之和与调度器带宽之差小于ε。
判断是否所有已确定的延时类的带宽之和与调度器带宽之差小于一个预先设定的值ε。如果是,执行步骤1-13;否则,执行步骤1-11。
步骤1-13、接纳该连接。
接纳所述请求建立的新连接。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。
机译: 为了对集成的数据和包括头保护的编码数据进行解码的方法和磁带驱动器(对集成的数据和包括头保护的编码数据进行解码)
机译: 用于对集成电路进行编程的方法,用于对多个单元进行编程的方法,集成电路,单元布置
机译: 一种对集成电路进行编程的方法,对多个单元进行编程的方法,集成电路以及单元布置