1. 程式人生 > >計算機網路原理之網路互連

計算機網路原理之網路互連

網路互連的裝置

將網路互相連線起來要使用一些中間裝置(或中間系統),ISO的術語稱之為中繼(relay)系統。根據中繼系統所在的層次,可以有以下五種中繼系統:

(1)物理層中繼系統,即轉發器(repeater),集線器(HUB)。

(2)資料鏈路層中繼系統,即網橋 (bridge),乙太網交換機。

(3)網路層中繼系統,即路由器(router)。

(4)網橋和路由器的混合物橋路器(brouter)。橋路器是一種兼有網橋和路由器的功能的產品。例如:路由交換機。

(5)在網路層以上的中繼系統,即稱為閘道器(gateway)。閘道器也有人稱為網間聯結器、信關或聯網機。用閘道器連線兩個不相容的系統就要在高層進行協議的轉換。例如:代理伺服器,X.400閘道器。

各個網路之間的通訊

如圖:分組轉發(將資訊分成幾個包裹)根據的是IP地址的網路號。而每個網路都有一個網路號。
在這裡插入圖片描述

IP地址分類

IP地址的五種型別:net-id—網路號;host-id——主機號
A類地址,一個位元組作為網路號
B類地址,二個位元組作為網路號
C類地址,三個位元組作為網路號

轉為10進位制

A類地址的左邊第一位元組值: 1--127,例如 10.237.43.8

B類地址的左邊第一位元組值: 128-191,例如 128.37.143.38

C類地址的左邊第一位元組值: 192-223,例如 195.71.43.85

ps:ipv4採用的是32位,而ipv6是128位
在這裡插入圖片描述
附:


在這裡插入圖片描述

注意

給節點分配IP地址時:net-id所在位元組(A類地址的左邊第一位元組,B類地址的左邊2位元組,C類地址的左邊3位元組)全0或全1都不可用。host-id全0,全1都不可用。

於是可得:
A之所以減去二,一個是全0,一個是127,因為127不能真正釋出到網路上,只能本地機上做環回測試。
而B,C不用減去,由上圖可得,它不可能全為0或一
在這裡插入圖片描述

IP地址具有的特點

(1) 當一個主機同時連線到兩個網路上時,該主機就必須同時具有兩個相應的IP地址,其網路號net-id是不同的。這種主機稱為多介面主機(multihomed host)。

(2) 轉發器或網橋連線起來的若干個區域網仍為一個網路,因此這些區域網都具有同樣的網路號net-id。

(3) 在IP地址中,所有分配到網路號net-id的網路(不管是範圍很小的區域網,還是覆蓋很大地理範圍的x.25廣域網,FR廣域網)都是平等的,見下頁圖,每個網路內的主機及路由器介面都在同一個網段內,具有相同的net-id。

(4) IP地址有時也可用來指明單個網路的地址--主機號欄位置為全零即可,類似於萬用字元,例如,
10.0.0.0,
175.89.0.0
201.123.56.0。

另外:
在這裡插入圖片描述

由上圖可得該ip地址為一個C類地址
(1)與某個區域網相連線的計算機或路由器的IP地址中的網路號都必須是一樣的。

(2)用網橋(它只在鏈路層工作)互連的區域網仍然是一個區域網。

(3)路由器總是具有兩個或兩個以上的IP地址。

(4)當兩個路由器直接相連時,這一段連線就構成了一種只包含一段線路的特殊“網路”(如圖中的Nl,N2和N3)。之所以是“網路”是因為它有IP地址。

IP地址與硬體地址

硬體地址:指實體地址或MAC地址,MAC子層的地址。
IP地址:網路層地址。
在這裡插入圖片描述

在這裡插入圖片描述

從網路層到資料鏈路層
在這裡插入圖片描述

地址解析協議ARP和逆地址解析協議RARP

域名系統DNS(Domain Name System)地址的轉換:
域名,例如www.intel.com,host-b
域名伺服器,放有許多“主機名字–>IP地址”的對映表。

如圖,設名字為host-a的主機要與名字為host-b的主機通訊,通過DNS,從目的主機名字host-b得出其IP地址為209.0.0.6。應用層資料包的地址一般是域名,網路層只能放IP地址而不能放域名。

在這裡插入圖片描述

地址解析協議ARP過程:

IP地址—>硬體地址(MAC地址)的轉換是由地址解析協議ARP(Address Resolution Protocol)來完成。
(1)每一個主機都有一個ARP快取記憶體(ARP cache),當主機A欲向本區域網上的主機B傳送一個IP資料報時,先在其ARP快取記憶體中檢視有無主機B的IP地址。如有,就將對應硬體地址寫入MAC幀。

(2)也有可能ARP cache(快取表)中查不到主機B的IP地址。這可能是主機B才入網,也可能是主機A剛剛加電,其快取記憶體還是空的。在這種情況下,主機A就自動執行ARP:

①ARP程序在本區域網上廣播發送一個ARP請求分組,上面有主機B的IP地址。

②在本區域網上的所有主機上執行的ARP程序都收到此ARP請求分組。

③主機B在ARP請求分組中見到自己的IP地址,就向主機A傳送一個ARP響應分組,上面寫入自己的硬體地址。

④主機A收到主機B的ARP響應分組後,就在ARP快取記憶體中寫入主機B的IP地址到硬體地址的對映。

如圖:A->B

在這裡插入圖片描述
B->A
在這裡插入圖片描述

逆地址解析協議RARP

MAC地址—>IP地址。
RARP使只知道自己硬體地址的主機能夠知道其IP地址,這種主機往往是無盤工作站。這種無盤工作站一般只要
執行其ROM中的檔案傳送程式碼,就可用下行裝載方法從區域網上其他主機得到所需的作業系統和TCP/IP通訊軟
件,但這些軟體中並沒有IP地址。無盤工作站要執行ROM中的RARP來獲得其IP地址。RARP的工作過程大致如下。

(1)為了使RARP能工作,在區域網上至少有一個主機要充當RARP伺服器,無盤工作站先向區域網發出RARP請求分組(在格式上
與ARP請求分組相似),並在此分組中給出自己的硬體地址。

(2) RARP伺服器有一個事先做好的從無盤工作站的硬體地址到IP地址的對映表,當收到RARP請求分組後,RARP伺服器就從這
對映表查出該無盤工作站的IP地址。然後寫入RARP響應分組,發回給無盤工作站。

IP資料報格式

在這裡插入圖片描述

幾個重要名詞

首部長度(IHL), 以4位元組為單位。

服務型別

總長度(Total Length): 總長度指首部和資料之和的長度,單位為位元組。

標識(Identification),一般會給定

標誌(flag) 

MF(More Fragment),MF=1即表示後面“還有分片”的資料報

DF(Don‘t Fragment),意思是“不能分片”

片偏移(Fragment Offset):以8個位元組為偏移單位。

壽命(TTL):壽命欄位記為TTL(Time To Live),最大255。

協議:UDP(17),TCP(6),ICMP(1),GGP(3),EGP(8),IGP(9),OSPF(89),以及ISO的第四類運輸協議TP4(29)。

首部檢驗和

例子
在這裡插入圖片描述

IP層轉發分組的流程

主機A,IP地址是20.2.2.2,位於網2內,其TCP/IP配置的預設閘道器是20.0.0.9(即路由器R2)。

主機B,IP地址是40.4.4.4,位於網4內。

A向B傳送一個IP資料報X,資料報X的目的地址是40.4.4.4,不在A所在的網2內,於是發給預設閘道器R2。資料報X的目的地址40.4.4.4不變。

路由器R2查路由表,然後轉發給路由器R3。資料報X的目的地址40.4.4.4不變。

路由器R3查路由表,直接傳送給主機B。

在這裡插入圖片描述

路由器的IP層所執行的分組轉發演算法如下:

(1) 從資料報的首部提取目的站的IP地址D,得出目的網路地址為N。

(2) 若N就是與此路由器直接相連的某個網路地址,則直接交付;否則就是間接交付,執行(3)。

(3) 若路由表中有目的地址為D的特定主機路由,則傳送給相應的下一跳路由器;否則,執行(4)。

(4) 若路由表中有到達網路N的路由,則將資料報傳送給路由表中所指明的下一跳路由器;否則,執行(5)。

(5) 若路由表中有一個預設路由,則將資料報傳送給路由表中所指明的預設路由器;否則,執行(6)。

(6) 報告轉發分組出錯(通過ICMP報文報錯)。

例如:

在這裡插入圖片描述
R8的資料報
其中:目的主機網路0.0.0.0為預設路由,找不到該轉發的路由器時預設傳送給該行指定的路由器。
在這裡插入圖片描述
下一篇將帶來子網的劃分