Linux에서 iperf3 도구를 사용하여 네트워크 처리량을 테스트하는 방법


iperf3 은 실시간 네트워크 처리량 측정을 수행하는 무료 오픈 소스 크로스 플랫폼 명령 행 기반 프로그램입니다. 이것은 IP 네트워크에서 달성 가능한 최대 대역폭 ( IPv4 IPv6 지원)을 테스트하기위한 강력한 도구 중 하나입니다.

iperf 를 사용하면 TCP, UDP, SCTP와 같은 타이밍, 버퍼 및 프로토콜과 관련된 여러 매개 변수를 조정할 수 있습니다. 네트워크 성능 튜닝 작업에 유용합니다.

최대 또는 다소 향상된 네트워크 성능을 얻으려면 네트워크의 수신 및 전송 기능의 처리량과 대기 시간을 늘려야합니다. 그러나 실제 튜닝을 시작하기 전에 튜닝 프로세스를 안내 할 전반적인 네트워크 성능 통계를 수집하려면 몇 가지 테스트를 수행해야합니다.

그 결과는 초 단위의 시간 간격, 전송 된 데이터, 대역폭 (전송 속도), 손실 및 기타 유용한 네트워크 성능 매개 변수를 포함합니다. 이것은 주로 특정 경로를 통한 TCP 연결 조정에 도움을주기위한 것으로이 가이드에서 중점적으로 다룰 내용입니다.

  • Two networked computers which both have iperf3 installed.

Linux 시스템에 iperf3을 설치하는 방법

iperf3 을 사용하기 전에 벤치마킹에 사용할 두 대의 컴퓨터에 설치해야합니다. iperf3 은 가장 일반적인 Linux 배포판의 공식 소프트웨어 저장소에서 사용할 수 있으므로 그림과 같이 패키지 관리자를 사용하여 쉽게 설치할 수 있습니다.

$ sudo apt install iperf3	#Debian/Ubuntu
$ sudo yum install iperf3	#RHEL/CentOS
$ sudo dnf install iperf3	#Fedora 22+ 

두 시스템 모두에 iperf3 을 설치하면 네트워크 처리량 테스트를 시작할 수 있습니다.

Linux 서버 간의 네트워크 처리량을 테스트하는 방법

Firt는 -s 플래그를 사용하여 서버 모드에서 서버 및 방화벽 iperf3 으로 사용할 원격 시스템에 연결하면 포트에서 수신 대기합니다 5201 : 기본적으로

Kbits , Mbits 에 대해 형식을 k , m , g KBytes , Mbytes에 대해 Gbits 또는 K , M , G -f 스위치를 사용하여보고 할 수 있습니다 (예 : , Gbytes ).

$ iperf3 -s -f K 

서버의 다른 프로그램에서 포트 5201 을 사용하는 경우 -p 스위치를 사용하여 다른 포트 (예 : 3000 )를 지정할 수 있습니다 표시됩니다.

$ iperf 3 -s -p 3000

선택적으로, 다음과 같이 -D 플래그를 사용하여 서버를 데몬으로 실행하고 서버 메시지를 로그 파일에 쓸 수 있습니다.

$ iperf 3 -s -D > iperf3log 

그런 다음 -c 를 사용하여 클라이언트 모드에서 iperf3 을 실행하여 클라이언트 (실제 벤치마킹이 수행되는 곳) 플래그를 지정하고 서버가 실행중인 호스트를 지정하십시오 (IP 주소 또는 도메인 또는 호스트 이름 사용).

$ iperf 3 -c 192.168.10.1 -f K

18 에서 20 초 후에 클라이언트는 종료해야하며 다음 스크린 샷과 같이 벤치 마크의 평균 처리량을 나타내는 결과를 생성해야합니다.

빨간

Linux에서 고급 네트워크 테스트 처리량을 처리하는 방법

아래에 설명 된대로 고급 테스트를 수행하기위한 클라이언트 별 옵션이 많이 있습니다.

주어진 시간에 네트워크의 데이터 양을 결정하는 중요한 요소 중 하나는 TCP 창 크기입니다. TCP 연결을 조정하는 것이 중요합니다. 그림과 같이 -w 플래그를 사용하여 창 크기/소켓 버퍼 크기를 설정할 수 있습니다.

$ iperf 3 -c 192.168.10.1 -f K -w 500K	

서버 가 전송되고 클라이언트 가 수신하는 역방향 모드 에서 실행하려면 -R 스위치를 추가하십시오.

$ iperf 3 -c 192.168.10.1 -f K -w 500K -R	

양방향 테스트 를 실행하려면 양방향으로 동시에 대역폭을 측정해야하므로 -d 옵션을 사용하십시오.

$ iperf 3 -c 192.168.10.1 -f K -w 500K -d

클라이언트 결과에서 서버 결과 를 가져 오려면 - get-server-output 옵션을 사용하십시오.

$ iperf 3 -c 192.168.10.1 -f K -w 500K -R --get-server-output

또한 -P 옵션을 사용하여 동시에 실행되는 병렬 클라이언트 스트림 (이 예제에서는 두 개)의 수를 설정할 수도 있습니다.

$ iperf 3 -c 192.168.10.1 -f K -w 500K -P 2

자세한 내용은 iperf3 매뉴얼 페이지를 참조하십시오.

$ man iperf3

iperf3 홈페이지 : https://iperf.fr/

그게 다야! 실제 네트워크 성능 튜닝을 수행하기 전에 항상 네트워크 성능 테스트를 수행해야합니다. iperf3 은 네트워크 처리량 테스트 실행에 도움이되는 강력한 도구입니다. 의견을 공유하거나 질문 할 의향이 있으시면 아래의 의견 양식을 사용하십시오.