计网PPT 第四章 网络层
目錄
1.網(wǎng)絡層提供的兩種服務
Ⅰ.—種觀點:讓網(wǎng)絡負責可靠交付
虛電路服務
虛電路是邏輯連接
Ⅱ.另一種觀點:網(wǎng)絡提供數(shù)據(jù)報服條
盡最大努力交付
數(shù)據(jù)報服務
虛電路服務與數(shù)據(jù)報服務的對比
2.網(wǎng)際協(xié)議IP
網(wǎng)際層的IP協(xié)議及配套協(xié)議
Ⅰ.虛擬互連網(wǎng)絡
①使用一些中間設備進行互連
②使用路由器
互連網(wǎng)絡與虛擬互連網(wǎng)絡
虛擬互連網(wǎng)絡的意義
從網(wǎng)絡層看IP數(shù)據(jù)報的傳送
Ⅱ.分類的IP地址
①IP地址及其表示方法
IP地址的編址方法
IPv4的特殊地址-私有地址/內(nèi)部地址
點分十進制記法
②常用的三種類別的IP地址
一般不使用的特殊的IP地址
IP地址的一些重要特點
Ⅲ.IP地址與硬件地址
Ⅳ.地址解析協(xié)議ARP(Address Resolution Protocol)
地址解析協(xié)議ARP 的作用
地址解析協(xié)議ARP要點
ARP高速緩存的作用
使用ARP的四種典型情況
?Ⅴ.IP數(shù)據(jù)報的格式
①IP數(shù)據(jù)報首部的固定部分中的各字段
②IP數(shù)據(jù)報首部的固定部分中的各字段
IP數(shù)據(jù)報實例
Ⅵ.IP層轉(zhuǎn)發(fā)分組的流程
查找路由表
特定主機路由
默認路由(default route)
默認路由舉例
必須強調(diào)指出
路由器分組轉(zhuǎn)發(fā)算法
關(guān)于路由表
3.劃分子網(wǎng)和構(gòu)造超網(wǎng)
Ⅰ.劃分子網(wǎng)
①從兩級IP地址到三級IP地址
三級IP地址
劃分子網(wǎng)的基本思路
劃分為三個子網(wǎng)后對外仍是一個網(wǎng)絡
劃分子網(wǎng)后變成了三級結(jié)構(gòu)
②子網(wǎng)掩碼
IP地址的各字段和子網(wǎng)掩碼
子網(wǎng)掩碼是一個重要屬性
子網(wǎng)劃分方法
Ⅱ.使用子網(wǎng)時分組的轉(zhuǎn)發(fā)
在劃分子網(wǎng)情況下路由器轉(zhuǎn)發(fā)分組的算法
Ⅲ.無分類編址CIDR(構(gòu)造超網(wǎng))
①網(wǎng)絡前綴
IP編址問題的演進
無分類的兩級編址
CIDR地址塊
路由聚合(route aggregation)
CIDR記法的其他形式
常用的 CIDR 地址塊
構(gòu)成超網(wǎng)
CIDR地址塊劃分舉例
②最長前綴匹配
③使用二叉線索查找路由表
用5個前綴構(gòu)成的二叉線索
4.網(wǎng)際控制報文協(xié)議ICMP
ICMP 報文的格式
Ⅰ.ICMP 報文的種類
①ICMP 差錯報告報文共有4種
不應發(fā)送ICMP差錯報告報文的幾種情況
②ICMP 詢問報文有兩種
Ⅱ.ICMP的應用舉例
5.互聯(lián)網(wǎng)的路由選擇協(xié)議
Ⅰ.有關(guān)路由選擇協(xié)議的幾個基本概念
①理想的路由算法
關(guān)于“最佳路由”
從路由算法的自適應性考慮
②分層次的路由選擇協(xié)議
自治系統(tǒng)AS (Autonomous System)
?互聯(lián)網(wǎng)有兩大類路由選擇協(xié)議
自治系統(tǒng)和內(nèi)部網(wǎng)關(guān)協(xié)議、外部網(wǎng)關(guān)協(xié)議
Ⅱ.內(nèi)部網(wǎng)關(guān)協(xié)議RIP
①工作原理
“距離”的定義
RIP協(xié)議的三個特點
路由表的建立
②距離向量算法
路由器之間交換信息與路由表更新
【例】路由表更新
③RIP2協(xié)議的報文格式
RIP2報文
好消息傳播得快,壞消息傳播得慢
RIP協(xié)議的優(yōu)缺點
Ⅲ.內(nèi)部網(wǎng)關(guān)協(xié)議OSPF
①OSPF協(xié)議的基本特點
三個要點
鏈路狀態(tài)數(shù)據(jù)庫(link-state database)
OSPF的區(qū)域(area)
OSPF劃分為兩種不同的區(qū)域
主干路由器?編輯
區(qū)域邊界路由器
OSPF直接用IP數(shù)據(jù)報傳送
OSPF的其他特點
OSPF分組?編輯
②OSPF的五種分組類型
OSPF的基本操作?編輯
OSPF使用可靠的洪泛法發(fā)送更新分組
OSPF的其他特點
指定的路由器
Ⅳ.外部網(wǎng)關(guān)協(xié)議BGP
BGP使用環(huán)境不同
BGP發(fā)言人
BGP交換路由信息
BGP發(fā)言人和自治系統(tǒng)AS的關(guān)系
AS的連通圖舉例
BGP發(fā)言人交換路徑向量
BGP協(xié)議的特點
BGP-4共使用四種報文
BGP報文具有通用首部
Ⅴ.路由器的構(gòu)成
①路由器的結(jié)構(gòu)
“轉(zhuǎn)發(fā)”和“路由選擇”的區(qū)別
輸入端口對線路上收到的分組的處理
輸出端口將交換結(jié)構(gòu)傳送來的分組發(fā)送到線路
分組丟棄
②交換結(jié)構(gòu)
6.IPv6
Ⅰ.lPv6的基本首部
lPv6數(shù)據(jù)報的一般形式
lPv6數(shù)據(jù)報的基本首部
lPv6的擴展首部
Ⅱ.lPv6的地址
結(jié)點與接口
冒號十六進制記法
零壓縮
點分十進制記法的后綴
lPv6地址分類
Ⅲ.從IPv4向IPv6過渡
雙協(xié)議棧
隧道技術(shù)
Ⅳ.ICMPv6
ICMPv6報文的分類
7.IP多播
Ⅰ.IP多播的基本概念
多播可大大節(jié)約網(wǎng)絡資源
IP多播
多播IP地址
多播數(shù)據(jù)報
Ⅱ.在局域網(wǎng)上進行硬件多播
D類地址與以太網(wǎng)多播地址的映射關(guān)系
Ⅲ.網(wǎng)際組管理協(xié)議IGMP和多播路由選擇協(xié)議
①IP多播需要兩種協(xié)議
IGMP使多播路由器 知道 多播組成員信息
IGMP 的使用范圍
多播路由選擇協(xié)議更為復雜
②網(wǎng)際組管理協(xié)議IGMP
IGMP是整個網(wǎng)際協(xié)議IP的一個組成部分
IGMP 工作可分為兩個階段
IGMP 采用的一些具體措施
③多播路由選擇
多播路由選擇協(xié)議在轉(zhuǎn)發(fā)多播數(shù)據(jù)報時使用三種方法:
幾種多播路由選擇協(xié)議
8.虛擬專用網(wǎng)VPN和網(wǎng)絡地址轉(zhuǎn)換NAT
Ⅰ.虛擬專用網(wǎng)VPN
本地地址與全球地址
RFC 1918指明的專用P地址
專用網(wǎng)
虛擬專用網(wǎng)VPN
虛擬專用網(wǎng)VPN構(gòu)建
用隧道技術(shù)實現(xiàn)虛擬專用網(wǎng)
內(nèi)聯(lián)網(wǎng)intranet和外聯(lián)網(wǎng)extranet
遠程接入 VPN
Ⅱ.網(wǎng)絡地址轉(zhuǎn)換NAT
網(wǎng)絡地址轉(zhuǎn)換的過程
網(wǎng)絡地址轉(zhuǎn)換NAT
網(wǎng)絡地址與端口號轉(zhuǎn)換NAPT
NAPT地址轉(zhuǎn)換表
9.多協(xié)議標記交換 MPLS
MPLS特點
Ⅰ.MPLS的工作原理
①基本工作過程
MPLS協(xié)議的基本原理
MPLS的基本工作過程
②轉(zhuǎn)發(fā)等價類FEC(Forwarding Equivalence Class)
?FEC用于負載平衡
流量工程
Ⅱ.MPLS首部的位置與格式?
MPLS首部的格式
1.網(wǎng)絡層提供的兩種服務
- 在計算機網(wǎng)絡領域,網(wǎng)絡層應該向運輸層提供怎樣的服務(“面向連接”還是“無連接”)曾引起了長期的爭論。
- 爭論焦點的實質(zhì)就是:在計算機通信中,可靠交付應當由誰來負責?是網(wǎng)絡還是端系統(tǒng)?
Ⅰ.—種觀點:讓網(wǎng)絡負責可靠交付
- 這種觀點認為,應借助于電信網(wǎng)的成功經(jīng)驗,讓網(wǎng)絡負責可靠交付,計算機網(wǎng)絡應模仿電信網(wǎng)絡,使用面向連接的通信方式。
- 通信之前先建立虛電路(Virtual Circuit),以保證雙方通信所需的一切網(wǎng)絡資源。
- 如果再使用可靠傳輸?shù)木W(wǎng)絡協(xié)議,就可使所發(fā)送的分組無差錯按序到達終點,不丟失、不重復。
虛電路服務
| ?發(fā)送給??的所有分組都沿著同一條虛電路傳送 |
虛電路是邏輯連接
- 虛電路表示這只是一條邏輯上的連接,分組都沿著這條邏輯連接按照存儲轉(zhuǎn)發(fā)方式傳送,而并不是真正建立了一條物理連接。
- 請注意,電路交換的電話通信是先建立了一條真正的連接。
- 因此分組交換的虛連接和電路交換的連接只是類似,但并不完全一樣。
Ⅱ.另一種觀點:網(wǎng)絡提供數(shù)據(jù)報服條
- 互聯(lián)網(wǎng)的先驅(qū)者提出了一種嶄新的網(wǎng)絡設計思路。網(wǎng)絡層向上只提供簡單靈活的、無連接的、盡最大努力交付的數(shù)據(jù)報服務。
- 網(wǎng)絡在發(fā)送分組時不需要先建立連接。每一個分組(即IP數(shù)據(jù)報)獨立發(fā)送,與其前后的分組無關(guān)(不進行編號)。
- 網(wǎng)絡層不提供服務質(zhì)量的承諾。即所傳送的分組可能出錯、丟失、重復和失序(不按序到達終點),當然也不保證分組傳送的時限。
盡最大努力交付
- 由于傳輸網(wǎng)絡不提供端到端的可靠傳輸服務,這就使網(wǎng)絡中的路由器可以做得比較簡單,而且價格低廉(與電信網(wǎng)的交換機相比較)。
- 如果主機(即端系統(tǒng))中的進程之間的通信需要是可靠的,那么就由網(wǎng)絡的主機中的運輸層負責可靠交付(包括差錯處理、流量控制等)。
? - 采用這種設計思路的好處是:網(wǎng)絡的造價大大降低,運行方式靈活,能夠適應多種應用。
- 互連網(wǎng)能夠發(fā)展到今日的規(guī)模,充分證明了當初采用這種設計思路的正確性。
數(shù)據(jù)報服務
| ?發(fā)送給 的分組可能沿著不同路徑傳送 |
虛電路服務與數(shù)據(jù)報服務的對比
?
| 思路 | 可靠通信應當由網(wǎng)絡來保證 | 可靠通信應當由用戶主機來保證 |
| 連接的建立 | 必須有 | 不需要 |
| 終點地址 | 僅在連接建立階段使用,每個分組使用短的虛電路號 | 每個分組都有終點的完整地址 |
| 分組的轉(zhuǎn)發(fā) | 屬于同一條虛電路的分組均按照同一路由進行轉(zhuǎn)發(fā) | 每個分組獨立選擇路由進行轉(zhuǎn)發(fā) |
| 當結(jié)點出故障時 | 所有通過出故障的結(jié)點的虛電路均不能工作 | 出故障的結(jié)點可能會丟失分組,一些路由可能會發(fā)生變化 |
| 分組的順序 | 總是按發(fā)送順序到達終點 | 到達終點時不一定按發(fā)送順序 |
| 端到端的差錯處理和流量控制 | 可以由網(wǎng)絡負責,也可以由用戶主機負責 | 由用戶主機負責 |
2.網(wǎng)際協(xié)議IP
▲ 網(wǎng)際協(xié)議IP是TCP/IP體系中兩個最主要的協(xié)議之一。
▲ 與IP協(xié)議配套使用的還有三個協(xié)議:
- 地址解析協(xié)議ARP (Address Resolution Protocol)
- 網(wǎng)際控制報文協(xié)議ICMP (Internet Control Message Protocol)
- 網(wǎng)際組管理協(xié)議IGMP (Internet Group Management Protocol)
網(wǎng)際層的IP協(xié)議及配套協(xié)議
Ⅰ.虛擬互連網(wǎng)絡
將網(wǎng)絡互連并能夠互相通信,會遇到許多問題需要解決,如:
- 不同的尋址方案
- 不同的最大分組長度
- 不同的網(wǎng)絡接入機制
- 不同的超時控制
- 不同的差錯恢復方法
- 不同的狀態(tài)報告方法
- 不同的路由選擇技術(shù)
- 不同的用戶接入控制
- 不同的服務(面向連接服務和無連接服務)
- 不同的管理與控制方式等
| 如何將異構(gòu)的網(wǎng)絡互相連接起來? |
①使用一些中間設備進行互連
■ 將網(wǎng)絡互相連接起來要使用一些中間設備。
■ 中間設備又稱為中間系統(tǒng)或中繼(relay)系統(tǒng)。
■ 有以下五種不同的中間設備:
- 物理層中繼系統(tǒng):轉(zhuǎn)發(fā)器(repeater)。
- 數(shù)據(jù)鏈路層中繼系統(tǒng):網(wǎng)橋或橋接器(bridge)。
- 網(wǎng)絡層中繼系統(tǒng):路由器(router)。
- 網(wǎng)橋和路由器的混合物:橋路器(brouter)。
- 網(wǎng)絡層以上的中繼系統(tǒng):網(wǎng)關(guān)(gateway)。
②使用路由器
- 當中繼系統(tǒng)是轉(zhuǎn)發(fā)器或網(wǎng)橋時,一般并不稱之為網(wǎng)絡互連,因為這僅僅是把一個網(wǎng)絡擴大了,而這仍然是一個網(wǎng)絡。
- 網(wǎng)關(guān)由于比較復雜,目前使用得較少。
- 網(wǎng)絡互連都是指用路由器進行網(wǎng)絡互連和路由選擇。
- 由于歷史的原因,許多有關(guān)TCP/IP的文獻將網(wǎng)絡層使用的路由器稱為網(wǎng)關(guān)。
互連網(wǎng)絡與虛擬互連網(wǎng)絡
虛擬互連網(wǎng)絡的意義
- 所謂虛擬互連網(wǎng)絡也就是邏輯互連網(wǎng)絡,它的意思就是互連起來的各種物理網(wǎng)絡的異構(gòu)性本來是客觀存在的,但是我們利用IP協(xié)議就可以使這些性能各異的網(wǎng)絡從用戶看起來好像是一個統(tǒng)一的網(wǎng)絡。
- 使用IP協(xié)議的虛擬互連網(wǎng)絡可簡稱為IP網(wǎng)。
- 使用虛擬互連網(wǎng)絡的好處是:當互聯(lián)網(wǎng)上的主機進行通信時,就好像在一個網(wǎng)絡上通信一樣,而看不見互連的各具體的網(wǎng)絡異構(gòu)細節(jié)。
- 如果在這種覆蓋全球的IP網(wǎng)的上層使用TCP協(xié)議,那么就是現(xiàn)在的互聯(lián)網(wǎng)(Internet)。
| 互聯(lián)網(wǎng)可以由多種異構(gòu)網(wǎng)絡互連組成。 |
從網(wǎng)絡層看IP數(shù)據(jù)報的傳送
- 如果我們只從網(wǎng)絡層考慮問題,那么IP數(shù)據(jù)報就可以想象是在網(wǎng)絡層中傳送。
Ⅱ.分類的IP地址
■ 在TCP/IP體系中,IP地址是一個最基本的概念。
■ 本部分重點學習:
- IP地址及其表示方法
- 常用的三種類別的IP地址
①IP地址及其表示方法
-
我們把整個因特網(wǎng)看成為一個單一的、抽象的網(wǎng)絡。
-
地址就是給每個連接在互聯(lián)網(wǎng)上的主機(或路由器)分配一個在全世界范圍是唯一的32位的標識符。
-
地址現(xiàn)在由互聯(lián)網(wǎng)名字和數(shù)字分配機構(gòu)ICANN (Internet Corporation for AssignedNames and Numbers)進行分配。
IP地址的編址方法
- 分類的IP地址。這是最基本的編址方法,在1981年就通過了相應的標準協(xié)議。
-
子網(wǎng)的劃分。這是對最基本的編址方法的改進,其標準[RFC 950]在1985年通過。
-
構(gòu)成超網(wǎng)。這是比較新的無分類編址方法。1993年提出后很快就得到推廣應用。
分類IP地址
- 將lP地址劃分為若干個固定類。
- 每一類地址都由兩個固定長度的字段組成,其中一個字段是網(wǎng)絡號net-id,它標志主機(或路由器)所連接到的網(wǎng)絡,而另一個字段則是主機號host-id,它標志該主機(或路由器)。主機號在它前面的網(wǎng)絡號所指明的網(wǎng)絡范圍內(nèi)必須是唯一的。
- 由此可見,一個IP地址在整個互聯(lián)網(wǎng)范圍內(nèi)是唯一的。
- 這種兩級的P地址結(jié)構(gòu)如下:
- 這種兩級的IP地址可以記為:
| 各類IP地址的網(wǎng)絡號字段和主機號字段 |
IPv4的特殊地址-私有地址/內(nèi)部地址
■ IETF分別從A、B、C三類地址中取出一段地址范圍保留用作內(nèi)部網(wǎng)絡地址,它們分別是:
-
10.0.0.0 ~10.255.255.255
-
172.16.0.0~172.31.255.255
-
192.168.0.0~192.168.255.255
■ 這些地址范圍是專門用來標識內(nèi)部網(wǎng)絡的,不能用來訪問Internet,因為Internet上路由器不會轉(zhuǎn)發(fā)目標地址在上述三個范圍內(nèi)的數(shù)據(jù)包。
■ 使用:ipconfig 查看本機的IPv4地址
點分十進制記法
?舉例:
②常用的三種類別的IP地址
| A | 126(-2) | 1 | 126 | 16777214 |
| B | 16383(-1) | 128.1 | 191.255 | 65534 |
| C | 2097151(-1) | 192.0.1 | 223.255.255 | 254 |
一般不使用的特殊的IP地址
| 0 | 0 | 可以 | 不可 | 在本網(wǎng)絡上的本主機(見6.6DHCP協(xié)議) |
| 0 | host-id | 可以 | 不可 | 在本網(wǎng)絡上的某臺主機host-id |
| 全1 | 全1 | 不可 | 可以 | 只在本網(wǎng)絡上進行廣播(各路由器均不轉(zhuǎn)發(fā)) |
| net-id | 全1 | 不可 | 可以 | 對net-id上的所有主機進行廣播 |
| 127 | 非全0或全1的任何數(shù) | 可以 | 可以 | 用作本地軟件環(huán)回測試之用 |
IP地址的一些重要特點
⑴?IP地址是一種分等級的地址結(jié)構(gòu)。分兩個等級的好處是:
- 第一,IP地址管理機構(gòu)在分配IP地址時只分配網(wǎng)絡號,而剩下的主機號則由得到該網(wǎng)絡號的單位自行分配,這樣就方便了IP地址的管理。
- 第二,路由器僅根據(jù)目的主機所連接的網(wǎng)絡號來轉(zhuǎn)發(fā)分組(而不考慮目的主機號),這樣就可以使路由表中的項目數(shù)大幅度減少,從而減小了路由表所占的存儲空間。
⑵ 實際上IP地址是標志一個主機(或路由器)和一條鏈路的接口。
- 當一個主機同時連接到兩個網(wǎng)絡上時,該主機就必須同時具有兩個相應的IP地址,其網(wǎng)絡號net-id必須是不同的。這種主機稱為多歸屬主機(multihomed host)。
- 由于一個路由器至少應當連接到兩個網(wǎng)絡(這樣它才能將I數(shù)據(jù)報從一個網(wǎng)絡轉(zhuǎn)發(fā)到另一個網(wǎng)絡),因此一個路由器至少應當有兩個不同的IP地址。
⑶ 用轉(zhuǎn)發(fā)器或網(wǎng)橋連接起來的若干個局域網(wǎng)仍為一個網(wǎng)絡,因此這些局域網(wǎng)都具有同樣的網(wǎng)絡號net-id.
⑷ 所有分配到網(wǎng)絡號net-id的網(wǎng)絡,無論是范圍很小的局域網(wǎng),還是可能覆蓋很大地理范圍的廣域網(wǎng),都是平等的。
?
| 在同一個局域網(wǎng)上的主機或路由器的P地址中的網(wǎng)絡號必須是一樣的。圖中的網(wǎng)絡號就是P地址中的net-id |
|
| 兩個路由器直接相連的接口處,可指明也可不指明IP地址。如指明IP地址,則這一段連線就構(gòu)成了一種只包含一段線路的特殊“網(wǎng)絡”。現(xiàn)在常不指明IP地址。 |
Ⅲ.IP地址與硬件地址
■?IP地址與硬件地址是不同的地址。
■ 從層次的角度看,
- 硬件地址(或物理地址)是數(shù)據(jù)鏈路層和物理層使用的地址。
- IP地址是網(wǎng)絡層和以上各層使用的地址,是一種邏輯地址(稱IP地址是邏輯地址是因為IP地址是用軟件實現(xiàn)的)。
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?IP地址與硬件地址的區(qū)別
| IP地址放在IP數(shù)據(jù)報的首部,而硬件地址則放在MAC幀的首部。 |
| 通信的路徑: ?→經(jīng)過??轉(zhuǎn)發(fā)→再經(jīng)過??轉(zhuǎn)發(fā)→? |
| 在IP層抽象的互聯(lián)網(wǎng)上只能看到IP數(shù)據(jù)報。圖中的??→??表示從源地址?到目的地址??。兩個路由器的IP地址并不出現(xiàn)在IP數(shù)據(jù)報的首部中。 |
| 路由器只根據(jù)目的站的P地址的網(wǎng)絡號進行路由選擇。 |
| 在鏈路上看MAC幀的流動 |
| 在具體的物理網(wǎng)絡的鏈路層只能看見MAC幀而看不見IP數(shù)據(jù)報 |
| IP層抽象的互聯(lián)網(wǎng)屏蔽了下層很復雜的細節(jié)。 |
主機??與??通信中使用的IP地址與硬件地址HA
| 在網(wǎng)絡層寫入IP數(shù)據(jù)報首部的地址 | 在數(shù)據(jù)鏈路層寫入MAC幀首部的地址 | |||
| 源地址 | 目的地址 | 源地址 | 目的地址 | |
| 從??到? | ||||
| 從??到? | ||||
| 從??到? | ||||
Ⅳ.地址解析協(xié)議ARP(Address Resolution Protocol)
■ 通信時使用了兩個地址:
- IP地址(網(wǎng)絡層地址)
- MAC地址(數(shù)據(jù)鏈路層地址)
地址解析協(xié)議ARP 的作用
已經(jīng)知道了一個機器(主機或路由器)的IP地址,找出其相應的硬件地址
?
| ?ARP作用:從網(wǎng)絡層使用的P地址,解析出在數(shù)據(jù)鏈路層使用的硬件地址。 |
地址解析協(xié)議ARP要點
■ 不管網(wǎng)絡層使用的是什么協(xié)議,在實際網(wǎng)絡的鏈路上傳送數(shù)據(jù)幀時,最終還是必須使用硬件地址。
■ 每一個主機都設有一個ARP高速緩存(ARP cache),里面有所在的局域網(wǎng)上的各主機和路由器的IP地址到硬件地址的映射表。
| <lP address ; MAC address ;TTL> |
TTL (Time To Live):地址映射有效時間。
■ 當主機A欲向本局域網(wǎng)上的某個主機B發(fā)送IP數(shù)據(jù)報時,就先在其ARP高速緩存中查看有無主機B的IP地址。
- 如有,就可查出其對應的硬件地址,再將此硬件地址寫入MAC幀,然后通過局域網(wǎng)將該MAC幀發(fā)往此硬件地址。
- 如沒有,ARP進程在本局域網(wǎng)上廣播發(fā)送一個ARP請求分組。收到ARP響應分組后,將得到的地址到硬件地址的映射寫入ARP高速緩存。
■ ARP請求分組:包含發(fā)送方硬件地址/發(fā)送方IP地址/目標方硬件地址(未知時填0)/目標方IP地址。
■ 本地廣播ARP請求(路由器不轉(zhuǎn)發(fā)ARP請求)。
■ ARP響應分組:包含發(fā)送方硬件地址/發(fā)送方IP地址/目標方硬件地址/目標方IP地址。
■ ARP分組封裝在物理網(wǎng)絡的幀中傳輸。
| 主機A?廣播發(fā)送ARP請求分組 |
| 主機B向A?發(fā)送ARP響應分組 |
ARP高速緩存的作用
- 存放最近獲得的IP地址到MAC地址的綁定,以減少ARP廣播的數(shù)量。
- 為了減少網(wǎng)絡上的通信量,主機A在發(fā)送其ARP請求分組時,就將自己的IP地址到硬件地址的映射寫入ARP請求分組。
- 當主機B收到A的ARP請求分組時,就將主機A的這一地址映射寫入主機B自己的ARP高速緩存中。這對主機B以后向A發(fā)送數(shù)據(jù)報時就更方便了。
應當注意的問題
- ARP是解決同一個局域網(wǎng)上的主機或路由器的 IP 地址和硬件地址的映射問題。
- 如果所要找的主機和源主機不在同一個局域網(wǎng)上,那么就要通過ARP找到一個位于本局域網(wǎng)上的某個路由器的硬件地址,然后把分組發(fā)送給這個路由器,讓這個路由器把分組轉(zhuǎn)發(fā)給下一個網(wǎng)絡。剩下的工作就由下一個網(wǎng)絡來做。
- 從 IP 地址到硬件地址的解析是自動進行的,主機的用戶對這種地址解析過程是不知道的。
- 只要主機或路由器要和本網(wǎng)絡上的另一個已知 IP 地址的主機或路由器進行通信,ARP協(xié)議就會自動地將該 IP 地址解析為鏈路層所需要的硬件地址。
使用ARP的四種典型情況
① 發(fā)送方是主機,要把 IP數(shù)據(jù)報 發(fā)送到本網(wǎng)絡上的另一個主機。這時用 ARP 找到目的主機的硬件地址。
② 發(fā)送方是主機,要把IP數(shù)據(jù)報發(fā)送到另一個網(wǎng)絡上的一個主機。這時用ARP找到本網(wǎng)絡上的一個路由器的硬件地址。剩下的工作由這個路由器來完成。
③ 發(fā)送方是路由器,要把IP數(shù)據(jù)報轉(zhuǎn)發(fā)到本網(wǎng)絡上的一個主機。這時用ARP找到目的主機的硬件地址。
④ 發(fā)送方是路由器,要把IP數(shù)據(jù)報轉(zhuǎn)發(fā)到另一個網(wǎng)絡上的一個主機。這時用ARP找到本網(wǎng)絡上另一個路由器的硬件地址。剩下的工作由這個路由器來完成。
為什么不直接使用硬件地址進行通信?
- 由于全世界存在著各式各樣的網(wǎng)絡,它們使用不同的硬件地址。要使這些異構(gòu)網(wǎng)絡能夠互相通信就必須進行非常復雜的硬件地址轉(zhuǎn)換工作,因此幾乎是不可能的事。
- IP編址把這個復雜問題解決了。連接到互聯(lián)網(wǎng)的主機只需各自擁有一個唯一的 IP地址,它們之間的通信就像連接在同一個網(wǎng)絡上那樣簡單方便,因為上述的調(diào)用ARP的復雜過程都是由計算機軟件自動進行的,對用戶來說是看不見這種調(diào)用過程的。
- 因此,在虛擬的 IP網(wǎng)絡上用 IP地址進行通信給廣大的計算機用戶帶來了很大的方便。
Ⅴ.IP數(shù)據(jù)報的格式
- 一個IP數(shù)據(jù)報由首部和數(shù)據(jù)兩部分組成。
- 首部的前一部分是固定長度,共20字節(jié),是所有?IP數(shù)據(jù)報必須具有的。
- 在首部的固定部分的后面是一些可選字段,其長度是可變的。
| 首部的前一部分是固定長度,共20字節(jié),是所有P數(shù)據(jù)報必須具有的。 |
| 可選字段,其長度是可變的 |
①IP數(shù)據(jù)報首部的固定部分中的各字段
| 占4位,指IP協(xié)議的版本。 目前的 IP協(xié)議版本號為4(即 IPv4)。 |
| 占4位,可表示的最大數(shù)值是15個單位(一個單位為4字節(jié)) 因此IP的首部長度的最大值是60字節(jié)。 |
| 占8位,用來獲得更好的服務。 在舊標準中叫做服務類型,但實際上一直未被使用過。 1998年這個字段改名為區(qū)分服務。 只有在使用區(qū)分服務(DiffServ)時,這個字段才起作用。 在一般的情況下都不使用這個字段 |
| 占16位,指首部和數(shù)據(jù)之和的長度, 單位為字節(jié),因此數(shù)據(jù)報的最大長度為65535字節(jié)。 總長度必須不超過最大傳送單元MTU。 |
| 占16位,它是一個計數(shù)器,用來產(chǎn)生 IP數(shù)據(jù)報的標識。 |
| 占3位,目前只有前兩位有意義。 標志字段的最低位是 MF(More Fragment)。 MF=1表示后面 “還有分片”。MF =0表示最后一個分片。 標志字段中間的一位是DF (Don't Fragment)。 只有當DF=0時才允許分片。 |
| 占13位,指出:較長的分組在分片后某片在原分組中的相對位置。 片偏移以8個字節(jié)為偏移單位。 |
| 占8位,記為TTL (Time To Live), 指示數(shù)據(jù)報在網(wǎng)絡中可通過的路由器數(shù)的最大值。 |
| 占8位,指出此數(shù)據(jù)報攜帶的數(shù)據(jù)使用何種協(xié)議, 以便目的主機的IP層將數(shù)據(jù)部分 上交給那個處理過程 |
| 占16位,只檢驗數(shù)據(jù)報的首部,不檢驗數(shù)據(jù)部分。這里不采用CRC檢驗碼而采用簡單的計算方法。 ? |
| 各占4字節(jié) |
協(xié)議
IP數(shù)據(jù)報分片
- 一數(shù)據(jù)報的總長度為3820字節(jié),其數(shù)據(jù)部分的長度為3800字節(jié)(使用固定首部),需要分片為長度不超過1420字節(jié)的數(shù)據(jù)報片。
- 因固定首部長度為20字節(jié),因此每個數(shù)據(jù)報片的數(shù)據(jù)部分長度不能超過1400字節(jié)。
- 于是分為3個數(shù)據(jù)報片,其數(shù)據(jù)部分的長度分別為1400、1400和1000字節(jié)。
- 原始數(shù)據(jù)報首部被復制為各數(shù)據(jù)報片的首部,但必須修改有關(guān)字段的值。
| 原始數(shù)據(jù)報 | 3820 | 12345 | 0 | 0 | 0 |
| 數(shù)據(jù)報片1 | 1420 | 12345 | 1 | 0 | 0 |
| 數(shù)據(jù)報片2 | 1420 | 12345 | 1 | 0 | 175 |
| 數(shù)據(jù)報片3 | 1020 | 12345 | 0 | 0 | 350 |
IP協(xié)議支持多種協(xié)議,
IP數(shù)據(jù)報可以封裝多種協(xié)議PDU。
| IP數(shù)據(jù)報首部檢驗和的計算采用16位二進制反碼求和算法 |
②IP數(shù)據(jù)報首部的固定部分中的各字段
- IP 首部的可變部分就是一個選項字段,用來支持排錯、測量以及安全等措施,內(nèi)容很豐富。
- 選項字段的長度可變,從1個字節(jié)到40個字節(jié)不等,取決于所選擇的項目。
- 增加首部的可變部分是為了增加 IP 數(shù)據(jù)報的功能,但這同時也使得 IP 數(shù)據(jù)報的首部長度成為可變的。這就增加了每一個路由器處理數(shù)據(jù)報的開銷。
- 實際上這些選項很少被使用。
IP數(shù)據(jù)報實例
- 該主機所在網(wǎng)絡的網(wǎng)關(guān)路由器的 MAC 地址是(50:2b:73:d4:30:7d)?。
- 該數(shù)據(jù)報文是由 IP(172.27.18.2)發(fā)給IP(31.13.68.16),IP數(shù)據(jù)報長度(20),數(shù)據(jù)報文總長度(40)。0x0010---00 28
- 該數(shù)據(jù)報文傳輸層協(xié)議(TCP),源端口(58329),目的端口(443(SSL))?。
Ⅵ.IP層轉(zhuǎn)發(fā)分組的流程
- 假設:有四個A類網(wǎng)絡通過三個路由器連接在一起。每一個網(wǎng)絡上都可能有成千上萬個主機。
- 可以想像,若按目的主機號來制作路由表,每一個路由表就有4萬個項目,即4萬行(每一行對應于一臺主機),則所得出的路由表就會過于龐大。
- 但若按主機所在的網(wǎng)絡地址來制作路由表,那么每一個路由器中的路由表就只包含4個項目(每一行對應于一個網(wǎng)絡),這樣就可使路由表大大簡化。
| 在路由表中,對每一條路由,最主要的是(目的網(wǎng)絡地址,下一跳地址) |
查找路由表
根據(jù)目的網(wǎng)絡地址就能確定下一跳路由器,這樣做的結(jié)果是:
- IP數(shù)據(jù)報最終一定可以找到目的主機所在目的網(wǎng)絡上的路由器(可能要通過多次的間接交付)。
- 只有到達最后一個路由器時,才試圖向目的主機進行直接交付。
特定主機路由
- 雖然互聯(lián)網(wǎng)所有的分組轉(zhuǎn)發(fā)都是基于目的主機所在的網(wǎng)絡,但在大多數(shù)情況下都允許有這樣的特例,即為特定的目的主機指明一個路由。
- 采用特定主機路由可使網(wǎng)絡管理人員能更方便地控制網(wǎng)絡和測試網(wǎng)絡,同時也可在需要考慮某種安全問題時采用這種特定主機路由。
默認路由(default route)
- 路由器還可采用默認路由以減少路由表所占用的空間和搜索路由表所用的時間。
- 這種轉(zhuǎn)發(fā)方式在一個網(wǎng)絡只有很少的對外連接時是很有用的。
- 默認路由在主機發(fā)送IP數(shù)據(jù)報時往往更能顯示出它的好處。
- 如果一個主機連接在一個小網(wǎng)絡上,而這個網(wǎng)絡只用一個路由器和互聯(lián)網(wǎng)連接,那么在這種情況下使用默認路由是非常合適的。
默認路由舉例
| 只要目的網(wǎng)絡不是??和??,就一律選擇默認路由, |
必須強調(diào)指出
- IP 數(shù)據(jù)報的首部中沒有地方可以用來指明“下一跳路由器的IP地址”。
- 當路由器收到待轉(zhuǎn)發(fā)的數(shù)據(jù)報,不是將下一跳路由器的IP地址填入IP數(shù)據(jù)報,而是送交下層的網(wǎng)絡接口軟件。
- 網(wǎng)絡接口軟件使用ARP負責將下一跳路由器的IP地址轉(zhuǎn)換成硬件地址,并將此硬件地址放在鏈路層的MAC幀的首部,然后根據(jù)這個硬件地址找到下一跳路由器。
路由器分組轉(zhuǎn)發(fā)算法
①從數(shù)據(jù)報的首部提取目的主機的IP地址D,得出目的網(wǎng)絡地址為N。
②若網(wǎng)絡N與此路由器直接相連,則把數(shù)據(jù)報直接交付目的主機D;否則是間接交付,執(zhí)行③。
③若路由表中有目的地址為D的特定主機路由,則把數(shù)據(jù)報傳送給路由表中所指明的下一跳路由器;否則,執(zhí)行④。
④若路由表中有到達網(wǎng)絡N的路由,則把數(shù)據(jù)報傳送給路由表指明的下一跳路由器;否則,執(zhí)行⑤。
⑤若路由表中有一個默認路由,則把數(shù)據(jù)報傳送給路由表中所指明的默認路由器;否則,執(zhí)行⑥。
⑥報告轉(zhuǎn)發(fā)分組出錯。
關(guān)于路由表
- 路由表沒有給分組指明到某個網(wǎng)絡的完整路徑。
- 路由表指出,到某個網(wǎng)絡應當先到某個路由器(即下一跳路由器)。
- 在到達下一跳路由器后,再繼續(xù)查找其路由表,知道再下一步應當?shù)侥囊粋€路由器。
- 這樣一步一步地查找下去,直到最后到達目的網(wǎng)絡。
3.劃分子網(wǎng)和構(gòu)造超網(wǎng)
Ⅰ.劃分子網(wǎng)
①從兩級IP地址到三級IP地址
■? 在ARPANET的早期,IP地址的設計確實不夠合理:
IP地址空間的利用率有時很低。
給每一個物理網(wǎng)絡分配一個網(wǎng)絡號會使路由表變得太大因而使網(wǎng)絡性能變壞。
兩級的IP地址不夠靈活。
三級IP地址
- 從1985年起在IP地址中又增加了一個“子網(wǎng)號字段”,使兩級的IP地址變成為三級的IP地址。
- 這種做法叫做劃分子網(wǎng)(subnetting)?。
- 劃分子網(wǎng)已成為互聯(lián)網(wǎng)的正式標準協(xié)議。
劃分子網(wǎng)的基本思路
- 劃分子網(wǎng)純屬一個單位內(nèi)部的事情。單位對外仍然表現(xiàn)為沒有劃分子網(wǎng)的網(wǎng)絡。
- 從主機號借用若干個位作為子網(wǎng)號?subnet-id,而主機號 host-id 也就相應減少了若干個位。
| IP地址 ::={ <網(wǎng)絡號>,<子網(wǎng)號>,<主機號>}? ? ? ? (4-2) |
- 凡是從其他網(wǎng)絡發(fā)送給本單位某個主機的IP數(shù)據(jù)報,仍然是根據(jù)IP數(shù)據(jù)報的目的網(wǎng)絡號net-id,先找到連接在本單位網(wǎng)絡上的路由器。
- 然后此路由器在收到IP數(shù)據(jù)報后,再按目的網(wǎng)絡號net-id 和子網(wǎng)號subnet-id找到目的子網(wǎng)。
- 最后就將IP數(shù)據(jù)報直接交付目的主機。
劃分為三個子網(wǎng)后對外仍是一個網(wǎng)絡
劃分子網(wǎng)后變成了三級結(jié)構(gòu)
- 當沒有劃分子網(wǎng)時,IP地址是兩級結(jié)構(gòu)。
- 劃分子網(wǎng)后IP地址就變成了三級結(jié)構(gòu)。
- 劃分子網(wǎng)只是把IP地址的主機號host-id這部分進行再劃分,而不改變IP地址原來的網(wǎng)絡號net-id。
?
■??優(yōu)點
- 減少了IP地址的浪費
- 使網(wǎng)絡的組織更加靈活
- 更便于維護和管理
■??劃分子網(wǎng)純屬一個單位內(nèi)部的事情,對外部網(wǎng)絡透明,對外仍然表現(xiàn)為沒有劃分子網(wǎng)的一個網(wǎng)絡。
②子網(wǎng)掩碼
-
從一個IP數(shù)據(jù)報的首部并無法判斷源主機或目的主機所連接的網(wǎng)絡是否進行了子網(wǎng)劃分。
-
使用子網(wǎng)掩碼(subnet mask)可以找出IP地址中的子網(wǎng)部分。
規(guī)則:
- 子網(wǎng)掩碼長度=32位
- 某位=1:IP地址中的對應位為網(wǎng)絡號和子網(wǎng)號
- 某位=0:IP地址中的對應位為主機號
IP地址的各字段和子網(wǎng)掩碼
| ?(IP地址)AND(子網(wǎng)掩碼)=網(wǎng)絡地址 |
| A類地址 |
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 8個1? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?24個0 | ||||||
| B類地址 |
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?16個1? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 16個0 | ||||||
| C類地址 |
|
子網(wǎng)掩碼是一個重要屬性
- 子網(wǎng)掩碼是一個網(wǎng)絡或一個子網(wǎng)的重要屬性。
- 路由器在和相鄰路由器交換路由信息時,必須把自己所在網(wǎng)絡(或子網(wǎng))的子網(wǎng)掩碼告訴相鄰路由器。
- 路由器的路由表中的每一個項目,除了要給出目的網(wǎng)絡地址外,還必須同時給出該網(wǎng)絡的子網(wǎng)掩碼。
- 若一個路由器連接在兩個子網(wǎng)上就擁有兩個網(wǎng)絡地址和兩個子網(wǎng)掩碼。
子網(wǎng)劃分方法
- 有固定長度子網(wǎng)和變長子網(wǎng)兩種子網(wǎng)劃分方法。
- 在采用固定長度子網(wǎng)時,所劃分的所有子網(wǎng)的子網(wǎng)掩碼都是相同的。
- 雖然根據(jù)已成為互聯(lián)網(wǎng)標準協(xié)議的 RFC 950文檔,子網(wǎng)號不能為全1或全0,但隨著無分類域間路由選擇CIDR的廣泛使用,現(xiàn)在全1和全0的子網(wǎng)號也可以使用了,但一定要謹慎使用,確認你的路由器所用的路由選擇軟件是否支持全 0 或全 1 的子網(wǎng)號這種較新的用法。
- 劃分子網(wǎng)增加了靈活性,但卻減少了能夠連接在網(wǎng)絡上的主機總數(shù)。
?
| 【例4-2】已知IP地址是141.14.72.24,子網(wǎng)掩碼是255.255.192.0 。試求網(wǎng)絡地址。 |
| 【例4-3】上例中,若子網(wǎng)掩碼改為255.255.224.0,試求網(wǎng)絡地址,討論所得結(jié)果。 |
Ⅱ.使用子網(wǎng)時分組的轉(zhuǎn)發(fā)
- 在不劃分子網(wǎng)的兩級IP地址下,從IP地址得出網(wǎng)絡地址是個很簡單的事。
- 但在劃分子網(wǎng)的情況下,從IP地址卻不能唯一地得出網(wǎng)絡地址來,這是因為網(wǎng)絡地址取決于那個網(wǎng)絡所采用的子網(wǎng)掩碼,但數(shù)據(jù)報的首部并沒有提供子網(wǎng)掩碼的信息。
- 因此分組轉(zhuǎn)發(fā)的算法也必須做相應的改動。
在劃分子網(wǎng)情況下路由器轉(zhuǎn)發(fā)分組的算法
①從收到的分組的首部提取目的IP地址D。
②先用各網(wǎng)絡的子網(wǎng)掩碼和D逐位相 “與”,看是否和相應的網(wǎng)絡地址匹配。若匹配,則將分組直接交付。否則就是間接交付,執(zhí)行③ 。
③若路由表中有目的地址為D的特定主機路由,則將分組傳送給
指明的下一跳路由器;否則,執(zhí)行④。
④對路由表中的每一行,將子網(wǎng)掩碼和D逐位相 “與”。若結(jié)果與該行的目的網(wǎng)絡地址匹配,則將分組傳送給該行指明的下一跳路由器;否則,執(zhí)行⑤。
⑤若路由表中有一個默認路由,則將分組傳送給路由表中所指明的默認路由器;否則,執(zhí)行⑥。
⑥報告轉(zhuǎn)發(fā)分組出錯。
| 【例4-4】已知互聯(lián)網(wǎng)和路由器??中的路由表。主機??向??發(fā)送分組。試討論??收到?向??發(fā)送的分組后查找路由表的過程。 |
| 主機??要發(fā)送分組給? |
| 要發(fā)送的分組的目的P地址:128.30.33.138 |
| 因此H首先檢查主機128.30.33.138是否連接在本網(wǎng)絡上 如果是,則直接交付; 否則,就送交路由器R,并逐項查找路由表。 |
| 主機??首先將 本子網(wǎng)的子網(wǎng)掩碼255.255.255.128 與分組的IP地址128.30.33.138 逐比特相“與”?(AND 操作) |
| 因此??必須把分組傳送到路由器??,然后逐項查找路由表 |
| 路由器??收到分組后就用路由表中第1個項目的子網(wǎng)掩碼和128.30.33.138逐比特AND操作 |
Ⅲ.無分類編址CIDR(構(gòu)造超網(wǎng))
?①網(wǎng)絡前綴
劃分子網(wǎng)在一定程度上緩解了互聯(lián)網(wǎng)在發(fā)展中遇到的困難。然而在1992年互聯(lián)網(wǎng)仍然面臨三個必須盡早解決的問題:
?IP編址問題的演進
- 1987年,RFC 1009 就指明了在一個劃分子網(wǎng)的網(wǎng)絡中可同時使用幾個不同的子網(wǎng)掩碼。
- 使用變長子網(wǎng)掩碼 VLSM?(Variable Length Subnet Mask)可進一步提高IP地址資源的利用率。
- 在VLSM的基礎上又進一步研究出無分類編址方法,它的正式名字是無分類域間路由選擇CIDR(Classless Inter-Domain Routing)。
CIDR 最主要的特點
- CIDR 消除了傳統(tǒng)的A類、B類和C類地址以及劃分子網(wǎng)的概念,因而可以更加有效地分配IPv4的地址空間。
- CIDR 使用各種長度的 “網(wǎng)絡前綴” (network-prefix)來代替分類地址中的網(wǎng)絡號和子網(wǎng)號。
- IP地址從三級編址(使用子網(wǎng)掩碼)又回到了兩級編址。
無分類的兩級編址
- 無分類的兩級編址的記法是:
- CIDR 使用 “斜線記法” (slash notation),它又稱為CIDR 記法,即在IP地址面加上一個斜線“P,然后寫上網(wǎng)絡前綴所占的位數(shù)(這個數(shù)值對應于三級編址中子網(wǎng)掩碼中1的個數(shù))。例如:220.78.168.0/24
CIDR地址塊
■? CIDR 把網(wǎng)絡前綴都相同的連續(xù)的IP地址組成 “CIDR地址塊” 。
■? 128.14.32.0/20表示的地址塊共有212個地址(因為斜線后面的20是網(wǎng)絡前綴的位數(shù),所以這個地址的主機號是12位)。
- 這個地址塊的起始地址是128.14.32.0。
- 在不需要指出地址塊的起始地址時,也可將這樣的地址塊簡稱為“/20地址塊”。
- 128.14.32.0/20地址塊的最小地址:128.14.32.0
- 128.14.32.0/20地址塊的最大地址:128.14.47.255
- 全0和全1的主機號地址一般不使用。
| 128.14.32.0/20表示的地址(個地址) |
路由聚合(route aggregation)
- 一個CIDR地址塊可以表示很多地址,這種地址的聚合常稱為路由聚合,它使得路由表中的一個項目可以表示很多個(例如上千個)原來傳統(tǒng)分類地址的路由。
- 路由聚合有利于減少路由器之間的路由選擇信息的交換,從而提高了整個互聯(lián)網(wǎng)的性能。
- 路由聚合也稱為構(gòu)成超網(wǎng)(supernetting)。
- CIDR 雖然不使用子網(wǎng)了,但仍然使用 “掩碼” 這一名詞(但不叫子網(wǎng)掩碼)。
- 對于/20地址塊,它的掩碼是20個連續(xù)的1。斜線記法中的數(shù)字就是掩碼中1的個數(shù)。
CIDR記法的其他形式
- 10.0.0.0/10 可簡寫為10/10,也就是把點分十進制中低位連續(xù)的0省略。
- 10.0.0.0/10隱含地指出 IP地址10.0.0.0的掩碼是255.192.0.0。此掩碼可表示為:
- 網(wǎng)絡前綴的后面加一個星號*的表示方法,如 00001010 00*,在星號*之前是網(wǎng)絡前綴,而星號*表示IP地址中的主機號,可以是任意值。
常用的 CIDR 地址塊
| /13 | 255.248.0.0 | 512K | 8個 B類 或 2048個C類 |
| /14 | 255.252.0.0 | 256K | 4個 B類 或 1024個C類 |
| /15 | 255.254.0.0 | 128K | 2個 B類 或 512個C類 |
| /16 | 255.255.0.0 | 64K | 1個 B類 或 256個C類 |
| /17 | 255.255.128.0 | 32K | 128個C類 |
| /18 | 255.255.192.0 | 16K | 64個C類 |
| /19 | 255.255.224.0 | 8K | 32個C類 |
| /20 | 255.255.240.0 | 4K | 16個C類 |
| /21 | 255.255.248.0 | 2K | 8個C類 |
| /22 | 255.255.252.0 | 1K | 4個C類 |
| /23 | 255.255.254.0 | 512 | 2個C類 |
| /24 | 255.255.255.0 | 256 | 1個C類 |
| /25 | 255.255.255.128 | 128 | 1/4個C類 |
| /26 | 255.255.255.192 | 64 | 1/4個C類 |
| /27 | 255.255.255.224 | 32 | 1/8個C類 |
構(gòu)成超網(wǎng)
-
前綴長度不超過 23 位的 CIDR地址塊都包含了多個C類地址。
-
這些 C類地址合起來就構(gòu)成了超網(wǎng)。
-
CIDR地址塊中的地址數(shù)一定是2的整數(shù)次冪。
-
網(wǎng)絡前綴越短,其地址塊所包含的地址數(shù)就越多。而在三級結(jié)構(gòu)的IP地址中,劃分子網(wǎng)是使網(wǎng)絡前綴變長。
-
CIDR的一個好處是:可以更加有效地分配IPv4的地址空間,可根據(jù)客戶的需要分配適當大小的 CIDR地址塊。
CIDR地址塊劃分舉例
| 這個 ISP 共有64個 C類網(wǎng)絡。如果不采用CIDR技術(shù),則在與該ISP的路由器交換路由信息的每一個路由器的路由表中,就需要有64個項目。但采用地址聚合后,只需用路由聚合后的1個項目 206.0.64.0/18就能找到該ISP。 |
②最長前綴匹配
- 使用CIDR時,路由表中的每個項目由 “網(wǎng)絡前綴” 和 “下一跳地址” 組成。在查找路由表時可能會得到不止一個匹配結(jié)果。
- 應當從匹配結(jié)果中選擇具有最長網(wǎng)絡前綴的路由:最長前綴匹配(longest-prefix matching)。
- 網(wǎng)絡前綴越長,其地址塊就越小,因而路由就越具體(more specific)?。
- 最長前綴匹配又稱為最長匹配或最佳匹配。
最長前綴匹配舉例
?
| 選擇兩個匹配的地址中更具體的一個,即選擇最長前綴的地址。 |
③使用二叉線索查找路由表
- 當路由表的項目數(shù)很大時,怎樣設法減小路由表的查找時間就成為一個非常重要的問題。
- 為了進行更加有效的查找,通常是將無分類編址的路由表存放在一種層次的數(shù)據(jù)結(jié)構(gòu)中,然后自上而下地按層次進行查找。這里最常用的就是二叉線索(binary trie)。
- IP地址中從左到右的比特值決定了從根結(jié)點逐層向下層延伸的路徑,而二叉線索中的各個路徑就代表路由表中存放的各個地址。
- 為了提高二叉線索的查找速度,廣泛使用了各種壓縮技術(shù)。
用5個前綴構(gòu)成的二叉線索
| 從二叉線索的根節(jié)點自頂向下的深度最多有32層,每一層對應于IP地址中的一位。一個IP地址存入二叉線索的規(guī)則很簡單。先檢查IP地址左邊的第一位,如為0,則第一層的節(jié)點就在根節(jié)點的左下方;如為1,則在右下方。然后再檢查地址的第二位,構(gòu)造出第二層的節(jié)點。依此類推,直到唯一前綴的最后一位。 |
4.網(wǎng)際控制報文協(xié)議ICMP
- 為了更有效地轉(zhuǎn)發(fā)IP數(shù)據(jù)報和提高交付成功的機會,在網(wǎng)際層使用了網(wǎng)際控制報文協(xié)議ICMP (InternetControl Message Protocol)。
- ICMP是互聯(lián)網(wǎng)的標準協(xié)議。
- ICMP允許主機或路由器報告差錯情況和提供有關(guān)異常情況的報告。
- 但ICMP不是高層協(xié)議(看起來好像是高層協(xié)議,因為ICMP報文是裝在IP數(shù)據(jù)報中,作為其中的數(shù)據(jù)部分),而是IP層的協(xié)議。
ICMP 報文的格式
?
Ⅰ.ICMP 報文的種類
- ICMP報文的種類有兩種,即ICMP 差錯報告報文和ICMP詢問報文。
- ICMP報文的前4個字節(jié)是統(tǒng)一的格式,共有三個字段:即類型、代碼和檢驗和。接著的4個字節(jié)的內(nèi)容與ICMP的類型有關(guān)。
①ICMP 差錯報告報文共有4種
- 終點不可達
- 時間超過
- 參數(shù)問題
- 改變路由(重定向)(Redirect)
ICMP差錯報告報文的數(shù)據(jù)字段的內(nèi)容
不應發(fā)送ICMP差錯報告報文的幾種情況
- 對 ICMP 差錯報告報文不再發(fā)送 ICMP 差錯報告報文。
- 對第一個分片的數(shù)據(jù)報片的所有后續(xù)數(shù)據(jù)報片都不發(fā)送 ICMP 差錯報告報文。
- 對具有多播地址的數(shù)據(jù)報都不發(fā)送 ICMP 差錯報告報文。
- 對具有特殊地址(如127.0.0.0或0.0.0.0)的數(shù)據(jù)報不發(fā)送ICMP差錯報告報文。
②ICMP 詢問報文有兩種
- 回送請求和回答報文
- 時間戳請求和回答報文
????????下面的幾種ICMP報文不再使用:
- 信息請求與回答報文
- 掩碼地址請求和回答報文
- 路由器詢問和通告報文
- 源點抑制報文
Ⅱ.ICMP的應用舉例
PING (Packet InterNet Groper)
- PING用來測試兩個主機之間的連通性。
- PING使用了ICMP回送請求與回送回答報文。
- PING是應用層直接使用網(wǎng)絡層ICMP的例子,它沒有通過運輸層的TCP或UDP。
PING 的應用舉例
用PING測試主機的連通性
Traceroute的應用舉例
- 在 Windows操作系統(tǒng)中這個命令是tracert。
- 用來跟蹤一個分組從源點到終點的路徑。
- 它利用IP數(shù)據(jù)報中的TTL字段和 ICMP時間超過差錯報告報文實現(xiàn)對從源點到終點的路徑的跟蹤。
ICMP 的應用舉例
?用tracert命令獲得到目的主機的路由信息
5.互聯(lián)網(wǎng)的路由選擇協(xié)議
Ⅰ.有關(guān)路由選擇協(xié)議的幾個基本概念
①理想的路由算法
- 算法必須是正確的和完整的。
- 算法在計算上應簡單。
- 算法應能適應通信量和網(wǎng)絡拓撲的變化,這就是說,要有自適應性。
- 算法應具有穩(wěn)定性。
- 算法應是公平的。
關(guān)于“最佳路由”
■ 不存在一種絕對的最佳路由算法。
■ 所謂“最佳”只能是相對于某一種特定要求下得出的較為合理的選擇而已。
■ 實際的路由選擇算法,應盡可能接近于理想的算法。
■ 路由選擇是個非常復雜的問題
- 它是網(wǎng)絡中的所有結(jié)點共同協(xié)調(diào)工作的結(jié)果。
- 路由選擇的環(huán)境往往是不斷變化的,而這種變化有時無法事先知道。
從路由算法的自適應性考慮
- 靜態(tài)路由選擇策略——即非自適應路由選擇,其特點是簡單和開銷較小,但不能及時適應網(wǎng)絡狀態(tài)的變化。
- 動態(tài)路由選擇策略——即自適應路由選擇,其特點是能較好地適應網(wǎng)絡狀態(tài)的變化,但實現(xiàn)起來較為復雜,開銷也比較大。
②分層次的路由選擇協(xié)議
互聯(lián)網(wǎng)采用分層次的路由選擇協(xié)議。這是因為:
自治系統(tǒng)AS (Autonomous System)
- 自治系統(tǒng)AS 的定義:在單一的技術(shù)管理下的一組路由器,而這些路由器使用一種 AS內(nèi)部的 路由選擇協(xié)議 和 共同的度量 以確定分組在該AS內(nèi)的路由,同時還使用一種 AS 之間的路由選擇協(xié)議 用以 確定分組在AS之間的路由。
- 現(xiàn)在對 自治系統(tǒng)AS 的定義是強調(diào)下面的事實:盡管一個AS使用了 多種 內(nèi)部路由選擇協(xié)議 和 度量,但重要的是 一個AS對其他AS 表現(xiàn)出的是一個 單一的和一致的路由選擇策略。
?互聯(lián)網(wǎng)有兩大類路由選擇協(xié)議
■?內(nèi)部網(wǎng)關(guān)協(xié)議?IGP (Interior Gateway Protocol)
- 在一個自治系統(tǒng)內(nèi)部使用的路由選擇協(xié)議。
- 目前這類路由選擇協(xié)議使用得最多,如RIP和OSPF協(xié)議。
■ 外部網(wǎng)關(guān)協(xié)議?EGP (External Gateway Protocol)
- 若源站和目的站處在不同的自治系統(tǒng)中,當數(shù)據(jù)報傳到一個自治系統(tǒng)的邊界時,就需要使用一種協(xié)議將路由選擇信息傳遞到另一個自治系統(tǒng)中。這樣的協(xié)議就是外部網(wǎng)關(guān)協(xié)議EGP。
- 在外部網(wǎng)關(guān)協(xié)議中目前使用最多的是BGP-4。
自治系統(tǒng)和內(nèi)部網(wǎng)關(guān)協(xié)議、外部網(wǎng)關(guān)協(xié)議
| 自治系統(tǒng)之間的路由選擇也叫做?域間路由選擇(interdomain routing),在自治系統(tǒng)內(nèi)部的路由選擇叫做 域內(nèi)路由選擇(intradomain routing) 。 |
指出兩點
- 互聯(lián)網(wǎng)的早期RFC文檔中未使用 “路由器” 而是使用 “網(wǎng)關(guān)” 這一名詞。但是在新的 RFC文檔中又使用了 “路由器” 這一名詞。應當把這兩個術(shù)語當作同義詞。
- IGP 和 EGP是協(xié)議類別的名稱。但 RFC在使用EGP這個名詞時出現(xiàn)了一點混亂,因為最早的一個外部網(wǎng)關(guān)協(xié)議的協(xié)議名字正好也是EGP.因此在遇到名詞EGP時,應弄清它是指舊的協(xié)議EGP還是指外部網(wǎng)關(guān)協(xié)議EGP這個類別。
Ⅱ.內(nèi)部網(wǎng)關(guān)協(xié)議RIP
①工作原理
- 路由信息協(xié)議 RIP(Routing Information Protocol)是內(nèi)部網(wǎng)關(guān)協(xié)議 IGP 中最先得到廣泛使用的協(xié)議。
- RIP 是一種分布式的、基于距離向量的路由選擇協(xié)議。
- RIP 協(xié)議要求網(wǎng)絡中的每一個路由器都要維護從它自己到其他每一個目的網(wǎng)絡的距離記錄。
“距離”的定義
- 從一個路由器到直接連接的網(wǎng)絡的距離定義為 1。
- 從一個路由器到非直接連接的網(wǎng)絡的距離定義為所經(jīng)過的路由器數(shù)加 1 。
- RIP協(xié)議中的 “距離” 也稱為 “跳數(shù)” (hopcount),因為每經(jīng)過一個路由器,跳數(shù)就加1。
- 這里的 “距離” 實際上指的是 “最短距離”。
- RIP 認為一個好的路由就是它通過的路由器的數(shù)目少,即 “距離短”。
- RIP允許一條路徑最多只能包含15個路由器。
- “距離” 的最大值為16時即相當于不可達。可見RIP只適用于小型互聯(lián)網(wǎng)。RIP不能在兩個網(wǎng)絡之間同時使用多條路由。RIP選擇一個具有最少路由器的路由(即最短路由),哪怕還存在另一條高速(低時延)但路由器較多的路由。
RIP協(xié)議的三個特點
- 僅和相鄰路由器交換信息。
- 交換的信息是當前本路由器所知道的全部信息,即自己的路由表。
- 按固定的時間間隔交換路由信息,例如,每隔30秒。當網(wǎng)絡拓撲發(fā)生變化時,路由器也及時向相鄰路由器通告拓撲變化后的路由信息。
路由表的建立
- 路由器在剛剛開始工作時,只知道到直接連接的網(wǎng)絡的距離(此距離定義為1)。它的路由表是空的。
- 以后,每一個路由器也只和數(shù)目非常有限的相鄰路由器交換并更新路由信息。
- 經(jīng)過若干次更新后,所有的路由器最終都會知道到達本自治系統(tǒng)中任何一個網(wǎng)絡的最短距離和下一跳路由器的地址。
- RIP協(xié)議的收斂(convergence)過程較快。“收斂” 就是在自治系統(tǒng)中所有的結(jié)點都得到正確的路由選擇信息的過程。
②距離向量算法
| 路由器收到相鄰路由器(其地址為X)的一個RIP報文:
????????????????????????????????????????否則,什么也不做。 (3)若3分鐘還沒有收到相鄰路由器的更新路由表,則把此相鄰路由器記為不可達路由器,即將距離置為16(表示不可達)。 (4)返回。 |
- 距離向量算法的基礎就是 Bellman-Ford算法(或 Ford-Fulkerson 算法)。
- 這種算法的要點是這樣的:設X是結(jié)點A到B的最短路徑上的一個結(jié)點。若把路徑A→B拆成兩段路徑A→X和X→B,則每一段路徑A→X和X一B也都分別是結(jié)點A到X和結(jié)點X到B的最短路徑。
路由器之間交換信息與路由表更新
- RIP 協(xié)議讓互聯(lián)網(wǎng)中的所有路由器都和自己的相鄰路由器不斷交換路由信息,并不斷更新其路由表,使得從每一個路由器到每一個目的網(wǎng)絡的路由都是最短的(即跳數(shù)最少)。
- 雖然所有的路由器最終都擁有了整個自治系統(tǒng)的全局路由信息,但由于每一個路由器的位置不同,它們的路由表當然也應當是不同的。
【例】路由表更新
?
③RIP2協(xié)議的報文格式
RIP2報文
- RIP2報文由首部和路由部分組成。
- RIP2報文中的路由部分由若干個路由信息組成。每個路由信息需要用20個字節(jié)。地址族標識符(又稱為地址類別)字段用來標志所使用的地址協(xié)議。
- 路由標記填入自治系統(tǒng)的號碼,這是考慮使RIP有可能收到本自治系統(tǒng)以外的路由選擇信息。
- 再后面指出某個網(wǎng)絡地址、該網(wǎng)絡的子網(wǎng)掩碼、下一跳路由器地址以及到此網(wǎng)絡的距離。
- 一個RIP報文最多可包括25個路由,因而RIP報文的最大長度是4+20×25= 504字節(jié)。如超過,必須再用一個RIP報文來傳送。
- RIP2具有簡單的鑒別功能。
■ 若使用鑒別功能,則將原來寫入第一個路由信息(20個字節(jié))的位置用作鑒別。
? ?????■?在鑒別數(shù)據(jù)之后才寫入路由信息,但這時最多只能再放入24個路由信息。
好消息傳播得快,壞消息傳播得慢
- RIP協(xié)議特點:好消息傳播得快,壞消息傳播得慢。
- RIP存在的一個問題:當網(wǎng)絡出現(xiàn)故障時,要經(jīng)過比較長的時間(例如數(shù)分鐘)才能將此信息傳送到所有的路由器。
RIP協(xié)議的優(yōu)缺點
優(yōu)點:
- 實現(xiàn)簡單,開銷較小。
缺點:
- RIP限制了網(wǎng)絡的規(guī)模,它能使用的最大距離為15(16表示不可達)。
- 路由器之間交換的路由信息 是路由器中的完整路由表,因而隨著網(wǎng)絡規(guī)模的擴大,開銷也就增加。
- “壞消息傳播得慢”,使更新過程的收斂時間過長。
Ⅲ.內(nèi)部網(wǎng)關(guān)協(xié)議OSPF
- 開放最短路徑優(yōu)先 OSPF(Open Shortest PathFirst)是為克服RIP的缺點在1989年開發(fā)出來的。
- OSPF的原理很簡單,但實現(xiàn)起來卻較復雜。
?
①OSPF協(xié)議的基本特點
- “開放” 表明OSPF協(xié)議不是受某一家廠商控制,而是公開發(fā)表的。
- “最短路徑優(yōu)先” 是因為使用了Dijkstra 提出的最短路徑算法SPF
- 采用 分布式的鏈路狀態(tài)協(xié)議(link state protocol)。
- 注意:OSPF只是一個協(xié)議的名字,它并不表示其他的路由選擇協(xié)議不是“最短路徑優(yōu)先”。
三個要點
- 向本自治系統(tǒng)中所有路由器發(fā)送信息,這里使用的方法是洪泛法。
- 發(fā)送的信息就是與本路由器相鄰的所有路由器的鏈路狀態(tài),但這只是路由器所知道的部分信息。
| ?“鏈路狀態(tài)” 就是說明本路由器都和哪些路由器相鄰,以及該鏈路的“度量”(metric)。 |
- 只有當鏈路狀態(tài)發(fā)生變化時,路由器才用 洪泛法 向所有路由器發(fā)送此信息。
鏈路狀態(tài)數(shù)據(jù)庫(link-state database)
-
由于各路由器之間頻繁地交換鏈路狀態(tài)信息,因此所有的路由器最終都能建立一個鏈路狀態(tài)數(shù)據(jù)庫。
-
這個數(shù)據(jù)庫實際上就是全網(wǎng)的拓撲結(jié)構(gòu)圖,它在全網(wǎng)范圍內(nèi)是一致的(這稱為鏈路狀態(tài)數(shù)據(jù)庫的同步)。
-
OSPF的鏈路狀態(tài)數(shù)據(jù)庫能較快地進行更新,使各個路由器能及時更新其路由表。
-
OSPF 的更新過程收斂得快是其重要優(yōu)點。
OSPF的區(qū)域(area)
- 為了使OSPF 能夠用于規(guī)模很大的網(wǎng)絡,OSPF將一個自治系統(tǒng)再劃分為若干個更小的范圍,叫做區(qū)域。
- 每一個區(qū)域都有一個32位的區(qū)域標識符(用點分十進制表示)。
- 區(qū)域也不能太大,在一個區(qū)域內(nèi)的路由器最好不超過200個。
OSPF劃分為兩種不同的區(qū)域
- 劃分區(qū)域的好處就是將利用洪泛法交換鏈路狀態(tài)信息的范圍局限于每一個區(qū)域而不是整個的自治系統(tǒng),這就減少了整個網(wǎng)絡上的通信量。
- 在一個區(qū)域內(nèi)部的路由器只知道本區(qū)域的完整網(wǎng)絡拓撲,而不知道其他區(qū)域的網(wǎng)絡拓撲的情況。
- OSPF使用層次結(jié)構(gòu)的區(qū)域劃分。在上層的區(qū)域叫做主干區(qū)域(backbone area)。
- 主干區(qū)域的標識符規(guī)定為0.0.0.0。主干區(qū)域的作用是用來連通其他在下層的區(qū)域。
主干路由器
區(qū)域邊界路由器
OSPF直接用IP數(shù)據(jù)報傳送
- OSPF 不用UDP而是直接用IP數(shù)據(jù)報傳送。
- OSPF構(gòu)成的數(shù)據(jù)報很短。這樣做可減少路由信息的通信量。
- 數(shù)據(jù)報很短的另一好處是可以不必將長的數(shù)據(jù)報分片傳送。
- 但分片傳送的數(shù)據(jù)報只要丟失一個,就無法組裝成原來的數(shù)據(jù)報,而整個數(shù)據(jù)報就必須重傳。
OSPF的其他特點
- OSPF 對不同的鏈路可根據(jù)IP分組的不同服務類型TOs而設置成不同的代價。因此,OSPF對于不同類型的業(yè)務可計算出不同的路由。
- 如果到同一個目的網(wǎng)絡有多條相同代價的路徑,那么可以將通信量分配給這幾條路徑。這叫做多路徑間的負載平衡。
- 所有在OSPF路由器之間交換的分組都具有鑒別的功能。
- 支持可變長度的子網(wǎng)劃分和無分類編址CIDR。
- 每一個鏈路狀態(tài)都帶上一個32位的序號,序號越大狀態(tài)就越新。
OSPF分組
②OSPF的五種分組類型
- 類型1,問候(Hello)分組。
- 類型2,數(shù)據(jù)庫描述(Database Description)分組。
- 類型3,鏈路狀態(tài)請求(Link State Request)分組。
- 類型4,鏈路狀態(tài)更新(Link State Update)分組,用洪泛法對全網(wǎng)更新鏈路狀態(tài)。
- 類型5,鏈路狀態(tài)確認(Link State Acknowledgment)分組。
OSPF的基本操作
OSPF使用可靠的洪泛法發(fā)送更新分組
OSPF的其他特點
- OSPF 還規(guī)定每隔一段時間,如30分鐘,要刷新一次數(shù)據(jù)庫中的鏈路狀態(tài)。
- 由于一個路由器的鏈路狀態(tài)只涉及到與相鄰路由器的連通狀態(tài),因而與整個互聯(lián)網(wǎng)的規(guī)模并無直接關(guān)系。因此當互聯(lián)網(wǎng)規(guī)模很大時,OSPF協(xié)議要比距離向量協(xié)議RIP好得多。
- OSPF 沒有 “壞消息傳播得慢” 的問題,據(jù)統(tǒng)計,其響應網(wǎng)絡變化的時間小于100 ms。
指定的路由器
-
多點接入的局域網(wǎng)采用了指定的路由器(designated router)的方法,使廣播的信息量大大減少。
-
指定的路由器代表該局域網(wǎng)上所有的鏈路向連接到該網(wǎng)絡上的各路由器發(fā)送狀態(tài)信息。
Ⅳ.外部網(wǎng)關(guān)協(xié)議BGP
- BGP是不同自治系統(tǒng)的路由器之間交換路由信息的協(xié)議。
- BGP較新版本是2006年1月發(fā)表的BGP-4(BGP 第4個版本),即RFC 4271 ~4278。
- 可以將BGP-4簡寫為BGP。
BGP使用環(huán)境不同
■? 互聯(lián)網(wǎng)的規(guī)模太大,使得自治系統(tǒng)之間路由選擇非常困難。對于自治系統(tǒng)之間的路由選擇,要尋找最佳路由是很不現(xiàn)實的。
- 當一條路徑通過幾個不同AS時,要想對這樣的路徑計算出有意義的代價是不太可能的。
- 比較合理的做法是在AS之間交換“可達性”信息。
■? 自治系統(tǒng)之間的路由選擇必須考慮有關(guān)策略。
■? 因此,邊界網(wǎng)關(guān)協(xié)議 BGP 只能是力求尋找一條能夠到達目的網(wǎng)絡且比較好的路由(不能兜圈子),而并非要尋找一條最佳路由。
BGP發(fā)言人
- 每一個自治系統(tǒng)的管理員要選擇至少一個路由器作為該自治系統(tǒng)的 “BGP發(fā)言人”(BGP speaker)。
- 一般說來,兩個BGP發(fā)言人都是通過一個共享網(wǎng)絡連接在一起的,而BGP發(fā)言人往往就是BGP邊界路由器,但也可以不是BGP邊界路由器。
BGP交換路由信息
- 一個BGP發(fā)言人與其他自治系統(tǒng)中的BGP發(fā)言人要交換路由信息,就要先建立TCP連接,然后在此連接上交換 BGP報文以建立BGP會話(session),利用BGP會話交換路由信息。
- 使用TCP連接能提供可靠的服務,也簡化了路由選擇協(xié)議。
- 使用TCP連接交換路由信息的兩個BGP發(fā)言人,彼此成為對方的鄰站(neighbor)或?qū)Φ日?#xff08;peer).
BGP發(fā)言人和自治系統(tǒng)AS的關(guān)系
AS的連通圖舉例
- BGP所交換的網(wǎng)絡可達性的信息就是要到達某個網(wǎng)絡所要經(jīng)過的一系列AS。
- 當BGP發(fā)言人互相交換了網(wǎng)絡可達性的信息后,各BGP發(fā)言人就根據(jù)所采用的策略從收到的路由信息中找出到達各AS的較好路由。
BGP發(fā)言人交換路徑向量
BGP協(xié)議的特點
-
BGP協(xié)議交換路由信息的結(jié)點數(shù)量級是自治系統(tǒng)數(shù)的量級,這要比這些自治系統(tǒng)中的網(wǎng)絡數(shù)少很多。
-
每一個自治系統(tǒng)中BGP發(fā)言人(或邊界路由器)的數(shù)目是很少的。這樣就使得自治系統(tǒng)之間的路由選擇不致過分復雜。
-
BGP支持 CIDR,因此BGP的路由表也就應當包括目的網(wǎng)絡前綴、下一跳路由器,以及到達該目的網(wǎng)絡所要經(jīng)過的各個自治系統(tǒng)序列。
-
在BGP剛剛運行時,BGP的鄰站是交換整個的BGP路由表。但以后只需要在發(fā)生變化時更新有變化的部分。這樣做對節(jié)省網(wǎng)絡帶寬和減少路由器的處理開銷都有好處。
BGP-4共使用四種報文
打開(OPEN)報文,用來與相鄰的另一個BGP發(fā)言人建立關(guān)系。
更新(UPDATE)報文,用來發(fā)送某一路由的信息,以及列出要撤消的多條路由。
保活(KEEPALIVE)報文,用來確認打開報文和周期性地證實鄰站關(guān)系。
通知(NOTIFICATION)報文,用來發(fā)送檢測到的差錯。
BGP報文具有通用首部
Ⅴ.路由器的構(gòu)成
■? 路由器是一種典型的網(wǎng)絡層設備。
■? 路由器是互聯(lián)網(wǎng)中的關(guān)鍵設備。
■? 路由器的主要作用是:
- 連通不同的網(wǎng)絡。
- 選擇信息傳送的線路。選擇通暢快捷的近路,能大大提高通信速度,減輕網(wǎng)絡系統(tǒng)通信負荷,節(jié)約網(wǎng)絡系統(tǒng)資源,提高網(wǎng)絡系統(tǒng)暢通率,從而讓網(wǎng)絡系統(tǒng)發(fā)揮出更大的效益來。
①路由器的結(jié)構(gòu)
- 路由器是一種具有多個輸入端口和多個輸出端口的專用計算機,其任務是轉(zhuǎn)發(fā)分組。也就是說,將路由器某個輸入端口收到的分組,按照分組要去的目的地(即目的網(wǎng)絡),把該分組從路由器的某個合適的輸出端口轉(zhuǎn)發(fā)給下一跳路由器。
- 下一跳路由器也按照這種方法處理分組,直到該分組到達終點為止。
- 路由器的轉(zhuǎn)發(fā)分組正是網(wǎng)絡層的主要工作。
?典型的路由器的結(jié)構(gòu)
■? 整個的路由器結(jié)構(gòu)可劃分為兩大部分:
- 路由選擇部分
- 分組轉(zhuǎn)發(fā)部分
■? 路由選擇部分
- 也叫做控制部分,其核心構(gòu)件是路由選擇處理機。
- 路由選擇處理機的任務是根據(jù)所選定的路由選擇協(xié)議構(gòu)造出路由表,同時經(jīng)常或定期地和相鄰路由器交換路由信息而不斷地更新和維護路由表。
分組轉(zhuǎn)發(fā)部分由三部分組成:
- 交換結(jié)構(gòu)(switching fabric):又稱為交換組織,其作用是根據(jù)轉(zhuǎn)發(fā)表(forwarding table)對分組進行處理。
- 一組輸入端口
- 一組輸出端口
????????(請注意:這里的端口就是硬件接口)
“轉(zhuǎn)發(fā)”和“路由選擇”的區(qū)別
- “轉(zhuǎn)發(fā)”(forwarding)就是路由器根據(jù)轉(zhuǎn)發(fā)表將用戶的IP數(shù)據(jù)報從合適的端口轉(zhuǎn)發(fā)出去。
- “路由選擇”(routing)則是按照分布式算法,根據(jù)從各相鄰路由器得到的關(guān)于網(wǎng)絡拓撲的變化情況,動態(tài)地改變所選擇的路由。
- 路由表是根據(jù)路由選擇算法得出的。而轉(zhuǎn)發(fā)表是從路由表得出的。
- 在討論路由選擇的原理時,往往不去區(qū)分轉(zhuǎn)發(fā)表和路由表的區(qū)別。
輸入端口對線路上收到的分組的處理
-
路由器的輸入端口里面裝有物理層、數(shù)據(jù)鏈路層和網(wǎng)絡層的處理模塊。
-
數(shù)據(jù)鏈路層剝?nèi)撞亢臀膊亢?#xff0c;將分組送到網(wǎng)絡層的隊列中排隊等待處理。這會產(chǎn)生一定的時延。
-
輸入端口中的查找和轉(zhuǎn)發(fā)功能在路由器的交換功能中是最重要的。
輸出端口將交換結(jié)構(gòu)傳送來的分組發(fā)送到線路
- 輸出端口里面裝有物理層、數(shù)據(jù)鏈路層和網(wǎng)絡層的處理模塊。
- 輸出端口從交換結(jié)構(gòu)接收分組,然后把它們發(fā)送到路由器外面的線路上。
- 在網(wǎng)絡層的處理模塊中設有一個緩沖區(qū)(隊列)。當交換結(jié)構(gòu)傳送過來的分組的速率超過輸出鏈路的發(fā)送速率時,來不及發(fā)送的分組就必須暫時存放在這個隊列中。
- 數(shù)據(jù)鏈路層處理模塊將分組加上鏈路層的首部和尾部,交給物理層后發(fā)送到外部線路。
分組丟棄
- 若路由器處理分組的速率趕不上分組進入隊列的速率,則隊列的存儲空間最終必定減少到零,這就使后面再進入隊列的分組由于沒有存儲空間而只能被丟棄。
- 路由器中的輸入或輸出隊列產(chǎn)生溢出是造成分組丟失的重要原因。
②交換結(jié)構(gòu)
■? 交換結(jié)構(gòu)是路由器的關(guān)鍵構(gòu)件。
■? 正是這個交換結(jié)構(gòu)把分組從一個輸入端口轉(zhuǎn)移到某個合適的輸出端口。
■? 實現(xiàn)交換有多種方法。常用交換方法有三種:
|
|
|
6.IPv6
- IP是互聯(lián)網(wǎng)的核心協(xié)議。
- 互聯(lián)網(wǎng)經(jīng)過幾十年的飛速發(fā)展,到2011年2月,IPv4的32位地址已經(jīng)耗盡。
- ISP已經(jīng)不能再申請到新的IP地址塊了。
- 我國在2014- 2015年也逐步停止了向新用戶和應用分配IPv4地址。
- 解決IP地址耗盡的根本措施就是采用具有更大地址空間的新版本的IP,即IPv6。
Ⅰ.lPv6的基本首部
■? IPv6仍支持無連接的傳送,但將協(xié)議數(shù)據(jù)單元PDU稱為分組。為方便起見,本書仍采用數(shù)據(jù)報這一名詞。
■? 所引進的主要變化如下:
- 更大的地址空間。IPv6將地址從IPv4的32位增大到了128位。
- 擴展的地址層次結(jié)構(gòu)。
- 靈活的首部格式。IPv6定義了許多可選的擴展首部。
- 改進的選項。IPv6允許數(shù)據(jù)報包含有選項的控制信息,其選項放在有效載荷中。
- 允許協(xié)議繼續(xù)擴充。
- 支持即插即用(即自動配置)。因此IPv6不需要使用DHCP。
- 支持資源的預分配。IPv6支持實時視像等要求,保證一定的帶寬和時延的應用。
- lPv6首部改為8字節(jié)對齊。首部長度必須是8字節(jié)的整數(shù)倍。原來的IPv4首部是4字節(jié)對齊。
lPv6數(shù)據(jù)報的一般形式
lPv6數(shù)據(jù)報由兩大部分組成:
- 基本首部(base header)
- 有效載荷(payload)。有效載荷也稱為凈負荷。有效載荷允許有零個或多個擴展首部(extension header),再后面是數(shù)據(jù)部分。
lPv6數(shù)據(jù)報的基本首部
- IPv6將首部長度變?yōu)?span style="color:#fe2c24;">固定的40字節(jié),稱為基本首部。
- 把首部中不必要的功能取消了,使得IPv6首部的字段數(shù)減少到只有8個。
IPv6對首部中的某些字段進行了如下的更改:
|
|
| 4位。它指明了協(xié)議的版本,對IPv6該字段總是6。 ? |
| 8位。這是為了區(qū)分不同的IPv6數(shù)據(jù)報的類別或優(yōu)先級。目前正在進行不同的通信量類性能的實驗。 ? |
| 20位。“流”是互聯(lián)網(wǎng)絡上從特定源點到特定終點的一系列數(shù)據(jù)報,“流”所經(jīng)過的路徑上的路由器都保證指明的服務質(zhì)量。所有屬于同一個流的數(shù)據(jù)報都具有同樣的流標號。 ? |
| 16位。它指明IPv6數(shù)據(jù)報除基本首部以外的字節(jié)數(shù)(所有擴展首部都算在有效載荷之內(nèi)),其最大值是64 KB。 ? |
| 8位。它相當于IPv4的協(xié)議字段或可選字段。 ? |
| 8位。源站在數(shù)據(jù)報發(fā)出時即設定跳數(shù)限制。路由器在轉(zhuǎn)發(fā)數(shù)據(jù)報時將跳數(shù)限制字段中的值減1。當跳數(shù)限制的值為零時,就要將此數(shù)據(jù)報丟棄。 ? |
| 128位。是數(shù)據(jù)報的發(fā)送站的IP地址。 ? |
| 128位。是數(shù)據(jù)報的接收站的IP地址。 ? |
lPv6的擴展首部
- IPv6把原來IPv4首部中選項的功能都放在擴展首部中,并將擴展首部留給路徑兩端的源站和目的站的主機來處理。
- 數(shù)據(jù)報途中經(jīng)過的路由器都不處理這些擴展首部(只有一個首部例外,即逐跳選項擴展首部)。
- 這樣就大大提高了路由器的處理效率。
六種擴展首部
在RFC 2460中定義了六種擴展首部:
| 每一個擴展首部都由若干個字段組成,它們的長度也各不相同。但所有擴展首部的第一個字段都是8位的“下一個首部”字段。此字段的值指出了在該擴展首部后面的字段是什么。 |
Ⅱ.lPv6的地址
IPv6數(shù)據(jù)報的目的地址可以是以下三種基本類型地址之一:
結(jié)點與接口
■ IPv6將實現(xiàn)IPv6的主機和路由器均稱為結(jié)點。
■ 一個結(jié)點就可能有多個與鏈路相連的接口。
■ IPv6地址是分配給結(jié)點上面的接口的。
- 一個接口可以有多個單播地址。
- 其中的任何一個地址都可以當作到達該結(jié)點的目的地址。即一個結(jié)點接口的單播地址可用來唯一地標志該結(jié)點。
冒號十六進制記法
- 在IPv6中,每個地址占128位,地址空間大于?。
- 為了使地址再稍簡潔些,IPv6使用冒號十六進制記法(colon hexadecimal notation,簡寫為colon hex)。
- 每個16位的值用十六進制值表示,各值之間用冒號分隔。例如:
| 68E6:8C64:FFFF:FFFF:0:1180:960A:FFFF |
- 在十六進制記法中,允許把數(shù)字前面的0省略。例如把0000中的前三個0省略,寫成1個0。
零壓縮
- 冒號十六進制記法可以允許零壓縮(zero compression),即一連串連續(xù)的零可以為一對冒號所取代。
| FF05:0:0:0:0:0:0:B3? 可壓縮為:FF05::B3 |
注意:在任一地址中只能使用一次零壓縮。
點分十進制記法的后綴
- 冒號十六進制記法可結(jié)合使用點分十進制記法的后綴,這種結(jié)合在IPv4向IPv6的轉(zhuǎn)換階段特別有用。
- 例如:0:0:0:0:0:0:128.10.2.1
- 再使用零壓縮即可得出:::128.10.2.1
- CIDR的斜線表示法仍然可用。
- 例如:60位的前綴 12AB00000000CD3可記為:12AB:0000:0000:CD30:0000:0000:0000:0000/60
或?12AB::CD30:0:0:0:0/60(零壓縮)
或?12AB:0:0:CD30::/60(零壓縮)
lPv6地址分類
| 未指明地址 | 00...0(128位),可記為::/128。 |
|
| 環(huán)回地址 | 00...1(128位),可記為::1/128。 |
|
| 多播地址 | 11111111(8),可記為FF00::/8。 |
|
| 本地鏈路單播地址 | 1111111010(10位),可記為FE80::/10。 |
|
| 全球單播地址 | (除上述四種外,所有其他的二進制前綴) |
|
Ⅲ.從IPv4向IPv6過渡
■?向IPv6過渡只能采用逐步演進的辦法,同時,還必須使新安裝的IPv6系統(tǒng)能夠向后兼容:
lPv6系統(tǒng)必須能夠接收和轉(zhuǎn)發(fā)IPv4分組,并且能夠為IPv4分組選擇路由。
■?兩種向IPv6過渡的策略:
- 使用雙協(xié)議棧
- 使用隧道技術(shù)
雙協(xié)議棧
- 雙協(xié)議棧(dual stack)是指在完全過渡到IPv6之前,使一部分主機(或路由器)裝有兩個協(xié)議棧,一個lPv4和一個IPv6。
- 雙協(xié)議棧的主機(或路由器)記為IPv6/IPv4,表明它同時具有兩種IP地址:一個IPv6地址和一個IPv4地址。
- 雙協(xié)議棧主機在和IPv6主機通信時是采用IPv6地址,而和IPv4主機通信時就采用IPv4地址。
- 根據(jù)DNS返回的地址類型可以確定使用IPv4地址還是lPv6地址。
隧道技術(shù)
- 在IPv6數(shù)據(jù)報要進入IPv4網(wǎng)絡時,把IPv6數(shù)據(jù)報封裝成為IPv4數(shù)據(jù)報,整個的IPv6數(shù)據(jù)報變成了IPv4數(shù)據(jù)報的數(shù)據(jù)部分。
- 當IPv4數(shù)據(jù)報離開IPv4網(wǎng)絡中的隧道時,再把數(shù)據(jù)部分(即原來的IPv6數(shù)據(jù)報)交給主機的IPv6協(xié)議棧。
Ⅳ.ICMPv6
- IPv6也不保證數(shù)據(jù)報的可靠交付,因為互聯(lián)網(wǎng)中的路由器可能會丟棄數(shù)據(jù)報。
- 因此IPv6也需要使用ICMP來反饋一些差錯信息。新的版本稱為ICMPv6。
- 地址解析協(xié)議ARP 和 網(wǎng)際組管理協(xié)議IGMP協(xié)議 的功能都已被合并到ICMPv6中。
ICMPv6報文的分類
- ICMPv6 是面向報文的協(xié)議,它利用報文來報告差錯,獲取信息,探測鄰站或管理多播通信。
- ICMPv6? 還增加了幾個定義報文的功能及含義的其他協(xié)議。
7.IP多播
Ⅰ.IP多播的基本概念
■ IP多播(multicast,以前曾譯為組播)已成為互聯(lián)網(wǎng)的一個熱門課題。
■ 目的:更好第支持一對多通信。
■ 一對多通信:一個源點發(fā)送到許多個終點。
- 例如,實時信息的交付(如新聞、股市行情等),軟件更新,交互式會議及其他多媒體通信。
多播可大大節(jié)約網(wǎng)絡資源
| 采用單播方式,向90臺主機傳送同樣的視頻節(jié)目需要發(fā)送90個單播 |
| 采用多播方式,只需發(fā)送一次到多播組。路由器復制分組。局域網(wǎng)具有硬件多播功能,不需要復制分組。 |
| 當多播組的主機數(shù)很大時(如成千上萬個),采用多播方式就可明顯地減輕網(wǎng)絡中各種資源的消耗。 |
IP多播
- 在互聯(lián)網(wǎng)上進行多播就叫做IP多播。
- 互聯(lián)網(wǎng)范圍的多播要靠路由器來實現(xiàn)。
- 能夠運行多播協(xié)議的路由器稱為多播路由器(multicast router)。當然它也可以轉(zhuǎn)發(fā)普通的單播lP數(shù)據(jù)報。
- 從1992年起,在互聯(lián)網(wǎng)上開始試驗虛擬的多播主干網(wǎng)MBONE(Multicast Backbone On theInterNEt)。現(xiàn)在多播主干網(wǎng)已經(jīng)有了相當大的規(guī)模。
多播IP地址
- IP多播所傳送的分組需要使用多播IP地址。
- 在多播數(shù)據(jù)報的目的地址寫入的是多播組的標識符。
- 多播組的標識符就是IP地址中的D類地址(多播地址)。
- 每一個D類地址標志一個多播組。
- 多播地址只能用于目的地址,不能用于源地址。
多播數(shù)據(jù)報
- 多播數(shù)據(jù)報和一般的IP數(shù)據(jù)報的區(qū)別就是它使用D類IP地址作為目的地址,并且首部中的協(xié)議字段值是2,表明使用網(wǎng)際組管理協(xié)議IGMP。
- 多播數(shù)據(jù)報也是“盡最大努力交付”,不保證一定能夠交付多播組內(nèi)的所有成員。
- 對多播數(shù)據(jù)報不產(chǎn)生ICMP差錯報文。因此,若在PING命令后面鍵入多播地址,將永遠不會收到響應。
Ⅱ.在局域網(wǎng)上進行硬件多播
- 互聯(lián)網(wǎng)號碼指派管理局 IANA 擁有的以太網(wǎng)地址塊的高24位為00-00-5E。
- 因此TCP/IР協(xié)議使用的以太網(wǎng)多播地址塊的范圍是
從?00-00-5E-00-00-00
到? 00-00-5E-FF-FF-FF
- 不難看出,在每一個地址中,只有23位可用作多播。
- D類IP地址可供分配的有28位,在這28位中的前5位不能用來構(gòu)成以太網(wǎng)硬件地址。
D類地址與以太網(wǎng)多播地址的映射關(guān)系
由于多播IP地址與以太網(wǎng)硬件地址的映射關(guān)系不是唯一的,因此收到多播數(shù)據(jù)報的主機,還要在IP層利用軟件進行過濾,把不是本主機要接收的數(shù)據(jù)報丟棄。
Ⅲ.網(wǎng)際組管理協(xié)議IGMP和多播路由選擇協(xié)議
①IP多播需要兩種協(xié)議
- 為了使路由器知道多播組成員的信息,需要利用網(wǎng)際組管理協(xié)議IGMP (Internet Group Management Protocol)。
- 連接在局域網(wǎng)上的多播路由器還必須和互聯(lián)網(wǎng)上的其他多播路由器協(xié)同工作,以便把多播數(shù)據(jù)報用最小代價傳送給所有的組成員。這就需要使用多播路由選擇協(xié)議。
IGMP使多播路由器 知道 多播組成員信息
IGMP 的使用范圍
-
IGMP并非在互聯(lián)網(wǎng)范圍內(nèi)對所有多播組成員進行管理的協(xié)議。
-
IGMP不知道IP多播組包含的成員數(shù),也不知道這些成員都分布在哪些網(wǎng)絡上。
-
IGMP協(xié)議是讓連接在本地局域網(wǎng)上的多播路由器知道本局域網(wǎng)上是否有主機(嚴格講,是主機上的某個進程)參加或退出了某個多播組。
| 多播路由選擇協(xié)議比單播路由選擇協(xié)議復雜得多。 |
多播路由選擇協(xié)議更為復雜
- 多播轉(zhuǎn)發(fā)必須動態(tài)地適應多播組成員的變化(這時網(wǎng)絡拓撲并未發(fā)生變化)。請注意,單播路由選擇通常是在網(wǎng)絡拓撲發(fā)生變化時才需要更新路由。
- 多播路由器在轉(zhuǎn)發(fā)多播數(shù)據(jù)報時,不能僅僅根據(jù)多播數(shù)據(jù)報中的目的地址,而是還要考慮這個多播數(shù)據(jù)報從什么地方來和要到什么地方去。
- 多播數(shù)據(jù)報可以由沒有加入多播組的主機發(fā)出,也可以通過沒有組成員接入的網(wǎng)絡。
②網(wǎng)際組管理協(xié)議IGMP
- 1989年公布的 RFC 1112(IGMPv1)早已成為了互聯(lián)網(wǎng)的標準協(xié)議。
- 1997年公布的RFC 2236(IGMPv2,建議標準)對IGMPv1進行了更新。
- 2002年10月公布了RFC 3376(IGMPv3,建議標準),宣布RFC 2236 (IGMPv2)是陳舊的。
IGMP是整個網(wǎng)際協(xié)議IP的一個組成部分
- 和ICMP相似,IGMP使用IP數(shù)據(jù)報傳遞其報文(即IGMP報文加上IP首部構(gòu)成IP數(shù)據(jù)報),但它也向 IP 提供服務。
- 因此,我們不把 IGMP 看成是一個單獨的協(xié)議,而是屬于整個網(wǎng)際協(xié)議IP的一個組成部分。
?
IGMP 工作可分為兩個階段
|
|
IGMP 采用的一些具體措施
- 在主機和多播路由器之間的所有通信都是使用IP多播。
- 多播路由器在探詢組成員關(guān)系時,只需要對所有的組發(fā)送一個請求信息的詢問報文,而不需要對每一個組發(fā)送一個詢問報文。默認的詢問速率是每125秒發(fā)送一次。
- 當同一個網(wǎng)絡上連接有幾個多播路由器時,它們能夠迅速和有效地選擇其中的一個來探詢主機的成員關(guān)系。
- 在IGMP的詢問報文中有一個數(shù)值N,它指明一個最長響應時間(默認值為10秒)。當收到詢問時,主機在0到N之間隨機選擇發(fā)送響應所需經(jīng)過的時延。對應于最小時延的響應最先發(fā)送。
- 同一個組內(nèi)的每一個主機都要監(jiān)聽響應,只要有本組的其他主機先發(fā)送了響應,自己就可以不再發(fā)送響應了。
③多播路由選擇
- 多播路由選擇協(xié)議尚未標準化。
- 一個多播組中的成員是動態(tài)變化的,隨時會有主機加入或離開這個多播組。
- 多播路由選擇實際上就是要找出以源主機為根結(jié)點的多播轉(zhuǎn)發(fā)樹。
- 在多播轉(zhuǎn)發(fā)樹上的路由器不會收到重復的多播數(shù)據(jù)報。
- 對不同的多播組對應于不同的多播轉(zhuǎn)發(fā)樹。
- 同一個多播組,對不同的源點也會有不同的多播轉(zhuǎn)發(fā)樹。
多播路由選擇協(xié)議在轉(zhuǎn)發(fā)多播數(shù)據(jù)報時使用三種方法:
洪泛與剪除
隧道技術(shù)(tunneling)
基于核心的發(fā)現(xiàn)技術(shù)
反向路徑廣播RPB和剪除 | |
| |
|
幾種多播路由選擇協(xié)議
- 距離向量多播路由選擇協(xié)議 DVMRP (Distance Vector Multicast Routing Protocol)
- 基于核心的轉(zhuǎn)發(fā)樹 CBT (Core Based Tree)
- 開放最短通路優(yōu)先的多播擴展 MOSPF (Multicast Extensions to OSPF)
- 協(xié)議無關(guān)多播-稀疏方式 PIM-SM(Protocol Independent Multicast-Sparse Mode)
- 協(xié)議無關(guān)多播-密集方式 PIM-DM(Protocol Independent Multicast-Dense Mode)
8.虛擬專用網(wǎng)VPN和網(wǎng)絡地址轉(zhuǎn)換NAT
Ⅰ.虛擬專用網(wǎng)VPN
- 由于IP地址的緊缺,一個機構(gòu)能夠申請到的IP地址數(shù)往往遠小于本機構(gòu)所擁有的主機數(shù)。
- 考慮到互聯(lián)網(wǎng)并不很安全,一個機構(gòu)內(nèi)也并不需要把所有的主機接入到外部的互聯(lián)網(wǎng)。
- 假定在一個機構(gòu)內(nèi)部的計算機通信也是采用TCP/IP協(xié)議,那么從原則上講,對于這些僅在機構(gòu)內(nèi)部使用的計算機就可以由本機構(gòu)自行分配其IP地址。
本地地址與全球地址
- 本地地址——僅在機構(gòu)內(nèi)部使用的IP地址,可以由本機構(gòu)自行分配,而不需要向互聯(lián)網(wǎng)的管理機構(gòu)申請。
- 全球地址——全球唯一的IP地址,必須向互聯(lián)網(wǎng)的管理機構(gòu)申請。
- 問題:在內(nèi)部使用的本地地址就有可能和互聯(lián)網(wǎng)中某個IP地址重合,這樣就會出現(xiàn)地址的二義性問題。
- 解決:RFC 1918指明了一些專用地址(private address)。專用地址只能用作本地地址而不能用作全球地址。在互聯(lián)網(wǎng)中的所有路由器,對目的地址是專用地址的數(shù)據(jù)報一律不進行轉(zhuǎn)發(fā)。
RFC 1918指明的專用P地址
三個專用IP地址塊:
(1) 10.0.0.0 到 10.255.255.255
A類,或記為10.0.0.0/8,它又稱為24位塊
(2) 172.16.0.0 到 172.31.255.255
B類,或記為172.16.0.0/12,它又稱為20位塊
(3) 192.168.0.0 到 192.168.255.255
C類,或記為192.168.0.0/16,它又稱為16位塊
專用網(wǎng)
- 采用這樣的專用IP地址的互連網(wǎng)絡稱為專用互聯(lián)網(wǎng)或本地互聯(lián)網(wǎng),或更簡單些,就叫做專用網(wǎng)。
- 因為這些專用地址僅在本機構(gòu)內(nèi)部使用。專用IP地址也叫做可重用地址(reusable address)。
虛擬專用網(wǎng)VPN
- 利用公用的互聯(lián)網(wǎng)作為本機構(gòu)各專用網(wǎng)之間的通信載體,這樣的專用網(wǎng)又稱為虛擬專用網(wǎng)?VPN (Virtual Private Network)。
- “專用網(wǎng)” 是因為這種網(wǎng)絡是為本機構(gòu)的主機用于機構(gòu)內(nèi)部的通信,而不是用于和網(wǎng)絡外非本機構(gòu)的主機通信。
- “虛擬”表示“好像是”,但實際上并不是,因為現(xiàn)在并沒有真正使用通信專線,而VPN只是在效果上和真正的專用網(wǎng)一樣。
虛擬專用網(wǎng)VPN構(gòu)建
- 如果專用網(wǎng)不同網(wǎng)點之間的通信必須經(jīng)過公用的互聯(lián)網(wǎng),但又有保密的要求,那么所有通過互聯(lián)網(wǎng)傳送的數(shù)據(jù)都必須加密。
- 一個機構(gòu)要構(gòu)建自己的 VPN就必須為它的每一個場所購買專門的硬件和軟件,并進行配置,使每一個場所的VPN系統(tǒng)都知道其他場所的地址。
用隧道技術(shù)實現(xiàn)虛擬專用網(wǎng)
?
內(nèi)聯(lián)網(wǎng)intranet和外聯(lián)網(wǎng)extranet
-
它們都是基于TCP/IP協(xié)議的。
-
由部門A和B的內(nèi)部網(wǎng)絡所構(gòu)成的虛擬專用網(wǎng)VPN又稱為內(nèi)聯(lián)網(wǎng)(intranet),表示部門A和B都是在同一個機構(gòu)的內(nèi)部。
-
一個機構(gòu)和某些外部機構(gòu)共同建立的虛擬專用網(wǎng)VPN又稱為外聯(lián)網(wǎng)(extranet)。
遠程接入 VPN
- 遠程接入VPN(remote access VPN)可以滿足外部流動員工訪問公司網(wǎng)絡的需求。
- 在外地工作的員工撥號 接入互聯(lián)網(wǎng),而駐留在員工PC機中的VPN軟件 可在員工的PC機和公司的主機之間 建立 VPN隧道,因而外地員工與公司通信的內(nèi)容是保密的,員工們感到好像就是使用公司內(nèi)部的本地網(wǎng)絡。
Ⅱ.網(wǎng)絡地址轉(zhuǎn)換NAT
■ 問題:在專用網(wǎng)上 使用專用地址的主機 如何與 互聯(lián)網(wǎng)上的主機 通信(并不需要加密)?
? ?解決:
■ 網(wǎng)絡地址轉(zhuǎn)換 NAT (Network AddressTranslation)方法于1994年提出。
■ 需要在專用網(wǎng)連接到互聯(lián)網(wǎng)的路由器上安裝NAT 軟件。裝有NAT 軟件的路由器叫做NAT路由器,它至少有一個有效的外部全球IP地址。
■ 所有使用本地地址的主機在和外界通信時,都要在NAT路由器上將其本地地址轉(zhuǎn)換成全球IP地址,才能和互聯(lián)網(wǎng)連接。
網(wǎng)絡地址轉(zhuǎn)換的過程
- 內(nèi)部主機A用本地地址??和互聯(lián)網(wǎng)上主機B通信所發(fā)送的數(shù)據(jù)報必須經(jīng)過NAT路由器。
- NAT路由器將數(shù)據(jù)報的源地址??轉(zhuǎn)換成全球地址?,并把轉(zhuǎn)換結(jié)果記錄到NAT地址轉(zhuǎn)換表中,目的地址??保持不變,然后發(fā)送到互聯(lián)網(wǎng)。
- NAT路由器收到主機B發(fā)回的數(shù)據(jù)報時,知道數(shù)據(jù)報中的源地址是?而目的地址是?。
- 根據(jù)NAT轉(zhuǎn)換表,NAT路由器將目的地址??轉(zhuǎn)換為?,轉(zhuǎn)發(fā)給最終的內(nèi)部主機A。
- 可以看出,在內(nèi)部主機與外部主機通信時,在NAT路由器上發(fā)生了兩次地址轉(zhuǎn)換:
離開專用網(wǎng)時:替換源地址,將內(nèi)部地址替換為全球地址;
? ? 進入專用網(wǎng)時:替換目的地址,將全球地址替換為內(nèi)部地址;
| 方向 | 字段 | 舊的IP地址 | 新的IP地址 |
| 出 | 源IP地址 | 192.168.0.3 | 172.38.1.5 |
| 入 | 目的IP地址 | 172.38.1.5 | 192.168.0.3 |
| 出 | 源IP地址 | 192.168.0.7 | 172.38.1.6 |
| 入 | 目的IP地址 | 172.38.1.6 | 192.168.0.7 |
網(wǎng)絡地址轉(zhuǎn)換NAT
-
當NAT路由器具有?n?個全球IP地址時,專用網(wǎng)內(nèi)最多可以同時有?n?臺主機接入到互聯(lián)網(wǎng)。這樣就可以使專用網(wǎng)內(nèi)較多數(shù)量的主機,輪流使用NAT路由器有限數(shù)量的全球IP地址。
-
通過NAT路由器的通信必須由專用網(wǎng)內(nèi)的主機發(fā)起。專用網(wǎng)內(nèi)部的主機不能充當服務器用,因為互聯(lián)網(wǎng)上的客戶無法請求專用網(wǎng)內(nèi)的服務器提供服務。
網(wǎng)絡地址與端口號轉(zhuǎn)換NAPT
- 為了更加有效地利用NAT路由器上的全球IP地址,現(xiàn)在常用的NAT轉(zhuǎn)換表把運輸層的端口號也利用上。這樣,就可以使多個擁有本地地址的主機,共用一個NAT路由器上的全球IP地址,因而可以同時和互聯(lián)網(wǎng)上的不同主機進行通信。
- 使用端口號的NAT叫做網(wǎng)絡地址與端口號轉(zhuǎn)換NAPT(Network Address and Port Translation),而不使用端口號的NAT就叫做傳統(tǒng)的NAT(traditional NAT)。
NAPT地址轉(zhuǎn)換表
| 出 | 源IP地址:TCP源端口 | 192.168.0.3:30000 | 172.38.1.5:40001 |
| 出 | 源IP地址:TCP源端口 | 192.168.0.4:30000 | 172.38.1.5:40002 |
| 入 | 目的IP地址:TCP目的端口 | 172.38.1.5:40001 | 192.168.0.3:30000 |
| 入 | 目的IP地址:TCP目的端口 | 172.38.1.5:40002 | 192.168.0.4:30000 |
| NAPT把專用網(wǎng)內(nèi)不同的源IP地址,都轉(zhuǎn)換為同樣的全球IP地址。 但對源主機所采用的TCP端口號(不管相同或不同),則轉(zhuǎn)換為不同的新的端口號。因此,當NAPT路由器收到從互聯(lián)網(wǎng)發(fā)來的應答時,就可以從IP數(shù)據(jù)報的數(shù)據(jù)部分找出運輸層的端口號,然后根據(jù)不同的目的端口號,從 NAPT轉(zhuǎn)換表中找到正確的目的主機。 |
9.多協(xié)議標記交換 MPLS
- IETF于1997年成立了MPLS工作組,開發(fā)出一種新的協(xié)議——多協(xié)議標記交換MPLS(MultiProtocol Label Switching)。
- “多協(xié)議” 表示在 MPLS的上層可以采用多種協(xié)議,例如:IP,IPX;可以使用多種數(shù)據(jù)鏈路層協(xié)議,例如:PPP,以太網(wǎng),ATM等。
- “標記” 是指每個分組被打上一個標記,根據(jù)該標記對分組進行轉(zhuǎn)發(fā)。
| 為了實現(xiàn)交換,可以利用面向連接的概念,使每個分組攜帶一個叫做標記(label)的小整數(shù)。當分組到達交換機(即標記交換路由器)時,交換機讀取分組的標記,并用標記值來檢索分組轉(zhuǎn)發(fā)表。這樣就比查找路由表來轉(zhuǎn)發(fā)分組要快得多。 |
MPLS特點
■ MPLS并沒有取代IP,而是作為一種IP增強技術(shù),被廣泛地應用在互聯(lián)網(wǎng)中。
■ MPLS具有以下三個方面的特點:
- (1)支持面向連接的服務質(zhì)量;
- (2)支持流量工程,平衡網(wǎng)絡負載;
- (3)有效地支持虛擬專用網(wǎng)VPN。
Ⅰ.MPLS的工作原理
①基本工作過程
■ IР分組的轉(zhuǎn)發(fā)
- 在傳統(tǒng)的IP網(wǎng)絡中,分組每到達一個路由器后,都必須提取出其目的地址,按目的地址查找路由表,并按照“最長前綴匹配”的原則找到下一跳的IP地址(請注意,前綴的長度是不確定的)。
- 當網(wǎng)絡很大時,查找含有大量項目的路由表要花費很多的時間。
- 在出現(xiàn)突發(fā)性的通信量時,往往還會使緩存溢出,這就會引起分組丟失、傳輸時延增大和服務質(zhì)量下降。
MPLS協(xié)議的基本原理
- 在MPLS域的入口處,給每一個IP數(shù)據(jù)報打上固定長度“標記”,然后對打上標記的IP數(shù)據(jù)報用硬件進行轉(zhuǎn)發(fā)。
- 采用硬件技術(shù)對打上標記的IP數(shù)據(jù)報進行轉(zhuǎn)發(fā)就稱為標記交換。
- “交換”也表示在轉(zhuǎn)發(fā)時不再上升到第三層查找轉(zhuǎn)發(fā)表,而是根據(jù)標記在第二層(鏈路層)用硬件進行轉(zhuǎn)發(fā)。
- MPLS域(MPLS domain)是指該域中有許多彼此相鄰的路由器,并且所有的路由器都是支持MPLS技術(shù)的標記交換路由器?LSR (Label Switching Router)。
- LSR同時具有標記交換和路由選擇這兩種功能,標記交換功能是為了快速轉(zhuǎn)發(fā),但在這之前LSR需要使用路由選擇功能構(gòu)造轉(zhuǎn)發(fā)表。
MPLS的基本工作過程
⑴ MPLS域中的各LSR使用專門的標記分配協(xié)議LDP交換報文,并找出標記交換路徑LSP。各LSR根據(jù)這些路徑構(gòu)造出分組轉(zhuǎn)發(fā)表。
⑵ 分組進入到MPLS域時,MPLS 入口結(jié)點把分組打上標記,并按照轉(zhuǎn)發(fā)表將分組轉(zhuǎn)發(fā)給下一個LSR。給IP數(shù)據(jù)報打標記的過程叫做分類(classification)。
⑶ 一個標記僅僅在兩個標記交換路由器LSR之間才有意義。分組每經(jīng)過一個LSR,LSR就要做兩件事:
| ①是轉(zhuǎn)發(fā), |
| ②是更換新的標記,即把入標記更換成為出標記。這就叫做標記對換(label swapping)。 |
| 入接口 | 入標記 | 出接口 | 出標記 |
| 0 | 3 | 1 | 1 |
| 項目含義:從入接口0收到一個入標記為3的IP數(shù)據(jù)報,轉(zhuǎn)發(fā)時,應當把該IP數(shù)據(jù)報從出接口1轉(zhuǎn)發(fā)出去,同時把標記對換為1。 |
⑷ 當分組離開MPLS域時,MPLS 出口結(jié)點把分組的標記去除。再以后就按照一般分組的轉(zhuǎn)發(fā)方法進行轉(zhuǎn)發(fā)。
| 上述的這種“由入口LSR確定進入MPLS域以后的轉(zhuǎn)發(fā)路徑”稱為顯式路由選擇(explicit routing),它和互聯(lián)網(wǎng)中通常使用的“每一個路由器逐跳進行路由選擇”有著很大的區(qū)別。 |
②轉(zhuǎn)發(fā)等價類FEC(Forwarding Equivalence Class)
- MPLS有個很重要的概念就是轉(zhuǎn)發(fā)等價類FEC(Forwarding Equivalence Class)。
- “轉(zhuǎn)發(fā)等價類”就是路由器按照同樣方式對待的分組的集合。
| “按照同樣方式對待”?表示:從同樣接口轉(zhuǎn)發(fā)到同樣的下一跳地址,并且具有同樣服務類別和同樣丟棄優(yōu)先級等。 |
- 劃分FEC的方法不受什么限制,這都由網(wǎng)絡管理員來控制,因此非常靈活。
- 入口結(jié)點并不是給每一個分組指派一個不同的標記,而是將屬于同樣FEC的分組都指派同樣的標記。
- FEC和標記是一一對應的關(guān)系。
?FEC用于負載平衡
流量工程
-
網(wǎng)絡管理員采用自定義的FEC就可以更好地管理網(wǎng)絡的資源。
-
這種均衡網(wǎng)絡負載的做法也稱為流量工程TE(Traffic Engineering)或通信量工程。
Ⅱ.MPLS首部的位置與格式?
- MPLS并不要求下層的網(wǎng)絡都使用面向連接的技術(shù)。
- 下層的網(wǎng)絡并不提供打標記的手段,而IPv4數(shù)據(jù)報首部也沒有多余的位置存放MPLS標記。
- 這就需要使用一種封裝技術(shù):在把IP數(shù)據(jù)報封裝成以太網(wǎng)幀之前,先要插入一個MPLS首部。
- 從層次的角度看,MPLS首部就處在第二層和第三層之間。
MPLS首部的格式
| “給IP數(shù)據(jù)報打上標記”其實就是在 以太網(wǎng)的幀首部 和 IР數(shù)據(jù)報的首部 之間插入一個4字節(jié)的MPLS首部。 |
MPLS首部共包括以下四個字段:
?
總結(jié)
以上是生活随笔為你收集整理的计网PPT 第四章 网络层的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 互联网时代,学什么专业就业好?
- 下一篇: 小功能解决小麻烦,福昕PDF阅读器仿真放