ArticleslgStudy

computer science

Network load balancing

Network load balancing is a computer science topic covered in the lgStudy science library. This page brings together a partial reference excerpt, illustrations, worked examples, real-world applications and a short study plan, so you can understand Network load balancing rather than just read about it. In short: Network load balancing is the ability to balance traffic across two or more WAN links without using complex routing protocols like BGP. This capability balances network sessions like Web, email, etc. over multiple connections in order to spread out the amount of bandwidth used by each LAN user, thus increasing the total amount of bandwidth available.

Key takeaways

  • Network load balancing belongs to computer science; place it in that map before memorising details.
  • Learn the definition first, then one example that makes the definition concrete.
  • Connect Network load balancing to a quantity you can measure, compute or draw — that is where exam questions come from.
  • Reproduce the core statement of Network load balancing from memory before moving on to harder problems.

Reference excerpt

Network load balancing is the ability to balance traffic across two or more WAN links without using complex routing protocols like BGP. This capability balances network sessions like Web, email, etc. over multiple connections in order to spread out the amount of bandwidth used by each LAN user, thus increasing the total amount of bandwidth available. For example, a user has a single WAN connection to the Internet operating at 1.5 bit/s. They wish to add a second broadband (cable, DSL, wireless, etc.) connection operating at 2.5 bit/s. This would provide them with a total of 4 bit/s of bandwidth when balancing sessions. Session balancing does just that, it balances sessions across each WAN link. When Web browsers connect to the Internet, they commonly open multiple sessions, one for the text, another for an image, another for some other image, etc. These sessions can be balanced across the available connections. An FTP application only uses a single session so it is not balanced; however if a secondary FTP connection is made, then it may be balanced so that the traffic is distributed across two of the various connections and thus provides an overall increase in throughput. Additionally, network load balancing is commonly used to provide network redundancy so that in the event of a WAN link outage, access to network resources is still available via the secondary link(s). Redundancy is a key requirement for business continuity plans and generally used in conjunction with critical applications like VPNs and VoIP. Finally, most network load balancing systems also incorporate the ability to balance both outbound and inbound traffic. Inbound load balancing is generally performed via dynamic DNS which can either be built into the system, or provided by an external service or system. Having the dynamic DNS service within the system is generally thought to be better from a cost savings and overall control point of view.

Microsoft NLB Microsoft has also purchased a technology that it renamed Network Load Balancing (NLB) that allows for efficient utilization of multiple network cards. MS NLB can be configured in unicast or in multicast mode where in multicast mode you can enable IGMP snooping. MS NLB was introduced for the first time in Windows NT server to spread traffic over multiple hosts without the need for a hardware-based load balancer, e.g. when you host a busy web-server application where a single host wouldn't be able to manage all the traffic. And in more recent applications it would be used in Windows clusters for Hyper-V or Microsoft SQL Server

Unicast mode In unicast mode MS NLB reassigns the stations MAC address (which applies to the clusters IP address) to a virtual MAC address and all NIC's in the NLB cluster use this same MAC address. This setup will cause all incoming traffic for the cluster to be flooded to all ports of the switch as unknown unicast frames: even to hosts that are not joining in the cluster. To keep flooding minimal you would need to use a dedicated VLAN for the cluster.

Multicast mode Another option is to make NLB in multicast mode. The unicast IPv4 address of the cluster is linked to a multicast MAC address. The hosts is in the cluster will never send traffic to the switch using this MAC address with the cluster IPv4 address so one would need to create a static ARP entry on the router (layer 3) in the attached network. Not all vendors will allow you to create an ARP entry where you use a unicast IP address and a multicast MAC address. Cisco publishes some examples how to set up MS NLB on Catalyst switches running IOS and these same examples can be used for switches from many other vendors. As with NLB in unicast mode: incoming traffic towards the cluster will be flooded to all ports in the switch/VLAN and not all vendors support this setup. To limit the flooding, MS NLB now supports IGMP which should lead to the switches learning which ports are actually using the multicast address, but it doesn't always lead to the desired result. For example, Dell PowerConnect multi-layer switches officially don't support MS NLB in multicast. Even though it does work, it will lead to high CPU utilization - affecting (other) traffic in the switch and on other switches one might have other limitations such that the switch to which the NLB NICs are connected can't be the same switch that does the IP routing.

Server load balancing When multiple servers are joined to create a cluster. Clusters can use network load balancing whereby simultaneous cluster request are distributed between cluster servers. Round-robin DNS records is one form of cluster load balancing. It works by creating multiple host records (usually A and/or AAAA) for one machine. As clients make requests, DNS rotates through its list of records. In addition to the before mentioned, to configure a terminal server cluster, one needs a load-balancing technology such as Network Load Balancing (NLB) or DNS round robin. A load-balancing solution will distribute client connections to each of the terminal servers. Terminal Server Session Directory is a feature that allows users to easily and automatically reconnect to a disconnected session in a load-balanced terminal server farm. The session directory keeps a list of sessions indexed by username and server name. This enables a user, after disconnecting a session, to reconnect to the correct Terminal Server where the disconnected session resides in order to resume working in that session. This reconnection will work even if the user connects from a different client computer.

See also Network Load Balancing Services Load balancing (computing) Link aggregation

References

Worked examples

Example 1 — a first encounter with Network load balancing

Start with the simplest possible case. Write down what Network load balancing claims or describes in one sentence, then invent the smallest concrete situation in which that sentence is true. In computer science, the smallest case is usually a single object, a single equation or a single measurement. Check that every symbol or term in your sentence has a meaning in that case.

Example 2 — changing one variable

Take the situation from Example 1 and change exactly one quantity: double it, halve it, or set it to zero. Predict what should happen to Network load balancing before you calculate. Comparing your prediction with the result is the fastest way to find out whether you understand the idea or only the words.

Example 3 — an exam-style question

Typical questions about Network load balancing ask you to (a) state it precisely, (b) apply it to given data, and (c) explain a limitation. Practise writing all three answers in under five minutes; the third part is what separates a full-mark answer from an average one.

Applications of Network load balancing

In research
Network load balancing appears in computer science research whenever the underlying quantities have to be modelled precisely. Papers usually cite it as a starting assumption and then explore where it breaks down.
In technology and industry
Engineering practice reuses Network load balancing in design rules, simulations and safety margins. Knowing the idea lets you read a specification sheet and understand why the numbers look the way they do.
In the classroom
Network load balancing is common in secondary-school and first-year university syllabi. It links to neighbouring topics Internet architecture, Load balancing (computing), so understanding it makes those chapters shorter.
In everyday life
Look for Network load balancing outside the textbook — in sport, cooking, traffic, electronics or the sky above you. An example you found yourself is remembered far longer than one you were given.

Affiliate

Preply — study more efficiently by working with a personal tutor. 50% off.

How to study Network load balancing in 20 minutes

  1. Read the reference excerpt below once, without taking notes.
  2. Close the page and write down what Network load balancing means in your own words.
  3. Compare your version with the excerpt and mark what you missed.
  4. Work through the three examples above with pen and paper.
  5. Explain Network load balancing out loud to somebody else — or to Teacher Smith in the lgStudy chat.

Frequently asked questions

What is Network load balancing in simple terms?

Network load balancing is the ability to balance traffic across two or more WAN links without using complex routing protocols like BGP. This capability balances network sessions like Web, email, etc. over multiple connections in order to spread out the amount of bandwidth used by each LAN user, thu…

Why does Network load balancing matter?

Because it connects several computer science ideas at once: it gives you a definition you can apply, a quantity you can calculate, and a way to check whether a result is plausible.

How should I study Network load balancing?

Read the excerpt, restate it from memory, then work through the examples and applications listed on this page. The five-step study plan above takes about twenty minutes.

What does this page cover?

It gives you a compact reference excerpt plus original lgStudy explanations, examples, applications and study material on Network load balancing.

Tags

  • Internet architecture
  • Load balancing (computing)

Keep exploring