版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、計(jì)算機(jī)網(wǎng)絡(luò) 協(xié)議分析與測試,第五章 ICMP協(xié)議,5.1 因特網(wǎng)控制報(bào)文協(xié)議 5.2 ICMP報(bào)文格式與類型 5.3 ICMP差錯(cuò)報(bào)告 5.4 ICMP控制報(bào)文 5.5 ICMP請求與應(yīng)答報(bào)文對 5.6 ICMP報(bào)文封裝,本章主要內(nèi)容,第一節(jié) 因特網(wǎng)控制報(bào)文協(xié)議概述,5.1 因特網(wǎng)控制報(bào)文協(xié)議(ICMP),ICMP(Internet Control Massage Protocol)設(shè)計(jì)的最初目的主要是用于IP層的差錯(cuò)報(bào)告,由路由器或信宿以一對一的模式向信源報(bào)告?zhèn)鬏斿e(cuò)誤的原因。 隨著網(wǎng)絡(luò)的發(fā)展,檢測和控制功能逐漸被引入到ICMP協(xié)議中,使得ICMP協(xié)議不僅用于傳輸差錯(cuò)報(bào)告,而且大量用于傳輸控制
2、報(bào)文。,系統(tǒng)發(fā)生傳輸錯(cuò)誤時(shí),只向信源機(jī)報(bào)告差錯(cuò): 不向信宿機(jī)發(fā),是因?yàn)槌霈F(xiàn)差錯(cuò)時(shí),信宿機(jī)根本不可達(dá) 不向中間路由器發(fā),是因?yàn)槌霈F(xiàn)差錯(cuò)時(shí),不清楚差錯(cuò)是哪一個(gè)路由器引起的。,IP數(shù)據(jù)報(bào)傳輸系統(tǒng)中,引發(fā)錯(cuò)誤的原因: 通信線路故障 通信設(shè)備故障 路由器中的路由表錯(cuò)誤 網(wǎng)絡(luò)的處理能力不足,IP數(shù)據(jù)報(bào)傳輸中出現(xiàn)的故障,主要表現(xiàn)為: IP數(shù)據(jù)報(bào)不能到達(dá)目的(信宿機(jī)) 數(shù)據(jù)報(bào)傳輸超時(shí) 系統(tǒng)擁塞,一旦發(fā)現(xiàn)錯(cuò)誤,發(fā)現(xiàn)者立即向信源機(jī)發(fā)送ICMP報(bào)文,報(bào)告出錯(cuò)情況,以便信源機(jī)采取措施。 通常信源機(jī)本身不能解決問題,需要依賴經(jīng)驗(yàn)豐富的網(wǎng)絡(luò)管理人員介入,或通過功能強(qiáng)大的網(wǎng)絡(luò)管理工具進(jìn)行分析判斷,逐步加以解決。,所以,隨著
3、網(wǎng)絡(luò)的發(fā)展,檢測和控制功能逐漸被引入到ICMP協(xié)議中,使得ICMP協(xié)議不僅用于傳輸差錯(cuò)報(bào)告,而且大量用于傳輸控制報(bào)文。 檢測和控制功能的引入,改變了ICMP 1對1 方式向信源機(jī)報(bào)告?zhèn)鬏斿e(cuò)誤的工作模式,如請求和應(yīng)答報(bào)文對可疑在任意兩臺設(shè)備之間傳輸,而且還可以一對多方式傳輸(廣播或組播)。,5.1 因特網(wǎng)控制報(bào)文協(xié)議(ICMP),ICMP與IP協(xié)議位于同一個(gè)層次(IP層),但I(xiàn)CMP報(bào)文是封裝在IP數(shù)據(jù)報(bào)的數(shù)據(jù)部分進(jìn)行傳輸?shù)摹?TCP/IP協(xié)議棧中,ICMP協(xié)議位于比IP協(xié)議略高的位置。但I(xiàn)CMP不作為單獨(dú)的獨(dú)立層次,而只是IP層的一部分。 ICMP協(xié)議是IP協(xié)議的補(bǔ)充,用于IP層的差錯(cuò)報(bào)告、擁
4、塞控制、路徑控制以及路由器或主機(jī)信息的獲取。,TCP/IP的可靠性思想是將可靠性問題放在傳輸層解決,以簡化路由設(shè)備的實(shí)現(xiàn)。 利用IP層的ICMP實(shí)現(xiàn)差錯(cuò)報(bào)告是因?yàn)椋?TCP/IP傳輸層可靠性的實(shí)現(xiàn)和ICMP差錯(cuò)控制不矛盾,各自解決的問題不同。 IP層解決信宿不可達(dá)的問題,信宿不可達(dá),則信宿機(jī)無法直接參與控制,端到端無法實(shí)現(xiàn)。 IP層僅涉及與路徑和可達(dá)相關(guān)的差錯(cuò)問題,并不解決數(shù)據(jù)本身的差錯(cuò)問題。 IP層的差錯(cuò)與控制由一個(gè)獨(dú)立的協(xié)議ICMP完成,IP協(xié)議不負(fù)責(zé)完成差錯(cuò)與控制功能。 控制建立在信息了解的基礎(chǔ)上,主動(dòng)+被動(dòng),詢問或者被動(dòng)接收對象報(bào)告信息。,第二節(jié) ICMP報(bào)文格式與類型,5.2 ICM
5、P報(bào)文格式與類型,ICMP報(bào)文由首部和數(shù)據(jù)段組成。 首部為定長的8個(gè)字節(jié),前4個(gè)字節(jié)是通用部分,后4個(gè)字節(jié)隨報(bào)文類型的不同有所差異。 ICMP報(bào)文的一般格式如圖所示。,Type :8bit ICMP報(bào)文類型 Code:8bit 報(bào)文類型的進(jìn)一步信息 CheckSum:16bit ICMP整個(gè)報(bào)文的校驗(yàn)和 其它部分:32bit,大部分差錯(cuò)報(bào)告報(bào)文不使用該字段,置0,參數(shù)錯(cuò)報(bào)告會用到其中的一個(gè)字節(jié)作指針,請求應(yīng)答報(bào)文對利用該4個(gè)字節(jié)匹配請求與應(yīng)答報(bào)文。,數(shù)據(jù)部分: 差錯(cuò)報(bào)告時(shí),攜帶原始出錯(cuò)數(shù)據(jù)的首部和數(shù)據(jù)的前8個(gè)字節(jié),包括了該數(shù)據(jù)報(bào)的關(guān)鍵信息; 請求與應(yīng)答報(bào)文中,攜帶與請求和應(yīng)答相關(guān)的額外信息。,
6、ICMP報(bào)文雖然細(xì)分為很多類,但總的來看可以分為如圖所示的三大類:差錯(cuò)報(bào)告、控制報(bào)文和請求應(yīng)答報(bào)文。,差錯(cuò)報(bào)告:只負(fù)責(zé)報(bào)告,ICMP沒有給出解決問題的方法。,控制報(bào)文:引起信源機(jī)的相應(yīng)處理,源抑制會引發(fā)信源機(jī)的擁塞控制,重定向引發(fā)信源機(jī)進(jìn)行路徑控制。,請求應(yīng)答報(bào)文:成對出現(xiàn),使得請求方可以從路由器或其它主機(jī)獲取信息。,第三節(jié) ICMP差錯(cuò)報(bào)告,5.3 ICMP差錯(cuò)報(bào)告,ICMP差錯(cuò)報(bào)告的數(shù)據(jù)區(qū)包含出錯(cuò)數(shù)據(jù)報(bào)的首部及該數(shù)據(jù)報(bào)的前64位數(shù)據(jù),這些信息有助于信源或管理人員發(fā)現(xiàn)錯(cuò)誤原因(TCP端口信息,報(bào)文段序號、UDP的端口信息,長度、校驗(yàn)和等)。 ICMP差錯(cuò)報(bào)告具有以下特點(diǎn): 1)只報(bào)告差錯(cuò),但
7、不負(fù)責(zé)糾正錯(cuò)誤,糾錯(cuò)工作留給高層協(xié)議去處理。 2)發(fā)現(xiàn)出錯(cuò)的設(shè)備只向信源報(bào)告差錯(cuò)。 3)差錯(cuò)報(bào)告作為一般數(shù)據(jù)傳輸,不享受特別優(yōu)先權(quán)和可靠性。 4)產(chǎn)生ICMP差錯(cuò)報(bào)告,同時(shí)丟棄出錯(cuò)的IP數(shù)據(jù)報(bào)。,形成ICMP差錯(cuò)報(bào)告時(shí)有以下例外: 1)ICMP差錯(cuò)報(bào)文本身不會再產(chǎn)生ICMP差錯(cuò)報(bào)告。 2)分片報(bào)文的非第一個(gè)分片不會產(chǎn)生ICMP差錯(cuò)報(bào)告。 3)組播地址報(bào)文不會產(chǎn)生ICMP差錯(cuò)報(bào)告。 4)特殊地址127.0.0.0和0.0.0.0的報(bào)文不會產(chǎn)生ICMP差錯(cuò)報(bào)告。,ICMP報(bào)文三大類:差錯(cuò)報(bào)告、控制報(bào)文和請求應(yīng)答報(bào)文。,5.3.1 信宿不可達(dá)報(bào)告,當(dāng)路由器無法根據(jù)路由表轉(zhuǎn)發(fā)IP數(shù)據(jù)報(bào)時(shí)或主機(jī)無法向上
8、層協(xié)議和端口提交IP數(shù)據(jù)報(bào)時(shí),將丟棄當(dāng)前的數(shù)據(jù)報(bào),并產(chǎn)生信宿不可達(dá)差錯(cuò)報(bào)告,向信源報(bào)告出錯(cuò)。 信宿不可達(dá)報(bào)文如圖所示。,信宿不可達(dá)報(bào)文可能由路由器產(chǎn)生, 也可能由信宿機(jī)產(chǎn)生。16種可能的原因,信宿不可達(dá)有4個(gè)層次:從大到小 網(wǎng)絡(luò)不可達(dá) 主機(jī)不可達(dá) 協(xié)議不可達(dá) 端口不可達(dá),信宿不可達(dá)有4個(gè)層次:從大到小 網(wǎng)絡(luò)不可達(dá):路由表出錯(cuò)、或目的地址有錯(cuò)。 主機(jī)不可達(dá) 協(xié)議不可達(dá) 端口不可達(dá),信宿不可達(dá)有4個(gè)層次:從大到小 網(wǎng)絡(luò)不可達(dá) 主機(jī)不可達(dá):信宿機(jī)不在運(yùn)行中,或信宿機(jī)不存在,但此時(shí)網(wǎng)絡(luò)可達(dá)。 協(xié)議不可達(dá) 端口不可達(dá),信宿不可達(dá)有4個(gè)層次:從大到小 網(wǎng)絡(luò)不可達(dá) 主機(jī)不可達(dá) 協(xié)議不可達(dá):IP向上TCP/U
9、DP提交時(shí),協(xié)議未在運(yùn)行中,但網(wǎng)絡(luò)和主機(jī)都可達(dá)。 端口不可達(dá),信宿不可達(dá)有4個(gè)層次:從大到小 網(wǎng)絡(luò)不可達(dá) 主機(jī)不可達(dá) 協(xié)議不可達(dá) 端口不可達(dá):信宿機(jī)上與該端口對應(yīng)的應(yīng)用程序?yàn)樵谶\(yùn)行中,但網(wǎng)絡(luò)、主機(jī)、協(xié)議都可達(dá)。,ICMP報(bào)文三大類:差錯(cuò)報(bào)告、控制報(bào)文和請求應(yīng)答報(bào)文。,5.3.2 數(shù)據(jù)報(bào)超時(shí)報(bào)告,在數(shù)據(jù)報(bào)的傳輸過程中,首部的TTL值用于防止數(shù)據(jù)報(bào)因路由表的問題而無休止地在網(wǎng)絡(luò)中傳輸。當(dāng)TTL值為0時(shí),路由器會丟棄當(dāng)前的數(shù)據(jù)報(bào),并產(chǎn)生一個(gè)ICMP數(shù)據(jù)報(bào)超時(shí)報(bào)告。 另外,在信宿進(jìn)行分片重組時(shí)會啟動(dòng)重組定時(shí)器,一旦重組定時(shí)器超時(shí),信宿就會丟棄當(dāng)前正在重組的數(shù)據(jù)報(bào),然后產(chǎn)生一個(gè)ICMP數(shù)據(jù)報(bào)超時(shí)報(bào)告,并
10、向信源發(fā)送該超時(shí)報(bào)告。,數(shù)據(jù)報(bào)超時(shí)報(bào)告的報(bào)文格式與信宿不可達(dá)報(bào)告的報(bào)文格式相同,只是類型和代碼值不同。 數(shù)據(jù)報(bào)超時(shí)報(bào)告的類型和代碼的含義如表所示。類型值11表示是數(shù)據(jù)報(bào)超時(shí)報(bào)文,代碼“0”表示TTL超時(shí),代碼“1”表示分片重組超時(shí)。,ICMP報(bào)文三大類:差錯(cuò)報(bào)告、控制報(bào)文和請求應(yīng)答報(bào)文。,5.3.3 數(shù)據(jù)報(bào)參數(shù)錯(cuò)報(bào)告,數(shù)據(jù)報(bào)參數(shù)錯(cuò)報(bào)告是由數(shù)據(jù)報(bào)首部字段值不明確或空缺而引起的差錯(cuò)報(bào)告。 一旦路由器或信宿機(jī)發(fā)現(xiàn)錯(cuò)誤的數(shù)據(jù)報(bào)首部和錯(cuò)誤的數(shù)據(jù)報(bào)選項(xiàng)參數(shù)時(shí),便拋棄該數(shù)據(jù)報(bào),并向信源發(fā)送差錯(cuò)報(bào)告報(bào)文。 數(shù)據(jù)報(bào)參數(shù)錯(cuò)報(bào)文的格式如圖所示。,類型12表明數(shù)據(jù)報(bào)參數(shù)錯(cuò) 代碼“0”表示數(shù)據(jù)報(bào)首部中的某個(gè)字段的值有錯(cuò)
11、或不明確,這時(shí)ICMP報(bào)文首部的指針指向數(shù)據(jù)報(bào)中有問題的字節(jié); 代碼“1”表示數(shù)據(jù)報(bào)首部中缺少某一選項(xiàng)所必須具有的部分參數(shù),此時(shí)的ICMP報(bào)文沒有指針字段。 表給出了數(shù)據(jù)報(bào)參數(shù)錯(cuò)報(bào)告的類型。 代碼為“0”的參數(shù)錯(cuò)只能報(bào)告一個(gè)出錯(cuò)參數(shù) 代碼為“1”的參數(shù)錯(cuò)只能報(bào)告缺少參數(shù),不能說明缺少哪個(gè)參數(shù)。,第四節(jié) ICMP控制報(bào)文,5.4 ICMP控制報(bào)文,ICMP控制報(bào)文包括源抑制報(bào)文和重定向報(bào)文 源抑制報(bào)文用于擁塞控制 重定向報(bào)文用于路徑控制 下表給出了這兩類報(bào)文的類型和作用描述。,ICMP報(bào)文三大類:差錯(cuò)報(bào)告、控制報(bào)文和請求應(yīng)答報(bào)文。,5.4.1 源抑制報(bào)文,IP協(xié)議采用的是無連接數(shù)據(jù)報(bào)方式進(jìn)行傳輸
12、 發(fā)送方事先并不了解中間的路由器和信宿的處理能力和緩沖區(qū)大小 在數(shù)據(jù)報(bào)傳輸過程中沒有采用任何流量控制機(jī)制 當(dāng)大量的數(shù)據(jù)報(bào)進(jìn)入路由器或信宿時(shí),會造成緩沖區(qū)溢出,即出現(xiàn)擁塞(Congestion)。 擁塞是缺乏流控引起的,本質(zhì)上看是因?yàn)榫彌_區(qū)不足,但緩沖有限是客觀存在,因此流控是避免擁塞的有效方法,IP協(xié)議缺乏流控機(jī)制,一旦擁塞,必須要有解決措施。,源抑制報(bào)文的格式如圖所示。,ICMP利用源抑制的方法來進(jìn)行擁塞控制。通過源抑制來減緩信源發(fā)出數(shù)據(jù)報(bào)的速率。 ICMP擁塞控制實(shí)際上是擁塞發(fā)生后的事后控制。,源抑制包括三個(gè)階段:發(fā)現(xiàn)擁塞階段、解決擁塞階段和恢復(fù)階段。 在發(fā)現(xiàn)擁塞階段,路由器對緩沖區(qū)進(jìn)行監(jiān)
13、測,一旦發(fā)現(xiàn)擁塞,立即向相應(yīng)的信源發(fā)送ICMP源抑制報(bào)文。 通常是緩沖區(qū)滿,丟棄數(shù)據(jù)報(bào),同時(shí)形成源抑制報(bào)文,目的地是當(dāng)前被丟棄數(shù)據(jù)報(bào)的信源機(jī)。 每丟棄一個(gè)數(shù)據(jù)報(bào),都要發(fā)一個(gè)源抑制報(bào)文。 該信源收到源抑制報(bào)文后,便知道擁塞已經(jīng)發(fā)生,而且所發(fā)送的數(shù)據(jù)報(bào)已經(jīng)丟掉。,源抑制包括三個(gè)階段:發(fā)現(xiàn)擁塞階段、解決擁塞階段和恢復(fù)階段。 在解決擁塞階段,信源根據(jù)收到的源抑制報(bào)文中所帶的原數(shù)據(jù)報(bào)的首部信息決定對去往某一特定信宿的信息流進(jìn)行抑制。 通常信源在收到源抑制報(bào)文后,按一定的規(guī)則降低發(fā)往某信宿的數(shù)據(jù)報(bào)傳輸率。,源抑制包括三個(gè)階段:發(fā)現(xiàn)擁塞階段、解決擁塞階段和恢復(fù)階段。 擁塞解除后,信源逐漸恢復(fù)數(shù)據(jù)報(bào)傳輸速率。
14、 擁塞解除后,TCP/IP沒有報(bào)告擁塞解除的機(jī)制,信源機(jī)如何判斷? 在規(guī)定時(shí)間段內(nèi)沒有收到關(guān)于某一信宿機(jī)的源抑制報(bào)文,則認(rèn)為去往該機(jī)器的擁塞已經(jīng)解決。 數(shù)據(jù)報(bào)傳輸速率,逐漸恢復(fù)。,在擁塞控制中以下幾點(diǎn)值得關(guān)注: 1)雖然對于每個(gè)因擁塞而丟棄的數(shù)據(jù)報(bào)都產(chǎn)生ICMP源抑制報(bào)文,但信源只按照自己的時(shí)間段進(jìn)行響應(yīng)。 2)擁塞的解除由信源依據(jù)是否有進(jìn)一步的源抑制報(bào)文到達(dá)來進(jìn)行判斷。 3)擁塞可能是由多個(gè)源共同行為的結(jié)果,由于各個(gè)信源的發(fā)送速率相差較大,源抑制的效果未必很好。 4)源抑制報(bào)文本身耗網(wǎng)絡(luò)帶寬,一般認(rèn)為路由器不應(yīng)該發(fā)。,ICMP報(bào)文三大類:差錯(cuò)報(bào)告、控制報(bào)文和請求應(yīng)答報(bào)文。,5.4.2 重定向
15、報(bào)文,因特網(wǎng)上的路由器和主機(jī)中都存有一個(gè)路由表,路由表決定了去往目的地的下一跳路由器的地址。 路由器上的路由表能夠及時(shí)地反映網(wǎng)絡(luò)結(jié)構(gòu)的變化,這一特點(diǎn)由路由器之間定期交換路由信息加以保證。 主機(jī)因?yàn)椴荒鼙WC全天開機(jī),所以主機(jī)中的路由表不能及時(shí)反映網(wǎng)絡(luò)結(jié)構(gòu)的變化情況。另外,由于因特網(wǎng)上的主機(jī)數(shù)量遠(yuǎn)大于路由器的數(shù)量,主機(jī)如果參與路由信息的交換,勢必帶來大量的通信開銷。因此主機(jī)中的路由表不通過路由協(xié)議進(jìn)行更新。 但主機(jī)所在的網(wǎng)絡(luò)可能和多個(gè)路由器相連,主機(jī)在發(fā)送信息時(shí)也要根據(jù)其路由表來選擇下一跳路由器,為了解決主機(jī)路由表的刷新問題,ICMP提供了重定向機(jī)制。,主機(jī)路由表所給出的下一跳路由器可能并非去往信
16、宿的最佳下一跳路由器,當(dāng)主機(jī)的下一跳路由器收到數(shù)據(jù)報(bào)后,該路由器根據(jù)它的路由表判斷本路由器是否是去往信宿的最佳選擇,如果不是,該路由器仍然會向信宿網(wǎng)絡(luò)轉(zhuǎn)發(fā)該數(shù)據(jù)報(bào),但在轉(zhuǎn)發(fā)的同時(shí)會產(chǎn)生一個(gè)ICMP重定向報(bào)文,通知信源修改它的路由表,重定向報(bào)文中將給出信源最佳下一跳路由器的IP地址。 主機(jī)A根據(jù)重定向報(bào)文修改路由表的例子。,ICMP重定向報(bào)文的格式如圖所示。 代碼從0到3分別代表不同的重定向方式。 主機(jī)開機(jī)后在ICMP重定向機(jī)制的作用下,經(jīng)過不斷積累逐漸充實(shí)和完善,使其成為動(dòng)態(tài)且優(yōu)化的路由表。,值得注意的是: 1)ICMP產(chǎn)生重定向報(bào)文的時(shí)候并不丟棄原數(shù)據(jù)報(bào)。 2)ICMP重定向報(bào)文由位于同一網(wǎng)
17、絡(luò)的路由器發(fā)送給主機(jī),完成對主機(jī)的路由表的刷新。 3)被刷新的路由表項(xiàng)與重定向報(bào)文數(shù)據(jù)部分指示的IP數(shù)據(jù)報(bào)首部中的信宿地址相關(guān)。內(nèi)容為重定向報(bào)文中目標(biāo)路由器的IP地址。,第五節(jié) ICMP請求與應(yīng)答報(bào)文對,5.5 ICMP請求與應(yīng)答報(bào)文對,ICMP請求與應(yīng)答報(bào)文對的出現(xiàn)使得因特網(wǎng)上的任何主機(jī)或路由器可以向其他主機(jī)或路由器發(fā)送請求并獲得應(yīng)答。突破了只向信源機(jī)反饋信息的模式。 通過ICMP請求與應(yīng)答報(bào)文對,網(wǎng)絡(luò)管理人員、用戶或應(yīng)用程序可以對網(wǎng)絡(luò)進(jìn)行檢測,了解: 設(shè)備的可達(dá)性 地址掩碼的設(shè)置 時(shí)鐘的同步等情況 目的是利用這些有用的信息,對網(wǎng)絡(luò)進(jìn)行故障診斷和控制。,ICMP請求與應(yīng)答報(bào)文對如表所示。其中
18、的信息請求與應(yīng)答報(bào)文已經(jīng)不再使用。,ICMP報(bào)文三大類:差錯(cuò)報(bào)告、控制報(bào)文和請求應(yīng)答報(bào)文。,5.5.1 回應(yīng)請求與應(yīng)答報(bào)文,回應(yīng)請求與應(yīng)答報(bào)文的目的是對網(wǎng)絡(luò)進(jìn)行診斷和測試。 請求方(路由器、主機(jī))向某信宿機(jī)(主機(jī)或路由器)發(fā)送一個(gè)回應(yīng)請求,請求的數(shù)據(jù)區(qū)帶有發(fā)送方給定的數(shù)據(jù)。 信宿機(jī)收到請求后,根據(jù)請求形成回應(yīng)應(yīng)答,數(shù)據(jù)區(qū)包含請求中所帶的數(shù)據(jù)。 信源機(jī)根據(jù)應(yīng)答報(bào)文中的數(shù)據(jù)就可以確定兩個(gè)設(shè)備間是否可以正常通信。,5.5.1 回應(yīng)請求與應(yīng)答報(bào)文,回應(yīng)請求與應(yīng)答不僅可以被用來測試主機(jī)或路由器的可達(dá)性,還可以測試IP協(xié)議的工作情況。 如果請求方能夠成功收到對請求的應(yīng)答,那么不但說明信宿可達(dá),而且說明信源
19、機(jī)與信宿機(jī)的ICMP軟件和IP軟件工作正常,同時(shí)也說明請求與應(yīng)答經(jīng)過的中間路由器能夠正常進(jìn)行路由。,ICMP回應(yīng)請求與應(yīng)答報(bào)文的格式如圖所示。 類型“8”表明是回應(yīng)請求報(bào)文 類型“0”表明是回應(yīng)應(yīng)答報(bào)文 協(xié)議未對標(biāo)識符和序列號字段進(jìn)行正式定義,通常將標(biāo)識符和序列號用于匹配請求與應(yīng)答,標(biāo)識符一般為發(fā)起請求進(jìn)程的進(jìn)程ID?;貞?yīng)請求與應(yīng)答報(bào)文的標(biāo)識符和序列號一致。 Ping使用的就是ICMP回應(yīng)請求與應(yīng)答報(bào)文,測試可達(dá)性。,ICMP報(bào)文三大類:差錯(cuò)報(bào)告、控制報(bào)文和請求應(yīng)答報(bào)文。,5.5.2 時(shí)間戳請求與應(yīng)答報(bào)文,因特網(wǎng)中的各個(gè)主機(jī)和路由器都是獨(dú)立運(yùn)行的,因此在時(shí)鐘上存在著較大的差異,而一些分布式應(yīng)用
20、系統(tǒng)要求各個(gè)設(shè)備的時(shí)鐘是同步的,ICMP時(shí)間戳請求與應(yīng)答報(bào)文就是用于設(shè)備間進(jìn)行時(shí)鐘同步的報(bào)文對。 用時(shí)間戳請求與應(yīng)答報(bào)文進(jìn)行時(shí)鐘同步的基本思路是請求方主機(jī)通過獲取另一主機(jī)的時(shí)間戳信息,將該信息和請求方主機(jī)的時(shí)間戳信息進(jìn)行比較后,估算兩者的時(shí)鐘差異。,請求/應(yīng)答格式如圖。類型13:請求報(bào)文,類型14:應(yīng)答報(bào)文。 初始時(shí)間戳字段用于指示請求方發(fā)出請求的時(shí)間 接收時(shí)間戳字段用于指示應(yīng)答方主機(jī)收到請求的時(shí)間 發(fā)送時(shí)間戳字段用于指示應(yīng)答方主機(jī)發(fā)送應(yīng)答的時(shí)間 三個(gè)時(shí)間戳字段各為32比特長,以毫秒為單位從世界時(shí)間午夜0點(diǎn)起計(jì)時(shí)。時(shí)間戳的計(jì)數(shù)值不能超過86400000(24小時(shí))。 請求報(bào)文:填初始時(shí)間戳,接
21、收時(shí)間戳和發(fā)送時(shí)間戳為0。 應(yīng)答報(bào)文:初始時(shí)間戳直接從請求報(bào)文中復(fù)制,接收時(shí)間戳和發(fā)送時(shí)間戳由應(yīng)答方主機(jī)根據(jù)自己接收和發(fā)送時(shí)的時(shí)鐘填寫。,為了估算請求方與應(yīng)答方之間的時(shí)鐘差異,首先要計(jì)算出時(shí)間戳請求和應(yīng)答的往返延遲,然后據(jù)此計(jì)算出單程傳輸延遲,最后由兩設(shè)備的時(shí)間戳和單程傳輸延遲計(jì)算出兩臺設(shè)備之間的時(shí)間差,從而實(shí)現(xiàn)時(shí)鐘的同步。 往返延遲時(shí)間可以用下式計(jì)算: 往返時(shí)間t當(dāng)前t初始(t發(fā)送t接收) t接收t初始t當(dāng)前t發(fā)送 假設(shè)傳輸請求的時(shí)延和傳輸應(yīng)答的時(shí)延相同,那么單程時(shí)延就等于往返時(shí)間的一半。,時(shí)鐘同步例子:主機(jī)A發(fā)出時(shí)間戳請求時(shí)的初始時(shí)間戳為1000毫秒,主機(jī)B收到請求時(shí)的接收時(shí)間戳是1055
22、毫秒,主機(jī)B給出應(yīng)答時(shí)的發(fā)送時(shí)間戳是1057毫秒,主機(jī)A收到應(yīng)答時(shí)的時(shí)間為1030毫秒。主機(jī)A可以根據(jù)這些時(shí)間戳計(jì)算出兩臺主機(jī)間的時(shí)間差。 往返時(shí)間t當(dāng)前t初始(t發(fā)送t接收) 10301000(10571055)28(毫秒) 單程時(shí)延28214 (毫秒) 時(shí)間差t接收(t初始單程時(shí)延) 1055(100014)41 (毫秒) 由上計(jì)算可知:主機(jī)B的時(shí)鐘比主機(jī)A的時(shí)鐘快了41毫秒。,ICMP報(bào)文三大類:差錯(cuò)報(bào)告、控制報(bào)文和請求應(yīng)答報(bào)文。,5.5.3 地址掩碼請求與應(yīng)答報(bào)文,地址掩碼請求與應(yīng)答報(bào)文使得一臺主機(jī)可以獲得另一臺主機(jī)或路由器的子網(wǎng)掩碼。如果能夠獲得本網(wǎng)絡(luò)中路由器的子網(wǎng)掩碼,也就得到了本
23、機(jī)所屬子網(wǎng)的掩碼。無盤機(jī)通過RARP獲得IP地址后,可以利用地址掩碼請求來獲得子網(wǎng)掩碼。地址掩碼請求與應(yīng)答報(bào)文的格式如圖所示。 類型“17”表示地址掩碼請求,地址掩碼請求報(bào)文的地址掩碼字段為“0”。類型“18”表示地址掩碼應(yīng)答。,ICMP報(bào)文三大類:差錯(cuò)報(bào)告、控制報(bào)文和請求應(yīng)答報(bào)文。,5.5.4 路由器請求與通告報(bào)文,初始化路由表的方法: 在配置文件中指定靜態(tài)路由 利用ICMP路由器請求和通告報(bào)文來獲得路由器的IP地址。 通過路由器請求和通告報(bào)文還可以知道路由器是否處于活動(dòng)狀態(tài)。 主機(jī)在引導(dǎo)以后通過廣播或組播發(fā)出路由器請求報(bào)文。一臺或更多臺路由器以路由器通告報(bào)文作為響應(yīng)。即使沒有路由器請求報(bào)文
24、,路由器也可以定期廣播或組播路由器通告報(bào)文。,ICMP路由器請求報(bào)文和路由器通告報(bào)文的格式如圖。,路由器通告報(bào)文可以包含多個(gè)地址信息。 地址數(shù)字段指明報(bào)文所含的地址項(xiàng)的個(gè)數(shù)。一個(gè)地址項(xiàng)由一個(gè)IP地址和一個(gè)4字節(jié)的地址優(yōu)先級構(gòu)成。 地址項(xiàng)大小字段指明每個(gè)路由器地址項(xiàng)所占32比特字的數(shù)目,一般為2。,生存期字段以秒為單位指明所通告地址的有效時(shí)間。 數(shù)據(jù)區(qū)是一到多個(gè)地址項(xiàng)。地址項(xiàng)中的優(yōu)先級指出該IP地址作為默認(rèn)路由器地址的優(yōu)先等級,值越小優(yōu)先級越高。若地址優(yōu)先級為0,則該地址可作為默認(rèn)路由器地址。優(yōu)先級為0 x80000000時(shí),表明該地址不能作為默認(rèn)路由器地址使用。,第六節(jié) ICMP報(bào)文封裝,5.6 ICMP報(bào)文封裝,向下:雖然ICMP協(xié)議可以接受來自上層的請求,但并不直接封裝來自上層協(xié)議的數(shù)據(jù)。 ICMP協(xié)議將請求轉(zhuǎn)變?yōu)镮CMP報(bào)文,然后將報(bào)文封裝在IP協(xié)議中進(jìn)行發(fā)送。 包含ICMP報(bào)文的IP數(shù)據(jù)報(bào)首部的協(xié)議字段為“1” 。,5.6 ICMP報(bào)文封裝,向上:IP軟件一旦接收到差錯(cuò)或控制報(bào)文,立即交給ICMP模塊進(jìn)行處理。 ICMP模塊可以形成應(yīng)答報(bào)文 也可以交給上層的應(yīng)用程序或協(xié)議去處理。,本章要點(diǎn),ICMP協(xié)議
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 學(xué)校配餐協(xié)議書
- 特種設(shè)備作業(yè)人員監(jiān)督管理辦法
- 我國券商融資融券業(yè)務(wù)風(fēng)險(xiǎn)防控體系構(gòu)建-基于GT證券公司的深度剖析
- 我國創(chuàng)業(yè)板上市公司內(nèi)部治理:問題剖析與優(yōu)化路徑
- 我國刑事二審開庭審理:現(xiàn)實(shí)困境、深層剖析與優(yōu)化路徑
- 露天煤礦通風(fēng)系統(tǒng)設(shè)計(jì)說明書
- 隔墻板材料性能與安全技術(shù)指南
- 2026遼寧材料實(shí)驗(yàn)室招聘材料電化學(xué)方向支撐人員備考題庫參考答案詳解
- 2026浙江康復(fù)醫(yī)療中心(浙江中醫(yī)藥大學(xué)附屬康復(fù)醫(yī)院)招聘25人備考題庫及1套參考答案詳解
- 2026湖南長沙市農(nóng)業(yè)農(nóng)村局招聘普通雇員1人備考題庫及1套完整答案詳解
- 廣東省佛山市2024-2025學(xué)年高二上學(xué)期期末考試 語文 含解析
- 中藥材及中藥飲片知識培訓(xùn)
- 2024年臺州三門農(nóng)商銀行招聘筆試真題
- 高一政治必修1、必修2基礎(chǔ)知識必背資料
- 垃圾處理設(shè)備維修合同
- DB4114T 105-2019 黃河故道地區(qū)蘋果化學(xué)疏花疏果技術(shù)規(guī)程
- 如何高效向GPT提問
- JT-T-969-2015路面裂縫貼縫膠
- 無抗養(yǎng)殖模式可行性分析
- 《常見疾病康復(fù)》課程教學(xué)大綱
- 飼料廠HACCP計(jì)劃書
評論
0/150
提交評論