毕业设计(论文)点对点视频即时通讯系统.doc
《毕业设计(论文)点对点视频即时通讯系统.doc》由会员分享,可在线阅读,更多相关《毕业设计(论文)点对点视频即时通讯系统.doc(30页珍藏版)》请在三一办公上搜索。
1、毕 业 设 计(论文)题 目:点对点视频即时通讯系统学 生: 指导老师: 专 业: 计算机应用班 级: 计算机01学 号: 385/10/2005目录摘要3正文5第一章 前言51.1设计背景:51.2 对现有系统的分析比较:5网际通讯的和网内通讯的:5社区型的通讯和特定用途通讯6第二章:论文主体72.1:总体设计7服务器端:7客户端7客户端与服务器端的通讯方式72.2系统详细设计82.2.1模块的划分82.2.2 Xml通信协议的设计:82.2.3 服务器的详细设计132.2.3.1 总体方案132.2.4.2 实现:14A服务器的关键类。14B :实现一台电脑只运行一个服务器14C 服务器解
2、析自定义xml协议的实现15D 数据库的设计及实现 :17第一个方案:SQL Server 2000 作为数据库管理系统实现数据的存储管理。17第二个方案:用xml作为数据库。18E 安全存储用户密码信息的设计及实现20不可逆转加密技术的实现202.2.4:客户端的详细设计232.2.4.1 总体方案232.2.5.2 详细设计23A关键的类23B界面的设计24C视频语音的实现25D自动升级功能的实现262.3系统测试27第三章 结语28致谢29参考文献29点对点视频即时通讯系统毕业设计论文2004-4-21摘要本系统就是在互联网技术不断推进改革背景下,使用了TCPIP协议,应用的.net强大
3、的技术实现的一个点对点的通讯系统。虽然本系统完成之前,ipv6还没有真正的推广。但是,本系统解决了在ipv4网络里面的点对点通讯的问题,利用UDP打洞技术,突破NAT。可以模拟点对点的通讯。用一个有固定IP的服务器(也就是本服务器)作为中央索引服务器,用来记录各个终端的地址在信息和用户信息。提供给各个连接到本服务器的客户端索取他感兴趣的终端,然后终端根据服务器返回的数据,直接跟对方(客户端)连接,直接交换数据,不要经过服务器中转。这样的话,不仅减轻了服务器的负担,而且可以实现匿名通讯。同时,我们为了让用户更加方便交流,我们实现点对点的视频和语音聊天,视频和语音的网络流数据也是基于本系统架构的点
4、对点的平台传输的。关键词:p2p,点对点通讯,xml,c#,视频,语音。SummaryP2p instant communication system of opportunity TCP/UDPUnder the circumstances that Internet technology is advancing the background of reforming constantly .This system is a system that uses TCP/IP Protocol and system of strong net technology to actualize a
5、 point-to-point communication .Though before this system was finished, ipv6 did not have real popularization,This system has solved the problem of the point-to-point news report inside ipv4 network, utilize UDP punch technology , break through NAT,Can imitate the point-to-point communication.Use a f
6、ixed IP server which as the central index server mark down each terminal station is in information and users information.Offer each customer end connected to a server to ask for the terminal station that he is interested in, then terminal the foundation server the data returning, join with the other
7、 side (customer end ) directly, exchange the data directly, dont change trains through the server.If in this way, not only has lightened the burden of the server, but also can realize the anonymous communication.Meanwhile, in order to make users more convenient, we actualize the point-to-point video
8、 and voice-enabled chat, the data have flowed in the networks of the video and pronunciations transmitted is basis on the point-to-point platform system.Keyword: P2p, point-to-point communication, xml, C#, the video, the pronunciation.正文第一章 前言1.1设计背景:在网络技术的不断升级不断优化的背景下,互联网的技术的应用也随着更新换代。从以前的简单联机。到e-m
9、ail,ftp,万维网的广泛应用都给人类创造无限的价值。如今在java和.net技术的广泛应用的背景下,网络的应用也随着升级,由以前的面向简单的应用逐渐变成面向服务,由中心服务型的应用,到索引服务器甚至到没有服务器。网络的应用慢慢变成跟互联网设计者所描述的真正的网络。随着ipv6技术的推广。网络会实现真正的互联。每一个终端都可以实现直接互联。即每次技术的创新,都会带来好多新的应用,同时不适应时代潮流的旧技术会被新的技术取代。自从点对点通讯的概念出现之后,引起业界对她的广泛关注。因为此技术人们预言将会改变互联的格局,会冲击现有的技术,会给好多的公司带来机遇,也会给好多公司带来挑战。P2P是一种新
10、近兴起的网络模型。与传统的C/S模型比较,它在网络资源利用率、消除服务器瓶颈等多方面有明显的优势。因此,P2P蕴涵着巨大的商业和技术潜在价值。点对点的技术应用起来非常之广泛,比如,在中国,上过网的会电脑的人都知道QQ这个东西,甚至,有些人不会用电脑,但是会玩QQ。QQ只是点对点应用的一个方面,即时通讯。即时通讯的系统还有好多,比如网易的泡泡,tom的skype,阿里巴巴的陶宝旺旺等。点对点技术的应用还有文件共享。虽然文件共享的应用带来好多的非议(因为存在知识版权的问题),但是确实现了真正的数据共享,给好多用户带来方便,同时,也给一些企业节约了成本。网络计算也是一个重要的应用,网络计算的典型的例
11、子就是SETIhome 。它是一个软件,用来计算分析来自澳大利亚Parkes天文台的数据,搜索外来文明的数据。它的特点就是,使用了分布在世界各国的计算机的空闲的计算资源。据统计,这个系统的整体的计算能力远远超越世界上任何一台超级计算机。可见网络计算的应用前景广阔。1.2 对现有系统的分析比较:市面上聊天通讯工具好多,比如okbuddy网络视频通讯软件,iSpQ Videochat 7.2,Hello 1.0 Build 549,和朋友即时通,ABC Amber ICQ Converter 1.04等。著名的有腾讯OICQ,微软msn,网易popo,朗玛UC等。总体上可以做以下分类。网际通讯的和
12、网内通讯的:能实现在不同网络的通讯的就是网际的通讯系统,只能局限在同一个网络,不能和外网通讯的,就是网内的通讯。当然,用户一般是根据自己多集体需要来选择一个工具。网际的通讯和网内通讯的实现有好多的差别。比如在实现方式上,网际的通讯,要使用路由协议,甚至要穿透不同的防火墙。程序编写难度大,算法多,成本高。但是,因为,他能够跟网络上广泛的终端通讯,所以应用的范围管,用户数量也多,效益也大。以此相反,网内通讯只能在同一个网内通讯,多数是应用了以太网协议,没有防火墙的问题,没有路由的问题,而且网路速度高。所以,它一般应用于一个单位自己的网络里面,而且,是有其特定的用途 ,比如,单位里面专有的通讯,单位
13、的视频会议,单位里的实时监控等。网内的通讯工具的编程难度稍微小一点,但是,必须要根据不同的用途作不同的设计,往往不同单位需要到通讯工具有着千差万别。社区型的通讯和特定用途通讯:社区型的通讯工具是整个通讯系统的所有的用户共享同一个社区资源,也就是,整个系统在宇宙中就只有一个,而且,所有的授权资源都为所有用户所共享使用,为了区分各个用户的身份,系统往往采用帐号来区分,用密码来识别帐号的使用者是否有权使用。在这种情况下,不同的社区型的网络聊天系统都会构成竞争,一个网络通讯系统的用户数量的增加,一般会导致其他的网络聊天系统的社区用户数量的减少。而且,当一个社区型的聊天系统一旦成功地拥有一定数量的使用者
14、,就可以垄断用户资源,排斥其他的同质的通讯系统。因为,这种系统的最重要的资源就是用户数量。社区型的网络通讯工具典型的有腾讯OICQ ,TOM skype,icq,uc,popo,msn。特定用途的通讯系统实针对不同用途来设计的。比如美国在伊战期间就设计了一个即时聊天工具,专门用于让战场上的战士跟远在美国的亲人直接通讯。有的通讯系统是应用于秘密通讯的,这种通讯系统的所有的信息不会被其他人知道。本拉登团伙就使用了类似这种工具,进行秘密的通讯。虽然这种工具的这种用途有不好的地方(比如,一些高级官员之间进行不法的交易,而又不想让外界所知道),但是,这种工具依然有不少用户使用。第二章:论文主体2.1:总
15、体设计服务器端:本系统目的是架构一个集中式的点对点通讯系统。所以,系统要分为服务器端和客户端。服务器端作为系统服务的核心,为客户段之间的联系起到桥梁和后备的作用:一来要为各个客户端提供注册认证的功能,确保客户端的合法性。二来,要记录所有的客户端的对外的IP地址和端口号(因为,我们用的是UDP的打洞技术来实现点对点的,所以必须由服务器记录客户端的地址,而不是由客户端主动告诉,详细看本文的关于UPD打洞技术的详细说明)。三来,要为各个客户端提供中转服务,虽然我们目的要打造一个不需要服务器作中转的通讯系统,但是,还是要为出现意外的情况下,为客户端之间的通讯提供中转服务。服务器的开发语言是C#,因为它
16、开发比较快速和安全,而且使用的C#就有强大的.NET平台支持。服务器使用的数据库管理系统是SQL Server 2000,同时,我们考虑到试用和测试的时候,为了方便部署,我们的测试版本是使用了xml技术取代了SQL Server 2000,作为系统的数据库(详情看下面关于数据库的详细设计的说明)。服务器端要用数字摘要技术来安全存储用户的密码信息,以防密码数据被盗;(详细请看下文关于安全保存用户密码的详细说明);客户端:客户端直接给用户使用的,所以,界面,使用的方便,要一定的要求,要让用户有耳目一新的感觉,要让一般的人一看到界面就能猜到怎么使用。还有一套是本人在开发服务器的时候,为了方便给服务器
17、作测试而同时做出来的,用的是C#语言开发,它的点就是只要机器安装了.NET运行时,都可以运行,所以,不仅仅是pc机,甚至是智能设备,比如掌上电脑,支持.NET的手机也可以运行。客户端如果只是有文本通讯的功能就过于简单了,所以,我们努力地实现视频和语音的功能,同时希望使用UDP通信的优势,要实现多人同时视频,就像在线会议。当然由于技术的复杂,不是能在短时间内实现的,由于毕业设计的时间太短不够。目前只是做到了简单的视频语音聊天。其他功能,要在以后添加上去。客户端与服务器端的通讯方式:从本质上说,由于客户端与服务器端的通讯是在网络上传递的UDP 和TCP数据包,所以,客户端和服务器的通信就是数据流。
18、既然是数据流,我们必须为了实现高效便捷的通讯选择一种方式(协议)。我们经过多次的思考,参考了国内外的文献,发现了xml强大的功能,于是,决定用xml,同时,在xml的基础上设计自己的通讯协议,专门用于我们的系统之间的通讯。协议的详细设计,看本文关于通信协议的详细说明。2.2系统详细设计2.2.1模块的划分:从最高的层面上看,本系统分为4个模块:服务器运行模块,客户端运行模块,公共运行库,多媒体库。服务器运行模块就是指服务器的程序,它的运行的逻辑。客户端运行模块指的是客户端的程序,运行逻辑。公共运行库,是各个模块需要的一些基本的功能模块的集合,也就是说,里面有服务器模块,客户端模块,多媒体模块都
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 毕业设计 论文 点对点 视频 即时通讯 系统
链接地址:https://www.31ppt.com/p-4152979.html