`
maxwellens
  • 浏览: 13238 次
  • 性别: Icon_minigender_1
  • 来自: 上海
最近访客 更多访客>>
社区版块
存档分类
最新评论

GTalk所遵循的协议---XMPP

阅读更多
前几天Google发布了一款名叫Google Talk的即时通讯软件,这款软件的买点卖点之一就是XMPP。那,什么是XMPP呢?
   可扩展通讯和表示协议 (XMPP) 可用于服务类实时通讯、表示和需求 - 响应服务中的 XML 数据元流式传输。XMPP 以 Jabber 协议为基础,而 Jabber 是即时通讯中常用的开放式协议。
   尽管 XMPP 没有完全溶合进任何特定的网络架构之中,但是通过客户机/服务器架构,它还是经常被采用,因为客户机需要使用 XMPP 经过 TCP 连接访问服务器,而服务器之间也是通过 TCP 连接进行通信的。服务器可起到 XMPP 通讯的智能提取层的作用。许多客户机直接通过 TCP 连接与服务器相连,并使用 XMPP 来充分使用服务器和任何相关服务所提供的功能。同时连接到服务器的可能有多种资源,它们代表各自已获授权的客户机。对于客户机和服务器之间的连接,推荐使用的端口号为 5222 。网关是一种有着特殊用途的服务器端服务,它的主要功能是在异构通讯系统协议之中解析 XMPP ,同时还要在 XMPP 之中解析返回的数据,如以下各各种服务的网关:电子邮件、国际互联网中继聊天(IRC)、SIMPLE、短信息服务(SMS)和现存的各种即时通讯服务,包括 AIM、ICQ、MSN Messenger 和 Yahoo! Instant Messenger 等。

[separator]


  两个基本概念 — XML 数据流和 XML 节使得较小结构化信息的有效负载可以在敏感于数据传输的实体间进行迅速的异步传输。一个 XML 数据流就像一种容器,可应用在任何两个网络实体间 XML 数据元的交换。XML 节是结构化信息的独立单元,通过 XML 数据流从一个实体发送到另一个实体。
  XMPP 中包含了一种用于防范数据流被窜改和偷听的办法。这种信道加密的办法使用了传输层安全协议(TLS),连同其扩展协议 STARTTLS 。这种扩展与其它协议的扩展是同一模式的,如 IMAP、POP3 和 ACAP 等协议。XMPP 中还包含一种对数据流进行验证的办法,并采用了简单验证和安全层协议(SASL)中 XMPP 的特定框架。

协议结构

  XML 数据流在所有 XML 节的传送会话过程中起到一种包络的作用。我们可以采用一种单纯的方式来表示这个过程:

|--------------------|
| <stream> |
|--------------------|
| <presence> |
| <show/> |
| </presence> |
|--------------------|
| <message to='foo'> |
| <body/> |
| </message> |
|--------------------|
| <iq to='bar'> |
| <query/> |
| </iq> |
|--------------------|
| ... |
|--------------------|
| </stream> |
|--------------------|


Stream attributes: 
| initiating to receiving | receiving to initiating
---------+---------------------------+-----------------------
to | hostname of receiver | silently ignored
from | silently ignored | hostname of receiver
id | silently ignored | session key
xml:lang | default language | default language
version | signals XMPP 1.0 support | signals XMPP 1.0 support


本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/jimlee070128/archive/2007/09/18/1789946.aspx
分享到:
评论

相关推荐

    vb.net Gtalk机器人

    1. **XMPP协议**:GTalk是基于Extensible Messaging and Presence Protocol(XMPP)的即时通讯平台。XMPP是一个开放标准,用于实时通信和信息传递,包括消息、状态更新、文件传输等。开发者需要理解XMPP的框架和基本...

    基于开源jabber(XMPP)架设内部即时通讯服务的解决方案.pdf

    因此,基于XMPP的Openfire服务器和客户端,可以与使用其他协议(如Google的GTalk、ICQ、Yahoo Messenger等)的服务进行通信。这大大提高了即时通讯服务的互操作性,使得用户不必局限于单一的即时通讯平台。 知识点...

    java Gtalk机器人

    Gtalk机器人通常是通过Google的Jabber协议实现的,这是一个开放的标准,用于即时通讯(IM)和实时合作。 在Java中创建Gtalk机器人,你需要以下几个关键知识点: 1. **XMPP协议**:全称Extensible Messaging and ...

    openfire综合介绍

    值得注意的是,Gtalk正是基于XMPP协议构建的,而其他大多数即时通讯软件则采用了专有的协议。XMPP的开放性和标准化意味着它可以被广泛应用于各种场景中,不仅限于个人间的即时通讯,还可以扩展至企业内部沟通、网络...

    openfire处理消息流程及openfire详细信息

    尤其是Gtalk,作为基于XMPP协议的IM应用,展现了协议在即时通讯领域的强大功能。企业利用XMPP协议开发适合自己需求的IM应用,不仅能提升内部沟通效率,还能根据特定场景(如网络游戏)开发更为丰富的功能,如实时...

    sshish:通过 gtalk 的 bash 遥控器

    它依赖于XMPP协议,这是GTalk所使用的即时通讯协议,确保了命令的传输安全。 **实现原理** 1. **服务器端设置**:首先,在需要被远程控制的服务器上安装并配置SSHISH。这包括安装Ruby环境,克隆SSHISH项目(如`...

    信鸽3.0-飞鸽传书升级版

    5.遵循XMPP协议和Gtalk、jabber等IM互通(IETF国际标准组织IM通讯标准),开放兼容。 6.UM服务器实现S2S即时通讯服务集群应用,实现可管理的、高度安全、专属的、可互联互通的企业级即时通讯系统。 7.提供软件插件库...

    飞鸽传书2010 V3.0.100930

    5.遵循XMPP协议和Gtalk、jabber等IM互通(IETF国际标准组织IM通讯标准),开放兼容。 【软件安装使用】 1.飞鸽传书2010为绿色软件,无需安装,拷贝任意目录运行即可,并自动创建快捷方式和相关文件。 2.软件可以根据...

    飞鸽传书局域网传输软件

    5.遵循XMPP协议和Gtalk、jabber等IM互通(IETF国际标准组织IM通讯标准),开放兼容。 【软件安装使用】 1.飞鸽传书2010为绿色软件,无需安装,拷贝任意目录运行即可,并自动创建快捷方式和相关文件。 2.软件可以...

    Openfire_spark安装手册.pdf

    - **Openfire**: 基于XMPP协议实现的即时通信服务器,推荐使用3.6.4版本,该版本是当时最新的版本,提供了稳定的性能和良好的兼容性。 - **Spark**: 即时通信客户端,建议使用2.5.8版本,这是当时最新的发布版,支持...

    飞鸽传书um2010

    4.可作为Gtalk、jabber等IM的客户端,遵循XMPP协议(IETF国际标准IM通讯协议),可登录各种UM服务器实现C2S2S2G的集群互联互通,开放兼容。 5.绿色软件,无须安装,不更改注册表,随意复制应用,更方便更简洁。 6....

    飞鸽传书件

    4. **多协议兼容性**:作为Gtalk、jabber等IM客户端,遵循XMPP协议标准,确保了与其他IM软件的互联互通,增强了软件的适用范围。 5. **跨平台支持**:适用于PC、Web和移动设备等多种平台,提供了更加灵活的访问方式...

    Openfire Control:简单PHP类,以神奇的Openfire聊天服务器为例。-开源

    Openfire是一款基于XMPP协议的实时协作服务器,它允许开发者构建类似Facebook或Gtalk的即时通讯功能到自己的网站中。通过使用这个PHP类,您可以轻松地连接、管理以及控制Openfire服务器,从而为您的用户提供无缝的...

Global site tag (gtag.js) - Google Analytics