通俗解釋
其實XMPP 是一種很相似於http協議的一種數據傳輸協議,它的過程就如同「解包裝--〉包裝」的過程,用戶只須要明白它接收的類型,並理解它返回的類型,就能夠很好的利用xmpp來進行數據通信。
系統特色
(1)客戶機/服務器通訊模式;(2)分佈式網絡;(3)簡單的客戶端;(4)XML的數據格式。
功能
傳輸的是與即時通信相關的指令。在之前這些命令要麼用二進制的形式發送(好比QQ),要麼用純文本指令加空格加參數加換行符的方式發送(好比MSN)。而XMPP傳輸的即時通信指令的邏輯與以往相仿,只是協議的形式變成了XML格式的純文本。這不但使得解析容易了,人也容易閱讀了,方便了開發和查錯。而XMPP的核心部分就是一個在網絡上分片斷髮送XML的流協議。這個流協議是XMPP的即時通信指令的傳遞基礎,也是一個很是重要的能夠被進一步利用的網絡基礎協議。因此能夠說,XMPP用TCP傳的是XML流。
基本網絡結構
XMPP中定義了三個角色,客戶端,服務器,網關。通訊可以在這三者的任意兩個之間雙向發生。服務器同時承擔了客戶端信息記錄,鏈接管理和信息的路由功能。網關承擔着與異構即時通訊系統的互聯互通,異構系統能夠包括SMS(短信),MSN,ICQ等。基本的網絡形式是單客戶端經過TCP/IP鏈接到單服務器,而後在之上傳輸XML。
定義
XMPP : The Extensible Messaging and Presence Protocol
中文全稱:可擴展通信和表示協議
簡介:可擴展通信和表示協議 (XMPP) 可用於服務類實時通信、表示和需求響應服務中的XML數據元流式傳輸。XMPP以Jabber協議爲基礎,而Jabber是即時通信中經常使用的開放式協議。XMPP is the IETF's formalization of the base XML streaming protocols for instant messaging and presence developed within the Jabber open-source community in 1999
XMPP(可擴展消息處理現場協議)是基於可擴展標記語言(XML)的協議,它用於即時消息(IM)以及在線現場探測。它在促進服務器之間的準即時操做。這個協議可能最終容許因特網用戶向因特網上的其餘任何人發送即時消息,即便其操做系統和瀏覽器不一樣。瀏覽器
XMPP的前身是Jabber,一個開源形式組織產生的網絡即時通訊協議。XMPP目前被IETF國際標準組織完成了標準化工做。標準化的核心結果分爲兩部分;服務器
(1)核心的XML流傳輸協議。
XMPP的核心XML流傳輸協議的定義使得XMPP可以在一個比以往網絡通訊協議更規範的平臺上。藉助於XML易於解析和閱讀的特性,使得XMPP的協議可以很是漂亮。網絡
(2)基於XMLFreeEIM流傳輸的即時通信擴展應用。
XMPP的即時通信擴展應用部分是根據IETF在這以前對即時通信的一個抽象定義的,與其餘業已獲得普遍使用的即時通信協議,諸如AIM,QQ等有功能完整,完善等先進性。
XMPP的擴展協議Jingle使得其支持語音和視頻。分佈式
XMPP的官方文檔是RFC 3920.url
參考:百度百科《XMPP》spa