一种网络流量的测量方法、装置和系统的制作方法

文档序号:7916971阅读:167来源:国知局

专利名称::一种网络流量的测量方法、装置和系统的制作方法
技术领域
:本发明实施例涉及网络通信
技术领域
,特别涉及一种网络流量的测量方法、装置和系统。
背景技术
:无线Mesh(网状网)网络被认为是下一代无线接入网的重要技术,它吸收了传统WLAN(WirelessLocalAreaNetwork,无线局域网)的优点,与目前广泛应用的WLAN接入相比,无线Mesh网络容量大、可扩展性强、覆盖范围大、建设成本低。无线Mesh网络是一个多跳的自治系统,由于单个无线节点的无线通信覆盖范围有限,两个无法直接通信的节点就必须借助于其他节点形成一个"多跳"的^各径进行通信。无线Mesh网络中,由于多个节点共享无线信道,临近节点之间会产生相互之间的信号干扰,反映到服务质量或链路性能上,就将表现为链路误码率增高、数据包发生碰撞、延时较大等。从路由选择的角度看,为了获取高性能的端到端路由,就要避开网络中流量较大的区域。要实现这一目标,就需要测量并得到每条备选路径的干扰流量情况,用于对路径性能进行评估。无线Mesh网络中,存在着"暴露节点"和"隐藏节点",这两类节点对无线链路的数据传输具有不同的影响。图1和图2分别说明了"暴露节点"和"隐藏节点"的概念。图l中,节点b和节点c在相互的无线覆盖范围之内,这样节点b在向节点a发送数据时,节点c将检测到信道处于忙碌状态,因此节点c就不能向节点d发送数据,反之亦然。因此,图l中的节点b和c互为对方的暴露节点。图2中,节点a不在节点c的无线覆盖范围之内,当节点a;l送数据包时,节点c检测到信道处于空闲状态,如果节点c此时发送数据,则会造成节点a发送的数据包在节点b处发生碰撞,从而导致传输失败。节点c被称为节点a的"隐藏节点"。暴露节点和隐藏节点对某一链路上的数据传输具有不同的影响,因而在对链路进行性能评估过程中,必须分别测量影响该链路性能的暴露节点流量和隐藏节点流量。而对于一条端到端路径来说,需要测量该路径上的每条链路的暴露节点流量和隐藏节点流量,从而计算该路径的总体性能。现有技术提供了一种流量测量的方法,无线Mesh网络中的节点周期性地广播发布自身的流量信息给邻居节点,同时每个节点记录其邻居节点发布的流量信息。当需要计算最大可用流量时,将其邻居节点所占用信道的流量信息全部相加,即可得到已被占用的信道流量情况。但是,上述流量测量的方法实际上测量的是暴露节点流量,由于隐藏节点的存在,一跳(l-hop)邻居节点的信息不足以评估链路质量。
发明内容本发明实施例提供一种网络流量的测量方法、装置和系统,以实现计算一条端到端路径上的各个节点的暴露节点流量和隐藏节点流量。为达到上述目的,本发明实施例一方面提供一种网络流量的测量方法,包括接收流量纟果测包;如果网络节点不是所述流量探测包的目的节点,向所述网络节点的下一跳节点转发所述流量探测包;接收所述下一跳节点的应答包,将所述网络节点的暴露节点流量和隐藏节点流量填入所述应答包中,向所述网络节点的上一跳节点发送包含所述网络节点的暴露节点流量和隐藏节点流量的应答包。另一方面,本发明实施例还提供一种网络节点,包括接收模块,用于接收流量探测包;转发模块,用于当所述网络节点不是所述流量探测包的目的节点时,向所述网络节点的下一跳节点转发所述流量探测包;应答包接收模块,用于接收所述下一跳节点的应答包;流量处理^^莫块,用于将所述网络节点的暴露节点流量和隐藏节点流量填入所述应答包接收模块接收的应答包中;发送模块,用于向所述网络节点的上一跳节点发送包含所述网络节点的暴露节点流量和隐藏节点流量的应答包。再一方面,本发明实施例还提供一种网络流量的测量系统,包括源节点,用于发送流量^^罙测包;中间节点,用于接收流量探测包,向所述中间节点的下一跳节点转发所述流量探测包,并接收所述下一跳节点的应答包,将所述中间节点的暴露节点流量和隐藏节点流量填入所述应答包中,向所述中间节点的上一跳节点发送包含所述中间节点的暴露节点流量和隐藏节点流量的应答包。与现有技术相比,本发明实施例具有以下优点通过本发明实施例,网络节点接收流量探测包,并在应答包中填入该网络节点的暴露节点流量和隐藏节点流量。本发明实施例实现了一条端到端路径上的各个节点的暴露节点流量和隐藏节点流量的测量,并且测量过程所带来的网络流量开销4氐,不会影响网络中的数据传输性能和测量精度。为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发8明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为暴露节点示意图;图2为隐藏节点示意图3为本发明实施例网络流量的测量方法的流程图4为本发明网络流量的测量方法实施例一的流程图5为本发明实施例网络节点和邻居节点分布示意图6为本发明实施例一跳邻居节点流量表广播表中的数据域结构示意图7为本发明实施例应答包中的教:据域结构示意图8为本发明实施例网络节点的一种结构图9为本发明实施例网络节点的另一种结构图10为本发明实施例网络流量的测量系统的结构图。具体实施例方式下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。本发明实施例提供一种网络流量的测量方法,实现了针对一条端到端路径上每个节点的流量测量。其中,每个节点的流量包括两部分暴露节点流量和隐藏节点流量。在本发明实施例中,网络中的每个节点通过监听邻居节点的通信情况,记录邻居节点的数据流量,并通过邻居节点间的信息交换,收集两跳以内邻居节点的流量信息。一条端到端路径上的源节点向目的节点发送流量纟笨测包,采集路径上各个节点的暴露节点流量和隐藏节点流量,从而实现了一条端到9端路径上的各个节点的暴露节点流量和隐藏节点流量的测量,并且测量过程所带来的网络流量开销低,不会影响网络中的数据传输性能和测量精度。如图3所示,为本发明实施例网络流量的测量方法的流程图,包括步骤S301,接收流量纟果测包。步骤S302,当网络节点不是流量探测包的目的节点时,向该网络节点的下一跳节点转发流量探测包。当网络节点是所述流量探测包的目的节点时,该网络节点生成应答包,并计算该网络节点的暴露节点流量,将网络节点的暴露节点流量填入生成的应答包中,向网络节点的上一跳节点发送该应答包。步骤S303,接收下一跳节点的应答包,将网络节点的暴露节点流量和隐藏节点流量填入应答包中,向该网络节点的上一跳节点发送包含网络节点的暴露节点流量和隐藏节点流量的应答包。其中,计算网络节点的暴露节点流量具体可以为监听网络节点的一跳邻居节点的流量,将网络节点的一跳邻居节点的流量相加,获得该网络节点的暴露节点流量。在本发明实施例中,还可以将监听到的一跳邻居节点的流量信息保存在该网络节点的一跳邻居节点流量表中,根据监听结果更新一跳邻居节点流量表,并广播该一跳邻居节点流量表。其中,计算网络节点的隐藏节点流量具体可以为获取网络节点的一跳邻居节点的一跳邻居节点流量表,根据一跳邻居节点的一跳邻居节点流量表,获得该网络节点的二跳邻居节点的流量。根据该网络节点的下一跳节点的应答包中的暴露节点流量,以及该网络节点的一跳邻居节点的流量和二跳邻居节点的流量计算网络节点的隐藏节点流量。上述网络流量的测量方法,网络节点接收流量探测包,并在应答包中填入该网络节点的暴露节点流量和隐藏节点流量。本发明实施例将主动探测与被动监听的方式结合,实现了针对一条端到端路径上每个节点的流量测量。并且本发明实施例的测量过程所带来的网络流量开销低,不会影响网络中的数据传输性能和测量精度。本发明实施例实现简单,可以将测量过程与路由发现过程合二为一,实现复杂度低,路由发现和流量测量同步完成。如图4所示,为本发明网络流量的测量方法实施例一的流程图,包括步骤S401,接收流量纟果测包。本发明实施例中,一条端到端多跳路径上的各个节点的流量信息通过主动探测方式获取,源节点沿上迷路径向目的节点发送流量探测包,该路径上的网络节点均能接收到该流量探测包。步骤S402,判断网络节点是否为流量探测包的目的节点。如果该网络节点是该流量探测包的目的节点,则执行步骤S403步骤S405;如果该网络节点不是该流量探测包的目的节点,则执行步骤S406步骤S410;步骤S403,生成应答包。步骤S404,计算网络节点的暴露节点流量。由于该网络节点是该流量探测包的目的节点,即路径上的最后一个节点,因此该网络节点不存在隐藏节点流量。计算网络节点的暴露节点流量具体可以为监听网络节点的一跳邻居节点的流量,将网络节点的一跳邻居节点的流量相加,获得该网络节点的暴露节点流量。下面结合图5,介绍网络节点通过被动监听进行流量测量的方法。图5中的节点i的无线覆盖范围如图5中的阴影所示,处于阴影范围内的节点^、a2、a3和节点j均为节点i的l-hop(—跳)邻居节点。节点i将无线通信模块置于混杂状态,实时监听l-hop邻居节点的流量,l-hop邻居节点的数据流量为单位周期内的平均流量,设每周期长度为r,在一个周期内某l-hop邻居节点总共数据传输量为B,则该1-hop邻居节点的数据流量为;i=S(l)本发明实施例中,网络节点还可以将监听到的一跳邻居节点的流量信息保存在该网络节点的"l-hop邻居节点流量表,,中,如表1所示。在预设的周期更新时间到时后,根据监听结果更新表l。<table>tableseeoriginaldocumentpage12</column></row><table>遍历表l,可以得到节点i的全部l-hop邻居节点集合,实施例一中采用NNi(NeighborNode,邻居节点)表示节点i的全部1-hop邻居节点集合。无线Mesh网络中的各网络节点,周期性地将其"l-hop邻居节点流量表"广播发送。表1中的每一行,即每一条链路的流量信息对应于广播包中的一个数据域,该凝:据域结构如图6所示。路径上的每个网络节点的暴露节点流量即为表1中的各链路数据流量之和,可由式(2)计算而得。(,j>wmfr(2)步骤S405,将网络节点的暴露节点流量填入生成的应答包中,向网络节点的上一跳节点发送该应答包。步骤S406,向网络节点的下一跳节点转发流量探测包,并等待下一跳节点的应答包。步骤S407,接收下一跳节点发送的应答包。步骤S408,计算网络节点的暴露节点流量和隐藏节点流量。其中,计算网络节点的暴露节点流量时,可采用步骤S404中描述的方法,在此不再赘述。计算网络节点的隐藏节点流量具体可以为接收网络节点的每个一跳邻居节点广播的一跳邻居节点流量表,根据每个一跳邻居节点广播的一跳邻居节点流量表,获得该网络节点的每个二跳邻居节点的流量。根据该网络节点的一跳邻居节点流量表和二跳邻居节点流量表计算该网络节点的隐藏节点流量。对于每个网络节点来说,每个网络节点能够收到该网络节点所有1-hop邻居节点的"l-hop邻居节点流量表,,,即它能够获得全部2-hop(二跳)邻居节点的流量信息。每个网络节点将其多个l-hop邻居节点的"l-h(Dp邻居节点流量表,,汇总,可获得该网络节点的二跳邻居节点流量表。仍以图5为例,节点i收到节点j广播的节点j的1-hop邻居节点流量表后,由于节点b1和b2是节点j的l-hop邻居节点,节点bl和b2是节点i的2-hop邻居节点,所以节点i能够获得节点bl和b2的流量信息。同样,节点i能够获得节点al、a2和a3的l-hop邻居节点流量表,这样节点i就能够获得其全部2-h叩邻居节点的流量信息,从而可以构造"2-hop邻居节点流量表,,。以图5中的节点i为例,节点i的2-hop邻居节点流量表如表2所示。表2<table>tableseeoriginaldocumentpage13</column></row><table>为说明路径上的每个节点的隐藏节点流量计算方法,仍考察图5中的节点i。节点i的隐藏节点是节点j的l-hop邻居节点中除去节点i的l-hop邻居节点后,所剩余的那部分节点,即图5中无阴影区域中的节点bl和节点b2。所以,节点i的隐藏节点流量即为以节点bl、b2作为源节点的各链路平均流量之和。将上述场景推广到一般情况,即假定k为网络中任一传输路径上的节点,且k在该路径上的下一跳节点为k+l,则节点k的隐藏节点流量可由式(3)计算而得,U=C-SZ雄,力(3)式(3)右侧第一项为节点k+l发送的应答包中包含的节点k+l的暴露节点流量,式(3)右侧第二项中的NNk、NNw和NLTlkw皆可由节点k上保存的表2获得,从而可以计算得到节点k的隐藏节点流量。步骤S409,将网络节点的暴露节点流量和隐藏节点流量填入应答包中。应答包中每个网络节点对应一个数据域,该数据域的结构如图7所示。步骤S410,向该网络节点的上一跳节点发送应答包。在本发明实施例中,应答包沿反向路径从目的节点向源节点传回,每经过路径上的一个网络节点,该网络节点便将自身的流量信息添加到应答包中。这样,当应答包返回到源节点时,该应答包便采集了路径上全部节点的流量信息。每个路径上的节点的流量信息分为暴露节点流量和隐藏节点流量,这两个数据在应答包返回过程中,通过逐节点计算的方式得到。本发明实施例完成了对一条端到端路径上的各个节点的暴露节点流量和隐藏节点流量的测量。并且本发明实施例的测量过程所带来的网络流量开销低,不会影响网络中的数据传输性能和测量精度。本发明实施例实现简单,可以将测量过程与路由发现过程合二为一,实现复杂度低,路由发现和流量测量同步完成。如图8所示,为本发明实施例网络节点的结构图,包括接收模块81,用于接收流量探测包;转发模块82,用于当网络节点不是流量探测包的目的节点时,向网络节点的下一跳节点转发该流量^:测包;应答包接收模块84,用于接收下一跳节点的应答包;流量处理4莫块84,用于将网络节点的暴露节点流量和隐藏节点流量填入应答包中;发送模块85,用于向网络节点的上一跳节点发送包含该网络节点的暴露节点流量和隐藏节点流量的应答包。该网络节点还包括应答包生成模块86,用于当网络节点是流量探测包的目的节点时,生成应答包。这时,如图9所示,流量处理模块84可以包括暴露节点流量处理子才莫块841,用于将网络节点的暴露节点流量填入应答包生成模块86生成的应答包中;发送模块85包括应答包发送子模块851,用于向网络节点的上一跳节点发送包含所述网络节点的暴露节点流量的应答包。流量处理模块84可以包括监听子模块842,用于监听网络节点的一跳邻居节点的流量;暴露节点流量计算子4莫块843,用于将网络节点的一跳邻居节点的流量相加,获得网络节点的暴露节点流量。其中,流量处理模块84还可以包括保存子模块844,用于将监听子模块842监听到的一跳邻居节点的流量信息保存在网络节点的一跳邻居节点流量表中;广播子模块845,用于广播一跳邻居节点流量表。其中,流量处理模块84还可以包括更新子模块846,用于根据监听子模块842的监听结果更新一跳邻居节点流量表。该流量处理模块还可以包括流量表接收子模块847,用于接收网络节点的一跳邻居节点广播的一跳邻居节点流量表;二跳流量获得子模块848,用于根据流量表接收子模块847接收的一跳邻居节点流量表,获得网络节点的二跳邻居节点的流量;隐藏节点流量计算子模块849,用于根据网络节点的下一跳节点的应答包中的暴露节点流量,以及网络节点的一跳邻居节点的流量和二跳邻居节点的流量计算该网络节点的隐藏节点流量。上述网络节点,接收模块81接收流量探测包,流量处理模块84在应答包中填入网络节点的暴露节点流量和隐藏节点流量。本发明实施例将主动探测与被动监听的方式结合,实现了针对一条端到端路径上每个节点的流量测量。并且本发明实施例的测量过程所带来的网络流量开销低,不会影响网络中的数据传输性能和测量精度。本发明实施例实现简单,可以将测量过程与路由发现过程合二为一,实现复杂度低,路由发现和流量测量同步完成。如图10所示,为本发明实施例网络流量的测量系统的结构图,包括源节点1001,用于发送流量探测包;中间节点1002,用于接收流量探测包,向中间节点1002的下一跳节点转发该流量探测包,并接收下一跳节点的应答包,将中间节点1002的暴露节点流量和隐藏节点流量填入该应答包中,向中间节点1002的上一跳节点发送包含中间节点1002的暴露节点流量和隐藏节点流量的应答包。该网络流量的测量系统还可以包括目的节点1003,用于接收流量^1测包,生成应答包,将目的节点1003的暴露节点流量填入应答包中,向目的节点1003的上一跳节点发送包含目的节点1003的暴露节点流量的应答包。上述网络流量的测量系统,将主动探测与^皮动监听的方式结合,实现了针对一条端到端路径上每个节点的流量测量。并且本发明实施例的测量过程所带来的网络流量开销低,不会影响网络中的数据传输性能和测量精度。而且本发明实施例将测量过程与路由发现过程合二为一,实现复杂度低,路由发现和流量测量同步完成。通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本发明可以通过硬件实现,也可以借助软件加必要的通用硬件平台的方式来实现。基于这样的理解,本发明的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中,包括若千指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。本领域4支术人员可以理解附图只是一个优选实施例的示意图,附图中的模块或流程并不一定是实施本发明所必须的。本领域技术人员可以理解实施例中的装置中的模块可以按照实施例描述进行分布于实施例的装置中,也可以进行相应变化位于不同于本实施例的一个或多个装置中。上述实施例的模块可以合并为一个模块,也可以进一步拆分成多个子模块。上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。以上公开的仅为本发明的几个具体实施例,但是,本发明并非局限于此,任何本领域的技术人员能思之的变化都应落入本发明的保护范围。权利要求1、一种网络流量的测量方法,其特征在于,包括接收流量探测包;如果网络节点不是所述流量探测包的目的节点,向所述网络节点的下一跳节点转发所述流量探测包;接收所述下一跳节点的应答包,将所述网络节点的暴露节点流量和隐藏节点流量填入所述应答包中,向所述网络节点的上一跳节点发送包含所述网络节点的暴露节点流量和隐藏节点流量的应答包。2、如权利要求1所述网络流量的测量方法,其特征在于,还包括如果所述网络节点是所述流量探测包的目的节点,生成应答包,将所述网络节点的暴露节点流量填入所述应答包中,向所述网络节点的上一跳节点发送包含所述网络节点的暴露节点流量的应答包。3、如权利要求1或2所述网络流量的测量方法,其特征在于,该方法进一步包括监听所述网络节点的一跳邻居节点的流量;将所述网络节点的一跳邻居节点的流量相加,获得所述网络节点的暴露节点流量。4、如权利要求3所述网络流量的测量方法,其特征在于,进一步包括将所述一跳邻居节点的流量信息保存在所述网络节点的一跳邻居节点流量表中;广播所述一跳邻居节点流量表。5、如权利要求4所述网络流量的测量方法,其特征在于,进一步包括根据监听结果更新所述一跳邻居节点流量表。6、如权利要求1或4所述网络流量的测量方法,其特征在于,进一步包括获耳又所述网络节点的一跳邻居节点的一跳邻居节点流量表;根据所述一跳邻居节点流量表,获得所述网络节点的二跳邻居节点的流量;根据所述网络节点的下一跳节点的应答包中的暴露节点流量,以及所述网络节点的一跳邻居节点的流量和二跳邻居节点的流量获得所述网络节点的隐藏节点流量。7、一种网络节点,其特征在于,包括接收模块,用于接收流量探测包;转发模块,用于当所述网络节点不是所述流量探测包的目的节点时,向所述网络节点的下一跳节点转发所述流量探测包;应答包接收模块,用于接收所述下一跳节点的应答包;流量处理模块,用于将所述网络节点的暴露节点流量和隐藏节点流量填入所述应答包接收模块接收的应答包中;发送模块,用于向所述网络节点的上一跳节点发送包含所述网络节点的暴露节点流量和隐藏节点流量的应答包。8、如权利要求7所述网络节点,其特征在于,还包括应答包生成模块,用于当所述网络节点是所迷流量探测包的目的节点时,生成应答包。9、如权利要求8所述网络节点,其特征在于,所述流量处理才莫块包括暴露节点流量处理子模块,用于将所述网络节点的暴露节点流量填入所述应答包生成模块生成的应答包中;所述发送模块包括应答包发送子模块,用于向所述网络节点的上一跳节点发送包含所述网络节点的暴露节点流量的应答包。10、如权利要求7所述网络节点,其特征在于,所述流量处理模块包括:监听子模块,用于监听所述网络节点的一跳邻居节点的流量;暴露节点流量计算子模块,用于将所述网络节点的一跳邻居节点的流量相加,获得所述网络节点的暴露节点流量。11、如权利要求IO所述网络节点,其特征在于,所述流量处理模块还包括保存子模块,用于将所述监听子模块监听到的一跳邻居节点的流量信息保存在所述网络节点的一跳邻居节点流量表中;广播子模块,用于广播所述一跳邻居节点流量表。12、如权利要求IO所述网络节点,其特征在于,所述流量处理模块还包括更新子模块,用于根据所述监听子模块的监听结果更新所述一跳邻居节点流量表。13、如权利要求IO所述网络节点,其特征在于,所述流量处理模块还包括流量表接收子模块,用于接收所述网络节点的一跳邻居节点广播的一跳邻居节点流量表;二跳流量获得子模块,用于根据所述流量表接收子模块接收的一跳邻居节点流量表,获得所述网络节点的二跳邻居节点的流量;隐藏节点流量计算子模块,用于根据所述网络节点的下一跳节点的应答包中的暴露节点流量,以及所述网络节点的一跳邻居节点的流量和二跳邻居节点的流量计算所述网络节点的隐藏节点流量。14、一种网络流量的测量系统,其特征在于,包括源节点,用于发送流量探测包;中间节点,用于接收流量探测包,向所述中间节点的下一跳节点转发所述流量探测包,并接收所述下一跳节点的应答包,将所述中间节点的暴露节点流量和隐藏节点流量填入所述应答包中,向所述中间节点的上一跳节点发送包含所述中间节点的暴露节点流量和隐藏节点流量的应答包。15、如权利要求14所述网络流量的测量系统,其特征在于,还包括目的节点,用于接收流量探测包,生成应答包,将所述目的节点的暴露节点流量填入所述应答包中,向所述目的节点的上一跳节点发送包含所述目的节点的暴露节点流量的应答包。全文摘要本发明实施例公开了一种网络流量的测量方法、装置和系统,所述网络流量的测量方法包括接收流量探测包;如果网络节点不是所述流量探测包的目的节点,向所述网络节点的下一跳节点转发所述流量探测包;接收所述下一跳节点的应答包,将所述网络节点的暴露节点流量和隐藏节点流量填入所述应答包中,向所述网络节点的上一跳节点发送包含所述网络节点的暴露节点流量和隐藏节点流量的应答包。本发明实施例实现了一条端到端路径上的各个节点的暴露节点流量和隐藏节点流量的测量,并且测量过程所带来的网络流量开销低,不会影响网络中的数据传输性能和测量精度。文档编号H04L12/26GK101635654SQ20081013228公开日2010年1月27日申请日期2008年7月23日优先权日2008年7月23日发明者尹首一,邢志浩,钟永锋申请人:华为技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1