1. 程式人生 > >Internet控制報文協議(ICMP)之綜述

Internet控制報文協議(ICMP)之綜述

一、特點:

 (1)ICMP本身是網路層的一個協議,但是它的報文不是直接傳送給資料鏈路層,而是要封裝成IP資料報,然後在傳送給資料鏈路層。

 (2)從協議體系上看,ICMP的差錯和控制資訊傳輸只是要解決IP協議可能出現的不可靠問題,它不具有普遍意義上的傳輸機制,它也不是傳輸層賴以存在的基礎,它不能                        獨立於IP協議而單獨存在,因此把它歸於IP協議的一個部分,而歸於IP協議體系。

 (3)ICMP協議的設計初衷是用於IP協議在執行過程中的出錯報告,嚴格的說是路由器向源主機報告傳輸差錯的原因。

 (4)ICMP不能糾正差錯,只能報告差錯

二、ICMP資料報格式

                                             |<---------------------------------------   資料域----------------------------------->|

IP報頭(20B)                        type字(1B) code欄位(1B) checksum欄位(2B) ICMP資料及整個IP資料段                                            

(1)ICMP資訊必須全部封裝在IP資料報的資料域中,長度必須限制在576B以內。
(2)根據IP資料報報頭的規定,報頭的協議欄位值為1
,所以接收端的路由器及主機根據報頭的協議欄位值為1,來判斷改該IP資料報攜帶ICMP資訊,為ICMP資料報。

三、ICMP報文分類

可分為分兩大類:差錯報告報文、查詢報文

差錯報告報文分5類:  

1、目的站不可到達

2、源站抑制

3、超時

4、引數問題

5、改變路由

查詢報文分四類:      

1、回送請求與回答

2、 時間戳請求與回答

3、地址掩碼請求與回答

4、 路由器詢問和通告