What Bandwidth Tiers Do EC2 C-Series Instances Offer?
Amazon EC2 compute-optimized C-series bare metal and high-end virtual instances provide dedicated networking bandwidth tiers ranging from twenty-five gigabits per second on standard large instances up to two hundred gigabits per second on network-optimized fifth, sixth, seventh, and eighth generation servers. This guide covers the exact network throughput tiers across C5, C6i, C6gn, C7g, C7i, and C8g instance families, how AWS Nitro cards allocate network capacity, the role of Elastic Fabric Adapter in high-performance computing, and the mathematical formulas used to calculate packet throughput and data transfer performance.
Overview of EC2 C-Series Networking Architecture
Amazon EC2 C-series instances are engineered for compute-intensive workloads such as high-performance computing (HPC), batch processing, distributed analytics, media transcoding, and high-throughput network appliances. In modern EC2 generations built on the AWS Nitro System, networking functions are offloaded to dedicated hardware cards, freeing host CPU cores exclusively for application processing.
Networking performance on EC2 C-series instances is governed by two primary factors:
- Instance Size: Network bandwidth scales
proportionally with the number of virtual CPUs (vCPUs) allocated to an
instance. Smaller instances receive baseline bandwidth with burst
capabilities via network I/O credit mechanisms, whereas high-end
.8xlarge,.12xlarge,.16xlarge,.24xlarge,.48xlarge, and.metalsizes receive guaranteed sustained bandwidth. - Network-Optimized Variants (
nsuffix): Instances denoted with annsuffix (such asc5n,c6in, andc6gn) integrate higher-capacity Nitro controllers to deliver elevated bandwidth and packet-per-second (PPS) performance at every vCPU tier compared to standard counterparts.
Networking Bandwidth Tiers by C-Series Generation
High-end virtual instances and bare metal instances within the C-series family fall into distinct sustained bandwidth tiers ranging from \(25\text{ Gbps}\) to \(200\text{ Gbps}\). The table below details the sustained bandwidth tiers across major high-end and bare metal C-series offerings.
| Instance Family | High-End / Metal Sizes | Sustained Bandwidth Tier | ENA Express Support | EFA Support |
|---|---|---|---|---|
| C5 | c5.12xlarge /
c5.24xlarge, c5.metal |
\(12\text{ Gbps}\) / \(25\text{ Gbps}\) | No | No |
| C5n | c5n.9xlarge /
c5n.18xlarge, c5n.metal |
\(50\text{ Gbps}\) / \(100\text{ Gbps}\) | Yes (18xlarge,
metal) |
Yes (18xlarge,
metal) |
| C6i / C6a | 16xlarge /
24xlarge / 32xlarge, metal |
\(25\text{ Gbps}\) / \(37.5\text{ Gbps}\) / \(50\text{ Gbps}\) | Yes (32xlarge,
metal) |
Yes (32xlarge,
metal) |
| C6in | c6in.16xlarge /
c6in.24xlarge / c6in.32xlarge,
c6in.metal |
\(100\text{ Gbps}\) / \(150\text{ Gbps}\) / \(200\text{ Gbps}\) | Yes | Yes (32xlarge,
metal) |
| C6gn | c6gn.12xlarge /
c6gn.16xlarge |
\(75\text{ Gbps}\) / \(100\text{ Gbps}\) | Yes (16xlarge) |
Yes (16xlarge) |
| C7g | c7g.12xlarge /
c7g.16xlarge, c7g.metal |
\(22.5\text{ Gbps}\) / \(30\text{ Gbps}\) | Yes (16xlarge,
metal) |
No |
| C7gn | c7gn.12xlarge /
c7gn.16xlarge, c7gn.metal |
\(150\text{ Gbps}\) / \(200\text{ Gbps}\) | Yes | Yes (16xlarge,
metal) |
| C7i | c7i.16xlarge /
c7i.24xlarge / c7i.48xlarge,
c7i.metal-24xl, c7i.metal-48xl |
\(25\text{ Gbps}\) / \(37.5\text{ Gbps}\) / \(50\text{ Gbps}\) | Yes (24xlarge+,
metal) |
Yes (48xlarge,
metal-48xl) |
| C7a | c7a.24xlarge /
c7a.32xlarge / c7a.48xlarge,
c7a.metal-48xl |
\(25\text{ Gbps}\) / \(33.33\text{ Gbps}\) / \(50\text{ Gbps}\) | Yes (48xlarge,
metal) |
Yes (48xlarge,
metal) |
| C8g | c8g.24xlarge /
c8g.48xlarge, c8g.metal-24xl,
c8g.metal-48xl |
\(37.5\text{ Gbps}\) / \(75\text{ Gbps}\) | Yes | No |
The 25 Gbps to 30 Gbps Tier (Baseline High-End Compute)
In fifth-generation (c5.24xlarge, c5.metal)
and seventh-generation Arm-based Graviton3 instances
(c7g.16xlarge, c7g.metal), the top-level
sustained networking tier sits between \(25\text{ Gbps}\) and \(30\text{ Gbps}\). These instances are
designed for compute-bound workloads where inter-node communication is
moderate, such as web application servers, video encoding farms, and
independent simulation nodes.
The 50 Gbps to 75 Gbps Tier (Modern Standard High-End and Metal)
Sixth- and seventh-generation x86 instances
(c6i.32xlarge, c6i.metal,
c6a.48xlarge, c6a.metal,
c7i.48xlarge, c7i.metal-48xl,
c7a.48xlarge, c7a.metal-48xl) elevate the
standard non-n maximum network bandwidth to \(50\text{ Gbps}\). With the introduction of
Graviton4-powered c8g.48xlarge and
c8g.metal-48xl instances, AWS increased the baseline
maximum tier for standard compute instances to \(75\text{ Gbps}\), alongside \(60\text{ Gbps}\) of dedicated Amazon EBS
bandwidth.
The 100 Gbps Tier (First-Wave Network-Optimized Compute)
For workloads requiring high data ingestion rates or tightly coupled
MPI (Message Passing Interface) communications,
c5n.18xlarge, c5n.metal, and Graviton2-based
c6gn.16xlarge provide \(100\text{
Gbps}\) of sustained network throughput. This tier also appears
on mid-sized sixth- and seventh-generation network-optimized instances
such as c6in.16xlarge and c7gn.8xlarge.
The 150 Gbps to 200 Gbps Tier (Ultra-High Throughput Compute)
The highest networking tiers on general C-series instances are
delivered by c6in (Intel Xeon Scalable) and
c7gn (AWS Graviton3E) families:
- \(150\text{ Gbps}\)
Tier: Available on
c6in.24xlargeandc7gn.12xlargeinstances. - \(200\text{ Gbps}\)
Tier: Available on
c6in.32xlarge,c6in.metal,c7gn.16xlarge, andc7gn.metal. These instances utilize multiple AWS Nitro cards (or dual-card configurations) to double the collective throughput and achieve up to \(2\times\) higher packet-processing performance per vCPU for network virtual appliances (firewalls, routers, load balancers) and distributed data analytics.
Single-Flow Bandwidth vs. Aggregate Multi-Flow Bandwidth
Achieving the full advertised bandwidth tier (\(50\text{ Gbps}\), \(100\text{ Gbps}\), or \(200\text{ Gbps}\)) requires understanding how EC2 enforces traffic limits per network flow.
By default, a single TCP or UDP flow between two instances within the same Availability Zone or across a Virtual Private Cloud (VPC) is capped at \(5\text{ Gbps}\) (or up to \(10\text{ Gbps}\) when placed in a cluster placement group). Therefore, to saturate an aggregate bandwidth tier \(B_{\text{total}}\), an application must distribute traffic across \(N\) parallel 5-tuple network flows:
\[N_{\text{flows}} \ge \left\lceil \frac{B_{\text{total}}}{B_{\text{flow}}} \right\rceil\]
For example, saturating a \(100\text{
Gbps}\) c5n.metal instance using standard \(5\text{ Gbps}\) flows requires at
least:
\[N_{\text{flows}} = \frac{100\text{ Gbps}}{5\text{ Gbps}} = 20\text{ parallel flows}\]
Increasing Single-Flow Bandwidth with ENA Express
High-end and metal C-series instances supporting ENA
Express (which uses the AWS Scalable Reliable Datagram, or SRD,
protocol directly on the Nitro hardware) raise the maximum single-flow
bandwidth limit from \(5\text{ Gbps}\)
to \(25\text{ Gbps}\). When ENA Express
is enabled between two compatible instances in the same Availability
Zone, the number of flows required to saturate a \(200\text{ Gbps}\) c6in.metal
instance drops significantly:
\[N_{\text{flows, ENA Express}} = \frac{200\text{ Gbps}}{25\text{ Gbps}} = 8\text{ parallel flows}\]
ENA Express also reduces tail latency (\(P_{99}\) and \(P_{99.9}\)) by dynamically routing packets across multiple equal-cost paths in the AWS data center fabric and recovering from packet drops directly on the Nitro card rather than waiting for OS TCP retransmissions.
Elastic Fabric Adapter (EFA) and OS-Bypass Networking
On the largest virtual sizes and .metal tiers of
c5n, c6i, c6in,
c6gn, c7g, c7gn,
c7i, and c7a, AWS offers support for
Elastic Fabric Adapter (EFA). EFA is a network
interface designed for applications requiring high levels of inter-node
communications at scale, such as computational fluid dynamics (CFD),
weather modeling, and distributed machine learning training.
Key technical characteristics of EFA on high-end C-series instances include:
- OS-Bypass: EFA allows applications using Libfabric (via OpenMPI, Intel MPI, or NCCL) to communicate directly with the Nitro network hardware without traversing the operating system kernel TCP/IP stack.
- SRD Transport Protocol: Instead of traditional InfiniBand RDMA over Converged Ethernet (RoCE), EFA uses AWS SRD to spray packets across hundreds of network paths simultaneously, avoiding head-of-line blocking and network congestion hot spots.
- Multi-Card Scaling: On \(200\text{ Gbps}\) instances such as
c6in.metalandc7gn.metal, users can attach up to two ENA/EFA interfaces associated with separate Nitro cards to achieve maximum line-rate RDMA-like throughput.
Calculating Throughput and Packet-Per-Second (PPS) Limits
Network performance on EC2 C-series instances is constrained by both bit-rate bandwidth (\(B\)) and packet-per-second (\(R_{\text{PPS}}\)) hardware limits on the Nitro card.
To convert a sustained bandwidth tier \(B\) (in \(\text{Gbps}\)) into theoretical maximum byte throughput \(T\) (in \(\text{GB/s}\), where \(1\text{ Byte} = 8\text{ bits}\)):
\[T = \frac{B}{8}\]
For a \(200\text{ Gbps}\) instance
(c6in.metal or c7gn.metal):
\[T = \frac{200\text{ Gbps}}{8} = 25\text{ GB/s}\]
When accounting for Ethernet frame overhead, IPv4 headers (\(20\text{ bytes}\)), and TCP headers (\(20\text{ bytes}\)), the effective payload throughput \(T_{\text{eff}}\) for a given Maximum Transmission Unit (\(\text{MTU}\)) is expressed as:
\[T_{\text{eff}} = \frac{B}{8} \times \left( \frac{\text{MTU} - 40}{\text{MTU} + 38} \right)\]
Within an Amazon VPC, high-end C-series instances support Jumbo Frames (\(\text{MTU} = 9001\text{ bytes}\)) for intra-VPC traffic. Comparing standard Ethernet frames (\(\text{MTU} = 1500\text{ bytes}\)) against Jumbo Frames (\(\text{MTU} = 9001\text{ bytes}\)) at \(100\text{ Gbps}\):
With \(\text{MTU} = 1500\text{ bytes}\): \[R_{\text{PPS}} = \frac{100 \times 10^9\text{ bits/s}}{(1500 + 38) \times 8\text{ bits}} \approx 8.13 \times 10^6\text{ PPS}\]
With \(\text{MTU} = 9001\text{ bytes}\): \[R_{\text{PPS}} = \frac{100 \times 10^9\text{ bits/s}}{(9001 + 38) \times 8\text{ bits}} \approx 1.38 \times 10^6\text{ PPS}\]
Using \(\text{MTU} = 9001\) reduces
the packet-per-second processing burden by nearly \(83\%\), allowing high-end and bare metal
C-series instances to reach their full \(100\text{ Gbps}\) or \(200\text{ Gbps}\) bandwidth ceiling without
hitting PPS throttling limits. For workloads that specifically process
small packets (such as VoIP, DNS servers, or packet inspection
appliances), c7gn and c6in metal instances
provide specialized multi-Nitro-card architectures capable of handling
tens of millions of packets per second.