拓扑自适应的移动自组网P2P中间件系统

摘 要 p2p 计算 模型以其独特的分布式特性为移动自组网这种信息和控制高度分布的 网络 架构提供了理想的上层计算框架,这种计算二元性使我们很 自然 地将p2p计算平台与移动自组网结合起来。本文讨论几种常见的p2p拓扑结构在各种 应用 环境下的优缺点,提出一种能够运行在移动自组网和internet上,具有p2p网络拓扑独立性和设备平台独立性、能够为上层p2p应用程序提供路由和信息服务的中间件系统模型tpmm,为p2p在移动自组网上的应用提供一个开放、稳定、高效和安全的支撑平台,并给出tpmm在j2me平台上的 参考 实现。
关键词 移动自组网,拓扑自适应,p2p,中间件系统模型
1 引言
当前p2p[1] [2] [3]技术取得了飞速的 发展 ,在internet上的文件共享显示了p2p系统的巨大商业潜力,但是p2p的应用并不仅仅局限于internet上 音乐 和视频数据的交换和共享,越来越多的 企业 和 科学  研究 人员试图将p2p计算模型用来解决一些未知的 问题 。相对于基于服务器的计算模型,p2p具有更健壮、更可靠的特性,能够提供更强大的计算能力,更大的可扩展性,更大的带宽,所以现在有很多领域都采用了p2p的计算框架,包括即时消息传输,如napster[4];文件交换,如gnutella[5];搜索引擎,如past[6];协同工作,如groove[7]。
2 网络拓扑自适应的中间件系统模型
p2p系统的拓扑结构可以分为三种,如图1所示,1)纯p2p拓扑结构,包括两种子结构:无序网状结构p2p和结构化p2p;2)基于服务器的p2p结构;3)混合的p2p结构。本节要讨论p2p层次的常见拓扑结构并 分析 它们的优缺点,这些对等点之间的联系在很大程度上 影响 p2p网络的性能。
排屑装置图1 几种常见的p2p网络拓扑结构
p2p的拓扑结构对p2p网络的各个方面有着很重要的影响,如1)定义对等点之间怎样连接2)在p2p网络中消息的路由选择3)系统的稳定性和可扩展性4)分布式查的性能。因此对一个p2p中间件系统来说,能够根据应用环境的变化动态地切换拓扑结构而保持上层应用的独立性是非常重要的,但 目前 的p2p应用系统[12]尚不支持在不同的p2p拓扑结构之间进行动态的切换,如jxta[13],所以它们不能灵活地适应各个不同的应用环境。本文提出的tpmm具有模块化和层次化的结构,允许通过不同的网络拓扑描述模块的切换来动态地适应应用环境的变化,使上层的应用不会因为下层网络拓扑的改变而作修改,tpmm为上层应用提供恒定的api来实现应用和网络拓扑的透明性。
stkx2.1 tpmm的设计要求
平台独立性:tpmm要求使用在移动自组网环境中,能够运行在诸多设备上,所以要求中间件系统独立于底层的操作系统;不采用和实现语言相关的功能(如rmi)。
拓扑独立性:和特定的p2p拓扑无关是tpmm最重要的功能要求,系统必须能够在运行时根据系统配置动态加载或切换拓扑实现模块来适应应用环境的变化。
开放性:系统必须满足灵活和可扩展的要求,包括采用的网络协议、消息结构、消息的处理方式等等,为外界提供开放的接口,使得tpmm和其他p2p中间件系统能够无缝集成。
水源热泵系统 简洁性:要求提供轻量级的实现,能够运行在众多的资源受限平台上,如手机、pda和其他移动或嵌入式设备上。
2.2 tpmm的体系结构
升降柱cncame tpmm位于操作系统和虚拟机之上,为上层应用提供中间件实现的服务接口,如图2所示,中间件可以分为四层,从下到上依次为:通信层、处理层、网络层和应用层。
排线焊接
图2 tpmm的体系结构
2.2.1 通信层
通信层的功能和osi七层网络模型的物理层类似,负责在p2p网络各个对等点之间进行点对点的消息传输。包括两个部分,上层的核心模块和下层的传输模块,传输模块可以有多种,分别负责各种协议(如udp、tcp、红外和蓝牙)下的消息传输。
manet由不稳定的移动节点通过无线链路构成,它的节点经常由于无线信号不稳定而丢失连接,然后再通过另外一个节点接入manet,为了有效管理manet的动态拓扑,在tpmm通信层的核心模块中实现了两个功能:1)间歇性连接管理:可以使manet节点断开连接并通过其他节点接入manet的时候保持和原来节点的通信,这种处理透明性使上层应用不用考虑manet的动态拓扑特性。2)多网络接口管理:为同一个节点提供了多个网络接口,这样核心模块可以调用不同的传输模块进行并行的消息传输,如在同一时刻p2p网络中一台笔记本既可以用蓝牙和手机通信,也可以用红外接口和另外一台笔记本通信。
核心模块还要负责组织和控制下层的传输模块,在处理层和通信层之间分发消息。一旦传
输模块接收到来自其他对等点的消息就将其传递给核心模块,然后由核心模块交给处理层的输入消息管道进行处理,而如果核心模块接收到来自上层输出消息管道的消息时要根据消息本身的元信息或者系统配置来选择合适的传输模块把消息传输到指定对等点。
现在几乎所有的p2p中间件系统都是构建在internet的ip网络架构之上的,tpmm要能够工作在移动自组网和internet之上。问题是对各种网络,如internet和蓝牙或者红外接口的无线网络不存在统一的访问接口,它们需要第三方的类库来提供访问支持。解决的方案是在通信层和操作系统提供的底层网络服务之间增加一个抽象层,即实现第三方附加类库的虚拟机,有了这一层抽象以后,通信层就可以为上层提供一个统一的网络访问接口,而不必关心下面采用何种网络架构。为了达到这个目标,tpmm采用了由通信层核心模块控制的传输模块,不同的传输模块负责在不同的网络如ip、蓝牙或者红外网络中进行节点之间的消息传输。在ip网络中工作的套接字等网络访问接口已经不能满足网络类型多元化的要求,必须将不同类型的网络访问接口和 方法 封装在不同的传输模块中,而且各个传输模块之间保持独立。
推拉式电磁铁 在internet中为了唯一的标识一个对等点及其进程,使用了ip地址加端口的表示方式,但是
在无线网络中这种表示方式就不能工作了。为了满足在manet之间、manet和internt网之间进行通信的要求,必须在传输模块之上采用一个独立于网络类型的统一地址描述模式,sun的开源项目jxta采用了全局唯一id来标识网络中的每一个对等点,tpmm采用一个抽象类:acuid来封装节点标识信息,除了包含全局唯一id外还有网络类型标识等其他说明信息,这样上层模块可以利用这个封装了网络地址信息的接口来透明地访问其它节点。

本文发布于:2024-09-22 02:04:02,感谢您对本站的认可!

本文链接:https://www.17tex.com/tex/4/245152.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:网络   模块   传输   消息   系统   提供   拓扑   结构
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议