Skype協議分析(下)

來源:互聯網
上載者:User

4、Skype的主要功能

  Skype的功能主要可以分為:初始化,登入,使用者搜尋,呼叫建立與終止,媒體傳輸和狀態訊息。

  4.1 初始化

  第一次安裝後,Skype會發送一段HTTP 1.1的請求給中央伺服器,包括關鍵字“installed”以及所裝Skype的版本號碼。以後的每次登入Skype都會向中央伺服器發送一小段包含關鍵字“getlatestversion”的HTTP 1.1請求,檢查是否有新版本的Skype。

  4.2 登入

  登入是Skype最重要的功能,2所示。在這個過程中,Skype終端到登入伺服器上驗證使用者名稱密碼,廣播給線上上的好友及其它節點,檢查NAT和防火牆的類型,發現擁有公網IP地址的線上Skype節點,這些新發現的節被用於在所在Super Node無法使用後繼續保持本機與Skype網路的串連。如果HC中所有的節點地址均停用話,登入失敗。通過分析這些登入失敗的過程,我們可以得出一個完整的Skype登入過程:

圖2 Skype的登入過程

  先發送UDP資料包,如果5秒後沒有響應,就用TCP,發送登入請求到目標節點的80連接埠;如果仍然失敗,就通過TCP發送登入請求到443連接埠,等待6秒鐘,如果仍然失敗就顯示無法登入。整個的登入過程可以重複4次。串連的對象是儲存在本機中Host Cache中的節點列表。

  4.3 使用者搜尋

  Skype使用全球索引(Global Index,GI)技術進行使用者搜尋,在72小時內登入過的使用者,無論是處在公眾網還是私人網路中都能找到。用戶端可以通過發送TCP包向SC發送請求,也可以通過UDP包向其他SC發送查詢請求。SC將結果發回用戶端。

  4.4 呼叫建立與終止

  Skype採用了32kbps的語音編碼以保證語音品質,其信令通過TCP傳遞,而語音資料則通過TCP和UDP進行傳輸,信令和語音資料使用不同的連接埠號碼。Skype能夠向好友名單中的使用者發送呼叫請求。為了保證信令傳輸的可靠性,信令始終是通過TCP進行的。如果雙方都是在公眾網中,有獨立的公用IP,那麼主叫使用者和被叫使用者通過challenge-response機制直接進行資料交換。如果有一方位於私人網路或者是防火牆之後,那麼私人網路一方需要首先同公眾網中的至少一個SN建立TCP連結,然後由SN進行資料轉寄。如果雙方都位於私人網路中,那麼雙方的資料都需要SN進行轉寄。

  4.5 媒體傳輸和狀態訊息

  如果雙方都位於公眾網中,雙方可以使用UDP包直接進行資料交換。Skype的語音資料包的大小一般是67 bytes,正好是UDP包的淨荷。對於100M bps的乙太網路來說,每秒可傳送140個語音資料包。一般來說,上下行語音傳輸所需的平均頻寬為5 kbps。如果有其中一方或者雙方都位於私人網路中,就需要通過TCP同SN進行資料交換,由SC充當媒體Proxy 伺服器的角色,此時一個語音資料包的大小一般為69 bytes。在可能的情況下,Skype會優先選擇UDP協議進行通訊。

5、結束語

  Skype是第一個利用P2P技術進行語音通訊的VoIP工具,能夠提供較好的通話品質。Skype能夠透過防火牆進行無縫通訊,安裝使用也很簡單。隨著互連網的不斷普及。VoIP技術已經取得了越來越多的應用。有的電訊廠商甚至開始和Skype合作提供Voice Messaging Service,這是一個新的趨勢。如何在新技術不斷普及的同時保證電訊廠商在傳統通訊網路中的核心地位,是一個值得研究的課題。

 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.