一种基于JXME的移动P2P网络模型

时间:2022-01-21 11:37:09

一种基于JXME的移动P2P网络模型

摘要 本文从通信模式、功能服务、安全漏洞以及中继四个方面分析了JXME存在的问题,参考JXME进行一系列变动和调整,提出了一个基于JXME改进模型,构造了一个系统测试环境,对文件传输效率进行了测评。结果表明,改进的模型在减少无线网络带宽并提供安全保障前提下,能够有效地用作的移动P2P应用开发。

关键词 P2P;JXME;改进模型

中图分类号TP393 文献标识码A 文章编号 1674-6708(2011)56-0200-02

0 引言

P2P网络由于其具有良好的可用性、扩展性和容错性,已经成为网络应用的热门技术,如利用移动P2P方式提供视频点播和文件共享等。针对于此,Sun公司提出了JXME协议,并给出了Java语言的实现方案。但由于移动性带来节点自身的资源和能力有限和网络拓扑的变化等特性以及移动网络带宽资源有限给移动计算环境带来了诸多困难。

1 JXME模型中的不足

1.1 移动P2P网络主要特征

动态变化的网络拓扑。所谓移动P2P其突出特点自然就是移动性,由于不断变化的移动设备的断电、切换、开机和关机及等状态,以及P2P网络节点加入和离去的任意性都使网络拓扑产生动态变化。

受限的网络及节点资源。相比有线宽带接入网,虽然近几年移动网络的数据传输速率越来越高,但仍有较大的差距,而且传输稳定性和可靠性也相差不少,这是因为移动网络必须采用无线电磁波接入,从而容易受自然环境的影响。此外移动设备的计算处理能力、存储空间及电池功率等都受到严格限制,这是为了实现这些设备的便携性而造成的。

更多的网络安全威胁。相比于传统的P2P网络,由于移动P2P增加了移动性,因而也增加了无线接口带来的安全威胁,如果一个移动设备在无线接口存在漏洞,入侵者就可以利用这个漏洞侵入整个网络。因此移动P2P网络存在更多的网络安全威胁。

1.2 JXME通信模式上的不足

在网络通信活动中JXME Peer是作为HTTP客户端参与的,这对于有效地进行P2P网络通信是不利的。这种做法使得手机资源带宽被极大地浪费掉了,因为JXME Peer不能监听任何其它节点的服务请求而是仅发送HTTP请求。

JXME Proxy有可能缓存较大的信息列表,当无线网络连接存在问题且JXME Peer接入数量巨大时,JXME Proxy有可能暂时不被JXME Peer连接到,在这个时候,检索负载将会极度增加,因为JXME Peer论询探测JXME Proxy时都需要检索消息列表;而根据JXME目前通信机制,JXME Proxy无论何时都要求每个JXME Peer频繁轮询探测自己。JXME Proxy性能负载的威胁来自于这两个因素。由于无线网络的动态性的原因,在手机间歇性连接Proxy是非常正常的。而JXME并没有解决这个问题。

1.3 JXME功能服务存在冗余通告

手机节点在JXME模型中要求必须提交自己的识别信息在接入网络时。JXME的做法是将一个JXME Peer节点通告发送给网络,接收网络连接的是节点之前必须建立的一个单播管道,网络会收到此管道的通告在节点建立单播管道之后。那么在一般节点中至少有节点通告和管道通告这两种通告将会被发送给网络。

一次最多只能发送60kb的消息给JXME Proxy,因此在任何手机节点参与网络时刻,由于手机节点只适合于传输较小的数据文件,所以只需要保证至少连接上一个节点就可以了。对于JXME来说广播管道也就没有使用意义,因为就3G网络而言,管道通告节点通告都向网络发送是没有必要。

1.4 JXME安全漏洞

在分布式的移动P2P网络中,如果入侵者恶意攻破了其中任意一个节点,就有可能攻击到整个中的所有节点。因此,如果入侵者发现了其中任意一个漏洞就会威胁到整个网络的安全。这种威胁也就成为了潜伏在基于JXME的手机网络中的定时炸弹一样,时刻威胁移动P2P网络的安全。在保障移动P2P网络安全中,必须考虑增加节点操作以及的安全策略。

1.5 JXME中继模块存在的问题

在JXME设计中,将要发送到手机端的消息会被中继类暂时放在一个二级缓存中,消息将会被发送到中继所在的服务器线程,这会使用HttpMessageSender. doSend( )方法,需要时再将消息取出。因此会使消息发送出去就继续,而消息还未从二级缓存中取出,这样容易造成前一个还没有成功发送的消息就被后一个消息给覆盖。

通过项目测试可以发现,手机端有可能无法收到正确的返回响应,而且出现来自于TCP的错误报告“远程服务器强制关闭连接”,经过分析,此类情况出现于移动设备端的消息被上传到HTTP层封装的数据包大于1kb时。

一个影射对中所存储的输入管道和ID列表(相应的手机端)会保存在中。随后相应ID也有可能会被删除,就是当发送的消息无法通过通信模块成功发送到手机端时,而且也没有更新LinkedList迭代子在删除ID之后。而这些都是JXME-X应用层协议所规定的。

在JXME-X应用层的参考实现中,中继只会发送一个辖区的资源广告在其接受到底层发送的创建资源请求之后。

2 JXME改进模型

2.1 通信模式的改进

针对被动探测这个存在于JXME Peer通信机制中的缺陷,可以主动监听JXME Proxy网络连接,为此只需要启动一个服务监听程序在JXME Peer端,也就是说将JXME Peer中的被动探测转变成为主动监听。从而避免了浪费资源的问题,因为与该节点的连接只有在JXME Proxy要发送某个节点消息的时候。这样就不会浪费过多的资源带宽在手机节点上。

与之相对应也需要改进JXME Proxy。在原有的JXME Proxy通信模式中,是否发送消息给该节点是在接收到节点探测消息后,检查有没有发送给该节点的消息。针对于此将JXME Proxy收到节点探测消息后检查改进为间隔一定时间扫描收到的消息,如果检查到有要发送的消息,将消息发送出去通过其与JXME Peer建立的连接通道。而且在自身检测间隔时间内,为了减少与JXME Peer的通信,实现节约无限带宽资源的目的,可以尽可能一次多发些数据。

2.2 JXME功能服务的改进

节点ID和管道ID的发送会增加网络的流量,为此我们可以考虑是否可以用管道ID来代替节点ID。事实上,手机节点在任何一个时刻只能与网络中一个节点建立对等连接,因此管道ID可以被用来代替节点ID,从而在节点接入网络时改进的模型可以通过管道ID来标识节点,无需创建节点ID,此后与其它节点创建连接时都可以使用此ID进行通信。由此来实现减少网络流量的目的。

为了增加快速搜索效率,可改进为将节点通告、组通告、节点IP和端口等所有节点的资源信息存储于JXME Proxy中,所有JXME Proxy将可以对其进行索引通过广播收到的此列表。

2.3 JXME安全架构的改进

可以采用PKI技术改进移动P2P网络身份验证安全措施,这是因为PKI是目前技术成熟,算法比较完善,适合各种规模的网络信息安全的一种公认并且安全的密钥和证书管理体系。

2.4 JXME中继模块的改进

为避免出现大数据量时造成的“远程连接错误”TCP错误,合理制定影响服务器的linger处理时间的参数,发送下一个消息一定要等待前一个消息发送成功之后。为避免抛出异常,及时更新LinkedList迭代子在删除ID之后。为实现减少其他对等体的资源搜索时间,可以通过使用远程方式来进行广告。

3 文件传输测试

3.1 测试环境

在三个不同的机器上分别分布两个JXME Peer、一个JXME Proxy。如图1所示。

图1 网络拓扑结构

大文件被分成多少块和每个块的大小是由发送缓存大小决定得。JXTA规范说明一个JXTA Proxy节点(如JXME Peer)能够处理的最大消息是60kb。

本文在测试一个什么样的范围内大小的数据能够被较快地传输。本文选择50kb到150kb文件大小传输,没有超出MIDlet内存限制。

本文将要测试74kb和140kb这两个大小的文件传输。观察不同缓存大小时的传输状态。为确保计算机和网络的因素不影响到测试结果,要求在每次缓存改变大小后做4次测试。

3.2 测试结果分析

测试结果见数据见表1和表2。实验结果表明,缓存对大文件传输时间影响很大。缓存较小时,系统占用内存也较小,但是其延长传输时间,而系统剩余可用内存变小在传输时间较短情况下缓存又较大时。并且其临界值略向大偏移在文件越大时。根据实际传输文件大小缓存大小需要做较小改变。对140kb的文件使用20kb缓存大小比较合适。

表1 74kb文件传输测试数据

表2 140kb文件传输测试数据

参考文献

[1]JXTA Official Community.Welcome to the JXTA for J2ME(JXME) project [EB/OL].[2008-06-29].https://.

[2]L.Kawulok,K.Zielinski and M.Jaeschke.Trusted group membership service for JXME [J].Wireless And Mobile Computing,Networking And Communications,2005. (WiMob'2005),(116-121 Vol.4)IEEE International Conference.

[3]David A.Bryan,Bruce B.Lowekamp.SOSIMPLE:A SIP/SIMPLE Based P2P VoIP and IM System[DB/OL],URL:http://www.cs.wm.edu/~bryan/pubs/0411SOSIMPLE/paper.pdf.

[4] 程久军,李玉宏,程时端,马建.移动P2P系统体系结构与关键技术的研究[J].北京邮电大学学报,2006,29(4) :86-89.

[5]黄宇,金蓓弘.非结构化P2P系统Overlay优化技术综述[J].小型微型计算机系统,2008,2:238-244.

[6]欧中洪,宋美娜,战晓苏,宋俊德.移动对等网络关键技术研究综述[J].软件学报,2008,19(1):126-140.

上一篇:电视画面的选取及剪辑技巧 下一篇:连续刚构托架预压技术