毕业设计论文 局域网聊天系统
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
目录
摘要 .................................................................................................................................................. I Abstract........................................................................................................................................... II 1 引言 (1)
1.1 课题背景及意义: (1)
1.2 课题现状 (1)
1.3 本文的主要工作: (2)
1.4开发平台与技术的选择及介绍 (2)
1.4.1 开发环境的介绍 (2)
1.4.2 WINDOWS SOCKETS网络编程接口概述 (3)
1.4.3 VC++6.0开发平台简介 (3)
2 需求分析及可行性研究 (3)
2.1 需求分析: (3)
2.1.1 时间要求 (3)
2.1.2 功能要求 (3)
2.1.3 系统基本流程图 (4)
2.1.4 性能要求 (4)
2.1.5 测试环境规定 (4)
2.2 可行性研究: (4)
3 相关开发技术的原理性说明 (5)
3.1 win32编程原理及MFC框架 (5)
3.1.1 WIN32编程原理 (5)
3.1.2 MFC框架 (6)
3.2 TCP/IP 协议及WINDOWS SOCKETS网络编程接口 (8)
3.2.1 TCP/IP协议简介 (8)
3.2.2 WINDOWS SOCKETS网络编程接口概述 (10)
3.3 多线程编程技术 (11)
3.3.1 进程及线程概述 (11)
3.3.2 Win32 API对多线程编程的支持 (12)
4 总体设计 (13)
4.1体系结构设计 (13)
4.2 功能模块划分 (14)
4.3 数据结构设计 (15)
4.4 用户界面设计 (15)
4.4.1 服务器端显示界面: (15)
4.4.2 客户端显示界面: (16)
5 详细设计及编码实现 (16)
5.1 主框架及用户界面模块详细设计 (16)
5.2 网络扫描模块详细设 (18)
5.3 信息发送模块详细设计 (18)
5.4 信息接收模块详细设计 (20)
6 测试 (20)
结论 (21)
致谢 (22)
参考文献 (22)
摘要
随着计算机网络技术的发展,各种各样基于网络的应用也随之诞生,比如基于互联网的信息发布,通信,数据共享等等。局域网的发展也同样迅速。很多政府机构,企业,学校,都是先以一个统一的局域网联结在一起,再分别接入INTERNET.因此基于局域网的即时通信工具,就这样应运而生了。所以本文提出了一个更加合理的设计,并在WINDOWS平台上加以了实现.在本实现内将客户端和服务端综合在一个程序之内,用多线程实现不同的并行任务。并进行了人性化的界面设计,使用起来更加简单方便,并且功能十分合理,又易于扩展以及个性化定制。本文通过局域网聊天系统来具体共享内存实现进程间的数据交换,利用windows消息机制实现进程间的同步,两种机制结合使用。
关键词:局域网;即时通信;客户端;服务端;多线程;共享内存;信息
Abstract
Along with the high-speed development of the computer network technology, various of applications based on network was born, like information releasing, data sharing ... The development of the LAN is the same fast. Some governments, enterprises and schools constitute a LAN first ,then join into INTERNET. So the instant messenger in LAN was borned. So I make a new design, and implement it on WINDOWS platform. In my implementation the client and the server were integrated in one program with multi thread mechanism. And had a good GUI,it was very easy to use it. And the function is very realizable. At last, it is also easy for expanding.
Key words: LAN, instant messaging, client, server, multi thread,share memory,Information
1 引言
1.1 课题背景及意义:
近年来,随着全球信息化进程的不断发展,网络也在飞速发展。出于高效、快速地处理各种事务的目的,越来越多的企业在其内部使用局域网来进行工作。在内部局域网的帮助下,企业得以简化信息流程,提高信息交换的速度,从而提高工作效率。然而,随着企业规模的扩大,业务量的增加,在局域网上运行的应用越来越多,如知识库、网络会议、数据库应用和数据的同步与备份等,这些应用对局域网的信息吞吐、处理能力的要求也越来越高。这些在企业内部原有局域网设计之初未曾考虑到的新情况的出现使得局域网不堪重负,容易发生信息阻塞,此时,局域网不但不能提高生产效率,反而成为企业发展的瓶颈。
为了解决上述矛盾,人们提出了许多方法。提升网络带宽及增加服务器的吞吐能力是解决此矛盾的一种方法。然而,从企业运行的成本方面考虑,无论是单纯地提升网络带宽或增加服务器的吞吐能力都不能从根本上解决局域网资源紧张的问题,对旧有局域网的大规模硬件改造反而会增加企业的负担。
我在本文中将讨论一种基于Socket的局域网通信工具的设计与实现方法。基于Socket的局域网通信软件可以为企业原有的局域网提供一种良好,安全,快速的通信机制。它的实现无需对企业原有的局域网硬件进行任何改动,具有实现成本低廉的优点,它的使用能有效地降低局域网通信负荷,提高局域网的使用效率,可以很好地解决企业内部局域网的各种通信需求。
基于Socket的局域网聊天工具是此类局域网通信软件的具体实例之一,它很好地诠释了Socket通信的原理,并且在企业内部通信、教学、讨论等应用中都具有一定的实用价值。它具有信息收发速度快,保密性好,占用网络带宽资源低,占用服务器吞吐能力低,易于编程实现等优点。
基于Socket的局域网通信软件应用范围广阔,不但可以处理传统的通信需求,而且也能扩展以适应新型的网络应用,如网络教育,数据影音传输等,拥有广泛的应用前景。
1.2 课题现状
基于局域网的即时通信工具,实际上是互联网即时通信工具的一个小规模版本,广域网上的即时通信工具,如今一般采用UDP或者TCP协议体系来实现,开发技术已经比较成熟,比如较早的ICQ,MSN Messanger,Yahoo 通这些国外开