linux小白之路,網(wǎng)絡(luò)1

網(wǎng)絡(luò)的基礎(chǔ)


網(wǎng)絡(luò)的重要性

互聯(lián)網(wǎng)時(shí)代,網(wǎng)絡(luò)非常的發(fā)達(dá),網(wǎng)絡(luò)無(wú)處不在

各種操作系統(tǒng)都支持相同的網(wǎng)絡(luò)標(biāo)準(zhǔn)

linux運(yùn)維的職業(yè)生涯50%網(wǎng)絡(luò)故障,都來(lái)源于網(wǎng)絡(luò)


osi 7層模型

物理層:把通信介質(zhì)的信號(hào)裝換成數(shù)字信號(hào)(二進(jìn)制)

????????????????????????通信介質(zhì)

????????????????????????????????????????雙絞線:轉(zhuǎn)換電信號(hào)

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? wifi:轉(zhuǎn)換電磁波

數(shù)據(jù)鏈接層:有mac地址(唯一),通過(guò)交換機(jī)實(shí)現(xiàn)設(shè)備和設(shè)備之間的相互通訊

網(wǎng)絡(luò)層:IP地址(定位),路由(指路)

? ? ? ? ? ?? 公網(wǎng)IP:全世界唯一,定位,可以滿足兩臺(tái)設(shè)備在世界任何位置都能相互通訊 ? ? ? ? ? ?

? ? ? ? ? ? ? 私網(wǎng)IP:局部唯一(解決公網(wǎng)IP不夠用的情況,可以讓多個(gè)設(shè)備共用一個(gè)公網(wǎng)IP上網(wǎng))

? ? ? ? ? ? ? 路由:指定數(shù)據(jù)包的下一站該怎么走

傳輸層:控制數(shù)據(jù)包的傳輸速度和可靠性,應(yīng)用程序端口

????????????????TCP協(xié)議:速度慢,可靠性高 (每傳輸一個(gè)數(shù)據(jù)包都需要確認(rèn)是否收到,適合容易丟包的場(chǎng)景且特別重要的數(shù)據(jù))

????????????????UDP協(xié)議:速度快,可靠性差 (每傳輸一個(gè)數(shù)據(jù)包,不需要確認(rèn),適合局域網(wǎng))

????????????????????端口:多個(gè)程序同時(shí)進(jìn)行通訊,使主機(jī)可以區(qū)分不同的網(wǎng)絡(luò)服務(wù)? ? (客戶端端口是臨時(shí)隨機(jī)不唯一的,這樣可以打開多個(gè)客戶端,安全,服務(wù)端的端口在同一臺(tái)設(shè)備上是唯一的)

會(huì)話層:每一個(gè)鏈接會(huì)創(chuàng)建一個(gè)會(huì)話

表示層:表示文件的類型,用正確的方式打開文件

應(yīng)用層:應(yīng)用程序,最終我們需要傳輸?shù)臄?shù)據(jù)

程序和程序之間通信用的是協(xié)議,所有協(xié)議都是基于osi 7層模型來(lái)設(shè)計(jì)


數(shù)據(jù)封裝,解封裝,數(shù)據(jù)傳輸過(guò)程



TCP/IP協(xié)議 (協(xié)議類似發(fā)電報(bào)用到的密碼本,雙方都要遵守的一種約定)

運(yùn)維只關(guān)注傳輸層 TCP協(xié)議

tcp的標(biāo)識(shí):

????????SYN:建立鏈接

????????ACK:回應(yīng)標(biāo)識(shí)

????????FIN:斷開鏈接

????????PSH:數(shù)據(jù)包

? ? ?? URG:緊急指針

????????RST:重置(重傳)

傳數(shù)據(jù)之前需要三次握手,保證網(wǎng)絡(luò)暢通

????????先需要了解網(wǎng)絡(luò)傳輸?shù)姆绞剑??? 單工(發(fā)送方只能發(fā),接收方只能收,收音機(jī)廣播) ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??

???????????????????????????????????????????????????????????半雙工(雙方都可以作為發(fā)送方和接收方,但不能同時(shí)進(jìn)行,對(duì)講機(jī),WiFi,無(wú)線)

????????????????????????????????????????????????????????全雙工 (同時(shí)收發(fā),雙絞線網(wǎng)絡(luò))

? ? ? ? ? 在網(wǎng)絡(luò)中,誰(shuí)先發(fā)起數(shù)據(jù)包傳輸請(qǐng)求誰(shuí)就是客戶端

????????三次握手,發(fā)測(cè)試包,查看網(wǎng)絡(luò)是否暢通,每個(gè)數(shù)據(jù)包有個(gè)標(biāo)識(shí) ? ?

????????客戶端發(fā)送第一個(gè)SYN標(biāo)識(shí)數(shù)據(jù)包(隨機(jī)序列號(hào)SEQ=x)給服務(wù)器端,進(jìn)入SYN_SEND狀態(tài)。

????????服務(wù)器端收到SYN數(shù)據(jù)包,回應(yīng)一個(gè)SYN,ACK標(biāo)識(shí)(SEQ=y,確認(rèn)序列號(hào)ACK=x+1)報(bào)文,進(jìn)入SYN_RECV狀態(tài)。

????????客戶端收到服務(wù)器端的SYN報(bào)文,回應(yīng)一個(gè)ACK(SEQ=x+1,ACK=y+1)報(bào)文,進(jìn)入Established狀態(tài)。

傳數(shù)據(jù)后需要四次揮手,保證數(shù)據(jù)傳輸完成

????????客戶端發(fā)送一個(gè)fin,ack標(biāo)識(shí)數(shù)據(jù)包(SEQ=j,ack=k)給服務(wù)器端

????????服務(wù)器端收到數(shù)據(jù)包,回應(yīng)一個(gè)ack標(biāo)識(shí)(SEQ=k,ACK=j+1)報(bào)文,

????????等待數(shù)據(jù)傳輸完成,再發(fā)送fin,ack標(biāo)識(shí)(seq=k,ack=j+1)

????????客戶端只需要回應(yīng)一個(gè)ACK(SEQ=J+1,ACK=K+1)數(shù)據(jù)包

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容