当前位置:首页 > 模拟 > 模拟
[导读]1 引言 随着网络技术的发展和网络应用的普及,远程教育被认为是网络时代新的教育模式,正在迅速发展。在该教育模式下,教学活动突破了学习时间和空间的局限性,教师与学生之间的关系发生巨大改变,教学和学习过

1 引言
    随着网络技术的发展和网络应用的普及,远程教育被认为是网络时代新的教育模式,正在迅速发展。在该教育模式下,教学活动突破了学习时间和空间的局限性,教师与学生之间的关系发生巨大改变,教学和学习过程体现为教师一学生和学生一学生之间的资源共享和交流互动。然而,当今主要使用的基于B/S结构的远程学习系统暴露出许多缺陷:(1)只依靠服务器端存储信息和根据用户请求进行分发,信息仓储基本保持静止;(2)以服务器为中心,容易产生服务器瓶颈问题;(3)用户处于一种被动接受状态,而不能提供信息。
    P2P(Peer-to-Peer)计算提供一种全新方式,P2P网络认为所有节点在共享信息方面能力平等,每个用户可提供分布信息仓储,弱化了服务器客户机的概念,这一特点符合现代教育模式中的教师一学生关系;从目前应用看,P2P在大范围的共享、搜索方面具有较大优势,不经服务器就可实现对等节点间的资源传递,避免发生服务器瓶颈问题,这恰好符合了现代教育中的学生一学生关系。因此,将P2P技术引入到远程学习系统可发挥其在协同、搜索方面的优势,扩展远程学习系统在现代教育中的应用,并能理想地解决传统B/S结构应用系统的种种弊端。

2 基于JXTA技术的P2P网络
    JXTA项目是由SUN公司发起的开放源代码项目,主要用于提供P2P系统所需的基础服务,由一系列简单的、开放的协议组成。通过这些协议,连接到网络的任何设备都能够相互通信、协作和资源共享。JXTA技术致力于创建一个通用平台,以简单而有效的方式构建特定的对等式和分布式服务与应用,从而使开发者无需过多考虑如何解决对等计算的技术问题,集中精力实现和完善可扩展、互操作性强、可靠性好的高层应用。
2.1 JXTA应用程序的体系结构
    JXTA应用程序的体系结构如图1所示,从下至上划分为3个层次,分别为核心层、服务层和应用层。

    (1)核心层(JXTA Core)该层封装了最根本的东西,为P2P服务和应用提供核心支持。包括对等节点创建、对等组创建、Peer发现、Peer通信、Peer监视和相关的安全原语。
    (2)服务层(JXTA Services) 该层扩展核心层的功能,为P2P应用程序提供可选通用服务,如索引、文件共享、分布式信息检索、对等节点认证、代码缓存和内容缓存机制。
    (3)应用层(JXTA Application)该层为创建各种类型的P2P应用系统提供相关的应用程序,主要有信息内容管理、分布式存储以及实时信息传输等应用程序。
2.2 JXTA协议
    JXTA协议采用XML标准的数据格式定义消息,独立于具体的编程语言和传输协议,使得它更易于理解和获得更多的支持。它可在TCP/IP、HTTP、 BlueTooth、HomePNA或其他传输协议之上建立一个虚拟JXTA网,使得节点位于由防火墙和NAT设备分隔开的网络的不同部分或者处于异构网络协议的环境之间都同样可以相互通信。这一优点正是当前远程学习系统最需要的。

3 远程学习系统的设计与实现
3.1 远程学习系统的架构设计
    构建的基于JXTA的P2P远程学习系统采用混合P2P模式,各个参与学习的站点分为3种不同角色:学生对等节点(Student Peer,SP)、教师对等节点(Teaeher Peer,TP)、教务管理对等节点(ManagerbPeer,MP)。MP在学习系统中起到管理、组织、协调各参与者的作用,并负责创建课程组,记录各个课程组的资源索引,在课程组间提供搜索路由的功能,管理维护教学网站中的BBS、电子白板、聊天室、资源下载区、教师信息、学生信息、内部电子邮件系统等栏目;TP节点从属于某一课程组,主要协调、组织、评价本课程组内参与学习者的学习过程,维护本课程组内资源的索引信息,并将资源索引的变动信息传递给MP;SP找到相应课程组后可加人到其中,利用课程组中提供的课件、参考资料等共享资料进行自主学习;当碰到疑难问题时,可与在线人员进行两两学习交流,或展开多人共同探讨;若遇到难题无法解决时,可联系课程组教师通过电子白板实现虚拟教室,进行及时在线辅导讲课。整个远程学习系统的架构如图2所示。

3.2 远程学习系统的实现
    系统应用的开发工具是NetBeans5.5、JDK5.0、JXTA2.0、 Sun Java System Application Server Enterprise Edition 8服务器,数据库采用由纯Java语言编写的小型数据库PointBase,它对平台的支持性强,并可直接过渡到其他数据库。通过使用面向对象的程序设计方法,根据远程学习系统的工作原理和主要功能设计以下3个主要的类:
    (1)Manager类该类代表系统中的MP,负责为MP设置JXTA环境及完成与TP的通信连接,将加入对等网的TP分配至合适的课程组;能够创建一个新的课程组,当某一课程组资源点击人数低于某值时,删除该课程组。主要方法有:启动JXTA环境startJXTA(),创建课程组createCourseGroup()、删除课程组deleteCourseCroup()、发布提供的远程学习服务discoverySvc()、获取节点在线状态pipeAdv()、创建一个通信管道inputPipe()、信息发送sendMessage()、发布节点的在线状态publishPipeAdv(),创建信息发送管道 createInputPipe()和运行主方法main()等。
    (2)Teaeher类该类代表系统中的TP,负责为TP设置JXTA环境以及建立到MP的通信连接,并完成在学习系统中教师的功能。主要方法有:启动 JXTA环境startJXTA(),发现教务对等节点在线状态discoverManagerPipeAdv(),创建连接到MP的管道 createManagerPipes()、发布TP节点的在线状态pub-lishTeacherPipeAdv(),创建发送会话消息到MP的通信通道createTeaeherInputPipe()、MP确认TP发送的答案accept()、创建新会话requestNewSession()、读取TP的输入getUserRe-sponse()、获取TP对MP的响应sendToManager()、问题信息处理processMessage ()、获取对等节点问传输信息中的文本字符串getElementValue()、建立与MP节点的连接connectMan-ager()、断开与MP 节点之间的连接disconnectManager()、请求一个新会话run()和运行主方法main()等。另外,Teacher类的main()方法中还定义一个InputPipeMsgListener类实现PipeMsgListener接口来获得管道中的消息。
    (3)Student类该类代表系统中的SP,负责为SP设置JXTA环境以及建立与TP的通信连接,并完成在学习系统中学生的功能。主要方法有:启动JXTA环境 startJXTA(),发现教师对等节点在线状态discoverTeacherPipeAdv(),创建连接到,TP的管道 createTeacherPipes()、发布SP节点的在线状态publishStudentPipeAdv(),创建发送问题答案到TP的通信通道 createStudentInputPipe()、TP确认SP发送的答案accept()、创建新会话requestNewSession()、读取 SP的输入getUserRe-sponse()、获取SP对TP的响应sendToTeacher()、问题信息处理processMessage ()、获取对等节点间传输信息中的文本字符串getElementValue()、建立与TP节点的连接connectTeacher()、断开与TP节点之间的连接disconnectTeacher()、请求一个新会话run()和运行主方法main()等。
    (4)Agent类该类负责收集问题和答案,对学生对等节点收集的答案进行评估响应,并在“问题——答案”会话结束后根据该学生的回答给出相应的学习建议。主要方法有:问题和答案集合创建initProblems(),获得发送问题的总数get-TotalNumberOf Questions(),为SP提供下一个问题get-NextProblem(),处理答案processAnswer(),接收最后一个答案 getLastAnswer()、判断问题是否结束hasMoreProblems(),获得正确答案总数getTotalAnswersCorrect ()和获得学习建议getSuggestions()等。此外,Agent类还定义了一个Problem类。这个类使用了三个方法:获得特定问题编号的 getNumber()方法、获得问题内容的getQuestion()方法和获得问题答案的getAnswer()方法。
    (5)AgentFactory类 该类主要负责创建Agent对象。主要方法有:获得Agent对象(getAgent)。系统开发完成后,进行了各种功能测试,证明该系统均能顺利完成工作。

4 结束语
    JXTA项目使得P2P应用程序的开发者能将一个应用程序中与P2P相关的特定功能交给JXTA去实现,大大提高了P2P应用程序的开发效率。
    同时,由于JXTA是一个开放源代码项目,可以根据自己的需要进行适当修改,使得所开发的应用程序具有高可扩展性。与传统的分布式系统相比,P2P与JXTA技术具有无可比拟的优势,将它们引入远程教育应用系统开发有着广阔的应用前景。
    这里在分析了JXTA的体系结构及核心协议后,利用JXTA技术设计和开发了一个简单的并且具有可扩展、互操作性强及高可用性的P2P远程学习系统。通过该系统,学生可以更充分更有效地利用远程教学过程中的共享资料进行自主学习,更加方便学生和教师之间的交流,提高学生的学习积极性,促进学生学习成绩的提高;同时也有利于教师在教育过程中角色的转变,使教师从课堂主讲人转向学生学习的组织者和指导者,帮助辅导学生进行自主学习,提高学生的学习水平。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

成都2022年10月19日 /美通社/ -- 近期,平安养老险积极筹备个人养老金的产品设计和系统开发工作,发展多样化的养老金融产品,推动商业养老保险、个人养老金、专属商业养老保险等产品供给。 搭养老政策东风 ...

关键字: 温度 BSP 东风 大众

广东佛山2022年10月19日 /美通社/ -- 空间是人居生活的基础单元,承载着生存与活动的最基本功能。而对于理想空间的解构意义却在物理性容器之外,体现出人们对于空间和生活深层关系的思考,同时也塑造着人与空间的新型连接...

关键字: 温度 BSP 智能化 进程

上海2022年10月19日 /美通社/ -- 10月17日晚间,安集科技披露业绩预告。今年前三季度,公司预计实现营业收入7.54亿元至8.33亿元,同比增长60.24%至77.03%;归母净利润预计为1.73亿...

关键字: 电子 安集科技 BSP EPS

北京2022年10月19日 /美通社/ -- 10月18日,北京市经济和信息化局发布2022年度第一批北京市市级企业技术中心创建名单的通知,诺诚健华正式获得"北京市企业技术中心"认定。 北京市企业技...

关键字: BSP ARMA COM 代码

北京2022年10月18日 /美通社/ -- 10月14日,国际数据公司(IDC)发布《2022Q2中国软件定义存储及超融合市场研究报告》,报告显示:2022年上半年浪潮超融合销售额同比增长59.4%,近5倍于...

关键字: IDC BSP 数字化 数据中心

上海2022年10月18日 /美通社/ -- 2022年9月5日,是首都银行集团成立60周年的纪念日。趁着首都银行集团成立60周年与首都银行(中国)在华深耕经营12年的“大日子”,围绕作为外资金融机构对在华战略的构想和业...

关键字: 数字化 BSP 供应链 控制

东京2022年10月18日  /美通社/ -- NIPPON EXPRESS HOLDINGS株式会社(NIPPON EXPRESS HOLDINGS, INC.)旗下集团公司上海通运国际物流有限公司(Nipp...

关键字: 温控 精密仪器 半导体制造 BSP

广州2022年10月18日 /美通社/ -- 10月15日,第 132 届中国进出口商品交易会("广交会")于"云端"开幕。本届广交会上高新技术企业云集,展出的智能产品超过140,...

关键字: 中国智造 BSP 手机 CAN

要问机器人公司哪家强,波士顿动力绝对是其中的佼佼者。近来年该公司在机器人研发方面获得的一些成果令人印象深刻,比如其开发的机器人会后空翻,自主爬楼梯等。这不,波士顿动力又发布了其机器人组团跳男团舞的新视频,表演的机器人包括...

关键字: 机器人 BSP 工业机器人 现代汽车

南京2022年10月17日 /美通社/ -- 日前《2022第三届中国高端家电品牌G50峰会》于浙江宁波落幕,来自两百余名行业大咖、专家学者共同探讨了在形势依然严峻的当下,如何以科技创新、高端化转型等手段,帮助...

关键字: LINK AI BSP 智能家电

模拟

31144 篇文章

关注

发布文章

编辑精选

技术子站

关闭