Cloud Provider normally sets up LoadBalancer as a TCP Load Balancer.
The Kubernetes controller manager helps to provision a load balancer in the cloud and configures all the Kubernetes nodes into the load balancer network.
As each node in the pod is assumed to be running kube-proxy and listening to the specific NodePort where it can forward incoming requests to a pod that is available for the service
Because each node is assumed to be running kube-proxy it should be listening on the appropriate NodePort and then it can forward incoming requests to a pod that is available for the service.
As LoadBalancer is set to TCP by default, higher level features of HTTP LoadBalancer are not available.