查看网卡带宽
查看LInux网络流量 cat /proc/net/dev
[root@Ac-private-1 ~]# cat /proc/net/dev
Inter-| Receive | Transmit
face |bytes packets errs drop fifo frame compressed multicast|bytes packets errs drop fifo colls carrier compressed
cni0: 142673270 2224079 0 0 0 0 0 0 836688545 2253102 0 0 0 0 0 0
enp2s0f0: 6127206477 16043238 0 0 0 0 0 0 22182423176 38432656 0 0 0 0 0 0
enp2s0f1: 2422482973 6470445 0 56057 0 0 0 0 22925345081 36319332 0 0 0 0 0 0
veth98cca46: 2707 27 0 0 0 0 0 0 2806 36 0 0 0 0 0 0
veth995710c8: 86903266 1112015 0 0 0 0 0 0 418411910 1127612 0 0 0 0 0 0
bond6: 8549670345 22513643 0 56057 0 0 0 0 45107715316 74751660 0 0 0 0 0 0
veth66e764d: 14006 29 0 0 0 0 0 0 3640 48 0 0 0 0 0 0
vethb3e2ae06: 86907368 1112067 0 0 0 0 0 0 418279611 1125528 0 0 0 0 0 0
lo: 37183471196 95095780 0 0 0 0 0 0 37183471196 95095780 0 0 0 0 0 0
virbr0-nic: 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
virbr0: 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
flannel.1: 624415737 785761 0 0 0 0 0 0 76224792 688324 0 10 0 0 0 0
docker0: 16145 59 0 0 0 0 0 0 4528 59 0 0 0 0 0 0
参考http://www.cnblogs.com/moodlxs/p/4159245.html
nload等一些工具可以读取"proc/net/dev"文件,以获得流量统计信息;而一些工具使用pcap库来捕获所有数据包,然后计算总数据量,从而估计流量负载。
下面是按功能划分的命令名称。
- 监控总体带宽使用――nload、bmon、slurm、bwm-ng、cbm、speedometer和netload
- 监控总体带宽使用(批量式输出)――vnstat、ifstat、dstat和collectl
- 每个套接字连接的带宽使用――iftop、iptraf、tcptrack、pktstat、netwatch和trafshow
- 每个进程的带宽使用――nethogs
nload 可以分开来监控入站流量和出站流量。它还可以绘制图表以显示入站流量和出站流量,视图比例可以调整。用起来很简单,总体使用情况
iftop可测量通过每一个套接字连接传输的数据;它采用的工作方式有别于nload。iftop使用pcap库来捕获进出网络适配器的数据包,然后汇总数据包大小和数量,搞清楚总的带宽使用情况。虽然iftop报告每个连接所使用的带宽,但它无法报告参与某个套按字连接的进程名称/编号(ID)。不过由于基于pcap库,iftop能够过滤流量,并报告由过滤器指定的所选定主机连接的带宽使用情况。
nethogs是一款小巧的"net top"工具,可以显示每个进程所使用的带宽,并对列表排序,将耗用带宽最多的进程排在最上面。万一出现带宽使用突然激增的情况,用户迅速打开nethogs,就可以找到导致带宽使用激增的进程。nethogs可以报告程序的进程编号(PID)、用户和路径。
带宽利用率=流率/带宽,这里流率包括输入流率和输出流率之和。