首页 理论教育 探讨扁平式本地化设计在地区领域中的应用

探讨扁平式本地化设计在地区领域中的应用

时间:2023-06-19 理论教育 版权反馈
【摘要】:目标节点d最终位置是D1,其本地代理是圆心在D1的圆形区域。参考文献提出改变本地区域半径,来将内部节点保持在一个近似固定数目上。在参考文献中,采用多个本地区域来提高局部感知和容忍空的本地区域。不同本地区域可能包括精度等级不同的位置信息,且当节点移动时,只有一小部分本地代理需要进行更新。

探讨扁平式本地化设计在地区领域中的应用

参考文献(Stojmenovic,2002a)提出了一种基于本地代理的位置服务。在这种算法中,执行器的本地代理是半径为R的圆形区域,其中心位于执行器的初始位置。这里,R是一个预定义值,它与执行器通信半径成正比。本地代理的位置被洪泛到网络。或者,也可以使用散列函数来发现本地代理的位置(Blazevicet al.,2001;Woo and Singh,2001)。

每个执行器采用诸如GFG(Bose et al.,1999)的地理路由,向其本地代理发送位置更新消息。一旦更新消息进入到发起人的本地代理数据库,则采用一种严格的贪婪模式对该消息进行转发。如果没有找到贪婪下一跳,则当前传感器采用洪泛方式,或者通过智能广播(Stojmenovic et al.,2002),或者使用较大传输半径(如果可用的话),将消息传输给半径R内的所有节点。每个执行器,当传输任何信息时,也采用机会来广播其自身的新位置。传感器监视网络流量缓存与执行器有关的嵌入式位置信息。

传感器S发布两条针对目标执行器D搜索消息。一条通过路由协议,使用当前已知D的位置。在传输过程中,该消息不断被中间节点处最近的D的位置更新。其他消息作为位置更新消息,以同样方式发送给D的本地代理。假定WD本地中的传感器(如果存在的话),它停止搜索消息,因为它是局部最小的。W向圆中的所有传感器发送一条请求,圆心为W,半径为R。这条请求消息包括在搜索消息到达W的途中采集到的最新位置信息。拥有较新位置信息的所有圆内传感器将会进行回复。然后,W使用从回复消息中得到的D的最新位置,将搜索消息重定向D。当首次接收到搜索消息时,目标D使用准确的位置信息来回复S

图8-10 基于本地代理的位置服务

图8-10说明了这种基于本地代理的位置服务。目标节点d最终位置是D1,其本地代理是圆心在D1的圆形区域。后来,d移动到D2,并从D2向本地代理回送位置更新消息。V是最靠近D1的节点。当节点V接收到d的位置更新消息后,它在圆心为V的圆形区域内广播该消息。源S向基于d的本地代理发送目标搜索消息。节点p接收到该消息,将消息重定向到D3。当d得到该消息后,它使用当前位置来回复S,同时构建一条路由。(www.xing528.com)

该算法的局部感知能力较弱。即使目标执行器当前靠近源,源可能仍然需要访问目标执行器的远程本地代理,以获取目标执行器的位置信息,这样既增加了消息开销,又提高了搜索延迟。此外,执行器搜索的成功取决于本地代理的占用情况。当本地代理节点全部移出本地代理基地时搜索失败。参考文献(Blazevic et al.2001)提出改变本地区域半径,来将内部节点保持在一个近似固定数目上。但是,这种方法要求在本地代理内部对节点密度进行集中式计算。

在最近的一个变形(Viana et al.,2005)中,作者们采用Hilbert曲线来定义局部可扩展本地代理,以此来提高执行器搜索的成功率。每个节点与填满网络区域的Hilbert曲线顶点建立关联,并被分配了一个控制区。该控制区是由Hilbert曲线上节点前任和继任之间的部分填充的。每个节点使用一个公共散列函数,将其ID映射到Hilbert顶点上,并将相应的Hilbert区域作为本地区域。当唯一被占用的子正方形离开时,其控制区将被它的一个前任和具有较小控制区的继任接管。

在参考文献(Xue et al.,2001)中,采用多个本地区域来提高局部感知和容忍空的本地区域。不同本地区域可能包括精度等级不同的位置信息,且当节点移动时,只有一小部分本地代理需要进行更新。但是,无论使用多少本地代理,所有节点的运动使得所有本地区域变得空且不可哒。实际上,这是由于基于本地的位置服务(无论是扁平的还是分层的)本身存在着固有弱点。在这方面,基于定额的方法更为灵活和优良,因为它用动态选择的网络节点,来进行位置更新的执行器搜索。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈