Passthrough Application Load Balancer

The documentation of Cloud Load Balancer says that Application Load Balancers are always proxy-based whereas Network load balancers have the option of proxy or pass through. I wanted to understand why Application load balancers are always proxy based. I realize my knowledge in networking is very limited, so if it's related to my understanding of how networks work, then any pointer would help, so I can do the relevant research. Right now I am at a dead end.

1 2 677
2 REPLIES 2

Hi,

I would suggest indicating your goal that you want to achieve so users from this community can share their recommendations with your technical configuration concern.

With your concern, Application load balancer plays in Layer 7 of the OSI layer. Their role is to distribute incoming http and https traffic and it will route it according to your application content. The best way to understand this is to study these documentations[1][2] of application load balancer.

For the Network Load balancer, this operates under the transport layer which is layer 4 of the OSI layer. The traffic it handles is TCP/UDP. Network Load balancer when in proxy mode it behaves similar to Application Load Balancer wherein it terminates the incoming connection and establishes new connections to the backend servers. If on pass-through mode, it simply forward the traffic to the backend without inspecting it. For more information you can study this documentation[3].

For in depth explanation for their difference you can check this documentation[4] wherein topology is also shared on how they works.

[1]https://cloud.google.com/load-balancing/docs/https
[2]https://cloud.google.com/load-balancing/docs/l7-internal#:~:text=A%20Google%20Cloud%20internal%20App....
[3]https://cloud.google.com/load-balancing/docs/load-balancing-overview#network-lb
[4]https://cloud.google.com/load-balancing/docs/load-balancing-overview#types_of_load_balancers

Hi,

My goal is academic, I do not have any configuration that I am setting up. I have read the documentation you have referenced and that does not provide the answer. All it says is that application load balancers are layer 7 proxy based and network load balancers are layer 4 proxy or pass through. Nowhere in all the documentation it mentions why pass through application load balancers are not an option. If you have come across that please share. I thought the answer would be along the lines of one of the below, but I am unable to work it out.

1) It is not a valid configuration, i.e., technically it is impossible to setup a pass through load balancer at layer 7

2) It is possible technically but there is no practical use case that it could solve

3) It is possible but can already be achieved through some other configuration

Again, my knowledge of networking is limited and I think the answer may seem obvious to many people but I do not understand it yet.