jnetperf
사용법
jnetperf -S [-p port][-B socksize] [-v]
jnetperf [-p port] [-B socksize] [-s size] [-v] host
jnetperf -1 [-p port] [-B socksize] [-s size] [-v] host
jnetperf -V
Options are as follows:
-? print this help
-1 send data and receive the reply for one second
-B socket_bufsize specify socket buffer size(number + unit[B|K|M|G])
-b bufsize specify the size of write unit; default: 32 KB
-p port_num TCP/UDP port number; def: 12121
-S server mode
-s size specify data size(number + unit[B|K|M|G]) to send; default: 10 MB
-V show version
-v verbose mode
EXAMPLE)
# jnetperf -S
# jnetperf test_server
# jnetperf -s 100m test_server
# jnetperf -1 test_server
설명
jnetperf 명령어는 네트웍 속도를 간단히 측정하는 용도로 사용된다.
네드웍 속도를 측정하기 위해서는 jnetperf 명령어를 측정하고자 하는 양쪽 시스템에서
실행하여야 한다.
한쪽에서 -S 옵션을 지정하여 실행하고, 다른 쪽에서는 그 상대방의 IP를 지정하여 실행한다.
IP 192.168.100.1 시스템에서 다음과 같이 실행하여 다른 시스템에서 TCP 로 접속해서 데이타를
보내기를 기다린다.
# /opt/JSparm/bin/jnetperf -S
jnetperf is started on TCP port 12121
|
다음은 IP 192.168.100.1 시스템에 접속하여 네크웍 전송 속도를 측정한다.
# /opt/JSparm/bin/jnetperf 192.168.100.1
TCP: sending 10 MB 0.074338 microsec, 126.52 MB/sec (write unit=32 KB)
|
특별한 옵션없이 실행하면, TCP 12121 포트로 접속해서 10 MB의 데이타를 전송한다.
write() 시스템 콜에서 한번에 write 하는 크기는 32 KB이다.
TCP 포트 번호나 write 하는 크기는 각각 -p 옵션과 -b 옵션으로 변경할 수 있다.
데이타 전송 속도는 다음과 같이 측정한다.
첫번째, TCP 접속을 맞은 후에 시작 시간을 측정하고, 전송할 데이타를 모두 전송한다.
두번째, 상대방 시스템이 데이타를 모두 수신한 후에 마지막으로 수신한 크기를 응답으로 보낸다.
세번째, 상대방 시스템이 보낸 수신 데이타의 크기를 받으면, 종료 시간을 측정한다.
종료 시간과 시작 시간의 차이 값을 전송량(10 MB) 로 나누어 초당 전송량을 구한다.
TCP: sending 10 MB 0.074338 microsec, 128.52 MB/sec (write unit=32 KB)
jnetperf 명령어는 TCP 프로그램에서 지정한 양 만큼의 데이타를 보내고, 데이타를 모두
수신했다는 응답을 받을 떄까지 시간을 측정하여 전송량으로 나누어 네트웍 전송 속도를 측정한다.
jnetperf 명령어는 네트웍 전송 속도가 제대로 설정되었는지 확인 해보거나, 전송 품질을 테스트해 보는
용도로 사용할 수 있다.
(네트웍 성능을 정확히 측정하기 위해서는 네트웍 장비에서 측정하는 것이 정확하다.)
다음은 -s 옵션을 사용하여 전송할 데이타의 크기를 100 MB로 지정하여 실행한다.
# /opt/JSparm/bin/jnetperf -s 100m 192.168.100.1
TCP: sending 100 MB 0.792284 microsec, 127.22 MB/sec (write unit=32 KB)
|
-1 옵션을 사용하면, 1초 동안 데이타를 전송하고, 전송한 데이타를 받았는지 매번 확인하고 계속 데이타를
전송한다.
# /opt/JSparm/bin/jnetperf -1 192.168.100.1
TCP-sync: sending 46.28 MB 0.999828 microsec, 46.29 MB/sec count=1481 (write unit=32 KB)
|
다음은 jnetperf 명령어의 옵션이다.
옵션 | 설명 |
-1 |
-1 옵션을 지정하면, 1 초 동안, 매번 데이타를 전송하고 전송한 데이타를 받을 것을 확인하며 계속 데이타를 전송한다.
한번에 전송하는 데이타의 양은 디폴트로 32 KB 를 전송하며, -b 옵션으로 크기를 변경할 수 있다.
-1 옵션이 없으면, -s 옵션에 지정된 양의 데이타를 -b 옵션에 지정된 크기로 데이타를
계속 전송한다.
데이타를 다 전송한 후에 최종적으로 데이타를 다 받았는지 한번의 응답을 받는다.
|
-B socket_bufsize |
-B 옵션을 지정하여 socket의 send/receive 버퍼의 크기를 지정할 수 있다.
|
-b bufsize |
-b 옵션을 지정하여 write() 시스템 콜에서 사용되는 버퍼의 크기를 지정할 수 있다.
디폴트는 32 KB 이다.
|
-p port |
-p 옵션을 지정하여 TCP 포트 번호를 지정할 수 있다.
디폴트 포트 번호는 12121 번이다.
|
-S |
-S 옵션을 지정하면, TCP 데이타를 수신하는 서버 모드로 동작한다.
서버 모드로 동작하면, Ctrl-C 로 종료할 때까지, 소켓 접속을 순차적으로 처리한다.
|
-s size |
-s 옵션을 사용하여 전송할 데이타의 크기를 지정할 수 있다.
디폴트는 10 MB 이다.
데이타의 크기를 지정할 때, 숫자의 끝에 단위를 붙여야 한다.
G = Giga byte
M = Mega byte
K = Kilo byte
B = Byte
|
-V |
-V 옵션을 지정하면, 명령어의 버전 정보를 보여준다.
|
-v |
-v 옵션을 지정하면, socket 버퍼의 크기와 write 버퍼의 크기를 보여준다.
-S 옵션과 함께 사용되면, 수신 받은 데이타의 크기를 출력한다.
|
|