以下來自湖科大
計(jì)算機(jī)網(wǎng)絡(luò)
公開課筆記
一、網(wǎng)絡(luò)層概述
網(wǎng)絡(luò)層開始,就是講網(wǎng)絡(luò)與網(wǎng)絡(luò)之間的故事了。
如下是路由器將多個(gè)網(wǎng)絡(luò)N1到N7連接在一起,一個(gè)路由器有多個(gè)網(wǎng)絡(luò)端口,每個(gè)端口的IP地址都不相同,而且同一個(gè)子網(wǎng)下并不只是最后一個(gè)數(shù)不同:
1.1 網(wǎng)絡(luò)層主要解決的問題
1.網(wǎng)絡(luò)層向運(yùn)輸層提供怎樣的服務(wù)(可靠傳輸 or 不可靠傳輸)
2.網(wǎng)絡(luò)尋址問題
3.路由選擇問題
路由器收到數(shù)據(jù)包之后,是依據(jù)路由表來決定將數(shù)據(jù)從哪個(gè)接口轉(zhuǎn)發(fā)出去。路由表的構(gòu)建除了人工設(shè)置(只適用于小型且網(wǎng)絡(luò)拓?fù)洳桓淖兊幕ヂ?lián)網(wǎng)),大部分時(shí)候是由路由器執(zhí)行路由選擇協(xié)議中規(guī)定的路由選擇算法。
有些資料里,把網(wǎng)絡(luò)層也叫做網(wǎng)際層,網(wǎng)際層的由來:
如上圖所示,地址解析協(xié)議ARP也屬于網(wǎng)際層。
1.2 網(wǎng)絡(luò)層提供的兩種服務(wù)
面向連接的虛電路服務(wù)、無連接的數(shù)據(jù)報(bào)服務(wù)
1)面向連接的虛電路服務(wù)
其實(shí)因特網(wǎng)沒有采用這種設(shè)計(jì)思路,因此這不是網(wǎng)際層提供的服務(wù)(網(wǎng)際層是英特網(wǎng)的網(wǎng)絡(luò)層)
這種思路其實(shí)就是企圖在網(wǎng)絡(luò)中模擬出物理上的點(diǎn)對點(diǎn)通信。
2)無連接的數(shù)據(jù)報(bào)服務(wù)
認(rèn)為可靠通信應(yīng)該由用戶主機(jī)來保證,而不是由網(wǎng)絡(luò)來保證,這樣雖然更容易出現(xiàn)誤碼、丟失、重傳和失序(虛電路的服務(wù)不會(huì)有這些問題),但是這樣路由器要做的事情就更少了,因此價(jià)格會(huì)更便宜。
因特網(wǎng)采用這種設(shè)計(jì)思想: 將復(fù)雜的網(wǎng)絡(luò)處理功能置于因特網(wǎng)邊緣(用戶主機(jī)和其內(nèi)部的運(yùn)輸層),而將相對簡單的分組交付功能置于因特網(wǎng)核心
這種好處就是:網(wǎng)絡(luò)造價(jià)大大降低、運(yùn)行方式靈活,能夠適應(yīng)多種應(yīng)用。
二、IPv4地址與路由器查表轉(zhuǎn)發(fā)
這一塊課程講的很細(xì),還是看原課程比較好,本人的筆記記的比較簡略。
2.1 IP數(shù)據(jù)報(bào)轉(zhuǎn)發(fā)過程
IP地址分成網(wǎng)絡(luò)號和主機(jī)號,主機(jī)號那邊又被借走前面幾位數(shù)作為子網(wǎng)號。也就是說:
IP地址 = 網(wǎng)絡(luò)號 + 主機(jī)號 = 網(wǎng)絡(luò)號 + (子網(wǎng)號 + 子網(wǎng)主機(jī)號)
網(wǎng)絡(luò)號用于區(qū)分一個(gè)大范圍的網(wǎng)絡(luò),而子網(wǎng)號區(qū)分的就是小范圍,如果兩個(gè)主機(jī)IPv4地址的網(wǎng)絡(luò)號和子網(wǎng)號一樣,那說明兩者處于同一個(gè)局域網(wǎng)內(nèi),則不需要路由器來進(jìn)行跨子網(wǎng)通信,只需要交換機(jī)。
而判定兩個(gè)主機(jī)是否處于同一個(gè)子網(wǎng),光看IPv4還是看不出來的,因?yàn)樽泳W(wǎng)號是從主機(jī)號那借出來的,光看一個(gè)IPv4地址,你看不出它借了多少位作為子網(wǎng)號。
所以就需要子網(wǎng)掩碼
了,子網(wǎng)掩碼就是網(wǎng)絡(luò)號部分全為1,主機(jī)號全為0,將它和IP地址作與運(yùn)算,那么得到的就是網(wǎng)絡(luò)地址(因?yàn)橹鳈C(jī)號全為0,IP地址的主機(jī)號沒被保留),網(wǎng)絡(luò)地址就是原來那個(gè)IP地址網(wǎng)絡(luò)號保留,然后主機(jī)號全為0。同一個(gè)網(wǎng)絡(luò)子網(wǎng)掩碼一樣,下方圖中的主機(jī)A,B,C,D,E,F子網(wǎng)掩碼都是255.255.255.128
也就是說,將一個(gè)主機(jī)的IP地址和子網(wǎng)掩碼進(jìn)行與運(yùn)算,就能得到該主機(jī)的網(wǎng)絡(luò)地址。(網(wǎng)絡(luò)地址就是前面說的局域網(wǎng)的地址)
在局域網(wǎng)之間通信,如果A主機(jī)和B主機(jī)不在一個(gè)局域網(wǎng),A主機(jī)想發(fā)送數(shù)據(jù)報(bào)給主機(jī)B,就會(huì)對B的主機(jī)IP地址和A的子網(wǎng)掩碼作與運(yùn)算,發(fā)現(xiàn)B不在A這邊的局域網(wǎng)里,那就不能僅靠交換機(jī),必須通過路由器去轉(zhuǎn)發(fā)了
但如果A發(fā)送的是針對B這邊局域網(wǎng)的廣播數(shù)據(jù)報(bào),路由器不會(huì)轉(zhuǎn)發(fā)廣播數(shù)據(jù)報(bào),因?yàn)槁酚善鲿?huì)隔離廣播域,也是為了安全,防范廣播風(fēng)暴。
而且,在上面例子中,主機(jī)A怎么知道用哪個(gè)路由器去把消息發(fā)給主機(jī)B呢,其實(shí)用戶需要在主機(jī)上指定一個(gè)默認(rèn)網(wǎng)關(guān) (就是能將該主機(jī)對外通信的路由器的IP地址)——也說主機(jī)所指定的路由器被稱為默認(rèn)網(wǎng)關(guān)。
顯然左邊這幾個(gè)主機(jī)的默認(rèn)網(wǎng)關(guān)都是一樣的,因?yàn)樗麄冎贿B了一個(gè)路由器的一個(gè)接口。路由器一個(gè)接口對應(yīng)一個(gè)IP地址,路由器有多個(gè)IP地址
2.2 路由器的查表轉(zhuǎn)發(fā)過程
上面說到由子網(wǎng)掩碼得到目的主機(jī)并不在局域網(wǎng)內(nèi),則需要路由器把IP報(bào)文轉(zhuǎn)發(fā)到目的主機(jī)。那么,路由器收到IP數(shù)據(jù)報(bào)后如何轉(zhuǎn)發(fā)?
如下:
上圖中說到在路由表中查找匹配的條目,即路由器查表轉(zhuǎn)發(fā),其具體過程如下:
路由器的路由表記錄多個(gè)條目,這些條目來自于:給路由器的接口配置IP地址和子網(wǎng)掩碼時(shí),本例中2個(gè)接口,所以該路由表是2個(gè)條目。
路由器在自己的路由表中查找匹配的路由條目,逐條檢查路由條目,將目的地址與路由條目中的地址掩碼相與得到目的網(wǎng)絡(luò)地址,像第一行,目的網(wǎng)絡(luò)地址與路由條目中的目的網(wǎng)絡(luò)地址不相同,則這條路有條目不匹配
再檢查下一條路由條目,將目的地址與下一條路由條目中的地址掩碼相與,得到目的網(wǎng)絡(luò)地址,該目的網(wǎng)絡(luò)地址與路由條目中的目的網(wǎng)絡(luò)地址相同,則這條路由條目就是匹配的路由條目,按照他的下一跳指示,也就是從接口1轉(zhuǎn)發(fā)該IP數(shù)據(jù)報(bào),這樣主機(jī)D就可以收到路由器轉(zhuǎn)發(fā)來的該IP數(shù)據(jù)報(bào)
2.3 IP地址分類與兩個(gè)特殊地址127.0.0.0、0.0.0.0
IP地址有多種劃分方法(分類編址、劃分子網(wǎng)和無分類編址),不同歷史時(shí)期的。他們同時(shí)存在著。改進(jìn)劃分方法(無分類編址CIDR)有利于提高IP地址的使用率,減少IP地址的浪費(fèi)。劃分子網(wǎng)的編址方式就是從分類編址的主機(jī)號的后幾位拿出來作為子網(wǎng)號。
這一部分看湖科大教書匠的視頻比較好,內(nèi)容很詳細(xì)。
關(guān)于127.0.0.1和0.0.0.0
(1)127.0.0.1是最小的本地回環(huán)地址,它的由來是前面提到過的分類編址的IPv4地址:
首先這是個(gè)A類地址,如圖,A類地址的前8位是網(wǎng)絡(luò)號,網(wǎng)絡(luò)號的最高位被約定只能為0,即網(wǎng)絡(luò)號只能0開頭,那么A類地址網(wǎng)絡(luò)號的最大取值只能是0111 1111,即27 - 1 = 127
上述這種網(wǎng)絡(luò)號的點(diǎn)分十進(jìn)制為127時(shí),該網(wǎng)絡(luò)號被用于本地軟件環(huán)回測試,不能指派
將網(wǎng)絡(luò)號取最大127,主機(jī)號最低位取1,其余主機(jī)號位都為0,就可得到最小的本地軟件環(huán)回測試地址,其點(diǎn)分十進(jìn)制表示為127.0.0.1
最大的本地軟件環(huán)回測試地址,點(diǎn)分十進(jìn)制為127.255.255.254,即主機(jī)號的最低位取0,其余位取1
(最低位不取1是因?yàn)椋鳈C(jī)號全為1的是廣播地址,即127.255.255.255)
那么127.0.0.1 ~ 127.255.255.254都是本地環(huán)回地址
,用于軟件測試。但一般我們主機(jī)里lo網(wǎng)卡的ip是127.0.0.1,感覺其余的環(huán)回地址平時(shí)接觸不到。
補(bǔ)充兩個(gè)知識點(diǎn):
- 主機(jī)號為全0的地址是網(wǎng)絡(luò)地址,不能分配給主機(jī)或路由器的各接口
- 主機(jī)號為全1的地址是廣播地址,不能分配給主機(jī)或路由器的各接口
而A類地址中,若網(wǎng)絡(luò)號全為0,該網(wǎng)絡(luò)號也被保留,不能指派
若再加上主機(jī)號全為0,即得到0.0.0.0,也是保留地址。
(2)0.0.0.0表示所有無效的,未知的ip地址,或者說是本機(jī)上任意ipv4地址
在服務(wù)器上,當(dāng)一臺主機(jī)還沒有被分配一個(gè)IP地址的時(shí)候,用于表示主機(jī)本身
;
在路由器中,0.0.0.0表示的是默認(rèn)路由
(在靜態(tài)路由配置一節(jié)),即當(dāng)路由表中沒有找到完全匹配的路由的時(shí)候所對應(yīng)的路由。文章來源:http://www.zghlxwxcb.cn/news/detail-428431.html
無分類編址的IPv4地址
就是像128.14.35.7/20 這種帶斜杠的形式,相比之前的分類編址,能更有效的劃分IPv4地址:文章來源地址http://www.zghlxwxcb.cn/news/detail-428431.html
到了這里,關(guān)于計(jì)網(wǎng)第四章.網(wǎng)絡(luò)層—網(wǎng)絡(luò)層概述、IPv4地址及路由器查表轉(zhuǎn)發(fā)的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!