|
iPerf3는 IP 네트워크에서 달성 가능한 최대 대역폭을 능동적으로 측정하기 위한 도구입니다. 타이밍, 버퍼 및 프로토콜(TCP, UDP, SCTP(IPv4 및 IPv6 포함))과 관련된 다양한 매개변수 조정을 지원합니다. 각 테스트에 대해 대역폭, 손실 및 기타 매개변수를 보고합니다. 이것은 원래 iPerf와 코드를 공유하지 않으며 이전 버전과 호환되지 않는 새로운 구현입니다. iPerf는 원래 NLANR/DAST에서 개발했습니다. iPerf3는 주로 ESnet/Lawrence Berkeley National Laboratory에서 개발했습니다.
iPerf 도구 제품군은 IP 네트워크에서 달성할 수 있는 최대 대역폭을 결정하기 위해 능동 측정을 수행합니다. 타이밍, 프로토콜 및 버퍼와 관련된 다양한 파라미터의 조정을 지원합니다. 각 테스트에 대해 측정된 처리량, 손실 및 기타 매개 변수를 보고합니다.
이 버전은 NLANR/DAST에서 개발한 원래 버전을 재설계한 것으로, 더 작고 단순한 코드베이스와 다른 프로그램에서 사용할 수 있는 함수 라이브러리 버전을 목표로 처음부터 새로 구현한 것입니다. 또한 원래 iperf에는 없었던 다른 도구(예: nuttcp 및 netperf)의 많은 기능을 통합합니다. 원래 iperf에서 누락되었던 기능들을 통합합니다. 예를 들어, 제로 카피 모드와 선택적 JSON 출력 등이 여기에 포함됩니다. iperf3는 기존 iperf와 하위 호환되지 않는다는 점에 유의하세요.
디바이스의 네트워크 통신 속도를 테스트하려면 한 대는 서버로, 다른 한 대는 클라이언트로 두 대의 컴퓨터에 iPerf3를 설치하고 iPerf3를 통해 서로 메시지를 전송하여 통신 속도를 테스트합니다.
iPerf3의 파라미터는 다음과 같습니다:
사용법: iperf [-s|-c 호스트] [옵션] iperf [-h|--help] [-v|--version]
서버 또는 클라이언트. -p, --port # 수신/연결할 서버 포트 -f, --format [kmgKMG] 보고할 형식: Kbits, Mbits, KBytes, MBytes -i, --interval # 주기적 대역폭 보고 간격(초) -F, --파일 이름 지정한 파일 송신/수신 -B, ---bind <host> 특정 인터페이스에 바인딩 -V, --더 자세한 출력 상세보기 -J, --json JSON 형식 출력 --logfile f 로그 파일로 출력 보내기 -d, --debug 디버깅 출력 내보내기 -v, --version 버전 정보를 표시하고 종료합니다. -h, --help 이 메시지를 표시하고 종료합니다. 서버별. -s, -서버 서버 모드에서 실행 -D, --daemon 서버를 데몬으로 실행합니다. -I, --pidfile 파일 PID 파일 쓰기 -1, --one-off 하나의 클라이언트 연결을 처리한 후 종료 클라이언트별. -c, --client <호스트> 클라이언트 모드로 실행, <호스트>에 연결 -u, --udp 사용 U -u, --udp TCP가 아닌 UDP 사용 -b, --bandwidth #[KMG][/#] 목표 대역폭(비트/초)(무제한의 경우 0) (기본값은 1Mbit/초 UDP의 경우 기본값 1Mbit/초, TCP의 경우 무제한) (옵션 슬래시 및 버스트 모드의 경우 패킷 수) -t, --time # 전송할 시간(초)(기본값 10초) -n, --bytes #[KMG] 전송할 바이트 수(-t 대신) -k, --blockcount #[KMG] 전송할 블록(패킷) 개수(-t 또는 -n 대신) -l, --len #[KMG] 읽거나 쓸 버퍼 길이 (기본값은 TCP의 경우 128KB, 8 KB, UDP의 경우 8KB) --cport <포트> 특정 클라이언트 포트에 바인딩 (TCP 및 UDP, 기본값. 임시 포트) -P, --parallel # 실행할 병렬 클라이언트 스트림 수 -R, -역방향 모드에서 역방향 실행(서버 전송, 클라이언트 수신) -w, --window #[KMG] 윈도우 크기/소켓 버퍼 크기 설정 -M, ---set-mss # TCP/SCTP 최대 세그먼트 크기 설정(MTU - 40바이트) -N, --no-delay TCP/SCTP 무지연 설정, Nagle 알고리즘 비활성화 -4, --version4 IPv4만 사용 -6, --version6은 IPv6만 사용 -S, ---tos N은 IP '서비스 유형'을 설정합니다. -Z, --zerocopy '제로 카피' 데이터 전송 방법을 사용합니다. -O, --omit N 처음 n초를 생략합니다. -T, ---title str 모든 출력 줄에 이 문자열을 접두사로 붙입니다. --get-server-output 서버에서 결과를 가져옵니다. --udp-counters-64bit는 UDP 테스트 패킷에서 64비트 카운터를 사용합니다.
[KMG]는 킬로, 메가 또는 기가 단위의 K/M/G 접미사를 지원하는 옵션을 나타냅니다.
IPERF3 홈페이지: http://software.es.net/iperf/ 버그 보고: https://github.com/esnet/iperf Windows 64비트 버전: https: //iperf.fr/download/windows/iperf-3.1.3-win64.zip
리눅스 서버, CentOS를 예로 들면, yum 명령어를 사용하여 iPerf3 도구를 설치할 수 있으며, 명령어는 다음과 같습니다:
서버 측
Linux 서버를 서버로 사용하려면 다음 명령을 실행합니다:
클라이언트
내 로컬 컴퓨터를 클라이언트로 삼아 다음 명령을 실행합니다:
참고: 192.168.50.227은 서버 측의 IP 주소입니다.
요약
서버 로그는 192.168.50.243, 소스 포트 22376에서 테스트 요청이 수신되었음을 보여줍니다. 클라이언트는 10초 동안 지속적으로 테스트 중이며 초당 전송된 바이트 수와 대역폭 정보를 표시하고, 테스트가 끝나면 송수신 통계가 요약되어 표시됩니다. 클라이언트 연결이 종료된 후에도 포트 5201에서 계속 수신 대기합니다.
호스트 192.168.50.227, 포트 5201에 연결하기 [4] 로컬 192.168.50.243 포트 22377이 192.168.50.227 포트 5201에 연결됨 [ID] 간격 전송 대역폭 [ 4] 0.00-1.00 초 112 MBytes 943 Mbits/sec [4] 1.00-2.00 초 112 MBytes 940 Mbits/sec [4] 2.00-3.00 초 112 MBytes 941 Mbits/sec [4] 3.00-4.00 초 112 MBytes 940 Mbits/sec [4] 4.00-5.00초 112메가바이트 941메가비트/초 [4] 5.00-6.00 초 112 MBytes 941 Mbits/sec [4] 6.00-7.00 초 112 MBytes 942 Mbits/sec [4] 7.00-8.00 초 112 MBytes 941 Mbits/sec [4] 8.00-9.00 초 112 MBytes 942 Mbits/sec [4] 9.00~10.00초 112 MB바이트 942 Mbits/sec [ID] 간격 전송 대역폭 [4] 0.00-10.00 초 1.10 GBytes 941 Mbits/sec & 발신자 [4] 0.00-10.00초 1.10 GBytes 941 Mbits/sec & nbsp; 발신자 수신자
iperf 완료. 서버 및 클라이언트 장치는 모두 기가비트 포트이고 라우터는 모두 기가비트 포트이므로 941Mbits/sec의 대역폭은 정상입니다.
ESXI에서 가상 머신 테스트
두 시스템 모두 CentOS 시스템이며, 물리적 라우터에 인트라넷 IP가 할당되어 있으며, 다음과 같이 인트라넷 IP를 통해 테스트를 수행합니다:
호스트 192.168.50.227, 포트 5201에 연결 중 [5] 로컬 192.168.50.131 포트 35394가 192.168.50.227 포트 5201에 연결됨 [ID] 간격 전송 비트 전송률 및 Retr Cwnd [ 5] 0.00-1.00 초 2.72 GBytes 23.3 Gbits/sec 0 1.39 MBytes [5] 1.00-2.00 초 2.74 GBytes 23.5 Gbits/sec 0 1.48 MBytes [5] 2.00-3.00 초 2.60 GBytes 22.3Gbits/sec 0 1.48 MBytes [5] 3.00-4.00초 2.58GBytes 22.2Gbits/sec 0 1.48 MBytes [5] 4.00-5.00초 2.67GBytes 23.0Gbits/sec 0 1.48 MBytes [5] 5.00-6.00초 2.65GBytes 22.7Gbits/sec 0 1.48 MBytes [5] 6.00-7.00초 2.67GBytes 23.0Gbits/sec 0 1.48 MBytes [5] 7.00-8.00초 2.64GBytes 22.7Gbits/sec 0 1.48 MBytes [5] 8.00-9.00초 2.63GBytes 22.6Gbits/sec 0 1.48 MBytes [5] 9.00-10.00초 2.67GBytes 22.9Gbits/sec 0 1.48 MBytes [ID] 간격 전송 비트 전송률 & Retr [ 5] 0.00-10.00 초 26.6 GBytes 22.8 Gbits/sec 0 Retr [ 5] 0.00-10.00 초 26.6 GBytes [ 5] 0.00-10.04초 26.6GBytes 22.7Gbits/sec & nbsp; 수신기 수신기
iperf 완료. 기가비트 라우터가 있고 테스트 인터넷 속도가 22.7Gbits/sec인데, 물리적 NIC를 거치지 않은 건가요?
정보 확인: https: //communities.vmware.com/t ... 경로/ta-p/2783083
VM1과 VM2는 "vSwitch1"이라는 동일한 vSwitch, 프로덕션이라는 동일한 포트 그룹 및 VLAN 20이라는 동일한 VLAN에 연결되어 있으며 둘 다 동일한 ESXi에서 실행 중입니다. ESX1이라는 동일한 ESXi 호스트에서 실행 중입니다. 이러한 VM(VM1 및 VM2) 간의 네트워크 트래픽은 ESXi 호스트의 물리적 NIC로 이동하지 않으며 이 프레임은 도 물리적 스위치 및 라우터와 같은 물리적 네트워크로 전달되지 않으며, VM이 vSwitch 내에서 통신하기 때문에 VM은 vSwitch 내에서 통신하므로 네트워크 속도가 향상되고 네트워크 지연 시간이 줄어듭니다. VM1과 VM2는 "vSwitch1"이라는 동일한 vSwitch, 프로덕션이라는 동일한 포트 그룹, VLAN 20이라는 동일한 VLAN에 연결되어 있으며 둘 다 ESX1이라는 동일한 ESXi 호스트에서 실행되고 있습니다. 이러한 VM(VM1 및 VM2) 간의 네트워크 트래픽은 ESXi 호스트의 물리적 NIC로 이동하지 않으며, VM이 vSwitch 내에서 통신하기 때문에 프레임이 물리적 네트워크 (물리적 스위치 및 라우터 등) 로 전달되지 않으므로 네트워크 속도가 빨라지고 네트워크 지연 시간이 줄어듭니다.
필자의 테스트 환경에서는 두 VM이 동일한 호스트, 동일한 vSwitch에 있지만 동일한 포트 그룹에 있지 않으며 물리적 NIC 또는 물리적 네트워크로 전달되지 않는 것처럼 보였습니다.
|
이전 기사: Windows에서 Word 문서에 Pandoc 일괄 마크다운 사용다음 글 : 요청 매개변수 값을 동적으로 수정하는 Spring Boot의 AOP
|