HCIA再復習

第一章.網絡基礎

1.1 網絡類型分類

網絡按照二層鏈路類型分為以下四種:

多點接入網絡(MA):

1,廣播型多點接入(BMA):如以太網,支持廣播,設備通過MAC地址通信,適合局域網。

2,非廣播型多點接入(NBMA):如幀中繼,不支持廣播,需手動配置鄰居,常用于廣域網。

點到多點網絡(P2MP):由其他網絡類型手動配置,需指定鄰居。

點到點網絡(P2P):僅兩臺設備,通過串行接口(serial)連接,使用串行線,常用于廣域網。

1.傳輸標準:

?E1:2.048Mbps(歐洲標準)。

?T1:1.544Mbps(北美標準)。

1.2 數據鏈路層協議

以太網協議

·定義:傳輸以太網幀的局域網協議。

·特點:

支持廣播,多設備通過MAC地址區分。

使用頻分技術,傳輸速率高(10Mbps到100Gbps)。

?幀結構:

以太網Ⅱ幀:類型字段標識上層協議(如IP)。

?802.3幀:含LLC子層,提供分片和幀類型號。

HDLC協議

定義:高級數據鏈路控制協議,私有協議,不同廠商不兼容。

特點:

支持透明傳輸,幀格式統一,效率高。

?無驗證機制,安全性較低。

應用:常用于點到點廣域網連接。

PPP協議

定義:點到點協議,公有協議,所有廠商兼容。

特點:

?支持同步/異步線路。

?支持驗證(PAP/CHAP)和錯誤檢測。

?支持IP地址協商(如IPCP)。

?無重傳機制,網絡開銷小。

組成:

?LCP(鏈路控制協議):協商鏈路參數(如MTU)。

?NCP(網絡控制協議):協商網絡層參數(如IP地址)。

工作過程:

1.LCP建立:協商鏈路參數。

2.認證(可選):

PAP:兩次握手,密碼明文,安全性低。

CHAP:三次握手,加密傳輸,安全性高。

3.NCP協商:分配IP地址等。

·應用:用于撥號連接(如PPP?E)或點到點廣域網。

·PPP的CHAP使用挑戰-響應機制(MD5加密),比PAP更安全。

·HDLC和PPP均使用FCS(幀校驗序列)檢測錯誤。

第二章 TCP協議

2.1 TCP協議概述

TCP(傳輸控制協議)是一種可靠的傳輸層協議,特點如下:

·面向連接:傳輸前需建立邏輯連接。

·可靠傳輸:通過確認、重傳、流控等機制確保數據不丟失。

·點到點:每條連接只有兩個端點。

·全雙工:支持雙向同時通信。

·面向字節流:以字節為單位傳輸數據。

TCP適合需要高可靠性的場景(如HTTP、FTP)。

對比UDP:無連接、不可靠、開銷小,適合實時應用(如DNS、視頻流)。

2.2 TCP報文結構

TCP報文頭部包含以下關鍵字段:

字段 長度 描述

源端口號 16位 發送方端口號

目標端口號 16位 接收方端口號

序列號 32位 報文段的字節序號

確認號 32位 期望收到的下一個字節序號

首部長度 4位 TCP頭部長度(單位:4字節,最大60字節)

控制位 6位 URG/ACK/PSH/RST/SYN/FIN標志

窗口大小 16位 接收方的可用緩沖區大小

校驗和 16位 驗證數據完整性

緊急指針 16位 緊急數據的位置

選項 可變 可選字段(如MSS、時間戳)

控制位作用:

?URG:緊急數據優先。

?ACK:確認號有效。

?PSH:盡快推送數據到應用層。

?RST:重置連接(異常終止)。

?SYN:發起連接。

?FIN:釋放連接。

·四元組:源IP、源端口、目標IP、目標端口,唯一標識一條TCP連接。

2.3 TCP可靠傳輸機制

連接確認

·通過ACK報文(ACK=1)確認數據接收,確認號指明期望的下一字節。

重傳機制

·超時重傳:

?RTT:發送到收到確認的往返時間。

?RT?:超時重傳時間,動態調整,略大于RTT。

?網絡擁塞時,RT?加倍以緩解壓力。

·快速重傳:

?接收方連續發送3個冗余ACK,發送方立即重傳丟失數據。

流控機制

·滑動窗口:接收方通過窗口字段(rwnd)通知發送方可發送數據量。

·零窗口:緩沖區滿時,窗口設為0,暫停發送。

·堅持定時器:定期探測窗口更新,避免死鎖。

??

·實際發送窗口 = min(cwnd, rwnd),其中cwnd為擁塞窗口。

·零窗口可能導致死鎖,TCP通過堅持定時器解決。

2.4 TCP擁塞控制

·擁塞判斷:

?數據包超時。

?收到3個冗余ACK。

·擁塞窗口(cwnd):動態調整發送速率,實際發送窗口 = min(cwnd, rwnd)。

擁塞控制階段

1.慢啟動:

?初始cwnd = 1 MSS(最大分段大小)。

?每收到一個ACK,cwnd翻倍(指數增長)。

?達到慢啟動門限(ssthresh)后進入擁塞避免。

2.擁塞避免:

?cwnd每RTT加1 MSS(線性增長)。

3.快速恢復:

?收到3個冗余ACK后,cwnd減半,繼續發送數據。

·ssthresh控制慢啟動到擁塞避免的切換。

·常見算法(如Ren?)優化擁塞控制,HCIA常考Ren?。

2.5 TCP連接管理

三次握手(建立連接)

1.客戶端發送SYN=1(序列號=x)。

2.服務器回復SYN=1, ACK=1(序列號=y,確認號=x+1)。

3.客戶端發送ACK=1(確認號=y+1)。

·目的:確認雙方收發能力,初始化隨機序列號(ISN)防止舊連接干擾。

四次揮手(釋放連接)

1.主動方發送FIN=1(序列號=x)。

2.被動方回復ACK=1(確認號=x+1)。

3.被動方發送FIN=1(序列號=y)。

4.主動方回復ACK=1(確認號=y+1)。

·MSL(最長報文段壽命):默認2分鐘,TIME_WAIT狀態持續2MSL。

·?FIN報文消耗一個序列號,確保可靠性。

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

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

相關文章

Qt 數據庫連接池實現與管理

在 Qt 應用程序中,頻繁創建和銷毀數據庫連接會帶來顯著的性能開銷。數據庫連接池通過復用現有連接,避免重復創建和銷毀連接的開銷,從而提高應用程序的響應速度和吞吐量。本文將詳細介紹 Qt 中數據庫連接池的實現與管理方法。 一、數據庫連接池…

數據采集分析:從信息洪流中掘金的科學與藝術

——如何將原始數據轉化為商業決策的黃金?🌐 引言:我們正淹沒在數據的海洋,卻渴求著知識的甘泉每天全球產生 2.5萬億字節 數據(相當于每秒下載4.5萬部高清電影),但未經分析的數據如同未提煉的原…

Oracle國產化替代:一線DBA的技術決策突圍戰

從“如履薄冰”到“游刃有余”,中國數據庫的自主之路正重塑技術人的思維地圖。 “凌晨三點的最后一次數據校驗通過,割接系統綠燈全亮——**河北移動核心賬務系統的Oracle數據庫已被GoldenDB完全替代**。”2025年6月底,這場持續兩年的攻堅戰畫上句號。當全省業務流量平穩切…

OS19.【Linux】進程狀態(1)

目錄 1.情景引入 2.操作系統學科對進程狀態的分類 運行狀態 基于時間片的輪轉調度算法 阻塞狀態 等待IO設備的例子 等待其他進程中需要獲取的數據 進程喚醒 掛起狀態(全稱為阻塞掛起狀態) 簡單談談虛擬內存管理 就緒狀態 筆面試題 3.Linux對進程狀態的分類 R和S狀…

Hadoop小文件合并技術深度解析:HAR文件歸檔、存儲代價與索引結構

HDFS小文件問題的背景與挑戰在Hadoop分布式文件系統(HDFS)的設計哲學中,"大文件、流式訪問"是核心原則。然而現實場景中,海量小文件(通常指遠小于HDFS默認塊大小128MB的文件)的涌入卻成為系統性能…

Verilog 提取信號的上升沿或者下降沿

上升沿提取代碼&#xff1a;reg [1:0] F1;always (posedge clk)beginif(rst_n 1b0) F1[1:0]<2b00;else F1[1:0]<{F1[0],start_i};endwire start_l2h (F1[1:0]2b01)?1b1:1b0;下降沿提取代碼&#xff1a;reg [1:0] F1;always (posedge clk)b…

.Net core 部署到IIS出現500.19Internal Server Error 解決方法

.Net core 部署到IIS&#xff0c;網頁出現500.19Internal Server Error 解決方法解決方法 在URL:https://dotnet.microsoft.com/zh-tw/download/dotnet/8.0下載并安裝dotnet-hosting-8.0.18-win.exe 重啟IIS服務器

Linux 基本命令整理

&#x1f427; Linux 基本命令整理 為了方便初學者快速掌握 Linux 常用命令&#xff0c;以下是經過分類整理的核心命令及用法說明。 &#x1f4c2; 目錄操作與文件管理 pwd 核心功能&#xff1a;打印當前工作目錄的絕對路徑&#xff0c;明確用戶所在位置。 實操示例&#x…

牛客周賽 Round 101(題解的token計算, 76修地鐵 ,76選數,76構造,qcjj寄快遞,冪中冪plus)

A題解的token計算要記住c中的對數函數&#xff1a;log(n) 是自然對數&#xff08;以e為底&#xff09;ln(nlog10(n) 是以10為底的對log1p(n) 是ln(1n)&#xff0c;提供更高的數值精log2(n) 是以2為底的對logl(n) 和 log10l(n) 是long double版#define _CRT_SECURE_NO_WARNINGS …

商場導航軟件:3D+AI 基于Deepseek 模型的意圖識別技術解析

本文面向室內導航工程師、商場導航系統優化師及LBS 應用開發的技術員&#xff0c;解析商場室內導航系統 3DAI 三大核心技術模塊&#xff0c;并提供可直接復用的工程解決方案。如需獲取商場導航系統技術方案可前往文章最下方獲取&#xff0c;如有項目合作及技術交流歡迎私信作者…

借助Aspose.HTML控件,使用 Python 編程將網頁轉換為 PDF

使用 Python 將網頁轉換為 PDF 有時您需要離線訪問網頁&#xff0c;使其更易于訪問。因此&#xff0c;將HTML頁面轉換為PDF即可滿足您的需求。令人驚訝的是&#xff0c;您可以在幾秒鐘內在 Python 項目中啟用 HTML 到 PDF 的轉換。本指南將為 Python 開發人員介紹一個功能強大…

數據結構:找出字符串中重復的字符(Finding Duplicates in a String)——使用位運算

目錄 預備知識 左移運算&#xff08;<<&#xff09; 位運算 一、從最樸素的方法開始 二、如果只關心“有沒有出現過”&#xff0c;不關心“次數”&#xff0c;還能不能更省&#xff1f; 三、有沒有一種更“緊湊”的方式表示26個開關&#xff1f; 四、用一個整數的…

DevOps 完整實現指南:從理論到實踐

DevOps 是一種集軟件開發&#xff08;Dev&#xff09;與 IT 運維&#xff08;Ops&#xff09;于一體的文化、實踐和工具鏈&#xff0c;旨在通過自動化流程、持續集成/持續交付&#xff08;CI/CD&#xff09;、基礎設施即代碼&#xff08;IaC&#xff09;和跨團隊協作&#xff0…

使用 5 種安全解決方案將 Android 短信導出為PDF

想要將安卓手機短信導出為 PDF 格式&#xff0c;用于法律用途、情感表達或僅僅為了記錄&#xff1f;總之&#xff0c;您可以保存安卓手機短信并將其轉換為 PDF 格式&#xff0c;確保它們井然有序&#xff0c;方便打印。快來獲取解決方案吧&#xff01;第 1 部分&#xff1a;如何…

再談fpga開發(fpga開發的幾個差異)

【 聲明&#xff1a;版權所有&#xff0c;歡迎轉載&#xff0c;請勿用于商業用途。 聯系信箱&#xff1a;feixiaoxing 163.com】學習嵌入式的同學都知道&#xff0c;嵌入式一般分成這幾種chip&#xff0c;有51&#xff0c;有stm32 mcu&#xff0c;有soc&#xff0c;有dsp&#…

Kafka運維實戰 11 - kafka查看消息的具體內容【實戰】

目錄kafka 消息查看1. 直接查看日志文件內容步驟&#xff1a;2. 使用 Kafka 工具查看日志主要參數說明常用命令&#xff1a;輸出說明&#xff1a;3. 注意事項kafka 消息日志文件詳解我們有時候遇到這樣的需求&#xff0c;需要查看下kafka消息的內容。 kafka 消息查看 查看 Ka…

【自動化測試】JMeter+Jenkins自動化接口與性能測試環境部署指南

環境準備與基礎配置 軟硬件環境要求 工具鏈安裝部署 工具鏈安裝部署涉及JDK、JMeter、Jenkins等核心組件,其在Linux與Windows環境下的安裝流程存在顯著差異,企業級部署需重點關注靜默安裝、權限控制及數據備份配置。以下從組件安裝差異、企業級部署要點及備份配置三方面展開…

三步實現Android系統級集成:預裝Google TTS + 默認引擎設置 + 語音包預緩存方案

在定制Android系統時&#xff0c;預裝Google TTS引擎并實現開箱即用的語音服務能顯著提升用戶體驗。本文將詳解預裝APK→設為默認引擎→語音包預緩存的實現方案&#xff0c;適用于ROM開發者或系統定制場景。分步實現方案 預裝Google TTS APK 預裝APK這里可以采用很多種方式&…

Python基礎學習第三課:數據結構與文件操作

以下是Python基礎學習第三課的完整內容&#xff0c;重點講解數據結構&#xff08;列表、字典、元組、集合&#xff09;和文件操作&#xff0c;通過實例演示如何高效管理和操作數據&#xff1a;Python基礎學習第三課&#xff1a;數據結構與文件操作一、課程目標1. 掌握四種核心數…

【PHP 流程控制完全指南】

PHP 流程控制完全指南&#x1f9e0; 一、什么是流程控制&#xff1f; 在編程中&#xff0c;流程控制是指控制程序執行順序的語句。它決定了代碼是“從上往下執行”&#xff0c;還是“根據條件跳轉”&#xff0c;或者“循環執行某些代碼”。 PHP 中的流程控制語句主要包括&#…