1. 研究目的与意义
即时通信是互联网上非常重要的应用,如QQ、MSN等等。网络的即时通讯系统必须有一个管理服务器来对客户端之间的通信进行管理,当某个客户需要和另一个客户进行即时通讯时,需要通过客户端软件(如QQ客户端软件)先登录到管理服务器上,通过管理服务器的身份验证后,客户端将获得当前在线客户的名单列表,以及每个客户的名称、IP地址等信息,以便客户和其它在线客户建立网络连接进行通信。管理服务器需要时刻与所有在线的客户端保持联系,当有新的客户登录或在线客户离线时,需要通知所有在线的客户端,以便客户端及时更新当前的客户列表。
2. 国内外研究现状分析
目前市面上流行的即时通讯软件主要有:icq、腾讯qq、msn、yahoo!messenger、uc等软件。
icq原是以色列的几名学生开发出来的一款即时通讯工具软件。它利用点对点的方式通讯,任何登录icq服务器的用户,尽管国籍、肤色、文化背景、宗教信仰不同,都能够在网上即时沟通。任何人只要拥有icq号码,就可以与世界各地的人做朋友,它的互动性是web网页、虚拟社区和电子邮件所无法媲美的。在办公室中,同事之间透过icq联络事宜,就算近在咫尺,也无须起身交谈;与远方的亲朋好友交谈,也只是轻轻敲几下键盘就可以解决问题,这种交流在过去几乎是无法想象的。但icq对中文的支持比较差,不适于中国企业中使用。
腾讯qq是国内最时髦的即时通讯工具,其用户的年龄层次从刚开始的中小学生族,发展到现在的几乎所有上网者。每当看到连到网上的一台台电脑上。屏幕上跳跃着一个个各式各样小人头儿,就知道qq上的好友来信了。目前腾讯qq开展了大量的网络增值服务,如为其用户提供网上寻呼、视频聊天、语音聊天、网络硬盘、动态新闻等信息,开通手机上的移动qq服务,同时为每一个qq账号送一个5m的免费邮箱。
3. 研究的基本内容与计划
本系统将实现局/广域网下P2P(Peer-to-Peer)即时通讯功能,C/S模式,主要架构分为三个主模块:两个客户端,服务器端。
客户端先登录到管理服务器上,通过管理服务器的身份验证后,客户端将获得当前在线客户的名单列表,以及每个客户的名称、IP地址等信息,以便客户和其它在线客户建立网络连接进行通信。管理服务器需要时刻与所有在线的客户端保持联系,当有新的客户登录或在线客户离线时,需要通知所有在线的客户端,以便客户端及时更新当前的客户列表。4. 研究创新点
近年来计算机技术的快速发展,特别是计算机网络的发展,越来越深刻的改变了人们生活的方方面面。而在计算机网络技术高速发转的今天,人们的交流方式越来越多,传统的交流方式,如:信件、电报、电话等已经难以满足人们的交流要求,在互联网上即时的和好友取得联系,已经成为当今社会人们主流的联系方式。因此,两台计算机之间进行即时通讯、发送文件等交流方式已经成为必然潮流。
但是,对于目前互联网上比较成功的类似系统(如腾讯QQ),其内部协议及实现方法并不对外公开,本人开发这个课题就是希望通过自己平时知识的积累以及对编程语言的掌握,尽量实现一个功能完整,性能稳定的网络即时通讯系统。同时,可以进一步锻炼自己的动手能力和设计能力。
