• 如何在Linux下统计高速网络中的流量


    参考资料:

    http://www.geekfan.net/5558/
     
    脚本主要是基于sysfs虚拟文件系统,这是由内核用来将设备或驱动相关的信息输出到用户空间的一种机制。网络接口的相关分析数据会通过“/sys/class/net/<ethX>/statistics”输出。

    举个例子,eth0的网口上分析报告会输出到这些文件中:

    /sys/class/net/eth0/statistics/rx_packets: 收到的数据包数据
    /sys/class/net/eth0/statistics/tx_packets: 传输的数据包数量
    /sys/class/net/eth0/statistics/rx_bytes: 接收的字节数
    /sys/class/net/eth0/statistics/tx_bytes: 传输的字节数
    /sys/class/net/eth0/statistics/rx_dropped: 收包时丢弃的数据包
    /sys/class/net/eth0/statistics/tx_dropped: 发包时丢弃的数据包

    netpps.sh---测量网口每秒数据包
     
    #!/bin/bash

    INTERVAL="1"  # update interval in seconds

    if [ -z "$1" ]; then
         echo usage: $0 [network-interface]
         echo e.g. $0 eth0
         echo shows packets-per-second
         exit
    fi

    while true
    do
         R1=`cat /sys/class/net/$1/statistics/rx_packets`
            T1=`cat /sys/class/net/$1/statistics/tx_packets`
            sleep $INTERVAL
            R2=`cat /sys/class/net/$1/statistics/rx_packets`
            T2=`cat /sys/class/net/$1/statistics/tx_packets`
            TXPPS=`expr $T2 - $T1`
            RXPPS=`expr $R2 - $R1`
            echo "TX $1: $TXPPS pkts/s RX $1: $RXPPS pkts/s"
    done
     
     


    netspeed.sh---网络带宽测量
    #!/bin/bash

    INTERVAL="1"  # update interval in seconds

    if [ -z "$1" ]; then
            echo
            echo usage: $0 [network-interface]
            echo
            echo e.g. $0 eth0
            echo
            exit
    fi

    IF=$1

    while true
    do
            R1=`cat /sys/class/net/$1/statistics/rx_bytes`
            T1=`cat /sys/class/net/$1/statistics/tx_bytes`
            sleep $INTERVAL
            R2=`cat /sys/class/net/$1/statistics/rx_bytes`
            T2=`cat /sys/class/net/$1/statistics/tx_bytes`
            TBPS=`expr $T2 - $T1`
            RBPS=`expr $R2 - $R1`
            TKBPS=`expr $TBPS / 1024`
            RKBPS=`expr $RBPS / 1024`
            echo "TX $1: $TKBPS kb/s RX $1: $RKBPS kb/s"
    done
  • 相关阅读:
    基于kubernetes v1.17部署dashboard:v2.0-beta8
    kubeadm快速部署Kubernetes单节点
    kafka数据可靠性深度解读
    MySql中4种批量更新的方法
    如何分析Mysql慢SQL
    企业级SSD市场接口之争:SATA会被NVMe取代吗?
    强势回归,Linux blk用实力证明自己并不弱!
    影响性能的关键部分-ceph的osd journal写
    文章汇总(包括NVMe SPDK vSAN Ceph xfs等)
    NVMe over Fabrics:概念、应用和实现
  • 原文地址:https://www.cnblogs.com/black-mamba/p/4419228.html
Copyright © 2020-2023  润新知