自适应的数字家庭网络可用带宽实时检测方法转让专利

申请号 : CN200810219502.8

文献号 : CN101414938B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 余荣谢胜利高如超吴宗泽

申请人 : 华南理工大学

摘要 :

本发明提供了一种自适应的数字家庭网络带宽实时检测方法。该方法首先网关向需要测量可用带宽的网络终端发送一串具有大范围包速率的包串进行第一次完整测量,网络终端将测量得到的信息反馈给网关,网关进行分析后得到测量的可用带宽数值,以后每隔一段时间再进行一次测量,但是不需要像第一次测量那样发送那么大范围速率的包串,发送的包串速率范围只需要处在上次测量得到数值的±m范围内即可,这样既实现了对数字家庭网络可用带宽实时检测,又可以达到节省测量和减少对网络负担的作用。

权利要求 :

1.自适应的数字家庭网络可用带宽实时检测方法,其特征在于包括如下步骤:

(1)网关根据pathchirp方法向网络中需要进行可用带宽测量的网络终端发送一串包速率为1~100Mbps的包串进行第一次测量,测量得到网关与这个网络终端之间的可用带宽数值;

(2)网关隔Δt时间后再次向需要测量可用带宽的网络终端发送包串进行另一次测量,该次测量发送的包速率为上次测得的可用带宽值的±m范围内的速率,m取可用带宽值的10%-20%,Δt由用户或者是网络的类型决定;

(3)每次测量后被测量的网络终端将收到的包串的排队时延和测量是否成功的信息反馈给网关,然后网关根据收到的反馈信息计算本次测量可用带宽的值或调整探测流起始包和结束包的速率;

(4)如果网关收到网络终端反馈回来的测量成功的信息,则重复步骤(2)(3),进行另一次测量;

(5)如果网关收到网络终端反馈回来的测量不成功的信息,则先将上次测量的包串速率范围增大5-10%,以该增大后的速率范围再进行另一次测量,同时计数器将测量不成功的次数加1,如果连续k次测量不成功,k取3-5,则网关会重新进行一次完整的测量,即重新从步骤(1)开始测量。

2.根据权利要求1所述的自适应的数字家庭网络可用带宽实时检测方法,其特征在于:所述步骤(2)网关在前一次测量的基础上调整发送包的数目,使得发送的包串中包的速率范围处于上次测量所得带宽值的±m范围内,m取10Mbps。

3.根据权利要求1所述的自适应的数字家庭网络可用带宽实时检测方法,其特征在于:步骤(3)中如果在一次测量中网络终端检测到所接收的数据包的排队时延中没有转折点,即数据包的排队时延是没有变化的或都是递增的,则网络终端将数据包的排队时延中没有转折点的信息反馈给网关,网关再发送一串包速率范围比前一次测量所用的包速率范围大的包串重新进行一次测量。

4.根据权利要求3所述的自适应的数字家庭网络可用带宽实时检测方法,其特征在于:步骤(3)中网关发送一串包速率范围比前一次测量所用的包速率范围大的包串重新进行一次测量,即将上次测量的包串速率范围增大5%。

5.根据权利要求1~4任一项所述的自适应的数字家庭网络可用带宽实时检测方法,其特征在于:所述步骤(1)中网关发送包与包之间的间隔呈指数递增趋势的包串,然后根(m)据网络终端反馈回来的排队时延信号的形状对每个包的可用带宽做一个估测值Ek ,k表(m)示第k个包,m表示第m次测量,再对Ek 取加权平均值,用来作为这次测量的可用带宽的(m)估测值D :

网关需要将网络终端反馈的排队时延信号分割

成属于偏移的区域和不属于偏移的区域,设q(k)为第k个包的排队时延,每个出现q(k)<q(k+1)的包i都有可能是偏移的开始点,定义偏移的结束点j为当的第一个包,F是衰减系数,取值为1.5-6.0;如果j-i>L,L取3-6,则把i到j之间的包作为偏移,此时包i就是偏移的起点;否则,包i就不是偏移的起点;接下来再分三中(m) (m)情况估计Ek ,如果k属于一个会终止的偏移且q(k)<q(k+1)时,则设Ek =Rk,Rk为第(m)k个包的速率;如果k属于不会终止的偏移,则设Ek =R1, l是偏移的起始点;对(m)于不属于以上两种情形的包k,则设Ek =R1。

说明书 :

自适应的数字家庭网络可用带宽实时检测方法

技术领域

[0001] 本发明涉及一种可用带宽实时监测机制,具体涉及自适应的数字家庭网络可用带宽实时检测方法。

背景技术

[0002] 数字家庭是指各种家庭和个人数字化产品,按照现代家庭生活需求组成的集视听娱乐、信息服务和家居控制等功能于一体,并通过有线电视、宽带通信、无线通信等与外界实现信息交互和社会化家庭服务的综合智能化系统。数字家庭是IT、信息家电、通信高度融合的具体产物。数字家庭概念自90年代后期在北美兴起,至2001年达到一个相对高潮。早期的数字家庭只是少数技术精英才能拥有、使用奢华的摆设——系统设计强调智能网络,通过无线、电话远程遥控、互联网络控制等自动方式,实现对于照明、家电、安防报警、温度及光照检测等系统的控制。
[0003] 数字家庭的实质是基于IP技术的家庭网络及其上承载的业务。家庭网络中的业务形形色色、多种多样,比如:家庭通信、家庭娱乐、家庭安全、远程医疗、家庭电子政务、家庭图书馆、家庭电子商务等等。在数字家庭中对于视频图像信息成为了最主要的信息流,但是现在的数字家庭网关对媒体信息的处理并不理想。目前的家庭网络设备无法有效的处理高速媒体信息流。要解决这个问题,可以从以下几个方面入手。
[0004] 首先,需要提供高效的编解码系统。例如现在有几百Mbps的视频流要传输,而在共享视频端能够提供的网络带宽可能只有几百kbps到几Mbps,存在很大的带宽瓶颈,需要高效的编解码算法来实现。在某些情况下,也可能出来多个视频流,比如家庭中的摄像头和可视电话都需要向家庭网关上传高速视频流,这样,高效的编解码算法就显得尤为重要了。
[0005] 其次,需要更加灵活的编解码系统。数字家庭网络需要编解码系统能够自适应网络带宽、用户终端和业务需求,而现有的家庭网络设备无法实现这一需求。①每一种用户终端的分辨率不一样,需要编解码算法能够适应不同的分辨率的用户终端。②由于不同的网络环境给用户终端提供的网络带宽不一致,而且网络为当前业务提供的带宽往往也是波动的,这就需要编解码系统能够充分利用有限的网络带宽给用户提供最有效最感兴趣质量最好的视频信息。③针对不同的业务和用户需求对媒体信息的处理和需求是不一样的,需要视频编解码系统能够灵活满足业务和用户需求。
[0006] 最后,需要支持高速媒体信息互联互通的智能网络传输模型。3C融合已经成为现在数字家庭网络的发展趋势,如何实现这三种网络和相关设备的互联互通在数字家庭网络的发展中显得尤为重要。同时为了支持灵活而高效的高速媒体信息流的编解码系统,需要数字家庭网络能够进行实时的网络测试和监控并进行准确的设备描述。但是现有的数字家庭网络模型无法满足这些需求。
[0007] 因此在数字家庭网络中,为了利用有限的带宽资源,更合理、更有效地实现高速媒体信息在异构网络、不同终端之间的互联互通,需要一套有效的、灵活的、能自适应终端需求和网络环境的音视频编解码技术。再者,为了配合该编解码技术在数字家庭网络中的实施,还需要开发相应的网络带宽监控技术,并且需要完善相关的终端设备描述文件。对网络带宽的测量可以让我们知道目前网络剩余网络带宽的情况,让视频图像可以根据网络的带宽情况进行自适应编码并传输,使我们可以利用有限的带宽资源,更合理、更有效地实现高速媒体信息在异构网络、不同终端之间的互联互通。本发明正好可以实现对数字家庭网络中可用带宽的实时检测,使视频图像可以根据网络的带宽情况进行自适应编码并传输,更好得利用了有限的网络带宽。
[0008] 网络带宽测量技术有以下分类:
[0009] (1)按是否向网络内部注入探测包,可分为被动测量(Passive Measurement)和主动测量(Active Measurement)技术;
[0010] (2)按测量过程是否需要节点路由器的协作,带宽测量技术可分为逐跳的链路带宽测量和端到端的路径带宽测量方式;
[0011] (3)按不同的测度,带宽测量可分为链路带宽(Link Capacity)、路径带宽(Path Capacity)、可用带宽(Available Bandwidth)和批量数据传输能力(BTC-Bulk Transfer Capacity)测量技术。
[0012] 对数字家庭网络状况的监测主要是对目前网络可用带宽情况的监测,因此主要用到的是可用带宽的测量算法。常见的可用带宽测量技术依探测方式可划分为直接探测和迭代探测两大类。PGM(Probe Gap Model)模型是直接探测(Direct Probing)的一种,它通过考察探测包对间隔变化来估测可用带宽,源主机以速率Ri发送探测包串,探测包串到达目的主机的速率为R0,可用带宽A可由下式计算
[0013] 当Ri>A
[0014] 应用PGM模型的前提是紧凑链路带宽CTL为已知值。迭代探测的基本思路是用高速探测流量人为地制造路径拥塞,然后得到可用带宽。这种方法向网络注入速率为Ri的突发包对串,当包对速率大于可用带宽时,路径发生瞬间拥塞,探测包间的时序关系发生改变,分析探测包的时延特征即可估测出路径可用带宽。由于可用带宽未知,测量过程实际上是包对速率不断变化的迭代过程,因此迭代探测也称PRM(Probe Rate Model)模型。与PGM模型不同,迭代探测并不要求紧凑链路带宽CTL为已知值,包对速率Ri可以是线性变化或按某种函数规律变化。PRM测量过程采用如下判定条件,当测得R0A;当测得R0=Ri时,认为Ri≤A;不可能出现R0>Ri。改变Ri进行迭代探测,找到R0=Ri临界点,最终得到路径可用带宽A。PathChirp属于PRM模型。

发明内容

[0015] 本发明的目的在于克服上述现有技术存在的缺陷,提供自适应的数字家庭网络可用带宽实时检测方法,让用户可以利用这样一种方法合理地调用可用带宽测量算法对网络的可用带宽进行实时的监测,同时又不会对网络造成太大负荷的,且测量时间短,测量精度比较高。本发明对PathChirp进行改进,并利用改进后的算法实现对数字家庭网络可用带宽的实时检测。直接利用PathChirp进行测量时它每次都会向网络中发送同样的数据包串,这些包串中包的速率有些可能大大偏离网络可用带宽的真实值,其中只有一些包的速率是比较接近可用带宽值的,因此如果每次测量都发送一系列的具有大范围包速率(如典型网络为1-100Mbps)的包串进行测量,则无疑会对网络造成较大负载,而且测量时间也会较长。本发明根据数字家庭网络中可用带宽的需要实时检测的要求对PathChirp进行改进,改进后我们不仅能对网络可用带宽进行实时测量,而且大大减少了对网络的负荷和测量的时间。
[0016] 本发明的自适应的数字家庭网络可用带宽实时检测方法,其包括如下步骤:
[0017] (1)网关根据pathchirp方法向网络中需要进行可用带宽测量的网络终端发送一串包速率为1~100Mbps的包串进行第一次测量,测量得到网关与这个网络终端之间的可用带宽数值;
[0018] (2)网关每隔Δt时间后再次向需要测量可用带宽的网络终端发送包串进行另一次测量,该次测量发送的包速率为上次测得的可用带宽值的±m范围内的速率,m取可用带宽值的10%-20%,Δt由用户或者是网络的类型决定;
[0019] (3)每次测量后被测量的网络终端将收到的包串的排队时延和测量是否成功的信息反馈给网关,然后网关根据收到的反馈信息计算本次测量可用带宽的值或调整探测流起始包和结束包的速率;
[0020] (4)如果网关收到网络终端反馈回来的测量成功的信息,则重复上述步骤(2)(3),进行另一次测量;
[0021] (5)如果网关收到网络终端反馈回来的测量不成功的信息,则先将上次测量的包串速率范围增大5-10%,以该增大后的速率再进行另一次测量,同时计数器将测量不成功的次数加1,如果连续k次测量不成功,k取3-5,则网关会重新进行一次完整的测量,即发送一串包速率为1~100Mbps的包串进行测量。
[0022] 上述步骤中(1)的具体办法为:网关根据pathchirp的算法要求,向需要进行可用带宽测量的网络终端发送一串具有大范围包速率(如典型网络为1-100Mbps)的包串进行第一次测量,网络终端接收到数据包后,将收到的数据包的排队时延和测量是否成功的信息等反馈回网关。网关接收到反馈信息后送给对这些信息进行分析,算出网关与这个网络终端之间的可用带宽数值,结束第一次测量。
[0023] 上述步骤中(2)的具体办法为:在前一次测量后经过Δt时间后网关将对其与网络终端之间的可用带宽进行另一次测量,Δt由用户或者是网络的类型决定。网关在前一次测量的基础上调整发送包的数目,使得发送的包串中包的速率范围处于上次测量所得带宽值的±m范围内,m一般不会取得太大,可取10Mbps左右。
[0024] 上述步骤中(3)中根据网络终端反馈的信息调整测量的参数的具体办法为:如果在一次测量中网络终端检测到接收到的数据包的排队时延中没有转折点,即数据包的排队时延是没有变化的或都是递增的,在这样的情况下,网络终端则将这样的信息反馈回网关,网关根据排队时延的情况发送一串包速率变化范围比之前测量的范围大的包串重新进行一次测量,即将上次测量的包串速率范围增大5%。
[0025] 上述步骤中(4)的具体办法为:如果网关收到网络终端反馈回来的测量成功的信息后,则再隔Δt进行另一次测量,即发送一串具有在上次测量得到的可用带宽值±m范围的包速率的包串重新进行测量。
[0026] 上述步骤中(5)的具体办法为:如果网关收到网络终端反馈回来的测量不成功的信息,则先将上次测量的包串速率范围增大5%,马上再进行另一次测量,同时计数器将测量不成功的次数加1,如果连续k次测量不成功,k取3-5,则网关会重新进行一次完整的测量,即发送一串包速率为1~100Mbps的包串重新进行一次完整测量。
[0027] 与现有技术相比,本发明的优点是:
[0028] (1)每次测量的时间可以大大缩短,因为本发明每次测量都是以上一次测量得到的可用带宽数值为依据,再以这个数值为中心取它附近一定范围内的一系列速率进行发包,因此这样做比一开始完全不知道可用带宽的情况而发送一系列速率变化范围很大的探测包对可用带宽进行测量的情况要节省很多时间。
[0029] (2)测量时对网络造成的负荷比较小,由于每次发送的探测包速率范围已经被我们限制在以上一次测量得到的可用带宽数值附近的范围内,这样就大大减少了每次测量发送的探测包,因此也就不会对网络造成太大的负荷。
[0030] (3)可以根据反馈的信息自适应调整测量参数,每隔一定时间测量一次,获得对网络可用带宽的实时监测。

附图说明

[0031] 图1为本发明具体实施方式中指数分布的探测流示意图;
[0032] 图2为实施方式中探测流中各个包的排队时延示意图;
[0033] 图3为具体实施方式中的检测方法的流程图。

具体实施方式

[0034] 下面结合附图对本发明的具体实施方式作进一步说明。
[0035] 一种自适应的数字家庭网络可用带宽实时检测方法流程图如图3所示,主要有五个步骤。首先网关向需要测量可用带宽的网络终端发送一串具有大范围包速率的包串进行第一次完整测量,网络终端将测量得到的信息反馈给网关,网关进行分析后得到测量的可用带宽数值,以后每隔一段时间再进行一次测量,但是不需要像第一次测量那样发送那么大范围速率的包串,发送的包串速率范围只需要处在上次测量得到数值的±m范围内即可,这样即实现了对数字家庭网络可用带宽实时检测,又可以达到节省测量和减少对网络负担的作用。
[0036] 本发明主要有5个步骤:
[0037] A网关向网络中需要进行可用带宽测量的网络终端利用pathchirp方法发送一串包速率为1-100Mbps的包串进行第一次测量,测量得到网关与这个网络终端之间的可用带宽数值;
[0038] B网关每隔Δt时间后再次向需要测量可用带宽的网络终端发送数据包进行另一次测量,这次测量发送的包速率范围为上次测得的可用带宽值的±m范围内的速率数值,m取可用带宽值的10-20%;
[0039] C每次测量后被测量的网络终端将收到的包串的排队时延和测量是否成功的信息反馈给网关,然后网关根据收到的反馈信息计算本次测量可用带宽的值或调整探测流起始包和结束包的速率。
[0040] D如果网关收到网络终端反馈回来的测量成功的信息,则隔Δt时间后重复上述步骤,进行另一次测量;
[0041] E如果网关收到网络终端反馈回来的测量不成功的信息,则先将上次测量的包串速率范围增大5-10%,马上再进行另一次测量,同时计数器将测量不成功的次数加1,如果连续k次测量不成功,k取3-5,则网关会重新进行一次完整的测量,即发送一串包速率为1~100Mbps的包串进行测量。
[0042] 下面我们对上述5个步骤分别加以详述。
[0043] (1)在上面的背景技术中我们已经介绍了pathchirp算法,pathchirp主要通过从发送端发送一系列包对间隔是指数递增的包串到接收端然后在接收端根据接收到的探测包的排队时延进行统计分析来估测路径的可用带宽。由于在最初测量开始阶段我们对网络的可用带宽情况毫无了解,并不知道可用带宽所处的范围,因此此时我们需要发送的很多的探测包对网络可用带宽进行测量,发送的探测包速率范围可能在1-100Mbps之间,甚至可能更大,这取决于网络类型。通过这一开始时的测量我们可以获得对网络带宽的初步认识。例如一开始我们向网络中发送的探测包的速率范围为1-100Mbps,接收端接收到这一串探测流之后会得到探测流中各个包的排队时延,排队时延的情况如图2所示。然后接收端将这些数据反馈回测量工具,测量工具按照pathchirp算法算出这一次测量的可用带宽估测值,这样就得到了对网络带宽的初步认识。
[0044] PathChirp是这样的,它通过从发送端发送一系列流(chirp)到接收端然后在接收端进行统计分析来估测路径的可用带宽。如图1所示,发送端发送如图1所示的包串,包与包之间的间隔呈指数递增趋势,理想情况下接收端得到的数据包的排队时延是单调递增的,但由于会出现突发背景流量,在一条流里排队时延通常不会是单调递增的。图2显示了一个典型流串的排队时延。
[0045] PathChirp利用这个信号的形状对每个包的可用带宽做一个估测值Ek(m)。然后它(m) (m)对Ek 取加权平均值,用来作为每个流的可用带宽的估测值D :
[0046](m)
[0047] 最后它对这一段时间测得的估测值D 取平均得到这段时间内的可用带宽。(m)
[0048] 为了准确地计算Ek ,pathChirp把每个信号分割成属于偏移的区域和不属于偏移的区域,如图2所示。这要用到偏移分割算法,pathChirp偏移分割算法的原理比较简单。(m)
直观上如果连续几个包的qk 大于0而且是增长的,那么这些包有可能是在路径上拥塞队列的一些繁忙期的部分。具体的细节如下,我们的目标是要识别出偏移的开始包序号i和(m) (m)
结束的包序号j。每个出现qk
[0049]
[0050] 的第一个包,这里F是衰减系数(decrease factor)。在j点排队时延q(i)通过系数F从i增大至j的最大的排队时延被降了下来。如果j-i>L,则我们把i到j之间的包作为偏移。
[0051] 下面要计算每个包的估测值Ek(m)。每一条流里的包k都会处于一下三种情况中的一种:
[0052] (a)如果k属于一个会终止的偏移且qk(m)
[0053] Ek(m)=Rk
[0054] (b)如果k属于不会终止的偏移,则设
[0055] Ek(m)=R1,
[0056] l是偏移的起始点。
[0057] (c)对于不属于以上两种情形的包k我们设Ek(m)=R1。这包括了那些不属于偏移的包和那些属于偏移但是排队时延是递减的包。由于最后一个偏移并不终止,这里我们选l=N-1。
[0058] (2)在前一次测量后经过Δt时间再进行另一次测量,Δt由用户或者是网络的类型决定,由于网络的可用带宽总体上看来应该是连续变化,也就是说这一时刻的可用带宽跟上一时刻的可用带宽总有一些联系,而不会是完全独立的,因此我们可以在前一次测量的基础上调整发送包的数目,使得发送的包串中包的速率范围处于上次测量所得带宽值的±m范围内,m一般不会取得太大,可能就在10Mbps左右。这样就可以避免大量的测量数据包对网络造成严重的负荷,并且可以缩短测量的时间。例如m取10Mbps,则本次测量所需发送的探测流的速率范围为20Mbps,相比于进行一次完整的测量需要发送的探测流的速率范围为100Mbps,探测时间明显会缩短,而且向网络中发送的数据包也会减小,减轻了测量工具对网络造成的负荷。
[0059] (3)进行一次测量后网络终端将测量信息,如本次测量的得到的排队时延和测量是否成功等,反馈给网关。网关根据这些信息计算本次测量的可用带宽的数值或调整测量的参数,如根据上次测量的结果调整探测流起始包和结束包的速率等。由于pathchirp算法最重要的是找到排队延迟从没有变化到逐个测量包递增的转折点,如果我们一次测量中网络终端探测不到这个转折点,即网络终端收到的数据包的排队时延是没有变化的或都是递增的,在这样的情况下,网络终端则将这样的信息反馈回网关。网关得到反馈信息后,则马上发送一串包速率变化范围比之前测量的范围大的包串重新进行一次测量,即增大m的数值。
[0060] (4)如果网关收到网络终端反馈回来的测量成功的信息,则隔Δt时间后再以本次测量值±m范围内的速率发送包串,进行另一次测量;
[0061] (5)如果网关收到网络终端反馈回来的测量不成功的信息,则先将上次测量的包串速率范围增大5-10%,马上再进行另一次测量,同时计数器将测量不成功的次数加1,如果连续k次测量不成功,k取3-5,则网关会重新进行一次完整的测量,即发送一串包速率为1~100Mbps的包串进行测量。