首页 > 代码库 > UNIX网络编程课程设计

UNIX网络编程课程设计

                      目录

第一章 绪论3

1.1背景3

1.2意义3

1.3本文研究的内容与目的3

第二章 系统分析3

2.1系统需求分析3

2.2系统开发的技术支持4

2.3业务逻辑分析4

2.4可行性分析4

第三章 总体设计4

3.1系统总体概要设计5

3.2系统功能模块设计5

3.2.1Client5

3.2.2Server5

第四章 详细设计与实现5

4.1引言5

4.1.1编写目的5

4.1.2参考资料5

4.2范围5

4.2.1系统主要目标5

4.2.2设计约束,限制5

4.3设计依据6

4.4开发环境6

4.4.1硬件环境6

4.4.2软件环境6

4.5术语,定义和缩略语6

4.5.1术语,定义6

4.5.2缩略语6

4.6模块设计7

4.6.1时序图7

模块client7

4.6.2模块描述7

4.6.3功能7

4.6.4模块设计7

模块server8

4.6.5模块描述8

4.6.6功能8

4.6.7模块设计8

4.7接口设计8

4.7.1客户端TCP套接字实现的主要函数:8

4.7.2服务器端TCP套接字实现的主要函数8

4.7.3客户端实现过程9

4.7.4服务器端实现过程10

4.8代码设计10

客户端:10

服务器端:12

4.9客户端实现:15

4.10服务端实现:16

第五章 系统测试17

5.1用列一:17

5.2用列二:18

5.3用列三18

5.4用列四:19

5.5用列五:20

5.6测试结果评价20

第六章结论21

致谢21

参考文献21


第一章绪论

1.1背景

数据通信和计算机网络推动了现代信息技术的发展,网络信息系统对社会的重要性日益增长,人才市场急需能适用于网络管理、网络维护、网络信息系统、网络的应用、网络设备研发和数据通信增值应用的人才。而我们需要了解各个系统的操作,我们可以在UNIX操作系统下,利用套接字编程接口进行计算机通信程序设计。了解其原理和方法。

1.2意义

通过设计开发,实现基本的网络通信,学习其中过程的实现和原理,提高自身的编程和网络通信的知识水平。

1.3本文研究的内容与目的

熟悉网络套接字编程,实现基本的套接字通信,熟练掌握套接字通信的过程,熟悉利用send()和recv()函数发送和接收信息的过程和原理。实现服务端多线程处理客户端请求。

第二章系统分析

2.1系统需求分析

主要功能

1)客户端程序与服务器进行TCP连接,

2)客户端输入字符data,服务器接收命令并返回日期信息,实现当前系统的日期;

3)客户端输入任意字符串,服务器接收并将字符串反转发送到客户端并显示,实现字符串反转;

4)客户端输入字符串close,服务器端关闭连接,实现服务器端关闭;

5)客户端输入字符串quit,客户端主动关闭连接,实现客户端关闭。

 

2.2系统开发的技术支持

1环境需求VMware Workstation 8.0

             Redhat.Enterprise.Linux.v6.

 Vi编辑器

 Gcc编译工具

2开发语言C语言

 

2.3业务逻辑分析

1)连接模块服务器端创建连接套接字,绑定套接字,监听客户端的连接请求,收到请求进行连接,接收信息,发送信息。

2)日期模块:从控制台获取客户端输入data字符串,发送到服务器,服务器接收该字符串,以该字符串为信号,在服务器端调用当前日期函数,读取当前系统日期,将该日期信息通过send函数发送到客户端,并在客户端显示。

3)字符串反转模块:客户端从控制台获取字符串(除data,close,quit之外),读取字符串长度并显示在客户端,将该字符串发送到服务器端,服务器接收该字符串,并将该字符串反转后发送回客户端,在客户端打印输出反转后的字符串。

4)quit关闭模块客户端从控制台读取quit字符串,将该字符串发送到服务器端,服务器端接收到该字符串后,直接执行服务器端的关闭连接函数,主动关闭服务器端的连接。

5)close关闭模块:客户端从控制台读取close字符串,客户端作出判断,对比是否为“close”,是则客户端主动执行关闭连接函数,关闭连接

2.4可行性分析

技术上:本设计采用C语言程序实现,语言功能强大,技术成熟,可利用的网络编程的函数多。它可以作为工作系统设计语言,编写系统应用程序,也可以作为应用程序设计语言,编写不依赖计算机硬件的应用程序。它的应用范围广泛,具备很强的数据处理能力。在Redhat.Enterprise.Linux.v6和虚拟机上操作,该平台成熟易开发。利用gcc编译工具编译,GCC是大多数类Unix操作系统(如Linux、BSD、Mac OS X等)的标准的编译器,GCC同样适用于微软的Windows。

经济上:Redhat.Enterprise.Linux.v6可在网上下载免费,安装操作简单容易,可在个人pc机上实现,不需要任何费用。

 

详细可下载附件

本文出自 “network” 博客,请务必保留此出处http://zznetwork.blog.51cto.com/9398550/1555178

UNIX网络编程课程设计