Amazon EC2 인스턴스 네트워크 대역폭
Amazon EC2 인스턴스 네트워크 대역폭 (Amazon EC2 instance network bandwidth)
인스턴스 대역폭 사양은 인스턴스의 인바운드 및 아웃바운드 트래픽 모두에 적용돼요. 예를 들어 인스턴스가 최대 10Gbps의 대역폭을 지정한다면 인바운드 트래픽에 최대 10Gbps, 동시에 아웃바운드 트래픽에도 최대 10Gbps를 의미해요. EC2 인스턴스에 사용할 수 있는 네트워크 대역폭은 다음과 같은 여러 요소에 따라 달라져요.
다중 흐름 트래픽 (Multi-flow traffic)
트래픽이 인터넷 게이트웨이나 로컬 게이트웨이를 통과할 때 다중 흐름 트래픽의 사용 가능한 대역폭은 인스턴스 유형에 따라 달라져요.
| 인스턴스 유형 | 사용 가능한 대역폭 |
|---|---|
| vCPU 32개 미만의 인스턴스 유형 | 5Gbps로 제한 |
| vCPU 32개 초과의 인스턴스 유형 | 인스턴스 유형의 사용 가능한 대역폭의 50%로 제한 |
| C8in, C8ine, M8in, M8ine, M8idn, R8in, R8idn 인스턴스 | 인스턴스 유형의 기본 대역폭으로 제한 |
단일 흐름 트래픽 (Single-flow traffic)
인스턴스가 같은 클러스터 배치 그룹(cluster placement group)에 없으면 단일 흐름 트래픽의 대역폭은 5Gbps로 제한돼요. 지연 시간을 줄이고 단일 흐름 대역폭을 늘리려면 다음 중 하나를 시도하세요:
- 클러스터 배치 그룹을 사용해 같은 배치 그룹 내 인스턴스에 대해 최대 10Gbps의 대역폭을 달성하세요.
- Multipath TCP(MPTCP)로 더 높은 대역폭을 달성하려면 두 엔드포인트 사이에 여러 경로를 설정하세요.
- 같은 가용 영역 내 자격이 되는 인스턴스에 ENA Express를 구성해 해당 인스턴스 사이에 최대 25Gbps를 달성하세요.
참고 단일 흐름은 고유한 5-튜플 TCP 또는 UDP 흐름으로 간주돼요. GRE나 IPsec 같은 IP 헤더를 따르는 다른 프로토콜의 경우 소스 IP, 대상 IP, 다음 프로토콜의 3-튜플이 흐름을 정의하는 데 사용돼요.
사용 가능한 인스턴스 대역폭 (Available instance bandwidth)
인스턴스의 사용 가능한 네트워크 대역폭은 vCPU 수에 따라 달라져요. 예를 들어 m5.8xlarge 인스턴스는 vCPU 32개와 10Gbps 네트워크 대역폭을 가지며, m5.16xlarge 인스턴스는 vCPU 64개와 20Gbps 네트워크 대역폭을 가져요. 그러나 인스턴스가 이 대역폭을 달성하지 못할 수도 있어요. 예를 들어 초당 패킷 수나 추적된 연결 수 같은 인스턴스 수준의 네트워크 허용량을 초과하는 경우 그렇지 않아요. 트래픽이 사용할 수 있는 사용 가능한 대역폭의 양은 vCPU 수와 대상에 따라 달라져요. 예를 들어 m5.16xlarge 인스턴스는 vCPU 64개를 가지므로 리전의 다른 인스턴스로의 트래픽은 사용 가능한 전체 대역폭(20Gbps)을 사용할 수 있어요. 그러나 인터넷 게이트웨이나 로컬 게이트웨이를 통과하는 트래픽은 사용 가능한 대역폭의 50%(10Gbps)만 사용할 수 있어요.
일반적으로 vCPU 16개 이하(4xlarge 및 더 작은 크기)의 인스턴스는 "최대" 지정 대역폭(예: "최대 10Gbps")으로 문서화돼요. 이러한 인스턴스에는 기본 대역폭이 있어요. 추가 수요를 충족하려면 네트워크 I/O 크레딧 메커니즘을 사용해 기본 대역폭을 초과하는 버스트를 할 수 있어요. 인스턴스는 인스턴스 크기에 따라 일반적으로 5~60분 동안 제한된 시간 동안 버스트 대역폭을 사용할 수 있어요.
인스턴스는 시작 시 최대 네트워크 I/O 크레딧 수를 받아요. 인스턴스가 네트워크 I/O 크레딧을 모두 소진하면 기본 대역폭으로 돌아가요. 실행 중인 인스턴스는 기본 대역폭보다 적은 네트워크 대역폭을 사용할 때마다 네트워크 I/O 크레딧을 적립해요. 중지된 인스턴스는 네트워크 I/O 크레딧을 적립하지 않아요. 버스트 대역폭은 공유 리소스이므로 크레딧을 사용할 수 있어도 인스턴스 버스트는 최선의 노력(best effort) 기준으로 이뤄져요.
인바운드 및 아웃바운드 트래픽에는 별도의 네트워크 I/O 크레딧 버킷이 있어요.
기본 및 버스트 네트워크 성능 (Base and burst network performance)
Amazon EC2 인스턴스 유형 안내서는 각 인스턴스 유형의 네트워크 성능과, 버스트 대역폭을 사용할 수 있는 인스턴스의 기본 네트워크 대역폭을 설명해요. 자세한 내용은 다음을 참고하세요:
- 네트워크 사양 – 범용
- 네트워크 사양 – 컴퓨팅 최적화
- 네트워크 사양 – 메모리 최적화
- 네트워크 사양 – 스토리지 최적화
- 네트워크 사양 – 가속 컴퓨팅
- 네트워크 사양 – 고성능 컴퓨팅
- 네트워크 사양 – 이전 세대
또는 명령줄 도구를 사용해 이 정보를 얻을 수 있어요. Amazon EC2 콘솔은 인스턴스 유형의 기본 네트워크 대역폭을 표시하지 않아요.
AWS CLI
describe-instance-types 명령을 사용해 인스턴스 유형에 대한 정보를 표시할 수 있어요. 다음 예시는 모든 C5 인스턴스에 대한 네트워크 성능 정보를 표시해요.
aws ec2 describe-instance-types \
--filters "Name=instance-type,Values=c5.*" \
--query "InstanceTypes[].[InstanceType, NetworkInfo.NetworkPerformance, NetworkInfo.NetworkCards[0].BaselineBandwidthInGbps] | sort_by(@,&[2])" \
--output table
다음은 예시 출력이에요. 출력에 기본 대역폭이 없으면 최신 버전의 AWS CLI로 업데이트하세요.
---------------------------------------------
| DescribeInstanceTypes |
+--------------+--------------------+-------+
| c5.large | Up to 10 Gigabit | 0.75 |
| c5.xlarge | Up to 10 Gigabit | 1.25 |
| c5.2xlarge | Up to 10 Gigabit | 2.5 |
| c5.4xlarge | Up to 10 Gigabit | 5.0 |
| c5.9xlarge | 12 Gigabit | 12.0 |
| c5.12xlarge | 12 Gigabit | 12.0 |
| c5.18xlarge | 25 Gigabit | 25.0 |
| c5.24xlarge | 25 Gigabit | 25.0 |
| c5.metal | 25 Gigabit | 25.0 |
+--------------+--------------------+-------+
PowerShell
Get-EC2InstanceType PowerShell 명령을 사용해 인스턴스 유형에 대한 정보를 표시할 수 있어요. 다음 예시는 모든 C5 인스턴스에 대한 네트워크 성능 정보를 표시해요.
Get-EC2InstanceType -Filter @{Name = "instance-type"; Values = "c5.*" } | `
Select-Object `
InstanceType,
@{Name = 'NetworkPerformance'; Expression = {($_.Networkinfo.NetworkCards.NetworkPerformance)}},
@{Name = 'BaselineBandwidthInGbps'; Expression = {($_.Networkinfo.NetworkCards.BaselineBandwidthInGbps)}} | `
Format-Table -AutoSize
다음은 예시 출력이에요.
InstanceType NetworkPerformance BaselineBandwidthInGbps
------------ ------------------ -----------------------
c5.4xlarge Up to 10 Gigabit 5.00
c5.xlarge Up to 10 Gigabit 1.25
c5.12xlarge 12 Gigabit 12.00
c5.9xlarge 12 Gigabit 12.00
c5.24xlarge 25 Gigabit 25.00
c5.metal 25 Gigabit 25.00
c5.2xlarge Up to 10 Gigabit 2.50
c5.large Up to 10 Gigabit 0.75
c5.18xlarge 25 Gigabit 25.00
인스턴스 대역폭 모니터링 (Monitor instance bandwidth)
CloudWatch 메트릭을 사용해 인스턴스 네트워크 대역폭과 전송·수신된 패킷을 모니터링할 수 있어요. 탄력적 네트워크 어댑터(ENA) 드라이버가 제공하는 네트워크 성능 메트릭을 사용해 트래픽이 Amazon EC2가 인스턴스 수준에서 정의하는 네트워크 허용량을 초과하는 시점을 모니터링할 수 있어요.
Amazon EC2가 인스턴스의 메트릭 데이터를 CloudWatch에 보내는 주기를 1분 주기 또는 5분 주기로 구성할 수 있어요. 네트워크 성능 메트릭이 허용량이 초과되고 패킷이 삭제되었음을 보여주는 반면 CloudWatch 인스턴스 메트릭은 그렇지 않을 수 있어요. 이는 인스턴스가 네트워크 리소스에 대한 수요가 짧게 급증(마이크로버스트라고 함)할 때 발생할 수 있지만, CloudWatch 메트릭은 이러한 마이크로초 단위 급증을 반영할 만큼 세밀하지 않아요.