Deane shows you how to
enable enhanced networking
for your EC2 instances

deane-enable-configure-enhanced-networking

I am running an Amazon Elastic Compute Cloud (Amazon EC2) instance, and I want to enable enhanced networking. What is enhanced networking and when should I use it?

Enhanced networking provides higher bandwidth, higher packet-per-second (PPS) performance, and consistently lower inter-instance latencies.

If your packets-per-second rate appears to have reached its ceiling, you should consider moving to enhanced networking, because you have likely reached the upper thresholds of the virtual network interface driver.

Amazon EC2 instances have three different virtual network adapters that can be used:

Adapter Example Instance Types Kernel Module Windows Drivers Performance
VIF All xen-netfront Citrix or AWS PV Low to medium
Intel 82599 VF

C3, C4, D2, I2, R3 and M4 (excluding m4.16xlarge)

ixgbevf

Intel 82599 VF

Up to 10 Gbps

Elastic Network Adapter

C5, C5d, F1, G3, H1, I3, m4.16xlarge, M5, M5a, M5d, P2, P3, R4, R5, R5a, R5d, T3, u-6tb1.metal, u-9tb1.metal, u-12tb1.metal, X1, X1e and z1d

ena ena Up to 25 Gbps

Note: For the latest available instance types and adapters, see Enhanced Networking on Linux and Enabling Enhanced Networking with the Intel 82599 VF Interface on Windows Instances.

If your throughput is near or exceeding 20K packets per second (PPS) on the VIF driver, we strongly recommend enhanced networking.

Placement groups are recommended for applications that benefit from low network latency, high network throughput, or both. To provide the lowest latency and the highest packet-per-second network performance for your instances, consider using a placement group.

If you need to reach speeds up to 10 Gbps between instances, you should launch your instances into a placement group with the enhanced networking instance type.

If you need to reach speeds up to 25 Gbps between instances, you should launch instances in a placement group with ENA.

Linux

Depending on your instance and adapter type, follow either the guide for Enabling Enhanced Networking with the Intel 82599 VF Interface on Linux Instances or the guide for Enabling Enhanced Networking with the Elastic Network Adapter (ENA) on Linux Instances.

After you complete the steps for enabling the Enhanced Networking driver for your respective instance type, you might consider performing some network or kernel tuning. Note that the default network kernel parameters are fine to use for most workloads.

To gain as much system performance as possible requires research and testing to assess which changes should be made to the kernel for your given workload.

It's a best practice that you perform any tuning of the kernel based on observable behavior and metrics, and when possible, that you use the guidance provided by your respective operating system or application. For example, kernel tuning for a database server is different than that used for a webserver, as the characteristics of both workloads are different.

Windows

For enhanced networking, follow the guide for Enhanced Networking on Windows. The Elastic Network Interface driver is installed on all Amazon AMIs for Windows Server 2008 R2 and newer.

For Elastic Network Interface, follow the guide Enabling Enhanced Networking with the Elastic Network Adapter (ENA) on Windows Instances.


Did this page help you? Yes | No

Back to the AWS Support Knowledge Center

Need help? Visit the AWS Support Center

Published: 2016-01-27

Updated: 2019-01-11