SlideShare a Scribd company logo
1 of 39
Client side LOAD Balancer
IN CLOUD COMPUTING ENVIRONMENT
1
2
INDEX
1. Abstract
2. Motivation
3. Cloud Architecture
4. Load BalancingAlgorithms
5. Client Side Load Balancing
6. CONCLUSION
7. REFERENCES
3
ABSTRACT
• The concept of Cloud computing
has significantly changed the
field of parallel and distributed
computing systems today.
• Cloud computing enables a wide
range of users to access
distributed, scalable, virtualized
hardware and/or software
infrastructure over the Internet.
4
ABSTRACT
• Load balancing is a methodology
to distribute workload across
multiple computers, or other
resources over the network links
to achieve optimal resource
utilization, maximize
throughput, minimum response
time, and avoid overload.
5
ABSTRACT
• With recent beginning of technology, resource control or load
balancing in cloud computing is main challenging issue.
• Efficient load balancing scheme ensures efficient resource
utilization by provisioning of resources to cloud user’s on-demand
basis in pay-as-you-say-manner.
• Load balancing in the cloud computing environment has an
important impact on the performance.
• Good load balancing makes cloud computing more efficient and
improves user satisfaction.
6
MOTIVATION
• PROBLEM
I. Cloud Computing is a new trend emerging in
IT environment with huge requirements of
infrastructure and resources.
II. Availability of cloud systems is one of the
main concerns of cloud computing. The
term, availability of clouds, is mainly
evaluated by type of information comparing
with resource scaling.
III. Work load control is crucial to improve
system performance and maintain stability.
PROBLEM
SOLUTION
RESULT
7
MOTIVATION
• SOLUTION
I. Load balancing in cloud computing provides
an efficient solution to various issues residing
in cloud computing environment set-up and
usage.
II. Load balancing must take into account two
major tasks, one is the resource provisioning
or resource allocation and other is task
scheduling in distributed environment.
PROBLEM
SOLUTION
RESULT
8
MOTIVATION
• RESULT
Efficient provisioning of resources and scheduling of
resources as well as tasks will ensure:
I. Resources are easily available on demand.
II. Resources are efficiently utilized under
condition of high/low load.
III. Energy is saved in case of low load (i.e. when
usage of cloud resources is below certain
threshold).
IV. Cost of using resources is reduced.
PROBLEM
SOLUTION
RESULT
9
CLOUD COMPUTING
• A Cloud computing is emerging as
a new paradigm of large scale
distributed computing.
• It has moved computing and data
away from desktop and portable
PCs, into large data centres.
10
CLOUD COMPUTING
• Cloud Computing is made up
by aggregating two terms in
the field of technology.
• First term is Cloud and the
second term is computing.
11
CLOUD COMPUTING
• What is Cloud?
• Cloud is a pool of heterogeneous
resources.
• It is a mesh of huge infrastructure
and has no relevance with its name
“Cloud”.
• Infrastructure refers to both the
applications delivered to end users
as services over the Internet and the
hardware and system software in
data centres that is responsible for
providing those services.
12
CLOUD COMPUTING
13
CLOUD COMPUTING
SAAS
• E-Mail
• ERP
• CRM
• Collaborative
PAAS
• Application
Development
• Web
• Decision Support
• Streaming
IAAS
• Caching
• File
• System
Management
• Networking
• Security
14
TYPES OF CLOUD COMPUTING
• PRIVATECLOUD
• For people who are the type to keep
everything within arms’ reach and
on a leash -- dogs, children, keys,
you name it.
• Afraid of releasing your data to
public cloud?
• Need to constantly monitor it?
• These chained-in, restrained cloud
environments are protected behind
a firewall
15
TYPES OF CLOUD COMPUTING
• PUBLIC CLOUD
• If private clouds are like pets
on leashes, public clouds are
wild animals roaming free.
• Public clouds owners are those
who are willing to trust data to
off-premises cloud providers.
• They gain the benefits of that
pay-as-you-go services so you
only pay for what you use
16
LOAD BALANCING
• Load balancing is a relatively new technique that facilitates networks
and resources by providing a maximum throughput with minimum
response time.
• Dividing the traffic between servers, data can be sent and received
without major delay.
• Different kinds of algorithms are available that helps traffic loaded
between available servers.
• Without load balancing, users could experience delays, timeouts and
possible long system responses.
17
Cost
effectiveness
Priority
Scalability
and flexibility
In order to balance the requests of the resources it is
important to recognize a few major of load balancing
algorithms
GOALS
18
LOAD BALANCING ALGORITHMS
STATIC ALGORITHMS DYNAMIC ALGORITHMS
• Cloud provider installs
heterogeneous resources.
• resources are flexible in dynamic
environment.
• Cloud cannot rely on the prior
knowledge whereas it takes into
account run-time statistics.
• Cloud provider installs
homogeneous resources.
• Resources in the cloud are not
flexible
• Cloud requires prior knowledge of
nodes capacity, processing power ,
memory, performance and statistics
of user requirements.
19
Start
Request a connection
to a resource
Stop
Chose the next
available resource
Retrieve highest
priority conn. string
Return resource to
requestor
Collect usage
patterns
Data
resource available
More
available resource
YES
YES
NO
NO
20
CLIENT SIDE LOAD BALANCER
USING CLOUD COMPUTING
21
CLIENT SIDE LOAD BALANCER
• Load balancer forwards packets to web servers according to
different workloads on servers.
• However, it is hard to implement a scalable load balancer because
of both the “cloud’s commodity business model and the limited
infrastructure control allowed by cloud providers.”
• Client-side Load Balancer (CLB) solve this problem by using a
scalable cloud storage service.
• CLB allows clients to choose back-end web servers for dynamic
content although it delivers static content.
22
EXISTING SOLUTIONS
• Hardware based load balancer- to handle high level of
load
• Software based load balancer- for generic servers
Load Balancer
• Local DNS Server
• Can hand out diff. IP address to diff. DNS Servers
DNS Load
Balancing
• One can fully control infrastructure
• Do not impose: Single Performance bottleneck,
expensive Hardware, Lack of adaptiveness
Layer 2
Optimization
23
EXISTING SOLUTIONS : DRAWBACKS
• Hardware based load balancer- Expensive
• Software based load balancer-Not ScalableLoad Balancer
• Local DNS Server
• lack of Adaptiveness and Granularity
DNS Load
Balancing
• One can fully control infrastructure
• this ability could open doors for security exploits.
Layer 2
Optimization
24
PROPOSED SYSTEM
• architecture has no single point of scalability bottleneck
• communication flows between the browser and the
chosen back-end web server.
Compared to Software
Load Balancer
• architecture has a finer load balancing granularity and
adaptiveness.
• client's browser makes the decision.
Compared to DNS Load
Balancing
• It achieve high scalability without requiring sophisticated
control on the infrastructure as layer 2 optimization does
Compared to Layer 2
Optimization
25
ARCHITECTURE
One Web Server
Proxy
Normal
Web
Contents
S3
Static
Page
Web
Server
Load
File
LB
JavaScript
Client Browser
26
EXPLANATION
For each dynamic page, we create an anchor
static page. This anchor page includes two
parts.
• The first part contains the list of web servers'
IP addresses and their individual load (such
as CPU, memory, network bandwidth, etc.)
information. They are stored in a set of
JavaScript variables that can be accessed
directly from other JavaScript code.
• The second part contains the client-side load
balancing logic, again written in JavaScript.
Static
Page
Web
Server
Load
File
LB
JavaScript
27
Web
Server
Web
Server
Web
Server
28
AMAZON - S3 (SIMPLE STORAGE SERVICE)
• S3's domain hosting capability is used, which maps a domain (by
DNS aliasing) to S3. We create a bucket with the same name as the
domain name (e.g., www.website.com).
• When a user accesses the domain, the request is routed to S3 and
S3 uses the host header to determine the bucket from which to
retrieve the content.
29
SAMPLE ANCHOR STATIC PAGE
1. <html>
2. <head><title></title>
3. <script type="text/javascript">
4. <!--
5. // the load balancing logic
6. </script>
7. <script type="text/javascript">
8. // the server list and load
9. // information in JavaScript
10. // variables
11. </script></head>
12. <body onLoad="load();">
13. <span id="ToBeReplaced"> </span>
14. </body></html>
30
WORKING
• When a client browser loads an anchor page, the browser executes
the following steps in JavaScript:
1. Examine the load variables to determine to which web server it
should send the actual request. The current algorithm randomly
chooses a web server where the probability of choosing any one is
inversely proportional to its relative load.
31
WORKING
2. JavaScript sends a request to a proxy on
the target web server. The JavaScript
sends over two pieces of information
encoded as URL parameters. First, it
sends the browser cookie associated
with the site (document.cookie).
Second, it sends the URL path
(location.pathname).
One Web Server
Proxy
Normal
Web
Contents
32
WORKING
3. The proxy uses the cookie and URL path to re-construct a new
HTTP request; and sends the request to the actual web server.
4. The web server processes the request; invokes dynamic script
processor as necessary; and returns the result back to the proxy.
5. The proxy wraps around the result in a JavaScript.
6. The client browser executes the returned JavaScript from the
proxy; updates the page display; and updates the cookies if a set-
cookie header has been returned.
33
SAMPLE JAVASCRIPT
• The JavaScript returned from the proxy looks like the following.
1. function page() {
2. return "<HTML page content>";
3. }
4. function set-cookie() {
5. <set cookie if instructed
6. by web server>
7. }
34
WORKING
• As described above, the goal of the load balancing logic is to choose
a back-end web server based on the load, send the client request
(cookie along with URL path) to the proxy, receive the returned
JavaScript and update the current HTML page.
35
Service specific load balancing
ADVANTAGES
Wide area services
Scalable Services
Client Code Portability
Parallelism
Fault Tolerance
36
CONCLUSION
• A cloud is an attractive infrastructure solution for web applications since
it enables web applications to dynamically adjust its infrastructure
capacity on demand.
• A scalable load balancer is a key building block to efficiently distribute a
large volume of requests and fully utilize the horizontally scaling
infrastructure cloud.
• However, as we pointed out, it is not trivial to implement a scalable load
balancer due to both the cloud's commodity business model and the
limited infrastructure control allowed by cloud providers.
• In this study, the Client-side Load Balancing (CLB) architecture uses a
scalable cloud storage service such as Amazon S3.
37
CONCLUSION
• Through S3, CLB directly delivers static contents while allowing a client to
choose a corresponding back-end web server for dynamic contents.
• A client makes the load balancing decision based on the list of back-end
web servers and their load information.
• CLB uses JavaScript to implement the load balancing algorithm, which
not only makes the load balancing mechanism transparent to users, but
also gets around browsers' cross-domain security limitation.
• Our evaluation shows that the proposed architecture is scalable while
introducing a small latency overhead.
38
REFERENCES
• Amazon Web Services. Amazon Web Services (AWS).
http://aws.amazon.com.
• F5 Networks. F5 Networks. http://www.f5.com.
• Google Inc. Google Search Engine.
• IEEE Paper on ‘Client Side Load Balancer Using Cloud’ by S. Wee &
H. Liu
39

More Related Content

What's hot

Load balancing
Load balancingLoad balancing
Load balancingSoujanya V
 
A load balancing model based on cloud partitioning for the public cloud. ppt
A  load balancing model based on cloud partitioning for the public cloud. ppt A  load balancing model based on cloud partitioning for the public cloud. ppt
A load balancing model based on cloud partitioning for the public cloud. ppt Lavanya Vigrahala
 
file sharing semantics by Umar Danjuma Maiwada
file sharing semantics by Umar Danjuma Maiwada file sharing semantics by Umar Danjuma Maiwada
file sharing semantics by Umar Danjuma Maiwada umardanjumamaiwada
 
load balancing in public cloud ppt
load balancing in public cloud pptload balancing in public cloud ppt
load balancing in public cloud pptKrishna Kumar
 
Cloud Resource Management
Cloud Resource ManagementCloud Resource Management
Cloud Resource ManagementNASIRSAYYED4
 
Distributed system lamport's and vector algorithm
Distributed system lamport's and vector algorithmDistributed system lamport's and vector algorithm
Distributed system lamport's and vector algorithmpinki soni
 
Load balancing in cloud
Load balancing in cloudLoad balancing in cloud
Load balancing in cloudSouvik Maji
 
Design Issues of an OS.ppt
Design Issues of an OS.pptDesign Issues of an OS.ppt
Design Issues of an OS.pptSenthil Vit
 
Resource provisioning optimization in cloud computing
Resource provisioning optimization in cloud computingResource provisioning optimization in cloud computing
Resource provisioning optimization in cloud computingMasoumeh_tajvidi
 
Cloud computing and data security
Cloud computing and data securityCloud computing and data security
Cloud computing and data securityMohammed Fazuluddin
 
Cc unit 2 ppt
Cc unit 2 pptCc unit 2 ppt
Cc unit 2 pptDr VISU P
 
Middleware and Middleware in distributed application
Middleware and Middleware in distributed applicationMiddleware and Middleware in distributed application
Middleware and Middleware in distributed applicationRishikese MR
 

What's hot (20)

Cloud Computing Using OpenStack
Cloud Computing Using OpenStack Cloud Computing Using OpenStack
Cloud Computing Using OpenStack
 
Load balancing
Load balancingLoad balancing
Load balancing
 
A load balancing model based on cloud partitioning for the public cloud. ppt
A  load balancing model based on cloud partitioning for the public cloud. ppt A  load balancing model based on cloud partitioning for the public cloud. ppt
A load balancing model based on cloud partitioning for the public cloud. ppt
 
file sharing semantics by Umar Danjuma Maiwada
file sharing semantics by Umar Danjuma Maiwada file sharing semantics by Umar Danjuma Maiwada
file sharing semantics by Umar Danjuma Maiwada
 
load balancing in public cloud ppt
load balancing in public cloud pptload balancing in public cloud ppt
load balancing in public cloud ppt
 
Cloud computing
Cloud computingCloud computing
Cloud computing
 
Cloud Resource Management
Cloud Resource ManagementCloud Resource Management
Cloud Resource Management
 
Distributed system lamport's and vector algorithm
Distributed system lamport's and vector algorithmDistributed system lamport's and vector algorithm
Distributed system lamport's and vector algorithm
 
Load balancing in cloud
Load balancing in cloudLoad balancing in cloud
Load balancing in cloud
 
Cloud computing
Cloud computing Cloud computing
Cloud computing
 
Design Issues of an OS.ppt
Design Issues of an OS.pptDesign Issues of an OS.ppt
Design Issues of an OS.ppt
 
Resource provisioning optimization in cloud computing
Resource provisioning optimization in cloud computingResource provisioning optimization in cloud computing
Resource provisioning optimization in cloud computing
 
Cloud computing and data security
Cloud computing and data securityCloud computing and data security
Cloud computing and data security
 
Cc unit 2 ppt
Cc unit 2 pptCc unit 2 ppt
Cc unit 2 ppt
 
Scheduling in cloud
Scheduling in cloudScheduling in cloud
Scheduling in cloud
 
Distributed Coordination-Based Systems
Distributed Coordination-Based SystemsDistributed Coordination-Based Systems
Distributed Coordination-Based Systems
 
Middleware and Middleware in distributed application
Middleware and Middleware in distributed applicationMiddleware and Middleware in distributed application
Middleware and Middleware in distributed application
 
network storage
network storagenetwork storage
network storage
 
11. dfs
11. dfs11. dfs
11. dfs
 
cloud computing basics
cloud computing basicscloud computing basics
cloud computing basics
 

Similar to LOAD BALANCING ALGORITHMS

Improve Customer Experience with Multi CDN Solution
Improve Customer Experience with Multi CDN SolutionImprove Customer Experience with Multi CDN Solution
Improve Customer Experience with Multi CDN SolutionCloudxchange.io
 
Load Balancing in Cloud Computing.pptx
Load Balancing in Cloud Computing.pptxLoad Balancing in Cloud Computing.pptx
Load Balancing in Cloud Computing.pptxPradipPoudel4
 
Dynamic Resource Allocation Using Virtual Machines for Cloud Computing Enviro...
Dynamic Resource Allocation Using Virtual Machines for Cloud Computing Enviro...Dynamic Resource Allocation Using Virtual Machines for Cloud Computing Enviro...
Dynamic Resource Allocation Using Virtual Machines for Cloud Computing Enviro...SaikiranReddy Sama
 
Consistency as a Service: Auditing Cloud Consistency
Consistency as a Service: Auditing Cloud ConsistencyConsistency as a Service: Auditing Cloud Consistency
Consistency as a Service: Auditing Cloud ConsistencyPapitha Velumani
 
cloud_load balancing.ppt
cloud_load balancing.pptcloud_load balancing.ppt
cloud_load balancing.pptGirishS95
 
Cloud Computing Presentation
Cloud Computing PresentationCloud Computing Presentation
Cloud Computing PresentationMohammed Kharma
 
E VALUATION OF T WO - L EVEL G LOBAL L OAD B ALANCING F RAMEWORK IN C L...
E VALUATION OF  T WO - L EVEL  G LOBAL  L OAD  B ALANCING  F RAMEWORK IN  C L...E VALUATION OF  T WO - L EVEL  G LOBAL  L OAD  B ALANCING  F RAMEWORK IN  C L...
E VALUATION OF T WO - L EVEL G LOBAL L OAD B ALANCING F RAMEWORK IN C L...ijcsit
 
loadbalancingincloudcomputing-230214134106-94b39743.pptx
loadbalancingincloudcomputing-230214134106-94b39743.pptxloadbalancingincloudcomputing-230214134106-94b39743.pptx
loadbalancingincloudcomputing-230214134106-94b39743.pptxSufyanAhmed68
 
Cloud computing(bit mesra kolkata extn.)
Cloud computing(bit mesra kolkata extn.)Cloud computing(bit mesra kolkata extn.)
Cloud computing(bit mesra kolkata extn.)ASHUTOSH KUMAR
 
UNIT IV RESOURCE MANAGEMENT AND SECURITY
UNIT IV RESOURCE MANAGEMENT AND SECURITYUNIT IV RESOURCE MANAGEMENT AND SECURITY
UNIT IV RESOURCE MANAGEMENT AND SECURITYSheik Mohideen
 
Scalable analytics for iaas cloud availability
Scalable analytics for iaas cloud availabilityScalable analytics for iaas cloud availability
Scalable analytics for iaas cloud availabilityPapitha Velumani
 
Dynamic Cloud Partitioning and Load Balancing in Cloud
Dynamic Cloud Partitioning and Load Balancing in Cloud Dynamic Cloud Partitioning and Load Balancing in Cloud
Dynamic Cloud Partitioning and Load Balancing in Cloud Shyam Hajare
 
A Distributed Control Law for Load Balancing in Content Delivery Networks
A Distributed Control Law for Load Balancing in Content Delivery NetworksA Distributed Control Law for Load Balancing in Content Delivery Networks
A Distributed Control Law for Load Balancing in Content Delivery NetworksSruthi Kamal
 

Similar to LOAD BALANCING ALGORITHMS (20)

My Dissertation 2016
My Dissertation 2016My Dissertation 2016
My Dissertation 2016
 
Improve Customer Experience with Multi CDN Solution
Improve Customer Experience with Multi CDN SolutionImprove Customer Experience with Multi CDN Solution
Improve Customer Experience with Multi CDN Solution
 
Load Balancing in Cloud Computing.pptx
Load Balancing in Cloud Computing.pptxLoad Balancing in Cloud Computing.pptx
Load Balancing in Cloud Computing.pptx
 
Technical Architectures
Technical ArchitecturesTechnical Architectures
Technical Architectures
 
Dynamic Resource Allocation Using Virtual Machines for Cloud Computing Enviro...
Dynamic Resource Allocation Using Virtual Machines for Cloud Computing Enviro...Dynamic Resource Allocation Using Virtual Machines for Cloud Computing Enviro...
Dynamic Resource Allocation Using Virtual Machines for Cloud Computing Enviro...
 
Consistency as a Service: Auditing Cloud Consistency
Consistency as a Service: Auditing Cloud ConsistencyConsistency as a Service: Auditing Cloud Consistency
Consistency as a Service: Auditing Cloud Consistency
 
cloud_load balancing.ppt
cloud_load balancing.pptcloud_load balancing.ppt
cloud_load balancing.ppt
 
Cloud Computing Presentation
Cloud Computing PresentationCloud Computing Presentation
Cloud Computing Presentation
 
E VALUATION OF T WO - L EVEL G LOBAL L OAD B ALANCING F RAMEWORK IN C L...
E VALUATION OF  T WO - L EVEL  G LOBAL  L OAD  B ALANCING  F RAMEWORK IN  C L...E VALUATION OF  T WO - L EVEL  G LOBAL  L OAD  B ALANCING  F RAMEWORK IN  C L...
E VALUATION OF T WO - L EVEL G LOBAL L OAD B ALANCING F RAMEWORK IN C L...
 
Cloud computing
Cloud computingCloud computing
Cloud computing
 
unit3 part1.pptx
unit3 part1.pptxunit3 part1.pptx
unit3 part1.pptx
 
loadbalancingincloudcomputing-230214134106-94b39743.pptx
loadbalancingincloudcomputing-230214134106-94b39743.pptxloadbalancingincloudcomputing-230214134106-94b39743.pptx
loadbalancingincloudcomputing-230214134106-94b39743.pptx
 
Cloud computing(bit mesra kolkata extn.)
Cloud computing(bit mesra kolkata extn.)Cloud computing(bit mesra kolkata extn.)
Cloud computing(bit mesra kolkata extn.)
 
UNIT IV RESOURCE MANAGEMENT AND SECURITY
UNIT IV RESOURCE MANAGEMENT AND SECURITYUNIT IV RESOURCE MANAGEMENT AND SECURITY
UNIT IV RESOURCE MANAGEMENT AND SECURITY
 
Scalable analytics for iaas cloud availability
Scalable analytics for iaas cloud availabilityScalable analytics for iaas cloud availability
Scalable analytics for iaas cloud availability
 
Dynamic Cloud Partitioning and Load Balancing in Cloud
Dynamic Cloud Partitioning and Load Balancing in Cloud Dynamic Cloud Partitioning and Load Balancing in Cloud
Dynamic Cloud Partitioning and Load Balancing in Cloud
 
N1803048386
N1803048386N1803048386
N1803048386
 
Cloud computing
Cloud computingCloud computing
Cloud computing
 
Cloud computing_Final
Cloud computing_FinalCloud computing_Final
Cloud computing_Final
 
A Distributed Control Law for Load Balancing in Content Delivery Networks
A Distributed Control Law for Load Balancing in Content Delivery NetworksA Distributed Control Law for Load Balancing in Content Delivery Networks
A Distributed Control Law for Load Balancing in Content Delivery Networks
 

LOAD BALANCING ALGORITHMS

  • 1. Client side LOAD Balancer IN CLOUD COMPUTING ENVIRONMENT 1
  • 2. 2
  • 3. INDEX 1. Abstract 2. Motivation 3. Cloud Architecture 4. Load BalancingAlgorithms 5. Client Side Load Balancing 6. CONCLUSION 7. REFERENCES 3
  • 4. ABSTRACT • The concept of Cloud computing has significantly changed the field of parallel and distributed computing systems today. • Cloud computing enables a wide range of users to access distributed, scalable, virtualized hardware and/or software infrastructure over the Internet. 4
  • 5. ABSTRACT • Load balancing is a methodology to distribute workload across multiple computers, or other resources over the network links to achieve optimal resource utilization, maximize throughput, minimum response time, and avoid overload. 5
  • 6. ABSTRACT • With recent beginning of technology, resource control or load balancing in cloud computing is main challenging issue. • Efficient load balancing scheme ensures efficient resource utilization by provisioning of resources to cloud user’s on-demand basis in pay-as-you-say-manner. • Load balancing in the cloud computing environment has an important impact on the performance. • Good load balancing makes cloud computing more efficient and improves user satisfaction. 6
  • 7. MOTIVATION • PROBLEM I. Cloud Computing is a new trend emerging in IT environment with huge requirements of infrastructure and resources. II. Availability of cloud systems is one of the main concerns of cloud computing. The term, availability of clouds, is mainly evaluated by type of information comparing with resource scaling. III. Work load control is crucial to improve system performance and maintain stability. PROBLEM SOLUTION RESULT 7
  • 8. MOTIVATION • SOLUTION I. Load balancing in cloud computing provides an efficient solution to various issues residing in cloud computing environment set-up and usage. II. Load balancing must take into account two major tasks, one is the resource provisioning or resource allocation and other is task scheduling in distributed environment. PROBLEM SOLUTION RESULT 8
  • 9. MOTIVATION • RESULT Efficient provisioning of resources and scheduling of resources as well as tasks will ensure: I. Resources are easily available on demand. II. Resources are efficiently utilized under condition of high/low load. III. Energy is saved in case of low load (i.e. when usage of cloud resources is below certain threshold). IV. Cost of using resources is reduced. PROBLEM SOLUTION RESULT 9
  • 10. CLOUD COMPUTING • A Cloud computing is emerging as a new paradigm of large scale distributed computing. • It has moved computing and data away from desktop and portable PCs, into large data centres. 10
  • 11. CLOUD COMPUTING • Cloud Computing is made up by aggregating two terms in the field of technology. • First term is Cloud and the second term is computing. 11
  • 12. CLOUD COMPUTING • What is Cloud? • Cloud is a pool of heterogeneous resources. • It is a mesh of huge infrastructure and has no relevance with its name “Cloud”. • Infrastructure refers to both the applications delivered to end users as services over the Internet and the hardware and system software in data centres that is responsible for providing those services. 12
  • 14. CLOUD COMPUTING SAAS • E-Mail • ERP • CRM • Collaborative PAAS • Application Development • Web • Decision Support • Streaming IAAS • Caching • File • System Management • Networking • Security 14
  • 15. TYPES OF CLOUD COMPUTING • PRIVATECLOUD • For people who are the type to keep everything within arms’ reach and on a leash -- dogs, children, keys, you name it. • Afraid of releasing your data to public cloud? • Need to constantly monitor it? • These chained-in, restrained cloud environments are protected behind a firewall 15
  • 16. TYPES OF CLOUD COMPUTING • PUBLIC CLOUD • If private clouds are like pets on leashes, public clouds are wild animals roaming free. • Public clouds owners are those who are willing to trust data to off-premises cloud providers. • They gain the benefits of that pay-as-you-go services so you only pay for what you use 16
  • 17. LOAD BALANCING • Load balancing is a relatively new technique that facilitates networks and resources by providing a maximum throughput with minimum response time. • Dividing the traffic between servers, data can be sent and received without major delay. • Different kinds of algorithms are available that helps traffic loaded between available servers. • Without load balancing, users could experience delays, timeouts and possible long system responses. 17
  • 18. Cost effectiveness Priority Scalability and flexibility In order to balance the requests of the resources it is important to recognize a few major of load balancing algorithms GOALS 18
  • 19. LOAD BALANCING ALGORITHMS STATIC ALGORITHMS DYNAMIC ALGORITHMS • Cloud provider installs heterogeneous resources. • resources are flexible in dynamic environment. • Cloud cannot rely on the prior knowledge whereas it takes into account run-time statistics. • Cloud provider installs homogeneous resources. • Resources in the cloud are not flexible • Cloud requires prior knowledge of nodes capacity, processing power , memory, performance and statistics of user requirements. 19
  • 20. Start Request a connection to a resource Stop Chose the next available resource Retrieve highest priority conn. string Return resource to requestor Collect usage patterns Data resource available More available resource YES YES NO NO 20
  • 21. CLIENT SIDE LOAD BALANCER USING CLOUD COMPUTING 21
  • 22. CLIENT SIDE LOAD BALANCER • Load balancer forwards packets to web servers according to different workloads on servers. • However, it is hard to implement a scalable load balancer because of both the “cloud’s commodity business model and the limited infrastructure control allowed by cloud providers.” • Client-side Load Balancer (CLB) solve this problem by using a scalable cloud storage service. • CLB allows clients to choose back-end web servers for dynamic content although it delivers static content. 22
  • 23. EXISTING SOLUTIONS • Hardware based load balancer- to handle high level of load • Software based load balancer- for generic servers Load Balancer • Local DNS Server • Can hand out diff. IP address to diff. DNS Servers DNS Load Balancing • One can fully control infrastructure • Do not impose: Single Performance bottleneck, expensive Hardware, Lack of adaptiveness Layer 2 Optimization 23
  • 24. EXISTING SOLUTIONS : DRAWBACKS • Hardware based load balancer- Expensive • Software based load balancer-Not ScalableLoad Balancer • Local DNS Server • lack of Adaptiveness and Granularity DNS Load Balancing • One can fully control infrastructure • this ability could open doors for security exploits. Layer 2 Optimization 24
  • 25. PROPOSED SYSTEM • architecture has no single point of scalability bottleneck • communication flows between the browser and the chosen back-end web server. Compared to Software Load Balancer • architecture has a finer load balancing granularity and adaptiveness. • client's browser makes the decision. Compared to DNS Load Balancing • It achieve high scalability without requiring sophisticated control on the infrastructure as layer 2 optimization does Compared to Layer 2 Optimization 25
  • 27. EXPLANATION For each dynamic page, we create an anchor static page. This anchor page includes two parts. • The first part contains the list of web servers' IP addresses and their individual load (such as CPU, memory, network bandwidth, etc.) information. They are stored in a set of JavaScript variables that can be accessed directly from other JavaScript code. • The second part contains the client-side load balancing logic, again written in JavaScript. Static Page Web Server Load File LB JavaScript 27
  • 29. AMAZON - S3 (SIMPLE STORAGE SERVICE) • S3's domain hosting capability is used, which maps a domain (by DNS aliasing) to S3. We create a bucket with the same name as the domain name (e.g., www.website.com). • When a user accesses the domain, the request is routed to S3 and S3 uses the host header to determine the bucket from which to retrieve the content. 29
  • 30. SAMPLE ANCHOR STATIC PAGE 1. <html> 2. <head><title></title> 3. <script type="text/javascript"> 4. <!-- 5. // the load balancing logic 6. </script> 7. <script type="text/javascript"> 8. // the server list and load 9. // information in JavaScript 10. // variables 11. </script></head> 12. <body onLoad="load();"> 13. <span id="ToBeReplaced"> </span> 14. </body></html> 30
  • 31. WORKING • When a client browser loads an anchor page, the browser executes the following steps in JavaScript: 1. Examine the load variables to determine to which web server it should send the actual request. The current algorithm randomly chooses a web server where the probability of choosing any one is inversely proportional to its relative load. 31
  • 32. WORKING 2. JavaScript sends a request to a proxy on the target web server. The JavaScript sends over two pieces of information encoded as URL parameters. First, it sends the browser cookie associated with the site (document.cookie). Second, it sends the URL path (location.pathname). One Web Server Proxy Normal Web Contents 32
  • 33. WORKING 3. The proxy uses the cookie and URL path to re-construct a new HTTP request; and sends the request to the actual web server. 4. The web server processes the request; invokes dynamic script processor as necessary; and returns the result back to the proxy. 5. The proxy wraps around the result in a JavaScript. 6. The client browser executes the returned JavaScript from the proxy; updates the page display; and updates the cookies if a set- cookie header has been returned. 33
  • 34. SAMPLE JAVASCRIPT • The JavaScript returned from the proxy looks like the following. 1. function page() { 2. return "<HTML page content>"; 3. } 4. function set-cookie() { 5. <set cookie if instructed 6. by web server> 7. } 34
  • 35. WORKING • As described above, the goal of the load balancing logic is to choose a back-end web server based on the load, send the client request (cookie along with URL path) to the proxy, receive the returned JavaScript and update the current HTML page. 35
  • 36. Service specific load balancing ADVANTAGES Wide area services Scalable Services Client Code Portability Parallelism Fault Tolerance 36
  • 37. CONCLUSION • A cloud is an attractive infrastructure solution for web applications since it enables web applications to dynamically adjust its infrastructure capacity on demand. • A scalable load balancer is a key building block to efficiently distribute a large volume of requests and fully utilize the horizontally scaling infrastructure cloud. • However, as we pointed out, it is not trivial to implement a scalable load balancer due to both the cloud's commodity business model and the limited infrastructure control allowed by cloud providers. • In this study, the Client-side Load Balancing (CLB) architecture uses a scalable cloud storage service such as Amazon S3. 37
  • 38. CONCLUSION • Through S3, CLB directly delivers static contents while allowing a client to choose a corresponding back-end web server for dynamic contents. • A client makes the load balancing decision based on the list of back-end web servers and their load information. • CLB uses JavaScript to implement the load balancing algorithm, which not only makes the load balancing mechanism transparent to users, but also gets around browsers' cross-domain security limitation. • Our evaluation shows that the proposed architecture is scalable while introducing a small latency overhead. 38
  • 39. REFERENCES • Amazon Web Services. Amazon Web Services (AWS). http://aws.amazon.com. • F5 Networks. F5 Networks. http://www.f5.com. • Google Inc. Google Search Engine. • IEEE Paper on ‘Client Side Load Balancer Using Cloud’ by S. Wee & H. Liu 39