无线Ad-Hoc网络中P2P文件搜索机制的研究
1 引言
无线Ad-Hoc网络因其构建容易、支持用户移动性的特点,在无线通信领域中占有极其重要的地位并具有广阔的应用前景。无线通信技术、移动技术的发展为无线Ad-Hoc网络(WANET)提供了更广泛的应用空间。经常使用文件共享的P2P网非常适合 WANET。然而,在现有的无线Ad-Hoc网络中直接应用P2P技术,会造成系统开销大量增加,传输效率及查询成功率不高,从而影响整个网络的性能。在无线Ad-Hoc网络(WANET)中方便快捷地实现P2P数据共享与交换,改善文件搜索和下载机制成为广泛关注的课题。
这里提出一种将查询功能和路由功能统一的跨层设计方案,利用分布式哈希表建立树状网络拓扑结构,使用P2P位置查找技术将文件位置信息分配在其间,每一网络成员都存储和保留系统资源的位置及路由信息,实现共享文件的定位查询。在WANET中实现查询和路由功能的统一,提高文件搜索和下载效率,定向查询网络资源,降低冗余开销。
2 系统概述
这里WANET通过节点间的树形逻辑结构解决共享文件的定位查询问题,随着网络新节点的加入树形拓扑结构增大。新节点只能通过某一个邻居节点加入 WANET,每个WANET向外提供唯一的网络ID,在同一ID的网络中,每个节点只能拥有一个双亲节点。网络有一个层次分明的树状拓扑结构,这种结构有助于查找文件路径(即从存放路径的节点获得到达文件存储节点的路由),以便从文件存储节点下载文件。
为了存储和保留位置信息以及路由信息,系统使用全分布哈希表,关键词是所要共享文件的文件名,值是共享文件的全球统一的位置信息(节点MAC地址和节点文件的全路径)。用一维空间来存储关键词和哈希值对,通过统一的哈希函数将每个关键词映射到哈希链上的对应位置。统一的函数有助于节点之间信息分配的平衡, WANET中的每个节点负责存储一段哈希链(与哈希表上的索引项对应)。如果某一节点负责哈希链段上包含某一文件哈希值,称该节点为文件的路径节点 (Pnode),存储文件F的节点就称为文件节点(Fnode)。因此Pnode存储携带位置信息的索引,Fnode存储实际文件。因此,访问一个文件的步骤如下:查询节点(Qnode)哈希被搜索的文件名以确定哈希链上的值;访问Pnode(哈希值包含在Pnode负责的哈希链内);从Pnode获取被搜索文件的位置(即Fnode)并确定从Pnode小节点到Fnode的路由;从Qnode获取到Qnode-Fnode的路由,访问Fnode,文件从 Fnode被下载。
3 树形拓扑的建立和节点文件定位
图1d表示一个含有7个节点的WANET网络,在该网络中,假定节点A、B、C、D、E、F、G提供的共享文件分别为(α1α2)、(β1β2)、(γ1)、(δ1 δ2)、(σ1)、(ε1)、(η1η2)。
3.1 WANET网络系统树形拓扑的建立
假设网络组建初期只有一个初始节点A,要建立一个如图1d所示的7个节点的WANET文件共享网络,树形拓扑的建立过程如下:
(1)节点A对自己的两个共享文件α1、α2哈希后将值映射到整段共享文件哈希链上,如图2a所示。
(2)节点B(共享文件β1、β2)发现节点A并向节点A发起接入请求,即B要加入A组成的网络。节点A收到B的接入请求后,将自己所负责的哈希链分成两段并分配一半给B,文件α2因此落入节点B负责的一段哈希链,A将文件α2的位置索引送至B(文件虽然还存放在节点A,但A上α2的位置信息置空)。因此,A成为B的双亲节点。B存放着文件α2的位置信息[α2,A]。
(3)B向网络插入其共享文件β1和β2,β1映射到B节点所负责的哈希链段,β2映射到A节点所负责哈希链段。则B节点存储位置信息[β1,B],A节点存储位置信息[β2,B],即B为文件β1的PnodeA为文件β2的Pnode,如图2b所示。
(4)另一个新节点C(存储文件γ1、γ2)发现节点B并对其发出接入请求,节点C从B接入网络,B将自己的哈希链段分出一半给C。节点C上的文件γ1、 γ2哈希后映射到哈希链上,如图2c。α2落入C所负责的哈希链段,B将α2的信息送至C,节点C不仅保留α2的位置信息,也保留从C到文件α2的路径信息。C将B加到路径上,同时保存[α2,BA]的索引项。表明文件α2存储在节点A,并且从C到节点A的路径是“C-B-A”。节点B成为C的双亲节点。
(5)C向网络插入共享文件γ1、γ2,γ1映射到C负责的哈希链段,γ2映射到A负责的哈希链段。
(6)同理,节点E发现网络并向节点B发出接入请求后,分担了B负责的一半哈希链并插入文件σ1,B成为E的双亲节点;节点D(存储文件δ1和δ2)发现网络并从节点E接入后分担了E一半的哈希链,节点F(存储了文件η1和η2)发现网络并从E接入,叉分担E剩下部分一半的哈希链:最后节点G(存储共享文件ε1)也从E加入网络又分担了 E剩下哈希链的一半。这样,E成为节点D、G、F的双亲节点。各个节点在加入的过程中向网络插入自己提供的共享文件,如图2d~图2g中所示,相应的共享文件被插入到网络中各节点所负责的哈希链上,在此过程中,相应的节点也存储了文件名及到达文件存储节点的路由信息。
该网络结构建立后,网络中各共享文件的当前位置和路由信息也被定位,搜索各共享文件的路由可从访问Pnode的请求消息中获得,如图2所示。网络的树形拓扑结构也同时建立,如图1所示。
(7)恢复当双亲节点的一个子节点断网时,双亲节点重新获得子节点所负责的哈希链段。或子节点与其双亲断开时,从子节点往下每个双亲与子节点哈希链重新分配。
(8)离开当一个节点要离开WANET文件共享网络时,要先删除所有共享文件,再将其索引信息删除,如E将自己的哈希链交付双亲B,同时将离网消息通知其双亲B和子节点D、G、F,则节点B将D、G、F加为子节点,节点D、G、F将B作为双亲节点。
综上所述,在图1d中,假设节点D要查找文件η1,则D为查询节点Qnode,文件η1存储在F节点,则F节点就是文件节点Fnode,文件η1映射到哈希链上的H(η1)点,而H(η1)点正好落在节点C负责的哈希链上,所以,节点C就是路径节点Pnode,它存储着由Pnode(节点C)到Fnode (节点F)的路由信息。
搜索 机制 研究 文件 P2P Ad-Hoc 网络 无线 相关文章:
- RFID中解决无线信道争用问题的防碰撞算法研究(04-25)
- 反向射线跟踪的三维路径搜索方法(08-01)
- HSDPA、WiMAX和LTE关键技术比较与分析(06-12)
- LTE中多业务的下行调度算法(09-23)
- 基于μC/OS-Ⅲ的多任务间邮箱机制分析与应用(06-14)
- 基于RFID技术的游客游迹跟踪与追溯系统(05-16)