監(jiān)理公司管理系統(tǒng) | 工程企業(yè)管理系統(tǒng) | OA系統(tǒng) | ERP系統(tǒng) | 造價(jià)咨詢管理系統(tǒng) | 工程設(shè)計(jì)管理系統(tǒng) | 甲方項(xiàng)目管理系統(tǒng) | 簽約案例 | 客戶案例 | 在線試用
X 關(guān)閉

網(wǎng)絡(luò)協(xié)議ICMP、Ping、Traceroute的差異何在?

申請(qǐng)免費(fèi)試用、咨詢電話:400-8352-114

在計(jì)算機(jī)網(wǎng)絡(luò)中,兩個(gè)相互通信的實(shí)體處在不同的地理位置,其上的兩個(gè)進(jìn)程相互通信,需要通過交換信息來協(xié)調(diào)它們的動(dòng)作達(dá)到同步,而信息的交換必須按照預(yù)先共同約定好的規(guī)則進(jìn)行。常見的網(wǎng)絡(luò)通訊協(xié)議包括ICMP、Ping、Traceroute。他們的差異何在呢?

ICMP協(xié)議

ICMP經(jīng)常被認(rèn)為是IP層的一個(gè)組成部分,它是網(wǎng)絡(luò)層的一個(gè)協(xié)議,它傳遞差錯(cuò)報(bào)文以及其他需要注意的信息,ICMP報(bào)文通常被IP層或更高層(TCP、UDP等)使用,它是在IP數(shù)據(jù)報(bào)內(nèi)傳輸?shù)摹?/p>

ICMP報(bào)文大致分為兩類:查詢報(bào)文和差錯(cuò)報(bào)文。

先來看差錯(cuò)報(bào)文。當(dāng)傳送IP數(shù)據(jù)報(bào)發(fā)生錯(cuò)誤時(shí)(比如主機(jī)不可達(dá)、網(wǎng)絡(luò)不可達(dá)等),ICMP協(xié)議將會(huì)發(fā)送一個(gè)ICMP差錯(cuò)報(bào)文給源主機(jī),好讓主機(jī)做出相應(yīng)的處理,也因此IP層以上的一些協(xié)議有可能做到可靠傳輸。書中給出了ICMP差錯(cuò)報(bào)文中的一些組合(類型和代碼的組合)描述:如網(wǎng)絡(luò)不可達(dá)、網(wǎng)絡(luò)不可達(dá)、協(xié)議不可達(dá)、端口不可達(dá)等。這里說下端口不可達(dá)的意思:UDP的規(guī)則之一是,如果收到一份UDP數(shù)據(jù)報(bào)而目的端口與某個(gè)正在使用的進(jìn)程不相符,那么UDP返回一個(gè)ICMP不可達(dá)報(bào)文,將報(bào)文中的類型和代碼的組合設(shè)定為端口不可達(dá)。Traceroute程序就是利用端口不可達(dá)來產(chǎn)生ICMP差錯(cuò)報(bào)文的。

另外,在大多數(shù)情況下,傳送IP數(shù)據(jù)報(bào)發(fā)生錯(cuò)誤,會(huì)產(chǎn)生一個(gè)ICMP錯(cuò)誤報(bào)文,但下面各種情況都不會(huì)導(dǎo)致產(chǎn)生ICMP差錯(cuò)報(bào)文:

* ICMP差錯(cuò)報(bào)文不會(huì)產(chǎn)生差錯(cuò)報(bào)文(ICMP查詢報(bào)文可能會(huì)產(chǎn)生ICMP差錯(cuò)報(bào)文);

* 目的地址是廣播地址和多播地址的IP數(shù)據(jù)報(bào);

* 作為鏈路層廣播的數(shù)據(jù)報(bào);

* 不是IP分片的第一片

* 源地址不是單個(gè)主機(jī)的數(shù)據(jù)報(bào)。

這些規(guī)則是為了防止過去允許ICMP差錯(cuò)報(bào)文對(duì)廣播分組影響所帶來的廣播風(fēng)暴。

再來看ICMP查詢報(bào)文,查詢報(bào)文主要用途有:

* 子網(wǎng)掩碼查詢;

* 時(shí)間戳查詢;

* ping查詢。

ping程序

ping是ICMP的一個(gè)很著名的應(yīng)用。ping程序時(shí)對(duì)兩個(gè)TCP/IP系統(tǒng)連通性進(jìn)行測(cè)試的基本工具,它只利用ICMP回顯請(qǐng)求和回顯應(yīng)答報(bào)文,而不用經(jīng)過傳輸層,ping服務(wù)器一般在內(nèi)核中試下ICMP的功能。當(dāng)某一個(gè)網(wǎng)站訪問不了時(shí),我們就可以ping一下這個(gè)網(wǎng)站,看下連通情況。比如下圖:

 

 

這里先ping到google的服務(wù)器,我們可以看到連通性不是很好,丟包率為50%,而我們又ping了下Github的服務(wù)器,連通性比較好,丟包率為0%。

Traceroute程序

Traceroute是ICMP協(xié)議的另一個(gè)重要應(yīng)用,主要用來偵測(cè)源主機(jī)到目的主機(jī)之間所經(jīng)過的路由的情況。Traceroute使用ICMP報(bào)文和IP首部中的TTL字段,其原理很簡(jiǎn)單,開始時(shí)發(fā)送一個(gè)TTL字段為1的UDP數(shù)據(jù)報(bào),而后每次收到ICMP超時(shí)報(bào)文后,再發(fā)送一個(gè)TTL字段加1的UDP數(shù)據(jù)報(bào),以確定路徑中的每個(gè)路由器,而每個(gè)路由器在丟棄UDP數(shù)據(jù)報(bào)時(shí)都會(huì)返回一個(gè)ICMP超時(shí)報(bào)文,最終到達(dá)目的主機(jī)后,由于ICMP選擇了一個(gè)不可能的值作為UDP端口(大于30000)。這樣目的主機(jī)就會(huì)發(fā)送一個(gè)端口不可達(dá)的ICMP差錯(cuò)報(bào)文。

【推薦閱讀】

上網(wǎng)行為運(yùn)維管理專區(qū)

上網(wǎng)行為運(yùn)維一體化管理的內(nèi)涵如何把握?

上網(wǎng)行為運(yùn)維管理的七大內(nèi)容和四個(gè)技巧

部署全移動(dòng)網(wǎng)絡(luò)環(huán)境 提升企業(yè)移動(dòng)管理價(jià)值

網(wǎng)管軟件專區(qū)

本文來自互聯(lián)網(wǎng),僅供參考
發(fā)布:2007-04-15 09:59    編輯:泛普軟件 · xiaona    [打印此頁]    [關(guān)閉]
相關(guān)文章:
相關(guān)軟件
聯(lián)系方式

成都公司:成都市成華區(qū)建設(shè)南路160號(hào)1層9號(hào)

重慶公司:重慶市江北區(qū)紅旗河溝華創(chuàng)商務(wù)大廈18樓

咨詢:400-8352-114

加微信,免費(fèi)獲取試用系統(tǒng)

QQ在線咨詢