ping檢測丟包率和包延遲以及檢查網(wǎng)絡(luò)上的MTU值

ping命令,相信接觸linux的同仁,都不陌生,但你又知道ping命令的整體能力嗎?linux下man ping可窺一斑,來讓我們重新認識下。

man ping

命令描述DESCRIPTION

ping使用ICMP協(xié)議的ECHO_REQUEST從主機或網(wǎng)關(guān)獲取ECHO_RESPONSE。ECHO_REQUEST數(shù)據(jù)報文(pings)包括IP和ICMP報頭,struct timeval,以及任意數(shù)量的用于填充數(shù)據(jù)包的pad字節(jié)。

使用ping進行故障隔離時,最好先在本地主機上運行它,驗證本地網(wǎng)卡是否已啟動并運行,然后ping其它的主機和網(wǎng)關(guān)。ping命令會計算icmp包的往返時間和丟包統(tǒng)計信息。如果接收到重復的數(shù)據(jù)包,它們不包含在丟包計算中,盡管重復數(shù)據(jù)包的往返時間用于計算最小/平均/最大往返時間。發(fā)送(接收)指定數(shù)量的數(shù)據(jù)包或用SIGINT終止程序時,將顯示簡短摘要。

假設(shè)ping沒有收到任何,響應(yīng)的數(shù)據(jù)包并以退出碼1退出。假如數(shù)據(jù)包個數(shù)和deadline time是明確的,在deadline來臨時收到少量包,ping也將以退出碼1退出。其它錯誤將以退出碼2退出。其它情況將以退出碼0退出??梢酝ㄟ^退出碼來判斷某臺主機是否正常。

該程序旨在用于網(wǎng)絡(luò)測試,網(wǎng)絡(luò)測量和網(wǎng)絡(luò)管理。因為ping的負載可能會施加在網(wǎng)絡(luò)上,因此在正常操作或自動化腳本中使用ping是不明智的。

ICMP PACKET DETAILS

不帶選項的IP標頭為20個字節(jié)。ICMP ECHO_REQUEST數(shù)據(jù)包包含額外的8個字節(jié)的ICMP標頭,后跟任意數(shù)量的數(shù)據(jù)。當數(shù)據(jù)包大小給定時,表示該額外數(shù)據(jù)的大小(默認值為56)。因此,在ICMP ECHO_REPLY類型的IP數(shù)據(jù)包內(nèi)部接收到的數(shù)據(jù)量將始終比請求的數(shù)據(jù)空間(ICMP頭)多8個字節(jié)。

如果數(shù)據(jù)空間至少為struct timeval大小,ping將使用此空間的起始字節(jié)來包含時間戳記,以用于往返時間的計算。如果數(shù)據(jù)空間較短,則不會給出往返時間。

重復和損壞的包裝

ping將報告重復和損壞的數(shù)據(jù)包。重復的數(shù)據(jù)包永遠不會出現(xiàn),并且似乎是由不適當?shù)逆溌芳壷貍饕鸬?。在許多情況下可能會出現(xiàn)重復,但很少(如果有的話)是一個好兆頭,盡管重復水平較低的情況可能并不總是會引起警報。

損壞的數(shù)據(jù)包顯然是引起警報的嚴重原因,并且通常表明ping數(shù)據(jù)包路徑中某處(網(wǎng)絡(luò)或主機中)的硬件損壞。

嘗試不同的數(shù)據(jù)模式

網(wǎng)絡(luò)層決不應(yīng)根據(jù)數(shù)據(jù)部分中包含的數(shù)據(jù)對數(shù)據(jù)包進行不同的處理。不幸的是,已知與數(shù)據(jù)有關(guān)的問題會潛入網(wǎng)絡(luò),并且很長一段時間都不會被發(fā)現(xiàn)。在許多情況下,會出現(xiàn)問題的特定模式是沒有足夠的``過渡''的東西,例如全1或全零,或者在邊緣的模式(例如幾乎全零)。在命令行上指定全零的數(shù)據(jù)模式并不一定足夠,因為感興趣的模式在數(shù)據(jù)鏈接級別,并且您鍵入的內(nèi)容與控制器傳輸?shù)膬?nèi)容之間的關(guān)系可以是復雜。

這意味著,如果您遇到與數(shù)據(jù)相關(guān)的問題,則可能必須進行大量測試才能找到它。如果幸運的話,您可能會設(shè)法找到一個文件,該文件要么無法通過網(wǎng)絡(luò)發(fā)送,要么需要比其他類似長度的文件傳輸更長的時間。然后,您可以檢查該文件中是否存在重復的模式,可以使用ping的-p選項進行測試。

BUG故障

? ? ? ·許多主機和網(wǎng)關(guān)都忽略RECORD_ROUTE選項。

? ? ? ? ·最大IP標頭長度太小,無法完全使用RECORD_ROUTE之類的選項。但是,對此沒有太多可以做的。

? ? ? ? ·通常不建議進行泛洪ping操作,并且僅應(yīng)在非常受控的條件下對廣播地址進行泛洪ping操作。

安全

ping需要執(zhí)行CAP_NET_RAW功能。它可以用作set-uid根。

可用性

ping是iputils軟件包的一部分,最新版本以源代碼形式提供,網(wǎng)址為http://www.skbuff.net/iputils/iputils-current.tar.bz2。

ping命令檢測包延遲還有丟包和包延遲抖動分析

root@docker:~# ping 192.168.226.1

PING 192.168.226.1 (192.168.226.1) 56(84) bytes of data.

64 bytes from 192.168.226.1: icmp_seq=1 ttl=128 time=1.23 ms

64 bytes from 192.168.226.1: icmp_seq=2 ttl=128time=0.902 ms

64 bytes from 192.168.226.1: icmp_seq=3 ttl=128time=0.810 ms

64 bytes from 192.168.226.1: icmp_seq=4 ttl=128time=0.669 ms

64 bytes from 192.168.226.1: icmp_seq=5 ttl=128time=0.650 ms

64 bytes from 192.168.226.1: icmp_seq=6 ttl=128time=15.8 ms

64 bytes from 192.168.226.1: icmp_seq=7 ttl=128time=0.779 ms

64 bytes from 192.168.226.1: icmp_seq=8 ttl=128time=0.683 ms

--- 192.168.226.1 ping statistics ---

8 packets transmitted, 8 received,0% packet loss,time 7008ms

rtt min/avg/max/mdev = 0.650/2.692/15.809/4.960 ms

ping返回time=15.8 ms 意味著某個包延遲 15.8ms。

min/avg/max/mdev = 0.650/2.692/15.809/4.960 ms,從整體結(jié)果來看,包延遲不穩(wěn),在一定范圍內(nèi),max代表最大延遲15.8094ms,min代表最小延遲0.650ms,avg代表平均延遲2.692ms也就是包延遲,min-avg和max-avg為包延遲抖動范圍-2.042ms到+13.1174ms。至于mdev,是 Mean Deviation 的縮寫,表示這些 ICMP 包的 RTT 偏離平均值的程度,這個值越大說明你的網(wǎng)速越不穩(wěn)。

0% packet loss 意味著有0%的機率出現(xiàn)丟包,當然這個只是限于本次ping的操作,可能下次ping就不是0%,所以這個參數(shù)只是ping的這段時間內(nèi)沒有丟包,不能說沒有丟包的可能,具體見netstat -s對各個協(xié)議報文的統(tǒng)計可以知道是否丟包。

檢查網(wǎng)絡(luò)上的MTU值

以太網(wǎng)(Ethernet)數(shù)據(jù)幀的長度必須在46-1500字節(jié)之間,這是由以太網(wǎng)的物理特性決定的。這個1500字節(jié)被稱為鏈路層的MTU(最大傳輸單元)。因特網(wǎng)協(xié)議允許IP分片,這樣就可以將數(shù)據(jù)包分成足夠小的片段以通過那些最大傳輸單元小于該數(shù)據(jù)包原始大小的鏈路了。這一分片過程發(fā)生在網(wǎng)絡(luò)層,它使用的是將分組發(fā)送到鏈路上的網(wǎng)絡(luò)接口的最大傳輸單元的值。這個最大傳輸單元的值就是MTU(Maximum Transmission Unit)。它是指一種通信協(xié)議的某一層上面所能通過的最大數(shù)據(jù)包大?。ㄒ宰止?jié)為單位)。最大傳輸單元這個參數(shù)通常與通信接口有關(guān)(網(wǎng)絡(luò)接口卡、串口等)。

?著作權(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)容