基于VC 的网络实时通信系统的设计与实现毕业论文
2020-04-13 13:04:55
摘 要
由于计算机网络技术在如今这个时代的发展越来越迅速,随之诞生了许多在网络环境下使用的应用,例如在互联网发布讯息、数据共享以及通信等等。许多国家机关以及教育机构甚至包括用人单位全部都是在某一局域网的限制下产生了交集,在此基础上,再分别接入网络。
本文首先针对网络即时通信系统的功能需求进行了分析,然后按照系统的功能需求对系统的体系结构进行了设计,并针对各个功能模块的执行流程进行了详细的分析。系统采用功能强大的VC 作为开发平台,以C/S模式作为开发模式,客户端实现了用户注册、用户登录、用户信息查询、个人信息修改、查看在线人员、消息传送以及文件传输等功能,服务器端实现了服务启动停止、用户信息管理和数据消息处理等功能。通过xml来对所获取的数据进行简单的存储记忆与管理,在界面设计方面也较人性化,使得操作便捷,功能满足用户所需要的,且方便多方面扩展或是用户私人个性化定制。
关键词:局域网;文本聊天;文件传输;服务器端;客户端;多线程
ABSTRACT
As computer network technology has developed more and more rapidly in this era, many applications that are used in the network environment have been born, such as the release of messages on the Internet, data sharing, and communications. Many state agencies and educational institutions, including employers, all have an intersection under the restrictions of a certain local area network. On this basis, they are connected to the network separately.
This paper first analyzes the functional requirements of the network instant messaging system, then designs the system architecture according to the functional requirements of the system, and analyzes the execution flow of each functional module in detail. The system uses a powerful VC as a development platform, and a C/S model as a development model. The client implements functions such as user registration, user login, user information query, personal information modification, online presence, message transmission, and file transfer. The terminal implements functions such as service startup and stop, user information management, and data message processing.The xml is used to simply store, memorize and manage the acquired data. The interface design is also more user-friendly, which makes the operation convenient, the functions meet the needs of the user, and it is convenient to expand in many aspects or the user's private personalized customization.
Key words: LAN; text chat; file transfer; server; client; multithreading
目 录
1 绪论 1
1.1 系统开发的背景及意义 1
1.2 国内外研究现状分析 1
1.3 论文的研究内容 2
2 开发平台与相关知识 3
2.1 .NET 简介 3
2.2 C/S结构与WINDOWS SOCKETS网络编程 3
3 需求分析和系统设计 5
3.1 系统实现目标 5
3.2系统功能需求 5
3.3 系统目标 5
3.4 系统功能结构 6
3.5 系统流程图 9
4 系统模块详细设计 11
4.1 文本聊天模块实现 11
4.1.1 文本聊天模块概述 11
4.1.2 文本聊天服务器工作原理 11
4.1.3 服务器端部分核心代码 12
4.1.4 文本聊天客户端工作原理 13
4.1.5 客户端部分核心代码 14
4.1.6 P2P文本聊天 15
4.2 文件传输模块实现 18
4.2.1 文件传输模块概述 18
4.2.2 文件传输接收端工作原理 18
4.2.3 文件传输发送端工作原理 19
4.2.4 P2P文件传输 20
4.3 用户管理模块实现 22
4.3.1 用户管理模块概述 22
4.3.2 用户数据模型 22
5 系统测试 23
5.1 系统整体工作流程 23
5.1 系统测试实验结果 23
6 总结 25
参考文献 26
致谢 27
1 绪论
1.1 系统开发的背景及意义
随着电子信息技术的不断发展,计算机和网络已经成为这一时代的“信息基础设施”。人们的生活方式也伴随着网络的普及被慢慢改变,网络可以让我们足不出户便了解外界的事,使得“足不出户便知天下事”这一说法真正得以实现。但是这些通讯方式都有各种局限性,比如费用高、实时性不强、人数限制等。我们渴望一种通讯方式能实现便宜、快捷、并且能同时与多位好友进行交流。这时网络的产生刚好满足了人们对这些的需求。
随着我国改革开放的不断深入和经济的迅速发展,信息、时间、效益等现代化的观念已深入人心,加之近年来我国的突飞猛进的通信网建设,作为现代化的通信手段之一的网络即时通信越来越受到人们的重视。如果采用网络即时通信的形式召开会议,既达到了开会的目的,又不需将大量时间花在旅途上,节约了时间和资金。不仅如此,网络即时通信实时性、交互性好的特点,使它在远程教育、远程医疗等方面也大有用武之地。
1.2 国内外研究现状分析
即时通信,几乎是每一个上网用户都必备的联络工具。即时通信软件除了能够让您迅速地在网上找到自己的朋友和工作伙伴,还可以实时交谈和传递信息,而且,现在不少即时通信软件还集成了文件共享、语音聊天、网络会议等功能。目前有两种架构形式:一种是C/S架构,采用客户端/服务器形式,用户使用过程中需要下载安装客户端软件;另一种采用B/S架构,及浏览器/服务端形式,这种形式的即时通讯软件,接借助互联网为媒介、端无需安装任何软件,既可以体验服务器端进行沟通对话,一般运用在电子商务网站的服务商。
到目前为止,ICQ和MSN是国外比较流行的网络聊天工具。 ICQ是I Seek You(我找你)的缩写,中文名称目前可以称之为“网络呼叫器”。让用户知道网络上的朋友目前有没有在线是这种软件的主要功能,然后用户可以和朋友互相发送消息和资源共享等。
MSN是微软发行的一款比较好的聊天工具,它是和ICQ比较类似的网上即时通信工具,它通过最简单的方法给用户提供很好的的即时通信,使Microsoft Outlook Express(R) 和MSN Hotmail(R)更简单好用。MSN Messenger Service 还可使用户之间的通信变得相对轻松愉快。用户间可以进行单独的聊天,也可以在同一个对话窗口中与多个人进行聊天。用语音取代键盘输入,使用户可以和与世界各地的朋友进行交流,可以把所发的文本消息发送到联系人的手机,也可以进入“聊天室”认识新的朋友。
在中国大部分人都使用腾讯QQ和微信进行网络通信。腾讯计算机系统有限公司成立于1998年11月。1999年2月,腾讯自主开发了基于Internet的即时通信网络工具——腾讯即时通信Tencent Instant Messenger,简称TIM或腾讯QQ。腾讯QQ经过三年时间的发展,到2012年,其用户群成为中国最大的互联网注册用户群,其中QQ用户活跃账户数达到7.117亿。自此腾讯QQ成为中国最大的即时通信服务提供商。
1.3 论文的研究内容
本文对网络即时通信软件的开发过程进行了研究与分析,该软件基于C 语言运行于VC平台上,利用的技术主要是Socket通信,并使用配置文件来管理数据。为实现和方便客户端间通信,在客户端进行了人性化的界面设计,用户可以注册号码、登录界面,并具有发送消息和传输文件的功能。
本文的主要工作包括如下几方面:
(1)针对网络即时通信系统的功能需求进行了分析,将本系统划分为服务器端和客户端两部分。
(2)按照系统的功能需求对系统的体系结构进行了设计,并针对各个功能模块的执行流程进行了详细的分析。
(3)采用功能强大的VC 作为开发平台,以C/S模式作为开发模式,客户端实现了用户注册、用户登录、用户信息查询、个人信息修改、在线人员查看、消息传送以及文件传输等功能,服务器端实现了服务启动停止、用户信息管理和数据消息传输等功能。
2 开发平台与相关知识
2.1 .NET 简介
.NET Framework 是微软公司研发的,是一个功能非常强大的开发平台,他给编程提供了很多不一样的强大的功能以及一些新的工具,这些变动可以让程序员更好的进行服务开发。
2.2 C/S结构与WINDOWS SOCKETS网络编程
我们在日常生活中常用的沟通工具,都是 C/S结构:它拥有前端和后端,前端的任务是处理服务器数据,后端的任务是客户需要请求时判断是否同意请求。有时,会有很多客户在某一时间内向中标的固定的一个服务器提出他们需要请求的请求服务,没当遇到这样的情况就需要这一个服务器来对所接收到的这些请求及时而迅速的作出决定。C/S结构实现在数据库程序里面非常常见的一种实现结构程序方式。甚至相对与当今社会中所存在的随着现在网络的迅捷发展,程序员在设计很多系统的过程中都会使用这种方法所来实现他们需求的构造,它的优势在于前端后端共同完成计算机的工作任务,这样就可以更合理的把系统资源利用起来。并且它的后端可以把一些信息做一次集中处理,任何前端的信息都可以从后端获取。C/S模型换句话说也可以比作一种是用来处理“请求/应答”的关系。如图2.1所示。
图2.1 客户机/服务器通信结构示图
以上是毕业论文大纲或资料介绍,该课题完整毕业论文、开题报告、任务书、程序设计、图纸设计等资料请添加微信获取,微信号:bysjorg。
相关图片展示:
课题毕业论文、开题报告、任务书、外文翻译、程序设计、图纸设计等资料可联系客服协助查找。