IM協定

IM協定

即時通訊協定(Instant Messaging),即時訊息和表示協定IMPP(Instant Messaging And PresenceProtocol),表示和即時訊息協定PRIM(Presence and Instant Messaging Protocol),SIP即時訊息和表示擴展協定SIMPLE(SIP for Instant Messaging and Presence Leveraging Extensions),可擴展訊息與表示協定XMPP(Extensible Messaging and Presence Protocol).

基本介紹

  • 中文名:即時通訊協定
  • 外文名:Instant Messaging
  • 簡稱:IM
即時通訊協定(Instant Messaging),主流的IM協定有4種,即時訊息和存在協定IMPP(Instant Messaging And PresenceProtocol),存在和即時訊息協定PRIM(Presence and Instant Messageing Protocol),SIP即時訊息和存在擴展協定SIMPLE(SIP for Instant Messaging and Presence Leveraging Extensions),可擴展訊息與存在協定XMPP(Extensible Messageing and Presence Protocol.
IM(Instant Messaging)正在被廣泛地採用,特別是在公司與它們的客戶互動聯接方案上。為了解決即時通訊的標準問題,IETF成立了專門的工作小組,研究和開發與IM相關的協定。
目前IM有四種協定:即時信息和空間協定(IMPP)、空間和即時信息協定(PRIM)、針對即時通訊和空間平衡擴充的進程開始協定SIP(SIMPLE)以及XMPP。PRIM與XMPP、 SIMPLE類似,但已經不再使用了。
IMPP主要定義必要的協定和數據格式,用來構建一個具有空間接收、發布能力的即時信息系統。到目前為止,這個組織已經出版了三個草案RFC,但主要的有兩個:一個是針對站點空間和即時通訊模型的(RFC 2778);另一個是針對即時通訊/空間協定需求條件的(RFC2779)。RFC2778是一個資料性質的草案,定義了所有presence和IM服務的原理。RFC2779定義了IMPP的最小需求條件。另外,這個草案還就presence服務定義了一些條款,如運行的命令、信息的格式,以及presence伺服器如何把presence的狀態變化通知給客戶。
SIMPLE是目前為止制定的較為完善的一個。SIMPLE和XMPP兩個協定,都符合RFC2778和RFC2779 。SIMPLE計畫利用SIP來傳送presence信息。SIP是IETF中為終端制定的協定。SIP一般考慮用在建立語音通話中,一旦連線以後,依靠如實時協定(RTP)來進行實際上的語音傳送。???但SIP不僅僅能被用在語音中,也可以用於視頻。SIMPLE被定義為建立一個IM進程的方法。SIMPLE在2002年夏季得到額外的信任,目前,微軟和IBM都致力於在它們的即時通訊系統中實現這個協定。
SIMPLE小組致力於進程模式的操作,這將提升運行效率,使基於SIP的機制能夠進行會議和三方電話交談控制,也考慮到能和未來提供的許多新特性實現兼容並提升表現能力。有了進程模式,SIMPLE使用SIP來建立一次進程,再利用SDP(進程描述協定)來實際傳輸IM數據。
XMPP是一種基於XML的協定,它繼承了在XML環境中靈活的發展性。這表明XMPP是可擴展的。可以通過傳送擴展的信息來處理用戶的需求,以及在XMPP的頂端建立如內容發布系統和基於地址的服務等應用程式。而且,XMPP包含了針對伺服器端的軟體協定,使之能與另一個進行通話,這使得開發者更容易建立客戶應用程式或給一個配好系統添加功能。
XMPP目前在免費原始碼開放Jabber IM系統中被廣泛採用。2002年,這個產品有超過5萬的下載量。XMPP擁有成千的Jabber開發者,以及大約數萬台配置的伺服器和超過百萬的終端用戶。
在XMPP能夠成為標準前,還需要努力克服它本身的缺點。對於網路協同工作者而言,需要加強安全性和互連性。
其實, 現在主要是SIP/SIMPLE 和 XMPP了. 原來還有一個OMA IMPS WV, 慢慢將被SIP/SIMPLE代替了. 現在OMA, 3GPP感覺都已經接受SIP/SIMPLE了. 估計, 將來都會採用這么一個標準進行互連, 由servers解決各種標準的互通問題.
這樣, 對應operator也是很好的了, 他們可以基於開放的標準進行實施, 同時, 把事實的各種private的用戶很多的標準的用戶包含進他們的用戶裡面.
就象現在世界上的各種各樣的語言存在一樣, 由English可以完成互通, servers/翻譯完成語言之間的轉換.
XMPP(Extensible Messageing and Presence Protocol:可擴展訊息與存在協定)是目前主流的四種IM(IM:instant messaging,即時訊息)協定之一,其他三種分別為:即時信息和空間協定(IMPP)、空間和即時信息協定(PRIM)、針對即時通訊和空間平衡擴充的進程開始協定SIP(SIMPLE)。
在這四種協定中,XMPP是最靈活的。XMPP是一種基於XML的協定,它繼承了在XML環境中靈活的發展性。因此,基於XMPP的套用具有超強的可擴展性。經過擴展以後的XMPP可以通過傳送擴展的信息來處理用戶的需求,以及在XMPP的頂端建立如內容發布系統和基於地址的服務等套用程 序。而且,XMPP包含了針對伺服器端的軟體協定,使之能與另一個進行通話,這使得開發者更容易建立客戶應用程式或給一個配好系統添加功能。
1、什麼是XMPP ?
XMPP的前身是Jabber,一個開源形式組織產生的網路即時通信協定。XMPP目前被IETF國際標準組織完成了標準化工作。標準化的核心結果分為兩部分:
(1)核心的XML流傳輸協定
(2)基於XML流傳輸的即時通訊擴展套用
XMPP的核心XML流傳輸協定的定義使得XMPP能夠在一個比以往網路通信協定更規範的平台上。藉助於XML易於解析和閱讀的特性,使得XMPP的協定能夠非常漂亮。
XMPP的即時通訊擴展套用部分是根據IETF在這之前對即時通訊的一個抽象定義的,與其他業已得到廣泛使用的即時通訊協定,諸如AIM,QQ等有功能完整,完善等先進性。
2、XMPP的基本網路結構是怎樣的?
XMPP中定義了三個角色,客戶端,伺服器,網關。通信能夠在這三者的任意兩個之間雙向發生。伺服器同時承擔了客戶端信息記錄,連線管理和信息的路由功能。網關承擔著與異構即時通信系統的互聯互通,異構系統可以包括SMS(簡訊),MSN,ICQ等。基本的網路形式是單客戶端通過TCP/IP連線到單伺服器,然後在之上傳輸XML。
3、XMPP通過TCP傳什麼了?
傳輸的是與即時通訊相關的指令。在以前這些命令要么用2進制的形式傳送(比如QQ),要么用純文本指令加空格加參數加換行苻的方式傳送(比如MSN)。而XMPP傳輸的即時通訊指令的邏輯與以往相仿,只是協定的形式變成了XML格式的純文本。這不但使得解析容易了,人也容易閱讀了,方便了開發和查錯。而XMPP的核心部分就是一個在網路上分片斷髮送XML的流協定。這個流協定是XMPP的即時通訊指令的傳遞基礎,也是一個非常重要的可以被進一步利用的網路基礎協定。所以可以說,XMPP用TCP傳的是XML流。

相關詞條

熱門詞條

聯絡我們