性能调优之网络篇 - Nicstat 查看所有网卡流量信息
nicstat是一款分析网卡流量信息的工具,原生于Solaris,后来被移植到Linux上,官网地址https://blogs.oracle.com/timc/entry/nicstat_the_solaris_and_linux。
以下摘自官网:
nicstat is to network interfaces as "iostat" is to disks, or "prstat" is to processes. It is designed as a much better version of "netstat -i". Its differences include:
Reports bytes in & out as well as packets.
Normalizes these values to per-second rates.
Reports on all interfaces (while iterating)
Reports Utilization (rough calculation as of now)(Note:1.9.5 version could show both read and write utilization.)
Reports Saturation (also rough)
Prefixes statistics with the current time
nicstat对于分析网络接口的方法类似于iostat分析磁盘使用率,或者说类似于prstat分析进程信息,它比netstat -i更高级的地方在于:可以输出网卡速率,read/write 使用率,网卡的TCP, UDP信息。有人说那还不如用iptraf或者iftop呢,不一样都能查看网卡速率吗?nicstat强大的地方是可以以iostat的方式直接输出网卡使用率,而iftop,iptraf 只能跟踪单个网卡信息。
可以对比一下netstat -i 和 nicstat的输出数据:
显而易见,nicstat的输出更人性化。
命令帮助信息:
# root at shanker in ~/nicstat-1.95 [3:00:43] # ./nicstat.sh -h USAGE: nicstat [-hvnsxpztualMU] [-i int[,int...]] [-S int:mbps[,int:mbps...]] [interval [count]] -h # help -v # show version (1.95) -i interface # track interface only -n # show non-local interfaces only (exclude lo0) -s # summary output -x # extended output -p # parseable output -z # skip zero value lines -t # show TCP statistics -u # show UDP statistics -a # equivalent to "-x -u -t" -l # list interface(s) -M # output in Mbits/sec -U # separate %rUtil and %wUtil -S int:mbps[fd|hd] # tell nicstat the interface # speed (Mbits/sec) and duplex eg, nicstat # print summary since boot only nicstat 1 # print every 1 second nicstat 1 5 # print 5 times only nicstat -z 1 # print every 1 second, skip zero lines nicstat -i hme0 1 # print hme0 only every 1 second
下面介绍一下如何安装nicstat,这个软件是非标准的Linux软件,所有用apt-get或者yum的方式都没法安装,只能下载官网的源码编译安装。
下载地址:http://sourceforge.net/projects/nicstat/files/
我这里下载的是最新版的1.95,这个版本多了一个新功能是-U,将read 和write的使用率分开显示。
安装README.txt的信息尝试make,但是失败了,后来发现如果不编译,直接使用目录下面自带的shell也可以,方法如下:
因为nicstat是在32位系统上编译的,所以要安装32位的libc文件,如果使用的是Ubuntu系统:
sudo apt-get install libc6:i386 cd nicstat-1.95 ln -s .nicstat.Ubuntu_8_i386 .nicstat.Linux_i386 ln -s nicstat.sh nicstat
如果是Centos/RedHat 6 64Bit 系统:
sudo yum install glibc.i686 cd nicstat-1.95 ln -s .nicstat.Linux_i386 .nicstat.Linux_i386 ln -s nicstat.sh nicstat
这样就可以用nicstat来执行命令了。
推荐大家将设置好的nicstat打包发送到github,以后使用的时候直接开包即用。
参考连接:
http://blog.yufeng.info/archives/2518#more-2518
欢迎补充!

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
深入理解Python中的__builtin__和__builtins__
0.说明 这里的说明主要是以Python 2.7为例,因为在Python 3+中,__builtin__模块被命名为builtins,下面主要是探讨Python 2.x中__builtin__模块和__builtins__模块的区别和联系。 1.名称空间(Namespace) 首先不得不说名称空间,因为名称空间是Python中非常重要的一个概念,所谓名称空间,其实指的是名称(标识符)到对象的映射。 在一个正常的Python程序的执行过程中,至少存在两个名称空间: 内建名称空间 全局名称空间 如果定义了函数,则还会有局部名称空间,全局名称空间一般由在程序的全局变量和它们对应的映射对象组成,而局部名称空间则在函数内部由函数局部变量和它们对应的映射对象组成,这里关键的是内建名称空间,它到底是怎么产生的? 2.内建函数 在启动Python解释器之后,即使没有创建任何的变量或者函数,还是会有许多函数可以使用,比如: >>>abs(-1) 1 >>>max(1,3) 3 我们把这些函数称为内建函数,是因为它们不需要我们程序员作任何定义,在启动Python解释器的...
- 下一篇
Linux Shell脚本之更新hosts文件以便于访问谷歌服务
Linux服务器一般不带图形界面,管理员通常都是通过命令行界面直接操作服务器。在日常的管理运维中,经常需要用到github、gist、githubusercontent等网站上的一些内容,也有时需要用到Google上的一些服务,如Google API之类的。然而这些网站大部分都被GFW防火长城屏蔽掉了,GFW用到的屏蔽手段很多,其中DNS污染就是一种。 PS: GFW防火长城并不是真正要拦截所有人,而是大部分人,要想访问墙外,办法总是有的。 在Linux环境下通过各种形式×××可能并不是最佳实践,最简单的方法是通过修改/etc/hosts文件避免国内DNS污染。 可用的hosts文件可以通过github/hosts项目(https://github.com/racaljk/hosts)获取,也可以从备份地址(https://coding.net/u/scaffrey/p/hosts/git)获取。 本文只是为Linux提供了一套简单的工具,通过这个Shell脚本结合crontab,可以实现自动更新hosts文件。虽然github/hosts项目中也提供了修改的工具,但自己写一个也...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- CentOS7编译安装Gcc9.2.0,解决mysql等软件编译问题
- Docker安装Oracle12C,快速搭建Oracle学习环境
- SpringBoot2全家桶,快速入门学习开发网站教程
- SpringBoot2配置默认Tomcat设置,开启更多高级功能
- CentOS关闭SELinux安全模块
- Eclipse初始化配置,告别卡顿、闪退、编译时间过长
- CentOS6,CentOS7官方镜像安装Oracle11G
- SpringBoot2整合MyBatis,连接MySql数据库做增删改查操作
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- Hadoop3单机部署,实现最简伪集群