AWS] What is ELB? (There are different types of ALB/CLB/NLB)


What is ELB?

ELB is a service that automatically distributes incoming application traffic to multiple targets such as EC2 instances, containers, IP addresses, and Lambda functions.

The three types are as follows

  • CLB
  • ALB
  • NLB

Each is intended for load balancing, but for different purposes.


What is CLB?

CLB is an old type of ELB and is basically not used for web applications except for cases specific to CLB such as those requiring load balancing at Layer 4.



ALB Features

  • Supports Layer 7; HTTP/HTTPS listener
  • Path routing available
  • Charged by load balancer capacity unit (LCU) usage based on time
  • Use DNS when specifying IP address because IP address is variable
  • Cross-zone load balancing enabled by default


ALB can create listeners with rules that forward requests based on URL paths.

This method is called path routing.

If you have a group of EC2 instances performing multiple tasks, you can use path routing to route traffic to multiple back-end services in a single ALB.



Features of NLB

  • L4 NAT load balancer to support TCP listeners
  • Return traffic does not go through NLB
  • Charged by LCU usage based on time
  • Can add NLB subnets
  • Both DNS and IP are available due to fixed IP
  • Higher performance processing than ALB
  • Cross zone load balancing disabled by default


NLB is a high-performance load balancer capable of handling millions of requests per second, functioning at the fourth layer of the OSI model. Path routing is feasible, but high-performance ELBs for fairly large systems

The load balancing function performs load balancing of EC2 instances across multiple AZs according to the load of the EC2 instances under the control.


What is Connection Draining?

Connection Draining is a function that stops sending new requests to the backend instance when the instance is unregistered or an error occurs.


What is SSL Termination?

SSL Termination is a function that sets up SSL Termination in the ELB and performs SSL authentication on the load balancer side.

The function will coordinate the entire HTTPS encryption and decryption process (SSL termination) to be handled by Elastic LoadBalancer.


Related Services

Reference Site