- 15
- 0
- 约1.58万字
- 约 19页
- 2019-01-25 发布于安徽
- 举报
.
PAGE
..
内容提要
这次计算机网络课程设计,我们小组做的题目是《点对点数据交换(P2P):实现基于服务器转发的任意多点间的数据共享与交换》,具体来说,我们的目标是做一个简单的局域网聊天程序。
目录
第一部分 需求分析
第二部分 总体设计
第三部分 详细设计
第四部分 参考文献
第五部分 系统编码实现
一 需求分析
P2P,英文Peer-to-Peer的缩写,中译为对等互联或点对点技术。P2P技术可以让用户可以直接连接到其他用户的计算机,进行文件共享与交换,同时P2P在深度搜索、分布计算、协同工作等方面也大有用途。
简单地说,P2P就是一种用于不同PC用户之间,不经过中继设备直接交换数据或服务的技术,它允许Internet用户直接使用对方的文件。每个人可以直接连接到其他用户的计算机,并进行文件的交换,而不需要连接到服务器上再进行浏览与下载。
目前Internet的存储模式是内容位于中心,而P2P技术的运用将使Internet上的内容向边缘移动。这将带来以下改变:
首先,客户不再需要将文件上传到服务器,而只需要使用P2P与其他计算机进行共享;
其次,使用P2P技术的计算机不需要固定的IP地址和永久的Internet连接,这使得占有极大比例的拨号上网用户也可以享受P2P带来的变革。
(1)系统目的,要求
我们小组做的题目是《点对点数据交换(P2P):实现基于服务器转发的任意多点间的数据共享与交换》,具体来说,我们的目标是做一个简单的局域网聊天程序,要实现的功能如下:
1 用户应该可以注册,选择服务器登陆。
2 实现多对多聊天。
客户端程序应该可以实时显示目前登陆该服务器的客户,
有一个简单,便于操作的界面。
(2)操作流程
用户操作流程:
客户端,启动程序
客户端,启动程序
用户登陆,验证用户名,密码,建立连接
启动客户端线程,聊天室
用户
说话
用户
退出
客户退 出
服务器监听
客户端信息流
若
验证
不
正确
则
结束
程序结 束
是否注册
若正确则继续
系统流程图
客户端与服务器端通信流程:
客
客
户
端
Client
端
用户注册到
服务器
登陆系陆,
服务器获取
发送消息,
服务器转发
退出系统
服
务
器
端
server
客户,服务器端通信图
(3)开发工具与开发平台
开发语言:JAVA
开发环境:eclipse 3.2 ,Windows XP
二 总体设计
(1) 系统功能
该系统的主要功能是实现多个用户之间在同一服务器上的客户之间的数据共享。是基于服务器转发的。采用线程池技术,每发起一个连接,就创建一个线程,连接结束后,线程结束,并有一个线程计数器,每隔一定时间就刷新数据。
(2)系统架构
采用C/S模式,各个用户通过服务器转发实现P2P聊天的功能
(3)模块划分
分为两大模块:客户端模块和服务器端模块。
客户端模块的主要功能:
1登陆功能:用户可以注册,然后选择服务器登入聊天室。
2 显示用户:将在线用户显示在列表中。
3接收信息:能接收其他用户发出的信息。
4发送信息:能发出用户要发出的信息。
服务器端模块的主要功能:
1 检验登陆信息:检查登陆信息是否正确,并向客户端返回登陆信息,如信息正确。就允许用户登陆。
2 显示在线状态:将该用户的状态发给各在线用户。
3 转发聊天信息:将消息转发给所有在线的用户。
三 详细设计
(1)系统数据结构
1、服务器:负责处理各个客户端的信息,并负责将信息进行转发。
①、 服务器主要负责响应客户端的的各种信息,包括用户的登陆,用户的注册,各个客户端的信息相互转发。
②、 服务器的实现有以下几个类构成:AppServer类,Connect类,其中AppServer类主要是进行初始化的工作,Connect类负责对用户登陆信息,各个客户端信息的处理。
2、 客户端:用户使用界面,负责接受信息以及与服务器进行通信。
①、 客户端负责为用户提供登陆界面,将信息发送至服务器,接受服务器的反馈信息等一系列的工作。
②、 客户端的实现有以下几个类构成:clientInt类,TimerAction类。
clientInt类进行登陆界面初始化的工作,TimerAction类负责与服务器,其它客户端进行通信。
(2)协议结构
程序采用UDP用户数据报协议(User Datagram Protocol)来实现数据的传送。
用户数据报协议(UDP)是 ISO 参考模型中一种无连接的传输层协议,提供面向事务的简单不可靠信息传送服务。 UDP 协议基本上是 IP 协议与上层协议的接口。 UDP 协议适用端口分辨运行在同一台设备上的多个应用程序。
由于大多数网络应用程序都在同一台机器上运
原创力文档

文档评论(0)