论文部分内容阅读
随着Internet的普及和网络技术的迅速发展,现代社会越来越离不开实时信息的交互。IM (Instant Messaging)是一种基于互联网的新兴网络应用,为人类开创了一种新型的沟通方式,实现人与人之间或设备与设备之间信息的准实时(near-real-time)传输。IM最基本的应用形式就是文字聊天,同时可集视频、音频及短信等业务为一体。目前最常用的几种IM软件有腾讯的QQ、微软的MSN、雅虎的yahoo messenger、谷歌的Google talk和Skype等。它们广泛的拥有各自的用户群,但由于它们的协议不是公开的,各个系统之间不能互连,因此阻断了彼此之间的互联互通。近年来,开源组织开发了一种名为Jabber的IM技术,其核心协议XMPP(eXtensible Messaging and Presence Protocol)是一种基于XML (eXtensible Marked Language)语言的协议。XMPP协议的内容是开放的,目前已被IETF确立为IM系统通信协议的标准。本文首先深入地分析了IM系统的原理与技术,然后对XMPP协议的特点、网络模型及通信流程进行了详细的研究,最后在这个基础上设计实现了一个基于XMPP协议的IM系统。本系统运用Eclipse软件作为程序开发工具采用客户/服务器摸式,分别对于客户端系统和服务器端系统进行设计,并采用SQLServer作为系统后台数据库服务器端系统采用模块化的设计,其核心组件包括消息处理、会话管理、认证、感知等。客户端系统采用JAVA SWING技术实现了一个具有友好、美观、图形化用户界面的系统。服务器端系统与客户端系统间通过套接字SOCKET(TCP)连接并采用多线程以满足多用户的请求。同时扩展地传输器组件使得该系统能与非XMPP协议的IM系统进行互通。