- ENI stands for Elastic Network Interface - essentially a virtual network card.
- ENI is used for basic networking.
- It allows:
- A primary private IPv4 address from the IPv4 address range of your VPC.
- One or more secondary private IPv4 addresses from the IPv4 address range of your VPC.
- One elastic IP address (IPv4) per private IPv4 address.
- One public IPv4 address.
- One or more IPv6 addresses.
- One or more security groups.
- A MAC address.
- A source/destination check flag.
- A description.
- Scenarios for ENI use:
- Create a management network.
- Use network and security appliances in your VPC.
- Create dual-homed instances with workloads/roles on distinct subnets.
- Create a low-budget, high-availability solution.
ENA
- EN stands for Enhanced Networking
- When you need speeds between 10Gbps and 100Gbps. Anywhere you need reliable, high throughput.
- Uses single root I/O virualization (SR-IOV) to provide high-performance nerworking capabilities on supported instance types.
- SR-IOV is a method of device virtualization that provides higher I/O performance and lower CPU utilization when compared to traditional virtualized network interfaces.
- Enhanced networking provides higher bandwidth, higher packet per second (PPS) performance, and consistently lower inter-instance latencies.
- There is no additional charge for using enhanced networking.
- Use where you want good networking performance.
- Depending on your instance type, enhanced networking can be enabled using:
- ENA (Elastic Network Adapter), which supports network speeds of up to 100Gbps for supported instance types.
- Intel 82599 Virtual Function (VF) interface, which supports network speeds of up to 10Gbps for supported instance types.
This is typically used on older instances.
- Most of the time you probably want to use ENA over VF!
EFA
- EFA stands for Elastic Fabric Adapter
- A network device that you can attach to your EC2 instance to accelerate High Performance Computing (HPC) and machine learning applications.
- EFA provides lower and more consistent latency and higher throughput than the TCP transport traditionally used in cloud-based HPC systems.
- EFA can use OS-bypass. OS-bypass enables HPC and machine learning applications to bypass the operating system kernel and to communicate directly with the EFA device.
- It makes it a lot faster with a lot lower latency.
- Not supported with Windows currently, only Linux.