<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    贏在執行

    這個世界上只有兩樣東西愈分享愈多,那就是智慧與愛。

    BlogJava 首頁 新隨筆 聯系 聚合 管理
      17 Posts :: 11 Stories :: 13 Comments :: 0 Trackbacks

    ? 1、什么是XMPP ?
    XMPP:即Extensible Messaging and Presence Protocol,其前身是Jabber,一個開源形式組織產生的網絡即時通信協議。XMPP目前被IETF國際標準組織完成了標準化工作。標準化的核心結果分為兩部分;
    核心的XML流傳輸協議
    基于XML流傳輸的即時通訊擴展應用
    XMPP的核心XML流傳輸協議的定義使得XMPP能夠在一個比以往網絡通信協議更規范的平臺上。借助于XML易于解析和閱讀的特性,使得XMPP的協議能夠非常漂亮。
    XMPP的即時通訊擴展應用部分是根據IETF在這之前對即時通訊的一個抽象定義的,與其他業已得到廣泛使用的即時通訊協議,諸如AIM,QQ等有功能完整,完善等先進性。

    2、XMPP的基本網絡結構是怎樣的?
    XMPP中定義了三個角色,客戶端,服務器,網關。通信能夠在這三者的任意兩個之間雙向發生。服務器同時承擔了客戶端信息記錄,連接管理和信息的路由功能。網關承擔著與異構即時通信系統的互聯互通,異構系統可以包括SMS(短信),MSN,ICQ等?;镜木W絡形式是單客戶端通過TCP/IP連接到單服務器,然后在之上傳輸XML。

    3、XMPP通過TCP傳什么了?
    傳輸的是與即時通訊相關的指令。在以前這些命令要么用2進制的形式發送(比如QQ),要么用純文本指令加空格加參數加換行苻的方式發送(比如MSN)。而XMPP傳輸的即時通訊指令的邏輯與以往相仿,只是協議的形式變成了XML格式的純文本。這不但使得解析容易了,人也容易閱讀了,方便了開發和查錯。而XMPP的核心部分就是一個在網絡上分片斷發送XML的流協議。這個流協議是XMPP的即時通訊指令的傳遞基礎,也是一個非常重要的可以被進一步利用的網絡基礎協議。所以可以說,XMPP用TCP傳的是XML流。

    4、舉個例子看看所謂的XML流是什么樣子的?
    客戶端:<?xml version='1.0'?>
    ?????? <stream:stream
    ?????? to='example.com'
    ?????? xmlns='jabber:client'
    ?????? xmlns:stream='http://etherx.jabber.org/streams'
    ?????? version='1.0'>
    服務器:<?xml version='1.0'?>
    ?????? <stream:stream
    ?????? from='example.com'
    ?????? id='someid'
    ?????? xmlns='jabber:client'
    ?????? xmlns:stream='http://etherx.jabber.org/streams'
    ?????? version='1.0'>
    ...其他通信...
    客戶端:<message from='juliet@example.com'
    ????????????? to='romeo@example.net'
    ????????????? xml:lang='en'>
    客戶端: <body>Art thou not Romeo, and a Montague?</body>
    客戶端: </message>
    服務器: <message from='romeo@example.net'
    ????????????? to='juliet@example.com'
    ????????????? xml:lang='en'>
    服務器:<body>Neither, fair saint, if either thee dislike.</body>
    服務器:</message>
    客戶端:</stream:stream>
    服務器:</stream:stream>
    以文檔的觀點來看,客戶端或服務器發送的所有XML文本連綴在一起,從<stream>到</stream>構成了一個完整的XML文檔。其中的stream標簽就是所謂的XML Stream。在<stream>與</stream>中間的那些<message>...</message>這樣的XML元素就是所謂的XML Stanza(XML節)。XMPP核心協議通信的基本模式就是先建立一個stream,然后協商一堆安全之類的東西,中間通信過程就是客戶端發送XML Stanza,一個接一個的。服務器根據客戶端發送的信息以及程序的邏輯,發送XML Stanza給客戶端。但是這個過程并不是一問一答的,任何時候都有可能從一個方發信給另外一方。通信的最后階段是</stream>關閉流,關閉TCP/IP連接。
    GTalk所遵循的協議---XMPP

    前幾天Google發布了一款名叫Google Talk的即時通訊軟件,這款軟件的買點賣點之一就是XMPP。那,什么是XMPP呢?
       可擴展通訊和表示協議 (XMPP) 可用于服務類實時通訊、表示和需求 - 響應服務中的 XML 數據元流式傳輸。XMPP 以 Jabber 協議為基礎,而 Jabber 是即時通訊中常用的開放式協議。
       盡管 XMPP 沒有完全溶合進任何特定的網絡架構之中,但是通過客戶機/服務器架構,它還是經常被采用,因為客戶機需要使用 XMPP 經過 TCP 連接訪問服務器,而服務器之間也是通過 TCP 連接進行通信的。服務器可起到 XMPP 通訊的智能提取層的作用。許多客戶機直接通過 TCP 連接與服務器相連,并使用 XMPP 來充分使用服務器和任何相關服務所提供的功能。同時連接到服務器的可能有多種資源,它們代表各自已獲授權的客戶機。對于客戶機和服務器之間的連接,推薦使用的端口號為 5222 。網關是一種有著特殊用途的服務器端服務,它的主要功能是在異構通訊系統協議之中解析 XMPP ,同時還要在 XMPP 之中解析返回的數據,如以下各各種服務的網關:電子郵件、國際互聯網中繼聊天(IRC)、SIMPLE、短信息服務(SMS)和現存的各種即時通訊服務,包括 AIM、ICQ、MSN Messenger 和 Yahoo! Instant Messenger 等。
      兩個基本概念 — XML 數據流和 XML 節使得較小結構化信息的有效負載可以在敏感于數據傳輸的實體間進行迅速的異步傳輸。一個 XML 數據流就像一種容器,可應用在任何兩個網絡實體間 XML 數據元的交換。XML 節是結構化信息的獨立單元,通過 XML 數據流從一個實體發送到另一個實體。
      XMPP 中包含了一種用于防范數據流被竄改和偷聽的辦法。這種信道加密的辦法使用了傳輸層安全協議(TLS),連同其擴展協議 STARTTLS 。這種擴展與其它協議的擴展是同一模式的,如 IMAP、POP3 和 ACAP 等協議。XMPP 中還包含一種對數據流進行驗證的辦法,并采用了簡單驗證和安全層協議(SASL)中 XMPP 的特定框架。

    協議結構
      XML 數據流在所有 XML 節的傳送會話過程中起到一種包絡的作用。我們可以采用一種單純的方式來表示這個過程:
    |--------------------|
    | <stream>?????????? |
    |--------------------|
    | <presence>???????? |
    | <show/>??????????? |
    | </presence>??????? |
    |--------------------|
    | <message to='foo'> |
    | <body/> |
    | </message> |
    |--------------------|
    | <iq to='bar'> |
    | <query/> |
    | </iq> |
    |--------------------|
    | ... |
    |--------------------|
    | </stream> |
    |--------------------|
    ?
    ?

    ?

    posted on 2006-12-31 13:17 飛雪(leo) 閱讀(401) 評論(0)  編輯  收藏 所屬分類: XMPP專區

    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    主站蜘蛛池模板: 色多多www视频在线观看免费| 美国毛片亚洲社区在线观看| 免费观看亚洲人成网站| 免费看黄的成人APP| 无码视频免费一区二三区| 亚洲AV无码一区二区三区国产| 久久精品国产亚洲AV无码偷窥| 麻豆亚洲AV成人无码久久精品 | 美女视频黄的全免费视频| 国产又大又黑又粗免费视频| 国产av天堂亚洲国产av天堂| 国产精品亚洲四区在线观看| 亚洲精品偷拍视频免费观看| 在线a级毛片免费视频| 亚洲一区二区三区偷拍女厕| 亚洲熟女综合一区二区三区| 国产三级在线免费| 免费国产小视频在线观看| 亚洲欧洲春色校园另类小说| 一级人做人爰a全过程免费视频| 中文字幕人成无码免费视频| 国产成人A亚洲精V品无码| 亚洲欧美第一成人网站7777| 免费A级毛片无码视频| 亚洲性久久久影院| 亚洲人片在线观看天堂无码| 久久国产精品成人片免费| 国产精品亚洲mnbav网站| 亚洲精品无码成人| 亚洲免费视频播放| 国产亚洲综合网曝门系列| 国产午夜亚洲精品不卡免下载| 国产成人免费午夜在线观看| 久久九九亚洲精品| 成人免费视频一区二区| 嫩草视频在线免费观看| 亚洲精品视频在线免费| 二区久久国产乱子伦免费精品| 四虎永久成人免费| 亚洲日韩中文字幕无码一区| 国产成人yy免费视频|