xmpp即时聊天学习记录

xmpp的认识.


xmpp官网:http://xmpp.org/

XMPP(可扩展消息处理现场协议)是基于可扩展标记语言(XML)的协议,它用于即时消息(IM)以及在线现场探测。 
XMPP的前身是Jabber,一个开源形式组织产生的网络即时通信协议。 

xmpp特点:


1. **开放**: XMPP协议是自由、开放、公开的,并且易于了解。 而且在客户端 、 服务器 、 组件 、 源码库等方面,都已经各自有多种实现。 
2. **标准**: 互联网工程工作小组( IETF )已经将Jabber的核心XML流协议以XMPP之名,正式列为认可的实时通信及Presence技术。 而XMPP的技术规格已被定义在RFC 3920及RFC 3921 。 任何IM供应商在遵循XMPP协议下,都可与Google Talk实现连接。 
3. **证实可用**: 第一个Jabber(现在XMPP)技术是Jeremie Miller在1998年开发的,现在已经相​​当稳定;数以百计的开发者为XMPP技术而努力。 今日的互联网上有数以万计的XMPP服务器运作着,并有数以百万计的人们使用XMPP实时传讯软件。 
4. **分散式**: XMPP网络的架构和电子邮件十分相像;XMPP核心协议通信方式是先创建一个stream,XMPP以TCP传递XML数据流,没有中央主服务器。 任何人都可以运行自己的XMPP服务器,使个人及组织能够掌控他们的实时传讯体验。 
5. **安全**: 任何XMPP协议的服务器可以独立于公众XMPP网络(例如在企业内部网络中),而使用SASL及TLS等技术的可靠安全性,已自带于核心XMPP技术规格中。 
6. **可扩展**: XML 命名空间的威力可使任何人在核心协议的基础上建造定制化的功能;为了维持通透性,常见的扩展由XMPP标准基金会 。 弹性佳 XMPP除了可用在实时通信的应用程序,还能用在网络管理、内容供稿、协同工具、文件共享、游戏、远程系统监控等。 

7. **多样性**: 用XMPP协议来建造及布署实时应用程序及服务的公司及开放源代码计划分布在各种领域;用XMPP技术开发软件,资源及支持的来源是多样的,使得使你不会陷于被“绑架”的困境。

xmpp体系架构:


•XMPP的基本网络结构,xmpp定义了3个角色
•Client
•Server
•Gateway
•通信能够在这三者的任意两个之间双向发生。服务器同时承担了客户端信息记录,连接管理和信息的路由功能。网关承担着与异构即时通信系统的互联互通,异构系统可以包括SMS(短信),MSN,ICQ等。基本的网络形式是单客户端通过TCP/IP连接到单服务器,然后在之上传输XML。
•客户端利用xmpp(基于TCP/IP)访问server,传输的是XML
Client--------Server----Client

    TCP            TCP       TCP


常见的术语


xmpp:基于xml的可拓展协议.
jabber:xmpp的前身.
openfire:支持xmpp的开源服务器
smack.jar:对xmpp协议封装.方便开发的jar包.
spark.exe:基于xmpp的pc客户端;
asmack.jar:smack.jar的精简版.**专门针对android端开发**

openfire的安装


0. 官网`http://www.igniterealtime.org/`
1. 安装包的类型
    1. exe安装包-->点击exe根据提示安装
    2. zip包解压版-->解压放到指定目录就可以了.
2. 首次运行的配置
    1. 配置语言-->`中文简体`
    2. 配置数据库形式-->`内嵌数据库`
    3. 配置服务器名称-->`server`
    4. 配置管理员账号密码-->`admin admin` 
3. 创建用户
    




你可能感兴趣的:(xmpp即时聊天学习记录)