萬盛學電腦網

 萬盛學電腦網 >> 網絡應用技術 >> 應用教程 >> TCP和UDP有什麼區別

TCP和UDP有什麼區別

  TCP和UDP之間的區別和聯系

  1.面向連接的TCP

  TCP(Transmission Control Protocol,傳輸控制協議)是基於連接的協議,也就是說,在正式收發數據前,必須和對方建立可靠的連接。一個TCP連接必須要經過三次“對話”才能建立起來,其中的過程非常復雜,我們這裡只做簡單、形象的介紹,你只要做到能夠理解這個過程即可。我們來看看這三次對話的簡單過程:主機A向主機B發出連接請求數據包:“我想給你發數據,可以嗎?”,這是第一次對話;主機B向主機A發送同意連接和要求同步(同步就是兩台主機一個在發送,一個在接收,協調工作)的數據包:“可以,你什麼時候發?”,這是第二次對話;主機A再發出一個數據包確認主機B的要求同步:“我現在就發,你接著吧!”,這是第三次對話。三次“對話”的目的是使數據包的發送和接收同步,經過三次“對話”之後,主機A才向主機B正式發送數據。

  總之,TCP要建立連接必須經過三次握手。

  優點:1、面向連接的傳輸;2、數據傳輸穩定可靠;3、端到端的通信;4、全雙工方式;5、以字節為單位傳輸

  缺點:傳輸速度不夠快

  2.面向無連接的UDP

  “面向非連接”就是在正式通信前不必與對方先建立連接,不管對方狀態就直接發送。這與現在風行的手機短信非常相似:你在發短信的時候,只需要輸入對方手機號就OK了。

  UDP(User Data Protocol,用戶數據報協議)是與TCP相對應的協議。它是面向非連接的協議,它不與對方建立連接,而是直接就把數據包發送過去!

  每個數據包的大小限定在64K以內!

  優點:1、傳輸速度快;2、效率高;

  缺點:數據包可能會丟失

  小結:正因為UDP協議沒有連接的過程,所以它的通信效果高;但也正因為如此,它的可靠性不如TCP協議高。QQ就使用UDP發消息,因此有時會出現收不到消息的情況。TCP協議和UDP協議各有所長、各有所短,適用於不同要求的通信環境。


copyright © 萬盛學電腦網 all rights reserved