`
gaojingsong
  • 浏览: 1200938 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
文章分类
社区版块
存档分类
最新评论

【XMPP 协议介绍】

阅读更多
中文名
可扩展通讯和表示协议
外文名
Extensible Messaging and Presence Protocol
外语缩写
XMPP
功    能
XMPP用TCP传的是XML

 

 

 

 

 

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

 

全称:可扩展通讯和表示协议

简介:可扩展通讯和表示协议 (XMPP) 可用于服务类实时通讯、表示和需求响应服务中的XML数据元流式传输。XMPP以Jabber协议为基础,而Jabber是即时通讯中常用的开放式协议。XMPP is the IETF's formalization of the base XML streaming protocols for instant messaging and presence developed within the Jabber open-source community in 1999

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

XMPP的前身是Jabber,一个开源形式组织产生的网络即时通信协议。XMPP目前被IETF国际标准组织完成了标准化工作。标准化的核心结果分为两部分;

核心的XML流传输协议

基于XMLFreeEIM流传输的即时通讯扩展应用

XMPP的核心XML流传输协议的定义使得XMPP能够在一个比以往网络通信协议更规范的平台上。借助于XML易于解析和阅读的特性,使得XMPP的协议能够非常漂亮。

XMPP的即时通讯扩展应用部分是根据IETF在这之前对即时通讯的一个抽象定义的,与其他业已得到广泛使用的即时通讯协议,诸如AIM,QQ等有功能完整,完善等先进性。

XMPP的扩展协议Jingle使得其支持语音和视频。

 

 

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

 

 

系统特点

客户机/服务器通信模式;

分布式网络;

简单的客户端;

标准通用标记语言的子集XML的数据格式。

 

Xmpp协议优点

1、分布式 
XMPP网络的架构和电子邮件十分相像;XMPP核心协议通信方式是先创建一个stream,XMPP以TCP传递XML数据流,没有中央主服务器。任何人都可以运行自己的XMPP服务器,使个人及组织能够掌控他们的实时传讯体验

2、安全 
任何XMPP协议的服务器可以独立于公众XMPP网络(例如在企业内部网络中),而使用SASL(1)及TLS(2)等技术的可靠安全性,已自带于核心XMPP技术规格中。 
XMPP–>SASL–>TLS–>TCP–>IP

(1)SASL:SASL全称Simple Authentication and Security Layer,是一种用来扩充C/S模式验证能力的机制。在Postfix可以利用SASL来判断用户是否有权使用转发服务,或是辨认谁在使用你的服务器。SASL提供了一个通用的方法为基于连接的协议增加验证支持,而XMPP使用了一个普通的XML名字空间来满足SASL的需要 
(2)TLS:安全传输层协议(TLS)用于在两个通信应用程序之间提供保密性和数据完整性。该协议由两层组成: TLS 记录协议(TLS Record)和 TLS 握手协议(TLS Handshake)。

3、可扩展 
XML命名空间的威力可使任何人在核心协议的基础上建造客制化的功能。 
在XMPP 中,即时消息和到场信息都是基于XML 的结构化信息,这些信息以XML 节(XML Stanza)的形式在通信实体间交换。XMPP 发挥了XML 结构化数据的通用传输层的作用,它将出席和上下文敏感信息嵌入到XML 结构化数据中,从而使数据以极高的效率传送给最合适的资源。基于XML 建立起来的应用具有良好的语义完整性和扩展性。

4、弹性佳 
XMPP除了可用在实时通信的应用程序,还能用在网络管理、内容供稿、协同工具、文件共享、游戏、远程系统监控等,应用范围相当广泛。

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

6、分布式的网络架构 
xmpp协议的实现,都是基于client/server的网络架构。但是xmpp协议本身并没有限定非此架构不可,其和电子邮件的架构非常相似,但是其又不仅限于此,所以其应用范围十分广泛!

0
0
分享到:
评论

相关推荐

    XMPP协议介绍

    XMPP协议介绍

    xmpp协议介绍

    xmpp协议介绍,不错的文档,值得学习

    XMPP_协议介绍

    XMPP_协议介绍,是个ppt 内容蛮多干货,值得一看

    xmpp协议介绍,XMPP体系架构

    XMPP(可扩展消息处理现场协议)是一种基于XML的实时通信协议,最初源自开源项目Jabber。它的设计目的是用于即时消息(IM)服务和在线状态检测。XMPP的核心概念是构建在TCP/IP协议之上的XML流,使得数据在客户端和...

    XMPP协议介绍ppt

    文件传输是XMPP协议的一个重要应用场景,通常通过XEP(XMPP Extension Protocols)进行扩展来支持。例如,XEP-0096定义了文件传输的规范,包括如何发起和接受文件传输请求,以及如何处理文件的长度、起始位置等信息...

    xmpp 协议介绍(rfc3920)

    ### XMPP协议简介 《XMPP:核心协议》(RFC3920)是一份由互联网工程任务组(IETF)发布的文档,该文档详细介绍了Extensible Messaging and Presence Protocol(可扩展消息与呈现协议,简称XMPP)的核心功能。XMPP...

    基于xmpp协议的多端即时通讯方案

    #### 二、Xmpp协议介绍 ##### 1、Xmpp协议概述 XMPP协议是一种基于XML的开放标准协议,用于实时通信和在线状态管理。它最初被称为Jabber协议,后来更名为XMPP。该协议的主要目标是实现不同即时通信服务之间的互...

    基于xmpp协议的多端即时通讯

    二、Xmpp协议介绍 1. Xmpp协议概述:XMPP是一种用于即时消息和在线状态信息的开放标准通信协议,它让不同的网络服务可以互相通讯。 2. Xmpp协议内容:XMPP定义了客户端与服务器、服务器与服务器之间进行即时消息...

    XMPP协议中文参考指南

    XMPP 协议中文参考指南 XMPP(Extensible Messaging and Presence Protocol)是一种基于 XML 的协议,用于实时交换消息和出席信息。该协议的核心功能定义在 RFC 3920 中,包括 XML 流、TLS 和 SASL 加密、流的根...

    基于XMPP协议的Android即时通信系统设计

    #### XMPP协议介绍 XMPP(Extensible Messaging and Presence Protocol)是一种基于XML(Extensible Markup Language)的即时通信协议。它最初由Jabber项目开发,并于2002年成为正式的国际标准。XMPP协议具有开放性...

    XMPP协议中文版

    XMPP协议的核心功能被定义在RFC3920和RFC3921中,分别涉及核心协议和即时消息与出席协议(XMPP-IM)。 通用架构章节阐述了XMPP协议所采用的客户-服务器模型,该模型允许任意两个网络终端通过TCP连接实现结构化信息...

    XMPP协议(可扩展消息出席协议):核心.doc

    ### XMPP协议(可扩展消息出席协议):核心知识点解析 #### 一、绪论 **1.1 概览** XMPP(可扩展消息和出席协议)是一种开放式的XML协议,旨在支持接近实时的消息传递、出席信息以及请求-响应服务。该协议的基本...

    基于Xmpp协议的Android端即时通讯软件,Beem的源码

    Xmpp协议介绍** Xmpp的核心理念是基于XML的数据传输,通过TCP/IP连接在客户端和服务器之间建立通信。协议主要由三部分组成:XMPP核心、XMPP扩展和XMPP实体。XMPP的核心定义了基本的连接管理、路由机制和身份验证,...

    简单的基于XMPP协议的即时通信的实现

    **XMPP协议介绍** XMPP最初设计用于即时消息传递,但其灵活性使其可以扩展到其他领域,如语音和视频聊天、文件传输、群组聊天等。该协议的核心是Jabber协议,由Jabber开源社区开发,并在2002年被IETF标准化为RFC ...

    XMPP协议 C#实例

    在本文中,我们将深入探讨如何使用C#语言实现XMPP协议,并通过一个名为"ConsoleXmpp"的示例项目进行实战演练。这个实例是专为Visual Studio 2010设计的,它能确保在Openfire服务器上实现可靠的通信。 首先,理解...

    XMPP协议中文帮助文档

    这份"XMPP协议中文帮助文档"无疑为那些需要理解和应用XMPP技术的开发者提供了宝贵的资源。 XMPP的核心概念包括以下几个方面: 1. **XML流(XML Stream)**:XMPP的通信基础是XML流,它是一个持续的双向通道,允许...

    xmpp协议相关的jar和中文文档

    1. **XMPP协议基础**: - XMPP的核心是基于TCP/IP连接的客户端-服务器架构,用户通过客户端连接到服务器进行消息交换。 - 协议分为两部分:即时消息(IM)和存在状态(Presence),允许用户发送文本消息和了解其他...

Global site tag (gtag.js) - Google Analytics