Ⅰ 計算機網路-4-4-轉發分組,構建子網和劃分超網
上圖是一個路由器怎麼進行分組轉發的例子:有四個A類網路通過三個路由器連接在一起,每一個網路上都可能會有成千上萬台主機。若路由表指出每一台主機該進行怎樣的轉發。則要維護的路由表是非常的龐大。 如果路由表指定到某一個網路如何轉發,則路由表中只有4行,每一行對應一個網路。 以路由器2的路由表為例:由於R2同時連接在網路2和網路3上,因此只要目標主機在網路2或者網路3上,都可以通過介面0或者1或者路由器R2直接交付(當然還有使用ARP協議找到這些主機相應的MAC地址)。若目標主機在網路1中,則下一跳路由器為R1,其IP地址為20.0.0.7。路由器R2和R1由於同時連接在網路2上,因此從路由器2把轉發分組給R1是很容易的。 我們應當注意到:每一個路由器至少都要擁有兩個不同的IP地址。 總之,在路由表中,對每一條路由最主要的是以下兩條信息: (目的網路,下一跳地址) 我們根據目的網路地址來確定下一跳路由器,這樣可以得到以下結論:
雖然互聯網上所有的分組轉發都是 基於目的主機所在的網路 ,但是在大多數情況下都允許這樣的實例: 對特定的主機指明一個路由 ,這種路由叫 特定主機路由 。採用特定主機路由可以使網路人員方便管理控制網路和測試網路
路由器還可以採用 默認路由 以減少路由表所佔用的空間和搜索路由表所使用的時間。
當路由器接收到一個待轉發的數據報,在從路由表中得出下一跳路由器的IP地址後,不是把這個地址寫入IP數據報,而是送交 數據鏈路層的網路介面軟體 ,網路介面軟體把負責下一跳的路由器IP地址轉化為硬體地址(必須使用ARP),將硬體地址寫入MAC幀的首部,然後根據這個硬體地址找到下一跳路由器。由此可見,當發送一連串的數據報時,上述的這種查找路由表,用ARP得到硬體地址,把硬體地址寫入MAC地址首部等過程,將不斷地重復進行,造成了一定的開銷。
根據以上幾點,我們提出 分組轉發演算法:
這里我們需要強調一下,路由表並沒有給分組指明某個網路的完整路徑(即先經過哪一個路由器,然後再經過哪一個路由器,等等)。路由表指出,到達某個網路應該先到達某個路由器(下一條路由器),在到達下一跳路由器之後,再繼續查找路由表,知道再下一步應當到達哪一個路由器。這樣一步步的查找下去,直到最後到達目的網路。
為什麼劃分子網?
為解決上述問題,從1985年引出 子網路號欄位 ,使得兩級IP地址變為三級IP地址,這種做法叫做 劃分子網(subnetting)【RFC950】 。
劃分子網的基本思路:
劃分子網的用例
如上圖為某單位擁有一個B類IP地址,網路地址為145.13.0.0(網路號為145.13),凡是目的網路為145.13.x.x的數據報都會送到這個網路上路由器R1上。
現在把該網路劃分為三個字網,這里假設子網路號佔用8位,因此主機號就只剩下16-8=8位了,所劃分的三個字網為145.13.3.0,145.13.7.0,145.3.21.0。路由器在接受到145.13.0.0上的路由器數據後,再根據數據報的目的地址把它轉化到相應的子網。
總之,當沒有劃分子網的時候,IP地址是兩節結構。劃分子網後IP地址就變成了三級結構。劃分子網只是把IP地址的主機號這部分進行再劃分,而不改變IP地址原來的網路號。
假定有一個IP數據報(其目的地址為145.13.3.10)已經到達了路由器R1,那麼這個路由器如何把它轉發到子網145.13.3.0呢?
我們知道,從IP數據包報的首部無法看出源主機的目的主機所連接的網路是否進行了子網劃分。這是因為32位IP地址本身以及數據報的首部沒有包含任何關於子網劃分的信息。因此必須另想辦法,這就是使用 子網掩碼 。
把三級IP地址的子網掩碼和收到的目的地址的IP地址 逐位進行與(AND)運算,就可以立即得到網路地址,剩下的步驟就交給路由器處理分組。
使用子網掩碼的好處是:不管網路有沒有劃分子網,只要把子網掩碼和IP地址進行逐位 與(AND) 運算,就立即得出網路地址來,這樣在路由器處理到來的分組時就可採取同樣的做法。
在不劃分子網時,為什麼還要使用子網掩碼?這就是為了更便於查找路由表。現在互聯網規定:所有網路都必須使用子網掩碼,同時在路由器的路由表中也必須有子網掩碼這一欄。如果一個網路不劃分子網,那麼該網路的子網掩碼就是用 默認的子網掩碼 ,默認子網掩碼中1的位置和IP地址中的網路號欄位net-id正好相對應。因此,若用默認子網掩碼和某個不劃分子網的IP地址逐位相"與",就應該能夠得出該IP地址的網路地址來,這樣做可以不用查找該地址的類別位就能夠知道這是哪一類的IP地址。顯然:
圖4-21是這三類IP地址的網路地址和相應的默認子網掩碼:
子網掩碼是一個網路或者一個子網的重要屬性 。在RFC950成為互聯網標准後,路由器在和相鄰路由器交換路由信息時,必須把自己所在的網路(或子網)的子網掩碼告訴相鄰路由器,在路由器的路由表中的每一個項目,除了要給出目的網路地址外,還必須同時給出該網路的子網掩碼。若一個路由器連接在兩個子網上就擁有兩個網路地址和兩個子網掩碼。
例4-2:
已知IP地址是141.14.72.24,子網掩碼是255.255.192.0,求網路地址:
解: 255.255.192.0的二進制:11111111 11111111 11000000 00000000
IP 141.14.72.24二進制: 11111111 11111111 01001000
00000000
將IP地址二進制與子網掩碼二進制進行 與(AND)運算 為 ::11111111 11111111 11000000 00000000
即網路IP為:141.14.64.0
在劃分子網的情況下,分組轉發的演算法必須作出改動。在使用子網劃分後,路由表應該包含以下內容:
在劃分子網的情況下,路由器轉發分組的演算法如下:
例4-4:
圖4-24有三個字網,兩個路由器,以及路由器R1的部分路由表。現在源主機H1向目的主機H2發送分組。試討論R1收到H1向H2發送的分組後查路由表的過程。
解:
源主機H1向目標主機H2發送的分組的目的地址為128.30.33.138。
源主機H1把本子網的子網掩碼255.255.255.128與H2的IP地址128.30.33.128相與得到128.30.33.128,它不等於H1的網路地址(128.30.33.0)。這說明主機H2與主機H1不在同一個網段上,因此H1不能把數據包直接交付給H2。必須交給子網上的默認路由R1,由R1轉發。
路由表在接受到這個分組之後,就在其路由表中逐行匹配尋找。
首先看R1路由表的第一行:用這一行的子網掩碼255.255.255.128與H2IP地址進行互與,得到128.30.33.128,然後和這一行用樣的方法進行第二行,結果發現相與出來的結果和目的網路地址匹配,則說明這個網路(子網2)就是收到的分組所要尋找的目的網路。於是就不用繼續找了。R1把分組從介面1直接交付給主機H2(他們都在一個子網上)。
在一個劃分子網的網路中可使用幾個不同的子網掩碼。使用變長 子網掩碼VLSM(Variable Length Subnet Mask) 可進一步提高IP地址資源的利用率。在VLSM的基礎上又進一步研究出 無分類編制 方法。它的正式名字是無分類域間路由選擇CIDR(Classless Inter-Domain Routing)。
CIDR 最主要的特點有兩個:
CIDR還使用斜線記法,就是在IP地址後面加上斜線/,然後寫上 網路前綴所佔的位數 。例如IP地址為128.14.35.7/20是某CIDR地址快中的一個地址,其中前20位就是網路前綴,後面的14位是主機位。如圖所示:
當然以上地址的主機號全為0和全為1的地址,一般並不使用,這個地址塊共有2^12個地址,我們可以使用地址塊中最小的地址和網路前綴來指明這個地址快。例如,上述的地址塊可記為128.14.32.0/20。
為了更方便的進行路由選擇,CIDR使用了32位的地址掩碼(address mask)。地址掩碼是由一串1和一串0組成, 而1的個數就是網路前綴的個數。 雖然CIDR不使用子網了,但是出於某些原因,CIDR使用的地址掩碼也可以繼續稱為 子網掩碼,斜線記法中,斜線後面的數字就是1的個數 。例如,/20地址快的地址掩碼是 11111111 11111111 11110000 00000000 (20個連續的1)。 斜線記法中,斜線後面的數字就是地址掩碼中1的個數。
斜線記法還有一個好處就是它除了可以表示一個IP地址外,還提供了一些其他重要的信息。我們舉例說明如下:
例如,地址為192.199.170.82/27不僅表示IP地址是192.199.170.82,而且還表示這個地址快的網路前綴有27位(剩下的5位是主機號),因此這個地址快包含32個IP地址( =32)。通過見到那的計算還可以得出,這個地址塊的最小地址是192.199.170.64,最大地址是192.199.170.95。具體的計算方法是這樣的:找到地址掩碼中1和0的交界處發生在地址中的哪一個位元組,現在是第四個位元組,因此只要把這一個位元組的十進制82用二進製表示即可:82的二進制是01010010,取其前3位(這3位加上前3位元組的24位就夠成了27位),再把後面的5位都寫成0,即01000000,等於十進制64,這樣就找到了地址快的最小地址192.199.170.64,再把最後面5位都置為1,即01011111,等於十進制的95,這就找到了地址塊中的最大地址192.199.170.95。
由於一個CICR地址塊有很多地址,所以在路由表中就利用CIDR地址塊來查找目的網路。這種地址的聚合常稱之為 路由聚合(route aggregation) ,它使得路由表中的一個項目可以表示原來傳統分類地址的很多個路由,路由聚合也稱之為 構成超網(supernetting) ,路由聚合有利於減少路由器之間的路由選擇信息的交換,從而提高了整個互聯網的性能。
每一個CIDR地址塊中的地址數一定是2的整數次冪,這就是 構建超網 的來源。
網路前綴越短 ,其地址塊所包含的地址數就越多,而在三級結構的IP地址中,劃分子網是使網路前綴變長。
在使用了CIDR時,由於採用網路前綴這種記法,IP地址由網路前綴和主機號這兩部分組成,因此在路由表中的項目也要有相應的變化,這時,每個項目由 網路前綴 和 下一跳地址組成 , 但是在查找路由表時可能會得到不止一個匹配結果 ,這樣就帶來一個問題:我們應該從這些匹配結果中選擇哪一條路由呢?
正確的答案是: 應但從匹配結果中選擇具有最長網路前綴的路由 ,這就做 最長前綴匹配(long-prefix matching) ,這是因為網路前綴越長,說明其地址塊越小因而路由就越具體,最長前綴匹配又稱之為 最長匹配 或者 最佳匹配 。
使用CIDR後,由於要尋找最長前綴匹配,使路由表的查找過程變的十分復雜,當路由表的項目數很大的時候,怎樣設法減少路由表的平均查找時間就成為了一個非常重要的問題,現在常用的是 二叉線索(binary trie) ,它是一種特殊結構的樹,IP地址中從左到右的比特值決定了從根節點逐層向下層延伸的路徑,二二叉線索中的各個路徑就代表路由表中存放的各個地址。
圖4-26用一個例子說明二叉樹線索的結構,圖中給出了5個IP地址。為了簡化二叉線索的結構,可以先找出對應一與每一個IP地址的唯一前綴(unique prefix),所謂唯一前綴就是在表中所有的IP地址中,該前綴時唯一的,這樣就可以用這些唯一前綴來構造二叉線索。在進行查找時,只要能夠和唯一前綴匹配相匹配就可以了。
從二叉樹的根節點自頂向下的深度最多有32層,每一層對應於IP地址中的一位。
Ⅱ 計算機網路第四章(網路層)
4.1、網路層概述
簡介
網路層的主要任務是 實現網路互連 ,進而 實現數據包在各網路之間的傳輸
這些異構型網路N1~N7如果只是需要各自內部通信,他們只要實現各自的物理層和數據鏈路層即可
但是如果要將這些異構型網路互連起來,形成一個更大的互聯網,就需要實現網路層設備路由器
有時為了簡單起見,可以不用畫出這些網路,圖中N1~N7,而將他們看做是一條鏈路即可
要實現網路層任務,需要解決一下主要問題:
網路層向運輸層提供怎樣的服務(「可靠傳輸」還是「不可靠傳輸」)
在數據鏈路層那課講過的可靠傳輸,詳情可以看那邊的筆記:網路層對以下的 分組丟失 、 分組失序 、 分組重復 的傳輸錯誤採取措施,使得接收方能正確接受發送方發送的數據,就是 可靠傳輸 ,反之,如果什麼措施也不採取,則是 不可靠傳輸
網路層定址問題
路由選擇問題
路由器收到數據後,是依據什麼來決定將數據包從自己的哪個介面轉發出去?
依據數據包的目的地址和路由器中的路由表
但在實際當中,路由器是怎樣知道這些路由記錄?
由用戶或網路管理員進行人工配置,這種方法只適用於規模較小且網路拓撲不改變的小型互聯網
另一種是實現各種路由選擇協議,由路由器執行路由選擇協議中所規定的路由選擇演算法,而自動得出路由表中的路有記錄,這種方法更適合規模較大且網路拓撲經常改變的大型互聯網
補充 網路層(網際層) 除了 IP協議 外,還有之前介紹過的 地址解析協議ARP ,還有 網際控制報文協議ICMP , 網際組管理協議IGMP
總結
4.2、網路層提供的兩種服務
在計算機網路領域,網路層應該向運輸層提供怎樣的服務(「 面向連接 」還是「 無連接 」)曾引起了長期的爭論。
爭論焦點的實質就是: 在計算機通信中,可靠交付應當由誰來負責 ?是 網路 還是 端系統 ?
面向連接的虛電路服務
一種觀點:讓網路負責可靠交付
這種觀點認為,應藉助於電信網的成功經驗,讓網路負責可靠交付,計算機網路應模仿電信網路,使用 面向連接 的通信方式。
通信之前先建立 虛電路 (Virtual Circuit),以保證雙方通信所需的一切網路資源。
如果再使用可靠傳輸的網路協議,就可使所發送的分組無差錯按序到達終點,不丟失、不重復。
發送方 發送給 接收方 的所有分組都沿著同一條虛電路傳送
虛電路表示這只是一條邏輯上的連接,分組都沿著這條邏輯連接按照存儲轉發方式傳送,而並不是真正建立了一條物理連接。
請注意,電路交換的電話通信是先建立了一條真正的連接。
因此分組交換的虛連接和電路交換的連接只是類似,但並不完全一樣
無連接的數據報服務
另一種觀點:網路提供數據報服務
互聯網的先驅者提出了一種嶄新的網路設計思路。
網路層向上只提供簡單靈活的、 無連接的 、 盡最大努力交付 的 數據報服務 。
網路在發送分組時不需要先建立連接。每一個分組(即 IP 數據報)獨立發送,與其前後的分組無關(不進行編號)。
網路層不提供服務質量的承諾 。即所傳送的分組可能出錯、丟失、重復和失序(不按序到達終點),當然也不保證分組傳送的時限。
發送方 發送給 接收方 的分組可能沿著不同路徑傳送
盡最大努力交付
如果主機(即端系統)中的進程之間的通信需要是可靠的,那麼就由網路的 主機中的運輸層負責可靠交付(包括差錯處理、流量控制等) 。
採用這種設計思路的好處是 :網路的造價大大降低,運行方式靈活,能夠適應多種應用。
互連網能夠發展到今日的規模,充分證明了當初採用這種設計思路的正確性。
虛電路服務與數據報服務的對比
對比的方面 虛電路服務 數據報服務
思路 可靠通信應當由網路來保證 可靠通信應當由用戶主機來保證
連接的建立 必須有 不需要
終點地址 僅在連接建立階段使用,每個分組使用短的虛電路號 每個分組都有終點的完整地址
分組的轉發 屬於同一條虛電路的分組均按照同一路由進行轉發 每個分組獨立選擇路由進行轉發
當結點出故障時 所有通過出故障的結點的虛電路均不能工作 出故障的結點可能會丟失分組,一些路由可能會發生變化
分組的順序 總是按發送順序到達終點 到達終點時不一定按發送順序
端到端的差錯處理和流量控制 可以由網路負責,也可以由用戶主機負責 由用戶主機負責
4.3、IPv4
概述
分類編制的IPv4地址
簡介
每一類地址都由兩個固定長度的欄位組成,其中一個欄位是 網路號 net-id ,它標志主機(或路由器)所連接到的網路,而另一個欄位則是 主機號 host-id ,它標志該主機(或路由器)。
主機號在它前面的網路號所指明的網路范圍內必須是唯一的。
由此可見, 一個 IP 地址在整個互聯網范圍內是唯一的 。
A類地址
B類地址
C類地址
練習
總結
IP 地址的指派范圍
一般不使用的特殊的 IP 地址
IP 地址的一些重要特點
(1) IP 地址是一種分等級的地址結構 。分兩個等級的好處是:
第一 ,IP 地址管理機構在分配 IP 地址時只分配網路號,而剩下的主機號則由得到該網路號的單位自行分配。這樣就方便了 IP 地址的管理。
第二 ,路由器僅根據目的主機所連接的網路號來轉發分組(而不考慮目的主機號),這樣就可以使路由表中的項目數大幅度減少,從而減小了路由表所佔的存儲空間。
(2) 實際上 IP 地址是標志一個主機(或路由器)和一條鏈路的介面 。
當一個主機同時連接到兩個網路上時,該主機就必須同時具有兩個相應的 IP 地址,其網路號 net-id 必須是不同的。這種主機稱為 多歸屬主機 (multihomed host)。
由於一個路由器至少應當連接到兩個網路(這樣它才能將 IP 數據報從一個網路轉發到另一個網路),因此 一個路由器至少應當有兩個不同的 IP 地址 。
(3) 用轉發器或網橋連接起來的若干個區域網仍為一個網路 ,因此這些區域網都具有同樣的網路號 net-id。
(4) 所有分配到網路號 net-id 的網路,無論是范圍很小的區域網,還是可能覆蓋很大地理范圍的廣域網,都是平等的。
劃分子網的IPv4地址
為什麼要劃分子網
在 ARPANET 的早期,IP 地址的設計確實不夠合理:
IP 地址空間的利用率有時很低。
給每一個物理網路分配一個網路號會使路由表變得太大因而使網路性能變壞。
兩級的 IP 地址不夠靈活。
如果想要將原來的網路劃分成三個獨立的網路
所以是否可以從主機號部分借用一部分作為子網號
但是如果未在圖中標記子網號部分,那麼我們和計算機又如何知道分類地址中主機號有多少比特被用作子網號了呢?
所以就有了劃分子網的工具: 子網掩碼
從 1985 年起在 IP 地址中又增加了一個「 子網號欄位 」,使兩級的 IP 地址變成為 三級的 IP 地址 。
這種做法叫做 劃分子網 (subnetting) 。
劃分子網已成為互聯網的正式標准協議。
如何劃分子網
基本思路
劃分子網純屬一個 單位內部的事情 。單位對外仍然表現為沒有劃分子網的網路。
從主機號 借用 若干個位作為 子網號 subnet-id,而主機號 host-id 也就相應減少了若干個位。
凡是從其他網路發送給本單位某個主機的 IP 數據報,仍然是根據 IP 數據報的 目的網路號 net-id,先找到連接在本單位網路上的路由器。
然後 此路由器 在收到 IP 數據報後,再按 目的網路號 net-id 和 子網號 subnet-id 找到目的子網。
最後就將 IP 數據報直接交付目的主機。
劃分為三個子網後對外仍是一個網路
優點
1. 減少了 IP 地址的浪費 2. 使網路的組織更加靈活 3. 更便於維護和管理
劃分子網純屬一個單位內部的事情,對外部網路透明 ,對外仍然表現為沒有劃分子網的一個網路。
子網掩碼
(IP 地址) AND (子網掩碼) = 網路地址 重要,下面很多相關知識都會用到
舉例
例子1
例子2
默認子網掩碼
總結
子網掩碼是一個網路或一個子網的重要屬性。
路由器在和相鄰路由器交換路由信息時,必須把自己所在網路(或子網)的子網掩碼告訴相鄰路由器。
路由器的路由表中的每一個項目,除了要給出目的網路地址外,還必須同時給出該網路的子網掩碼。
若一個路由器連接在兩個子網上,就擁有兩個網路地址和兩個子網掩碼。
無分類編址的IPv4地址
為什麼使用無分類編址
無分類域間路由選擇 CIDR (Classless Inter-Domain Routing)。
CIDR 最主要的特點
CIDR使用各種長度的「 網路前綴 」(network-prefix)來代替分類地址中的網路號和子網號。
IP 地址從三級編址(使用子網掩碼)又回到了兩級編址 。
如何使用無分類編址
舉例
路由聚合(構造超網)
總結
IPv4地址的應用規劃
給定一個IPv4地址快,如何將其劃分成幾個更小的地址塊,並將這些地址塊分配給互聯網中不同網路,進而可以給各網路中的主機和路由器介面分配IPv4地址
定長的子網掩碼FLSM(Fixed Length Subnet Mask)
劃分子網的IPv4就是定長的子網掩碼
舉例
通過上面步驟分析,就可以從子網1 ~ 8中任選5個分配給左圖中的N1 ~ N5
採用定長的子網掩碼劃分,只能劃分出2^n個子網,其中n是從主機號部分借用的用來作為子網號的比特數量,每個子網所分配的IP地址數量相同
但是也因為每個子網所分配的IP地址數量相同,不夠靈活,容易造成IP地址的浪費
變長的子網掩碼VLSM(Variable Length Subnet Mask)
無分類編址的IPv4就是變長的子網掩碼
舉例
4.4、IP數據報的發送和轉發過程
舉例
源主機如何知道目的主機是否與自己在同一個網路中,是直接交付,還是間接交付?
可以通過 目的地址IP 和 源地址的子網掩碼 進行 邏輯與運算 得到 目的網路地址
如果 目的網路地址 和 源網路地址 相同 ,就是 在同一個網路 中,屬於 直接交付
如果 目的網路地址 和 源網路地址 不相同 ,就 不在同一個網路 中,屬於 間接交付 ,傳輸給主機所在網路的 默認網關 (路由器——下圖會講解),由默認網關幫忙轉發
主機C如何知道路由器R的存在?
用戶為了讓本網路中的主機能和其他網路中的主機進行通信,就必須給其指定本網路的一個路由器的介面,由該路由器幫忙進行轉發,所指定的路由器,也被稱為 默認網關
例如。路由器的介面0的IP地址192.168.0.128做為左邊網路的默認網關
主機A會將該IP數據報傳輸給自己的默認網關,也就是圖中所示的路由器介面0
路由器收到IP數據報後如何轉發?
檢查IP數據報首部是否出錯:
若出錯,則直接丟棄該IP數據報並通告源主機
若沒有出錯,則進行轉發
根據IP數據報的目的地址在路由表中查找匹配的條目:
若找到匹配的條目,則轉發給條目中指示的嚇一跳
若找不到,則丟棄該數據報並通告源主機
假設IP數據報首部沒有出錯,路由器取出IP數據報首部各地址欄位的值
接下來路由器對該IP數據報進行查表轉發
逐條檢查路由條目,將目的地址與路由條目中的地址掩碼進行邏輯與運算得到目的網路地址,然後與路由條目中的目的網路進行比較,如果相同,則這條路由條目就是匹配的路由條目,按照它的下一條指示,圖中所示的也就是介面1轉發該IP數據報
路由器是隔離廣播域的
4.5、靜態路由配置及其可能產生的路由環路問題
概念
多種情況舉例
靜態路由配置
舉例
默認路由
舉例
默認路由可以被所有網路匹配,但路由匹配有優先順序,默認路由是優先順序最低的
特定主機路由
舉例
有時候,我們可以給路由器添加針對某個主機的特定主機路由條目
一般用於網路管理人員對網路的管理和測試
多條路由可選,匹配路由最具體的
靜態路由配置錯誤導致路由環路
舉例
假設將R2的路由表中第三條目錄配置錯了下一跳
這導致R2和R3之間產生了路由環路
聚合了不存在的網路而導致路由環路
舉例
正常情況
錯誤情況
解決方法
黑洞路由的下一跳為null0,這是路由器內部的虛擬介面,IP數據報進入它後就被丟棄
網路故障而導致路由環路
舉例
解決方法
添加故障的網路為黑洞路由
假設。一段時間後故障網路恢復了
R1又自動地得出了其介面0的直連網路的路由條目
針對該網路的黑洞網路會自動失效
如果又故障
則生效該網路的黑洞網路
總結
4.6、路由選擇協議
概述
網際網路所採用的路由選擇協議的主要特點
網際網路採用分層次的路由選擇協議
自治系統 AS :在單一的技術管理下的一組路由器,而這些路由器使用一種 AS 內部的路由選擇協議和共同的度量以確定分組在該 AS 內的路由,同時還使用一種 AS 之間的路由選擇協議用以確定分組在 AS之間的路由。
自治系統之間的路由選擇簡稱為域間路由選擇,自治系統內部的路由選擇簡稱為域內路由選擇
域間路由選擇使用外部網關協議EGP這個類別的路由選擇協議
域內路由選擇使用內部網關協議IGP這個類別的路由選擇協議
網關協議 的名稱可稱為 路由協議
常見的路由選擇協議
Ⅲ 計算機網路中CIDR地址聚合的問題
CIDR是用於幫助減緩IP地址和路由表增大的一個技術,基本思想是:取消IP地址分類,將多個地址塊聚合在一起,生成一個更大的網路,以包含更多的主機
最大可能的聚合指的應該是精確聚合,使用最少的CIDR地址來精確聚合。
最大可能的聚合結果是:212.56.132.0/22,聚合的基本思想就是減少網路位來增加主機位,
Ⅳ 計算機網路解答題。求詳細步驟!
1、140.100.0.0/16,這是一個B類地址。此題目有很多劃分方法。
2、最簡單的一種,可以這樣分析:
部門A1:300台主機,考慮到網關地址和廣播地址、網路地址,需要303個地址,因此可以分配兩個256網段,網段的主機位為9位,因此網路位32-9=23位;
部門A2:200台主機,需要203個地址,因此分配一個256網段,網段的主機位為8位,因此網路位32-9=24位;
部門A3:100台主機,需要103個地址,因此可以規劃一個256網段,網段的主機位為8位,因此網路位32-9=24位;
部門A4:50台主機,需要53個地址,因此可以規劃一個256網段,網段的主機位為8位,因此網路位32-9=24位;
部門A5和A6:各20台主機,各需要23個地址,因此可以各規劃一個256網段,網段的主機位為8位,因此網路位32-9=24位;
3、總之,根據上述規劃需要7個256網段,考慮的子網的數量應該是2的整數次方,因此可以規劃8子網。8=2的3次方,因此子網網長度是3個bit位,每個部門的網路地址如下:
A1:網路地址 140.100.0.0/23 掩碼255.255.254.0 廣播地址:140.100.1.255/23
A2:網路地址 140.100.2.0/24 掩碼255.255.255.0 廣播地址:140.100.2.255/24
A3:網路地址 140.100.3.0/24 掩碼255.255.255.0 廣播地址:140.100.3.255/24
A4:網路地址 140.100.4.0/24 掩碼255.255.255.0 廣播地址:140.100.4.255/24
A5:網路地址 140.100.5.0/24 掩碼255.255.255.0 廣播地址:140.100.5.255/24
A6:網路地址 140.100.6.0/24 掩碼255.255.255.0 廣播地址:140.100.6.255/24
A7:網路地址 140.100.7.0/24 掩碼255.255.255.0 廣播地址:140.100.7.255/24
Ⅳ 誰知道CIDR是什麼意思
英文縮寫: CIDR (Classless InterDomain Routing)
中文譯名: 無類別域際路由選擇
分 類: 網路與交換
解 釋: 現行的IPv4(網際協議第4版)的地址將耗盡,這是一種為解決地址耗盡而提出的一種措施。它是將好幾個IP網路結合在一起,使用一種無類別的域際路由選擇演算法,可以減少由核心路由器運載的路由選擇信息的數量。
CIDR(無類型域間選路,Classless Inter-Domain Routing)是一個在Internet上創建附加地址的方法,這些地址提供給服務提供商(ISP),再由ISP分配給客戶。CIDR將路由集中起來,使一個IP地址代表主要骨幹提供商服務的幾千個IP地址,從而減輕Internet路由器的負擔。所有發送到這些地址的信息包都被送到如MCI或Sprint等ISP。1990年,Internet上約有2000個路由。五年後,Internet上有3萬多個路由。如果沒有CIDR,路由器就不能支持Internet網站的增多。 CIDR採用13~27位可變網路ID,而不是A-B-C類網路ID所用的固定的7、14和21位。
CIDR 如何工作
CIDR 對原來用於分配A類、B類和C類地址的有類別路由選擇進程進行了重新構建。CIDR用 13-27位長的前綴取代了原來地址結構對地址網路部分的限制(3類地址的網路部分分別被限制為8位、16位和24位)。在管理員能分配的地址塊中,主機數量范圍是32-500,000,從而能更好地滿足機構對地址的特殊需求。
CIDR 地址中包含標準的32位IP地址和有關網路前綴位數的信息。以CIDR地址222.80.18.18/25為例,其中「/25」表示其前面的之中的前25位代表網路部分,其餘位代表主機部分。
CIDR建立與「超級組網」的基礎上,「超級組網」是「子網劃分」的派生詞,可看作子網劃分的逆過程。子網劃分時,從地址主機部分借位,將其和並進網路部分;而在超級組網中,則是將網路部分的某些位合並進駐及部分。這種無類別超級組網技術通過將一組較小的無類別網路匯聚為一個較大的單一路由表項,減少了Internet路由域中路由表條目的數量。
Ⅵ ip地址的cidr記法最突出優點
ip地址的cidr記法最突出優點:可以根據網路設置需求對分類ip進行靈活劃分和使用。
要求子網主機數是86個,那麼最小的接近的子網是128個主機的,那就只能使用掩碼255.255.255.128了,但是限制的是192.168.1.129-192.168.1.254。
最接近10個主機的話就是16了,那麼192.168.1.161-174了,不符合要求。那就只能32個主機了,就是192.168.1.161-190 能把地址范圍包括進去。
IP協議
IP協議是為計算機網路相互連接進行通信而設計的協議。在網際網路中,它是能使連接到網上的所有計算機網路實現相互通信的一套規則,規定了計算機在網際網路上進行通信時應當遵守的規則。任何廠家生產的計算機系統,只要遵守IP協議就可以與網際網路互連互通。
Ⅶ 計算機三級網路技術,CIDR地址規劃
我也正備考呢,網路號是前23位,一共32位的,主機地址就是後9位,也就是2的9次方個地址數,你的書印錯了位置了吧,呵呵
Ⅷ 計算機網路_網路層
在計算機網路領域,網路層應該向運輸層提供怎樣的服務(面向連接還是無連接)曾引起了長期的爭論,爭論焦點的實質就是:在計算機通信中,可靠交付應當由誰來負責?是 網路 還是 端系統
只是一條 邏輯上的連接 ,分組都沿著這條邏輯連接按照存儲轉發方式傳送,並不是真正建立了一條物理連接。
請注意,電路交換的 電話通信 是先建立了一條 真正的連接 。因此分組交換的虛連接和電路交換的連接只是類似,但並不完全一樣。
數據報服務
網際協議IP是TCP/IP體系中兩個最主要的協議之一,與IP協議配套使用的還有三個協議
互連在一起的網路要進行通信,會遇到許多問題要解決
網路互連要使用一些中間設備
中間設備 又稱為 中間系統 或 中繼 系統
如果我們只從網路層考慮問題,那麼IP數據報就可以想像是在網路層中傳送。
每一類地址都由兩個固定長度的欄位組成,其中一個 欄位是 網路號 net-id ,它標志主機(或路由器)所連接到的網路,而另一個欄位則是**主機號 host-id
**,它標志該主機(或路由器)
可以記為
觀察上圖
比較重要的一點是要區別IP地址與 硬體地址 的區別
從層次的角度來看, 物理地址是數據鏈路層和物理層使用的地址,而IP地址是網路層和以上使用的地址,是一種邏輯地址(稱IP地址是邏輯地址是因為IP地址是用 軟體實現的)
有 四個A類網路 通過三個路由器連接在一起,每個網路上都可能有成千上萬個主機。可以想像,若按目的主機號來製作路由表,則所得出的路由表就會過於龐大。丹若按主機所在的 網路地址 來製作路由表,那麼每一個路由器中的路由表就只包含 四個項目 。這樣可以大大簡化路由表。
使用這樣的簡化圖,我們可以不用關心某個網路內部的具體拓撲結構及連接在該網路上有多少台計算機,他還強調了在互聯網上轉發分組時,是 從一個路由器轉發到下一個路由器 。
根據目的網路地址就能確定下一跳路由器,這一點做的結果是:
雖然網際網路所有分組轉發都是 基於目的主機所在的網路 ,但在大多數情況下都允許有這樣的特例,即對特定的目的主機指明一個路由。這種路由叫做 特定主機路由 ,採用特定主機路由可使網路管理人員能更方便地控制網路和測試網路,同時也可在需要考慮某種安全問題時採用這種特定主機路由。
IP 數據報的首部中 沒有地方 可以用來指明「下一跳路由器的 IP 地址」,當路由器收到待轉發的數據報, 不是 將下一跳路由器的 IP 地址填入 IP 數據報,而是 送交下層的網路介面軟體 。網路介面軟體使用 ARP 負責將下一跳路由器的 IP 地址轉換成 硬體地址 ,並將此硬體地址放在鏈路層的** MAC 幀 的首部,然後根據這個 硬體地址**找到下一跳路由器。
(1) 從數據報的首部提取目的主機的 IP 地址 D, 得出目的網路地址為 N。
(2) 若網路 N 與此路由器直接相連,則把數據報直接交付目的主機 D;否則是間接交付,執行(3)。
(3) 若路由表中有目的地址為 D 的特定主機路由,則把數據報傳送給路由表中所指明的下一跳路由器;否則,執行(4)。
(4) 若路由表中有到達網路 N 的路由,則把數據報傳送給路由表指明的下一跳路由器;否則,執行(5)。
(5) 若路由表中有一個默認路由,則把數據報傳送給路由表中所指明的默認路由器;否則,執行(6)。
(6) 報告轉發分組出錯。
在 ARPANET 的早期,IP 地址的設計確實不夠合理。
從 1985 年起在 IP 地址中又增加了一個「子網號欄位」,使兩級的 IP 地址變成為三級的 IP 地址。這種做法叫作劃分子網(subnetting) 。劃分子網已成為網際網路的正式標准協議。
請注意現在子網號為3的網路的 網路地址 是145.13.3.0(既不是原來兩級的IP地址的網路地址145.13.0.0,也不是簡單的子網號3),為了使路由器能很方便的從數據報中的目的IP地址中提取所要找的子網的網路地址,路由器就要使用三級IP地址的子網掩碼(如上圖,三級IP地址的子網掩碼),它也是32位,由一串1和跟隨的一串0組成。子網掩碼中的1對應於IP地址中原來二級地址中的16位網路號加上新增加的8位子網號,而子網掩碼中的0對應於現在的8位主機號。 雖然RFC文檔中沒有規定子網掩碼中的一串1必須是連續的,但卻極力推薦在子網掩碼中選用連續的1,以避免發生錯誤
不管有沒有劃分子網,只要把子網掩碼和IP地址進行逐位相 與 運算,就立即得出網路地址來,這樣路由器處理到來的分組時可以採用相同的演算法。
歸納下上述的要點,從網路145.13.0.0外面看,這就是一個普通的B類網路,但進入這個網路後(即到了路由器),就看到了還有許多網路(即劃分了子網後的許多網路),其網路地址為145.13.x.0(這里x可以表示不同的數值),而這些網路的子網掩碼都是24個連1跟上8個連0。總之,在這個網路的內外,看到的網路是不同的
為了更便於查路由表,現在網際網路的標准規定:所有的網路都必須使用子網掩碼,同時在路由器的路由表中也必須有子網掩碼這一欄。如果一個網路不劃分子網,那麼該網路的子網掩碼就使用默認子網掩碼,默認子網掩碼中1的位置和IP地址中的網路號欄位正好相對應。因此,若用默認子網掩碼和某個不劃分子網的IP地址逐位相與,就應當能夠得出該IP地址的網路地址來,這樣做可以不用查找該地址的類別位就能知道這是哪一類的IP地址 (書上原話 沒懂 !!!!)
P137有一個表格寫B類子網劃分選擇(使用固定長度子網)
有一個例題請見教材P139
劃分子網在一定程度上緩解了網際網路在發展中遇到的困難。然而在 1992 年網際網路仍然面臨三個必須盡早解決的問題,這就是:
無分類的兩級編址的記法是:
CIDR 還使用 斜線記法 (slash notation),它又稱為 CIDR記法 ,即在 IP 地址後面加上一個斜線「/」,然後寫上網路前綴所佔的位數(這個數值對應於三級編址中子網掩碼中 1 的個數)。CIDR 把網路前綴都相同的連續的 IP 地址組成 「CIDR 地址塊」 。
為了更方便的進行路由選擇,CIDR使用32位的地址掩碼,地址掩碼由一串1和一串0組成,而1的個數就是網路前綴的長度。例如/20地址塊的地址掩碼是:11111111 11111111 11110000 00000000 20個連續的1,斜線記法中,斜線後面的數字就是地址掩碼中1的個數
這個 ISP 共有 64 個 C 類網路。如果不採用 CIDR 技術,則在與該 ISP 的路由器交換路由信息的每一個路由器的路由表中,就需要有 64 個項目。但採用地址聚合後,只需用路由聚合後的 1 個項目 206.0.64.0/18 就能找到該 ISP。
// 這里還沒太懂.... 就是共有多少個幾類網路那裡
報文格式
ICMP差錯報告報文的數據欄位的內容