基于TCPIP的网络聊天工具设计

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

I基于TCP/IP的网络聊天工具设计【摘要】本系统是实现在局域网内多人在线聊天的聊天工具,主要是采用套接字的原理进行编程,将VisualC++6.0作为开发平台,并结合使用VC++中的开发框架MFC。系统是在TCP/IP网络环境下,采用客户机/服务器的模式进行设计,将各任务合理的分配到服务器和客户端,在很大程度减少系统资源的消耗以及通信的开销。该聊天工具主要是设计成类似QQ群的聊天室,其中服务器是接收并处理来自客户端的消息,客户端主要是实现申请新账号、进入聊天室、聊天室内的群聊、用户间的私聊、发送和接收离线消息等主要功能。本文主要针对系统的研究现状、研究目标、开发过程等进行说明,并对各个模块的设计流程进行详细分析。【关键词】TCP/IP,Winsock网络编程,客户机/服务器模式,聊天工具IIDesignfortheNetworkChattingToolBasedonTCP/IP【Abstract】:Thesystemisanetworkchattoolwhichcouldmakemultiusercommunicatesonline.Thesystemismainlyusethesocketprincipaltoprogram.TheprogramplatformisVC++6.0whichhasmuchfunction.AndMFCclasslibraryiscombinedtomakethesystem’sfunctioncometrue.TheServerandClienthasthetaskontheir’ownwhichisawonderfulnetworkmodelcanreducetheconsumptionofsystem.ThechattoolisdesignedtobesimilarwithQQgroupwhereServerreceivesanddealswiththedatagramfromClient.AndtheClientachievesthetarget.Suchasregister,login,sendandreceivedatagramandsoon.Thepaperismainlytoexplaintheresearchstatusandprogramprocess.Andthenitalsoemphasizesonthedesignmethodofeveryblock.【Keyword】:TCP/IP,Winsockprogram,Client/Server,ChatToolIII目录第一章引言.............................................................11.1聊天系统的研究现状...................................................11.2聊天系统的开发目标..................................................11.3聊天系统的开发意义..................................................21.4论文的主要内容......................................................2第二章开发工具和关键技术...............................................32.1开发工具............................................................32.2TCP/IP协议.........................................................32.3客户机/服务器模式...................................................42.4套接字网络编程......................................................52.4.1套接字简介.....................................................52.4.2TCP套接字的应用..............................................62.5MFC(MicrosoftFoundationClass).....................................72.5.1MFC简介.......................................................72.5.2MFC类库.......................................................8第三章、系统设计........................................................93.1设计原理.............................................................93.2系统总体功能结构...................................................103.3建立类模型.........................................................113.3.1服务器端类....................................................113.3.2客户端类......................................................13第四章系统模块详细设计................................................154.1服务器模块..........................................................154.2客户端模块.........................................................154.2.1注册模块......................................................154.2.2登陆模块......................................................154.3文字聊天模块.......................................................16IV4.3.1私聊模块......................................................164.3.2群聊模块......................................................16第五章系统测试........................................................175.1测试目的...........................................................175.2测试内容与结果.....................................................175.2.1服务器测试....................................................175.2.2单元模块测试..................................................185.2.3系统评价:....................................................24第六章总结............................................................256.1毕业设计的总结......................................................256.2经验和感想.........................................................25致谢..................................................错误!未定义书签。参考文献...............................................................26第1页第一章引言1.1聊天系统的研究现状在高速发展的信息时代,人们有众多的通讯手段[1]。比如电话、手机、邮箱等。每个工具都存在不完善的地方,比如邮箱存在实时性的问题,手机、电话等在通信的过程中不能实现一对多的聊天。因此为了填补这个漏洞,开发出网络聊天工具是至关重要的。如今网络聊天工具的发展也逐渐形成规模,它不仅价格便宜、通讯迅速,且能同时与多位好友进行在线聊天。近几年来,网络聊天工具有了更为广阔的市场和前景。据科学统计,截止2009年,在网络聊天工具的使用方面,全球已经达到十亿的用户量,账号的申请量为25亿,我国在该方面的使用数据也在不断增长,截止2013年,我国的使用量为4.68亿,其年增长率为12.7%[2]。网络聊天工具在广域网上具有较为成熟的技术,在开发的过程中,会调用多种协议,但是使用的核心协议是TCP协议或UDP协议。比如国外产品ICQ、MSN、Yahoo通等,国内产品QQ、飞信、新浪UC等。在使用方面,这些工具都各具特色,除了聊天功能,都存在一些增值功能。但是这些产品的开发过程是作为商业机密处理,因此对其编程机制等是很难了解到的。不过从宏观的角度出发,聊天工具之间能够通信都是因为有通信接口的存在,且在开发过程中,调用TCP/IP协议实现相应的功能。而相比来说,局域网的功能实现难度较低,且其存在的网络结构并不是很复杂,因此讨论局域网的聊天工具也是具有一定的研究价值。1.2聊天系统的开发目标本次设计主要是建立在MFC封装下的CSocket网络编程以及TCP/IP协议的基础上,实现局域网内的多人在线聊天。该系统是以QQ群为开发模型。在该方案中,是以VisualC++6.0为开发平台,利用MFC类库,结合套接字的形式,并以对话框的形式进行输入和显示,最终实现了通过服务器中转的文字聊天。在客户端功能模块设计中,存在注册模块、登陆模块、私聊模块、群聊模块以及收发离线消息的模块。第2页1.3聊天系统的开发意义该聊天系统主要是为了保证在局域网环境下,多位用户之间能够有一个共同的平台进行在线聊天,并且能够选择特定好友进行私聊。虽然该系统消耗的系统资源较少,使用简单的网络结构,但是它可以为企业提供一种安全、快速、有效的通信平台,局域网也不会因为聊天系统间的工作增加过多的负荷,且其存在的各种通信需求能够得到相应的处理。在具体实现中,企业无需对局域网硬件做出任何改动,就可以使用局域网聊天系统带来的通信机制。局域网聊天系统的开发实例有多种,其中以Socket套接字作为网络编程接口来开发局域网聊天软件是最为广泛的应用方式,能够处理传统通信中遗留下来的通信问题,并不断适应新型的网络应用[3]。例如在企业内部,套接字通信原理可以很好的应用在教育、娱乐、通信等方面。且采用套接字原理通信的方式在信息的发送和接收方面有较快的速度,在网络带宽方面占用较少的资源,在服务器的吞吐能力方面存在较低的值,能够在最大程度上保证通信的信息安全。1.4论文的主要内容本次聊天系统设计的重点是通信功能。在功能方面,主要是保证用户可以注册号码,登陆界面,进行私聊、群聊,并且能够发送和接收离线消息。在窗口方面,

1 / 30
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功