一种分布式实时探测无线自组网络拓扑结构的方法

文档序号:7693367阅读:288来源:国知局
专利名称:一种分布式实时探测无线自组网络拓扑结构的方法
技术领域
本发明属于无线自组织网络技术领域,特别涉及一种实时的低成本的无线自组网络拓 扑结构的分布式探测方法。
背景技术
无线自组织网络是一类新兴的网络,它有多个英文名称,如Ad-hoc Network、 Self—organizing Network、 Infrastructureless Network、 Multi-hop Network禾口 Packet Radio Network,其中最常用的是Ad-hoc Network。 Ad-hoc这个词来源于拉丁语,本意是 "向这个"的意思,在英语中其基本含义是"专门为某一特定目的的、即席的、即兴的、 事先未准备的"。在无线移动自组织网中,Ad-hoc代表无事先准备的、临时性的含义。Ad-hoc网络是一种没有有线基础设施支持的移动网络,网络中的节点均由移动主机构 成。Ad-hoc网络最初应用于军事领域,它的研究起源于战场环境下分组无线网数据通信项 目,该项目由DARPA资助,其后,又在1983年和1994年进行了抗毁可适应网络SURAN (Survivable Adaptive Network)禾口全球移动信息系统GloMo (Global Information System)项目的研究。由于无线通信和终端技术的不断发展,Ad-hoc网络在民用环境下也 得到了发展,如需要在没有有线基础设施的地区进行临时通信时,可以很方便地通过搭建 Ad-hoc网络实现。在Ad-hoc网络中,当两个移动主机在彼此的通信覆盖范围内时,它们可以直接通信。但 是由于移动主机的通信覆盖范围有限,如果两个相距较远的主机要进行通信,则需要通过 它们之间的其它移动主机的转发才能实现。如图l所示,图中,由于无线通信距离的限制, 距离过远的节点无法直接通信,如图中的l、 3节点,1、 5节点,1、 6节点,1、 7节点等 等。因此在Ad-hoc网络中,主机同时还是路由器,担负着寻找路由和转发报文的工作。 在Ad-hoc网络中,每个主机的通信范围有限,因此路由一般都由多跳组成,数据通过多 个主机的转发才能到达目的地。引用拓扑学中研究于大小、形状无关的点、线的方法,将计算机网络中每个计算机终 端抽象成一个节点,终端之间的通信介质抽象成一条线,这些点和线组成的几何图形就是 计算机网络的拓扑结构。最基本的网络拓扑结构有总线拓扑结构(如以太网Ethernet)、 星形拓扑结构、环形拓扑结构(如令牌环网Token Ring)、树形拓扑结构、网状拓扑结构 以及混合形拓扑结构等。在无线自组织网络中,由于网络中终端的移动性特点,它的拓扑 结构一般为网状拓扑结构。为了比较直观的显示网络的拓扑结构, 一般采用的模型是质点弹簧优化模型。该模型3将待定位的节点看作一个刚性的质点,节点之间的连接关系看成一个弹簧。当两个质点之 间的当前距离(相当于弹簧的当前长度)不等于它们之间的实际距离(相当于弹簧的自然 长度)时,这两个质点就会收到拉力或者斥力的作用,从而縮短或者伸长这两个节点之间 的距离,使这两个节点之间的距离值向实际距离(相当于弹簧的自然长度)变化。当存在 多个质点的时候,每个质点会同时和多个弹簧连接,从而在一个时刻会受到多个方向的不 同大小的力的作用,将这多个方向的不同大小的力进行合成,就可以得到该质点下一刻的 移动方向和移动距离,直到整个弹簧模型达到稳定。在无线自组织网络中,每个终端随时可能接入或者接出网络, 一个终端还可以移动到 别的终端附近与其周围终端进行通信,这些特点导致无线自组织网络的拓扑结构会随时发 生变化,这会对无线自组织网络的路由确定带来严重的困难,如图2所示,与图1相比, 在图2中,节点2移出网络,从而造成整个网络的拓扑结构发生变化,特别是从节点l到 节点7的路由路径中,路径1-〉2-〉5-〉7消失了,同时受影响的还有节点1到节点3之间 的路径。从而需要一种实时探测整个网络拓扑结构的技术,来实时显示各个节点之间的连 接关系,以便于确定路由或进行其他的功能。当前关于无线自组织网络的拓扑结构的探测技术有几类, 一类是在Ad-hoc网络中预留 一个专门的中心节点,该节点与Ad-hoc设备相连,实时获得Ad-hoc设备的运行状态,以 及Ad-hoc设备之间实际的路由选择,然后在该中心节点通过计算得到整个Ad-hoc网络的 拓扑结构;另一类方法是应用在无线传感器网络中的,在该方法中存在一个网关节点,该 网关节点通过向网络中每个传感器节点发送控制信息,在该控制信息中包含为每个传感器 节点分配的发送时隙段,不同的传感器节点的发送时隙段不一样,每个传感器节点在发送 时隙段里发送信息,而在其他时间接收来自其他传感器节点的信息,这是一种由网关节点 安排拓扑的方法。由于在临时搭建的Ad-hoc网络中,每个节点的地位是平等的,不存在上述方法中所谓 的中心节点或者网关节点,而且不能人为的确定由某个节点来担负中心节点或者网关节点 的职责。另外由于接入Ad-hoc网络的节点的独立性,不能用一种安排拓扑的方式来构建 网络,如要获得网络的拓扑结构,只能采用被动探测的方式。所以上述的方法在实际应用 中有很大的局限。在Linux系统内核中,标准的无线网卡的驱动程序具有提取网卡一段时间内接收到数 据的平均信号强度的功能(SPY功能),即通过标准无线网卡驱动中的信号强度收集(SPY) 可得到所接收到的连接信息信号的平均强度值。.在使用信号强度值(SNR值)估计节点间距离的时候,对于简单的瑞利(Rayleigh)衰 落信道,可以用下面的公式来估计40-0.9*<jZ) = 4*10 33其中Q是指两节点间的信号质量(即SNR值);D则是估计出来的逻辑距离。该公式适 用于无遮挡的空旷环境。由于此公式计算复杂,可以使用线段拟合来实现。发明内容本发明的目的在于为克服已有技术的不足之处,提供一种分布式实时探测无线自组网 络拓扑结构的方法,可实时探测无线自组织网络中节点连接情况,并能对网络中节点进行 相对定位,且具有成本低,便于网络维护和路由协议测试等工作和特点。为了实现上述目的,本发明提出的方法具体步骤如下-1) 在无线自组网络中每个节点根据定时信号定时向周围节点广播自己的存在信息(若 该节点装有路由协议,则可用路由协议中自动产生的广播信息定时向周围节点广播自己的 存在信息,以便于减少网络开销);2) 每个节点接收到广播信息后更新本节点的网络拓扑连接信息表,并在定时信号到达 时向其邻居节点发送该节点连接信息表中的连接信息;若该节点在连续几个(根据网络拥塞情况确定, 一般取值为5~7)定时信号到达时都没有接收到已有的某个邻居节点的广播 信息,则判断该邻居节点移出网络,在连接信息表中删除该邻居节点的连接信息;3) 每个节点在接收到其邻居节点发送过来的网络连接信息后,更新本节点的网络拓扑 连接信息表,并在接收来自邻居节点的连接信息时,使用对标准无线网卡驱动中的信号强 度收集(SPY)功能进行修改得到的加强信号强度收集(SUPERSPY)功能,提取所接收到 的连接信息信号的信噪比(SNR);然后在定时信号到达时重新将更新后的连接信息发送给 邻居节点;4) 当用户要求显示无线自组网络拓扑结构图时,读取该用户节点的网络拓扑连接信息 表以及各个连接信息信号信噪比,利用这些信噪比值计算出每两个节点之间的距离,通过 质点弹簧优化模型生成网络的拓扑结构图,并在显示器上直观的显示。上述步骤3)中通过SUPERSPY提取所接收到的连接信息信号信噪比(SNR)的实现方法为在一个周期(为了与步骤1和2中的定时信号周期保持一致,这里取值为定时信号的周期值)内,检查接收到的数据包的源mac地址,利用每个周期内只对来自相同源mac地址的信号提取一次的原则,用最后一次提取的该源mac地址的信号的信噪比值作为该周期内该源mac地址到本节点的信号的信噪比值。上述步骤4)中通过信噪比值计算出每两个节点之间的距离的方法为40-0.9*0D = 4*10 33其中Q是指两节点间的信号质量(即SNR值);D则是通过上式估计出来的逻辑距离。本发明的原理本发明立足于实时移动的Ad-hoc网络,充分体现了 Ad-hoc网络中无中心节点和移动 性的特征。在本发明中每个节点的地位都是平等的,不存在传统方法中所谓的中心节点或 者网关节点。因为在临时组建的Ad-hoc网络中,每个节点都是一个用户,它们的地位都 是平等的,不能人为的确定由某个节点来担当中心节点或者网关节点的职责。按照这个原 贝IJ,本发明采用分布式的方法来实时探测无线自组织网络的拓扑结构。由于节点的移动性,这就使得Ad-hoc网络的拓扑探测与传感器网络不同。另外由于接入Ad-hoc网络的节点的 独立性,不能用一种安排拓扑的方式来构建网络,如要获得网络的拓扑结构,只能采用被 动探测的方式。本发明的主要优点有以下几点1) 基于无线自组网络的分布式特点,本发明的方法不需要专门的主机或者基站,网 络中每个节点都是探测过程中连接情况信息的提供者,同时也都可以得到整个网络的拓扑连接情况。2) 在网络拓扑结构的相对定位中,利用探测过程中得到的节点间信号强度值可以得到网络中节点的位置关系,从而估计出网络节点的实际连接情况。3) 本发明方法可以使用网络中路由协议本身必须维持的交互数据包来获知邻居节点 的存在信息,并可以通过从网卡中直接读取收到数据包的信号强度(SNR)来估计节点间 的距离。4) 该方法还用图示的方式实时显示出网络的拓扑结构,便于直观的观测网络连接及 路由选择情况,为网络维护和路由测试提供了方便。5) 对比于使用精度很高但是成本也相对很高的全球定位系统(GPS),该方法的优点 是简单易于实施,成本很低,对网络额外增加的开销也很小,特别适用于临时组建的小型 Ad-hoc网络以及在GPS失效的地方,例如地下、凹地等地理环境。例如在野外的军事作战 时组成的临时通讯系统,通过实时探测网络的拓扑结构并定位,可以知道每个通讯点当前 所处的位置,以及存在信息。6) 更进一歩的可以应用在对于未知地域的多人协作探险中,在知道网络的拓扑结构 之后,网络中的节点就可以知道到达团体中某个个体的路径以及距离,并能通过发送本节 点周围的环境图像到整个网络中,使得网络中的每个节点都能知道当前已经探测出来的整 个团体覆盖范围内的地理环境信息以及每个节点当前所处的地理环境,便于对下一步探测 的移动方向做出决策或者对特殊状况做出应急救援。由于本方法是实时的,所以探险过程 可以在每时每刻都知道整个团体覆盖范围内的地理环境信息。


图1是Ad-hoc网络模型图。图2是节点2移出网络之后的网络连接图。图3是本实施例的网络模型图。图4是广播信息接收线程的流程图。图5是拓扑结构发送和接收线程的流程图。图6是拓扑结构显示的流程图。
具体实施方式
本实施例采用4个笔记本节点构成一个Ad-hoc网络,如图3所示,由于无线传输距离 的限制,节点1和节点2,节点1与节点3可以直接通信,但节点1和节点4不能直接通 信,同样,节点2与节点4,节点3与节点4可以直接通信,但2节点与节点3相互之间 也不能直接通信。每个笔记本都使用Luccent公司生产的Orinoco无线网卡进行通信,并 在每个笔记本节点中都安装有A0DV路由协议。利用Orinoco无线网卡的改进的信号强度 收集功能得到无线连接信号强度值,最后通过本发明的方法可以在每个节点都得到整个网 络的拓扑连接情况。在进行通信前,事先要创建广播信号发送线程b—send、广播信号接收线程b_recv、拓 扑信息发送线程send、拓扑信息接收线程recv,并建立本机的网络拓扑结构信息表topo (全局变量)。该表的每个项目是一个结构体,它表示网络中两个节点的一个连接,它的 定义如下〃从源节点到目的节点的(单跳)信噪比,即连接强度〃源节点的mac地址〃目的节点的mac地址〃目的节点的ip地址,用于发送线程〃连接的有效时间struct toponode/ iint snr;char mac—src[18]; char mac—dst[18]; char ip一dst[16]; int livetime;};struct toponode *topo; 〃t叩o结构体的大小由网络节点数目而定,为NodeNum*NodeNum (在本实施例中为4X4),即方阵型。 本实施例的分布式实时探测方法包括以下步骤1) b_send线程直接使用AODV路由协议中的广播线程;2) 在b一rccv线程中,每隔1秒(定时信号的周期为1秒)读取一次网卡日志文件 s叩erspy,将最近1秒内接收到的无线信号信息读取出来,读取出的无线信号信息格式为 源mac地址目的mac地址信号强度判断目的mac地址,如果是FFFFFF,则为广播信息。对于广播信息,判断源mac地址,如 果拓扑结构信息表中没有该mac地址到本机的连接信息,则在拓扑结构信息图中添加该源 mac地址到本机mac地址的连接信息,并将信号强度值和有效时间值(由于是第一次添加该 源niac,故而设置有效时间为最大值7,即7秒后如果一直没有收到该mac地址的广播信 息的话该mac地址的连接情况将被删除)添加到拓扑结构信息表中。逐条处理读取出的无 线信号信息,如果是拓扑结构表中已经存在的源mac地址,则只将其有效时间值加l,并 更新连接信号强度值(SNR)即可。处理完成后,将本机拓扑结构表中所有连接的有效时 间值减l。如果出现有效时间值减为0的情况,则判断为该条连接信息中有某个节点移出 网络,删除该条连接信息。处理完成后,将此时的拓扑结构信息表存入临时文件t叩o. log中,并发送线程通信信号量a;具体流程如图4所示。3)本步骤包含两个线程的操作,如图5所示发送线程和接收线程在每个节点中都同 时存在,但发送线程是将本机的拓扑结构信息向邻居发送,而接收线程只接收来自邻居的 拓扑结构信息,即本机的发送和接收线程之间是不互相通信的。A)在recv线程中,依次读取接收包中的源mac地址和目的mac地址以及连接强度值 和有效时间值,如果有其中一项与本机的拓扑结构信息表中不符合的则更新本机的拓扑结 构信息表;b)在send线程中,首先等待信号量a,当信号量a到达后,向与本节点直接相连的 所有邻居节点发送本机的拓扑结构信息表;发送的数据包格式为 连接数目n (整型值)结构信息表中第一条连接的源mac地址目的mac地址连接强度值有效时间值 结构信息表中第二条连接的源mac地址目的mac地址连接强度值有效时间值结构信息表中第n条连接的源mac地址目的mac地址连接强度值有效时间值 向所有直接邻居发送完成后,本线程将休眠1秒钟等待下次发送。4)在需要显示网络拓扑结构的时候,读取本机的拓扑结构信息文件topo. log中的网 络拓扑结构信息到Node和Edge两个结构体中,其中Node维护处于网络中的节点数目及 位置,Edge维护网络中连接的边的信息,包括边的发出点,结束点以及边的长度(即信号 强度值)。先初始随即生成Node中节点的位置坐标,然后使用质点弹簧优化模型根据Edge 中边的长度对Node中节点的位置坐标进行调整。经过多次迭代后得到的位置坐标就已经 很接近实际连接情况了。使用GDI相关函数将迭代得到的结构图显示出来即可,具体流程 如图6所示。
权利要求
1. 一种分布式实时探测无线自组网络拓扑结构的方法,包括以下步骤1)在无线自组网络中每个节点根据定时信号定时向周围节点广播自己的存在信息;2)每个节点接收到广播信息后更新本节点的网络拓扑连接信息表,并在定时信号到达时向其邻居节点发送该节点连接信息表中的连接信息;若该节点在连续几个定时信号到达时都没有接收到已有的某个邻居节点的广播信息,则判断该邻居节点移出网络,在连接信息表中删除该邻居节点的连接信息;3)每个节点在接收到其邻居节点发送过来的网络连接信息后,更新本节点的网络拓扑连接信息表,并在接收来自邻居节点的连接信息时,使用对标准无线网卡驱动中的信号强度收集功能进行修改得到的加强信号强度收集功能,提取所接收到的连接信息信号的信噪比;然后在定时信号到达时重新将更新后的连接信息发送给邻居节点;4)当用户要求显示无线自组网络拓扑结构图时,读取该用户节点的网络拓扑连接信息表以及各个连接信息信号信噪比,利用这些信噪比值计算出每两个节点之间的距离,通过质点弹簧优化模型生成网络的拓扑结构图,并在显示器上直观的显示。
2、 如权利要求l所述方法,其特征在于,所述步骤l)中若该节点装有路由协议,则 用路由协议中自动产生的广播信息定时向周围节点广播自己的存在信息。
3、 如权利要求l所述方法,其特征在于,所述步骤3)中通过加强信号强度收集功能 提取所接收到的连接信息信号信噪比的实现方法为在一个定时信号的周期内,检查接 收到的数据包的源mac地址,利用每个周期内只对来自相同源mac地址的信号提取一次的 原则,用最后一次提取的该源mac地址的信号的信噪比值作为该周期内该源mac地址到本节点的信号的信噪比值。
4、 如权利要求l所述方法,其特征在于,所述步骤4)中通过信噪比值计算出每两个节点之间的距离D为40-0.9*(jZ) = 4*10 33其中Q是指两节点间的的信噪比值。
全文摘要
本发明属于无线自组织网络技术领域,特别涉及一种实时的低成本的无线自组网络拓扑结构的分布式探测方法。本发明通过网络中节点的互相向邻居发送信息,可实现实时探测整个网络拓扑结构及其变化情况的功能。在探测过程中,不需要中心节点,每个节点都将本节点所知的拓扑结构信息发送给其邻居节点,经过几个时钟周期之后,每个节点都将获得整个网络的拓扑结构。最后,利用质点弹簧优化模型方法将网络的拓扑结构实时显示,方便网络维护和其它的应用。与无线传感器网络不同的是,本发明探测过程是实时的,更加能适应拓扑结构随时变化的无线自组网络,而且实时的拓扑显示将给很多应用带来方便。
文档编号H04L12/28GK101252538SQ20081010331
公开日2008年8月27日 申请日期2008年4月3日 优先权日2008年4月3日
发明者戴琼海, 肖红江, 政 黎 申请人:清华大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1