即时通讯的调研报告书.docx
- 文档编号:12376251
- 上传时间:2023-04-18
- 格式:DOCX
- 页数:25
- 大小:274.54KB
即时通讯的调研报告书.docx
《即时通讯的调研报告书.docx》由会员分享,可在线阅读,更多相关《即时通讯的调研报告书.docx(25页珍藏版)》请在冰豆网上搜索。
即时通讯的调研报告书
即时通讯的调研报告书
即时通讯调研报告〔一〕
∙摘要:
本文简述了技术通讯的进展现状,以及进展趋势
1概述
1.1IM技术概念
IM技术全称InstantMessaging,中文翻译〝即时通讯〞,它是一种使人们能在网上识别在线用户并与他们实时交换消息的技术,是电子邮件发明以来迅速崛起的在线通讯方式。
IM的显现和互联网有着密不可分的关系,IM完全基于TCP/IP网络协议族实现,而TCP/IP协议族那么是整个互联网得以实现的技术基础。
最早显现即时通讯协议是IRC〔InternetRelayChat〕,然而惋惜的是它仅能单纯的使用文字、符号的方式通过互联网进行交谈和沟通。
随着互连网变得高度发达,即时通讯也变得远不止谈天这么简单,自1996年第一个IM产品ICQ发明后,IM的技术和功能也开始差不多成型,语音、视频、文件共享、短信发送等高级信息交换功能都能够在IM工具上实现,因此功能强大的IM软件便足以搭建一个完整的通信交流平台。
目前最具代表性的几款的IM通讯软件有MSN、GoogleTalk、YahooMessenger、腾讯QQ等。
1.2IM技术原理和工作方式
典型的IM工作方式如下:
登陆IM通讯中心〔IM通讯服务器〕,猎取一个自建立的历史的交流对象列表〔好友列表〕,然后自身标志为在线状态,当好友列表中的某人在任何时候登录上线并试图通过你的运算机联系你时,IM系统会发一个消息提醒你,然后你能与他建立一个谈天会话通道进行各种消息如键入文字、通过语音等的交流。
从技术上来说,IM的差不多技术原理如下:
1.IM服务器
2.登陆或注销
3.用户A通过列表找到B,用户B获得的消息并与之交谈
4.通过IM服务器指引建立与B单独的通讯通道
第一步,用户A输入自己的用户名和密码登录IM服务器,服务器通过读取用户数据库来验证用户身份,假如验证通过,登记用户A的IP地址、IM客户端软件的版本号及使用的TCP/UDP端口号,然后返回用户A登录成功的标志,现在用户A在IM系统中的状态为在线〔OnlinePresence〕。
第二步,依照用户A储备在IM服务器上的好友列表〔BuddyList〕,服务器将用户A在线的相关信息发送给也同时在线的IM好友的PC机,这些信息包括在线状态、IP地址、IM客户端使用的TCP端口〔Port〕号等,IM好友的客户端收到此信息后将在予以提示。
第三步是IM服务器把用户A储备在服务器上的好友列表及相关信息回送到他的客户端机,这些信息包括也在线状态、IP地址、IM客户端使用的TCP端口〔Port〕号等信息,用户A的IM客户端收到后将显示这些好友列表及其在线状态。
1.3IM通讯方式
1.3.1在线直截了当通讯
假如用户A想与他的在线好友用户B谈天,他将直截了当通过服务器发送过来的用户B的IP地址、TCP端口号等信息,直截了当向用户B的PC机发出谈天信息,用户B的IM客户端软件收到后显示在屏幕上,然后用户B再直截了当回复到用户A的PC机,如此双方的即时文字消息就不再IM服务器中转,而是直截了当通过网络进行点对点的通讯,即对等通讯方式〔PeerToPeer〕。
1.3.2在线代理通讯
用户A与用户B的点对点通讯由于防火墙、网络速度等缘故难以建立或者速度专门慢,IM服务器将会主动提供消息中转服务,即用户A和用户B的即时消息全部先发送到IM服务器,再由服务器转发给对方。
1.3.3离线代理通讯
用户A与用户B由于各种缘故不能同时在线的时候,如现在A向B发送消息,IM服务器能够主动寄存A用户的消息,到B用户下一次登陆的时候,自动将消息转发给B。
1.3.4扩展方式通讯
用户A能够通过IM服务器将信息以扩展的方式传递给B,如短信发送方式发送到B的手机,发送方式传递给B的机,以email的方式传递给B的电子邮箱等。
早期的IM系统,在IM客户端和IM服务器之间通讯采纳UDP协议,UDP协议是不可靠的传输协议,而在IM客户端之间的直截了当通讯中,采纳具备可靠传输能力的TCP协议。
随着用户需求和技术环境的进展,目前主流的IM系统倾向于在IM客户端之间、IM客户端和IM服务器之间都采纳TCP协议。
即时通讯相关于其他通讯方式如、、email等的最大优势确实是消息传达的即时性和精确性,只要消息传递双方均在网络上能够互通,使用即时通讯软件传递消息,传递延时仅为1秒种
1.4兴起的嵌入式IM工具
传统的IM在统治了互联网即时通讯领域长达十年之久,以其日趋稳固的性能,与较强的用户黏着度,至今仍统治着那个庞大的市场。
然而,软件行业的技术精英们,并不满足于此。
他们厚积薄发,一直致力于开发出性能更为优越的即时通讯工具。
因此,在功能上的不断完善,自然是一个必定的进展方向,在Web2.0时代,如何大力增强用户对网站的黏着度,而不仅仅是关于IM的拥附,差不多成为他们的主攻方向了。
因此,嵌入式IM工具,应运而生了。
相对以往的传统的即使沟通工具,它们需要用户下载软件包,需要用户进行安装。
关于拥有IM产品的网站而言,用户在登陆网站后,不能直截了当使用其IM工具,关于流量与用户的黏着度,差不多上有一定阻碍的。
因此在IM与网站相互依存的今天,没有哪家网络公司,情愿将IM工具孤立开来。
因此,目前,一种新型的嵌入式IM工具就应运而生了。
这种IM工具,不需要下载安装,当用户登陆网页后,该IM直截了当嵌套在网页中,能够直截了当使用。
而在功能上,那么一点也不输于传统的IM,不管是传统的文字沟通的速度与效率,依旧近年来越来越成为IM工具必备的音频/视频功能,这种嵌入式IM都能提供专门稳固的传输。
更值得一提的是,因为嵌入式IM是嵌套在网页上的,软件供应商,能够依照网站需求,设计出适合网站风格的IM产品。
而不是像传统的IM工具,千篇一律,毫无个性可言。
目前,这类嵌入式IM在社区、交友、社团及协作等类型的网站上,应用差不多较为广泛。
在Web2.0时代,将发挥越来越重要的作用。
2即时通讯协议
IM(InstantMessaging)正在被广泛地采纳,专门是在公司与它们的客户互动联接方案上。
为了解决即时通讯的标准问题,IETF成立了专门的工作小组,研究和开发与IM相关的协议。
目前IM有四种协议:
即时信息和空间协议(IMPP)、空间和即时信息协议(PRIM)、针对即时通讯和空间平稳扩充的进程开始协议SIP(SIMPLE)以及XMPP。
PRIM与XMPP、SIMPLE类似,但差不多不再使用了。
2.1IMPP
IMPP要紧定义必要的协议和数据格式,用来构建一个具有空间接收、公布能力的即时信息系统。
到目前为止,那个组织差不多出版了三个草案RFC,但要紧的有两个:
一个是针对站点空间和即时通讯模型的〔RFC2778〕;另一个是针对即时通讯/空间协议需求条件的〔RFC2779〕。
RFC2778是一个资料性质的草案,定义了所有presence和IM服务的原理。
RFC2779定义了IMPP的最小需求条件。
另外,那个草案还就presence服务定义了一些条款,如运行的命令、信息的格式,以及presence服务器如何把presence的状态变化通知给客户。
2.2SIP/SIMPLE
SIMPLE是目前为止制定的较为完善的一个。
SIMPLE和XMPP两个协议,都符合RFC2778和RFC2779。
SIMPLE打算利用SIP来发送presence信息。
SIP是IETF中为终端制定的协议。
SIP一样考虑用在建立语音通话中,一旦连接以后,依靠如实时协议〔RTP〕来进行实际上的语音发送。
但SIP不仅仅能被用在语音中,也能够用于视频。
SIMPLE被定义为建立一个IM进程的方法。
SIMPLE在2002年夏季得到额外的信任,目前,微软和IBM都致力于在它们的即时通讯系统中实现那个协议。
SIMPLE小组致力于进程模式的操作,这将提升运行效率,使基于SIP的机制能够进行会议和三方交谈操纵,也考虑到能和以后提供的许多新特性实现兼容并提升表现能力。
有了进程模式,SIMPLE使用SIP来建立一次进程,再利用SDP〔进程描述协议)来实际传输IM数据。
SIMPLE是SIPforInstantMessagingandPresenceLeveragingExtensions的缩写,其目标是将SIP协议应用于IM和出席检测业务。
因为SIP和IMPP所提出的RFC2779中的要求有许多共同之处,加上SIP已受到较广泛的支持而且相对较成熟,故采纳SIP实现IMPP是专门自然的选择。
SIP〔SessionInitiationProtocol〕协议是由IETF提出的一种用于IP网络多媒体通信的应用层操纵协议,其要紧功能是创建、修改、终结和治理多媒体会话或呼叫,SIP协议的语法和语义在专门大程度上借鉴了SMTP和的机制,使用C/S通信模式以及文本形式的消息编码。
本质上,SIP提供以下功能:
①名字翻译和用户定位:
不管被呼叫方在哪里都确保呼叫达到被叫方;执行所有描述信息到定位信息的映射;确保呼叫〔会话〕的本质细节被支持。
②特点协商:
它承诺与呼叫有关的组在支持的特点上达成一致。
③呼叫参与者治理:
呼叫中参与者能够引入其他用户加入呼叫或取消到其他用户的连接,支持呼叫转移和呼叫保持。
④呼叫特点改变:
用户能够改变呼叫过程中的呼叫特点。
例如,某次呼叫开始时被置为"voice2only",但用户能够在呼叫过程中按需开启视频功能,新加入呼叫的第三方也能够开启不同的特点。
多数即时消息和出席检测架构能够不加修改地利用SIP中已有的特性。
例如,一个IM客户机向SIP注册服务器发送REGISTER消息,通知它能够接收IM,注册服务器采纳与SIP系统中其他规那么相同的方法来处理登录要求。
只是,SIP缺乏消息路由机制,不完全符合IMPP,还需对其进行一定的扩展,目前SIMPLE工作组差不多提交了3项RFC和17项草案。
SIMPLE在本质上与SIP相同,没有采纳GET和POST等数据存取方法,而采纳INVITE和BYE等信令方法来启动和终止一次呼叫或会话。
SIMPLE增加了一种称为MESSAGE的新的要求方法来发送一次性的短消息,即寻呼机模式的IM;用SUBSCRIBE发送对出席消息的询问,用NOTIFY传输出席消息。
在连续较长的IM会话中,参与者在一段时刻内交换多条消息,这时就要用到INVITE信令和一种称为"消息会话中继协议"(MSRP)的传输协议;文本通过MSRP传输,话音和视频数据那么和其他SIP应用一样用RTP来传输。
2.3Jabber/XMPP
XMPP是一种基于XML的协议,它继承了在XML环境中灵活的进展性。
这说明XMPP是可扩展的。
能够通过发送扩展的信息来处理用户的需求,以及在XMPP的顶端建立如内容公布系统和基于地址的服务等应用程序。
而且,XMPP包含了针对服务器端的软件协议,使之能与另一个进行通话,这使得开发者更容易建立客户应用程序或给一个配好系统添加功能。
XMPP目前在免费源代码开放JabberIM系统中被广泛采纳。
2002年,那个产品有超过5万的下载量。
XMPP拥有成千的Jabber开发者,以及大约数万台配置的服务器和超过百万的终端用户。
在XMPP能够成为标准前,还需要努力克服它本身的缺点。
关于网络协同工作者而言,需要加强安全性和互连性。
XMPP〔ExtensibleMessagingandPresenceProtocol,可扩展的消息和出席协议〕是一种基于XML的传递出席信息〔Presence〕和消息路由的协议,它为不同的网络之间互联提供了一种安全而简单的编程语言,是Jabber系统〔一种开放源代码的IM系统〕的基础,IETF成立了XMPP工作组并已公布了假设干项草案。
XMPP路由的核心是一种类似于电子邮件的逻辑编址方案,在Jabber系统中,这一地址被称为JabberID,其形式为。
XMPP的工作方式也与简单邮件传输协议〔SMTP〕相似,地址中的域〔有相应的服务器〕能够用一般的DNS系统来解析,由服务器来转发用户的消息。
与SMTP不同的是,节点〔node〕部分既能够表示用户,也能够表示应用或服务;resource是连接识别标记,承诺同一个客户在同一个时刻多次登录服务器。
当节点连接到一台服务器时,它们利用来自本地名目系统的证书进行鉴权、指定资源并通知服务器向订阅者(比如说列在好友名单上的用户)发出出席公告。
服务器之间能相互发觉、连接和认证,不管某节点的本地服务器〔域〕是什么,只要不违反保密或业务规那么,它都能够通过服务器的转接而连接到XMPP社区中的任意其他节点。
每个XMPP节〔stanza〕差不多上标有JID地址的XML结构化数据块,节的类型能够通过恰当的命名空间XML结构化数据加以扩展。
正如W3C是Web格式的标准化主体,Jabber软件基金〔JSF〕是XMPP节类型扩展的标准化主体,只是,任何其他组织都能够按需确定事实上的标准格式。
XMPP将出席〔Presence〕和相关的消息嵌入XML结构化数据之中,使之能有效地路由至最合适的资源,起到了通用的XML结构化数据传输层的作用,这种层次结构最大程度地简化了客户端的实现。
JSF提供了到其他IM系统的网关规范,只要网关支持,客户端就能够与其他IM系统交流。
说明:
综合考虑功能、扩展能力和成熟度等各方面特点,两种协议各有特色,其对比如表1SIMPLE与XMPP协议的比较所示。
表1SIMPLE与XMPP协议的比较
SIMPLE XMPP
基础 SIP协议 XML协议
成熟度 较为成熟 新兴技术
功能支持 各种即时消息通信 支持各种即时消息通信
扩展能力 一样 专门强
主流厂商的支持 微软、IBM、SUN Oracle、Google
前景 将领先广泛应用 后来居上
SIP差不多在网络等领域得到了较广泛的应用,显现了大量的产品和方案,对现有SIP系统进行一定的修改后就能支持SIMPLE,这是SIMPLE最大的优势。
从产业上看,微软差不多选择SIP作为事实上时通信策略并在WindowsXP,PocketPC和MSNMessenger中进行了部署,IBM也在大力地推进SIP的应用。
微软公司宣布其LiveCommunicationsServer2005将使用户能够与雅虎,AOL的即时通信服务的用户互联互通,进一步增强了SIMPLE作为标准化IM协议的强势地位。
XMPP的优势在于灵活和开放。
它具有XML带来的与生俱来的扩展性,任何人都能够用扩展的XML信息来处理客户的专门要求并在XMPP基础上构建新的应用。
例如,CRM或别的企业应用系统能够作为一个XMPP的客户端注册到服务器上,在治理员许可的前提下,用户或别的应用能发觉CRM的状态并向其发送数据、对其进行操作。
利用XMPP作为通用的传输机制,不同组织内的不同应用都能够进行有效的通信。
由于XML专门易穿过防火墙,因此用XMPP构建的应用不易受到防火墙的阻碍。
从产业上看,XMPP起源于开放源代码的Jabber系统,现在已有了大量使用该协议的IM系统,目前SUN和Oracle差不多在它们的IM系统中使用XMPP,而Google也可能在其IM系统中使用这一协议。
SIMPLE和XMPP各有其优势,前者有较成熟的应用基础和主流IM服务商的支持,在以后一段时刻内可能会成为要紧的标准化IM协议;后者发挥了XML的优势,随着XML的进展,它的应用会越来越普及。
在相当的一段时刻内仍会显现两种标准系统共存的状况,因此这两种系统之间的互联就成了一个新的问题。
只是,XMPP支持网关扩展,用XMPP2SIP网关能够实现两类系统间的互联。
3WebIM实现技术
3.1基于插件的技术
如ActiveX,插件相对稳固,但插件需要用户自己承诺并下载安装,而大多数用户担忧安装了黑客软件或插件对运算机系统不行而不情愿安装,同时上网助手等软件也拦截插件,导致专门多用户无法使用。
另外,ActiveX受平台限制,只能在IE下使用。
3.2基于Flash的技术
典型的如Yahoowebmessenger,结合Flash和Ajax,
3.3纯粹的基于的技术
前端使用Ajax的WebIM:
meebo,ebuddy,ILoveIm,MSNWebMessenger,KoolIM等。
后台使用comet的WebIM:
meebo,gtalk等。
只有ebuddy支持wap
4服务器端实现方式
优点
循环的面向连接的方式 调试、编程、爱护、修改容易
1.服务器一次只能处理一个客户机的要求,可能造成客户端要求的拒绝或响应变慢;
2.客户机无法明白服务器是否收到了其它客户机发给它的信息;
3.服务器对客户机的处理是按照连接要求的先后顺序进行,与一个客户机的通讯故障可能对后续客户造成阻碍。
缺点
多进程并发方式 并行化、简单有序、互不干扰、事务化
1.创建进程需要一定的时刻开销;
2.考虑如何实现多个进程之间的互不干扰;
3.占用较多的系统资源
缺点
多线程并发方式 除了具有多进程并发方式的优点外,与多进程相比:
1.线程节约系统的资源;
2.创建时的时刻开销小;
3.减小了对服务器资源的消耗
缺点
1.需要采纳同步机制实现多个线程之间的同步与互斥;
2.程序的编写、调试、爱护难度大
5流行即时通讯系统分析
WebQQ
是国内最为流行的谈天工具QQ的网页式谈天工具,国外没有相关的服务是提供给QQ的,马化腾不失时机地做了基于Web扫瞄器的IM服务,所谓是web2.0的大势所趋。
功能特点:
因为用户群过于庞大,专门有进展潜力。
目前WebQQ同样在测试时期,只支持IE6.0的扫瞄器。
其在线主界面保持了客户端QQ主界面的风格,在操作上能够使用快捷键;不提供谈天记录储存、语音视频谈天、文件传输等功能,纯属客户端QQ的精简版。
WebMSN
通过试用发觉,在线方式不支持视频谈天,也不能储存谈天记录;在线方式由于精简了功能,使得谈天窗口弹出及具体的文字谈天速率较理想;对扫瞄器的支持较好,适用于IE5.0或更高版本、Netscape7.1或更高版本、Mozilla1.6或更高版本、Maxthon1.5或更高版本等。
总的说来功能较单一。
即时消息是WindowsMessenger中的一种通信和协作的模式。
IM对话中使用的初始化和通信协议依所选择的服务器或服务而定。
关于.NETMessenger或ExchangeIM,IM文本是通过TCP连接进行传送的。
当使用SIPProxy服务器时,能够对服务器进行配置,以使用TCPUDP或"安全套接层"〔SecureSocketsLayer,SSL〕--贯穿TCP的安全协议--传输IM文本。
发起对话的客户向服务器发送一个要求,邀请与联系人开始对话。
在服务器将邀请发送到联系人后,就能够进行IM通信了。
消息文本通过服务器发送给对方。
消息文本的定义依采纳的服务器和协议而不同,通常为消息,由服务器将其封装在TCP连接中,内部包含"超文本传输协议"〔HypertextTransferProtocol,〕或"可扩展标记语言"〔ExtensibleMarkupLanguage,XML〕。
当使用SIPIM时,能够设置在同级之间直截了当传送消息文本。
然而采纳SIPProxy服务器的话,就需要对服务器进行配置。
Gtalk
在此在线IM方式中,同样不能实现网络通话功能〔需通过下载GoogleTalk客户端实现〕;电子邮件和即时谈天在同一页面完成,方便快捷;在扫瞄器支持方面做得不够,适用于IE6.0以上和Firefox1.0以上版本。
最有特色的是其谈天记录的储存和直截了当回复功能。
基于Iframe及htmlfile的流〔streaming〕方式
iframe是专门早就存在的一种HTML标记,通过在HTML页面里嵌入一个隐蔵帧,然后将那个隐蔵帧的SRC属性设为对一个长连接的要求,服务器端就能源源不断地往客户端输入数据。
图3.基于流方式的服务器推模型
上节提到的AJAX方案是在JavaScript里处理XMLRequest从服务器取回的数据,然后Javascript能够专门方便的去操纵HTML页面的显示。
同样的思路用在iframe方案的客户端,iframe服务器端并不返回直截了当显示在页面的数据,而是返回对客户端Javascript函数的调用,如"
服务器端将返回的数据作为客户端JavaScript函数的参数传递;客户端扫瞄器的Javascript引擎在收到服务器返回的JavaScript调用时就会去执行代码。
从图3能够看到,每次数据传送可不能关闭连接,连接只会在通信显现错误时,或是连接重建时关闭〔一些防火墙常被设置为丢弃过长的连接,服务器端能够设置一个超时时刻,超时后通知客户端重新建立连接,并关闭原先的连接〕。
使用iframe要求一个长连接有一个专门明显的不足之处:
IE、MorzillaFirefox下端的进度栏都会显示加载没有完成,而且IE上方的图标会不停的转动,表示加载正在进行。
Google的天才们使用一个称为"htmlfile"的ActiveX解决了在IE中的加载显示问题,并将这种方法用到了gmail+gtalk产品中。
AlexRussell在"Whatelseisburrieddowninthedepth'sofGoogle'samazingJavaScript?
"文章中介绍了这种方法。
Zeitoun网站提供的comet-iframe.tar.gz,封装了一个基于iframe和htmlfile的JavaScriptcomet对象,支持IE、MozillaFirefox扫瞄器,能够作为参考。
〔请参见参考资源〕
sigslot是一个线程安全、类型安全,用C++实现的sig/slot机制(sig/slot机制确实是对象之间发送和接收消息的机制)的开源代码库
网易POPO
从登录速度上,网页版网易POPO是最快的,差不多上瞬时就可登录到使用界面。
同样地,它也不能实现多媒体谈天功能;而且也不能储存谈天记录;未提供好友删除及好友分组的治理功能;适用于各版本扫瞄器。
WebQQ WebMSN Gtalk WebPOPO
登录速率 理想 一样 一样 理想
头像更换 否 否 否 否
呢称更换 否 否 否 是
好友添加 是 是 是 是
好友治理 否 否 是 否
谈天记录治理 否 否 是 否
界面美观度 理想 理想 一样 理想
总体印象 较好 一样 一样 较好
Sohu小纸条
vqq
vqqx-vqq围围圈是一款国内在线谈天室,分免费和VIP付费两种方式。
提供自定义图标的功能专门新颖。
功能特点:
提供widget,把"VQQ围圈圈"谈天窗口嵌入在你自己的网页,自定义风格丰富,widget演示-点击rorol网页右下角的绿色图标展开谈天室。
radiusim
radiusimx--基于ajax技术构建的在线web谈天服务,试用感受不是专门稳固,速度也比较慢.
支持的IM:
Yahoo,AIM,MSNorGTalk
功能特点:
会自动检测你的地址位置,并在radiusim中置入GOOGLEMAP标识那个位置.通过拖拉GOOGLEMAP,你能发觉在地图中标注出来的各地会员.假如你想去某个都市旅行,通过ra
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 即时通讯 调研 报告书
![提示](https://static.bdocx.com/images/bang_tan.gif)