1. 程式人生 > >《轉》LTE S1介面控制面面為什麼使用SCTP,而不用TCP

《轉》LTE S1介面控制面面為什麼使用SCTP,而不用TCP

轉自《http://blog.csdn.net/u013298353/article/details/19072149》

  S1介面的協議分為控制面協議和資料面協議,更具體來說,對各個面的協議,又可以分為無線網路層協議,以及傳輸網路層協議。如下圖所示:
無標題.png


                                                                     S1協議層次圖
       對於控制面面為什麼使用SCTP,而不用TCP,UDP?其原因主要主要控制面的特點決定的,由於通訊系統中,信令都是要求傳輸的可靠性需要有高度保證,而UDP的問題在於沒有可靠性保證自然首先被信令面淘汰,TCP儘管是面向連線,而且有確認機制,但是TCP在擁塞控制,實時性,以及防止攻擊方面做的比較差,而SCTP的設計包括適當的擁塞控制、防止氾濫和偽裝攻擊、更優的實時效能,綜合比較這些傳輸協議,EPC的信令面設計的時候,選取了更為可靠的SCTP作為傳輸協議。

     SCTP支援多流multi-stream,使得即使單個流stream出現阻塞,其它流stream仍能工作,這樣解決了擁塞的問題。另外由於SCTP有多歸屬multi-homing,使得單個關聯association能使用本地和遠端的多個地址,這樣即使某個地址阻塞block,資料仍能通過其它路由到達目的地,從而提高了傳輸的可靠性。
       綜合來講,從可靠性,安全性,複雜度三個方面,這裡對TCP/UDP/SCTP做一個比較,
      1. 可靠程度:
       UDP:不可靠(因為沒有確認機制)
       TCP:可靠(有三次握手確認機制)
       SCTP:非常可靠(四次確認機制)

      2. 安全性:
      UDP:不安全(沒有什麼保護措施)
      TCP:一般安全
      SCTP:很安全(特意針對TCP的安全缺陷和不足作了改進)
      3.複雜度:
      UDP:很方便,因為步驟少,沒有什麼要等的;
      TCP:一般方便:三次握手確認,安全保護等;
      SCTP:很不方便,處理步驟流程複雜,因此,一般用於系統內部模組或者網元之間通訊。

      只有資料面協議為什麼選取了UDP,主要原因在於資料面的傳輸的data相比信令data,可靠性的要求相對比較低,而資料處理的實時性則要求比較高,這樣導致,傳輸協議需要實現簡單,以便快速進行資料的處理轉發,這樣才可能滿足
LTE設計之處的時延要求。綜合比較UDP/SCTP/TCP協議,自然UDP是比較符合資料面的設計需求的。