计算机网络第四章:网络层
目錄
- 1 網(wǎng)絡(luò)層提供的兩種服務(wù)
- 2 網(wǎng)際協(xié)議IP
- 2.1 虛擬互連網(wǎng)絡(luò)
- 2.2 分類的 IP 地址
- 2.3 IP 地址與硬件地址
- 2.4 地址解析協(xié)議 ARP 和逆地址解析協(xié)議 RARP
- 2.4.1 地址解析協(xié)議 ARP
- 2.4.2 逆地址解析協(xié)議 RARP
- 2.5 IP 數(shù)據(jù)報(bào)的格式
- 3 劃分子網(wǎng)和構(gòu)造超網(wǎng)
- 3.1 劃分子網(wǎng)
- 3.2 子網(wǎng)掩碼
- 4 網(wǎng)際控制報(bào)文協(xié)議 ICMP
- 4.1 ICMP的應(yīng)用舉例 PING (Packet InterNet Groper)
- 4.2 內(nèi)部網(wǎng)關(guān)協(xié)議 RIP (Routing Information Protocol)
- 4.3 內(nèi)部網(wǎng)關(guān)協(xié)議 OSPF (Open Shortest Path First)
1 網(wǎng)絡(luò)層提供的兩種服務(wù)
- 在計(jì)算機(jī)網(wǎng)絡(luò)領(lǐng)域,網(wǎng)絡(luò)層應(yīng)該向運(yùn)輸層提供怎樣的服務(wù)(“面向連接”還是“無連接”)曾引起了長(zhǎng)期的爭(zhēng)論
- 爭(zhēng)論焦點(diǎn)的實(shí)質(zhì)就是:在計(jì)算機(jī)通信中,可靠交付應(yīng)當(dāng)由誰(shuí)來負(fù)責(zé)?是網(wǎng)絡(luò)還是端系統(tǒng)?
電信網(wǎng)的成功經(jīng)驗(yàn)讓網(wǎng)絡(luò)負(fù)責(zé)可靠交付:
- 面向連接的通信方式
- 建立虛電路(Virtual Circuit),以保證雙方通信所需的一切網(wǎng)絡(luò)資源
- 如果再使用可靠傳輸?shù)木W(wǎng)絡(luò)協(xié)議,就可使所發(fā)送的分組無差錯(cuò)按序到達(dá)終點(diǎn)
虛電路是邏輯連接:
- 虛電路表示這只是一條邏輯上的連接,分組都沿著這條邏輯連接按照存儲(chǔ)轉(zhuǎn)發(fā)方式傳送,而并不是真正建立了一條物理連接
- 請(qǐng)注意,電路交換的電話通信是先建立了一條真正的連接。因此分組交換的虛連接和電路交換的連接只是類似,但并不完全一樣
因特網(wǎng)采用的設(shè)計(jì)思路:
- 網(wǎng)絡(luò)層向上只提供簡(jiǎn)單靈活的、無連接的、盡最大努力交付的數(shù)據(jù)報(bào)服務(wù)
- 網(wǎng)絡(luò)在發(fā)送分組時(shí)不需要先建立連接。每一個(gè)分組(即 IP 數(shù)據(jù)報(bào))獨(dú)立發(fā)送,與其前后的分組無關(guān)(不進(jìn)行編號(hào))
- 網(wǎng)絡(luò)層不提供服務(wù)質(zhì)量的承諾。即所傳送的分組可能出錯(cuò)、丟失、重復(fù)和失序(不按序到達(dá)終點(diǎn)),當(dāng)然也不保證分組傳送的時(shí)限
虛電路服務(wù)與數(shù)據(jù)報(bào)服務(wù)的對(duì)比:
2 網(wǎng)際協(xié)議IP
網(wǎng)際協(xié)議 IP 是 TCP/IP 體系中兩個(gè)最主要的協(xié)議之一。與 IP 協(xié)議配套使用的還有四個(gè)協(xié)議:
網(wǎng)際層的 IP 協(xié)議及配套協(xié)議:
2.1 虛擬互連網(wǎng)絡(luò)
互連在一起的網(wǎng)絡(luò)要進(jìn)行通信,會(huì)遇到許多問題需要解決,如:不同的尋址方案、不同的最大分組長(zhǎng)度、不同的網(wǎng)絡(luò)接入機(jī)制、不同的超時(shí)控制、不同的差錯(cuò)恢復(fù)方法、不同的狀態(tài)報(bào)告方法、不同的路由選擇技術(shù)、不同的用戶接入控制、不同的服務(wù)(面向連接服務(wù)和無連接服務(wù))、不同的管理與控制方式
網(wǎng)絡(luò)互相連接起來要使用一些中間設(shè)備(中間設(shè)備又稱為中間系統(tǒng)或中繼(relay)系統(tǒng)):
- 物理層中繼系統(tǒng):轉(zhuǎn)發(fā)器(repeater)
- 數(shù)據(jù)鏈路層中繼系統(tǒng):網(wǎng)橋或橋接器(bridge)
- 網(wǎng)絡(luò)層中繼系統(tǒng):路由器(router)
- 網(wǎng)橋和路由器的混合物:橋路器(brouter)
- 網(wǎng)絡(luò)層以上的中繼系統(tǒng):網(wǎng)關(guān)(gateway)
互連網(wǎng)絡(luò)與虛擬互連網(wǎng)絡(luò) :
2.2 分類的 IP 地址
IP 地址及其表示方法:
- 我們把整個(gè)因特網(wǎng)看成為一個(gè)單一的、抽象的網(wǎng)絡(luò)。IP 地址就是給每個(gè)連接在因特網(wǎng)上的主機(jī)(或路由器)分配一個(gè)在全世界范圍是唯一的 32 位的標(biāo)識(shí)符
- IP 地址現(xiàn)在由因特網(wǎng)名字與號(hào)碼指派公司ICANN (Internet Corporation for Assigned Names and Numbers)進(jìn)行分配
IP 地址的編址方法:
- 分類的 IP 地址。這是最基本的編址方法,在 1981 年就通過了相應(yīng)的標(biāo)準(zhǔn)協(xié)議
- 子網(wǎng)的劃分。這是對(duì)最基本的編址方法的改進(jìn),其標(biāo)準(zhǔn)[RFC 950]在 1985 年通過
- 構(gòu)成超網(wǎng)。這是比較新的無分類編址方法。1993 年提出后很快就得到推廣應(yīng)用
分類 IP 地址:
- 每一類地址都由兩個(gè)固定長(zhǎng)度的字段組成,其中一個(gè)字段是網(wǎng)絡(luò)號(hào) net-id,它標(biāo)志主機(jī)(或路由器)所連接到的網(wǎng)絡(luò),而另一個(gè)字段則是主機(jī)號(hào) host-id,它標(biāo)志該主機(jī)(或路由器)
- 兩級(jí)的 IP 地址可以記為:
IP 地址中的網(wǎng)絡(luò)號(hào)字段和主機(jī)號(hào)字段:
點(diǎn)分十進(jìn)制記法:
常用的三種類別的 IP 地址:
2.3 IP 地址與硬件地址
2.4 地址解析協(xié)議 ARP 和逆地址解析協(xié)議 RARP
2.4.1 地址解析協(xié)議 ARP
- 不管網(wǎng)絡(luò)層使用的是什么協(xié)議,在實(shí)際網(wǎng)絡(luò)的鏈路上傳送數(shù)據(jù)幀時(shí),最終還是必須使用硬件地址
- 每一個(gè)主機(jī)都設(shè)有一個(gè) ARP 高速緩存(ARP cache),里面有所在的局域網(wǎng)上的各主機(jī)和路由器的 IP 地址到硬件地址的映射表
- 當(dāng)主機(jī) A 欲向本局域網(wǎng)上的某個(gè)主機(jī) B 發(fā)送 IP 數(shù)據(jù)報(bào)時(shí),就先在其 ARP 高速緩存中查看有無主機(jī) B 的 IP 地址。如有,就可查出其對(duì)應(yīng)的硬件地址,再將此硬件地址寫入 MAC 幀,然后通過局域網(wǎng)將該 MAC 幀發(fā)往此硬件地址
2.4.2 逆地址解析協(xié)議 RARP
- 逆地址解析協(xié)議 RARP 使只知道自己硬件地址的主機(jī)能夠知道其 IP 地址
- 這種主機(jī)往往是無盤工作站。 因此 RARP協(xié)議目前已很少使用
2.5 IP 數(shù)據(jù)報(bào)的格式
- 一個(gè) IP 數(shù)據(jù)報(bào)由首部和數(shù)據(jù)兩部分組成
- 首部的前一部分是固定長(zhǎng)度,共 20 字節(jié),是所有 IP 數(shù)據(jù)報(bào)必須具有的
- 在首部的固定部分的后面是一些可選字段,其長(zhǎng)度是可變的
IP 數(shù)據(jù)報(bào)首部的可變部分:
- IP 首部的可變部分就是一個(gè)選項(xiàng)字段,用來支持排錯(cuò)、測(cè)量以及安全等措施,內(nèi)容很豐富
- 選項(xiàng)字段的長(zhǎng)度可變,從 1 個(gè)字節(jié)到 40 個(gè)字節(jié)不等,取決于所選擇的項(xiàng)目
- 增加首部的可變部分是為了增加 IP 數(shù)據(jù)報(bào)的功能,但這同時(shí)也使得 IP 數(shù)據(jù)報(bào)的首部長(zhǎng)度成為可變的。這就增加了每一個(gè)路由器處理數(shù)據(jù)報(bào)的開銷
- 實(shí)際上這些選項(xiàng)很少被使用
3 劃分子網(wǎng)和構(gòu)造超網(wǎng)
3.1 劃分子網(wǎng)
從兩級(jí) IP 地址到三級(jí) IP 地址,在 ARPANET 的早期,IP 地址的設(shè)計(jì)確實(shí)不夠合理:
- IP 地址空間的利用率有時(shí)很低
- 給每一個(gè)物理網(wǎng)絡(luò)分配一個(gè)網(wǎng)絡(luò)號(hào)會(huì)使路由表變得太大因而使網(wǎng)絡(luò)性能變壞
- 兩級(jí)的 IP 地址不夠靈活
三級(jí)的 IP 地址:
- 從 1985 年起在 IP 地址中又增加了一個(gè)“子網(wǎng)號(hào)字段”,使兩級(jí)的 IP 地址變成為三級(jí)的 IP 地址
- 這種做法叫作劃分子網(wǎng)(subnetting) 。劃分子網(wǎng)已成為因特網(wǎng)的正式標(biāo)準(zhǔn)協(xié)議
劃分子網(wǎng)的基本思路:
- 劃分子網(wǎng)純屬一個(gè)單位內(nèi)部的事情。單位對(duì)外仍然表現(xiàn)為沒有劃分子網(wǎng)的網(wǎng)絡(luò)
- 從主機(jī)號(hào)借用若干個(gè)位作為子網(wǎng)號(hào) subnet-id,而主機(jī)號(hào) host-id 也就相應(yīng)減少了若干個(gè)位
- 凡是從其他網(wǎng)絡(luò)發(fā)送給本單位某個(gè)主機(jī)的 IP 數(shù)據(jù)報(bào),仍然是根據(jù) IP 數(shù)據(jù)報(bào)的目的網(wǎng)絡(luò)號(hào) net-id,先找到連接在本單位網(wǎng)絡(luò)上的路由器
- 然后此路由器在收到 IP 數(shù)據(jù)報(bào)后,再按目的網(wǎng)絡(luò)號(hào) net-id 和子網(wǎng)號(hào) subnet-id 找到目的子網(wǎng)
- 最后就將 IP 數(shù)據(jù)報(bào)直接交付目的主機(jī)
一個(gè)未劃分子網(wǎng)的 B 類網(wǎng)絡(luò)145.13.0.0:
劃分為三個(gè)子網(wǎng)后對(duì)外仍是一個(gè)網(wǎng)絡(luò):
劃分子網(wǎng)后變成了三級(jí)結(jié)構(gòu):
- 當(dāng)沒有劃分子網(wǎng)時(shí),IP 地址是兩級(jí)結(jié)構(gòu)
- 劃分子網(wǎng)后 IP 地址就變成了三級(jí)結(jié)構(gòu)
- 劃分子網(wǎng)只是把 IP 地址的主機(jī)號(hào) host-id 這部分進(jìn)行再劃分,而不改變 IP 地址原來的網(wǎng)絡(luò)號(hào) net-id
3.2 子網(wǎng)掩碼
- 從一個(gè) IP 數(shù)據(jù)報(bào)的首部并無法判斷源主機(jī)或目的主機(jī)所連接的網(wǎng)絡(luò)是否進(jìn)行了子網(wǎng)劃分
- 使用子網(wǎng)掩碼(subnet mask)可以找出 IP 地址中的子網(wǎng)部分
IP 地址的各字段和子網(wǎng)掩碼:
(IP 地址) AND (子網(wǎng)掩碼) = 網(wǎng)絡(luò)地址:
默認(rèn)子網(wǎng)掩碼:
子網(wǎng)掩碼是一個(gè)重要屬性:
- 子網(wǎng)掩碼是一個(gè)網(wǎng)絡(luò)或一個(gè)子網(wǎng)的重要屬性
- 路由器在和相鄰路由器交換路由信息時(shí),必須把自己所在網(wǎng)絡(luò)(或子網(wǎng))的子網(wǎng)掩碼告訴相鄰路由器
- 路由器的路由表中的每一個(gè)項(xiàng)目,除了要給出目的網(wǎng)絡(luò)地址外,還必須同時(shí)給出該網(wǎng)絡(luò)的子網(wǎng)掩碼
- 若一個(gè)路由器連接在兩個(gè)子網(wǎng)上就擁有兩個(gè)網(wǎng)絡(luò)地址和兩個(gè)子網(wǎng)掩碼
4 網(wǎng)際控制報(bào)文協(xié)議 ICMP
- 為了提高 IP 數(shù)據(jù)報(bào)交付成功的機(jī)會(huì),在網(wǎng)際層使用了網(wǎng)際控制報(bào)文協(xié)議 ICMP (Internet Control Message Protocol)
- ICMP 允許主機(jī)或路由器報(bào)告差錯(cuò)情況和提供有關(guān)異常情況的報(bào)告
- ICMP 不是高層協(xié)議,而是 IP 層的協(xié)議
- ICMP 報(bào)文作為 IP 層數(shù)據(jù)報(bào)的數(shù)據(jù),加上數(shù)據(jù)報(bào)的首部,組成 IP 數(shù)據(jù)報(bào)發(fā)送出去
ICMP 報(bào)文的格式:
4.1 ICMP的應(yīng)用舉例 PING (Packet InterNet Groper)
- PING 用來測(cè)試兩個(gè)主機(jī)之間的連通性
- PING 使用了 ICMP 回送請(qǐng)求與回送回答報(bào)文
- PING 是應(yīng)用層直接使用網(wǎng)絡(luò)層 ICMP 的例子,它沒有通過運(yùn)輸層的 TCP 或UDP
4.2 內(nèi)部網(wǎng)關(guān)協(xié)議 RIP (Routing Information Protocol)
工作原理:
- 路由信息協(xié)議 RIP 是內(nèi)部網(wǎng)關(guān)協(xié)議 IGP中最先得到廣泛使用的協(xié)議
- RIP 是一種分布式的基于距離向量的路由選擇協(xié)議
- RIP 協(xié)議要求網(wǎng)絡(luò)中的每一個(gè)路由器都要維護(hù)從它自己到其他每一個(gè)目的網(wǎng)絡(luò)的距離記錄
4.3 內(nèi)部網(wǎng)關(guān)協(xié)議 OSPF (Open Shortest Path First)
OSPF 協(xié)議的基本特點(diǎn):
- “開放”表明 OSPF 協(xié)議不是受某一家廠商控制,而是公開發(fā)表的
- “最短路徑優(yōu)先”是因?yàn)槭褂昧?Dijkstra 提出的最短路徑算法SPF
- OSPF 只是一個(gè)協(xié)議的名字,它并不表示其他的路由選擇協(xié)議不是“最短路徑優(yōu)先”
- 是分布式的鏈路狀態(tài)協(xié)議
總結(jié)
以上是生活随笔為你收集整理的计算机网络第四章:网络层的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: C语言经典例40-逆置数组
- 下一篇: C语言经典例61-杨辉三角