Python開發中TCP和UDP區別是什麼?Python入門教程

老男孩IT教育機構發表於2021-09-13

  TCP和UDP同屬於協議,在學習Python的時候都會涉及到這方面的知識,那麼TCP和UDP區別是什麼呢?我們來看看它們的優缺點吧。

  什麼是UDP?

  UDP是面向無連線的通訊協議,UDP資料包含目的埠號和源埠號資訊。主要優點速度快、操作簡單、要求系統資源較少,由於通訊不需要連線,可以實現廣播傳送;缺點是傳輸資料前並不與對方建立連線,對接收到的資料也不傳送確認訊號,傳送端不知道資料是否會正確接收,也不重複傳送,不可靠。

  什麼是TCP?

  是面向連線的通訊協議,透過三次握手建立連線,通訊完成時四次握手,主要優點是TCP在資料傳輸時,有確認、視窗、重傳、阻塞等控制機制,能保證資料正確性,較為可靠;缺點是相對於UDP速度慢,要求系統資源較多。

  TCP和UDP區別是什麼?

  TCP是面向連線的協議,而UDP是無連線的協議,意味著當一個客戶端和一個服務端透過TCP傳送資料前,必須先建立連線,建立連線的過程被稱為TCP三次握手;

  TCP提供交付保證,意味著一個使用TCP協議傳送的資訊是保證交付給客戶端的,如果訊息在傳輸過程中丟失,將重發;UDP是不可靠的,不提供任何交付的保證,一個資料包包在運輸過程中可能會丟失;

  訊息到達網路的另一端時可能是無序的,TCP協議將會為你排序,UDP不提供任何有序性的保證;

  TCP速度比較慢,而UDP速度比較快,因為TCP必須建立連線,以保證訊息的可靠交付和有序性,需要做比UDP多的事;

  TCP是重量級的協議,UDP協議則是輕量級的協議。一個TCP資料包的報頭大小最少是20個位元組,UDP資料包的報頭固定是8個位元組。TCP報頭中包含序列號,ACK號,資料偏移量,保留,控制位,視窗,緊急指標,可選項,填充項,校驗位,源埠和目的埠。


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69952527/viewspace-2791815/,如需轉載,請註明出處,否則將追究法律責任。

相關文章