第七章: Ping程序

7.1 引言

“ping”這個名字源于聲納定位操作属划。Ping程序由Mike Muuss編寫单料,目的是為了測試另一臺主機是否可達(dá)。該程序發(fā)送一份ICMP回顯請求報文給主機狐蜕,并等待返回ICMP回顯應(yīng)答(圖6-3列出了所有的ICMP報文類型)骏掀。

一般來說鸠澈,如果不能Ping到某臺主機,那么就不能Te lnet或者FTP到那臺主機截驮。反過來笑陈,如果不能Te lnet到某臺主機,那么通巢啻浚可以用Ping程序來確定問題出在哪里新锈。Ping程序還能測出到這臺主機的往返時間甲脏,以表明該主機離我們有“多遠(yuǎn)”眶熬。

在本章中妹笆,我們將使用Ping程序作為診斷工具來深入剖析ICMP。Ping還給我們提供了檢測IP記錄路由和時間戳選項的機會娜氏。文獻(xiàn)[Stevens 1990]的第11章提供了Ping程序的源代碼拳缠。

 幾年前我們還可以作出這樣沒有限定的斷言,如果不能Ping到某臺主機贸弥,那么就不能Te lnet或FTP到那臺主機窟坐。隨著Internet安全意識的增強,出現(xiàn)了提供訪問控制清單的路由器和防火墻绵疲,那么像這樣沒有限定的斷言就不再成立了哲鸳。一臺主機的可達(dá)性可能不只取決于IP層是否可達(dá),還取決于使用何種協(xié)議以及端口號盔憨。Ping程序的運行結(jié)果可能顯示某臺主機不可達(dá)徙菠,但我們可以用Te lnet遠(yuǎn)程登錄到該臺主機的25號端口(郵件服務(wù)器)。

7.2 Ping程序

我們稱發(fā)送回顯請求的ping程序為客戶郁岩,而稱被ping的主機為服務(wù)器婿奔。大多數(shù)的TCP/IP實現(xiàn)都在內(nèi)核中直接支持Ping服務(wù)器—這種服務(wù)器不是一個用戶進程(在第6章中描述的兩種ICMP查詢服務(wù),地址掩碼和時間戳請求问慎,也都是直接在內(nèi)核中進行處理的)萍摊。
ICMP回顯請求和回顯應(yīng)答報文如圖7-1所示。

圖7-1ICMP回顯請求和回顯應(yīng)答報文格式

對于其他類型的ICMP查詢報文如叼,服務(wù)器必須響應(yīng)標(biāo)識符和序列號字段冰木。另外,客戶發(fā)送的選項數(shù)據(jù)必須回顯薇正,假設(shè)客戶對這些信息都會感興趣片酝。

Unix系統(tǒng)在實現(xiàn)ping程序時是把ICMP報文中的標(biāo)識符字段置成發(fā)送進程的ID號。這樣即使在同一臺主機上同時運行了多個ping程序?qū)嵗谘琾ing程序也可以識別出返回的信息雕沿。

序列號從0開始,每發(fā)送一次新的回顯請求就加1猴仑。ping程序打印出返回的每個分組的序列號审轮,允許我們查看是否有分組丟失、失序或重復(fù)辽俗。IP是一種最好的數(shù)據(jù)報傳遞服務(wù)疾渣,因此這三個條件都有可能發(fā)生。

舊版本的ping程序曾經(jīng)以這種模式運行崖飘,即每秒發(fā)送一個回顯請求榴捡,并打印出返回的每個回顯應(yīng)答。但是朱浴,新版本的實現(xiàn)需要加上-s選項才能以這種模式運行吊圾。默認(rèn)情況下达椰,新版本的ping程序只發(fā)送一個回顯請求。如果收到回顯應(yīng)答项乒,則輸出“host is alive”啰劲;否則,在20秒內(nèi)沒有收到應(yīng)答就輸出“no answer(沒有回答)”檀何。

7.2.1 LAN輸出

在局域網(wǎng)上運行ping程序的結(jié)果輸出一般有如下格式:



當(dāng)返回ICMP回顯應(yīng)答時蝇裤,要打印出序列號和TTL,并計算往返時間(TTL位于IP首部中的生存時間字段频鉴。當(dāng)前的BSD系統(tǒng)中的ping程序每次收到回顯應(yīng)答時都打印出收到的TTL—有些系統(tǒng)并不這樣做栓辜。我們將在第8章中通過traceroute程序來介紹TTL的用法)。

從上面的輸出中可以看出垛孔,回顯應(yīng)答是以發(fā)送的次序返回的(0啃憎,1,2等)似炎。

ping程序通過在ICMP報文數(shù)據(jù)中存放發(fā)送請求的時間值來計算往返時間辛萍。當(dāng)應(yīng)答返回時,用當(dāng)前時間減去存放在ICMP報文中的時間值羡藐,即是往返時間贩毕。注意,在發(fā)送端bsdi上仆嗦,往返時間的計算結(jié)果都為0 ms辉阶。這是因為程序使用的計時器分辨率低的原因。BSD/386版本0.9.4系統(tǒng)只能提供10 ms級的計時器(在附錄B中有更詳細(xì)的介紹)瘩扼。在后面的章節(jié)中谆甜,當(dāng)我們在具有較高分辨率計時器的系統(tǒng)上(Sun)查看tcpdump輸出時會發(fā)現(xiàn),ICMP回顯請求和回顯應(yīng)答的時間差在4ms以下集绰。

輸出的第一行包括目的主機的IP地址规辱,盡管指定的是它的名字(svr4)。這說明名字已經(jīng)經(jīng)過解析器被轉(zhuǎn)換成IP地址了栽燕。我們將在第14章介紹解析器和DNS『贝現(xiàn)在,我們發(fā)現(xiàn)碍岔,如果敲入ping命令浴讯,幾秒鐘過后會在第1行打印出IP地址,DNS就是利用這段時間來確定主機名所對應(yīng)的IP地址蔼啦。

本例中的tcpdump輸出如圖7-2所示榆纽。

圖7-2 在LAN上運行ping程序的結(jié)果

從發(fā)送回顯請求到收到回顯應(yīng)答,時間間隔始終為3.7ms。還可以看到奈籽,回顯請求大約每隔1秒鐘發(fā)送一次亮元。

通常,第1個往返時間值要比其他的大唠摹。這是由于目的端的硬件地址不在ARP高速緩存中的緣故。正如我們在第4章中看到的那樣奉瘤,在發(fā)送第一個回顯請求之前要發(fā)送一個ARP請求并接收ARP應(yīng)答勾拉,這需要花費幾毫秒的時間。下面的例子說明了這一點:



第1個RTT中多出的3ms很可能就是因為發(fā)送ARP請求和接收ARP應(yīng)答所花費的時間盗温。

這個例子運行在sun主機上藕赞,它提供的是具有微秒級分辨率的計時器,但是ping程序只能打印出毫秒級的往返時間卖局。在前面運行于BSD/386 0.9.4版上的例子中斧蜕,打印出來的往返時間值為0 ms,這是因為計時器只能提供10ms的誤差砚偶。下面的例子是BSD/386 1.0版的輸出批销,它提供的計時器也具有微秒級的分辨率,因此染坯,ping程序的輸出結(jié)果也具有較高的分辨率均芽。


7.2.2 WAN輸出

在一個廣域網(wǎng)上散怖,結(jié)果會有很大的不同缔莲。下面的例子是在某個工作日的下午即Internet具有正常通信量時的運行結(jié)果:


這里,序列號為1盔性、2仲锄、3劲妙、4、6儒喊、10镣奋、11、12和13的回顯請求或回顯應(yīng)答在某個地方丟失了怀愧。另外唆途,我們注意到往返時間發(fā)生了很大的變化(像52%這樣高的分組丟失率是不正常的。即使是在工作日的下午掸驱,對于Internet來說也是不正常的)肛搬。

通過廣域網(wǎng)還有可能看到重復(fù)的分組(即相同序列號的分組被打印兩次或更多次),失序的分組(序列號為N+1的分組在序列號為N的分組之前被打颖显簟)温赔。

7.2.3 線路SLIP鏈接

讓我們再來看看SLIP鏈路上的往返時間,因為它們經(jīng)常運行于低速的異步方式鬼癣,如9600b/s或更低陶贼∑》罚回想我們在2.10節(jié)計算的串行線路吞吐量。針對這個例子拜秧,我們把主機bsdi和slip之間的SLIP鏈路傳輸速率設(shè)置為1200 b/s痹屹。

下面我們可以來估計往返時間。首先枉氮,從前面的Ping程序輸出例子中可以注意到志衍,默認(rèn)情況下發(fā)送的ICMP報文有56個字節(jié)。再加上20個字節(jié)的IP首部和8個字節(jié)的ICMP首部聊替,IP數(shù)據(jù)報的總長度為84字節(jié)(我們可以運行tcpdump -e命令查看以太網(wǎng)數(shù)據(jù)幀來驗證這一點)楼肪。另外,從2.4節(jié)可以知道惹悄,至少要增加兩個額外的字節(jié):在數(shù)據(jù)報的開始和結(jié)尾加上END字符春叫。此外,SLIP幀還有可能再增加一些字節(jié)泣港,但這取決于數(shù)據(jù)報中每個字節(jié)的值暂殖。對于1200 b/s這個速率來說,由于每個字節(jié)含有8bit數(shù)據(jù)当纱、1bit起始位和1bit結(jié)束位央星,因此傳輸速率是每秒120個字節(jié),或者說每個字節(jié)8.33 ms惫东。所以我們可以估計需要1433(86×8.33×2)ms(乘2是因為我們計算的是往返時間)莉给。

下面的輸出證實了我們的計算:



(對于SVR4來說,如果每秒鐘發(fā)送一次請求則必須帶-s選項)廉沮。往返時間大約是1.5秒颓遏,但是程序仍然每間隔1秒鐘發(fā)送一次ICMP回顯請求。這說明在第1個回顯應(yīng)答返回之前(1.480秒時刻)就已經(jīng)發(fā)送了兩次回顯請求(分別在0秒和1秒時刻)滞时。這就是為什么總結(jié)行指出丟失了一個分組叁幢。實際上分組并未丟失,很可能仍然在返回的途中坪稽。

我們在第8章討論traceroute程序時將回頭再討論這種低速的SLIP鏈路曼玩。

7.2.4 撥號SLIP鏈路

對于拔號SLIP鏈路來說,情況有些變化窒百,因為在鏈路的兩端增加了調(diào)制解調(diào)器黍判。用在sun和netb系統(tǒng)之間的調(diào)制解調(diào)器提供的是V.32調(diào)制方式(9600 b/s)、V.42錯誤控制方式(也稱作LAP-M)以及V.42bis數(shù)據(jù)壓縮方式篙梢。這表明我們針對線路鏈路參數(shù)進行的簡單計算不再準(zhǔn)確了顷帖。

很多因素都有可能影響。調(diào)制解調(diào)器帶來了時延。隨著數(shù)據(jù)的壓縮贬墩,分組長度可能會減小榴嗅,但是由于使用了錯誤控制協(xié)議,分組長度又可能會增加陶舞。另外嗽测,接收端的調(diào)制解調(diào)器只能在驗證了循環(huán)檢驗字符(檢驗和)后才能釋放收到的數(shù)據(jù)。最后肿孵,我們還要處理每一端的計算機異步串行接口唠粥,許多操作系統(tǒng)只能在固定的時間間隔內(nèi),或者收到若干字符后才去讀這些接口颁井。

作為一個例子,我們在sun主機上ping主機gemini蠢护,輸出結(jié)果如下:



注意雅宾,第1個RTT不是10 ms的整數(shù)倍,但是其他行都是10 ms的整數(shù)倍葵硕。如果我們運行該程序若干次眉抬,發(fā)現(xiàn)每次結(jié)果都是這樣(這并不是由sun主機上的時鐘分辨率造成的結(jié)果,因為根據(jù)附錄B中的測試結(jié)果可以知道它的時鐘能提供毫秒級的分辨率)懈凹。

另外還要注意蜀变,第1個RTT要比其他的大,而且依次遞減介评,然后徘徊在280~300 ms之間库北。我們讓它運行1~2分鐘,RTT一直處于這個范圍们陆,不會低于260 ms寒瓦。如果我們以9600 b/s的速率計算RTT(習(xí)題7.2),那么觀察到的值應(yīng)該大約是估計值的1.5倍坪仇。

如果運行ping程序60秒鐘并計算觀察到的RTT的平均值杂腰,我們發(fā)現(xiàn)在V.42和V.42bis模式下平均值為277 ms(這比上個例子打印出來的平均值要好,因為運行時間較長椅文,這樣就把開始較長的時間平攤了)喂很。如果我們關(guān)閉V.42bis數(shù)據(jù)壓縮方式,平均值為330 ms皆刺。如果我們關(guān)閉V.42錯誤控制方式(它同時也關(guān)閉了V.42bis數(shù)據(jù)壓縮方式)少辣,平均值為300 ms。這些調(diào)制解調(diào)器的參數(shù)對RTT的影響很大羡蛾,使用錯誤控制和數(shù)據(jù)壓縮方式似乎效果最好毒坛。

7.3 IP記錄路由選項

ping程序為我們提供了查看IP記錄路由(RR)選項的機會。大多數(shù)不同版本的ping程序都提供-R選項,以提供記錄路由的功能煎殷。它使得ping程序在發(fā)送出去的IP數(shù)據(jù)報中設(shè)置IPRR選項(該IP數(shù)據(jù)報包含ICMP回顯請求報文)屯伞。這樣,每個處理該數(shù)據(jù)報的路由器都把它的IP地址放入選項字段中豪直。當(dāng)數(shù)據(jù)報到達(dá)目的端時劣摇,IP地址清單應(yīng)該復(fù)制到ICMP回顯應(yīng)答中,這樣返回途中所經(jīng)過的路由器地址也被加入清單中弓乙。當(dāng)ping程序收到回顯應(yīng)答時末融,它就打印出這份IP地址清單。

這個過程聽起來簡單暇韧,但存在一些缺陷勾习。源端主機生成RR選項,中間路由器對RR選項的處理懈玻,以及把ICMP回顯請求中的RR清單復(fù)制到ICMP回顯應(yīng)答中巧婶,所有這些都是選項功能。幸運的是涂乌,現(xiàn)在的大多數(shù)系統(tǒng)都支持這些選項功能艺栈,只是有一些系統(tǒng)不把ICMP請求中的IP清單復(fù)制到ICMP應(yīng)答中。

但是湾盒,最大的問題是IP首部中只有有限的空間來存放IP地址湿右。我們從圖3-1可以看到,IP首部中的首部長度字段只有4bit罚勾,因此整個IP首部最長只能包括15個32 bit長的字(即60個字節(jié))毅人。由于IP首部固定長度為20字節(jié),RR選項用去3個字節(jié)(下面我們再討論)尖殃,這樣只剩下37個字節(jié)(60-20-3)來存放IP地址清單堰塌,也就是說只能存放9個IP地址。對于早期的ARPA NET來說分衫,9個IP地址似乎是很多了场刑,但是現(xiàn)在看來是非常有限的(在第8章中,我們將用Traceroute工具來確定數(shù)據(jù)報的路由)蚪战。除了這些缺點牵现,記錄路由選項工作得很好,為詳細(xì)查看如何處理IP選項提供了一個機會邀桑。

IP數(shù)據(jù)報中的RR選項的一般格式如圖7-3所示瞎疼。


圖7-3 IP首部中的記錄路由選項的一般格式

code是一個字節(jié),指明IP選項的類型壁畸。對于RR選項來說贼急,它的值為7茅茂。len是RR選項總字節(jié)長度,在這種情況下為39(盡管可以為RR選項設(shè)置比最大長度小的長度太抓,但是ping程序總是提供39字節(jié)的選項字段空闲,最多可以記錄9個IP地址。由于IP首部中留給選項的空間有限走敌,它一般情況都設(shè)置成最大長度)碴倾。

ptr稱作指針字段。它是一個基于1的指針掉丽,指向存放下一個IP地址的位置跌榔。它的最小值為4,指向存放第一個IP地址的位置捶障。隨著每個IP地址存入清單僧须,ptr的值分別為8,12项炼,16担平,最大到36。當(dāng)記錄下9個IP地址后芥挣,ptr的值為40驱闷,表示清單已滿耻台。

當(dāng)路由器(根據(jù)定義應(yīng)該是多穴的)在清單中記錄IP地址時空免,它應(yīng)該記錄哪個地址呢?是入口地址還是出口地址盆耽?為此蹋砚,RFC 791[Postel 1981a]指定路由器記錄出口IP地址。我們在后面將看到摄杂,當(dāng)原始主機(運行ping程序的主機)收到帶有RR選項的ICMP回顯應(yīng)答時坝咐,它也要把它的入口IP地址放入清單中。

7.3.1 通常的例子

我們舉一個用RR選項運行ping程序的例子析恢,在主機svr4上運行ping程序到主機slip墨坚。一個中間路由器(bsdi)將處理這個數(shù)據(jù)報。下面是svr4的輸出結(jié)果:


分組所經(jīng)過的四站如圖7-4所示(每個方向各有兩站)映挂,每一站都把自己的IP地址加入RR清單泽篮。

圖7-4帶有記錄路由選項的ping程序

路由器bsdi在不同方向上分別加入了不同的IP地址。它始終是把出口的IP地址加入清單柑船。我們還可以看到帽撑,當(dāng)ICMP回顯應(yīng)答到達(dá)原始系統(tǒng)(svr4)時,它把自己的入口IP地址也加入清單中鞍时。

還可以通過運行帶有-v選項的tcpdump命令來查看主機sun上進行的分組交換(參見IP選項)亏拉。輸出如圖7-5所示扣蜻。


圖7-5記錄路由選項的tcpdump輸出

輸出中optlen=40表示在IP首部中有40個字節(jié)的選項空間(IP首部長度必須為4字節(jié)的整數(shù)倍)。RR{39}的意思是記錄路由選項已被設(shè)置及塘,它的長度字段是39莽使。然后是9個IP地址,符號“#”用來標(biāo)記RR選項中的ptr字段所指向的IP地址磷蛹。由于我們是在主機sun上觀察這些分組(參見圖7-4)吮旅,因此所能看到ICMP回顯請求中的IP地址清單是空的,而ICMP回顯應(yīng)答中有3個IP地址味咳。我們省略了tcpdump輸出中的其他行庇勃,因為它們與圖7-5基本一致。

位于路由信息末尾的標(biāo)記EOL表示IP選項“end of list(清單結(jié)束)”的值槽驶。EOL選項的值可以為0责嚷。這時表示39個字節(jié)的RR數(shù)據(jù)位于IP首部中的40字節(jié)空間中。由于在數(shù)據(jù)報發(fā)送之前空間選項被設(shè)置為0掂铐,因此跟在39個字節(jié)的RR數(shù)據(jù)之后的0字符就被解釋為EOL罕拂。這正是我們所希望的結(jié)果。如果在IP首部中的選項字段中有多個選項全陨,在開始下一個選項之前必須填入空白字符爆班,另外還可以用另一個值為1的特殊字符NOP(“no operation”)。

在圖7-5中辱姨,SVR4把回顯請求中的TTL字段設(shè)為32柿菩,BSD/386設(shè)為255(它打印出的值為254是因為路由器bsdi已經(jīng)將其減去1)。新的系統(tǒng)都把ICMP報文中的TTL設(shè)為最大值(255)雨涛。

在作者使用的三個TCP/IP系統(tǒng)中枢舶,BSD/386和SVR4都支持記錄路由選項。這就是說替久,當(dāng)轉(zhuǎn)發(fā)數(shù)據(jù)報時凉泄,它們都能正確地更新RR清單,而且能正確地把接收到的ICMP回顯請求中的RR清單復(fù)制到出口ICMP回顯應(yīng)答中蚯根。雖然SunOS 4.1.3在轉(zhuǎn)發(fā)一個數(shù)據(jù)報時能正確更新RR清單后众,但是不能復(fù)制RR清單。Solaris 2.x對這個問題已作了修改颅拦。
7.3.2 異常的輸出

下面的例子是作者觀察到的蒂誉,把它作為第9章討論ICMP間接報文的起點。在子網(wǎng)140.252.1上ping主機aix(在主機sun上通過撥號SLIP連接可以訪問)矩距,并帶有記錄路由選項拗盒。在slip主機上運行有如下輸出結(jié)果:


我們已經(jīng)在主機bsdi上運行過這個例子。現(xiàn)在選擇slip來運行它锥债,觀察RR清單中所有的9個IP地址陡蝇。

在輸出中令人感到疑惑的是痊臭,為什么傳出的數(shù)據(jù)報(ICMP回顯請求)直接從netb傳到aix,而返回的數(shù)據(jù)報(ICMP回顯應(yīng)答)卻從aix開始經(jīng)路由器gateway再到netb登夫?這里看到的正是下面將要描述的IP選路的一個特點广匙。數(shù)據(jù)報經(jīng)過的路由如圖7-6所示。

問題是aix不知道要把目的地為子網(wǎng)140.252.13的IP數(shù)據(jù)報發(fā)到主機netb上恼策。相反鸦致,aix在它的路由表中有一個默認(rèn)項,它指明當(dāng)沒有明確某個目的主機的路由時涣楷,就把所有的數(shù)據(jù)報發(fā)往默認(rèn)項指定的路由器gateway分唾。路由器gateway比子網(wǎng)140.252.1上的任何主機都具備更強的選路能力(在這個以太網(wǎng)上有超過150臺主機,每臺主機的路由表中都有一個默認(rèn)項指向路由器gateway狮斗,這樣就不用在每臺主機上都運行一個選路守護程序)绽乔。

這里沒有應(yīng)答的一個問題是為什么gateway不直接發(fā)送ICMP報文重定向到aix(9.5節(jié)),以更新它的路由表碳褒?由于某種原因(很可能是由于數(shù)據(jù)報產(chǎn)生的重定向是一份ICMP回顯請求報文)折砸,重定向并沒有產(chǎn)生。但是如果我們用Te lnet登錄到aix上的daytime服務(wù)器沙峻,ICMP就會產(chǎn)生重定向睦授,因而它在aix上的路由表也隨之更新。如果接著執(zhí)行ping程序并帶有記錄路由選項摔寨,其路由顯示表明數(shù)據(jù)報從netb到aix去枷,然后返回netb,而不再經(jīng)過路由器gateway祷肯。在9.5節(jié)中將更詳細(xì)地討論ICMP重定向的問題沉填。

圖7-6 運行帶有記錄路由選項的ping程序疗隶,顯示IP選路的特點

7.4 IP時間戳選項

IP時間戳選項與記錄路由選項類似佑笋。IP時間戳選項的格式如圖7-7所示(請與圖7-3進行比較)。


圖7-7 IP首部中時間戳選項的一般格式

時間戳選項的代碼為0x44斑鼻。其他兩個字段len和ptr與記錄路由選項相同:選項的總長度(一般為36或40)和指向下一個可用空間的指針(5蒋纬,9,13等)坚弱。

接下來的兩個字段是4bit的值:OF表示溢出字段蜀备,F(xiàn)L表示標(biāo)志字段。時間戳選項的操作根據(jù)標(biāo)志字段來進行荒叶,如圖7-8所示碾阁。


圖7-8 時間戳選項不同標(biāo)志字段值的意義

如果路由器由于沒有空間而不能增加時間戳選項,那么它將增加溢出字段的值些楣。

時間戳的取值一般為自UTC午夜開始計的毫秒數(shù)脂凶,與ICMP時間戳請求和應(yīng)答相類似宪睹。如果路由器不使用這種格式,它就可以插入任何它使用的時間表示格式蚕钦,但是必須打開時間戳中的高位以表明為非標(biāo)準(zhǔn)值亭病。

與我們遇到的記錄路由選項所受到的限制相比,時間戳選項遇到情況要更壞一些嘶居。如果我們要同時記錄IP地址和時間戳(標(biāo)志位為1)罪帖,那么就可以同時存入其中的四對值。只記錄時間戳是沒有用處的邮屁,因為我們沒有標(biāo)明時間戳與路由器之間的對應(yīng)關(guān)系(除非有一個永遠(yuǎn)不變的拓?fù)浣Y(jié)構(gòu))整袁。標(biāo)志值取3會更好一些,因為我們可以插入時間戳的路由器佑吝。一個更為基本的問題是葬项,很可能無法控制任何給定路由器上時間戳的正確性。這使得試圖用IP選項來計算路由器之間的跳站數(shù)是徒勞的迹蛤。我們將看到(第8章)traceroute程序可以提供一種更好的方法來計算路由器之間的跳站數(shù)民珍。

7.5 小結(jié)

ping程序是對兩個TCP/IP系統(tǒng)連通性進行測試的基本工具。它只利用ICMP回顯請求和回顯應(yīng)答報文盗飒,而不用經(jīng)過傳輸層(TCP/UDP)嚷量。Ping服務(wù)器一般在內(nèi)核中實現(xiàn)ICMP的功能。

我們分析了在LAN逆趣、WAN以及SLIP鏈路(撥號和線路)上運行ping程序的輸出結(jié)果蝶溶,并對串行線路上的SLIP鏈路吞吐量進行了計算。我們還討論并使用了ping程序的IP記錄路由選項宣渗。利用該IP選項抖所,可以看到它是如何頻繁使用默認(rèn)路由的。在第9章我們將再次回到這個討論主題痕囱。另外田轧,還討論了IP時間戳選項,但它在實際使用時有所限制鞍恢。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末傻粘,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子帮掉,更是在濱河造成了極大的恐慌弦悉,老刑警劉巖,帶你破解...
    沈念sama閱讀 221,888評論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件蟆炊,死亡現(xiàn)場離奇詭異稽莉,居然都是意外死亡,警方通過查閱死者的電腦和手機涩搓,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,677評論 3 399
  • 文/潘曉璐 我一進店門污秆,熙熙樓的掌柜王于貴愁眉苦臉地迎上來后室,“玉大人,你說我怎么就攤上這事混狠“杜” “怎么了?”我有些...
    開封第一講書人閱讀 168,386評論 0 360
  • 文/不壞的土叔 我叫張陵将饺,是天一觀的道長贡避。 經(jīng)常有香客問我,道長予弧,這世上最難降的妖魔是什么刮吧? 我笑而不...
    開封第一講書人閱讀 59,726評論 1 297
  • 正文 為了忘掉前任,我火速辦了婚禮掖蛤,結(jié)果婚禮上杀捻,老公的妹妹穿的比我還像新娘。我一直安慰自己蚓庭,他們只是感情好致讥,可當(dāng)我...
    茶點故事閱讀 68,729評論 6 397
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著器赞,像睡著了一般垢袱。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上港柜,一...
    開封第一講書人閱讀 52,337評論 1 310
  • 那天请契,我揣著相機與錄音,去河邊找鬼夏醉。 笑死爽锥,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的畔柔。 我是一名探鬼主播氯夷,決...
    沈念sama閱讀 40,902評論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼释树!你這毒婦竟也來了肠槽?” 一聲冷哼從身側(cè)響起擎淤,我...
    開封第一講書人閱讀 39,807評論 0 276
  • 序言:老撾萬榮一對情侶失蹤奢啥,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后嘴拢,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體桩盲,經(jīng)...
    沈念sama閱讀 46,349評論 1 318
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,439評論 3 340
  • 正文 我和宋清朗相戀三年席吴,在試婚紗的時候發(fā)現(xiàn)自己被綠了赌结。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片捞蛋。...
    茶點故事閱讀 40,567評論 1 352
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖柬姚,靈堂內(nèi)的尸體忽然破棺而出拟杉,到底是詐尸還是另有隱情,我是刑警寧澤量承,帶...
    沈念sama閱讀 36,242評論 5 350
  • 正文 年R本政府宣布搬设,位于F島的核電站,受9級特大地震影響撕捍,放射性物質(zhì)發(fā)生泄漏拿穴。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,933評論 3 334
  • 文/蒙蒙 一忧风、第九天 我趴在偏房一處隱蔽的房頂上張望默色。 院中可真熱鬧,春花似錦狮腿、人聲如沸腿宰。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,420評論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽酗失。三九已至,卻和暖如春昧绣,著一層夾襖步出監(jiān)牢的瞬間规肴,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,531評論 1 272
  • 我被黑心中介騙來泰國打工夜畴, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留拖刃,地道東北人。 一個月前我還...
    沈念sama閱讀 48,995評論 3 377
  • 正文 我出身青樓贪绘,卻偏偏與公主長得像兑牡,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子税灌,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 45,585評論 2 359

推薦閱讀更多精彩內(nèi)容

  • 8.1 引言 由Van Jacobson編寫的Traceroute程序是一個能更深入探索TCP/IP協(xié)議的方便可用...
    張芳濤閱讀 1,667評論 0 3
  • 1.這篇文章不是本人原創(chuàng)的均函,只是個人為了對這部分知識做一個整理和系統(tǒng)的輸出而編輯成的,在此鄭重地向本文所引用文章的...
    SOMCENT閱讀 13,077評論 6 174
  • 個人認(rèn)為菱涤,Goodboy1881先生的TCP /IP 協(xié)議詳解學(xué)習(xí)博客系列博客是一部非常精彩的學(xué)習(xí)筆記苞也,這雖然只是...
    貳零壹柒_fc10閱讀 5,060評論 0 8
  • 9.1 引言 選路是IP最重要的功能之一。圖9-1是IP層處理過程的簡單流程粘秆。需要進行選路的數(shù)據(jù)報可以由本地主機產(chǎn)...
    張芳濤閱讀 1,192評論 0 2
  • 簡介 用簡單的話來定義tcpdump如迟,就是:dump the traffic on a network,根據(jù)使用者...
    保川閱讀 5,961評論 1 13