2
Most read
4
Most read
5
Most read
Load balancing

Ahmed Sherief Ahmed ELDakhakhny
    Twitter:@ahmd_sherief
    Facebook:goo.gl/9RKCH
Load-balancing
• Load balancing is a computer networking
   methodology to distribute workload across
  multiple computers or a computer cluster,
  network links, central processing units, disk
  drives, or other resources,
Goals Load-balancing
•   achieve optimal resource utilization
•   maximize throughput
•   minimize response time
•   avoid overload
•   Avoid crashing
?Why to Load-balance
• Scale applications / services
• Ease of administration / maintenance
   – Easily and transparently remove physical servers from
     rotation in order to perform any type of maintenance on
     that server.
• Resource sharing
   – Can run multiple instances of an application / service on a
     server; could be running on a different port for each
     instance; can load-balance to different port based on data
     analyzed.
Load-Balancing Algorithms
• Most predominant:
     – least connections: server with fewest number of flows gets the new
       flow request.
     – weighted least connections: associate a weight / strength for each
       server and distribute load across server farm based on the weights of
       all servers in the farm.
     – round robin: round robin thru the servers in server farm.
     – weighted round robin: give each server ‘weight’ number of flows in a
       row; weight is set just like it is in weighted least flows.
• There are other algorithms that look at or try to predict server
  load in determining the load of the real server.
•   Round-robin (RR) is one of the simplest scheduling algorithms for processes in an operating
    system. As the term is generally used, time slices are assigned to each process in equal portions
    and in circular order, handling all processes without priority
server Load-balancing
   SLB = Server Load-Balancer.
?What does a SLB do
• Gets user to needed resource:
   – Server must be available
   – User’s “session” must not be broken
       • If user must get to same resource over and over, the SLB device must
         ensure that happens (ie, session persistence)
• In order to do work, SLB must:
   – Know servers – IP/port, availability
   – Understand details of some protocols (e.g., FTP, SIP, etc)
• Network Address Translation, NAT:
   – Packets are re-written as they pass through SLB device.
How SLB Devices Make Decisions
•   The SLB device can make its load-balancing decisions based on several
    factors.
     – Some of these factors can be obtained from the packet headers (i.e., IP
       address, port numbers, etc.).
     – Other factors are obtained by looking at the data beyond the network
       headers. Examples:
         • HTTP Cookies
         • HTTP URLs
         • SSL Client certificate ??
•   The decisions can be based strictly on flow counts or they can be based on
    knowledge of application.
SLB: Architectures
• Traditional
  – SLB device sits between the Clients and the
    Servers being load-balanced.
• Distributed
  – SLB device sits off to the side, and only receives
    the packets it needs to based on flow setup and
    tear down.
SLB: Traditional View with NAT
                                    Server1



Client                    SLB       Server2



                                    Server3
SLB: Traditional View without NAT

                                  Server1



Client                  SLB       Server2



                                  Server3
SLB: Distributed Architecture
                                        FE    Server




   Client                               FE    Server




                                        FE    Server

   FE: Forwarding Engines, which are
. responsible for forwarding packets
  They ask the SLB device where to
                       .send the flow   SLB
Distributed Architecture: Sample Flow
                                                                                                    Server1
            TCP SYN: 1
                                                                        .flow goes to Server2: 4

   Client                                            FE
                                                                                                    Server2

                         .FE asks where to send flow: 2


                                                                                                    Server3
                                                          .Service Mgr tells it to use Server2: 3




                                                   SLB
                                                                                                    Server4

 .Subsequent packets flow directly from Client to Server2 thru the FE
            .The FE must notify the SLB device when the flow ends
sources
• Wikipedia
• Technology Integration: RSerPool & Server
  Load-balancing (slides) by Curt Kersey, Cisco Systems
  Aron Silverton, Motorola Labs
Thank you

Twitter:@ahmd_sherief
Facebook:goo.gl/9RKCH

More Related Content

PPTX
Load balancing
PPTX
Load Balancing Server
PPT
Load Balancing In Cloud Computing newppt
PPTX
Linux network file system (nfs)
PDF
Docker 101: Introduction to Docker
PPTX
Network File System in Distributed Computing
PPTX
The Basics of Getting Started With Microsoft Azure
PPTX
What Is A Docker Container? | Docker Container Tutorial For Beginners| Docker...
Load balancing
Load Balancing Server
Load Balancing In Cloud Computing newppt
Linux network file system (nfs)
Docker 101: Introduction to Docker
Network File System in Distributed Computing
The Basics of Getting Started With Microsoft Azure
What Is A Docker Container? | Docker Container Tutorial For Beginners| Docker...

What's hot (20)

PPTX
Introduction to Redis
PPTX
virtualization and hypervisors
PDF
Introduction to Docker Compose
PPT
PPTX
Introduction to docker
PDF
Ansible
PDF
Intro to HBase
ODP
ansible why ?
PPTX
Introduction to Redis
PDF
Microsoft Windows Server 2022 Overview
PPTX
OVN operationalization at scale at eBay
PPTX
Server virtualization
PPTX
Hypervisor
PPTX
Introduction To OpenStack
PPTX
Couch db
PPTX
Cloud computing stack
PDF
Kafka to the Maxka - (Kafka Performance Tuning)
PDF
DBaaS- Database as a Service in a DBAs World
PPTX
Virtualization
PPTX
Storage As A Service (StAAS)
Introduction to Redis
virtualization and hypervisors
Introduction to Docker Compose
Introduction to docker
Ansible
Intro to HBase
ansible why ?
Introduction to Redis
Microsoft Windows Server 2022 Overview
OVN operationalization at scale at eBay
Server virtualization
Hypervisor
Introduction To OpenStack
Couch db
Cloud computing stack
Kafka to the Maxka - (Kafka Performance Tuning)
DBaaS- Database as a Service in a DBAs World
Virtualization
Storage As A Service (StAAS)
Ad

Viewers also liked (12)

PPT
Load Balancing
PPTX
Load Balancing In Distributed Computing
PPTX
Freeing India of “Divide & Rule”
KEY
Load Balancing with Apache
PPTX
Class warshal2
PPTX
LOAD BALANCING ALGORITHMS
PPT
Greedy Algorihm
PDF
PPTX
static and dynamic balance
PPT
Balancing
PPTX
Static and Dynamic Balancing of Rotating Mass
Load Balancing
Load Balancing In Distributed Computing
Freeing India of “Divide & Rule”
Load Balancing with Apache
Class warshal2
LOAD BALANCING ALGORITHMS
Greedy Algorihm
static and dynamic balance
Balancing
Static and Dynamic Balancing of Rotating Mass
Ad

Similar to Load balancing (20)

PDF
Load Balancer Device and Configurations.
PDF
ACE - Comcore
PPTX
Lync Server 2010: High Availability [I3004]
PDF
Clustering - october 2006
DOCX
Surviving The Stump The Chump Interview Questions
PPTX
FlowER Erlang Openflow Controller
PDF
IRJET- An Improved Weighted Least Connection Scheduling Algorithm for Loa...
PPTX
Load Balance with NSX-T.pptx
PPT
Title Subtitle
PPT
Title Subtitle
PPT
Np unit1
PDF
Ha of load balancer
PDF
Load balancing at tuenti
PDF
Real-time applications with sockets and websockets. Introduction to Smartfoxs...
PPT
Sf rmr - Servicing Forwarding Remote Multiplexing Relay
PPT
clustering and load balancing
PDF
Scalable Architecture 101
PDF
The Concept of Load Balancing Server in Secured and Intelligent Network
PDF
Http front-ends
PDF
Building high traffic http front-ends. theo schlossnagle. зал 1
Load Balancer Device and Configurations.
ACE - Comcore
Lync Server 2010: High Availability [I3004]
Clustering - october 2006
Surviving The Stump The Chump Interview Questions
FlowER Erlang Openflow Controller
IRJET- An Improved Weighted Least Connection Scheduling Algorithm for Loa...
Load Balance with NSX-T.pptx
Title Subtitle
Title Subtitle
Np unit1
Ha of load balancer
Load balancing at tuenti
Real-time applications with sockets and websockets. Introduction to Smartfoxs...
Sf rmr - Servicing Forwarding Remote Multiplexing Relay
clustering and load balancing
Scalable Architecture 101
The Concept of Load Balancing Server in Secured and Intelligent Network
Http front-ends
Building high traffic http front-ends. theo schlossnagle. зал 1

Recently uploaded (20)

PPTX
MicrosoftCybserSecurityReferenceArchitecture-April-2025.pptx
PPTX
Final SEM Unit 1 for mit wpu at pune .pptx
PDF
A Late Bloomer's Guide to GenAI: Ethics, Bias, and Effective Prompting - Boha...
PDF
WOOl fibre morphology and structure.pdf for textiles
PDF
STKI Israel Market Study 2025 version august
PDF
NewMind AI Weekly Chronicles – August ’25 Week III
PDF
sustainability-14-14877-v2.pddhzftheheeeee
PDF
Video forgery: An extensive analysis of inter-and intra-frame manipulation al...
PPTX
Tartificialntelligence_presentation.pptx
PPTX
Group 1 Presentation -Planning and Decision Making .pptx
PDF
Hindi spoken digit analysis for native and non-native speakers
PDF
Transform Your ITIL® 4 & ITSM Strategy with AI in 2025.pdf
PPT
What is a Computer? Input Devices /output devices
PDF
DASA ADMISSION 2024_FirstRound_FirstRank_LastRank.pdf
PPT
Geologic Time for studying geology for geologist
PDF
A review of recent deep learning applications in wood surface defect identifi...
PDF
Unlock new opportunities with location data.pdf
PDF
A comparative study of natural language inference in Swahili using monolingua...
PDF
Taming the Chaos: How to Turn Unstructured Data into Decisions
PDF
A novel scalable deep ensemble learning framework for big data classification...
MicrosoftCybserSecurityReferenceArchitecture-April-2025.pptx
Final SEM Unit 1 for mit wpu at pune .pptx
A Late Bloomer's Guide to GenAI: Ethics, Bias, and Effective Prompting - Boha...
WOOl fibre morphology and structure.pdf for textiles
STKI Israel Market Study 2025 version august
NewMind AI Weekly Chronicles – August ’25 Week III
sustainability-14-14877-v2.pddhzftheheeeee
Video forgery: An extensive analysis of inter-and intra-frame manipulation al...
Tartificialntelligence_presentation.pptx
Group 1 Presentation -Planning and Decision Making .pptx
Hindi spoken digit analysis for native and non-native speakers
Transform Your ITIL® 4 & ITSM Strategy with AI in 2025.pdf
What is a Computer? Input Devices /output devices
DASA ADMISSION 2024_FirstRound_FirstRank_LastRank.pdf
Geologic Time for studying geology for geologist
A review of recent deep learning applications in wood surface defect identifi...
Unlock new opportunities with location data.pdf
A comparative study of natural language inference in Swahili using monolingua...
Taming the Chaos: How to Turn Unstructured Data into Decisions
A novel scalable deep ensemble learning framework for big data classification...

Load balancing

  • 1. Load balancing Ahmed Sherief Ahmed ELDakhakhny Twitter:@ahmd_sherief Facebook:goo.gl/9RKCH
  • 2. Load-balancing • Load balancing is a computer networking methodology to distribute workload across multiple computers or a computer cluster, network links, central processing units, disk drives, or other resources,
  • 3. Goals Load-balancing • achieve optimal resource utilization • maximize throughput • minimize response time • avoid overload • Avoid crashing
  • 4. ?Why to Load-balance • Scale applications / services • Ease of administration / maintenance – Easily and transparently remove physical servers from rotation in order to perform any type of maintenance on that server. • Resource sharing – Can run multiple instances of an application / service on a server; could be running on a different port for each instance; can load-balance to different port based on data analyzed.
  • 5. Load-Balancing Algorithms • Most predominant: – least connections: server with fewest number of flows gets the new flow request. – weighted least connections: associate a weight / strength for each server and distribute load across server farm based on the weights of all servers in the farm. – round robin: round robin thru the servers in server farm. – weighted round robin: give each server ‘weight’ number of flows in a row; weight is set just like it is in weighted least flows. • There are other algorithms that look at or try to predict server load in determining the load of the real server. • Round-robin (RR) is one of the simplest scheduling algorithms for processes in an operating system. As the term is generally used, time slices are assigned to each process in equal portions and in circular order, handling all processes without priority
  • 6. server Load-balancing SLB = Server Load-Balancer.
  • 7. ?What does a SLB do • Gets user to needed resource: – Server must be available – User’s “session” must not be broken • If user must get to same resource over and over, the SLB device must ensure that happens (ie, session persistence) • In order to do work, SLB must: – Know servers – IP/port, availability – Understand details of some protocols (e.g., FTP, SIP, etc) • Network Address Translation, NAT: – Packets are re-written as they pass through SLB device.
  • 8. How SLB Devices Make Decisions • The SLB device can make its load-balancing decisions based on several factors. – Some of these factors can be obtained from the packet headers (i.e., IP address, port numbers, etc.). – Other factors are obtained by looking at the data beyond the network headers. Examples: • HTTP Cookies • HTTP URLs • SSL Client certificate ?? • The decisions can be based strictly on flow counts or they can be based on knowledge of application.
  • 9. SLB: Architectures • Traditional – SLB device sits between the Clients and the Servers being load-balanced. • Distributed – SLB device sits off to the side, and only receives the packets it needs to based on flow setup and tear down.
  • 10. SLB: Traditional View with NAT Server1 Client SLB Server2 Server3
  • 11. SLB: Traditional View without NAT Server1 Client SLB Server2 Server3
  • 12. SLB: Distributed Architecture FE Server Client FE Server FE Server FE: Forwarding Engines, which are . responsible for forwarding packets They ask the SLB device where to .send the flow SLB
  • 13. Distributed Architecture: Sample Flow Server1 TCP SYN: 1 .flow goes to Server2: 4 Client FE Server2 .FE asks where to send flow: 2 Server3 .Service Mgr tells it to use Server2: 3 SLB Server4 .Subsequent packets flow directly from Client to Server2 thru the FE .The FE must notify the SLB device when the flow ends
  • 14. sources • Wikipedia • Technology Integration: RSerPool & Server Load-balancing (slides) by Curt Kersey, Cisco Systems Aron Silverton, Motorola Labs

Editor's Notes

  • #11: In #2, when the SLB device asks where to send the flow, it formats the request giving the src ip/port and dst ip/port . Once the decision is made, the SLB device can remember the decision, so it can build its own session persistence tables. For ip-only session persistence, SLB device will recall that this src ip is going to the PE ip/port determined by the ENRP server . Note: the ENRP server can be getting dynamic feedback on server availability via its “admin network” that i show here as a separate backend network – you don’t have to have a separate network for it .
  • #13: The FEs do not make any decisions. All decisions on where to send the flow is done by the SLB device . When the flow gets terminated, the FEs tell the SLB device. That way the SLB device can keep track of flow counts. Tracking flow counts is critical to keep load distribution even .