다음을 통해 공유


Azure VM 간의 네트워크 대기 시간 테스트

이 문서에서는 공개적으로 사용 가능한 도구인 Windows용 Latte 또는 Linux용 SockPerf를 사용하여 Azure VM(가상 머신) 간의 네트워크 대기 시간을 테스트하는 방법을 설명합니다.

가장 정확한 결과를 얻으려면 작업용으로 디자인되고 애플리케이션 대기 시간과 같은 다른 유형의 대기 시간을 제외하는 도구를 사용하여 VM 네트워크 대기 시간을 측정해야 합니다. Latte 및 SockPerf는 TCP(Transmission Control Protocol) 및 UDP(ser Datagram Protocol) 트래픽에 중점을 두어 가장 관련성이 큰 네트워크 대기 시간 결과를 제공합니다. 대부분의 애플리케이션은 이러한 프로토콜을 사용하며 이 트래픽은 애플리케이션 성능에 가장 큰 영향을 줍니다.

Ping과 같은 다른 많은 일반적인 네트워크 대기 시간 테스트 도구는 TCP 또는 UDP 트래픽을 측정하지 않습니다. Ping과 같은 도구는 애플리케이션에서 사용하지 않는 ICMP(Internet Control Message Protocol)를 사용합니다. ICMP 트래픽은 애플리케이션 트래픽과 다르게 처리될 수 있으며 애플리케이션 성능에 직접적인 영향을 주지 않습니다. ICMP 테스트 결과는 TCP 및 UDP를 사용하는 워크로드에 직접 적용되지 않습니다.

Latte 및 SockPerf는 TCP 또는 UDP 페이로드 배달 시간만 측정합니다. 이러한 도구는 다음 방법을 사용하여 두 물리적 컴퓨터 또는 가상 컴퓨터 간의 네트워크 대기 시간을 측정합니다.

  1. 하나는 보낸 사람으로 지정하고 다른 하나는 수신자로 지정하여 컴퓨터 간에 양방향 통신 채널을 만듭니다.
  2. 양방향으로 패킷을 보내고 받고 RTT(왕복 시간)를 측정합니다.

네트워크 대기 시간을 최적화하는 팁 및 모범 사례

네트워크 대기 시간에 맞춰 VM을 최적화하려면 VM을 만들 때 다음 권장 사항을 준수합니다.

  • 최신 버전의 Windows 또는 Linux를 사용합니다.
  • 성능 향상을 위해 가속화된 네트워킹을 사용하도록 설정합니다.
  • Azure 근접 배치 그룹 내에 VM을 배포합니다.
  • 더 나은 성능을 위해 더 큰 VM을 만듭니다.

다음 모범 사례를 사용하여 네트워크 대기 시간을 테스트하고 분석합니다.

  1. 네트워크 VM 배포, 구성 및 최적화를 완료하는 즉시 배포된 VM 간에 기준 네트워크 대기 시간 측정을 수행하여 벤치마크를 설정합니다.

  2. 다음 구성 요소 중 하나를 변경할 때 네트워크 대기 시간에 미치는 영향을 테스트합니다.

    • OS(운영 체제) 또는 네트워크 스택 소프트웨어(구성 변경 포함)
    • VM 배포 방법(예: 가용성 영역 또는 PPG(근접 배치 그룹)에 배포).
    • 가속화된 네트워킹 또는 크기 변경과 같은 VM 속성
    • 라우팅 또는 필터링 변경과 같은 가상 네트워크 구성입니다.
  3. 제어된 변경 전에 항상 새 테스트 결과를 기준 또는 최신 테스트 결과와 비교합니다.

  4. 변경 내용을 관찰하거나 배포할 때마다 테스트를 반복합니다.

Latte 또는 SockPerf를 사용하여 VM 테스트

다음 절차에 따라 Windows용 Latte 또는 Linux용 SockPerf를 사용하여 네트워크 대기 시간을 설치하고 테스트합니다.

Latte 설치 및 VM 구성

  1. c:\tools와 같은 별도의 폴더에 최신 버전의 latte.exe를 두 VM에 다운로드합니다.

  2. 수신기 VM에서 Latte 트래픽 도착을 허용하는 Windows Defender Firewall allow 규칙을 만듭니다. 특정 인바운드 TCP 포트를 허용하는 것보다 이름으로 latte.exe 프로그램을 허용하는 것이 더 쉽습니다. 명령에서 <path> 자리 표시자를 latte.exe를 다운로드한 경로(예: c:\tools\)로 바꿉니다.

    netsh advfirewall firewall add rule program=<path>latte.exe name="Latte" protocol=any dir=in action=allow enable=yes profile=ANY
    

VM에서 Latte 실행

PowerShell이 아닌 Windows 명령줄에서 latte.exe를 실행합니다.

  1. 수신기 VM에서 다음 명령을 실행하여 <receiver IP address>, <port><iterations> 자리 표시자를 사용자 고유의 값으로 바꿉니다.

    latte -a <receiver IP address>:<port> -i <iterations>
    
    • 약 65,000회 반복하면 대표적인 결과를 반환하기에 충분합니다.
    • 사용 가능한 포트 번호는 모두 충분합니다.

    다음 예제에서는 IP 주소가 10.0.0.4인 VM에 대한 명령을 보여줍니다.

    latte -a 10.0.0.4:5005 -i 65100

  2. 보낸 사람 VM에서 클라이언트 또는 보낸 사람 VM을 나타내는 추가된 -c을 제외하고 수신자에서와 동일한 명령을 실행합니다. 다시 <receiver IP address>, <port><iterations> 자리 표시자를 고유한 값으로 바꿉니다.

    latte -c -a <receiver IP address>:<port> -i <iterations>
    

    예시:

    latte -c -a 10.0.0.4:5005 -i 65100

  3. 결과를 기다립니다. VM이 얼마나 떨어져 있는지에 따라 테스트를 완료하는 데 몇 분 정도 걸릴 수 있습니다. 더 긴 테스트를 실행하기 전에 성공 여부를 테스트하려면 더 짧은 반복으로 시작하는 것이 좋습니다.

다음 단계