1. 程式人生 > >因特網的互聯層協議

因特網的互聯層協議

網際網路協議IP是互聯層最重要的協議,它將多個網路連成一個網際網路,可以把高層的資料以多個數據報的形式通過網際網路分發出去。互聯層的功能主要由IP來提供,主要用於負責IP定址,路由選擇和IP資料包的分割和組裝。
IP的基本任務是通過網際網路傳送資料報,各個IP資料報之間是相互獨立的。主機上的IP層向傳輸層提供服務,IP從源傳輸實體取得資料,通過它傳給目的主機的IP層。IP不保證服務的可靠性,在主機資源不足的情況下,它可能丟棄某些資料,同時IP也不檢查被丟棄的報文。
在傳送時,高層協議將資料傳給IP,IP再將資料封裝為網際網路資料報,並交給主機——網路層協議通過區域網傳送。若目的主機直接連在本網中,IP可直接通過網路將資料報傳給目的主機,若目的主機在遠地網路中,則IP路由器傳送資料報,而路由器則依次通過下一網路將資料報傳送到目的主機或再下一個路由器。也即一個IP資料報是通過網際網路絡,從一個IP模組傳到另一個IP模組,直到終點為止。
IP協議提供了不可靠,無連線的資料報傳輸機制,TCP/IP是為了適應物理網路的多樣性而設計的,而這種適應性主要是通過IP層來體現的。由於物理網路的多樣性,各種物理網路的資料幀格式,地址格式之間差異很大。為了將這些底層的細節遮蔽起來,使得采用不同物理網路的網路之間進行通訊,TCP/IP分別採用了IP資料報和IP地址作為物理資料幀和實體地址的統一形式。這樣IP層向上層提供統一的IP資料報和統一的IP地址,使得各種物理幀 及實體地址的差異性對上層協議不復存在。

2.ARP協議(地址轉換協議)
在TCP/IP網路環境下,每個主機都分配了一個32位的IP地址,這種網際網路地址是在網際範圍標識主機的以一種邏輯地址。為了讓報文在物理網上傳送,必須知道彼此的實體地址。這樣就存在把網際網路地址變換為實體地址的地址轉換問題。以乙太網環境為例,為了正確地向目的站傳送報文,必須把目的站的32位IP地址轉換成48位乙太網目的地址DA。這就需要在互聯層有一組服務將IP地址轉換為相應物理網路地址,這組協議即是ARP。
在進行報文傳送時,如果源互聯層所給的報文只有IP地址,而沒有對應的乙太網地址,則互聯層廣播ARP請求以獲取目的站資訊,而目的站必須回答該ARP請求。這樣源站點可以收到乙太網48位地址,並將地址放入相應的快取記憶體,下一次源站點對同一目的站點的地址轉換可直接引用快取記憶體中的地址內容。地址轉換協議ARP讓主機可以找出同一物理網路中任一個物理主機的實體地址,只需給出目的主機的IP地址即可。這樣,網路的物理編址可以對網路層服務透明。
在網際網路環境下,為了將報文送到另一個網路的主機,資料報先定向到傳送方所在網路的IP路由器。因此,傳送主機首先必須確定路由器的實體地址,然後一次將資料報發往接受端。除基本ARP機制外,有時還須在路由器上設定代理ARP,其目的是由IP路由器代替目的站對傳送方ARP請求做出響應。

4.反向地址轉換協議RARP
反向地址轉換協議用於一種特殊情況,如果站點初始化以後,只有自己的物理網路地址,而沒有IP地址,則它可以通過RARP協議,發出廣播請求,徵求自己的IP地址,而RARP伺服器則負責回答,這樣,無IP地址的站點可以通過RARP協議取得自己的IP地址,這個地址在下一次系統重新開始以前都有效,不用連續廣播請求。RARP廣泛用於獲取無盤工作站的IP地址。

5.ICMP協議
網際網路控制報文協議ICMP,從IP網際網路協議的功能,可以知道IP提供的是一種不可靠的無連線報文分組傳送服務。若路由器或主機故障讓網路阻塞,就需要通知傳送主機採取響應措施。
為了使網際網路能報告差錯,或提供有關意外情況的資訊,在IP層加入了一類特殊用途的報文機制,即網際網路控制報文協議ICMP。
分組接收方利用ICMP來通知IP模組傳送方某些方面所需的修改。ICMP通常是由發現別的站發來的報文有問題的站產生的,例如可由目的主機或中繼路由器來發現問題併產生有關的ICMP。如果一個分組不能傳送,ICMP便可以被用來警告分組源,說明有網路。主機 或埠不可達,ICMP也可以用來報告網路阻塞。ICMP是IP正式協議的一部分,ICMP資料報通過IP送出,因此它在功能上屬於網路第三層,但實際上它是像第四層協議一樣被編碼的。