【刷題Day20】TCP和UDP

TCP 和 UDP 有什么區別?

TCP提供了可靠、面向連接的傳輸,適用于需要數據完整性和順序的場景。

UDP提供了更輕量、面向報文的傳輸,適用于實時性要求高的場景。

特性TCPUDP
連接方式面向連接無連接
可靠性提供可靠性,保證數據按順序到達不可靠,不保證順序或完整性
流量控制/擁塞控制提供流量控制和擁塞控制沒有流量控制和擁塞控制
順序保證保證數據順序不保證數據順序
頭部大小較大(20字節及以上)較小(8字節)
性能較低,延遲大較高,延遲小
數據傳輸模式字節流傳輸模式數據報傳輸模式
適用場景文件傳輸、Web、郵件等需要可靠性的應用實時通訊、語音、視頻、游戲等高性能要求應用

說說 TCP 的三次握手?

  1. 客戶首先發送一個SYN(同步序列編號)消息給服務器
  2. 服務器收到后回復一個SYN-ACK(同步序列編號-確認)消息
  3. 最后客戶端再發送一個ACK(確認)消息確認服務器已經收到SYN-ACK消息
  4. 完成三次握手,建立可靠的TCP連接。

TCP 是用來解決什么問題?

TCP(Transmission Control Protocol)通過提供可靠傳輸、流量控制、擁塞控制和連接管理,解決了數據在不可靠的IP網絡上的傳輸問題:

  1. 可靠性傳輸: TCP確保數據包在網絡傳輸過程中不丟失、不重復,并且按順序到達。通過確認(ACK)、重傳機制以及序列號,TCP能夠保證數據在不可靠的IP網絡上可靠傳輸。
  2. 流量控制: TCP通過滑動窗口機制調節發送方的數據發送速率,防止接收方因為處理能力有限而被數據流淹沒。
  3. 擁塞控制: TCP通過擁塞避免算法(如慢啟動、擁塞避免、快速重傳和快速恢復)來防止網絡過載,確保網絡資源的公平使用和穩定性。
  4. 連接管理: TCP是面向連接的協議,采用三次握手(建立連接)和四次揮手(斷開連接)機制來管理會話,確保通信的可靠性和狀態的同步。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/76385.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/76385.shtml
英文地址,請注明出處:http://en.pswp.cn/web/76385.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

REST 架構詳解:從概念到應用的全面剖析

REST(Representational State Transfer)即表述性狀態轉移,是一種用于構建網絡應用程序的架構風格和設計理念,由計算機科學家羅伊?菲爾丁(Roy Fielding)在 2000 年提出。以下是關于它的詳細介紹&#xff1a…

藍橋杯之遞歸二

1.數的劃分 題目描述 將整數 nn 分成 kk 份,且每份不能為空,任意兩份不能相同(不考慮順序)。 例如:n7,k3n7,k3,下面三種分法被認為是相同的。 1,1,5;1,5,…

LeetCode(Hot.2)—— 49.字符異位詞分組題解

Problem: 49. 字母異位詞分組 字母異位詞的定義是:兩個單詞的字母組成一樣,但順序可以不同,比如 eat、tea 和 ate 就是一個組的。 思路 將每個字符串按字母排序,把排序后的字符串作為 key,相同 key 的放在一個 list 中…

為什么信號完整性對于高速連接器設計至關重要?

外部連接器通過在各種電子元件和系統之間可靠地傳輸數據而不損失保真度來保持信號完整性。在本文中,我們將討論信號完整性的重要性,回顧高速部署挑戰,并重點介紹各種連接器設計策略,以防止失真和降級。 了解連接器信號完整性挑戰…

得物官網sign簽名逆向分析

打開得物官網,點擊鞋類,可以看到請求 直接搜sign function p(e) {return f()("".concat(e ? s()(e).sort().reduce(function(t, n) {return "".concat(t).concat(n).concat(e[n])}, "") : "", "048a9…

Ubuntu 安裝WPS Office

文章目錄 Ubuntu 安裝WPS Office下載安裝文件安裝WPS問題1.下載缺失字體文件2.安裝缺失字體 Ubuntu 安裝WPS Office 下載安裝文件 需要到 WPS官網 下載最新軟件,比如wps-office_12.1.0.17900_amd64.deb 安裝WPS 執行命令進行安裝 sudo dpkg -i wps-office_12.1…

javaSE.判空包裝類

判空包裝類Optional,這個類可以很有效的處理空指針問題 空指針異常👇 特判null👇 Optional類可以更加優雅地處理這種問題👇👇 ofNullable👇 isPresent isEmpty 👇 👇 包裝之后&…

使用 vcpkg 構建支持 HTTPS 的 libcurl 并解決常見鏈接錯誤

適用環境:Windows 10/11 Visual Studio 2022 CMake ≥ 3.20 目標讀者:希望在 C 項目中輕松調用 HTTPS(GET/POST/PUT/DELETE),又被 LNK20xx 鏈接錯誤困擾的開發者 目錄 為什么選 vcpkg 與 libcurl用 vcpkg 安裝帶 SS…

ISO26262-淺談用例導出方法和測試方法

目錄 1 摘要2 測試方法3 測試用例導出方法4 測試方法與用例導出方法的差異和聯系5 結論 1 摘要 ISO26262定義了測試方法和用例導出方法,共同保證產品的開發質量。但在剛開始學習ISO26262的時候,又不是非常清晰地理解它倆的區別和聯系。本文主要對它倆的…

RoBoflow數據集的介紹

https://public.roboflow.com/object-detection(該數據集的網址) 可以看到一些基本情況 如果我們想要下載,直接點擊 點擊圖像可以看到一些基本情況 可以點擊紅色箭頭所指,右邊是可供選擇的一些yolo模型的格式 如果你想下載…

基于CFSSL構建高可用ETCD集群全指南(含TLS證書管理)

基于CFSSL構建高可用ETCD集群全指南(含TLS證書管理) 摘要:本文深入講解使用CFSSL工具簽發TLS證書,并部署生產級高可用ETCD集群的完整流程。涵蓋證書全生命周期管理、集群配置優化及安全加固方案,適用于Kubernetes、分…

【設計模式】適配器模式:讓不兼容的接口和諧共處

引言 在軟件開發中,我們經常會遇到這樣的情況:兩個已經存在的接口無法直接協同工作,但我們又希望它們能夠無縫對接。這時,適配器模式就派上用場了。適配器模式(Adapter Pattern)是一種結構型設計模式&…

doris/clickhouse常用sql

一、doris常用SQL 1、doris統計數據庫的總大小(單位:MB) SELECT table_schema AS database_name,ROUND(SUM(data_length) / 1024 / 1024, 2) AS database_size_MB FROM information_schema.tables WHERE table_schema NOT IN (information…

軟件架構分層策略對比及Go項目實踐

一、水平分層 vs 功能劃分 vs 組件劃分 維度水平分層功能劃分組件劃分核心思想按垂直層次劃分職責(如表示層、業務層、數據層)按業務功能模塊劃分(如用戶管理、訂單服務、支付模塊)按技術或業務能力劃分獨立組件(如數…

Linux進程地址空間、寫時拷貝

1.進程地址空間 感知進程地址空間 C/C有內存的概念,內存空間包括棧、堆、代碼段等等,下面是32位下的內存分布圖,自底向上(由0x00000000至0xFFFFFFFF); 下面通過程序來驗證各個數據在該空間的地址,由此感知整個地址空間的分布情…

python成功解決AttributeError: can‘t set attribute ‘lines‘

文章目錄 報錯信息與原因分析解決方法示例代碼代碼解釋總結 報錯信息與原因分析 在使用 matplotlib繪圖時,若嘗試使用 ax.lines []來清除圖表中的線條,會遇到AttributeError: can’t set attribute錯誤。這是因為 ax.lines是一個只讀屬性,不…

從零搭建微服務項目Pro(第6-2章——微服務鑒權模塊SpringSecurity+JWT)

前言: 在上一章已經實現了SpringBoot單服務的鑒權,在導入SpringSecurity的相關依賴,以及使用JWT生成的accessToken和refreshToken能夠實現不同Controller乃至同一Controller中不同接口的權限單獨校驗。上一章鏈接如下: 從零搭建微服務項目Pr…

win安裝軟件

win安裝軟件 jdk安裝 jdk安裝 首先去官網下載適合系統版本的JDK,下載地址: http://www.oracle.com/technetwork/java/javase/downloads/index.html進入下載頁面,如下圖: 首先選擇:Accept License Agreement單選按鈕&…

Prompt-Tuning 提示詞微調

1. Hard Prompt 定義: Hard prompt 是一種更為具體和明確的提示,要求模型按照給定的信息生成精確的結果,通常用于需要模型提供準確答案的任務. 原理: Prompt Tuning原理如下圖所示:凍結主模型全部參數,在…

【Vue生命周期的演變:從Vue 2到Vue 3的深度剖析】

Vue生命周期的演變:從Vue 2到Vue 3的深度剖析 1. 生命周期鉤子的概念與意義 Vue框架通過生命周期鉤子函數使開發者可以在組件不同階段執行自定義邏輯。這些鉤子函數是Vue組件生命周期中的關鍵切入點,對于控制組件行為至關重要。 2. Vue 2中的生命周期…