UDP與TCP的區別

  1. UDP是無鏈接的,即發送數據以前不須要創建鏈接,發送數據結束時也沒有鏈接能夠釋放,所以減小了開銷和發送數據以前的時延。目的主機的運輸層在收到UDP報文後,不須要給出任何確認
     
  2. TCP是面向鏈接的運輸層協議,也就是說,應用程序在使用TCP協議以前,必須先創建TCP鏈接,在傳送數據完畢後,必須釋放已經創建的TCP鏈接
     
  3. UDP盡最大努力交付,即不保證可靠交付,所以主機不須要維持複雜的鏈接狀態表
     
  4. TCP提供可靠交付的服務。經過TCP鏈接傳送的數據,無差錯、不丟失、不重複,而且按序到達
     
  5. UDP是面向報文的。發送方的UDP對應用程序交下來的報文,在添加首部後就向下交付IP層,應用層交給UDP多長的報文,UDP就照樣發送,既不合並,也不拆分,一次發送一個報文。
     
  6. TCP是面向字節流的,即TCP把應用程序交下來的數據僅僅當作是一連串的無結構的字節流
     
  7. UDP支持一對1、一對多、多對一和多對多的交互通訊
     
  8. 每一條TCP鏈接只能有兩個端點,每一條TCP鏈接只能是點對點的(一對一)。
     
  9. UDP沒有擁塞控制,所以網絡出現的擁塞不會使源主機的發送速率下降。
     
  10. UDP的首部小,只有8個字節,比TCP的20個字節的首部要短
     
  11. TCP提供全雙工通訊。TCP容許通訊雙方的應用進程在任什麼時候候都能發送數據。TCP鏈接的兩端都設有發送緩存和接收緩存,用來臨時存放雙向通訊的數據。在發送時,應用程序在把數據傳送給TCP的緩存後,就能夠作本身的事情了,而TCP在合適的時候把數據發送出去。在接收時,TCP把收到的數據方法緩存,上層的應用進程在合適的時候讀取緩存中的數據。  參考書籍:計算機網絡(第7版) 謝希仁
相關文章
相關標籤/搜索