Skip to content

Enhanced networking

Enhanced networking gives EC2 instances higher packet-per-second rates, lower inter-instance latency and less jitter than a software-emulated network adapter. It costs nothing extra and, on current instance families, is on by default.

Enhanced networking uses SR-IOV (Single Root I/O Virtualization), a hardware feature of the physical network card. SR-IOV lets one physical PCIe device present itself as many virtual functions, each of which can be assigned directly to a virtual machine. The guest talks to its virtual function without the hypervisor mediating every packet.

On Nitro-based instances the Nitro cards implement this, so each instance gets near-native network performance from hardware AWS owns and operates.

AdapterRoleStatus
Elastic Network Adapter (ENA)The current enhanced-networking adapter. Enabled by default on Nitro-based instance types.Current
Intel 82599 Virtual Function (VF)The original enhanced-networking adapter, used by pre-Nitro families such as C3, C4, R3, I2 and M4.Legacy

Peak bandwidth depends entirely on the instance type and size: small instances are metered in single-digit gigabits per second, while network-optimised sizes reach well over 100 Gbps. Check the network performance column for the specific instance type rather than quoting a single figure.

For workloads that need kernel bypass and MPI — HPC and distributed training — the answer is an Elastic Fabric Adapter rather than enhanced networking alone.

Choosing between the three interface types

Section titled “Choosing between the three interface types”
FeatureElastic Network Interface (ENI)Enhanced networking (ENA)Elastic Fabric Adapter (EFA)
PurposeGeneral network connectivityOptimised general networkingHPC and machine learning
TransportTCP/IP, UDP/IPTCP/IP, UDP/IPSRD plus libfabric
Kernel bypassNoNoYes
MPI and RDMA-style APIsNoNoYes
Multiple IP addressesYesYes (a property of the underlying ENI)Uses a single interface
Attach and detachYesBuilt into instance networkingEnabled at creation, fixed for the interface
Instance supportAll instance typesMost current-generation typesSelected HPC and ML instance types
ConfigurationManual attachment and IP configurationUsually on by default; older AMIs may need a driverRequires explicit enablement

Use an ENI when you want network segregation or several addresses at minimal cost. Rely on enhanced networking when you need reliable high bandwidth without special APIs. Choose EFA when the job is tightly coupled and latency between nodes decides the run time.

Current Amazon Linux, Ubuntu, Windows Server and Red Hat AMIs ship with the ENA driver. Custom or older images may need the driver installed and the enaSupport attribute set on the instance before enhanced networking becomes active.

Placement groups control where EC2 puts instances relative to each other, and they are the usual companion to enhanced networking because network performance depends on physical proximity as much as on the adapter.

Cluster. Instances are packed into a low-latency group within a single Availability Zone. This is what gets the most out of enhanced networking and EFA. Capacity is finite, so launch all the instances you need in one request rather than adding to the group later.

Spread. Each instance runs on distinct underlying hardware, and the group can span Availability Zones. There is a limit on running instances per group per Availability Zone. Use it for a small number of critical instances that must not fail together.

Partition. Instances are divided into partitions, and each partition sits on its own set of racks. This suits large distributed and replicated systems — an HDFS cluster, a Cassandra ring — where you want the placement of replicas to be visible to the application. Partition placement groups cannot be used with Dedicated Hosts.