互联网点对点聊天文件传输毕业论文

popo聊天  时间:2021-01-30  阅读:()

学海无涯苦作舟!

点对点聊天和文件传输程序

摘要

本程序使用VB语言编程使用Win Sock控件完成的点对点天和文件P2P聊传输程序。可以实现两台机器间互发消息并且有聊天和文件传输记录安全

可靠。

关键词p2p Win Sock聊天和文件传输程序 VB

学海无涯苦作舟!

目录

第一章开发背景. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3

1 .1 P2P的概念. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3

1 .2 P2P的思想溯源. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5

1 .3 P2P内容转移到“边缘”. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7

1 .4重新解读P2 P. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .9

第二章开发环境及实现技术. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .12

2 .1开发环境. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .12

2 .2开发工具简介. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .12

第三章系统设计. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .14

3 .1概要设计. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .14

3 .2详细设计. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .15

第四章系统的实现. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .17

4 . 1主界面的实现. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .17

4 .2点对点聊天模块的实现. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .20

4.2. 1服务器端子模块的实现. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .20

4.2.2客户端子模块的实现. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .23

4.3点对点文件传输模块的实现. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .26

4.3. 1服务器端子模块的实现. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .26

4.3.3客户端子模块的实现. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .31

4.4上网功能模块的实现. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .35

设计心得. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .37

参考文献. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .38

学海无涯苦作舟!

第一章开发背景

P2P是一种技术但更多的是一种思想 有着改变整个互联网基础的潜能的思想。

1.1p2p的概念

P2P是peer-to-peer 的缩写 peer在英语里有“ 地位、能力等同

等者”、 “同事”和“伙伴”等意义。 这样一来 P2P也就可以理解为“伙伴对伙伴”的意思或称为对等联网。 目前人们认为其在加强网络上人的交流、文件交换、分布计算等方面大有前途。

简单的说 P2P直接将人们联系起来 让人们通过互联网直接交互。 P2P使得网络上的沟通变得容易、 更直接共享和交互 真正地消除中间商。 P2P就是人可以直接连接到其他用户的计算机、交换文件而不是像过去那样连接到服务器去浏览与下载。 P2P另一个重要特点是改变互联网现在的以

大网站为中心的状态、重返“非中心化”并把权力交还给用户。 P2P看起来似乎很新但是正如 B2C B2B是将现实世界中很平常的东西移植

到互联网上一样 P2P并不是什么新东西。在现实生活中我们每天都按照P2P模式面对面地或者通过电话交流和沟通。

即使从网络看 P2P也不是新概念 P2P是互联网整体架构的基础。互联网最基本的协议 TCP/IP并没有客户机和服务器的概念所有的设备都

是通讯的平等的一端。在十年之前所有的互联网上的系统都同时具有服务器和客户机的功能。当然后来发展的那些架构在 TCP/IP之上的软件的确采用了客户机/服务器的结构浏览器和 Web服务器 邮件客户端和

学海无涯苦作舟!

邮件服务器。但是对于服务器来说它们之间仍然是对等联网的为例互联以emai l网上并没有一个巨大的、唯一的邮件服务器来处理所有的emai l 而是对等联网的邮件服务器相互协作把 emai l传送到相应的服务器上去。另外用户之间 emai l则一直对等的联络渠道。 当然但是过去的5年里互联网的发展至少从表面上远离了 P2P,互联网上绝大部分的节点也不能和其他节点直接地交流。 Napster正是唤醒了深藏在互联网背后的对等联网。 Napster的文件共享功能在局域网中共享目录也是再平常

不过的事情。但是Napster的成功促使人们认识到把这种“对等联网”拓展到整个互联网范围的可能性。当然在许多人的眼中 Napster并不是纯粹的P2P,它仍然需要一个处于中心协调机制。

事实上 网络上现有的许多服务可以归入 P2P的行列。即时讯息系统譬如ICQ、AOL Instant Messenger、Yahoo Pager、微软的MSNMessenger以及国内的OICQ是最流行的P2P应用。它们允许用户互相沟通和交换信息、交换文件。用户之间的信息交流不是直接的需要有位于中心的服务器来协调。但这些系统并没有诸如搜索这种对于大量信息共享非常重要的功能这个特征的缺乏可能正 是为什么即时讯息出现很久但是并没有能

够产生如Napster这样的影响的原因之一。

另外一个可以归入P2P是拍卖网站譬如eBay人们在总结eBay的模式的时候用了C2C,是不是和P2P有一点类似 eBay就是一个将人们联系的和交易物品的社区用户可以方便的搜索其他用户叫卖的商品。 eBay提供了一些使得交易得以顺利进行的服务但是交易是直接在用户之间进行的。如果将“交易”的概念推广 C2C就是P2P的一个特例这里人们互相交换的是商品。

但如果仔细深究的话 Napster和即时讯息在赋予用户之间直接交流的能力、 eBay使

学海无涯苦作舟!

用户可以直接交易的同时却破坏了服务器端的那种自互联网出现之初就存在的对等联网思想因为它们都需要有一个位于中心的服务器来协调而不是分布在世界上不同地方的、对等联网的许多服务器。这也正是诸如Gnu tel la和Free net不断的宣称它们创造了“纯粹”的P2P完全没有中心服务器的 P2P服务。

1.2p2p的思想溯源

回到互联网的本质。

如果回顾一下我们会发现在 WW出现伊始P2P就是互联网的本质特征之一。人们各自建立网页、互相做链接人们上网是沿着链接冲浪。那时的web是真正的“网” web 。但是当Yahoo!和Lycos建立了搜索引擎和门户站点后人们上网的方式被改变了人们从此到一个地方去获取所有的信息。记得新浪曾经有一段时间说它们是“目标站点”模式但是如果多问一句现在人们一条一条地阅读新浪的新闻在头脑中还有一个

“网”的概念吗最大的问题是这些站点控制了信息的流动、充斥了过时的信息、阻碍了真正的交流或者对于很多人来说另外还有太多的广告。 P2P就是把控制权重新还到用户手中去。 人们通过P2P可以共享硬盘上的文件、 目录甚至整个硬盘。这种能量是非常令人激动的那些费心存储在自己的硬盘上的东西肯定是我们认为最有价值所有人都共享了他们认为最有价值的东西这将使互联网上信息的价值得到极大的提升。是不是有一种和WW刚刚出现的时候同样的激动呢有一点

因为每个Peer都代表了其后的人 基于自组织的网上社区也正在显现。与门户站点从上而下建立社区的方式不同人们将以自发的方式形成社

区。

学海无涯苦作舟!

当人们加入P2P网络的时候所有人都拥有了平等的机会所有人都

拥有了极容易地在网络上创造“内容”的机会。当然真正在网络上创造

或提供内容的人还是少数的据统计 Gnu tel la的用户中仅仅有 2%向其他用户提供了内容 即使在比较活跃的 Use net张贴文章的用户也仅占所有用户的7%但是 P2P第一次使得所有上网的人都拥有了平等的机会。

下面试图用三句话来揭示 P2P的影响

对等联网是只读的网络的终结(Peer-to-peer is the end of theread-only Web)

对等联网使你重新参与互联网(Peer-to-peer al lows you toparticipate in the Internet aga in )

对等联网使网络远离电视 (Peer-to-peer steeri ng the In ternetaway from TV)如上文所言 P2P不是一个新思想从某些角度看它甚至是整个最初创建互

联网的最基本的思想。我们不妨花时间作一点回顾。

互联网的发展于近现代的许多尖端科学技术的发展模式并无不同 即

都是先在军事工业形成再转到民用领域。互联网发源于至今看来也十分新颖的战略思想为了避免敌人的毁灭性武器命中全国的军事指挥控制中心应该怎么办传统的方法是一方面想方设法尽可能地不让敌人知道中心的确切位置另一方面提高中心的抵御打击的能力。但在当今的核武器年代对方有着连一个星球都可以炸毁的核弹再固若金汤的防御措施一

学海无涯苦作舟!

旦受到攻击肯定马上化为乌有。而只要有机密存在总有打探出机密的方法所以靠保密中心所在位置的方法也不是长远之计。在这种情况下美国的军事人员充分发挥逆向思维想到既然不可能长期、有效地保护中心免受攻击那么还不如根本不设中心让每一个基地乃至每一台电脑都能独立运作这么一来等于有了无数中心敌人除非真的将这个星球炸了否则其中一个基地或电脑受损也不影响其他基地或电脑继续发挥作用。正是这种“非中心化”的思想成为形成互联网最基本的概念。 但是许多技术出现之后往往并不会完全按照原先的设计发展服务器 /客户机的架构逐渐变成了互联网的主流浏览变成了人们在互联网上最主要的生存方式。互联网的普通用户似乎在慢慢的退化、和电视观众一样被动地浏览着大网站们创造的内容。人们在网络上的主要活动访问了在这么门户站点上读新闻、参与讨论组、聊天和文件传输。但是这使得设计的互联网的一个特性消失了一一如果 Yahoo因故中断服务如出现什么情况这种假设

不太容易看到但是年初的黑客攻击各大网站造成的混乱似乎可以给我们一点联想的线索。

1.3p2p内容转移到“边缘”

我们来看看P2P的更多激动人心的东西和消除围绕这个新词的种种误

解 以及看看P2P的机会主要在哪儿。

P2P带来的一个变化就是改变了“内容”所在的位置 内容正在从“中心”走向“边缘”也就是说内容将主要不是存在几个主要的服务器上 而是存在所有用户的个人电脑上。

Napster的成功使我们不得不去质疑流传已久的两个断言 “应用服务

学海无涯苦作舟!

提供商(ASP)是未来趋势”和“个人电脑死了” ASP的一个基本假设就是

学海无涯苦作舟!

对于大多数客户来说购买和维护高性能的服务器的成本太高了但是 P2P使得每个人办公桌上的电脑都可以成为“服务器”。用户原来是用台式电

脑准备好数据之后再把数据上载到服务器上去而使用 P2P将不再需要这个过程。 “个人电脑死了”这个断言就是个人电脑将主要用来浏览互联

网、字处理等 因此最简单的客户机就可以满足需求。 P2P使得个人电脑再一次成为“中心”。 P2P使得个人电脑重新焕发活力、不再是被动的客户端而成为具有服务器和客户端的特征的设备个人电脑将重新成为互联网的中心。

互联网的存储模式将由现在的“内容位于中心”模式转变为“内容位

于边缘”模式。从这个角度看 P2P带来了几个改变:

首先客户不再需要将文件上载到服务器而只需要使用 P2P将共享信息提供出去

使得那些拨号上网的用户也可以享受 P2P带来的变革这部分用户在所有用户中占有极大的比重

其次运行P2P的个人电脑不需要固定 IP地址和永久的互联网连接 这

最后 P2P完全改变过去控制互联网的客户机 /服务器模式消除客户机和服务器二者之间的差别。

上文对Napster所遭遇的法律问题有很多讨论 但是换个角度来阐述盗版问题往往也正显示存在大量未能满足的需求。 Napster的惊人成功这里指吸引大量用户而不是获得利润是一种难得的对 P2P的概念上可行性的证明揭示了P2P改变互联网的潜力。直通桌面的宽带网络逐渐成为现

实、个人电脑越来越强大足以胜任“服务器”功能也从另外的方面确保

P2P发挥其能量。

NameCheap域名转入优惠再次来袭 搜罗今年到期域名续费

在上个月的时候也有记录到 NameCheap 域名注册商有发布域名转入促销活动的,那时候我也有帮助自己和公司的客户通过域名转入到NC服务商这样可以实现省钱续费的目的。上个月续费转入的时候是选择9月和10月份到期的域名,这不还有几个域名年底到期的,正好看到NameCheap商家再次发布转入优惠,所以打算把剩下的还有几个看看一并转入进来。活动截止到9月20日,如果我们需要转入域名的话可以准备起来。 N...

香港服务器租用多少钱一个月?影响香港服务器租用价格因素

香港服务器租用多少钱一个月?香港服务器受到很多朋友的青睐,其中免备案成为其特色之一。很多用户想了解香港云服务器价格多少钱,也有同行询问香港服务器的租赁价格,一些实际用户想要了解香港服务器的市场。虽然价格是关注的焦点,但价格并不是香港服务器的全部选择。今天小编介绍了一些影响香港服务器租赁价格的因素,以及在香港租一个月的服务器要花多少钱。影响香港服务器租赁价格的因素:1.香港机房选择香港机房相当于选择...

木木云35元/月,美国vps服务器优惠,1核1G/500M带宽/1T硬盘/4T流量

木木云怎么样?木木云品牌成立于18年,此为贵州木木云科技有限公司旗下新运营高端的服务器的平台,目前已上线美国中部大盘鸡,母鸡采用E5-267X系列,硬盘全部组成阵列。目前,木木云美国vps进行了优惠促销,1核1G/500M带宽/1T硬盘/4T流量,仅35元/月。点击进入:木木云官方网站地址木木云优惠码:提供了一个您专用的优惠码: yuntue目前我们有如下产品套餐:DV型 1H 1G 500M带宽...

popo聊天为你推荐
2g内存价格一个2G内存多少钱?视频制作软件哪个好免费的视频剪辑软件用哪个好?电脑管家和360哪个好电脑管家和360卫士哪个好?手机音乐播放器哪个好手机哪个音乐播放器的音质更好?网页传奇哪个好玩网页传奇哪个好玩 现在的传奇跟以前玩的都不一样了 总感觉没以前的有激情了速腾和朗逸哪个好大众速腾和朗逸哪个比较好?家用!美国国际东西方大学明尼苏达大学(是莫瑞斯分校)和美国东北大学 应该去哪一个 是这个方面的专家回答啊!有偏见性的不要说!51空间登录51空间,怎么添加啊?怎么登陆?群空间登录怎样进入群空间qq网盘在哪里QQ网盘在哪里
info域名注册 联通vps vps侦探 中国域名网 免费顶级域名 金万维动态域名 naning9韩国官网 site5 awardspace cdn服务器 香港主机 轻博客 42u标准机柜尺寸 evssl php探针 免费全能空间 gg广告 中国电信测速112 腾讯云分析 宁波服务器 更多