현재 컴퓨터의 네크워크 트래픽 양을 얻어와야 되는데 ??

madbattle의 이미지

현재 컴퓨터의 네트워크 트래픽 양을 얻어와야 되는데 .?

어디에서 얻어 와야 되나요 ? sys/proc 파일 에 트래픽 정보가 들어가

있는 파일이 있을까요 ?

네트워크 트래픽 양을 어디서 받아와야 되는지 아시는분은 답변좀 부탁 드립니

다. 매번 질문을 해도 답변을 해주셔서 너무 감사해요..

오늘 하루 즐겁게 보내세요..

divetou의 이미지

/proc/net/dev에 트래픽 정보가 있는걸로 알고 있습니다.

==============================
꿈꾸는소년

kyong의 이미지

예전 포럼에서 올렸던 것 같은데 간단히 측정할 땐 도움이 됩니다.

#!/bin/sh 
# 
# Scripted by JoungKyun Kim 
# 2001.2.15 http://www.oops.org 
# This Script follows GPL2 License 
#
# 2003. 1. 15   Modified to trap CTRL-c by kyong
# 2003. 1. 23   Added SECONDS arg, Kbps unit, minutes conversion and
#               some cleanups by kyong

IF="$1"
CHECK="/proc/net/dev"
KMULTI=1024
#KMULTI=1000

start() {
        [ -f $CHECK ] || { echo "\"$CHECK\" does not exist." ;  exit ; }
        fgrep -qs $IF: $CHECK  || { echo "DEVICE \"$IF\" does not exist." ;  exit ; }

        set `cat $CHECK | grep $IF: | cut -f2- -d:`
        IN0=$1 
        OUT0=$9
}
stop() {
        local MSEC=$SECONDS

        set `cat $CHECK | grep $IF: | cut -f2- -d:`
        IN1=$1
        OUT1=$9
        let "IN = ($IN1 - $IN0) / ($MSEC * $KMULTI)" 
        let "OUT = ($OUT1 - $OUT0) / ($MSEC * $KMULTI)" 

        if [ $MSEC -lt 60 ] ;
        then
                MTIME="$MSEC second(s)"
        else
                let "MMIN = $MSEC / 60"
                let "MSEC = $MSEC - ($MMIN * 60)"
                MTIME="$MMIN minute(s) $MSEC second(s)"
        fi
        if [ $KMULTI -eq 1024 ] ;
        then
                KUNIT="KiB/s"
        elif [ $KMULTI -eq 1000 ] ;
        then
                KUNIT="KB/s"
        else
                KUNIT="?"
        fi

        echo
        echo "During $MTIME"
        echo "IN        :       $IN $KUNIT (`let "IN=$IN*8"; echo $IN` Kbps)" 
        echo "OUT       :       $OUT $KUNIT (`let "OUT=$OUT*8"; echo $OUT` Kbps)" 
}
usage() {
        echo "Usage     :  `basename "$0"` DEVICE [SECONDS]" 
        echo "Ex.       :  `basename "$0"` eth0" 
        echo "             `basename "$0"` eth0 10" 
}

if [ $# = 0 -o $# -gt 2 ] ;
then
    usage ;
        exit
elif [ $# = 1 ] ;
then
        start ;
        trap 'stop;' SIGINT SIGQUIT
        echo "Ctrl-c to abort" 
        sleep 365d
        exit 0
else
        start ;
        unset SECONDS
        SECONDS=$2
        sleep $2
        stop ;
        exit 0
fi