XMPP协议

http://xmpp.org/

XMPP(Extensible Messageing and Presence Protocol:可扩展消息与存在协议)是一种基于标准通用标记语言的子集XML的协议,它继承了在XML环境中灵活的发展性。

XMPP(Extensible Messaging and Presence Protocol, 可扩展消息处理现场协议)是 基于可扩展标记语言(XML )的协议,它用于即时消息(IM)以及在线现场探测。它在促进服务器之间的准即时操作。这个协议可能最终允许因特网用户向因特网上的其他任何人发送即时消息,即使其操作系统和浏览器不同。

XMPP中定义了三个角色,客户端,服务器,网关。

XMPP的前身是Jabber ,一个开源形式组织产生的网络即时通信协议。

XMPP目前被IETF国际标准组织完成了标准化工作。

XMPP、IMPP(即时信息和空间协议)、PRIM(空间和即时信息协议)、SIP(SIMPLE)是目前主流的四种IM(IM:instant messaging,即时消息)协议。在这四种协议中,XMPP是最灵活的。

XMPP是一种基于XML的协议,它继承了在XML环境中灵活的发展性。因此,基于XMPP的应用具有超强的可扩展性。经过扩展以后的XMPP可以通过发送扩展的信息来处理用户的需求,以及在XMPP的顶端建立如内容发布系统和基于地址的服务等应用程 序。而且,XMPP包含了针对服务器端的软件协议,使之能与另一个进行通话,这使得开发者更容易建立客户应用程序或给一个配好系统添加功能。

XMPP有两点长处:

(1)使用了XML流技术,XML天然的结构化和可扩展性特性,非常适合小数据量的字符信息交换。

(2)XMPP是一个公开的免费的标准,使得不同组织机构的即时消息可以互通,促使IM技术和应用从垄断走向平民化。

即时通信的同样也离不开大数据量传输,来解决文件分享,多媒体应用等问题。为了解决这些问题,XEP中提出了一些办法。

基于XMPP的即时通信系统主要是Google Talk, 最近Skype宣布支持基于XMPP协议, 实现与XMPP IM的互通, 微软也宣布MSN开始正式正式支持XMPP, facebook也宣布正式支持XMPP。所以,XMPP成为IM的互通比较已经初步确定,并且有一统天下的趋势。

时间: 2024-08-11 09:49:58

XMPP协议的相关文章

XMPP协议、IM、客户端互联详解

导读 对于推送,IM服务器,目前可以使用一些厂家提供的SDK来实现,但是我们的老板又总是担心使用别人的SDK,假如别人的服务出现问题,或者别人偷看咱们的信息,那岂不是出现很大问题了 聊一聊xmpp的服务器openfire和测试客户端spark 1.什么是XMPP 这里说一下XMPP,我在前几节说的sdk汇总文章提到的部分推送,IM的SDK提供商用的是XMPP协议,当然也有是自己实现的协议的,例如腾讯.XMPP简单的来说,就是一个发送与接收之间定义的规则,不过这个协议和我们传统的协议有点不同,它不

XMPP协议的原理介绍

XMPP(可扩展消息处理现场协议)是基于可扩展标记语言(XML)的协议,它用于即时消息(IM)以及在线现场探測.它在促进server之间的准即时操作.这个协议可能终于同意因特网用户向因特网上的其它不论什么人发送即时消息,即使其操作系统和浏览器不同. XMPP的前身是Jabber,一个开源形式组织产生的网络即时通信协议.XMPP眼下被IETF国际标准组织完毕了标准化工作.标准化的核心结果分为两部分: 在IETF 中,把IM协议划分为四种协议,即即时信息和出席协议(Instant Messaging

iOS xmpp协议实现聊天之openfire的服务端配置(一)

今天弄这个openfire服务端的配置直接苦了一逼,不过好在最后终于配置好了.首先感谢@月光的尽头的博客给了我莫大的帮助.切入正题,首先说一下iOS xmpp协议实现聊天openfire服务器配置所需要的东西: 1.openfire软件,我用的是 Openfire 3.9.3,下载地址:http://www.igniterealtime.org/downloads/index.jsp 2.MySql数据库,我用的是mysql-5.1.63,下载地址:http://dev.mysql.com/do

XMPP协议错误码

302 重定向 尽管HTTP规定中包含八种不同代码来表示重定向,Jabber只用了其中一个(用来代替所有的重定向错误).不过Jabber代码302是为以后的功能预留的,目前还没有用到 400 坏请求 Jabber代码400用来通知Jabber客户端,一个请求因为其糟糕的语法不能被识别.例如,当一个Jabber客户端发送一个的订阅请求给它自己活发送一条没有包含"to"属性的消息,Jabber代码400就会产生. 401 未授权的 Jabber代码401用来通知Jabber客户端它们提供的

Tigase开发笔记1:深入认识XMPP协议

要学习基于XMPP协议的IM开发,首先要熟悉XMPP协议本身. XMPP协议的组成 主要的XMPP 协议范本及当今应用很广的XMPP 扩展: RFC 3920 XMPP:核心.定义了XMPP 协议框架下应用的网络架构,引入了XML Stream(XML 流)与XML Stanza(XML 节),并规定XMPP 协议在通信过程中使用的XML 标签.使用XML 标签从根本上说是协议开放性与扩展性的需要.此外,在通信的安全方面,把TLS 安全传输机制与SASL 认证机制引入到内核,与XMPP 进行无缝

基于XMPP协议的aSmack源码分析

在研究如何实现Pushing功能期间,收集了很多关于Pushing的资料,其中有一个androidnp开源项目用的人比较多,但是由于长时间没有什么人去维护,听说bug的几率挺多的,为了以后自己的产品稳定些,所以就打算自己研究一下asmack的源码,自己做一个插件,androidnp移动端的源码中包含了一个叫做asmack的jar. Reader和Writer 在asmack中有两个非常重要的对象PacketReader和PacketWriter,那么从类名上看Packet + (Reader/W

XMPP协议及实践

一.XMPP协议 XMPP (Extensible Messaging and Presence Protocol)是一种基于标准通用标记语言的子集XML的协议,它继承了在XML环境中灵活的发展性.因此,基于XMPP的应用具有很强的可扩展性.XMPP的前身是Jabber. 1.XMPP中的几个重要概念: JID:即Jabber ID.xmpp网络有一个或多个地址jid,  [email protected]/study组成:节点.域.资源(带有资源的jid是完整jid,没有资源的jid是裸jid

xmpp协议的使用

最近学了xmpp感觉学的很乱,想好好整理一下,于是今天找了点时间,把xmpp的搭建和工程的创建一步步进行说明 第一步 xmpp环境的搭建 所需的工具包 搭建环境需要如下所示的包 1 安装xampp-osx 安装完后,运行选择Manager Services 启动所有的Service 注:如果启动失败,请确保安装了javaForOSX2014,也就是java的类库(对于之前没有安装java环境的电脑来说,首先请安装java的环境) 2 当所有工程启动后,在浏览器中输入127.0.0.1,看看是否能

Android Xmpp协议讲解

http://www.cnblogs.com/luxiaofeng54/archive/2011/03/14/1984026.html Android Xmpp协议讲解,布布扣,bubuko.com