通信Java基于TCP_IP协议的聊天工具的设计与开发_毕业设计论文

java开发工具  时间:2021-02-26  阅读:()

毕业设计论文

题目 基于TCP/IP协议的聊天工具的

二级学院 计算机科学与工程

专 业 计算机科学与技术

班 级 10903XXXX

学生姓名 学号 10903XXXXXX

指导教师 职称

时 间 2013. 6

重庆理工大学毕业论文 基于TCP/IP协议的聊天工具的设计与开发

目 录

摘要. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .I

ABSTRACT. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .II

前言. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .- 1 -

第一章概述. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .-2-

1. 1课题背景及意义. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .-2-

1. 1. 1课题背景. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .-2-

1. 1.2课题意义. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .- 3 -

1.2课题现状及发展. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .- 3 -

1.2. 1课题现状. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .- 3 -

1.2.2课题发展. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .-4-

1.3课题内容、 目的及目标. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .-4-

1.3. 1课题内容. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .-4-

1.3.2课题目的和目标. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .-4-

第二章开发技术和平台. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .-6-

2. 1开发技术. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .-6-

2. 1. 1 Java语言. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .-6-

2. 1. 1. 1 Java发展历程. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .-6-

2. 1 1.2 Java特点. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .-6-

2. 1. 1.3 Java与Internet. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .-7-

2. 1.2多线程. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .- 8 -

2. 1.3 TCP/UDP协议. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .- 8 -

2. 1.4 C/S模式. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .- 10-

2. 1.5 Socket. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .- 11 -

2.2开发平台. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .- 11 -

2.2. 1硬件环境. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .- 11 -

2.2.2软件环境. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .- 11 -

2.2.2. 1 Eclipse. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .- 11 -

2.2.2.2 JDK1.6. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .- 12-

2.2.2.3 SQL Server 2005和JDBC. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .- 12-

2.2.2.4 AWT组件. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .- 12-

第三章系统分析与设计. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .- 13 -

3. 1系统分析. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .- 13 -

3. 1. 1系统可行性分析. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .- 13 -

3. 1.2系统功能需求. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .- 13 -

3. 1.3系统实现原理. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .- 14-

3. 1.4各个模块功能详解. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .- 15 -

重庆理工大学毕业论文 基于TCP/IP协议的聊天工具的设计与开发

3. 1.4. 1服务器端结构. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .- 15 -

3. 1.4.2客户端结构. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .- 16-

3.2系统设计. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .- 17-

3.2. 1设计原则. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .- 17-

3.2.2架构设计. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .- 17-

3.2.3功能设计. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .- 18 -

3.2.4数据库设计. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .- 18 -

第四章系统的实现. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .- 19-

4. 1服务器的设计与实现. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .- 19-

4. 1. 1服务器工作流程图. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .- 19-

4. 1.2服务器主界面. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .- 19-

4. 1.3服务器的开启. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .-21 -

4. 1.4服务器的关闭. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .-21 -

4. 1.5服务器管理用户. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .-21 -

4.2客户端的设计与实现. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .-27-

4.2. 1客户端工作流程图. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .-27-

4.2.2客户端登陆主界面. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .-27-

4.2.3客户端注册主界面. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .-28 -

4.2.4客户端聊天主界面. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .- 32-

4.2.5客户端之间聊天. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .- 33 -

4.2.6用户下线. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .- 37-

4.3系统功能特点及改进. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .- 39-

第五章结论. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .-40-

致谢. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .-41 -

参考文献. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .-41 -

文献综述. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .-41 -

重庆理工大学毕业论文 基于TCP/IP协议的聊天工具的设计与开发

摘要

随着时代的进步互联网日益变得普及和大众化。 当今社会互联网几乎覆盖了所有行业 由此可见其在我们的日常生活中所占的地位是显而易见的。而网络能带给我们的是什么呢当然是时效性。通过网络我们可以很轻松的和地球那端的人取得联系。而这个“联系方式”又有很多种了 比如邮件、文字会话、语音会话、视屏会话等。

众所周知的QQ拥有上亿的注册用户在国内即时通讯领域占据了第一的位置 因为其具有强大的功能可以实现文字通讯、语音通讯甚至即时的视屏通讯。除此之外还有诸如微软的MSN、 网易的POPO新浪UC等等。本次毕业设计的内容是基于Java的一款局域网即时通信软件。

Java是一种跨平台的编程语言其具有的良好的网络功能以及对数据库的全面支持毫无疑问能实现本次设计的所有内容。本系统采用C/S模式即客户端/服务器模式客户端与服务器通过So cket传递数据服务器采用多线程技术。利用Ec lip se进行开发。

该软件完成后的主要功能有 点对点、点对多、多对多的聊天服务器对聊天进行统一管理 比如用户注册用户登陆踢出用户等。

关键字 Java Socket 多线程 TCP/UDP C/S

I

重庆理工大学毕业论文 基于TCP/IP协议的聊天工具的设计与开发

AB STRACT

With the progress of era, the Internet become increasingly popularization andpopularization. In today's society, the Internet covers almost all industries, thus it can beseen, it in our daily life of the position is obvious.What is the Internet can bring us?Ofcourse is timeliness.Through the network,we can easily and that the connection to theside of earth.The "contact" and there are many kinds, such as email, voice, video, textsess ion,etc.

Known as QQ,with hundreds of millions of registered users, occupy the firstposition in the field of domestic instant communication,because it has strong function,can achieve text communication, voice communication, even real-time videocommunications.Besides, there are such as Microsoft's MSN POPO,netease, sina UC,and so on. The content of this graduation design is a LAN instant communicationsoftware based on Java.

Java is a cross-platform programming language, it has good network function andthe full support from database there is no doubt that can realize all the content of thisdesign.This system adopts C/S mode, the client/server mode, client and server transferdata through a Socket to the server using multithreading technology.Using Eclipse forde ve lop me nt.

After completion of the software of the main functions are:point to point and pointto chat more,many-to-many, unified management was carried out on the chat server,such as user registration,user login,kicked out users,etc.

Ke ywo rds: Java,S ocke t,mu ltithrea ding,TCP/UDP,C/S

II

重庆理工大学毕业论文 基于TCP/IP协议的聊天工具的设计与开发

前言

当今人们每天依赖着的网络主要是给广大用户提供了即时性的信息。 网络通信则是实现人与人之间交互性沟通最好的方式我们可以通过网络通信实现异地文字传输、语音通话甚至远程视频通话。现在很多公司企业都进行远程视频会议。 网络通信无疑给当今的人们带来了极大的便利。诸如腾讯QQ、微软的MSN、 网易的P O P O新浪UC等众多出类拔萃的聊天系统给我们生活所带来的时效性、便利性是有目共睹的。于是本人怀着对网络通信机制以及原理的极大兴趣尝试利用Java语言编写一个微型的局域网聊天软件可以供多人在一个局域网中同时进行聊天通信。

本课题主要是基于Java这种跨平台的编程语言利用SQL Server 2005数据库进行编写。通过JDB C将Java和数据库连接起来从而我们可以用Java来操作数据库。本课题内容主要是应用数据库来存储用户信息以及用户聊天记录所以相对于其他大型的应用操作起来比较简单。

本次毕业设计所设计的聊天系统应用了C/S(客户端/服务器)模式这也是软件开发中一种通用的开发模式。利用So cket进行通信这也是该聊天系统的关键部分。利用Java中的多线程技术来实现分工明确的操作。最后实现局域网即时通讯功能。

- 1 -

重庆理工大学毕业论文 基于TCP/IP协议的聊天工具的设计与开发

第一章概述

1 . 1课题背景及意义

1 . 1 . 1课题背景

当今处于一个信息爆炸的时代随着Inte rnet的迅速普及和发展人们之间的沟通和交流变得越来越频繁 以至于到了人们每天的日常生活都离不开这个具有高效时效性的网络。人们可以通过各种软件建立即时性的联系 比如人们通常用的Email QQMSN等等。而QQ则是国内人尽皆知的即时性通讯软件 自从1998年腾讯成立以来 QQ的发展几乎是飞跃式的。据2013年5月13日腾讯官方公布显示 目前注册用户中的活跃用户达到了7.519亿的水平最高同时在线人数高达

1.674亿这无疑是一个惊人的数据。鉴于即时通讯软件在当今人们生活中的重要地位 以及本人怀着的对即时通讯软件的通信机制以及其工作原理的好奇尝试用Java语言编写一款局域网即时通信软件以此来实践性的研究通信软件的工作流程。

本人通过网络渠道大概了解了QQ的基本通信原理。大概了解到了QQ是以多个服务器提供服务服务器管理客户端客户端之间UDP通信除非不得已的情况下服务器才通过TC P转发消息。其具体工作方式经过本人理解画出如下1-1示意图

图 1-1腾讯QQ工作模式示意图

而提到大家也非常熟悉的MSN通过网络了解到它是另一种工作模式纯TC P通信而不像腾讯Q Q一样TC P和U DP并用其工作模式如下图1-2所示

-2-

重庆理工大学毕业论文 基于TCP/IP协议的聊天工具的设计与开发

客户端1

图1-2 MSN通信模式示意图

我们会看出MSN这种通信其实就是TCP通信而TCP通信就是通过服务器转发消息来实现客户端之间通信的 当客户端1要和客户端2取得联系时必须通过中间服务器1或者2来实现信息的转发而服务器在这里的角色其实就是一个中转站了。这很像我们的电话网络 中转通信模式。

1 . 1 .2课题意义

研究本课题的主要目的在于了解当前通讯软件的通信模式并试着开发一个能够实现局域网通信的局域网即时通信软件通过这个过程让自己更加了解在Java下实现通信的具体原理和工作流程。

本系统应用了基于Socket局域网通信模式它为我们提供了一种良好的、安全的通信机制而且这个在实践中更好的诠释了Socket的通信的根本原理具有很好的学习和研究价值可以更深入地提高本人对于Socket通信机制的理解和认识。

基于Socket的局域网通信软件在目前来说是相当广泛的不但满足了传统的通信需求还可以扩展其应用范围 以适应更多更大范围的需求。所以其研究价值也是非常可观的。

1 . 2课题现状及发展

1 .2. 1课题现状

基于局域网的即时通讯工具实际上是通讯领域中一个微缩版本的通信软件

- 3-

重庆理工大学毕业论文 基于TCP/IP协议的聊天工具的设计与开发

广域网的即时通讯工具采用TC P或者UDP或者TC P、UDP并用的方式来实现通讯。目前来说开发技术是非常成熟的了 比如腾讯QQ微软MSN新浪UC等这些通讯工具都实现了广域网的即时通讯但他们却也各具特色。比如单一TC P通信的MSN在稳定传输和安全性上是可圈可点的。而腾讯的QQ在功能上则是非常全面的 因为其客户端时间通讯采用UDP方式所以通讯显得非常的流畅和方便也大大减轻了服务器的负荷。这些通讯软件各具特色实现方面各有所长但由于他们在商业运营阶段其实现的具体内部机制我们不得而知但是无论他们是怎么实现的最终也逃不过TC P/IP UDP通讯的本质。

1 .2.2课题发展

鉴于当前这种朝气蓬勃的发展势头在未来的即时通讯领域不管是局域网还是广域网必定会更加的精彩或许在不久的将来通讯模式会更加的发达和方便于人类社会。

1 .3课题内容、 目的及目标

1 .3. 1课题内容

本课题主要是用Java下的Socket研究局域网通信并利用Socket编写一个可以供多人通信的局域网聊天软件此聊天软件分为服务器程序和客户端程序两个独立的工程项目。他们各自负责相应的工作从而实现局域网各个客户端之间的相互通讯。

1 .3.2课题目的和目标

本课题的目的旨在探究TC P/U DP通信的机制和原理由于在大学期间并没有对TC P/U DP通信进行系统的专业的学习所以对于TC P/UD P通信并没有太多的了解而当前的通信网络的广泛应用又让研究其内在的运作模式和机制变得非常有意义的一件事情。 目前来说通信工具是非常的成熟了本次毕业设计做的这个关于TC P/U DP通信的局域网聊天系统也不可能实现相应的经济价值 旨在本人在大学的最后阶段有一个更好的收获能够学到到很多以前没学过的新东西吸取到更多的知识充实自己对于计算机这门学科认识和研究。

-4-

恒创新客(317元)香港云服务器 2M带宽 三网CN2线路直连

恒创科技也有暑期的活动,其中香港服务器也有一定折扣,当然是针对新用户的,如果我们还没有注册过或者可以有办法注册到新用户的,可以买他们家的香港服务器活动价格,2M带宽香港云服务器317元。对于一般用途还是够用的。 活动链接:恒创暑期活动爆款活动均是针对新用户的。1、云服务器仅限首次购买恒创科技产品的新用户。1 核 1G 实例规格,单个账户限购 1台;其他活动机型,单个账户限购 3 台(必须在一个订单...

CloudServer:$4/月KVM-2GB/50GB/5TB/三个数据中心

CloudServer是一家新的VPS主机商,成立了差不多9个月吧,提供基于KVM架构的VPS主机,支持Linux或者Windows操作系统,数据中心在美国纽约、洛杉矶和芝加哥机房,都是ColoCrossing的机器。目前商家在LEB提供了几款特价套餐,最低月付4美元(或者$23.88/年),购买更高级别套餐还能三个月费用使用6个月,等于前半年五折了。下面列出几款特别套餐配置信息。CPU:1cor...

香港CN2云服务器 1核 2G 35元/月 妮妮云

妮妮云的来历妮妮云是 789 陈总 张总 三方共同投资建立的网站 本着“良心 便宜 稳定”的初衷 为小白用户避免被坑妮妮云的市场定位妮妮云主要代理市场稳定速度的云服务器产品,避免新手购买云服务器的时候众多商家不知道如何选择,妮妮云就帮你选择好了产品,无需承担购买风险,不用担心出现被跑路 被诈骗的情况。妮妮云的售后保证妮妮云退款 通过于合作商的友好协商,云服务器提供2天内全额退款到网站余额,超过2天...

java开发工具为你推荐
暴风影音怎么截图怎么截取暴风影音图片缓冲区溢出教程溢出攻击原理伪静态什么是伪静态安卓应用平台哪个手机应用平台的软件比较正版,安全?中小企业信息化小企业需要信息化吗?需要的话要怎么实现信息化呢?畅想中国淄博畅想中国消费怎么样怎么点亮qq空间图标QQ空间图标怎么点亮?什么是云平台什么是云系统?宽带接入服务器宽带接入服务器的五大功能是什么?网络虚拟机虚拟机的网络怎么弄?
域名出售 我的世界服务器租用 国内vps hostigation 瓦工 ion l5639 香港机房托管 php探针 天猫双十一抢红包 国内加速器 eq2 阿里云浏览器 有奖调查 双十一秒杀 hdd 网游服务器 支持外链的相册 如何建立邮箱 网站加速软件 更多