GCP provides two load balancers namely Network and HTTP(s) where the former works on layer 4 and the later works on layer 7.
There is also a documentation which states that even HTTP traffic can be load balanced by a network load balancer. This slightly confuses which load balancer to choose for a web app in GCP. It is better to understand the differences before selecting one for the project.
What are the differences between them based on the workflow, setup, region/zone based, options for session affinity, and other settings?