百度空间 | 百度首页 
 
查看文章
 
Google Wave与XMPP
2009-05-31 21:52
本周发布的Google Wave其中一个亮点就是Google Wave Federation Protocol(需翻墙)通讯协议基于XMPP。摘要如下
  • Federation 简单的解释就是分布式的互联互通,没有中心服务器。比如email, XMPP等系统都是federation的,任何公司没法对它进行控制。Google Wave Federation Protocol协议基于XMPP核心协议XMPP core [RFC3920]来扩展,实现多个wave服务器之间即时的交互通讯。
  • Waves可以理解为一种支持实时通讯的多人文档(multi-user document),它由一到多个wavelets构成。wavelet中包含一到多个具体的document。
  • 服务器之间通讯必须使用TLS(类似SSL)
  • Wave 的创建服务器通常认为拥有此wave, 在协议中称为master, 所有修改及并发操作逻辑由master负责管理。其他外域用户的服务器实际上只起一个代理作用,将本域用户的操作发送到master。多个服务器通讯,协 议中的Client和Server都是相对的,因为实际上双方都是服务器。协议上把发起方视为client。因此从单一的wave对象来看,实际上还是一 个中心服务器的架构。
下图是官方协议介绍中的一个插图,可以看到所有的用户交互都需要通过master(authoritative server)来进行。
Non-Authoritative         Authoritative
Server Server
----------------- -------------
| |
| establish connection |
| ---------------------> |
| |
| send delta operation |
| ---------------------> |
| |
| receive response | All non-authoritative
| <--------------------- | servers with
| participants
| ----------
| establish connection |
| --------------------> |
| |
| send delta operation |
| --------------------> |
| |
| receive response |

| <-------------------- |
  • 从 协议来看,虽然Wave是XMPP的协议扩展,但和XMPP目前的体系并无具体的联系,没有互联互通(wave federation不等于xmpp federation)。没有presence(在线状态), message(消息), roster(联系人)。可能和很多人想像的不一样。它只是用XMPP协议来作为载体。打个比方就像写了一个socket服务程序,用pop3协议(或扩展)来实现多机传送文件,虽然协议是POP3, 但是这个体系跟邮件没什么关系。wave与XMPP的关系也是这样。
  • 从目前来看,Wave不会代替IM,因为它没有对Presence(在线状态)的定义,但用发展的眼光来看,如果一些extension可以把xmpp presence带入的话可能情况就会发生改变,如下所示,比较期待。
participant = XMPP roster
wave = XMPP message
extension = XMPP presence

Google Wave更多介绍可参看我独立blogTim[后端技术]的介绍文章从技术角度看Google Wave,顺便抗议一下CSDN新闻频道抄过去这篇文章不加指向原文链接,明显的违反CC协议。

类别:Xmpp | 添加到搜藏 | 浏览() | 评论 (3)
 
最近读者:
 
网友评论:
1
2009-06-01 14:16 | 回复
Wave可以看成是Web 2.0重新造一个email的轮子


我觉得还是有潜力可挖,就看Google如何挖了。
 
2
2009-06-14 20:02 | 回复
占用贵博客。宣传一下http://Google.wavebbs.cn
 
3
2009-08-18 17:55 | 回复
add me to ur list    wd.gstar@wavesandbox.com
 
发表评论:
姓 名:
网址或邮箱: (选填)
内 容:
验证码: 请点击后输入四位验证码,字母不区分大小写
      

     

©2009 Baidu