文件传输基于p2p的局域网聊天和文件传输软件

文件传输软件  时间:2021-01-12  阅读:()

'

目 录

1引言............................................................................................................................1

1.1课题背景. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1

1.2 国内外现状. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1

1.3本课题研究的迫切性. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1

1.4本文的主要工作. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1

2.需求分析和开发工具................................................................................................1

2.1.需求分析. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1

2.2开发工具. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2

3.系统总体结构设计....................................................................................................3

3.1基本简介. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3

3.2系统功能模块设计. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3

3.3功能模块介绍. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4

4.系统流程与实现.........................................................................................................5

4.1系统设计流程. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5

4.1.1即时聊天功能的流程设计. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5

4.1.2文件传输功能系统实现. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .6

4.2实现. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .8

5.测试..........................................................................................................................10

结 论......................................................................................................................13

参考文献......................................................................................................................13

1 / 15'

1引言

1.1 课题背景

网络的发展促进了通信的发中通信的发展反过来让网络发展的更大更快通信作为我们日常生活中不可或缺的东西正在改变着人们的生活。 比如说QQ即时通信软件就为人们的生活和学习带来了极大的方便。但是人们有时需要和与自己同一个局域网内的用户通信而通信的内容不通过公网来保证通信的安全防止黑客或者一些心怀不轨的人通过非法的手段获取到通信的内容。因为一旦信息泄露了就有可能带来不可估量的损失。在这种情况下基于p2p的即时聊天和文件传输的软件就产生了。

1.2 国内外现状

网络的普及也让一些人获得了获取了更多的信息。通过窃听篡改重放等攻击的手机来阻止或者是窃取别人的有用信息这种事在一些大型的公司里曾经就发生过。现在一些大型的公司自己会去开发适合自己公司的即时通信软件来防止此类的安全事件出现 因此基于p2p的即时聊天和文件传输的应用开发现在仍然受到关注。

1.3 本课题研究的迫切性

基于p2p的即时聊天和文件传输软件的实现能够帮助我们了解基于p2p的软件的实现原理和过程为我们以后开发一些大型的p2p的软件提供了技术上的保证。同时该软件能够用于局域网的通信和传输文件具有一定的实际意义。

1.4 本文的主要工作

本文主要介绍了基于p2p的即时聊天和文件传输的软件的实现原理和实现的过程针对软件的原理和过程进行深入的讲解。 同时本文可以作为基于p2p的即时聊天和文件传输的软件的使用说明书通过具体而详细的阐述让大家更容易的理解基于p2p的即时聊天和文件传输的软件的实现原理和实现的过程。

2.需求分析和开发工具

2.1.需求分析

由于国内外的安全现状不容乐观人们通信的时的信息很容易会被黑客们获取为了在局域网中安全简单的痛信人们就开发了基于p2p的即时通信和文件传输软件。该软件能够实现在局域网内和其他人通信从而保证了通信的安全让人们拥有更加安全和简单的痛信环境。 同时 由于该软件是使用java语言开发具有平台无关性。能够在不同的操作系统的平台下完成即时通信和文件传输的功能。

2.2 p2p的即时聊天和文件传输软件的功能p2p的即时聊天和文件传输软件有以下功能

 1局域网内点对点通信

能够同一时间和多个人在不同的ip和端口上实现通信

'

2简单文件传输

能够传输1M以上的文件3能够在多个平台下实现通信Java平台无关性

2.2开发工具

开发环境 java

开发工具 Myeclipse

TCP协议的工作流程下图所示

UDP协议的工作流程下图所示

3.系统总体结构设计

3.1基本简介p2p的即时聊天和文件传输软件采用tcp和udp协议使用java语言实现基于p2p的即时聊天和文件传输的功能。 同时 由于采用java语言实现具备了在多种平台下运行的优点。该软件主要包括两大部分聊天部分和文件传输部分。聊天部分采用了udp 协议文件传输部分采用了tcp协议。

3.2系统功能模块设计p2p的即时聊天和文件传输软件实现了以下功能

1即时聊天功能

2文件传输功能

3记录查询聊天内容

'

3.3功能模块介绍

即时聊天功能采用udp协议实现。聊天时用户必须输入通信对方的ip和端口号对方只需要知道消息发送方的端口号就能够收到信息。对方收到信息后同样必须输入ip才能回复消息给对方。通信模型如下图

聊天功能实现模型图

文件传输功能是采用tcp协议实现的 tcp协议的面向连接可靠性面向字节流等优点 以及差错控制流量控制等特点保证了文件传输的可靠性。整个流程是文件发送方首先选择文件在选择文件后先发送文件的名称和大小给接收者。接收这如果同意接收文件则由接收者作为客户端向发送端发起连接连接建立后发送端开始传送文件给接收端。实现模型如下图所示

开始传送文件

4.系统流程与实现

4.1系统设计流程

4.1.1即时聊天功能的流程设计

采用DUP协议设计即时聊天功能在即时聊天功能中设计了一个发送端和一个接收端发送端和接收端处于同一个平台中为了使通信双方能够造一次连接中进行多次通信在接收端采用了多线程实现多次通信。

在通信建立的时候通信的发起方首先填写通信的ip地址和port端口然后发送消息给接收者。接受者需要在同样的端口上等待发起者的信息。

发送端

接收端

'

4.1.2文件传输功能系统实现

使用T CP协议实现文件传输功能在文件传输开始时由发送方给接收方发送一个消息消息内容为待发送文件的文件名和长度。接收端收到后判断是不是传送的文件如果是传送的文件接收方择是否接收文件。然后开始传输文件文件传输完成后 自动关闭服务器端和客户端。

发送端

'

文件传输发送端工作流程接收端

'

腾讯云轻量服务器老用户续费优惠和老用户复购活动

继阿里云服务商推出轻量服务器后,腾讯云这两年对于轻量服务器的推广力度还是比较大的。实际上对于我们大部分网友用户来说,轻量服务器对于我们网站和一般的业务来说是绝对够用的。反而有些时候轻量服务器的带宽比CVM云服务器够大,配置也够好,更有是价格也便宜,所以对于初期的网站业务来说轻量服务器是够用的。这几天UCLOUD优刻得香港服务器稳定性不佳,于是有网友也在考虑搬迁到腾讯云服务器商家,对于轻量服务器官方...

小白云 (80元/月),四川德阳 4核2G,山东枣庄 4核2G,美国VPS20元/月起三网CN2

小白云是一家国人自营的企业IDC,主营国内外VPS,致力于让每一个用户都能轻松、快速、经济地享受高端的服务,成立于2019年,拥有国内大带宽高防御的特点,专注于DDoS/CC等攻击的防护;海外线路精选纯CN2线路,以确保用户体验的首选线路,商家线上多名客服一对一解决处理用户的问题,提供7*24无人全自动化服务。商家承诺绝不超开,以用户体验为中心为用提供服务,一直坚持主打以产品质量用户体验性以及高效...

HaloCloud:日本软银vps100M/200M/500M带宽,,¥45.00元/月

halocloud怎么样?halocloud是一个于2019下半年建立的商家,主要提供日本软银VPS,广州移动VDS,株洲联通VDS,广州移动独立服务器,Halo邮局服务,Azure香港1000M带宽月抛机器等。日本软银vps,100M/200M/500M带宽,可看奈飞,香港azure1000M带宽,可以解锁奈飞等流媒体,有需要看奈飞的朋友可以入手!点击进入:halocloud官方网站地址日本vp...

文件传输软件为你推荐
美国免费主机谁告诉我哪有免费的虚拟主机?海外主机租用国外服务器租用有几十块钱一年的么vps虚拟主机请问VPS和虚拟主机有什么不一样,为什么VPS贵那么多。广告的别来!国外域名注册选择海外注册域名有什么好处?网站服务器租用公司想建个网站,请问租服务器按年收费是多少钱ip代理地址代理IP是什么me域名me域名怎么样?虚拟主机软件常见的虚拟机软件有哪几种?上海虚拟主机我想购买虚拟主机,选个品牌。大家给点意见。电信为主。当然肯定要支持多线。大连虚拟主机大连华企智源是做网站的吗?
广州服务器租用 香港vps vps交流 狗爹 windows主机 256m内存 l5639 免备案空间 xen 777te godaddy域名证书 免费mysql 大容量存储器 七夕促销 老左来了 双十一秒杀 空间合租 河南移动m值兑换 香港新世界中心 根服务器 更多