네트워크 성능 측정(트래픽 대량 발생으로 통신속도 측정)

by 디케 posted Jan 24, 2013


Prev이전 문서

Next다음 문서


크게 작게 위로 아래로 댓글로 가기 인쇄

네트워크 성능 측정(트래픽 대량 발생으로 통신속도 측정)

클라이언트와 서버간의 네트워크 대역폭을 체크하는 프로그램이다.
UDP로 체크하면 패킷 유실사항을 확인할 수 있다.


 아래 3가지 프로그램에서 가능하네요.



Network Traffic Monitor









A컴퓨터와 B컴퓨터간 사이에 네트워크 대역폭을 측정하는 예를 들어 보겠습니다.

A컴퓨터에 iperf.exe 서버 데몬을 실행시켜 놓습니다. 

(iperf.exe에 -s옵션을 주면 서버가 -c 옵션을 주면 클라이언트가 됩니다.)

 * 서버 데몬 실행 방법 - iperf를 다운 후 임의 위치에 압축 해제 합니다.

                                  command창을  open한 후 해당 위치로 이동합니다.

                                 그리고  iperf.exe -s라고 입력합니다.

B컴퓨터에서 임의 폴더에 iperf를 압축 해제후 command창으로 해당 위치로 이동합니다. 

B컴퓨터에서 다음의 예와 같이 A서버에 서로 통신을 하여 대역폭을 측정합니다.


* iperf.exe -c  <-- 서버 IP를 입력합니다. 이와 같이 내부 내트워크 IP가 될수도 있고등 

                                              공인 IP가 될 수도 있으며 과 같이 도메인도 가능합니다.

제 측정 결과는 서버의 WAN Upload Bandwidth이 45MB이지만 

클라이언트의 WAN Bandwidth가 5MB라서 낮은 Bandwidth가 나와버렷네요..

자세한 메뉴얼은 아래와 같습니다.

                 User Manuals               


       iperf - perform network throughput tests


       iperf -s [ options ]

       iperf -c server [ options ]

       iperf -u -s [ options ]

       iperf -u -c server [ options ]


       iperf is a tool for performing network throughput measurements.  It can

       test either TCP or UDP throughput.  To perform an iperf test  the  user

       must establish both a server (to discard traffic) and a client (to gen-

       erate traffic).


       -f, --format

              [kmKM]   format to report: Kbits, Mbits, KBytes, MBytes

       -h, --help

              print a help synopsis

       -i, --interval n

              pause n seconds between periodic bandwidth reports

       -l, --len n[KM]

              set length read/write buffer to n (default 8 KB)

       -m, --print_mss

              print TCP maximum segment size (MTU - TCP/IP header)

       -o, --output <filename>

              output the report or error message to this specified file

       -p, --port n

              set server port to listen on/connect to to n (default 5001)

       -u, --udp

              use UDP rather than TCP

       -w, --window n[KM]

              TCP window size (socket buffer size)

       -B, --bind <host>

              bind to <host>, an interface or multicast address

       -C, --compatibility

              for use with older versions does not sent extra msgs

       -M, --mss n

              set TCP maximum segment size (MTU - 40 bytes)

       -N, --nodelay

              set TCP no delay, disabling Nagle's Algorithm

       -v, --version

              print version information and quit

       -V, --IPv6Version

              Set the domain to IPv6

       -x, --reportexclude

              [CDMSV]   exclude C(connection) D(data) M(multicast) S(settings)

              V(server) reports

       -y, --reportstyle C|c

              if set to C or c report results as CSV (comma separated values)


       -s, --server

              run in server mode

       -U, --single_udp

              run in single threaded UDP mode

       -D, --daemon

              run the server as a daemon


       -b, --bandwidth n[KM]

              set  target  bandwidth to n bits/sec (default 1 Mbit/sec).  This

              setting requires UDP (-u).

       -c, --client <host>

              run in client mode, connecting to <host>

       -d, --dualtest

              Do a bidirectional test simultaneously

       -n, --num n[KM]

              number of bytes to transmit (instead of -t)

       -r, --tradeoff

              Do a bidirectional test individually

       -t, --time n

              time in seconds to transmit for (default 10 secs)

       -F, --fileinput <name>

              input the data to be transmitted from a file

       -I, --stdin

              input the data to be transmitted from stdin

       -L, --listenport n

              port to recieve bidirectional tests back on

       -P, --parallel n

              number of parallel client threads to run

       -T, --ttl n

              time-to-live, for multicast (default 1)

       -Z, --linux-congestion <algo>

              set TCP congestion control algorithm (Linux only)



              Controls the size of TCP buffers.


       This section needs to be filled in.


       Exit statuses are inconsistent.  The threading implementation is rather



       Iperf  was  originally  written by Mark Gates and Alex Warshavsky.  Man

       page and maintence by Jon Dugan <jdugan at x1024 dot net>.  Other  con-

       tributions  from  Ajay  Tirumala,  Jim Ferguson, Feng Qin, Kevin Gibbs,

       John Estabrook <jestabro at>, Andrew  Gallatin  <gallatin

       at>, Stephen Hemminger <shemminger at>


NLANR/DAST                        APRIL 2008                          IPERF(1)