두 PC의 네트워크 성능을 확인할 일이 생겼다...... (암 비지)
다행히도(?) 편리한 툴이 있어 이를 이용해보았따.
윈도우, 맥, 리눅스등의 다양한 OS에서 지원을 한다. (얏호!!!!!)
클라이언트PC와 서버PC에 같은 버전의 설치파일로 실행해야한다는 것만 주의하면 된다.
https://iperf.fr/iperf-download.php
다운로드 받은 경로에서 커맨드를 실행하면 된다..
> iperf3 --help
Usage: iperf [-s|-c host] [options]
iperf [-h|--help] [-v|--version]
Server or Client:
-p, --port # server port to listen on/connect to
-f, --format [kmgKMG] format to report: Kbits, Mbits, KBytes, MBytes
-i, --interval # seconds between periodic bandwidth reports
-F, --file name xmit/recv the specified file
-B, --bind <host> bind to a specific interface
-V, --verbose more detailed output
-J, --json output in JSON format
--logfile f send output to a log file
-d, --debug emit debugging output
-v, --version show version information and quit
-h, --help show this message and quit
Server specific:
-s, --server run in server mode
-D, --daemon run the server as a daemon
-I, --pidfile file write PID file
-1, --one-off handle one client connection then exit
Client specific:
-c, --client <host> run in client mode, connecting to <host>
-u, --udp use UDP rather than TCP
-b, --bandwidth #[KMG][/#] target bandwidth in bits/sec (0 for unlimited)
(default 1 Mbit/sec for UDP, unlimited for TCP)
(optional slash and packet count for burst mode)
-t, --time # time in seconds to transmit for (default 10 secs)
-n, --bytes #[KMG] number of bytes to transmit (instead of -t)
-k, --blockcount #[KMG] number of blocks (packets) to transmit (instead of -t or -n)
-l, --len #[KMG] length of buffer to read or write
(default 128 KB for TCP, 8 KB for UDP)
--cport <port> bind to a specific client port (TCP and UDP, default: ephemeral port)
-P, --parallel # number of parallel client streams to run
-R, --reverse run in reverse mode (server sends, client receives)
-w, --window #[KMG] set window size / socket buffer size
-M, --set-mss # set TCP/SCTP maximum segment size (MTU - 40 bytes)
-N, --no-delay set TCP/SCTP no delay, disabling Nagle's Algorithm
-4, --version4 only use IPv4
-6, --version6 only use IPv6
-S, --tos N set the IP 'type of service'
-Z, --zerocopy use a 'zero copy' method of sending data
-O, --omit N omit the first n seconds
-T, --title str prefix every output line with this string
--get-server-output get results from server
--udp-counters-64bit use 64-bit counters in UDP test packets
[KMG] indicates options that support a K/M/G suffix for kilo-, mega-, or giga-
iperf3 homepage at: http://software.es.net/iperf/
Report bugs to: https://github.com/esnet/iperf
서버pc와 클라이언트pc에 각각의 옵션을 넣어 테스트를 진행하면 된다.
주의할 점은 기본 포트가 아닌 다른 포트를 명시하여 테스트할때 포트가 오픈되었는지 방화벽을 체크하자.
서버pc
> iperf3 -s -p8999
클라이언트pc
> iperf3 -c [SERVER_IP] -p8999
서버 로그
Accepted connection from [CLIENT_IP], port 50619
[ 5] local [SERVER_IP] port 8999 connected to [CLIENT_IP] port 50620
[ ID] Interval Transfer Bandwidth
[ 5] 0.00-1.00 sec 8.00 MBytes 67.1 Mbits/sec
[ 5] 1.00-2.00 sec 11.4 MBytes 95.3 Mbits/sec
[ 5] 2.00-3.00 sec 8.00 MBytes 67.1 Mbits/sec
[ 5] 3.00-4.00 sec 11.2 MBytes 94.4 Mbits/sec
[ 5] 4.00-5.00 sec 11.4 MBytes 95.4 Mbits/sec
[ 5] 5.00-6.00 sec 11.2 MBytes 94.4 Mbits/sec
[ 5] 6.00-7.00 sec 11.2 MBytes 94.4 Mbits/sec
[ 5] 7.00-8.00 sec 8.00 MBytes 67.1 Mbits/sec
[ 5] 8.00-9.00 sec 8.00 MBytes 67.1 Mbits/sec
[ 5] 9.00-10.00 sec 11.4 MBytes 95.3 Mbits/sec
[ 5] 10.00-10.04 sec 384 KBytes 86.1 Mbits/sec
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval Transfer Bandwidth
[ 5] 0.00-10.04 sec 100 MBytes 83.8 Mbits/sec sender
[ 5] 0.00-10.04 sec 0.00 Bytes 0.00 bits/sec receiver
클라이언트 로그
Connecting to host [SERVER_IP], port 8999
[ 4] local [CLIENT_IP] port 63503 connected to [SERVER_IP] port 8999
[ ID] Interval Transfer Bandwidth
[ 4] 0.00-1.01 sec 11.2 MBytes 93.7 Mbits/sec
[ 4] 1.01-2.00 sec 11.2 MBytes 94.8 Mbits/sec
[ 4] 2.00-3.00 sec 11.2 MBytes 94.4 Mbits/sec
[ 4] 3.00-4.00 sec 11.2 MBytes 94.5 Mbits/sec
[ 4] 4.00-5.00 sec 11.4 MBytes 95.2 Mbits/sec
[ 4] 5.00-6.01 sec 11.4 MBytes 94.7 Mbits/sec
[ 4] 6.01-7.01 sec 11.2 MBytes 94.8 Mbits/sec
[ 4] 7.01-8.00 sec 11.2 MBytes 94.5 Mbits/sec
[ 4] 8.00-9.01 sec 11.4 MBytes 94.8 Mbits/sec
[ 4] 9.01-10.01 sec 11.2 MBytes 94.7 Mbits/sec
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval Transfer Bandwidth
[ 4] 0.00-10.01 sec 113 MBytes 94.6 Mbits/sec sender
[ 4] 0.00-10.01 sec 113 MBytes 94.6 Mbits/sec receiver
다양한 옵션들이 있으니 활용해보는 것도 좋을 것 같다.