第一章.網絡基礎
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報文消耗一個序列號,確保可靠性。