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

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

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

      最近開始準備用Java開發QQ,由于在大四的時候曾經開發過一簡單的QQ聊天機,現在想把它完善,使之盡量能夠用于實際應用中。
       在開發之前,自己想(推理)了一下QQ的工作原理和一些實現細節,發現自己想的、推理的和網上搜索到資料以及師兄的回答幾乎一致。
       下面就是我在網上所搜索的資料


    一、IM技術概念

      IM技術全稱Instant Messaging,中文翻譯“即時通訊”,它是一種使人們能在網上識別在線用戶并與他們實時交換消息的技術,是電子郵件發明以來迅速崛起的在線通訊方式。IM的出現和互聯網有著密不可分的關系,IM完全基于TCP/IP網絡協議族實現,而TCP/IP協議族則是整個互聯網得以實現的技術基礎。 最早出現即時通訊協議是IRC(Internet Relay Chat),但是可惜的是它僅能單純的使用文字、符號的方式通過互聯網進行交談和溝通。隨著互連網變得高度發達,即時通訊也變得遠不止聊天這么簡單,自1996年第一個IM產品ICQ發明后,IM的技術和功能也開始基本成型,語音、視頻、文件共享、短信發送等高級信息交換功能都可以在IM工具上實現,于是功能強大的IM軟件便足以搭建一個完整的通信交流平臺。目前最具代表性的幾款的IM通訊軟件有MSN、Google Talk、Yahoo、Messenger 、騰訊QQ等。 

     二、IM技術原理和工作方式

      典型的IM工作方式如下:登陸IM通訊中心(IM通訊服務器),獲取一個自建立的歷史的交流對象列表(好友列表),然后自身標志為在線狀態,當好友列表中的某人在任何時候登錄上線并試圖通過你的計算機聯系你時,IM系統會發一個消息提醒你,然后你能與他建立一個聊天會話通道進行各種消息如鍵入文字、通過語音等的交流,  從技術上來說,IM的基本技術原理如下:  IM服務器  登陸或注銷 登陸或注銷  用戶A通過列表找到B,用戶B獲得的消息并與之交談  通過IM服務器指引建立與B單獨的通訊通道  第一步,用戶A輸入自己的用戶名和密碼登錄IM服務器,服務器通過讀取用戶數據庫來驗證用戶身份,如果驗證通過,登記用戶A的IP地址、IM客戶端軟件的版本號及使用的TCP/UDP端口號,然后返回用戶A登錄成功的標志,此時用戶A在IM系統中的狀態為在線(Online Presence)。  第二步,根據用戶A存儲在IM服務器上的好友列表(Buddy List),服務器將用戶A在線的相關信息發送給也同時在線的IM好友的PC機,這些信息包括在線狀態、IP地址、IM客戶端使用的TCP端口(Port)號等,IM好友的客戶端收到此信息后將在予以提示。  第三步是IM服務器把用戶A存儲在服務器上的好友列表及相關信息回送到他的客戶端機,這些信息包括也在線狀態、IP地址、IM客戶端使用的TCP端口(Port)號等信息,用戶A的IM客戶端收到后將顯示這些好友列表及其在線狀態。  


     三、IM通訊方式  
    1.在線直接通訊  如果用戶A想與他的在線好友用戶B聊天,他將直接通過服務器發送過來的用戶B的IP地址、TCP端口號等信息,直接向用戶B的PC機發出聊天信息,用戶B的IM客戶端軟件收到后顯示在屏幕上,然后用戶B再直接回復到用戶A的PC機,這樣雙方的即時文字消息就不再IM服務器中轉,而是直接通過網絡進行點對點的通訊,即對等通訊方式(Peer To Peer)。  
    2.在線代理通訊  用戶A與用戶B的點對點通訊由于防火墻、網絡速度等原因難以建立或者速度很慢,IM服務器將會主動提供消息中轉服務,即用戶A和用戶B的即時消息全部先發送到IM服務器,再由服務器轉發給對方。 
    3.離線代理通訊  用戶A與用戶B由于各種原因不能同時在線的時候,如此時A向B發送消息,IM服務器可以主動寄存A用戶的消息,到B用戶下一次登陸的時候,自動將消息轉發給B。  
    4.擴展方式通訊  用戶A可以通過IM服務器將信息以擴展的方式傳遞給B,如短信發送方式發送到B的手機,傳真發送方式傳遞給B的電話機,以email的方式傳遞給B的電子郵箱等。  早期的IM系統,在IM客戶端和IM服務器之間通訊采用UDP協議,UDP協議是不可靠的傳輸協議,而在IM客戶端之間的直接通訊中,采用具備可靠傳輸能力的TCP協議。隨著用戶需求和技術環境的發展,目前主流的IM系統傾向于在IM客戶端之間、IM客戶端和IM服務器之間都采用TCP協議。  即時通訊相對于其他通訊方式如電話、傳真、email等的最大優勢就是消息傳達的即時性和精確性,只要消息傳遞雙方均在網絡上可以互通,使用即時通訊軟件傳遞消息,傳遞延時僅為1秒種  


    四、興起的嵌入式IM工具。 
       傳統的IM在統治了互聯網即時通訊領域長達十年之久,以其日趨穩定的定能,與較強的用戶黏著度,至今仍統治著這個巨大的市場。然而,軟件行業的技術精英們,并不滿足于此。他們厚積薄發,一直致力于開發出性能更為優越的即時通訊工具。當然,在功能上的不斷完善,自然是一個必然的發展方向,在Web2.0時代,如何大力增強用戶對網站的黏著度,而不僅僅是對于IM的擁附,已經成為他們的主攻方向了。于是,嵌入式IM工具,應運而生了。  

      相對以往的傳統的即使溝通工具,它們需要用戶下載軟件包,需要用戶進行安裝。對于擁有IM產品的網站而言,用戶在登陸網站后,不能直接使用其IM工具,對于流量與用戶的黏著度,都是有一定影響的。因此在IM與網站相互依存的今天,沒有哪家網絡公司,愿意將IM工具孤立開來。    于是,目前,一種新型的嵌入式IM工具就應運而生了。這種IM工具,不需要下載安裝,當用戶登陸網頁后,該IM直接嵌套在網頁中,可以直接使用。   
     而在功能上,則一點也不輸于傳統的IM,無論是傳統的文字溝通的速度與效率,還是近年來越來越成為IM工具必備的音頻/視頻功能,這種嵌入式IM都能提供非常穩定的傳輸。更值得一提的是,因為嵌入式IM是嵌套在網頁上的,軟件供應商,可以根據網站需求,設計出適合網站風格的IM產品。而不是像傳統的IM工具,千篇一律,毫無個性可言。   
     目前,這類嵌入式IM在社區、交友、社團及協作等類型的網站上,應用已經較為廣泛。在Web2.0時代,將發揮越來越重要的作用。

    posted on 2008-08-29 13:06 李威威 閱讀(4702) 評論(3)  編輯  收藏
     
    主站蜘蛛池模板: 亚洲精品成人片在线播放| 丝袜足液精子免费视频| 精品亚洲aⅴ在线观看| 亚洲&#228;v永久无码精品天堂久久| 99热这里只有精品免费播放| 日日摸夜夜添夜夜免费视频| 亚洲乱码国产乱码精华| 亚洲日本香蕉视频观看视频| 亚洲av无码一区二区三区乱子伦| 日韩高清免费在线观看| 2021国产精品成人免费视频| 免费A级毛片av无码| 免费网站观看WWW在线观看| 无码 免费 国产在线观看91| 美女被爆羞羞网站在免费观看 | 中文字幕在线视频免费| 羞羞漫画登录页面免费| 亚洲精品伦理熟女国产一区二区| 亚洲影视一区二区| 亚洲福利秒拍一区二区| 亚洲av无码国产精品夜色午夜 | 精品亚洲成a人在线观看| 亚洲国产精品99久久久久久| 亚洲av乱码一区二区三区| 久久久久久亚洲av成人无码国产| 亚洲香蕉成人AV网站在线观看| 亚洲中文字幕不卡无码| 亚洲综合熟女久久久30p| 久久久青草青青国产亚洲免观 | 国产免费一区二区三区不卡 | 亚洲av女电影网| 亚洲电影一区二区三区| 久久久久亚洲精品无码系列| 亚洲AV日韩AV永久无码绿巨人| 久久亚洲精品成人777大小说| 麻豆一区二区三区蜜桃免费| 亚洲精品无码专区| 在线观看亚洲网站| 阿v视频免费在线观看| 一区二区三区免费看| 三年片免费高清版 |