《06410124P2P软件开发技术大学高校课程教学大纲.docx》由会员分享,可在线阅读,更多相关《06410124P2P软件开发技术大学高校课程教学大纲.docx(14页珍藏版)》请在优知文库上搜索。
1、P2P软件开发技术(Peer-to-PeerSoftwareDevelopmentTechnology)课程编号:06310360学分:2.0学时:30(其中:讲课学时:22实验学时:0上机学时:8课程实践学时:0)先修课程:操作系统、数据结构、面向对象程序设计语言、计算机网络适用专业:计算机科学与技术教材:P2P技术揭秘一一P2P网络技术原理与典型系统开发,管磊,清华大学出版社,2011年1月第1版开课学院:计算机科学与通信工程学院一、课程性质与课程目标(一)课程性质P2P软件开发技术是计算机科学与技术专业中的一门前沿课程,它是建立在操作系统、数据结构、计算机网络、面向对象程序设计语言等课程
2、知识的基础上,为计算机科学与技术及其相关专业的学生提供接触前沿课题,提高动手实践的机会。本课程是计算机科学与技术和软件工程专业中具有前沿性质的选修课。课程展示了从P2P初步入门到应用实践的学习之路。从理论到实践,从基础到项目,循序渐进地讲解了P2P技术的基本知识体系。该课程培养了学生的抽象思维、分析问题和解决问题的能力,从而为今后从事分布式应用软件和系统的研发打下理论和实践基础。(二)课程目标1 .知识方面1.1 掌握P2P的基本概念;1.2 理解并掌握各类P2P网络拓扑构造技术;1.3 掌握P2P网络搜索技术;1.4 掌握P2P网络安全技术,包括P2P网络的认证、访问控制和病毒防御等;1.5
3、 理解并掌握P2P文件共享、P2P即使通信及P2P流媒体的开发流程。2 .能力与素质方面2.1 能够熟练使用一种程序开发工具;2.2 能够运用软件工程方法学,进行系统设计,包括概要设计和详细设计等;2.3 分别掌握P2P文件共享、P2P即使通信及P2P流媒体的实现方法;2.4 理解分布式系统与集中式系统开发的差别与联系;2.5 培养学生的逻辑思维和系统开发能力。(三)课程目标与专业毕业要求指标点的对应关系本课程支持的毕业要求指标点如下:毕业要求指标点5.1:具备对计算机领域复杂工程问题进行识别和有效分解的能力。毕业要求指标点7.2:能够对计算机领域复杂工程问题进行分析和求解,获得有效结论。要求
4、指点课程目标毕业要求指标点5.1毕业要求指标点7.2课程目标Ll课程目标1.2课程目标L3课程目标1.4课程目标1.5课程目标2.1课程目标2.2课程目标2.3课程目标2.4课程目标2.5二、课程的内容及要求第一章走进P2P世界本章支持课程目标:1.1掌握P2P的基本概念;2.4理解分布式系统与集中式系统开发的差别与联系。(一)教学内容与教学方法1. 横空出世的P2P;(讲授)2. P2P与Web的对比与较量;(讲授+自学)3. P2P的发展实例;(讲授+案例)4. P2P的研发与未来。(讲授)(二)知识、能力与素质等方面的基本要求1. 了解本课程的性质、研究对象与方法、任务;2 .理解P2P
5、的概念;3 .了解P2P网络分类和特点。(三)重点与难点1 .重点理解P2P的概念,掌握P2P网络分类和特点,了解P2P未来的发展趋势。2 .难点理解P2P的概念,P2P比Web具有的优势。第二章P2P网络拓扑结构本章支持课程目标:1.2理解并掌握各类P2P网络拓扑构造技术;2.4理解分布式系统与集中式系统开发的差别与联系;2.5培养学生的逻辑思维和系统开发能力。(一)教学内容与教学方法1 .网络拓扑技术;(讲授+案例)2 .集中式的P2P网络拓扑;(讲授+案例)3 .全分布式结构化的P2P网络拓扑;(讲授+案例+练习)4 .全分布式非结构化的P2P网络拓扑;(讲授+案例+练习)5 .混合式P
6、2P网络拓扑结构。(讲授+案例+练习)(二)知识、能力与素质等方面的基本要求1 .理解网络拓扑的概念;2 .理解集中式的P2P网络拓扑的概念、特点和原理;3 .理解分布式P2P网络拓扑的概念、特点和原理;4 .理解混合式P2P网络拓扑的概念、特点和原理。(三)重点与难点1 .重点理解网络拓扑的概念,理解集中式、分布式和混合式的P2P网络拓扑。2 .难点理解网络拓扑的概念,理解集中式、分布式和混合式三种P2P网络拓扑结构的异同。第三章P2P网络搜索技术本章支持课程目标:1.3掌握P2P网络搜索技术;2.1能够熟练使用一种程序开发工具;2.4理解分布式系统与集中式系统开发的差别与联系;2.5培养学
7、生的逻辑思维和系统开发能力。(一)教学内容与教学方法1 .P2P搜索与Web搜索的异同;(讲授+案例)2 .集中式的P2P网络搜索技术;(讲授+案例+练习)3 .结构化的P2P网络搜索方法;(讲授+案例)4 .非结构化的P2P网络搜索方法;(讲授+案例+练习)5 .混合式P2P网络搜索方法。(讲授+案例+练习)(二)知识、能力与素质等方面的基本要求1 .理解Web搜索与P2P搜索的异同;2 .了解P2P搜索技术的评价标准;3 .掌握P2P搜索技术的内容。(三)重点与难点1 .重点理解Web搜索与P2P搜索的异同;了解P2P搜索技术的评价标准;P2P搜索技术的内容2 .难点理解Web搜索与P2P
8、搜索的异同,掌握P2P搜索技术的内容。第四章P2P的关键技术及其应用本章支持课程目标:1.4掌握P2P网络安全技术,包括P2P网络的认证、访问控制和病毒防御等;1.5理解并掌握P2P文件共享、P2P即使通信及P2P流媒体的开发流程;2.5培养学生的逻辑思维和系统开发能力。(一)教学内容与教学方法1. P2P的内容存储技术;(讲授+案例)2. 内容查询技术;(讲授+案例)3. 内容传输技术;(讲授+案例)4. P2P系统的安全技术;(讲授+案例+练习)5. P2P应用所存在的问题。(讲授+案例+练习)(二)知识、能力与素质等方面的基本要求1 .理解P2P所涵盖的主要技术体系,如体系结构技术、内容
9、存储技术、内容查询技术等;2 .理解P2P技术在当前IntenIet中应用,如文件共享与下载、内容分发、分布式计算等方面;3 .了解P2P技术带来的问题,解决方案。(三)重点与难点1 .重点理解P2P所涵盖的主要技术体系;理解P2P技术在当前Internet中应用并了解P2P技术带来的问题与解决方案。2 .难点掌握P2P所涵盖的主要技术体系,了解P2P技术带来的问题与解决方案。第五章P2P流媒体技术本章支持课程目标:1.5理解并掌握P2P文件共享、P2P即使通信及P2P流媒体的开发流程;2.3分别掌握P2P文件共享、P2P即使通信及P2P流媒体的实现方法;2.4理解分布式系统与集中式系统开发的
10、差别与联系;2.5培养学生的逻辑思维和系统开发能力。(一)教学内容与教学方法1. 初识流媒体;(讲授)2. P2P与流媒体的结合;(讲授+案例+练习)3. P2P流媒体的关键技术;(讲授+案例+练习)4. P2P流媒体的应用及典型的应用系统(二)知识、能力与素质等方面的基本要求1 .理解P2P与流媒体结合的原理;2 .掌握P2P流媒体所涉及的关键技术。(三)重点与难点1 .重点理解P2P与流媒体结合的原理,掌握P2P流媒体所涉及的关键技术。2 .难点掌握P2P流媒体所涉及的关键技术。三、本课程开设的实验项目编号实验项目名称学时类型要求支撑的课程目标1基于Java的P2P开发平台搭建2验证必做1
11、.21.31.52.12.22.32基于P2P的语音实时通信系统设计与实现6综合性必做1.21.31.52.12.2232.42.5注:1.类型指验证性、综合性、设计性等。2.要求指必做、选做。实验一1 .题目基于JaVa的P2P开发平台搭建2 .目的了解ECliPSe的安装、熟悉SkyPe环境搭建、熟悉SkyPe客户端安装与注册、理解其代码,并能成功实现应用程序的测试。3 .要求SkyPe4Java开发工具包,是一个在JaVa平台上开发SkyPe相关应用的类库。通过Skype4Java中提供的接口和方法,可以实现一系列操作Skype客户端的功能。本实验内容主要包括ECIiPSe安装,SkyP
12、e环境搭建,SkyPe客户端安装与注册,以及Skype网络中应用程序之间的通信程序的编写与测试。4 .结果测试在两台主机上进行测试,SkyPe客户端开启以后,类似于腾讯QQ,俩人互相加为好友,AP2AP程序编写完毕,然后运行AP2APo在程序第一次运行的时候,Java程序会在内容与SkyPe客户端进行通信,这是SkyPe会有一个提示,是否允许此通信过程,选择允许访问。在应用程序运行之后,如果另一个客户端没有对应的启动此应用程序,那么控制台会显示如下图所示信息。ProblemsiMXOC0Console次jDeclMtionXDl09C4tAP2APuvApplication)Pr09rmFiI
13、CVvaW八&CVaVamd2015515下午10:11:14)-CONNSTATUSONLINE-CURRENTUSERHANDIEHve:ChMajiangSU2015此处应显示你的好友名称-USERSTATUSONUNEAMS2AP CONNECTABLENAMESkype4JavaPROTOCOL9999 -PROTOCOL8CREATEAPPLICATIONcom.skyp.devP2KPHOGETAPPLICATIONcom.skype.dev.AP2APS -0APPLICATIONcom.skpe.dev.AP2APMlGETAPPLICATIONcom.skvpe.echol
14、23 )1APPUCAT1。,com.处加APPAPCONNECTABLEechol23,devAP2APCONNECTechol23-ALTERAPPLICATIONcom.skype.dev.AP2APCONNECTechol23 -APPLICATIONcom.skype.dev.AP2APCONNECTINGechol23 -APPUCATIONcom.skype.dev.AP2APCONNECTINGM2GETAPPLICATIONcom.skype.fev.AP2APSTREAMS -#2APPUCATIONcom.skype.dev.AP2APSTREAMS当在另一个Skype客户端启动此AP2AP的应用程序执行时,双方就开始进行通信了。交互的消息刚好就是在程序中设定的消息,如下图所示。KjPrleM.Jv,DclarattnQ)Cm1HAP2AF(JvD5rlsJv*jr*Xjv*x(2010-T18:2)*p.dv.AP3APCONNECT: -appcatxowcom.skpe.v.apapCCNMECTXHGchoi23