ICMP協(xié)議

概述:

當(dāng)網(wǎng)絡(luò)或者路由出現(xiàn)問題時,IP層可以處理的問題:

1. ? ? 因路由配置導(dǎo)致的路由回路,可通過設(shè)置TTL(Time To Live,目前一般該數(shù)值設(shè)置為跳轉(zhuǎn)的路由個數(shù))防止循環(huán)路由

2. ? ? P數(shù)據(jù)報分片重組時,信宿機(jī)會為數(shù)據(jù)報設(shè)置緩沖區(qū),但是當(dāng)某個分片丟失時,該存儲區(qū)不會被清楚。因此設(shè)置超時機(jī)制,防止因上述情況導(dǎo)致的存儲區(qū)浪費(fèi)

3. ? ? 當(dāng)信宿機(jī)不可達(dá)或者關(guān)機(jī),或者信宿機(jī)無法識別IP首部協(xié)議字段時,數(shù)據(jù)報被丟失

除去上述情況,仍有其他網(wǎng)絡(luò)或路由問題需要解決。而這些問題正是I CMP(Internet Control Message Protocol)需要解決的。

1. ? ? 擁塞控制:路由器處理能力有限,在短時間收到大量IP數(shù)據(jù)報時,路由器需要通知源端減緩IP數(shù)據(jù)報發(fā)送;

2. ? ? 最優(yōu)路由路徑選擇

3. ? ? 判斷信宿機(jī)是否可達(dá)

4. ? ? 同步路由器時鐘


報文格式

由首部與數(shù)據(jù)組成,首部包含類型。

報文封裝:

報文類型:


其中需要測試網(wǎng)絡(luò)聯(lián)通性時,可以使用回送請求和回送應(yīng)答報文


ICMP應(yīng)用

ping程序

ping程序即是基于ICMP回送請求和回送應(yīng)答,來檢測目的站是否可達(dá)。

ping還可以制定TTL,超時時間等參數(shù)


tracert程序

目前是同的traceroute,利用了IP首部的TTL字段以及ICMP超時報文。將IP數(shù)據(jù)報首部的TTL字段設(shè)置為1時,該數(shù)據(jù)報經(jīng)過第一個路由器后TTL字段遞減為0,這個路由器會返回一個ICMP超時報文。這個報文封裝在IP數(shù)據(jù)報中,源端可以提取獲得源IP地址。只有,TTL以1為單位遞增,最終獲取路由中所有IP地址。

tracert針對每一跳都偵測三次

當(dāng)然這種方案,在目標(biāo)屏蔽了ICMP回送請求報文時,將無法收到ICMP回送應(yīng)答報文。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容