局域网内即时通讯系统的设计.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
局域网内即时通讯系统的设计.doc

局域网内即时通讯系统的设计   【摘要】即时通讯系统(IM)作为一种通讯手段,提供方便快捷的交流方式,通过网络进行在线文字交谈,文件传输、语音对话及进行视频会议等。本文主要研究的是基于TCP协议,利用Socket网络编程技术,采用C#面向对象编程理念实现的即时通讯系统。系统结合C/S模式与P2P模式的优点,采用二者混合的模式作为总体的设计模式,服务器端主要处理与数据库相关的客户请求,客户端与其他客户端进行连接通讯,无需服务器中转,减轻服务器端负担,提高信息传递的实时性和高效性。系统实现申请帐户、验证登陆、即时聊天、用户管理,好友添加、文件传输、聊天记录查询等功能,并使用Visual C#强大的界面处理能力,提供友好的服务器和客户端操作界面。   【关键词】即时通讯TCP SocketC/SP2P   一、背景与研究目的   随着全球信息化进程与网络飞速发展,庞大的用户群影响网络性能、信息阻塞,而MSN、QQ等即时通讯软件严重依赖良好的Internet网络接入条件。而且一些单位企业,特别是政府机构的内部网络和Internet的接入受到严格的限制条件约束,通讯端口关闭或使用网匣来实现内外网的特定服务之间的数据交换。为解决这些矛盾,更高效的完成局域网内协同合作,局域网即时通讯系统的研究显得非常重要。   二、系统需求分析   1、系统实现目标   局域网内即时通讯系统要完成局域网内用户的协同工作,保证交流的实时性和信息传递的准确高效性,方便用户沟通。(1)实现即时通讯的基本功能:即时消息传送、文件传输、好友管理、个人资料管理、语音视频聊天等。为用户提供最基本的通讯功能,并提供一个友好的操作界面。(2)保证信息传递的高效性。适应局域网通讯的特点,保证信息在局域网内传递的高效、稳定、正确。(3)考虑C/S模式下服务器负荷问题。减轻服务器负担,保证服务器稳定工作。(4)系统具有扩展性。用户的需求随着应用的深入而不断变化,具有良好的可扩展性,便于二次开发。   2、系统组成   系统以Visual Studio为开发环境,C#为编程语言,SQL Server为数据库存储数据,采用C/S模式和P2P模式相混合的模式,由IM客户端、IM服务器端两部分组成。服务器端通过操作数据库处理客户端的各种不同请求,客户端根据本地资源或服务器返回的信息完成用户操作。在设计和实现系统各功能模块时,利用Socket网络编程技术,使用Socket套接字助手完成客户机与服务器、客户机与客户机之间的通信,通信时采用TCP协议,保证数据可靠稳定传输。   3、系统的基本功能   (1)服务器端功能。客户端可以向服务器发出13种不同的请求:请求注册、请求登陆验证、请求在线好友列表、请求添加好友、通知服务器添加好友成功、请求删除好友、根据ID或昵称请求某用户信息、请求修改个人资料、请求所有在线用户列表、请求更改个人状态、请求所有好友列表、通知服务器自己的IP和端口、通知服务器自己退出。服务器根据请求命令的不同,给予不同的处理,这些处理通过操作数据库,更新、提取相关信息来实现。   (2)客户端功能。客户端提供友好的用户使用界面,用户通过服务器的登陆验证后进入即时通讯主界面,通过具体操作,实现与好友即时聊天,根据ID或昵称查找其他用户,查找所有在先线用户,添加好友,删除好友,查看聊天记录、给好友传送文件、修改个人信息等。另外,在用户进入主界面的同时,启动侦听线程,用于侦听连入本机的连接请求。请求包括好友上下线通知、即时聊天请求、加为好友请求、文件传输请求、同意加为好友请求,用户修改个人信息请求。   三、系统框架设计   1、服务器端设计。启动服务器,使服务器的侦听端口处于侦听状态。当侦听到用户接入时,接受连接,生成处理该连接的Socket,接受连接传入的请求,创建新线程,接收并解析用户传来的数据,获取请求命令并做出相应的处理,通过socket将处理结果返回给客户端。服务器侦听连接,接收来自客户端的请求命令,根据命令请求的不同给予相应的处理。   2、客户端设计。客户端的设计分为:注册模块、登陆模块、即时聊天模块、文件传输模块、用户管理模块、添加好友模块、侦听模块、定时刷新模块等。   注册模块:负责新用户的注册处理。进入注册模块后,输入个人信息,提交给服务器。服务器接收请求处理后,返回一个用户ID,用户可以凭借该ID进入即时通讯主界面。   登陆模块:对试图进入系统的用户进行权限验证。输入用户ID,密码及服务器IP,根据输入的信息,连接服务器请求登陆,服务器根据提交的数据进行处理并将结果返回给客户端。若通过了验证,客户端将服务器IP,个人IP及端口以及相关信息存入以uid命名的文件夹中。客户端把自己的IP和端口发送给服务器并请求在线

文档评论(0)

ganpeid + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档