论文部分内容阅读
移动Agent是一种新型的分布式计算技术,具有良好的应用前景。作为一种能够在异构网络中自主迁移的分布式计算实体,移动Agent具有减轻网络负载、支持断连操作、动态适应网络等优势,在移动计算、协同计算、电子商务等领域得到了广泛的关注。然而,移动Agent的移动性即移动Agent的迁移使得移动Agent之间的通信产生了很多问题,现有的通信方面研究仅侧重于一对一的单播通信方式,对于移动Agent的组通信的研究存在不足,移动Agent组通信分为移动组间信息的正确到达和信息到达移动组后在组内的可靠传递。本文基于移动组的概念,对移动Agent的组通信展开了研究。本文首先对移动Agent组通信问题进行了讨论。在传统的分布式组通信中,进程是静态的而在移动Agent组通信中是移动进程,是动态的,所以在移动Agent组通信中就存在四个问题:1、移动Agent的命名;2、移动Agent的定位;3、移动Agent组的消息处理;4、移动Agent组通信协调。其中,移动Agent组的消息处理包括组内信息的传递和组间信息的接收。命名服务的提出,用以解决移动Agent的标识性问题。域名字解析器-DNR负责为本域内所有的移动Agent提供登记服务,如Agent的注册、注销、查询等服务。通信服务构件Communicator为移动Agent间的通信提供服务,其具体的实现有赖于后面移动Agent组的组内组间通信方法的提出。基于ARC的移动Agent组内可靠通信方法采用了基于邮箱的自适应可靠信息传递机制中的MailBox作为组间信息中转站和Agent消息接收缓存区,用以解决移动Agent组内Agent的消息处理。若Token标识者从MailBox中取出信息传递给组内的某个Agent,此时MailBox用作Agent消息接收缓存区;若Token标识者从MailBox中取出信息将之在组内多播,此时MailBox用作组间信息中转站。基于ARC的移动Agent组内可靠多播通信方法实现了移动Agent组通信中组内信息传递的可靠性。基于SendBox的组间通信方法采用了SendBox-发送包的数据结构,发送包用于存储由于各自移动Agent组内的成员由于迁移时组内Agent未能及时收到的信息和对方移动Agent组由于网络通信故障而一时无法发送到对方移动Agent组的信息中转站的信息。基于SendBox的组间通信方法保证了移动Agent组通信中组间信息传递的可靠性。最后,本文在IBM的Aglets平台上进行了实验,实验移动Agent组通信的移动Agent组内可靠多播通信和基于SendBox的组间通信方法,并对这两个方法进行了性能分析。性能分析主要对移动Agent组通信的通信速度和稳定性进行了分析。