论文部分内容阅读
当前,随着信息技术,特别是网络技术和多媒体技术的发展,远程教育系统已经得到了广泛的运用。与此相应,远程实验教学平台应用程度的不断提高,带来访问量的增加,是影响服务器响应速度、网络服务质量及可靠性的一个根本原因。单个服务器处理能力受到限制,很可能成为网络访问的新瓶颈,如何设计服务器集群的负载均衡算法及调度策略以解决远程教育平台出现的各种不适应问题,使得服务平台更好、更快地响应用户请求是本文研究的主要内容。目前,大多数服务器集群的负载均衡的实现采用集中的控制方式,它的缺点在于容易增大网络通信的开销,同时服务器个体的自我智能性差,对负载均衡节点的依赖性大。而移动代理技术(MobileAgent)在对等网络中的广泛应用,表现出良好的智能性,将移动代理技术应用于远程实验教学系统结合负载均衡算法,能够很好地解决负载信息的搜集、调度及均衡策略调整中存在的问题。本课题组已经完成了远程教学平台的基本功能的设计,采用B/S(浏览器/服务器)的访问模式,用户可以通过远程登录异地完成相关课程的学习。本文将在原有B/S模式基础上,引入移动Agent技术,构建基于移动代理技术的LPMA(Load Balancing basedonMobileAgent)三层结构模式,在服务器与客户交互时,由中间代理层作为媒介完成负载均衡的实现。文章的主要开发和实现任务是:利用移动代理实现负载信息的搜集与更新、集群节点的负载迁移算法以及LPMA系统中移动代理子系统的主要功能。系统包含了B/A/S三层结构模型,主要有:底层-OpenMosix分布式系统平台,进行数据的获取;中间层-Aglets移动代理平台,包括任务Agent、整合Agent、任务管理和调度Agent、执行Agent、实时数据采集Agent和共享知识库等几个部分,其功能是进行负载数据搜集与更新,以及节点任务的迁移调度;上层-用户界面,用于响应客户请求的交互界面。负载信息的搜集与更新主要是由实时数据采集Agent与执行Agent进行交互实现,采用轮询机制定期获取数据,并计算出各负载节点的规模,决定是否需要负载迁移。采集的指标主要是CPU利用率、内存利用率、网络利用率、I/O设备利用率和当前服务器的连接速度。关于节点迁移算法,本文使用聚类和随机区间的分析方法,对过载节点选择合适的节点进行匹配,实现任务的迁移与交互,使之达到负载均衡目的。在上述实现过程中,移动代理需要实现以下三个关键功能:(1)动态路由,(2)多代理并行操作,(3)异步执行任务。本文详细给出了在IBMAglet平台上,利用Java语言的开发过程。为了验证系统结构模型的优越性及算法的可靠性,在局域网环境下利用虚拟机搭建一个简单的异构分布式系统,底层安装OpenMosix平台,并设计了一个数据运算的仿真实验,以负载均衡度作为LBMA系统的评价指标来评估算法的有效性。通过实验结果的分析表明该算法可以有效地进行负载的再分配,以及任务的迁移,使得系统的平衡度明显提高,从而提高了系统的资源利用率。同理如果将该系统运用于远程教学平台同样可以有效解决高访问量下的负载分配不均的问题,从而确保远程教学平台的实时性和智能性。在文章的结尾,对本平台的开发工作进行了系统的总结,并对下一步研究方向进行展望。