网络层概述
網(wǎng)絡(luò)層提供的功能簡(jiǎn)單來(lái)說(shuō)有如下:
(1)從發(fā)送方主機(jī)傳輸報(bào)文段到接收方主機(jī)。
(2)發(fā)送方主機(jī)封裝報(bào)文段為數(shù)據(jù)報(bào)。
(3)接收方遞交報(bào)文段給傳輸層。
在每個(gè)主機(jī)、路由器上都需要運(yùn)行網(wǎng)絡(luò)層協(xié)議。路由器會(huì)檢查通過(guò)它的所有IP數(shù)據(jù)報(bào)的頭部字段,然后根據(jù)目的IP地址對(duì)數(shù)據(jù)報(bào)進(jìn)行轉(zhuǎn)發(fā)。
如上圖所示,上圖顯示了一個(gè)具有兩臺(tái)主機(jī)和兩臺(tái)主機(jī)之間的路徑上有幾臺(tái)路由器的簡(jiǎn)單網(wǎng)絡(luò)。假設(shè)主機(jī)A向主機(jī)B發(fā)送消息,主機(jī)A的網(wǎng)絡(luò)層將從傳輸層獲得的報(bào)文段封裝成數(shù)據(jù)報(bào),然后將該數(shù)據(jù)報(bào)向相鄰路由器發(fā)送。在接受方主機(jī)B,網(wǎng)絡(luò)層接收來(lái)自相鄰路由器的數(shù)據(jù)報(bào),提取出報(bào)文段,并將其向上交付給主機(jī)B的運(yùn)輸層。路由器的主要作用便是將數(shù)據(jù)報(bào)從入鏈路轉(zhuǎn)發(fā)到出鏈路。
一、轉(zhuǎn)發(fā)和路由選擇
網(wǎng)絡(luò)層的作用從表面上看就是將分組從一臺(tái)主機(jī)移動(dòng)到另一臺(tái)主機(jī)上,這個(gè)過(guò)程需要兩種重要的網(wǎng)絡(luò)層功能:
(1)轉(zhuǎn)發(fā):將分組從路由器的輸入端口轉(zhuǎn)移到正確的路由器輸出端口。類(lèi)似于從發(fā)送方到接收方計(jì)劃旅行路線的過(guò)程。
(2)路由選擇:確定分組從發(fā)送方傳輸?shù)浇邮辗剿?jīng)過(guò)的路徑。通過(guò)路由算法來(lái)完成。類(lèi)似于駕車(chē)通過(guò)一個(gè)立交橋的過(guò)程。
每臺(tái)路由器都具有一張轉(zhuǎn)發(fā)表。路由器通過(guò)檢查到達(dá)分組首部字段的值來(lái)轉(zhuǎn)發(fā)分組,然后使用該值在該路由器的轉(zhuǎn)發(fā)表中索引查詢(xún)。存儲(chǔ)在轉(zhuǎn)發(fā)表項(xiàng)中的該首部的值指出了該分組將被轉(zhuǎn)發(fā)的路由器的輸出鏈路接口。分組首部中的該值可能是該分組的目的地址或該分組所屬連接的指示,這取決于網(wǎng)絡(luò)層協(xié)議。
如圖所示,一個(gè)首部字段為0111的分組到達(dá)路由器。路由器在它的轉(zhuǎn)發(fā)表中索引,決定該分組的輸出鏈路接口是接口2.然后路由器在內(nèi)部將該分組轉(zhuǎn)發(fā)到接口2。
二、連接建立
我們?cè)谇懊媪私饬藗鬏攲舆B接:如TCP協(xié)議,在數(shù)據(jù)實(shí)際傳輸之前,需要發(fā)送方和接收方經(jīng)過(guò)三次握手建立所需的狀態(tài)信息。兩個(gè)進(jìn)程之間建立連接。
以類(lèi)似的方式了解網(wǎng)絡(luò)層連接:指網(wǎng)絡(luò)層數(shù)據(jù)分組開(kāi)始傳輸前,在所選擇的從源到目的地路徑上的各種路由器之間相互握手,建立連接狀態(tài)。如ATM、幀中繼、MPLS的網(wǎng)絡(luò)層。
注意:英特網(wǎng)網(wǎng)絡(luò)層不執(zhí)行連接建立。
三、網(wǎng)絡(luò)層的服務(wù)模型
網(wǎng)絡(luò)服務(wù)模型定義了分組在發(fā)送與接收端系統(tǒng)之間的端到端運(yùn)輸特性。
網(wǎng)絡(luò)層可能提供的服務(wù)有:
(1)確保交付:確保分組到達(dá)目的地。
(2)具有時(shí)延上界的確保交付:主機(jī)到主機(jī)的時(shí)延。
(3)有序分組交付:按發(fā)送順序到達(dá)。
(4)確保最小帶寬:當(dāng)發(fā)送主機(jī)以低于特定比特率的速率發(fā)送比特,分組不會(huì)丟失,在一定時(shí)延到達(dá)。
(5)確保最大時(shí)延抖動(dòng):發(fā)送方發(fā)送兩個(gè)連續(xù)分組的時(shí)間間隔與接收到的間隔相同。
因特網(wǎng)的網(wǎng)絡(luò)層提供的服務(wù):
(1)單一服務(wù),即盡力而為服務(wù)。
(2)分組間的定時(shí)不能被保證。
(3)分組的接收順序與發(fā)送順序不一定相同。
(4)傳送的分組不能保證最終交付,即網(wǎng)絡(luò)可能未向目的地交付分組。
總結(jié)
- 上一篇: Linux学习之系统编程篇:读写锁(pt
- 下一篇: Linux学习之系统编程篇:条件变量(p