背景
相同配置和相同業(yè)務(wù)的4臺cvm,今天準(zhǔn)備下線,檢查還有沒有業(yè)務(wù)流量的時候,發(fā)現(xiàn)有兩臺流量不符合預(yù)期,就很奇怪,想知道流量是從哪里來的。記錄下當(dāng)時定位思路
先來了解下基本的概念
一、Mbps、kbps、bps、bit、b
速度單位,bit 即比特,通常用 b(小寫)表示,指一位二進(jìn)制位;
- Mbps 即 Milionbit pro second(百萬位每秒);
- Kbps 即 Kilobit pro second(千位每秒);
- bps 即 bit pro second(位每秒);
單位換算:
1Milionbit=1000Kilobit=1000000bit
1Mbps=1000 000bps
這是通常用來衡量帶寬的單位,指每秒鐘傳輸?shù)亩M(jìn)制位數(shù);
二、MB、KB、B
通常軟件上顯示的速度不是上述一中的帶寬,而是指每秒種傳輸?shù)淖止?jié)數(shù)(Byte)通常用B(大寫)表示;
- MB 即百萬字節(jié)也稱兆字節(jié);
- KB 即千字節(jié);
- B 即字節(jié);
單位換算:
1MB=1024KB=10241024B=10241024*8b
1B=8b;
與帶寬的換算:
1M帶寬即指 1Mbps=1000Kbps=1000/8KBps=125KBps;
因此1M的帶寬下載的速度一般不會超過125KB每秒。
2M、3M帶寬分別是250KBps、375KBps;
2M、3M帶寬的下載速度分別不會超過250KB、375KB每秒。
PS:
1Mbps與 1m/s 是有區(qū)別的,1Mbps指的是1000/8KB/S也就是125KB/S,而 1m/s 指的是是1024KB/S。
記住 K 和 k 是沒區(qū)別的 ,區(qū)別在于 bps 屬于位每秒的單位,而m/s,KB/S 這兩個屬于字節(jié)每秒的單位,一字節(jié)等于8位,即1B=8b
好了,進(jìn)入正題
1、首先我們先使用neatest 查看監(jiān)聽了哪些進(jìn)程,由于是生產(chǎn)環(huán)境,這里就不截圖展示了
netstat -anltp
執(zhí)行后發(fā)現(xiàn)連接數(shù)很少,基本上可以確認(rèn)應(yīng)該沒啥業(yè)務(wù)流量了,但是為了保險起見,我們應(yīng)該對業(yè)務(wù)監(jiān)聽的端口進(jìn)行抓包看看(這里以nginx為例)
tcpdump -iany dst port '80 or 443' and dst host '輸入自己的ip' -nnv
這里沒有輸出,證明我們猜想是正確的,確實(shí)沒有業(yè)務(wù)流量了
2、使用dstat命令實(shí)時查看網(wǎng)卡流量
dstat -tnf 10
PS:dstat命令默認(rèn)顯示的是速度單位,而不是存儲單位。例如,dstat -tnf命令的輸出中,k和b單位分別表示千字節(jié)和字節(jié)的速度,而不是存儲容量。從下面這張圖仔細(xì)的小伙伴肯定有疑問,為什么這里的send平均在1500k怎么和上面第二張圖的10M不相等呢?
原因:這就是Mb/s和MB/s的區(qū)別啦。dstat表示的單位是字節(jié)每秒,但是Mb/s表示的是位每秒,通過上面的換算,其實(shí)是一樣的,只是單位不同而已。
從這里看到確實(shí)流量有這么高,進(jìn)一步查看
3、使用iftop命令
iftop是一個實(shí)時流量監(jiān)控工具,可以用來監(jiān)控網(wǎng)絡(luò)接口的流量。要監(jiān)控某個進(jìn)程的流量,你可以使用以下命令:
sudo iftop -i eth0 -f "src port <port> or dst port <port>"
但是這里我們并不知道端口,所以執(zhí)行
iftop -i eth1
從這里就可以確認(rèn)到是哪一個目的ip了,如果再結(jié)合到neatest 命令就可以確認(rèn)到是哪一個進(jìn)程。
4、使用nethogs命令
nethogs -a -d 10
從這里可以查看到某個進(jìn)程對應(yīng)的所有流量了。
擴(kuò)展
使用nload命令也可以實(shí)時監(jiān)控入流量和出流量
使用lsof -i:port 根據(jù)端口查詢進(jìn)程文章來源:http://www.zghlxwxcb.cn/news/detail-605451.html
nload eth1
文章來源地址http://www.zghlxwxcb.cn/news/detail-605451.html
到了這里,關(guān)于Linux實(shí)時監(jiān)控網(wǎng)卡入流量和出流量(iftop、dstat、nethogs、nload)的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!