Direct Connect 네트워크 성능 문제를 해결하려면 어떻게 해야 하나요?
AWS Direct Connect 연결에 낮은 처리량, 트래픽 지연, 패킷 손실 등의 성능 문제가 있습니다.
해결 방법
참고: Amazon Virtual Private Cloud(VPC)를 사용하여 온프레미스 전용 테스트 머신을 설정하는 것이 좋습니다. Amazon Elastic Compute Cloud(Amazon EC2) 인스턴스 유형 크기 C5 이상을 사용하십시오.
네트워크 또는 애플리케이션 문제 확인
iPerf3 도구를 사용하여 네트워크 대역폭을 측정하고 다른 애플리케이션 또는 도구와 결과를 비교할 수 있습니다. 자세한 내용은 iPerf 웹 사이트에서 iPerf/iPerf3란 무엇인가요?를 참조하십시오.
다음 단계를 완료하십시오.
-
iPerf3를 설치하려면 사용하는 운영 체제(OS)에 맞게 다음 명령 중 하나를 실행합니다.
Linux 및 Red Hat Enterprise Linux(RHEL):
sudo yum install iperf3 -yUbuntu:
sudo apt install iperf3 -y -
처리량을 양방향으로 측정하려면 서버 및 클라이언트에 맞게 다음 iPerf3 명령을 실행합니다.
Amazon EC2 인스턴스(서버):
iperf3 -s -V온프레미스 로컬 호스트(클라이언트):
iperf3 -c <private IP of EC2> -P 15 -t 15 iperf3 -c <private IP of EC2> -P 15 -t 15 -R iperf3 -c <private IP of EC2> -w 256K iperf3 -c <private IP of EC2> -w 256K -R iperf3 -c <private IP of EC2> -u -b 1G -t 15 iperf3 -c <private IP of EC2> -u -b 1G -t 15 -R참고: -P는 병렬 스레드를 최대 처리량으로 설정합니다. -R은 테스트 방향을 바꾸고 -u는 TCP 대신 사용자 데이터그램 프로토콜(UDP)을 사용하여 패킷 손실을 측정합니다.
다음 예제 TCP 테스트 결과에서 비트레이트는 측정된 처리량 또는 전송 속도입니다. 전송은 클라이언트와 서버 간에 교환되는 데이터의 총량입니다. 재시도는 재전송된 패킷의 수입니다. 발신자 측에서 재전송이 발생합니다.
[ ID] Interval Transfer Bitrate Retry [SUM] 0.00-15.00 sec 7.54 GBytes 4.32 Gbits/sec 18112 sender [SUM] 0.00-15.00 sec 7.52 GBytes 4.31 Gbits/sec receiver
다음 예제 UDP 테스트 결과에서는 발신자 측 손실이 0%입니다. 발신자(ID)와 수신자(5) 쌍이 최대 수의 UDP 데이터그램을 전송했기 때문입니다. 손실/총 데이터그램은 수신자가 손실한 패킷 수와 손실률을 보여줍니다. 이 예에서는 수신기가 네트워크 트래픽의 79%를 잃었습니다.
[ ID] Interval Transfer Bitrate Jitter Lost/Total Datagrams [ 5] 0.00-15.00 sec 8.22 GBytes 4.71 Gbits/sec 0.000 ms 0/986756 (0%) sender [ 5] 0.00-15.00 sec 1.73 GBytes 989 Mbits/sec 0.106 ms 779454/986689 (79%) receiver
참고: Direct Connect 연결에서 퍼블릭 가상 인터페이스를 통해 AWS Site-to-Site VPN을 사용하는 경우 VPN 없이 성능 테스트를 실행하십시오.
지표 및 인터페이스 카운터 보기
Amazon CloudWatch Logs를 사용하면 문제 해결에 도움이 되는 지표를 볼 수 있습니다. 예를 들어 ConnectionErrorCount를 확인하고 AWS 디바이스의 미디어 액세스 제어(MAC) 오류를 나타내는 0이 아닌 값을 찾으십시오. ConnectionErrorCount 지표에 Sum 통계를 사용할 수 있습니다.
ConnectionLightLevelTx 및 ConnectionLightLevelRx를 보고 광학 신호 판독값이 -14.4 및 2.50dBm 범위 내에 있는지 확인합니다.
ConnectionBpsEgress, ConnectionBpsIngress, VirtualInterfaceBpsEgress 및 VirtualInterfaceBpsIngress를 보고 비트레이트가 최대 대역폭에 도달하지 않았는지 확인합니다.
자세한 내용은 Direct Connect 지표 및 차원을 참조하십시오.
전체 대역폭을 다른 사용자와 공유하는 호스팅된 가상 인터페이스를 사용하는 경우 Direct Connect 소유자에게 연결 사용률에 대해 문의하십시오. 자세한 내용은 하이브리드 네트워크 연결을 참조하십시오.
Direct Connect 위치의 라우터 및 방화벽에서 다음 문제를 확인합니다.
- CPU, 메모리, 포트 사용률, 드롭 및 삭제에 불규칙한 부분이 있는지 확인합니다.
- show interfaces statistics 명령을 실행하여 순환 중복 검사(CRC), 프레임, 충돌 및 이동통신사 오류와 같은 인터페이스 입력 및 출력 오류를 식별합니다.
- 인터페이스 오류가 증가하는 경우 광섬유 패치 케이블과 Small Form-factor Pluggable(SFP) 모듈을 청소하거나 교체하십시오.
또한 Direct Connect의 유지 관리 일정이 잡혀 있는지 확인하십시오.
MTR을 양방향으로 실행하여 네트워크 경로 확인
Linux용 My Traceroute(MTR) 명령을 실행하여 네트워크 성능을 분석합니다. Windows의 경우 Linux 하위 시스템에 MTR을 설치할 수 있도록 WSL 2를 켜는 것이 좋습니다. 자세한 내용은 Microsoft 웹 사이트에서 WSL 2의 새로운 기능을 참조하십시오. SourceForge 웹 사이트에서 WinMTR을 다운로드할 수 있습니다.
MTR을 양방향으로 실행하려면 다음 단계를 완료하십시오.
-
MTR을 설치하려면 OS에 대해 다음 명령 중 하나를 실행합니다.
Amazon Linux/RHEL:
sudo yum install mtr -yUbuntu:
sudo apt install mtr -y -
온프레미스에서 AWS로의 방향의 경우, 로컬 호스트(ICMP 및 TCP 기반)에서 MTR을 실행합니다.
mtr -n -c 100 <private IP of EC2> --report$ mtr -n -T -P <EC2 instance open TCP port> -c 100 <private IP of EC2> --report -
AWS에서 온프레미스로의 방향의 경우, EC2 인스턴스(ICMP 및 TCP 기반)에서 MTR을 실행합니다.
mtr -n -c 100 <private IP of the local host> --report$ mtr -n -T -P <local host open TCP port> -c 100 <private IP of the local host> --report
다음 예제 명령 및 출력은 ICMP 기반 MTR 결과를 보여줍니다.
mtr -n -c 100 192.168.52.10 --report Start: Sat Oct 30 20:54:39 2021 HOST: Loss% Snt Last Avg Best Wrst StDev 1.|-- 10.0.101.222 0.0% 100 0.7 0.7 0.6 0.9 0.0 2.|-- ??? 100.0 100 0.0 0.0 0.0 0.0 0.0 3.|-- 10.110.120.2 0.0% 100 266.5 267.4 266.4 321.0 4.8 4.|-- 10.110.120.1 54.5% 100 357.6 383.0 353.4 423.7 19.6 5.|-- 192.168.52.10 47.5% 100 359.4 381.3 352.4 427.9 20.6
다음 예제 명령 및 출력은 TCP 기반 MTR 결과를 보여줍니다.
mtr -n -T -P 80 -c 100 192.168.52.10 --report Start: Sat Oct 30 21:03:48 2021 HOST: Loss% Snt Last Avg Best Wrst StDev 1.|-- 10.0.101.222 0.0% 100 0.9 0.7 0.7 1.1 0.0 2.|-- ??? 100.0 100 0.0 0.0 0.0 0.0 0.0 3.|-- 10.110.120.2 0.0% 100 264.1 265.8 263.9 295.3 3.4 4.|-- 10.110.120.1 8.0% 100 374.3 905.3 354.4 7428. 1210.6 5.|-- 192.168.52.10 12.0% 100 400.9 1139. 400.4 7624. 1384.3
위 결과에서 홉의 각 줄은 데이터 패킷이 소스에서 대상으로 전달하는 네트워크 디바이스를 나타냅니다. MTR 테스트 결과를 읽는 방법에 대한 자세한 내용은 ExaVault 웹 사이트에서 MTR 출력 네트워크 진단 도구 읽기를 참조하십시오.
다음 예제 명령 및 출력은 ICMP 기반 MTR 결과를 보여줍니다.
mtr -n -c 100 192.168.52.10 --report Start: Sat Oct 30 20:54:39 2021 HOST: Loss% Snt Last Avg Best Wrst StDev 1.|-- 10.0.101.222 0.0% 100 0.7 0.7 0.6 0.9 0.0 2.|-- ??? 100.0 100 0.0 0.0 0.0 0.0 0.0 3.|-- 10.110.120.2 0.0% 100 266.5 267.4 266.4 321.0 4.8 4.|-- 10.110.120.1 54.5% 100 357.6 383.0 353.4 423.7 19.6 5.|-- 192.168.52.10 47.5% 100 359.4 381.3 352.4 427.9 20.6
다음 예제 명령 및 출력은 TCP 기반 MTR 결과를 보여줍니다.
mtr -n -T -P 80 -c 100 192.168.52.10 --report Start: Sat Oct 30 21:03:48 2021 HOST: Loss% Snt Last Avg Best Wrst StDev 1.|-- 10.0.101.222 0.0% 100 0.9 0.7 0.7 1.1 0.0 2.|-- ??? 100.0 100 0.0 0.0 0.0 0.0 0.0 3.|-- 10.110.120.2 0.0% 100 264.1 265.8 263.9 295.3 3.4 4.|-- 10.110.120.1 8.0% 100 374.3 905.3 354.4 7428. 1210.6 5.|-- 192.168.52.10 12.0% 100 400.9 1139. 400.4 7624. 1384.3
위의 예에서는 Border Gateway Protocol(BGP) 피어 10.110.120.1 및 10.110.120.2를 사용한 Direct Connect 연결을 보여줍니다. 네 번째, 다섯 번째 대상 홉의 손실률은 Direct Connect 연결 또는 원격 라우터 10.110.120.1에 문제가 있음을 보여줍니다. Direct Connect 연결은 ICMP보다 TCP를 우선시하므로 TCP MTR 결과의 손실률이 더 낮습니다.
다음 명령 및 출력 예에서는 로컬 방화벽 또는 NAT 디바이스 패킷 손실을 5%로 보여줍니다. 패킷 손실은 대상을 포함한 모든 후속 홉에 영향을 미칩니다.
mtr -n -c 100 192.168.52.10 --report Start: Sat Oct 30 21:11:22 2021 HOST: Loss% Snt Last Avg Best Wrst StDev 1.|-- 10.0.101.222 5.0% 100 0.8 0.7 0.7 1.1 0.0 2.|-- ??? 100.0 100 0.0 0.0 0.0 0.0 0.0 3.|-- 10.110.120.2 6.0% 100 265.7 267.1 265.6 307.8 5.1 4.|-- 10.110.120.1 6.0% 100 265.1 265.2 265.0 265.4 0.0 5.|-- 192.168.52.10 6.0% 100 266.7 266.6 266.5 267.2 0.0
패킷 캡처 및 결과 분석
로컬 호스트와 EC2 인스턴스에서 패킷을 캡처합니다. tcpdump 또는 Wireshark 유틸리티를 사용하여 분석할 네트워크 트래픽을 가져올 수 있습니다. tcpdump에 대한 자세한 내용은 tcpdump 웹 사이트의 tcpdump를 참조하십시오. Wireshark를 다운로드하려면 Wireshark 웹 사이트의 Wireshark 다운로드 페이지를 참조하십시오.
예를 들어 다음 tcpdump 명령을 실행하여 타임스탬프와 호스트 IP 주소를 가져옵니다.
tcpdump -i YOUR_NETWORK_INTERFACE -s0 -w $(date +"%Y%m%d_%H%M%S").$(YOUR_HOSTNAME -s).pcap port YOUR_PORT
참고: YOUR_NETWORK_INTERFACE를 해당 네트워크 인터페이스로, YOUR_HOSTNAME을 해당 호스트 이름으로, YOUR_PORT를 해당 포트로 바꾸십시오.
네트워크 제한, 대역폭 지연 제품, TCP 버퍼 크기를 계산하려면 Switch 웹 사이트의 TCP 처리량 계산기를 사용하십시오. 자세한 내용은 Direct Connect 문제 해결을 참조하십시오.
관련 정보
- 언어
- 한국어
