VC++040-简单的网络通信系统
1.无需注册登录,支付后按照提示操作即可获取该资料.
2.资料以网页介绍的为准,下载后不会有水印.资料仅供学习参考之用.
密 惠 保
摘要:本论文是关于一个通信软件的设计与实现. 首先介绍了该课题的来源和意义, 以及课题中作者使用的原理技术, 包括客户/服务器模式(C/S)结构原理, TCP/IP协议的体系结构等。然后详细分析了系统的整体设计,包括系统的功能介绍、实现思想, 系统的需求分析, 系统通信协议的设计,各个模块的体系结构,并采用UML技术,绘制整体程序结构图、流程图、类图、用例图等。
接下来是介绍了各个子模块的功能、实现思想及它们的流程图、类图、消息流框图等。最后是系统的分析及优缺点及系统的总结和展望。
终端通过实际的通信链路和服务器建立TCP连接。而服务器端是接受并验证客户端连接,动态管理在线用户名单。
关键字:C/S结构;TCP/IP协议;UML技术;网络编程
[来源:http://think58.com]
目 录 [资料来源:http://www.THINK58.com]
第一章 绪 论 1
1.1 课题的来源及意义 1
1.2 项目开发的几个重要环节 1
1.3 作者的主要工作 2
第二章 Socket编程基础 3
2.1 TCP/IP协议 3
2.1.1 TCP/IP参考模型的层次结构 3
2.1.2 TCP/IP协议的通信方式 4
2.2 Socket简介 5
2.2.1 Socket历史 5
2.2.2 Socket的类型 6
2.2.3 客户机/服务器模式 7
2.2.4 阻塞和非阻塞 7
第三章 需求分析 9
3.1 软件开发方案 9
3.3系统初始化(活动图表示) 11
第四章 系统的概要设计 13
4.1 系统的实现思想 13
4.2 通信协议和报文格式 13
4.3 结构、类型和宏 15
4.4 Chat的UI设计 16
第五章 系统的详细设计 18
5.1交互分析 18
5.2 Chat主要的类及其关系 18
5.2.1 CClientDlg 类 18
5.2.2 CClientSocket 类 19
5.2.3 CChatSocket 类 20
5.2.4 CClientApp类和CLoginDlg类 21
5.3 客户端上线(顺序图) 22
5.4 Server的类 22
5.4.1 CServerApp类和CMainFrame类 22
5.4.2 CserverDoc类 22
5.4.3 CServerView类 23 [版权所有:http://think58.com]
5.4.4 CListenSocket类 24
5.4.5 CDataSocket类 24
5.4.6 CSeverlnfoDig类和CAboutDlg类 24
5.5 Chat的实现 25
第六章 小结 38
参考文献 39
[来源:http://think58.com]
[版权所有:http://think58.com]
课题的来源及意义
目前,网上聊天的主要工具已经从初期的聊天室、论坛变为以MSN、QQ为代表的即时通信软件。据统计,迄今为止,全球约有一亿多人使用IM(即时通信)软件在网上交流。中国网民惯用的即时聊天工具——腾讯QQ从诞生到现在,注册用户已超过1.6亿,在线用户最高时超过200万人,而每天独立上线人数更是达到1200多万,拥有活跃用户5500万,几乎覆盖所有中国网民。
腾讯公司的QQ是一个相当流行的即时通信(IM)软件。QQ的基本功能就是QQ用户间的即时信息传输,因此,QQ以及一些类似的软件又称为“聊天软件”。经过不断的发展,QQ的功能已经相当丰富,但QQ最基本和应用最多的功能仍是即时文本传输。
本课题来源与对现代社会高速发达的通讯技术的需求。本课题软件采用客户机/服务器的网络通信的经典模型,整个课题分两大方面加以实现:一方面是服务端软件设计;另一方面是用户端软件设计。完成整个课题分三个阶段完成:
第一阶段:完成整体系统的分析以及通信协议的设计,初步确定整个软件的结构。
第二阶段:实现代码、调试,类结构设计,类图的构建完成客户端和服务器端软件开发工作。
第三阶段:完成对系统的测试分析,组装成品。 [版权所有:http://think58.com]
当今,全球通信产业的两个突出特点体现在:一是公众通信保持增长态势,一些国家和地区增势强劲,但存在发展不均衡的现象;二是宽带通信技术热点不断,研究和应用十分活跃。 本课题所设计的软件以简单的c/s经典网络通信结构为基础有较强的通信能力,特别是文本通信,以信息框的形式显示传输信息,易于用户读取与接收信息。这里需要说明的是,服务器必须有管理用户信息(登陆用户名、密码等)的永久存储介质,例如磁盘文件或数据库,但本课题为简化设计,把这部分省去。但课题所涉及的通信原理并没有省略,利用最基本的TCP通信协议实现客户端和服务器端的文本传输。
[来源:http://think58.com]