420 likes | 573 Views
High Quality Networks. Han, Xiaoying Boyles, Josh Sun, Wenjie. Outline. Load Balancing Fault Tolerance Quality of Services. Load Balancing. HTTP Traffic?. What is load balancing?. A approach to Improve performance by increasing the number of Web servers.
E N D
High Quality Networks Han, Xiaoying Boyles, Josh Sun, Wenjie
Outline • Load Balancing • Fault Tolerance • Quality of Services
What is load balancing? • A approach to Improve performance by increasing the number of Web servers. • It involves an attempt to distribute the traffic onto a cluster of back-end Web servers
Software load balancing A readily available software solution called DNS Round Robin, which resides on your primary web server and intercepts packets as they come into your site. It sends a packet to the first designated server and if the server doesn't respond (because it is busy or down), it sends the packet to the next designated server, and so on until it begins again at the first server.
The limitation of DNS Round Robin • DNS Round Robin doesn't tell you whether the skipped server is down (and therefore needs maintenance) or is just busy. • It doesn't take into consideration the type of content requested, such as graphics or specific URL's. • It takes up valuable server energies running itself.
Continued • If the primary web server goes down, so does DNS Round Robin, unless you replicate it on a backup server. Even then, how does the packet from the Internet get to the backup server? • If you have a large site with a complex server farm (cluster) arrangement, DNS Round Robin becomes a lot more difficult to configure.
The Reverse Proxy Approach • An HTTP proxy server that operates in the opposite direction of the commonly known one • An HTTP proxy server is used near or in front of the browsers to bundle requests (when using a firewall) and to reduce bandwidth waste by performing data caching.
A reverse-proxy-based Web server cluster with dedicated back-end subnet
Advantages of Reverse Proxy Approach • Simplify traffic logging and monitoring of the Web site • Help us to have complete control over the back-end delegation scheme, because it's done locally in the reverse proxy for each request and not cached somewhere on the Internet
Summary • The DNS method is fairly standard, but does have its problems, including caching of DNS data and the potential that an individual machine in the cluster may fail.
Summary(cont’) • The reverse-proxy method improves reliability and control by allowing the administrator to designate subclusters for specific tasks, but we could go even further.
“Don’t worry Mr. Simms, your data is stored on a three-way redundant server cluster.”
Fault Tolerance Vs. High Availability • Fault tolerant systems • No downtime • No lost data • Difficult to implement • High availability clusters • Minimal downtime • Minimal lost data • Easier to implement
High Availability Cluster • Quick recovery from failures • Hardware or software failures trigger a fail-over from one system to another • Uses RAID to share data
Fault Tolerance • Redundant data • Replicate all major hardware components • RAID structures • Multiple paths to data • Multiple NIC cards
Redundant Data • Replicate hardware • CPUs, memory, system buses, I/O buses, disk controllers, disk drives, LAN controllers, power supplies, cooling fans • Hot swappable servers • Messaging system • Cache consistency
RAID Structures • Redundant Arrays of Independent Disks • Accessible from multiple SCSI adaptors • Type 0 – disk striping • Type 1 – redundant data • Type 1 + 0
RAID – Type 1 + 0 • Dual-level RAID • Data is striped and mirrored • Increased data availability of RAID 1 • Increased read performance of RAID 0
Multiple NICs • All servers should have at least 2 NIC cards • Each card should connect to a different LAN segment • Each segment should connect to a separate interface on different routers
What Is Quality of Service? The ability of a network to provide better service to selected network traffic over various underlying technologies • Supporting dedicated bandwidth • Improving loss characteristics • Avoiding and managing network congestion • Shaping network traffic • Setting traffic priorities across the network
QOS Characteristics • Bandwidth: Peak Data Rate (PDR), Sustained Data Rate (SDR), Minimum Data Rate (MDR). • Delay: End-to-End or Round-Trip Delay, Delay Variation (Jitter). • Reliability: Availability (as % Uptime), Mean Time Between Failures/Mean Time To Repair (MTBF/MTTR), Errors and Packet Loss.
Why QOS? (2) • Today's computer networks provide best-effort (unreliable and unpredictable) service, which is unacceptable for many emerging high-priority applications with mission-critical or real-time network requirements. • Poor performance and high expense of multi-homing solutions
Basic QOS Architecture • QoS within a single network element, which includes queuing, scheduling, and traffic shaping features. • QoS signaling techniques for coordinating QoS from end-to-end between network elements. • QoS policing and management functions to control and administer end-to-end traffic across a network.
QoS Within a Single Network Element • Congestion Management: put packets into different queues and service certain queues more often • Queue Management: prevent the dropping of high-priority packets even if the queue fills up • Link Efficiency: link fragmentation and interleave, header compression • Traffic Shaping and Policing: limit full bandwidth potential of flows to avoid overflow of the remote link through buffering or discarding
QoS Identification and Marking • Through classification and reservation • Packet is identified but not marked: Priority Queuing (PQ), Custom Queuing (CQ) • Packet is marked: IP precedence bits can be set
QoS Management • Step 1 Baseline the network with devices such as RMON probes. This helps in determining the traffic characteristics of the network. Also, applications targeted for QoS should be baselined (usually in terms of response time). • Step 2 Deploy QoS techniques when the traffic characteristics have been obtained and an application(s) has been targeted for increased QoS. • Step 3 Evaluate the results by testing the response of the targeted applications to see whether the QoS goals have been reached.
Software components of QOS • Service system (server) software. • Device drivers for specialized end equipment. • OS/APIs for end hosts, possible including end equipment.
Service System Software Kernel of service request handling and support • State machine • Request pre-processor • Configuration manager • Fault manager
Device Drivers We are agents for service system software in end equipment. • Keep state information about its end equipment • Translate service requests into device-specific configuration characteristics
OS/APIs in End Systems • Keeping state information, fault information, and service information specific to end systems • Provide user interface function to users/applications • Communicate with the pre-processor of the service system
References http://www.networkcomputing.com/netdesign/faultindex.html http://www.darpa.mil/ito/psum2000/J907-0.html http://www.bitpipe.com/data/rlist?t=995912743_21157731&sort_by=status&src=google http://java.apache.org/jserv/howto.load-balancing.html http://www.nwfusion.com/cgi-bin/mailto/x.cgi http://www.webtechniques.com/archives/1998/05/engelschall/ http://www.cisco.com/univercd/cc/td/doc/cisintwk/ito_doc/qos.htm http://www.nas.nasa.gov/groups/WAN/documents/services-white-paper.html http://www.citr.ece.mcgill.ca/conf2001/gitlin_2001conf.pdf