即时通讯(IM)几乎变得像电子邮件一样普及,在某些情况下——例如在您青少年的电脑上——其受欢迎程度远远超过电子邮件。但它已经远远超出了青少年封闭的世界,进入了商业领域,在那里它正成为一种有用的沟通工具。
与电子邮件不同的是,即时通讯不存在通用标准,因此用户被迫维护多个帐户——例如,AOL、Jabber、Yahoo 和 MSN。
从最终用户的角度来看,这种决定毫无意义,但不幸的是,这是即时通讯发展过程中的一个人为因素。
然而,即使没有通用的即时通讯标准,互操作性在技术上也不是什么难题。自 1999 年以来,开源社区已经证明了这一点。是否进行互操作实际上是一个商业决策。这归结为满足企业客户的需求。在某些情况下,这意味着互操作性,而在某些情况下,这意味着创建一个封闭或受限的社区。
商业即时通讯提供商为个人、企业和服务提供商提供服务。企业客户的需求源于保护和控制企业通信、将在线状态信息嵌入到其他应用程序和服务中,以及满足其客户(公司员工)需求的能力。
服务提供商的需求略有不同。他们正在寻找新的收入机会以及维护和建立其消费者“社区”的方法。他们认为实时消息传递对其通过新服务增加收入和维护其独特社区(建立游戏社区、为移动用户添加基于位置的服务、提供支持在线状态的移动地址簿、构建移动订阅服务)的目标至关重要。鉴于消费者最终用户不必为即时通讯服务付费,除非即时通讯服务具有可感知的“附加值”,否则他们不太可能愿意开始付费。
就消费者即时通讯服务而言,我们已经知道系统可以相互操作,前提是您是多个地方的注册用户。例如,如果 Jabber 用于即时通讯的开放 XML 协议,即可扩展消息处理和在线状态协议 (XMPP),被采用为消费者系统之间通用的服务器到服务器网关,那么每个系统都会像现有成熟网络上的另一个 XMPP 服务器一样出现。在这种情况下,以及在 XMPP 命名约定下,example123 的 AOL Instant Messenger (AIM) 句柄可以变成 [email protected],而 example123 的 Yahoo 句柄可以变成 [email protected]。
XMPP 可以作为连接每个服务的通用标准,同时对最终用户来说是无缝的。再次强调,以上表明这并非技术难题,而是一个商业决策。
一些即时通讯公司认为,开放式架构(即企业供应商的协作套件,或消费者服务中对客户体验的控制)对其专有特许经营权构成风险。显然,一些公司认为保持其系统封闭更有经济回报。具体而言,一些公司通过广告将其消费者服务货币化,并且一些公司认为其社区具有内在价值。开放其系统将需要他们改变其世界观。
互操作性可能在 AOL 收购 ICQ(“我找你”)的那天成为一个真正的问题——不仅仅是因为 AIM 和 ICQ 是独立且不可互操作的系统,而且因为它让 MSN 和 Yahoo 注意到即时通讯对消费者的价值。通过建立庞大的自有用户群,每个即时通讯服务都将即时通讯世界划分为大型、不可互操作的领域。
统一标准没有立即出现,因为主要的消费者服务在任何标准被提出之前就快速增长,并且市场能够远远领先于标准制定过程。
这部分是由于标准机构的反应不够迅速(主要是因为主要的即时通讯供应商根本没有参与),部分是由于对即时通讯协议所需内容的共同理解需要时间才能成熟。
关于潜在即时通讯标准的大部分工作都发生在互联网工程任务组 (IETF) 内部。为了响应即时通讯日益普及的趋势,IETF 于 1998 年成立了即时消息处理和在线状态协议 (IMPP) 工作组。该小组的任务是开发一种可以作为即时通讯通用标准的协议。IMPP 工作组定义了一组即时通讯的要求——本质上是最终协议必须解决的项目菜单。这些要求封装在 IETF RFC 2778 和 2779 中,它们定义了即时通讯的最小功能集,但没有解决联系人列表、群聊或文件传输等常用功能。(在这一点上,IMPP 工作组不再是即时通讯社区中任何进一步协议开发的重点。)
不幸的是,IMPP 组的成员无法就通用协议达成共识,这使得该领域向 IETF 内的多种方法开放。提出了几个提案,包括一些已经退出竞争的提案。PRIM(在线状态和即时消息处理)是一个早期的提案,它有许多支持者,但现在已经过时(自 2001 年以来就没有对其进行任何工作)。APEX(应用程序交换)是一种基于 XML 的协议,已从 IETF 的考虑中撤回。(大多数 APEX 支持者后来都转向了 XMPP,因为它也是一种 XML 协议。)
今天,多种标准仍在争夺突出地位。主要的竞争者是 XMPP 和 SIMPLE,两者仍在 IETF 内进行讨论。
XMPP 是 IETF 对用于即时通讯和在线状态的开放 Jabber 协议的改编。SIMPLE——用于即时消息处理和在线状态利用扩展的 SIP——基于 IETF 信令协议,即会话发起协议或 SIP。SIMPLE 是一组构建在 SIP 之上的扩展,它将为即时消息处理和在线状态系统提供支持。微软已将其相当大的力量投入到 SIMPLE 的背后。
XMPP。在这两者中,XMPP 是更完整的标准,因为它在 IETF 的工作即将完成,并且在近五年的时间里,已经通过近 1000 万用户(实际上,如果您考虑到开源社区使用 XMPP 与 MSN、ICQ、AOL 和 Yahoo 用户通信,则用户数量远不止于此)的现场验证。
一些标准机构试图通过解决一套严格的、学术上完整的功能集,而不是仅仅定义一个可以随着时间推移而添加的可扩展核心,从而使互操作性问题变得过于复杂。这种方法导致增量实施和部署方面的困难。Jabber 采用 XMPP 的可扩展方法,因此我们能够啃下更小的块并独立解决它们。
XMPP 在通过 IETF 作为拟议行业标准引入之前,就已经成为事实上的互操作性标准。在即时通讯成为一种严肃的商业工具之前,行业领导者——微软、雅虎和 AOL——之间没有进行互操作的巨大压力。XMPP 的创建源于开发人员的挫败感,远早于企业开始认识到即时通讯,也远早于互操作性问题成为企业决策。随着这种情况在过去 18 个月中出现,XMPP 是唯一相对完整的标准。
SIP/SIMPLE。SIMPLE 是一种在很大程度上仍未定义的协议。它目前是一组关于如何在 SIP 平台上构建软件扩展的拟议指南。在这些指南最终批准之前,一些提案获得了普遍的行业接受,而另一些提案仍有待商榷。
SIP 最初旨在协商网络上节点之间的连接。它擅长使一个设备告诉另一个设备采取行动——即,拨打电话——并让接收设备响应并宣布它已收到另一个设备的连接请求,以及它处理该请求的能力——即,将振铃或忙音信号发送回始发电话。作为一种信令协议,SIP 是一种已知的量,并在电信运营商的超高可用性领域得到了充分验证。SIP 的核心目的仅仅是协商连接,然后将该连接传递给后续的通信协议。
然而,SIP 不应与 SIMPLE 混淆。SIMPLE 是一项在 SIP 之上分层在线状态和可用性信息(包括即时消息处理)的努力。
目前,我知道 SIMPLE 的一个安装,在路透社,它是微软即将推出的基于 SIMPLE 的即时通讯服务器(也称为 Live Communications Server 或 LCS)的 Beta 客户。IBM 将 Sametime(更名为 Lotus Instant Messaging and Web Conferencing)用于其即时通讯基础设施,据说支持 SIP 和 SIMPLE。它不是 SIMPLE 实现,而是一个与 SIMPLE 本身不可互操作的专有基础设施。
由于 SIMPLE 尚未通过 IETF,因此对 SIMPLE 坚持的声明很可能指的是对普遍接受的提案的坚持,并使用专有扩展来涵盖协议中仍有待商榷的领域。(微软 MSN Messenger 的首席架构师 Peter Ford 在本期第 18 页的“与 Peter Ford 的讨论”中讨论了 SIP/SIMPLE 的优势。)
无线村庄。在这些努力中,只有无线村庄是 IETF 关注的例外,无线村庄是用于移动电话应用的即时通讯协议,最初由手机制造商爱立信、摩托罗拉和诺基亚开发。无线村庄协议相当完整,但其工作在开放移动联盟 (OMA) 内有所停滞。
传统上,主要的消费者即时通讯服务并未过多关注安全问题。他们没有使用强身份验证、通道加密(如安全套接字层 (SSL))或用户之间的端到端加密。由于他们的协议是专有的并且通常是二进制格式,并且由于他们完全控制服务器和客户端,因此其系统中的安全漏洞很难检测,更不用说防范或修复。另一方面,开放协议是公开的,因此往往更安全。
即时通讯应用程序有几个潜在的安全漏洞。一个是弱身份验证,例如以明文形式发送密码。消费者即时通讯服务都通过网络以明文形式发送密码,这是非常不安全的,因为任何人都可以通过嗅探来自您计算机的流量来获取您的密码。在用户的客户端和服务之间使用 SSL 使这种做法在一定程度上减少了不安全性,并且一些消费者服务正在努力在其系统中添加 SSL 支持。
另一个潜在的安全漏洞来源是在通过网络接收的消息中存在脚本、病毒、蠕虫或其他恶意内容。正是这种类型的漏洞在电子邮件世界中造成了如此多的混乱。该问题主要源于二进制内容的包含,二进制内容看起来像一个文件,但实际上是一个恶意计算机程序。IETF 为即时通讯开发的开放协议通常不是二进制的,这使得隐藏恶意内容更加困难。XMPP 是一种单用途、定义明确的 XML 协议,不能包含随机二进制内容。这有助于防止包含病毒和其他恶意程序。XMPP 中的任何扩展内容都必须通过模式或开放协议定义进行明确定义,并且如果客户端或服务器不理解给定的内容位,则必须忽略它,而不是尝试解析或运行它(这正是电子邮件病毒和蠕虫传播的方式)。
在 XMPP/Jabber 社区中,文件传输是一个受控的过程,并且受到与消息相同的白名单和黑名单的约束。虽然没有什么可以阻止单个用户错误地应用 XMPP 中存在的安全机制,但这些机制的存在使得在网络上传播恶意程序更加困难。另一方面,基于 SIP 的 SIMPLE 允许在消息中包含任何文件类型,这会打开一个潜在的安全漏洞,例如在电子邮件中发现的漏洞。
垃圾邮件也是电子邮件网络上的一个严重问题,但有充分的理由相信它可以在设计良好的即时通讯网络上得到控制。电子邮件世界中垃圾邮件的原因有几个。其中之一是电子邮件地址的“发件人”地址很容易被欺骗,这就是为什么您可能会收到看似来自 [email protected] 等地址的消息,即使该消息实际上并非来自该地址。
电子邮件垃圾邮件如此严重的另一个原因是,不存在用于阻止来自不需要的地址的消息的直接机制。现代即时通讯协议(如 XMPP)具有内置机制,可以非常难以欺骗地址。它们还包含复杂的阻止系统,因此您不会收到来自您的个人“黑名单”上的用户的通信。此外,一些即时通讯协议(如 XMPP)包含订阅的概念:除非您明确批准他们的请求,否则没有人可以在网络上看到您的在线状态。消息阻止的一个标准可以是订阅状态,以便您只会收到来自其订阅请求已获批准的人的消息。诸如此类的机制已构建到高级即时通讯协议中,这些协议是在吸取了电子邮件垃圾邮件的惨痛教训后设计的。
互操作性将会实现。当 Prodigy、CompuServe、MCIMail 和其他专有服务面临互操作的压力时,电子邮件就实现了互操作性,即时通讯也将如此。主要的推动力将来自开始大量部署即时通讯的公司。这些公司将简单地要求与其合作伙伴、供应商和客户进行互操作。
问题是,一些主要的消费者即时通讯服务是否会吸取电子邮件的教训,并同意也进行互操作。一旦有可用于域间通信的通用协议,这个决定自然会变得更容易。在未来几年,一些对互操作性的商业和政治反对意见将会消失。消费者服务可能需要找到其他方式来将其在即时通讯方面的投资货币化,可能基于服务质量、功能差异化,并可能对与其他消息传递服务的网关收费。
从长远来看,专有协议是不可持续的。我们将看到收敛到一个或两个标准,这些标准很可能是 SIMPLE 和 XMPP。XMPP 处于强势地位,仅仅是因为它自 1999 年以来就提供了一整套功能集,并且得到了广泛部署。SIMPLE 仍然不完整,并且尚未提供完整的即时通讯功能集(例如,它不做联系人列表或群聊)。然而,在 IBM 和微软等重量级企业的支持下,它必将取得进展,并可能被广泛接受。SIMPLE 和 XMPP 将共存,两者协议之间有网关,尤其是在混合部署的网络上。(我们已经在一些电信服务提供商中看到了这一点。)
从长远来看,XMPP 可能会作为网络堆栈中的一个新层而根深蒂固,特别是当越来越多的企业和服务提供商了解“在线状态”超出即时通讯的价值,以及如何利用它来促进应用程序、服务和设备之间的通信时。XMPP 已经被用于内容联合、网络管理、工作流应用程序、群件、游戏、纯机器通信等等——没有传统的即时通讯用户参与。XMPP 是一种高度可扩展的 XML 流技术,这一事实使其在许多创新应用中得到应用。这对于 SIMPLE 来说要困难得多,因为它不易扩展。虽然现在即时通讯通常被认为只是聊天,但具有前瞻性的组织越来越多地看到近实时通信的可扩展平台的战略价值。利用技术战略价值的公司将更加成功,这将反过来导致在线状态和消息传递技术的更强劲采用。
随着人们开始以创新方式应用基于即时通讯的技术,我们将看到对即时通讯协议的支持进一步向下移动到网络堆栈,成为基础设施的关键组成部分。像 XMPP 这样的技术可以成为物理网络之上越来越有用的抽象层,就像 HTTP 和 TCP 等协议一样。
即时通讯不会取代电子邮件或 Web。大多数新技术都是补充而不是取代旧的基础设施(就像电视没有消灭广播一样)。然而,鉴于即时性和速度受到高度重视,预计即时通讯将在电子邮件、Web 和语音现在占据主导地位的领域取得重大进展。即时通讯相对无垃圾邮件和更安全的特性将把消息传递从电子邮件中拉开;更快的表单处理和通知将导致许多基于即时通讯基础设施的工作流应用程序;并且在未来几年内,应该会出现使用 SIMPLE 和 XMPP 的语音 over IP (VoIP) 甚至视频的首次全面部署。
说到即时通讯,聊天只是开始。具有创新精神的组织已经看到了这一愿景。技术领导者意识到支持在线状态的实时消息传递基础设施可以实现什么,他们正在积极努力使该愿景成为现实。这种情况今天正在金融服务和游戏等不同领域发生。
即时通讯有两个独特的特点:快速异步消息传递和实时在线状态信息。我们才刚刚开始探索将这些特性混合并添加到各种应用程序和设备意味着什么。例如,在线状态的一个扩展是地理位置信息。一旦您的汽车成为网络上的一个节点,其在线状态信息就可以(在您控制的权限范围内)提供给网络上的其他节点,例如您的车库门。当您的汽车进入 20 英尺范围内时,为什么还要按按钮来打开您的车库门呢?当然,这似乎是对该技术的一种轻率使用,但不要认为它不会发生,仅仅因为它很轻率。将在线状态信息(从基本的开/关状态到关于更复杂状态的扩展在线状态)添加到应用程序和设备将开启我们才刚刚开始思考的大量用途。异步消息传递也是如此。
虽然一些行业权威人士已经接受了微软的论点,即即时通讯游戏已经结束,即时通讯技术的发展方向将基于 SIMPLE,但实际上有数百万人正在使用 XMPP 构建创新应用程序并部署大型消息传递和在线状态服务。为什么?因为他们今天就可以部署,并且知道 XMPP 本身是可互操作、可扩展的,并且正被世界上一些最大的公司所选择。
随着增长,新的挑战将会出现。我们不知道所有的挑战是什么,但是当整个公司和供应链积极使用基于即时通讯的技术,不仅用于聊天,还用于与应用程序交互时,事情肯定会变得有趣。联邦网络是未来几年将受到广泛关注的领域之一,因为公司寻求将实时技术集成到与合作伙伴和供应商的交互中。
另一个挑战将来自网络上各种应用程序的存在。事实上,在未来,大部分即时通讯流量将是应用程序相互交谈的喋喋不休,几乎没有人参与。我们还将看到人们通过这种实时基础设施与应用程序交互——例如,在工作流处理和各种通知系统中。最终的挑战是将在线状态更深入地集成到设备、应用程序和工作方式中。这里存在明显的隐私和安全问题,因此这些问题不仅是技术性的,而且也是社会性的,甚至可能是政治性的。
尽管存在挑战,但即时通讯无疑将盛行。十年前,很少有人将电子邮件或 Web 用作关键的生产力工具,而现在它们已无处不在。即时通讯的情况可能也会如此。在未来 10 年里,我们将想知道我们怎么会认为即时通讯只是青少年聊天,以及我们怎么会没有看到使用通用标准的互操作性是不可避免的?
JOE HILDEBRAND 作为 Jabber 的首席架构师,负责其产品线的技术愿景。他参与了多个 Jabber 开源项目。他是 Jabber 软件基金会的成员,也是 Jabber 理事会的当选成员。他之前曾担任一家区域 IT 咨询公司的首席架构师,在那里他构建了框架。他还设计和实施了用于发送和解析国防部战场消息的系统。他拥有弗吉尼亚理工大学机械工程学士学位。
最初发表于 Queue 第 1 卷,第 8 期—
在 数字图书馆 中评论本文
Eric Allman - 电子邮件身份验证:是什么,为什么,如何?
互联网电子邮件的构想与我们今天生活的世界不同。那是一个小而紧密的社区,我们真的不必太担心坏人。通常,如果有人做错了事,问题可以通过社会手段解决;“排斥”在小社区中非常有效。也许我们应该弄清楚当 Usenet 开始变糟时会发生什么。Usenet 基于一个名为 UUCP 的廉价网络,该网络相当容易加入,因此它让我们体验到当社区变得更大、更分散且更难管理时会发生什么。
Vipul Ved Prakash, Adam O'Donnell - 使用信誉系统对抗垃圾邮件
垃圾邮件无处不在,堵塞了世界各地电子邮件用户的收件箱。它不仅令人讨厌,而且还侵蚀了信息技术进步带来的生产力提升。每天浏览数小时合法电子邮件的员工还必须处理删除大量非法电子邮件的问题。自动垃圾邮件过滤器大大减少了最终用户看到的垃圾邮件数量,但所需的培训量与在没有过滤器帮助的情况下简单删除垃圾邮件所需的时间相当。
John Stone, Sarah Merrion - 即时通讯是即时消息还是即时头痛?
这是一个现实。您的环境中有即时通讯(IM)客户端。您已经认识到它正在消耗越来越多的网络带宽,并且随着微软将 IM 功能构建到其 XP 操作系统和应用程序中,您知道这种情况只会变得更糟。管理层也对通过这种媒介进行个人对话造成的用户生产力损失表示担忧。您已尝试阻止这些对话渠道,但这始终是一场战斗。
Frank Jania - 广播消息:向大众发送消息
我们可以通过 Web 搜索即时访问拍字节的存储数据。关于消息传递,我们拥有前所未有的通信工具,可提供对人员的同步和异步访问。电子邮件、留言板、新闻组、IRC(互联网中继聊天)和 IM(即时消息处理)只是其中的几个例子。这些工具都特别重要,因为它们已成为基本的生产力权利。它们导致了我们沟通方式的根本转变。许多读者可以证明,当邮件服务器宕机或无法访问 IM 时,他们会感到脱节。