What is the difference in load balancing and load sharing. Can you generalize load-balancing to layer two? Or layer three protocols also do this, except BGP?
FHRPs like VRRP, GLBP, and HSRP are essentially load sharing protocols (except GLBP though). Loop prevention mechanisms like MSTP, G.8032, and REP also do not do load balancing I guess. Instead they offer a way to distribute (share) traffic over multiple links unevenly. Why do people still call it load-balancing?
While link aggregation may truly be considered load balancing. Where traffic can be balanced based on a few attributes ( src-dst/mac, ip, port).
And what role does fast-switching/process-switching play in load balancing. I am aware that these are the very processes that ultimately do load-balancing, given enough equal cost paths. Does CEF really take load balancing to another level? It still does the same job, but by caching flow data (RIB) to the CEF table, doesn't it?
Incase of IGP, load-balancing may be possible, but BGP just doesn't support it. Because it only selects one best route (?). Even with multipath, BGP advertises best path only; it does install multiple routes in routing table though. So IGP does the balancing?