IERG 4080 Building Scalable Internet-based Services

Size: px
Start display at page:

Download "IERG 4080 Building Scalable Internet-based Services"

Transcription

1 Department of Information Engineering, CUHK Term 1, 2015/16 IERG 4080 Building Scalable Internet-based Services Lecture 4 Load Balancing Lecturer: Albert C. M. Au Yeung 30 th September, 2015

2 Web Server + Application Server 2

3 Python Application Server Gunicorn WSGI Server Client HTTP Request HTTP Response Nginx Web Server Server Application developed using Python + Flask 3

4 WSGI WSGI refers to Web Server Gateway Interface Specify the interface through which a server and an application communicate If an application is written according to the specification, it will be able to run on any server developed according to the same specification Applications and servers that use the WSGI interface are said to be WSGI compliant WSGI applications can be stacked Ref: 4

5 WSGI Why WSGI? Web servers are not capable of running Python applications For Apache, there is a module named mod_python, which enables Apache to execute Python codes However, mod_python is - not a standard specifications - no longer under active development Hence, the Python community came up with WSGI as a standard interface for Python Web applications 5

6 WSGI The Web server is configured to forward certain requests to the WSGI server (specified by a URL) Web Server WSGI Interface (callable objects) WSGI Server WSGI Application / Framework Ref: 6

7 WSGI Server vs. WSGI Application Why do we have WSGI servers and WSGI applications? It is just another example of de-coupling: Applications focus on how to get things done (e.g. business logic, updating databases, serving dynamic content, etc.) Servers focus on how to route requests, handle simultaneous connections, optimise computing resources, etc. As a Web application developer, you can focus on developing the functions and features, without worrying about how to interface with the Web server 7

8 Communication between Server and App When a new request comes to the WSGI sever: 1. The server invokes the corresponding function in the application 2. Parameters are passed to the application using environment variables 3. The server also provides a callback function to the application 4. The application processes the request 5. The application returns the response to the server using the callback function provided by the server 8

9 Example A simple WSGI-compatible application that returns Hello World def application(environ, start_response): start_response( 200 OK, [( Content-Type, text/plain )]) yield Hello World\n environ contains parameters that the server passes to the application (e.g. parameters in the query string) start_response is a callback function provided by the server, the application uses it to return the HTTP response 9

10 Developing WSGI Applications You do not need to directly implementing the WSGI interface in your application, as there are many frameworks that will help you development an application more easily In Assignment 1, you will try to build one using the Flask framework ( Relatively easy to pick up Debug mode that assists your development Many plugins and modules 10

11 Developing WSGI Applications Other options: Django ( A comprehensive Web framework following the model-view-controller (MVC) architectural pattern Bottle ( A micro-framework like Flask, but more lightweight and requires no dependencies on other modules For more, see 11

12 WSGI Middleware WSGI Applications can be stacked. (Why do we want to do that?) WSGI Application WSGI Server WSGI Middleware WSGI Application WSGI Application 12

13 Load Balancing 13

14 Load Balancing The act of distributing workloads across multiple computing nodes Why? Avoid overloading a single node Maximise utilization of different nodes Optimise usage of resources Increase reliability and availability 14

15 Load Balancing - Overview How should we implement this? Load Balancer Clients Servers 15

16 Load Balancing There are different ways to implement a load balancer: DNS / Hardware / Software Implement it on different layers Random / Round-robin / dynamic scheduling 16

17 Load Balancing Algorithms Random Round-Robin Distribute load equally by using a rotating scheme Weighted Round-Robin A performance weight is assigned to each server Least Connections Sends requests to a server with the fewest number of connections Fastest Response Time Select the server that responded in the shortest time 17

18 Server Health Checking A load balancer might need to check whether the servers are operating normally and are able to give responses. How can we check if one of the servers has died? 1. Observe the network traffic 2. Probe the server for a quick response What are the pros and cons of these two? How can health checking be done? 18

19 Server Health Checking Ping Send an ICMP message to the server and check for response TCP Connection Attempt to establish a TCP connection to the server (on port 80) HTTP GET (Header) Check the status code of a GET request HTTP GET (Content) Check the content returned by the server for a GET request Question: What are the limitations of the first three methods? 19

20 DNS Load Balancing 20

21 DNS Load Balancing DNS - Domain Name System A directory service of the Internet DNS Server Send HTTP request to Has an A record mapping to CUHK Web Server 21

22 DNS Load Balancing A simple way of implementing load balancing: Create two or more A records in the DNS zone The DNS server sends the client a list of records in random order or in a round-robin fashion The client attempts to connect to the application server using the first IP address in the list 22

23 DNS What are A records? Address record: mapping a domain name to an IPv4 address Other records: AAAA: domain name to IPv6 address CNAME: alias of a domain name MX: mail exchange (identifies the mail server of the domain) NS: name server record 23

24 DNS Load Balancing Round-robin DNS Load Balancing Has two A records mapping to and Client A CUHK Web Server DNS Server Client B CUHK Web Server

25 DNS Load Balancing $ dig ; <<>> DiG ubuntu0.5-Ubuntu <<>> ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: ;; flags: qr rd ra; QUERY: 1, ANSWER: 5, AUTHORITY: 0, ADDITIONAL: 1 ;; OPT PSEUDOSECTION: ; EDNS: version: 0, flags:; udp: 512 ;; QUESTION SECTION: ; IN A ;; ANSWER SECTION: IN CNAME youtube-ui.l.google.com. youtube-ui.l.google.com. 146 IN A youtube-ui.l.google.com. 146 IN A youtube-ui.l.google.com. 146 IN A youtube-ui.l.google.com. 146 IN A

26 DNS Load Balancing Simple, but a few limitations: Stickiness: It takes time to propagate changes in DNS records adding or removing servers can be slow Loading can not be balanced accurately due to DNS caching (e.g. when a lot of users are from the same ISP) It does not take into account transaction time, server load, network congestions, etc. No fault tolerance (DNS server does not know if a server is operating or not) 26

27 DNS Load Balancing While having some limitations, DNS load balancing is an important method for achieving availability The only way to divert traffic to different data centres 27

28 Hardware / Software Load Balancing 28

29 Load Balancing on Different Layers Load balancing can be done at the different layers in the OSI model Layer 4 (Transport Layer) Load Balancing Relatively simple Balancing server load without inspecting the content of messages Distribute traffic based on servers response time Routing is based on inspecting the first packet of the data stream 29

30 Layer 4 Load Balancing The load balancer forwards requests to one of the servers, and the servers will send responses via the load balancer Layer 4 Load Balancer 30

31 Layer 4 Load Balancing The client sends requests to an IP address (identifying the load balancer) The load balancer translate the destination address of the request to one of the servers IP address, and translate it back in the response. (Bi-directional NAT) Layer 4 Load Balancer 31

32 Layer 4 Load Balancing What are the advantages of Layer 4 Load Balancing? Simple: easy to implement Efficient: load balancer only inspect the first packet However It cannot maintain application session information It cannot route requests to different servers based on their content (e.g. requesting static content vs. dynamic content) 32

33 Layer 7 Load Balancing Layer 7 (Application Layer) Load Balancing Application-level load balancing Parse requests in application layer (e.g. HTTP), and distribute them to servers based on the content of the request (e.g. the URL or the cookie) Relatively high overhead in parsing the metadata Mostly HTTP (because of the popularity of Web apps) 33

34 Layer 7 Load Balancing HTTP requests are terminated at the Layer-7 switch Ref: Cardellini, Casalicchio, Colajanni, and Yu The state of the art in locally distributed Webserver systems. ACM Computer. Survey, 34, 2 (June 2002),

35 Layer 7 Load Balancing Characteristics of Layer 7 Load Balancing More CPU-intensive (e.g. for parsing HTTP content) Can also apply compression, encryption or caching on the content to be delivered Does not require all servers in the backend to have serve the same content (compare with Layer 4 load balancing) Layer 7 load balancers are also called Application Delivery Controllers 35

36 Reverse Proxy Layer 7 load balancing is also called reverse proxy. Why? What is a proxy? A proxy server (It sends request to another server on behalf of the client) 36

37 Reverse Proxy Reverse proxy retrieves resources from different servers on behalf of a client. A reverse proxy (load balancer) Retrieves resources from different servers at the backend 37

38 Abilities of Layer 7 Load Balancers One important ability of a layer 7 load balancer is SSL termination The load balancer has to be able to decrypt the request in order to inspect the content It therefore must be configured with a valid SSL certificate HTTPS requests Unencrypted requests Load balancer 38

39 Common Load Balancers Many solutions available in the market nowadays Hardware LBs Products of F5, Citrix and Cisco, etc. Software LBs Apache, Nginx, HAProxy, Squid, etc. Cloud-based Services Amazon Elastic Load Balancer (load balancing as a service) 39

40 Load Balancing With Nginx 40

41 Load Balancing using Nginx Nginx is a Web server but can also be configured as a reverse proxy server It can proxy requests to another HTTP server or a non-http server It supports the following non-http protocol: FastCGI, uwsgi, SCGI, memcached It can buffer responses from servers to improve performance (when the client is slow) 41

42 Configuring Nginx Nginx can be configured by editing the configuration files In Ubuntu, configuration files are usually stored under /etc/nginx/ A main configuration file named nginx.conf One or more configuration files for each of the sites hosted by the server (see /etc/nginx/site-available and /etc/nginx/site-enabled ) Ref: 42

43 Configuring Nginx The main context Basic structure of a configuration file for Nginx The event context user www-data; worker_processes 4; pid /run/nginx.pid; events {... } http { server { location {... } }... } The http, server and location contexts 43

44 Configuring Nginx A simple setup for a Web server serving content from a particular directory server { listen 80 default_server; listen [::]:80 default_server ipv6only=on; location / { root /data/www; } } Assume that the server is up at then a request to will retrieve an image named x.jpg from the directory /data/www/images 44

45 Configuring Nginx Serving files from different directories server { listen 80 default_server; listen [::]:80 default_server ipv6only=on; location / { root /data/www; } location /images/ { root /data/images; } } 45

46 Configuring Nginx Configuring Nginx as a reverse proxy load balancer is simple. However, before that we introduce the term upstream Upstream Servers Load Balancer Downstream Upstream 46

47 Configuring Nginx Load balancing example in Nginx Note: When no load balancing method is specified, the roundrobin method will be used http { upstream myservers { server s1.myserver.com; server s2.myserver.com; server s3.myserver.com; } } server { listen 80; } location / { proxy_pass } 47

48 Configuring Nginx The example in the previous slide is illustrated in the following diagram: s1 s2 Nginx s3 48

49 Configuring Nginx Load balancing using the least connection method http { upstream myservers { least_conn; server s1.myserver.com; server s2.myserver.com; server s3.myserver.com; } server { listen 80; } } location / { proxy_pass } 49

50 Persistence Persistence (Stickiness) Very often, we need the same server to serve the same client for a series of requests (why?) Round-robin and least connected methods do NOT guarantee that the same client will be served by the same server Persistence (or stickiness) refers to the ability of the load balancing to forward requests to the same server 50

51 Configuring Nginx Use IP hashing as the load balancing method to achieve persistence in Nginx http { upstream myservers { ip_hash; server s1.myserver.com; server s2.myserver.com; server s3.myserver.com; } server { listen 80; } } location / { proxy_pass } 51

52 Configuring Nginx Other functions include: Health checks of servers Buffering server response Routing requests to applications (e.g. to a Python Web app) You will explore these features in assignments. Ref: 52

53 Assignments & Project 53

54 Assignment Plan There will be a total of 5 assignments 1. Building a simple Web application using Nginx, Python and Flask 2. Implementing a load balancer and experimenting with different settings 3. Supporting your application with databases and caches 4. Building an Asynchronous task queue 5. Load testing your application 54

55 Assignment Plan 4 Asynchronous Task Queue Client 5 Load Balancer Nginx Web Server Python Application 3 Database Server 55

56 Project In the project, you will extend the system you build in the assignments to a functional service. You can choose from the following two topics: Personal notebook For storing notes, articles, messages, etc. for users Personal album For storing photos or images for users You have the flexibility on what functions you want to implement (more on next slide) 56

57 Project In the project, we will have a list of required functions and a list of optional functions You must implement the required functions (e.g. user account, searching, add/remove) You get bonus points for implementing the optional functions (or functions not listed in the project specification) In addition, pick one function of your application, and discuss the potential scalability problem, and implement a solution for it 57

58 End of Lecture 4 58

CS 188/219. Scalable Internet Services Andrew Mutz October 8, 2015

CS 188/219. Scalable Internet Services Andrew Mutz October 8, 2015 CS 188/219 Scalable Internet Services Andrew Mutz October 8, 2015 For Today About PTEs Empty spots were given out If more spots open up, I will issue more PTEs You must have a group by today. More detail

More information

Understanding Slow Start

Understanding Slow Start Chapter 1 Load Balancing 57 Understanding Slow Start When you configure a NetScaler to use a metric-based LB method such as Least Connections, Least Response Time, Least Bandwidth, Least Packets, or Custom

More information

Single Pass Load Balancing with Session Persistence in IPv6 Network. C. J. (Charlie) Liu Network Operations Charter Communications

Single Pass Load Balancing with Session Persistence in IPv6 Network. C. J. (Charlie) Liu Network Operations Charter Communications Single Pass Load Balancing with Session Persistence in IPv6 Network C. J. (Charlie) Liu Network Operations Charter Communications Load Balancer Today o Load balancing is still in use today. It is now considered

More information

Application Delivery Networking

Application Delivery Networking Application Delivery Networking. Raj Jain Washington University in Saint Louis Saint Louis, MO 63130 Jain@cse.wustl.edu These slides and audio/video recordings of this class lecture are at: 8-1 Overview

More information

S y s t e m A r c h i t e c t u r e

S y s t e m A r c h i t e c t u r e S y s t e m A r c h i t e c t u r e V e r s i o n 5. 0 Page 1 Enterprise etime automates and streamlines the management, collection, and distribution of employee hours, and eliminates the use of manual

More information

Topics. 1. What is load balancing? 2. Load balancing techniques 3. Load balancing strategies 4. Sessions 5. Elastic load balancing

Topics. 1. What is load balancing? 2. Load balancing techniques 3. Load balancing strategies 4. Sessions 5. Elastic load balancing Load Balancing Topics 1. What is load balancing? 2. Load balancing techniques 3. Load balancing strategies 4. Sessions 5. Elastic load balancing What is load balancing? load balancing is a technique to

More information

Building a Systems Infrastructure to Support e- Business

Building a Systems Infrastructure to Support e- Business Building a Systems Infrastructure to Support e- Business NO WARRANTIES OF ANY NATURE ARE EXTENDED BY THE DOCUMENT. Any product and related material disclosed herein are only furnished pursuant and subject

More information

Load Balancing and Sessions. C. Kopparapu, Load Balancing Servers, Firewalls and Caches. Wiley, 2002.

Load Balancing and Sessions. C. Kopparapu, Load Balancing Servers, Firewalls and Caches. Wiley, 2002. Load Balancing and Sessions C. Kopparapu, Load Balancing Servers, Firewalls and Caches. Wiley, 2002. Scalability multiple servers Availability server fails Manageability Goals do not route to it take servers

More information

DEPLOYMENT GUIDE Version 1.0. Deploying the BIG-IP LTM with Apache Tomcat and Apache HTTP Server

DEPLOYMENT GUIDE Version 1.0. Deploying the BIG-IP LTM with Apache Tomcat and Apache HTTP Server DEPLOYMENT GUIDE Version 1.0 Deploying the BIG-IP LTM with Apache Tomcat and Apache HTTP Server Table of Contents Table of Contents Deploying the BIG-IP LTM with Tomcat application servers and Apache web

More information

Application Note. Active Directory Federation Services deployment guide

Application Note. Active Directory Federation Services deployment guide Application Note Active Directory Federation Services deployment guide Document version: v1.1 Last update: 20th January 2014 Purpose ALOHA Load-Balancer deployment guide for Microsoft ADFS and ADFS proxy

More information

DNS Resolving using nslookup

DNS Resolving using nslookup DNS Resolving using nslookup Oliver Hohlfeld & Andre Schröder January 8, 2007 Abstract This report belongs to a talk given at the networking course (Institue Eurecom, France) in January 2007. It is based

More information

ZEN LOAD BALANCER EE v3.04 DATASHEET The Load Balancing made easy

ZEN LOAD BALANCER EE v3.04 DATASHEET The Load Balancing made easy ZEN LOAD BALANCER EE v3.04 DATASHEET The Load Balancing made easy OVERVIEW The global communication and the continuous growth of services provided through the Internet or local infrastructure require to

More information

How To Manage A Network On A Network With A Global Server (Networking)

How To Manage A Network On A Network With A Global Server (Networking) HIGH AVAILABILITY STRATEGY - GLOBAL TRAFFIC MANAGEMENT PROTOTYPE REPORT Version 1-00 Document Control Number 2460-00004 11/04/2008 Consortium for Ocean Leadership 1201 New York Ave NW, 4 th Floor, Washington

More information

3/21/2011. Topics. What is load balancing? Load Balancing

3/21/2011. Topics. What is load balancing? Load Balancing Load Balancing Topics 1. What is load balancing? 2. Load balancing techniques 3. Load balancing strategies 4. Sessions 5. Elastic load balancing What is load balancing? load balancing is a technique to

More information

Configuring Nex-Gen Web Load Balancer

Configuring Nex-Gen Web Load Balancer Configuring Nex-Gen Web Load Balancer Table of Contents Load Balancing Scenarios & Concepts Creating Load Balancer Node using Administration Service Creating Load Balancer Node using NodeCreator Connecting

More information

Benchmarking Zonemaster Sandoche Balakrichenan (Afnic) & Einar Lonn (IIS)

Benchmarking Zonemaster Sandoche Balakrichenan (Afnic) & Einar Lonn (IIS) Benchmarking Zonemaster Sandoche Balakrichenan (Afnic) & Einar Lonn (IIS) 1 1 Health check je n'ai pas eu de retour, peut être que c'était trop sybillin 2 DNS Health check Connectivity Name Server DNSSEC

More information

Outline VLAN. Inter-VLAN communication. Layer-3 Switches. Spanning Tree Protocol Recap

Outline VLAN. Inter-VLAN communication. Layer-3 Switches. Spanning Tree Protocol Recap Outline Network Virtualization and Data Center Networks 263-3825-00 DC Virtualization Basics Part 2 Qin Yin Fall Semester 2013 More words about VLAN Virtual Routing and Forwarding (VRF) The use of load

More information

ZEN LOAD BALANCER EE v3.02 DATASHEET The Load Balancing made easy

ZEN LOAD BALANCER EE v3.02 DATASHEET The Load Balancing made easy ZEN LOAD BALANCER EE v3.02 DATASHEET The Load Balancing made easy OVERVIEW The global communication and the continuous growth of services provided through the Internet or local infrastructure require to

More information

How To Balance A Load Balancer On A Server On A Linux (Or Ipa) (Or Ahem) (For Ahem/Netnet) (On A Linux) (Permanent) (Netnet/Netlan) (Un

How To Balance A Load Balancer On A Server On A Linux (Or Ipa) (Or Ahem) (For Ahem/Netnet) (On A Linux) (Permanent) (Netnet/Netlan) (Un Super/Ultra-Basic Load-Balancing Introduction For AFNOG 2012 Joel Jaeggli 1 What is Load-balancing The act of dividing a workload between N > 1 devices capable for performing a task. Multiple contexts

More information

DMZ Network Visibility with Wireshark June 15, 2010

DMZ Network Visibility with Wireshark June 15, 2010 DMZ Network Visibility with Wireshark June 15, 2010 Ashok Desai Senior Network Specialist Intel Information Technology SHARKFEST 10 Stanford University June 14-17, 2010 Outline Presentation Objective DMZ

More information

Nginx 1 Web Server Implementation

Nginx 1 Web Server Implementation Nginx 1 Web Server Implementation Cookbook Over 100 recipes to master using the Nginx HTTP server and reverse proxy Dipankar Sarkar [ 11 open so " *' '" i I community experience d PUBLISHING community

More information

Measuring the Web: Part I - - Content Delivery Networks. Prof. Anja Feldmann, Ph.D. Dr. Ramin Khalili Georgios Smaragdakis, PhD

Measuring the Web: Part I - - Content Delivery Networks. Prof. Anja Feldmann, Ph.D. Dr. Ramin Khalili Georgios Smaragdakis, PhD Measuring the Web: Part I - - Content Delivery Networks Prof. Anja Feldmann, Ph.D. Dr. Ramin Khalili Georgios Smaragdakis, PhD Acknowledgement Material presented in these slides is borrowed from presentajons

More information

Lab Exercise SSL/TLS. Objective. Step 1: Open a Trace. Step 2: Inspect the Trace

Lab Exercise SSL/TLS. Objective. Step 1: Open a Trace. Step 2: Inspect the Trace Lab Exercise SSL/TLS Objective To observe SSL/TLS (Secure Sockets Layer / Transport Layer Security) in action. SSL/TLS is used to secure TCP connections, and it is widely used as part of the secure web:

More information

Load Balancing using Pramati Web Load Balancer

Load Balancing using Pramati Web Load Balancer Load Balancing using Pramati Web Load Balancer Satyajit Chetri, Product Engineering Pramati Web Load Balancer is a software based web traffic management interceptor. Pramati Web Load Balancer offers much

More information

NEFSIS DEDICATED SERVER

NEFSIS DEDICATED SERVER NEFSIS TRAINING SERIES Nefsis Dedicated Server version 5.2.0.XXX (DRAFT Document) Requirements and Implementation Guide (Rev5-113009) REQUIREMENTS AND INSTALLATION OF THE NEFSIS DEDICATED SERVER Nefsis

More information

CS312 Solutions #6. March 13, 2015

CS312 Solutions #6. March 13, 2015 CS312 Solutions #6 March 13, 2015 Solutions 1. (1pt) Define in detail what a load balancer is and what problem it s trying to solve. Give at least two examples of where using a load balancer might be useful,

More information

Scalable Linux Clusters with LVS

Scalable Linux Clusters with LVS Scalable Linux Clusters with LVS Considerations and Implementation, Part I Eric Searcy Tag1 Consulting, Inc. emsearcy@tag1consulting.com April 2008 Abstract Whether you are perusing mailing lists or reading

More information

HOSTING PYTHON WEB APPLICATIONS. Graham Dumpleton PyCon Australia Sydney 2011

HOSTING PYTHON WEB APPLICATIONS. Graham Dumpleton PyCon Australia Sydney 2011 HOSTING PYTHON WEB APPLICATIONS Graham Dumpleton PyCon Australia Sydney 2011 WEB APPLICATIONS Only a few well known Python web applications. WEB FRAMEWORKS Many Python web frameworks for building your

More information

Reverse Proxy Guide. Version 2.0 April 2016

Reverse Proxy Guide. Version 2.0 April 2016 Version 2.0 April 2016 Reverse Proxy Guide Copyright 2016 iwebgate. All Rights Reserved. No part of this publication may be reproduced, transmitted, transcribed, stored in a retrieval system, or translated

More information

ENTERPRISE DATA CENTER CSS HARDWARE LOAD BALANCING POLICY

ENTERPRISE DATA CENTER CSS HARDWARE LOAD BALANCING POLICY CSS HARDWARE LOAD BALANCING POLICY Version 2.5 Date: 04/11/2014 SECURITY WARNING The information contained herein is proprietary to the Commonwealth of Pennsylvania and must not be disclosed to un-authorized

More information

Managing Virtual Servers

Managing Virtual Servers CHAPTER 4 Content Switching Module Device Manager (CVDM-CSM) displays details of existing virtual servers and enables users to perform detailed tasks that include creating or deleting virtual servers,

More information

Application Note. Lync 2010 deployment guide. Document version: v1.2 Last update: 12th December 2013 Lync server: 2010 ALOHA version: 5.

Application Note. Lync 2010 deployment guide. Document version: v1.2 Last update: 12th December 2013 Lync server: 2010 ALOHA version: 5. Application Note Document version: v1.2 Last update: 12th December 2013 Lync server: 2010 ALOHA version: 5.5 and above Contents 1 Introduction 4 1.1 About Exceliance.....................................

More information

Building a Highly Available and Scalable Web Farm

Building a Highly Available and Scalable Web Farm Page 1 of 10 MSDN Home > MSDN Library > Deployment Rate this page: 10 users 4.9 out of 5 Building a Highly Available and Scalable Web Farm Duwamish Online Paul Johns and Aaron Ching Microsoft Developer

More information

Proxy Server, Network Address Translator, Firewall. Proxy Server

Proxy Server, Network Address Translator, Firewall. Proxy Server Proxy Server, Network Address Translator, Firewall 1 Proxy Server 2 1 Introduction What is a proxy server? Acts on behalf of other clients, and presents requests from other clients to a server. Acts as

More information

Load Balancing. Outlook Web Access. Web Mail Using Equalizer

Load Balancing. Outlook Web Access. Web Mail Using Equalizer Load Balancing Outlook Web Access Web Mail Using Equalizer Copyright 2009 Coyote Point Systems, Inc. Printed in the USA. Publication Date: January 2009 Equalizer is a trademark of Coyote Point Systems

More information

A host-based firewall can be used in addition to a network-based firewall to provide multiple layers of protection.

A host-based firewall can be used in addition to a network-based firewall to provide multiple layers of protection. A firewall is a software- or hardware-based network security system that allows or denies network traffic according to a set of rules. Firewalls can be categorized by their location on the network: A network-based

More information

A Standard Modest WebSite

A Standard Modest WebSite A Standard Modest WebSite 3-tier application using Servlets and JDBC HTTP Servlet JDBC JSP...... Servlet DBMS Clients Application Server Roadmap Want to grow to robust enterprise-scale systems: replicated

More information

Apache Tomcat. Load-balancing and Clustering. Mark Thomas, 20 November 2014. 2014 Pivotal Software, Inc. All rights reserved.

Apache Tomcat. Load-balancing and Clustering. Mark Thomas, 20 November 2014. 2014 Pivotal Software, Inc. All rights reserved. 2 Apache Tomcat Load-balancing and Clustering Mark Thomas, 20 November 2014 Introduction Apache Tomcat committer since December 2003 markt@apache.org Tomcat 8 release manager Member of the Servlet, WebSocket

More information

Availability Digest. www.availabilitydigest.com. Redundant Load Balancing for High Availability July 2013

Availability Digest. www.availabilitydigest.com. Redundant Load Balancing for High Availability July 2013 the Availability Digest Redundant Load Balancing for High Availability July 2013 A large data center can comprise hundreds or thousands of servers. These servers must not only be interconnected, but they

More information

Copyright 2012 http://itfreetraining.com

Copyright 2012 http://itfreetraining.com In order to find resources on the network, computers need a system to look up the location of resources. This video looks at the DNS records that contain information about resources and services on the

More information

Web Browsing Examples. How Web Browsing and HTTP Works

Web Browsing Examples. How Web Browsing and HTTP Works How Web Browsing and HTTP Works 1 1 2 Lets consider an example that shows how web browsing and HTTP work. The example will cover a simple, but very common case. There are many more details of HTTP that

More information

Domain Name System (DNS)

Domain Name System (DNS) Application Layer Domain Name System Domain Name System (DNS) Problem Want to go to www.google.com, but don t know the IP address Solution DNS queries Name Servers to get correct IP address Essentially

More information

Computer System Management: Hosting Servers, Miscellaneous

Computer System Management: Hosting Servers, Miscellaneous Computer System Management: Hosting Servers, Miscellaneous Amarjeet Singh October 22, 2012 Partly adopted from Computer System Management Slides by Navpreet Singh Logistics Any doubts on project/hypo explanation

More information

Snapt Balancer Manual

Snapt Balancer Manual Snapt Balancer Manual Version 1.2 pg. 1 Contents Chapter 1: Introduction... 3 Chapter 2: General Usage... 4 Configuration Default Settings... 4 Configuration Performance Tuning... 6 Configuration Snapt

More information

Content Delivery Networks

Content Delivery Networks Content Delivery Networks Silvano Gai Cisco Systems, USA Politecnico di Torino, IT sgai@cisco.com 1 Agenda What are Content Delivery Networks? DNS based routing Server Load Balancing Content Routers Ethical

More information

Transport and Network Layer

Transport and Network Layer Transport and Network Layer 1 Introduction Responsible for moving messages from end-to-end in a network Closely tied together TCP/IP: most commonly used protocol o Used in Internet o Compatible with a

More information

Content Switching Module for the Catalyst 6500 and Cisco 7600 Internet Router

Content Switching Module for the Catalyst 6500 and Cisco 7600 Internet Router Content Switching Module for the Catalyst 6500 and Cisco 7600 Internet Router Product Overview The Cisco Content Switching Module (CSM) is a Catalyst 6500 line card that balances client traffic to farms

More information

Cisco PIX vs. Checkpoint Firewall

Cisco PIX vs. Checkpoint Firewall Cisco PIX vs. Checkpoint Firewall Introduction Firewall technology ranges from packet filtering to application-layer proxies, to Stateful inspection; each technique gleaning the benefits from its predecessor.

More information

SiteCelerate white paper

SiteCelerate white paper SiteCelerate white paper Arahe Solutions SITECELERATE OVERVIEW As enterprises increases their investment in Web applications, Portal and websites and as usage of these applications increase, performance

More information

BASICS OF SCALING: LOAD BALANCERS

BASICS OF SCALING: LOAD BALANCERS BASICS OF SCALING: LOAD BALANCERS Lately, I ve been doing a lot of work on systems that require a high degree of scalability to handle large traffic spikes. This has led to a lot of questions from friends

More information

Lab - Observing DNS Resolution

Lab - Observing DNS Resolution Objectives Part 1: Observe the DNS Conversion of a URL to an IP Address Part 2: Observe DNS Lookup Using the Nslookup Command on a Web Site Part 3: Observe DNS Lookup Using the Nslookup Command on Mail

More information

Chapter 37 Server Load Balancing

Chapter 37 Server Load Balancing Chapter 37 Server Load Balancing Introduction... 37-3 Overview... 37-3 Server Load Balancer on the Switch... 37-5 TCP Virtual Balancer... 37-6 Route-Based Virtual Balancer... 37-6 HTTP Virtual Balancer...

More information

DEPLOYMENT GUIDE Version 1.2. Deploying the BIG-IP System v10 with Microsoft IIS 7.0 and 7.5

DEPLOYMENT GUIDE Version 1.2. Deploying the BIG-IP System v10 with Microsoft IIS 7.0 and 7.5 DEPLOYMENT GUIDE Version 1.2 Deploying the BIG-IP System v10 with Microsoft IIS 7.0 and 7.5 Table of Contents Table of Contents Deploying the BIG-IP system v10 with Microsoft IIS Prerequisites and configuration

More information

Introduction to Network Operating Systems

Introduction to Network Operating Systems As mentioned earlier, different layers of the protocol stack use different kinds of addresses. We can now see that the Transport Layer (TCP) uses port addresses to route data to the correct process, the

More information

DNS at NLnet Labs. Matthijs Mekking

DNS at NLnet Labs. Matthijs Mekking DNS at NLnet Labs Matthijs Mekking Topics NLnet Labs DNS DNSSEC Recent events NLnet Internet Provider until 1997 The first internet backbone in Holland Funding research and software projects that aid the

More information

Domain Name System (DNS) Fundamentals

Domain Name System (DNS) Fundamentals Domain Name System (DNS) Fundamentals Mike Jager Network Startup Resource Center mike.jager@synack.co.nz These materials are licensed under the Creative Commons Attribution-NonCommercial 4.0 International

More information

Dissertation Title: SOCKS5-based Firewall Support For UDP-based Application. Author: Fung, King Pong

Dissertation Title: SOCKS5-based Firewall Support For UDP-based Application. Author: Fung, King Pong Dissertation Title: SOCKS5-based Firewall Support For UDP-based Application Author: Fung, King Pong MSc in Information Technology The Hong Kong Polytechnic University June 1999 i Abstract Abstract of dissertation

More information

How-to: DNS Enumeration

How-to: DNS Enumeration 25-04-2010 Author: Mohd Izhar Ali Email: johncrackernet@yahoo.com Website: http://johncrackernet.blogspot.com Table of Contents How-to: DNS Enumeration 1: Introduction... 3 2: DNS Enumeration... 4 3: How-to-DNS

More information

Load Balancing for Microsoft Office Communication Server 2007 Release 2

Load Balancing for Microsoft Office Communication Server 2007 Release 2 Load Balancing for Microsoft Office Communication Server 2007 Release 2 A Dell and F5 Networks Technical White Paper End-to-End Solutions Team Dell Product Group Enterprise Dell/F5 Partner Team F5 Networks

More information

Description: Objective: Attending students will learn:

Description: Objective: Attending students will learn: Course: Introduction to Cyber Security Duration: 5 Day Hands-On Lab & Lecture Course Price: $ 3,495.00 Description: In 2014 the world has continued to watch as breach after breach results in millions of

More information

socketio Documentation

socketio Documentation socketio Documentation Release 0.1 Miguel Grinberg January 17, 2016 Contents 1 What is Socket.IO? 3 2 Getting Started 5 3 Rooms 7 4 Responses 9 5 Callbacks 11 6 Namespaces 13 7 Using a Message Queue 15

More information

PES. High Availability Load Balancing in the Agile Infrastructure. Platform & Engineering Services. HEPiX Bologna, April 2013

PES. High Availability Load Balancing in the Agile Infrastructure. Platform & Engineering Services. HEPiX Bologna, April 2013 PES Platform & Engineering Services High Availability Load Balancing in the Agile Infrastructure HEPiX Bologna, April 2013 Vaggelis Atlidakis, -PES/PS Ignacio Reguero, -PES/PS PES Outline Core Concepts

More information

Veriton. Getting the Best out of Hardware Load Balancers in an Oracle Environment. What is a Load Balancer? Agenda. What s out there?

Veriton. Getting the Best out of Hardware Load Balancers in an Oracle Environment. What is a Load Balancer? Agenda. What s out there? Getting the Best out of Hardware Load Balancers in an Oracle Environment Simon Haslam Veriton Limited Veriton Oracle Partner, established 13 years Demanding web & call-centre applications Oracle ias &

More information

FortiOS Handbook - Load Balancing VERSION 5.2.2

FortiOS Handbook - Load Balancing VERSION 5.2.2 FortiOS Handbook - Load Balancing VERSION 5.2.2 FORTINET DOCUMENT LIBRARY http://docs.fortinet.com FORTINET VIDEO GUIDE http://video.fortinet.com FORTINET BLOG https://blog.fortinet.com CUSTOMER SERVICE

More information

Installing and Setting up Microsoft DNS Server

Installing and Setting up Microsoft DNS Server Training Installing and Setting up Microsoft DNS Server Introduction Versions Used Windows Server 2003 Setup Used i. Server Name = martini ii. Credentials: User = Administrator, Password = password iii.

More information

LOAD BALANCING TECHNIQUES FOR RELEASE 11i AND RELEASE 12 E-BUSINESS ENVIRONMENTS

LOAD BALANCING TECHNIQUES FOR RELEASE 11i AND RELEASE 12 E-BUSINESS ENVIRONMENTS LOAD BALANCING TECHNIQUES FOR RELEASE 11i AND RELEASE 12 E-BUSINESS ENVIRONMENTS Venkat Perumal IT Convergence Introduction Any application server based on a certain CPU, memory and other configurations

More information

Gajaba: Dynamic Rule Based Load Balancing Framework

Gajaba: Dynamic Rule Based Load Balancing Framework International Journal of Computer and Communication Engineering, Vol. 2, No. 5, September 2013 Gajaba: Dynamic Rule Based Load Balancing Framework Y. Pandithawattha, K. Perera, M. Perera, M. Miniruwan,

More information

How do I get to www.randomsite.com?

How do I get to www.randomsite.com? Networking Primer* *caveat: this is just a brief and incomplete introduction to networking to help students without a networking background learn Network Security. How do I get to www.randomsite.com? Local

More information

DNS (Domain Name System) is the system & protocol that translates domain names to IP addresses.

DNS (Domain Name System) is the system & protocol that translates domain names to IP addresses. Lab Exercise DNS Objective DNS (Domain Name System) is the system & protocol that translates domain names to IP addresses. Step 1: Analyse the supplied DNS Trace Here we examine the supplied trace of a

More information

SAP WEB DISPATCHER Helps you to make decisions on Web Dispatcher implementation

SAP WEB DISPATCHER Helps you to make decisions on Web Dispatcher implementation A BasisOnDemand.com White Paper SAP WEB DISPATCHER Helps you to make decisions on Web Dispatcher implementation by Prakash Palani Table of Contents 1. Purpose... 3 2. What is Web Dispatcher?... 3 3. Can

More information

ClusterLoad ESX Virtual Appliance quick start guide v6.3

ClusterLoad ESX Virtual Appliance quick start guide v6.3 ClusterLoad ESX Virtual Appliance quick start guide v6.3 ClusterLoad terminology...2 What are your objectives?...3 What is the difference between a one-arm and a two-arm configuration?...3 What are the

More information

Chapter 5. Data Communication And Internet Technology

Chapter 5. Data Communication And Internet Technology Chapter 5 Data Communication And Internet Technology Purpose Understand the fundamental networking concepts Agenda Network Concepts Communication Protocol TCP/IP-OSI Architecture Network Types LAN WAN

More information

Microsoft Lync Server 2010

Microsoft Lync Server 2010 Microsoft Lync Server 2010 Scale to a Load Balanced Enterprise Edition Pool with WebMux Walkthrough Published: March. 2012 For the most up to date version of the Scale to a Load Balanced Enterprise Edition

More information

Lab 2. CS-335a. Fall 2012 Computer Science Department. Manolis Surligas surligas@csd.uoc.gr

Lab 2. CS-335a. Fall 2012 Computer Science Department. Manolis Surligas surligas@csd.uoc.gr Lab 2 CS-335a Fall 2012 Computer Science Department Manolis Surligas surligas@csd.uoc.gr 1 Summary At this lab we will cover: Basics of Transport Layer (TCP, UDP) Broadcast ARP DNS More Wireshark filters

More information

Content Delivery Networks

Content Delivery Networks Content Delivery Networks Terena 2000 ftp://ftpeng.cisco.com/sgai/t2000cdn.pdf Silvano Gai Cisco Systems, USA Politecnico di Torino, IT sgai@cisco.com Terena 2000 1 Agenda What are Content Delivery Networks?

More information

HAProxy. Ryan O'Hara Principal Software Engineer, Red Hat September 17, 2014. 1 HAProxy

HAProxy. Ryan O'Hara Principal Software Engineer, Red Hat September 17, 2014. 1 HAProxy HAProxy Ryan O'Hara Principal Software Engineer, Red Hat September 17, 2014 1 HAProxy HAProxy Overview Capabilities Configuration OpenStack HA Neutron LBaaS Resources Questions 2 HAProxy Overview Load

More information

ExamPDF. Higher Quality,Better service!

ExamPDF. Higher Quality,Better service! ExamPDF Higher Quality,Better service! Q&A Exam : 1Y0-A21 Title : Basic Administration for Citrix NetScaler 9.2 Version : Demo 1 / 5 1.Scenario: An administrator is working with a Citrix consultant to

More information

NETASQ MIGRATING FROM V8 TO V9

NETASQ MIGRATING FROM V8 TO V9 UTM Firewall version 9 NETASQ MIGRATING FROM V8 TO V9 Document version: 1.1 Reference: naentno_migration-v8-to-v9 INTRODUCTION 3 Upgrading on a production site... 3 Compatibility... 3 Requirements... 4

More information

Network Security TCP/IP Refresher

Network Security TCP/IP Refresher Network Security TCP/IP Refresher What you (at least) need to know about networking! Dr. David Barrera Network Security HS 2014 Outline Network Reference Models Local Area Networks Internet Protocol (IP)

More information

Overview. Securing TCP/IP. Introduction to TCP/IP (cont d) Introduction to TCP/IP

Overview. Securing TCP/IP. Introduction to TCP/IP (cont d) Introduction to TCP/IP Overview Securing TCP/IP Chapter 6 TCP/IP Open Systems Interconnection Model Anatomy of a Packet Internet Protocol Security (IPSec) Web Security (HTTP over TLS, Secure-HTTP) Lecturer: Pei-yih Ting 1 2

More information

Emerald. Network Collector Version 4.0. Emerald Management Suite IEA Software, Inc.

Emerald. Network Collector Version 4.0. Emerald Management Suite IEA Software, Inc. Emerald Network Collector Version 4.0 Emerald Management Suite IEA Software, Inc. Table Of Contents Purpose... 3 Overview... 3 Modules... 3 Installation... 3 Configuration... 3 Filter Definitions... 4

More information

Integrating the F5 BigIP with Blackboard

Integrating the F5 BigIP with Blackboard Integrating the F5 BigIP with Blackboard Nick McClure nickjm@uky.edu Lead Systems Programmer University of Kentucky Created August 1, 2006 Last Updated June 17, 2008 Integrating the F5 BigIP with Blackboard

More information

Load balancing Microsoft IAG

Load balancing Microsoft IAG Load balancing Microsoft IAG Using ZXTM with Microsoft IAG (Intelligent Application Gateway) Server Zeus Technology Limited Zeus Technology UK: +44 (0)1223 525000 The Jeffreys Building 1955 Landings Drive

More information

Deploying the BIG-IP LTM v10 with Microsoft Lync Server 2010 and 2013

Deploying the BIG-IP LTM v10 with Microsoft Lync Server 2010 and 2013 Deployment Guide Document version:.6 What's inside: Prerequisites and configuration notes 4 Configuration Flow 5 Configuring the BIG-IP system for Lync Server 00 and 0 8 Creating the irules Appendix A:

More information

Pass Through Proxy. How-to. Overview:..1 Why PTP?...1

Pass Through Proxy. How-to. Overview:..1 Why PTP?...1 Pass Through Proxy How-to Overview:..1 Why PTP?...1 Via an SA port...1 Via external DNS resolution...1 Examples of Using Passthrough Proxy...2 Example configuration using virtual host name:...3 Example

More information

Deploying F5 with Microsoft Forefront Threat Management Gateway 2010

Deploying F5 with Microsoft Forefront Threat Management Gateway 2010 Deployment Guide Document Version 1.4 What s inside: 2 Prerequisites and configuration notes 3 Configuring two-way firewall load balancing to Microsoft OWA 11 Configuring firewall load balancing with a

More information

Firewall Load Balancing

Firewall Load Balancing Firewall Load Balancing 2015-04-28 17:50:12 UTC 2015 Citrix Systems, Inc. All rights reserved. Terms of Use Trademarks Privacy Statement Contents Firewall Load Balancing... 3 Firewall Load Balancing...

More information

Use Domain Name System and IP Version 6

Use Domain Name System and IP Version 6 Use Domain Name System and IP Version 6 What You Will Learn The introduction of IP Version 6 (IPv6) into an enterprise environment requires some changes both in the provisioned Domain Name System (DNS)

More information

7 Easy Steps to Implementing Application Load Balancing For 100% Availability and Accelerated Application Performance

7 Easy Steps to Implementing Application Load Balancing For 100% Availability and Accelerated Application Performance The recognized leader in proven and affordable load balancing and application delivery solutions White Paper 7 Easy Steps to Implementing Application Load Balancing For 100% Availability and Accelerated

More information

1. Introduction 2. Getting Started 3. Scenario 1 - Non-Replicated Cluster 4. Scenario 2 - Replicated Cluster 5. Conclusion

1. Introduction 2. Getting Started 3. Scenario 1 - Non-Replicated Cluster 4. Scenario 2 - Replicated Cluster 5. Conclusion 1. Introduction... 1 1.1. Non-Replicated Cluster... 1 1.2. Replicated Cluster... 2 1.3. Mixing Both Options... 3 2. Getting Started... 5 3. Scenario 1 - Non-Replicated Cluster... 6 3.1. JOSSO Agent Configuration...

More information

Intelligent Load Balancing SSL Acceleration and Equalizer v7.0

Intelligent Load Balancing SSL Acceleration and Equalizer v7.0 White Paper Intelligent Load Balancing SSL Acceleration and Equalizer v7.0 Intelligent Load Balancing: Layer 4 or Layer 7? In the three years since the dotcom bust, network architecture has sustained a

More information

DEPLOYMENT GUIDE Version 1.1. Deploying the BIG-IP LTM v10 with Citrix Presentation Server 4.5

DEPLOYMENT GUIDE Version 1.1. Deploying the BIG-IP LTM v10 with Citrix Presentation Server 4.5 DEPLOYMENT GUIDE Version 1.1 Deploying the BIG-IP LTM v10 with Citrix Presentation Server 4.5 Table of Contents Table of Contents Deploying the BIG-IP system v10 with Citrix Presentation Server Prerequisites

More information

CS514: Intermediate Course in Computer Systems

CS514: Intermediate Course in Computer Systems : Intermediate Course in Computer Systems Lecture 7: Sept. 19, 2003 Load Balancing Options Sources Lots of graphics and product description courtesy F5 website (www.f5.com) I believe F5 is market leader

More information

EE0-511. Easy CramBible Lab DEMO ONLY VERSION EE0-511. F5 Big-Ip v9 Local Traffic Management

EE0-511. Easy CramBible Lab DEMO ONLY VERSION EE0-511. F5 Big-Ip v9 Local Traffic Management Easy CramBible Lab EE0-511 F5 Big-Ip v9 Local Traffic Management ** Single-user License ** This copy can be only used by yourself for educational purposes Web: http://www.crambible.com/ E-mail: web@crambible.com

More information

Table of Contents. Chapter 1: Installing Endpoint Application Control. Chapter 2: Getting Support. Index

Table of Contents. Chapter 1: Installing Endpoint Application Control. Chapter 2: Getting Support. Index Table of Contents Chapter 1: Installing Endpoint Application Control System Requirements... 1-2 Installation Flow... 1-2 Required Components... 1-3 Welcome... 1-4 License Agreement... 1-5 Proxy Server...

More information

Configuring DNS. Finding Feature Information

Configuring DNS. Finding Feature Information The Domain Name System (DNS) is a distributed database in which you can map hostnames to IP addresses through the DNS protocol from a DNS server. Each unique IP address can have an associated hostname.

More information

Deliuery Networks. A Practical Guide to Content. Gilbert Held. Second Edition. CRC Press. Taylor & Francis Group

Deliuery Networks. A Practical Guide to Content. Gilbert Held. Second Edition. CRC Press. Taylor & Francis Group A Practical Guide to Content Deliuery Networks Second Edition Gilbert Held CRC Press Taylor & Francis Group Boca Raton London NewYork CRC Press is an imprint of the Taylor & Francis Croup, an informa business

More information

Link Load Balancing 2015-04-28 08:50:44 UTC. 2015 Citrix Systems, Inc. All rights reserved. Terms of Use Trademarks Privacy Statement

Link Load Balancing 2015-04-28 08:50:44 UTC. 2015 Citrix Systems, Inc. All rights reserved. Terms of Use Trademarks Privacy Statement Link Load Balancing 2015-04-28 08:50:44 UTC 2015 Citrix Systems, Inc. All rights reserved. Terms of Use Trademarks Privacy Statement Contents Link Load Balancing... 3 Link Load Balancing... 4 Configuring

More information

CONSUL AS A MONITORING SERVICE

CONSUL AS A MONITORING SERVICE CONSUL AS A MONITORING SERVICE SETH VARGO @sethvargo SERVICE ORIENTED ARCHITECTURE SOA PRIMER Autonomous Limited Scope Loose Coupling ORDER PROCESSING ORDER WEB APP HISTORY FORECASTING ORDER PROCESSING

More information