网络分析

本文详细介绍了四个网络监控工具:netstat用于查看网络连接、路由表和网络接口信息;sar提供系统活动报告,包括网络接口、IP和TCP统计;nicstat专注于网络流量统计;iftop实时显示网络带宽使用情况。这些工具对于网络性能分析和故障排查非常有用。

1 netstat 多种网络栈和接口的统计信息

选项:

  • -a : 列出所有套接字的信息
  • -n : 不做域名解析
  • -p : 显示正在使用Socket的程序PID和程序名称
  • -t : 显示tcp协议连接
  • -u : 显示udp协议连接
  • -s : 网络栈统计信息 显示网络工作信息统计表
  • -i : 网络接口信息
  • -r : 列出路由表

网络接口统计信息

netstat -i

  • Iface : 网络接口
  • MTU : 最大传输单元
  • Met : 度量值 供某些操作系统用,用于计算一条路由的成本
  • RX-OK  : 成功接收的数据包
  • RX-ERR : 错误接收的数据包
  • RX-DRP :接收时,丢弃的数据包
  • RX-OVR :接收时,由于过速(在数据传输中,由于接收设备不能接收按照发送速率传送来的数据而使数据丢失)而丢失的数据包数。
  • TX-OK : 成功发送的数据包
  • TX-ERR : 发送时产生的错误数据包
  • TX-DRP : 发送时丢弃的数据包
  • TX-OVR : 发送时,由于过速而丢失的数据包数
  • Flg : 标志

            B 已经设置了一个广播地址。
            L 该接口是一个回送设备。
            M 接收所有数据包(混杂模式)。
            N 避免跟踪。
            O 在该接口上,禁用ARP。
            P 这是一个点到点链接。
            R 接口正在运行。
            U 接口处于“活动”状态。

-c 连续模式可以和-i一起使用

 

2 sar 系统活动报告工具

  • -n DEV  :网络接口统计信息
  • -n EDEV : 网络接口错误统计信息
  • -n IP  :IP数据统计信息
  • -n EIP : IP错误统计信息
  • -n TCP :TCP统计信息
  • -n ETCP : TCP错误统计信息
  • -n SOCK : 套接字统计信息

  • IFACE:网络接口
  • rxpck/s:每秒钟接收的数据包
  • txpck/s:每秒钟发送的数据包
  • rxbyt/s:每秒钟接收的字节数
  • txbyt/s:每秒钟发送的字节数
  • rxcmp/s:每秒钟接收的压缩数据包
  • txcmp/s:每秒钟发送的压缩数据包
  • rxmcst/s:每秒钟接收的多播数据包

  • rxerr/s:每秒钟接收的坏数据包
  • txerr/s:每秒钟发送的坏数据包
  • coll/s:每秒冲突数
  • rxdrop/s:因为缓冲充满,每秒钟丢弃的已接收数据包数
  • txdrop/s:因为缓冲充满,每秒钟丢弃的已发送数据包数
  • txcarr/s:发送数据包时,每秒载波错误数
  • rxfram/s:每秒接收数据包的帧对齐错误数
  • rxfifo/s:接收的数据包每秒FIFO过速的错误数
  • txfifo/s:发送的数据包每秒FIFO过速的错误数

  • irec/s : 输入的数据报文
  • fwddgm/s :转发的数据报文
  • idel/s : 每秒成功传送给IP用户协议的输入数据报的总数
  • orq/s : 输出的数据报文请求
  • asmrq/s:每秒接收的IP片段数
  • asmok/s:每秒成功重新组装的IP数据数
  • fragok/s:每秒成功在此实体上分段的IP数据数
  • fragcrt/s:作为此实体上分段的结果每秒生成的IP数据报碎片的数量

  • ihdrerr/s,由于IP报头中的错误而每秒丢弃的输入数据报的数量
  • adrerr/s :每秒丢弃的输入数据报的数量,因为它们的IP报头的目标字段中的IP地址不是要在此实体接收的有效地址。此计数包括无效地址(例如,0.0.0.0)和不受支持的类的地址(例如,类E)。对于非IP路由器,因此不转发数据报的实体,此计数器包括丢弃的数据报,因为目标地址不是本地地址[ipInAddrError]。
  • iukwnpr/s :由于未知或不受支持的协议而成功接收到但每秒丢弃的本地寻址数据报的数目[ipInUnKnownProtos]。
  • idisc/s :每秒输入IP数据报的数量,没有遇到任何问题来阻止其继续处理,但这些数据报被丢弃(例如,由于缺乏缓冲区空间)[ipInDis批]。请注意,此计数器不包括等待重新组装时丢弃的任何数据报。
  • odisc/s :每秒输出IP数据报的数量,没有遇到任何问题来阻止它们传输到目的地,但这些数据报被丢弃(例如,由于缺乏缓冲区空间)[ipOutDisks]。请注意,如果任何此类数据包符合此(任意)丢弃标准,则此计数器将包括在fwddgm/s中计数的数据报。
  • onort/s :每秒丢弃的IP数据报的数量,因为找不到将它们传输到目的地[ipOutNoRoutes]的路由。请注意,此计数器包括在fwddgm/s中计数的符合“无路由”标准的任何数据包。请注意,这包括主机无法路由的任何数据报,因为其所有默认路由器都已关闭。
  • asmf/s :IP重新组装算法每秒检测到的故障数(无论出于什么原因:超时、错误等)[ipReasmFails]。
  • fragf/s :每秒丢弃的IP数据报的数量,因为它们需要在该实体中被碎片化,但不能这样做。

  • active/s : 新的主动TCP连接(connect())
  • passive/s : 新的被动的TCP连接(listen())
  • iseg/s : 每秒接收的段总数
  • oseg/s : 每秒发送的段总数

  • totsck : 使用中的总数据包
  • tcpsck : 当前使用的TCP套接字书面
  • udpsck : 当前使用的UDP套接字数目
  • rawsck,当前使用的RAW套接字数目
  • ip-frag,目前正在使用的IP数据片
  • tcp-tw,TIME-WAIT状态下的TCP套接字数目

 

3 nicstat 网络流量统计工具

安装:wget -c http://nchc.dl.sourceforge.net/project/nicstat/nicstat-1.92.tar.gz

tar xf nicstat-1.92.tar.gz

cd nicstat-1.92
cp Makefile.Linux Makefile

vim Makefile   (32位系统的就不用改了)

make && make install

 

选项

选项:

  • -h    #显示简单的用法
  • -v    #显示nicstat版本
  • -n    #只统计非本地(即非回环)接口
  • -s    #显示摘要输出(只是接收和发送的数据量)
  • -x    #显示扩展的输出
  • -M    #以Mbps显示吞吐量,而不是默认的KB/s
  • -p    #以解析后的输出格式显示
  • -z    #跳过采样周期内是零流量的接口
  • -t    #tcp流量统计
  • -u    #ucp流量统计
  • -a    #等同于'-x -t -u'
  • -l    #只显示端口状态
  • -i interface[,interface...]    #指定接口

使用:

Time列:表示当前采样的响应时间.
Int : 网卡名称.
rKB/s : 每秒接收到字节数.
wKB/s : 每秒发送的字节数.
rPk/s : 每秒接收到的数据包数目.
wPk/s : 每秒发送的数据包数目.
rAvs : 接收到的数据包平均大小.
wAvs : 发送的数据包平均大小.
%Util : 网卡利用率(百分比).
Sat : 网卡每秒的错误数.网卡是否接近饱满的一个指标.尝试去诊断网络问题的时候,推荐使用-x选项去查看更多的统计信息.

 

显示扩展的输出

  • RdKB : 接收字节数
  • WrKB : 发送字节数
  • RdPKT : 接收包数目
  • WrPkt : 发送包数目
  • IErr :接收到包含错误的数目
  • OErr :由于错误而未能成功发送的数据包
  • Coll :传输过程中的以太网冲突数
  • NoCP :当一个接收到的数据包无法放入套接字进程中,本地进程无法及时处理传入的数据包
  • Defer :延迟发送 第一次发送尝试被延迟没有冲突的数据包
  • %Util :网卡利用率

 

tcp流量统计

  • InKB : 表示每秒接收到的千字节.
  • OutKB : 表示每秒传输的千字节.
  • InSeg : 表示每秒接收到的TCP数据段(TCP Segments).
  • OutSeg : 表示每秒传输的TCP数据段(TCP Segments).
  • Reset : 表示TCP连接从ESTABLISHED或CLOSE-WAIT状态直接转变为CLOSED状态的次数.
  • AttF : 表示TCP连接从SYN-SENT或SYN-RCVD状态直接转变为CLOSED状态的次数,再加上TCP连接从SYN-RCVD状态直接转变为              LISTEN状态的次数
  • %ReTX : 表示TCP数据段(TCP Segments)重传的百分比.即传输的TCP数据段包含有一个或多个之前传输的八位字节.
  • InConn : 表示TCP连接从LISTEN状态直接转变为SYN-RCVD状态的次数.
  • OutCon : 表示TCP连接从CLOSED状态直接转变为SYN-SENT状态的次数.
  • Drops : 表示从完成连接(completed connection)的队列和未完成连接(incomplete connection)的队列中丢弃的连接次数.

 

udp流量统计

  • InDG : 每秒接收到的UDP数据报
  • OutDG : 每秒传输的UDP数据报
  • InErr : 接收到的因包含错误而不能被处理的数据包
  • OutErr :因错误而不能成功传输的数据包.

4 iftop

iftop -i eth0 -PB

-P 参数会将请求服务的端口显示出来

-B 以bytes为单位显示流量

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值