TCP(傳輸控制協議)和UDP(用戶數據報協議)是用于數據傳輸的互聯網協議,它們有許多相似之處和不同之處。在本文中,我們將深入地理解TCP和UDP之間的區(qū)別。

什么是 TCP?
TCP代表傳輸控制協議,它是一種通信標準或協議,用于在兩個設備之間建立連接以通過網絡交換消息。它旨在通過 Internet 以包的形式發(fā)送消息。TCP 的常見示例是點對點共享方法,如 FTP(文件傳輸協議)、telnet 等。
TCP 是如何工作的?
TCP 允許數據雙向發(fā)送,即應用程序和 Internet 協議(通??s寫為 TCP/IP)之間的通信,因此可以同時發(fā)送和接收數據。TCP 協議使用數據包來傳輸數據。應用程序不需要在傳輸媒體或其他技術上進行數據包分段。
TCP 跟蹤分段,這些分段是數據傳輸的各個單元,消息被分隔成有效的網絡路由,而 IP 負責實際的數據傳遞。操作系統網絡協議棧中的 TCP 軟件負責建立和終止端到端連接以及數據傳輸。
讓我們看看 TCP/IP 從頭到尾的工作原理。
第 1 步 - 建立連接
- 當兩臺計算機想通過 TCP 相互發(fā)送數據時,它們首先需要使用三次握手建立連接。
- 在這里,第一臺計算機發(fā)送一個數據包,其中SYN位設置為111111(SYN = "synchronize?") 到第二臺機器。
- 第二臺計算機回復,ACK位設置為111111(ACK = "acknowledge!") 并且SYN位設置為111111在一個數據包中。使用ACK,第一臺計算機做出響應。
第 2 步 - 發(fā)送數據包
- 當數據包通過 TCP 傳輸時,接收方必須始終確認收到數據。
- 第一臺計算機發(fā)送帶有序列號的數據包。
- 通過設置ACK位并將確認號增加接收數據的長度,第二臺計算機對其進行確認。
第 3 步 - 關閉連接
- 當他們不再想發(fā)送或接收數據時,任何一臺計算機都可以關閉連接。
- 計算機通過發(fā)送一個將FIN位設置為11(FIN = 完成)。
- 另一臺計算機回復一個ACK?? 和另一個FIN。在來自發(fā)起計算機的另一個 ACK?? 之后,連接被關閉。

TCP的應用
- 簡單郵件傳輸協議- 用于將電子郵件消息從一臺機器傳輸到另一臺機器的 TCP/IP 標準協議是簡單郵件傳輸協議。
- TELNET - TELNET 是 TCP/IP 協議系列中包含的簡單遠程桌面協議。TELNET 允許一個站點的用戶通過 TCP 連接連接到另一個站點的登錄服務器。
- Rlogin - 支持可信主機的遠程登錄服務 rlogin 包含在從BSD UNIX派生的操作系統中。它使系統管理員能夠選擇一組共享登錄名和文件訪問保護的機器,并在用戶登錄之間建立等效性。
- 文件傳輸協議- 文件傳輸是最常用的 TCP/IP 應用程序之一,占網絡流量的很大一部分。
- 普通文件傳輸協議- TCP/IP 套件包括第二個文件傳輸協議,可提供低成本、簡單的服務。普通文件傳輸協議 (TFTP) 專為不需要客戶端和服務器之間復雜交互的應用程序而設計。
什么是UDP?
UDP(用戶數據報協議)是一種類似于 TCP(傳輸控制協議)的通信協議。
然而,它是一種無連接協議,與 TCP 不同。因為在數據交付之前永遠不會形成 UDP 連接,所以可以快速交換數據。*,與TCP不同,UDP不保證數據包的成功傳遞,數據包在傳輸過程中可能會丟失,存在安全隱患。
UDP 的示例包括域網絡系統 (DNS)、玩 valorant 或 Minecraft 等在線游戲、在線觀看視頻等。
那么,什么是無連接協議?簡單來說,無連接協議是一種標準,它允許數據從一臺計算機發(fā)送到另一臺計算機,而無需確定接收機器是否在線或是否能夠接收數據。
UDP 是如何工作的?
UDP 使用 IP 將數據報從一臺計算機傳輸到另一臺計算機。在 UDP 數據包中,UDP 獲取數據并附加其標頭信息。該數據包括源端口和目標端口、數據包的長度和校驗和。封裝在 IP 數據包中后,UDP 數據包被發(fā)送到它們的目的地。
與 TCP 不同,UDP 不保證數據包到達他們想要的目的地。這意味著,與 TCP 不同,UDP 不直接連接到接收計算機。相反,它會將數據發(fā)送出去,并依靠發(fā)送和接收計算機之間的設備來獲取需要發(fā)送的數據。
UDP的應用
- UDP 可用于需要無損數據傳輸的場景。
- 對于感知延遲至關重要的應用程序,如游戲、語音和視頻通信,UDP 是一個很好的網絡協議。這些示例可以在保持感知質量的同時承受一些數據丟失。
- UDP 也可用于依賴可靠信息交換的應用程序,但這些程序應具有響應數據包的技術。
- 因為它提供分組交換,UDP 也可以用于多播。UDP 也用于一些路由更新協議,例如路由信息協議。
- UDP 可用于速度比可靠性更重要的應用程序。
TCP與UDP之間的區(qū)別


結論
在本文中,我們了解了 TCP 和 UDP 及其應用和區(qū)別。
TCP和UDP都是用于發(fā)送數據位的協議 - 稱為數據包,它們都建立在 Internet 協議之上。