Chapter 3
Workstation and server Hardware
Mezgebe M. [UU] 1
Workstation
o Most applications are executed at the workstation
o Therefore, it must be powerful in terms of the
processor and the memory
o As a rule of thumb, the workstation must be as
powerful as it were to be used as a standalone unit to
run the applications
Mezgebe M. [UU] 2
Workstation Processor and Memory
o Powerful processor
o Pentium class processor
o Adequate memory
o 32 Mbytes or more
o DIMM preferred although fast EDO SIMM may also be used
Mezgebe M. [UU] 3
Workstation Storage and Compatibility
o Sufficient storage
o Storage in gigabytes
o Important in a client-server environment
o Front-end tools are stored on the workstation
o Speed of storage
o Ultra DMA or SCSI preferred
o EIDE may also be used
o Hardware components with appropriate drivers for the client
operating system
Mezgebe M. [UU] 4
Reliability
o Power surge protector
o Uninterruptible Power Supply (UPS), for critical
applications
Mezgebe M. [UU] 5
Servers
o Backbone of a network
o Types
o Powerful micros
o Servers
o Super-servers
o Sometimes mini-computers are used as servers
o In a client-server, the server also acts as an engine of database
execution
o In general, it is used for the sharing of stored data and
application
Mezgebe M. [UU] 6
Hardware Reliability and LAN
o The more reliable a component, the more expensive it is.
o Server hardware is more expensive than desktop workstation
hardware as it needs to be more reliable.
o If a workstation fails, one person is inconvenienced. If a server fails,
many people are inconvenienced.
o Servers need to be as powerful as possible as many people can be using
them at once.
Mezgebe M. [UU] 7
Hot Swappable
o A hot swappable device is one which can be replaced whilst the server is still
in operation.
o You should only hot swap components when the component and operating
system supports it.
o The following components can be hot swapped: RAM, disk drive, power
supply, NIC, graphics cards.
o Hot swappable components are more expensive. Often only necessary when
you need to keep a server operational 24/7.
o Most organizations can tolerate a server being offline after hours for
maintenance. Mezgebe M. [UU] 8
Multiple Power Supplies
o Multiple power supplies can allow a server to function after one
power supply fails.
o Power supplies are the component most likely to fail in a server.
They are also one of the cheapest components.
o Having multiple power supplies doesn’t mean you can hot swap. In
many cases it will allow you to keep your server running until you
can choose the right time to power down and replace the failed
component. Mezgebe M. [UU] 9
UPS
o Stands for Uninterruptible Power Supply.
o A battery that allows a server to remain functional when there is a loss of
mains electricity.
o Battery also used when power fluctuates to provide a stable current to the
server. Brownouts occur more often than blackouts and can do just as much
damage.
o Most operating systems can be configured to gracefully shut down once the
server shifts to battery power.
Mezgebe M. [UU] 10
Asymmetric Multiprocessing
o Where special processors can be delegated specific tasks
by the operating system.
o Graphics cards are an example. Graphics processing
occurs on the graphics card’s processor rather than
the computer’s CPU.
Mezgebe M. [UU] 11
Symmetric Multiprocessing
• Symmetric multiprocessing involves having several
processors of the same make and model working in parallel.
• Tasks are balanced across all processors.
• Operating system assigns tasks to processors based on
current processor load.
Mezgebe M. [UU] 12
Desired Characteristics of Server: Processor and Storage
Requirement
o Powerful processor
o Latest Pentium Processor
o Multiple processors, if appropriate
o Large storage space
o Several gigabytes at a minimum
o Actual requirement will vary LAN size
o Fast disk access speed
o Less than 10 ms
Mezgebe M. [UU] 14
Desired Characteristics of a Server: CD-ROM
o Fast CD-ROM drives
o CD-ROM towers are often preferred
Mezgebe M. [UU] 15
Desired Characteristics of Server: Storage Technology
o Better hard disk technology
o SCSI
o Fast access
o Daisy chaining of devices
o Latest SCSI technology is required
o Possible consideration given to fiber-channel in the future
Mezgebe M. [UU] 16
Desired Characteristics of Server: Bus and Memory
Technologies
o Better bus technology
o PCI
o Memory
o In excess of 128 Mbytes
o SDRAM or similar memory technology functioning at 10
nanoseconds or less
o The 168-pin SDRAM is also known as the DIMM chips as
opposed to the 72-pin SIMM chips
Mezgebe M. [UU] 17
Desired Characteristics of Server: Reliability
o Good back-up facilities
o Back-up tape
o Uniterruptible Power Supply (UPS)
Mezgebe M. [UU] 18
Fault Tolerant Feature for Servers
o RAID storage technology
o A system based on multiple disk
o Hot-swappable disks
o Redundant power supply
o Hot-swappable power supply
Mezgebe M. [UU] 19
Server Selection
Mezgebe M. [UU] 20
10 Users
Source:
PC Magazine,
Mezgebe M. [UU] 21
25 to 50 Users
Source:
PC Magazine,
Mezgebe M. [UU] 22
100 to 250 Users
Source:
PC Magazine,
Mezgebe M. [UU] 23
500 to 1000 Users
Source:
PC Magazine,
Mezgebe M. [UU] 24
1000+ Users
Source:
PC Magazine,
Mezgebe M. [UU] 25
Server Performance in Web Page Requests Per Second
Mezgebe M. [UU] 26
Server Performance in Megabits Per Second
Mezgebe M. [UU] 27
Server Performance in Transactions Per Second
Mezgebe M. [UU] 28
Page Requests: Single Vs. Dual
Mezgebe M. [UU] 29
Throughput: Single Vs. Dual
Mezgebe M. [UU] 30
Transactions: Single Vs. Dual
Mezgebe M. [UU] 31
An Investigation on the Design of Scalable Servers
Mezgebe M. [UU] 32
Introduction
o The emergence of large number of Internet
applications brings heavy workload to servers.
o Scalable server design is not a problem but a
challenge in the research of distributed systems.
Mezgebe M. [UU] 33
Growth of Internet Hosts
Number of Hosts advertised in the DNS
160,000,000
140,000,000
120,000,000
100,000,000
80,000,000
60,000,000
40,000,000
20,000,000
Source: Internet Software Consortium (http://www.isc.org)
Mezgebe M. [UU] 34
Growth of Web Servers
Growth of Web Servers
45,000,000
40,000,000
35,000,000
30,000,000
25,000,000
20,000,000
15,000,000
10,000,000
5,000,000
Source: Netcraft Web Server Survey (http://www.netcraft.com)
Mezgebe M. [UU] 35
Growth of Server Platforms
Source: Netcraft Web Server Survey (http://www.netcraft.com)
Mezgebe M. [UU] 36
Why do We Need a Large-Scale Server
o Computing power needed
o Information or contents
o Large-scale portal site
o Search engine
o Contents sharing
o Human Community
o Game players
o Instant messages
o Internet drives the trend
Mezgebe M. [UU] 37
Examples of large-scale servers
o Large-scale web servers
o Search engines
o Game servers
o Instant message servers
o News servers
o Computing Servers
o Large Scale File Servers
o Large Scale Proxy Servers
o Amazon, AOL, Google, Hotmail, Inktomi, WebTV, and Yahoo
rely on clusters of PCs to provide services used by millions of
people every day Mezgebe M. [UU] 38
Caching/Proxy Servers
o An intermediate server to provide efficient content access for
clients
o Considering efficient content access by a group of users
typically spread in the same local area
o Off loading the servers
o An effective way to improve the efficiency of content oriented
servers
Mezgebe M. [UU] 39
Peer-to-Peer Architecture
o A relatively new approach to building large-scale services
o Some applications or users demand only private
communication, public sharing is not the main purpose
o The server provides the binding service to clients only,
communication or messages exchange goes peer-to-peer
o Maybe even server-less
o Off loading the server (favor a large scale service)
Mezgebe M. [UU] 40
What is a Scalable Server ?
o A server is scalable if
o it has the ability to easily adapt to the change in
service capacity
o it can handle the incremental growing of requests
and resources without suffering an obvious loss of
performance or increase in server administrative
complexity.
Mezgebe M. [UU] 41
Scalability is Relative
Response Time
Original Server
Improved Scalability Server
Acceptable
Response Time
Client Request
Light workload Heavy workload
Server Performance Diagram
Mezgebe M. [UU] 42
Characteristics of Scalable Servers
o Single Server Image
o Only one server network address should be publicized for the
entire server cluster
o Can easily adapt to serve a large number of client requests
o The number of servers can be changed easily
o Servers can join or leave the cluster dynamically without
bring down the service
Mezgebe M. [UU] 43
Characteristics of Scalable Servers (Continued)
o Load sharing
o System load should be evenly distributed among the
servers
o Fault tolerance
o if any server fails, the failure should be masked by
distributing the requests to the remaining servers without
bringing down the service
Mezgebe M. [UU] 44
How to Scale a Server Up
o Identify all components of the server system and their
relationship
o Classify server workload
o Determine the bottleneck components
o Apply appropriate scaling techniques
o Evaluate the server performance
Mezgebe M. [UU] 45
Identifying bottleneck or limitation
o Determine where to focus scalability efforts
o Computing power
o I/O power
o Disk capacity
o Communication
o Number of connections
o Determine which scaling techniques to apply
Mezgebe M. [UU] 46
Improving Server Scalability
o Increase the capacity or speed of the component
o Improve the efficiency of the component or system
o Shift or reduce the load on the component
o Use replication and caching techniques
o Distribute data and computation
o Move objects( data, computing) to clients
Mezgebe M. [UU] 47
Design Issues
o How to provide a single server image ?
o Transparent access to services
o How to distribute workload to servers ?
o How to improve server availability ?
o How to improve fault tolerance ?
o How to manage large number of servers ?
o Server management should be easy
o Extensive reconfiguration of servers should not be required
o Server software installation and configuration
o Software update with new version
Mezgebe M. [UU] 48
The Generic Scalable Server Model
o Clients
o Request Dispatcher
o Server Cluster
o Server Load Collecting and Monitoring
Mezgebe M. [UU] 49
The Generic Model (Continued)
Server Load
Collecting & Monitoring
Real Server
Request
Real Server
Clients
Request
Dispatcher
Real Server
Server Cluster
Mezgebe M. [UU] 50
Server Load Collection
o A system module that collects the loads of all
servers
o Number of connections
o Number of clients/requests
o CPU load
o Amount of messages
Mezgebe M. [UU] 51
Request Dispatcher
o A conceptual component that is responsible for assigning a server to serve a
request
o A request issued by clients would be
o A request containing an address of a logical server
o Domain name
o IP address
o A request containing the resource identifier
o URL
o File name
o Basically, mapping/routing requests to the appropriate server based on server
load/capacity, data locations, client locations etc.
o Can be more than one to construct a large-scale fault tolerant server system
o The mapping maybe more than one steps
Mezgebe M. [UU] 52
Request Dispatcher (Continued)
o Possible Candidates
o The AP server (may redirect request to others, eg. URL redirect)
o DNS server (Name Server)
o DNS client (probing the server groups to select a nearest server)
o Smart Client
o NAT-like device (Mapping IP addresses)
o Content-based switch (dispatching request based on contents)
o End users
Mezgebe M. [UU] 53
Request Dispatcher (Continued)
o Design from scratch
o Something new something old
o Compatible with existing architecture
o Interception and mapping
o Where to intercept
o The execution path the requests will go
o Client=>DNS Client=>DNS server=>Server-Side-Switch=>Internal-Load-
Balancer
Mezgebe M. [UU] 54
Domain Name Mapping (Continued)
Domain S
Primary DNS
(Round-Robin)
Server 1
Clients Internet Server 2
Server 3
Server-Side Request Dispatcher
(Round-Robin DNS) Server Group
Mezgebe M. [UU] 55
Domain Name Mapping (Continued)
o Round-Robin DNS
o Treats all servers as equal
o Cannot determine server load or availability
o May redirect client requests to failed servers
o Requires long period for DNS entry updates to percolate
through Internet
o DNS entry may be cached on client side DNS for long
period
Mezgebe M. [UU] 56
Domain Name Mapping (Continued)
Domain C ICMP messages to all servers
Smart DNS
Server 1
Server 2
Internet
Clients
Server 3
Client-Side Request Dispatcher
(Smart DNS) Server Group
Mezgebe M. [UU] 57
Domain Name Mapping (Continued)
o Smart DNS
o Send ICMP messages to all servers in the cluster in
order to get the shortest round-trip time
o Reply to client with the server which echos first
o Can select the nearest and available server
o Cannot estimate server load
Mezgebe M. [UU] 58
Connection Routing
o Intercepting request packets and routing the
connection to an appropriate server
o Address and port re-mapping
o Scalable server broker (DSLAB)
o Magic router (UC Berkeley)
o Local director (CISCO)
o Content Snooping
o Layer 7 switch
Mezgebe M. [UU] 59
Connection Routing (Continued)
Server 1
Request
Dispatcher Server 2
Clients Internet
Server 3
Server-Side Request Dispatcher Server Group
Mezgebe M. [UU] 60
How to Provide Single Server Image
o Using name servers/service brokers
o Mapping resource identifiers within the system
o Intercepting requests during the normal processing
procedure to map the addresses/names/identifiers to a real
server
o NAT-based approach is the example
o Content-aware switch
o Using group identifiers and group communication
Mezgebe M. [UU] 61
Selecting an Appropriate Server
o Round-robin or random
o Server load/capacity
o Location of client/server
o Location of resources/services
Mezgebe M. [UU] 62
The NCSA Scalable WWW Server
NCSA Domain Database Domain NCSA
www IN HINFO www.ncsa.uiuc.edu
IN A 999.999.9.111 ; www1 Primary DNS
IN A 999.999.9.222 ; www2 Document
IN A 999.999.9.333 ; www3 Storages
www 1
Clients Internet www 2
www 3
Web Server Group
Mezgebe M. [UU] 63
The NCSA Scalable WWW Server (Continued)
o Round-Robin DNS
o Easy maintenance of web server group
o Treats all servers as equal
o Cannot determine server load or availability
o May redirect client requests to failed servers
o Requires long period for DNS entry updates to percolate through
Internet
o DNS entry may be cached on client side DNS for long period
Mezgebe M. [UU] 64
The Berkeley Smart Client
Java Web Brower
Server 1
Applet Request
Service Request
Server 2
Applet Reply
Client
Director Lazy/Eager Updates
Interface
Applet for server load status
Server 3
Applet
Smart Client Server Group
Mezgebe M. [UU] 65
The Berkeley Smart Client (Continued)
o In many cases, the client, rather than the server, is the right
place to implement transparent access to network services
o When a user wishes to use a service, a bootstrapping
mechanism is used to retrieve service-specific Java applets to
mediate server access.
o The client interface applet provides the interface to the user and
makes requests of the service (via the director applet ).
o The director applet is responsible for providing transparency to the
client applet; it makes server requests to the best appropriate (e.g.
least loaded) server, and updates its notion of server state.
o Scalable FTP, Chat services.
Mezgebe M. [UU] 66
The Smart DNS
Primary DNS Domain tw.freebsd.org
Domain Database (freebsd.csie.nctu.edu.tw)
ftp 1 ftp IN HINFO ftp.tw.freebsd.org
IN A 140.113.17.209 ; ftp1 (nctu)
IN A 140.109.13.41 : ftp2 (sinica)
IN A 140.123.254.5 ; ftp3 (ccu)
IN A 140.116.72.25 ; ftp4 (ncku)
Clients Internet
ftp 2
DNS Query
Local DNS
(Smart DNS)
ICMP Messages
ftp 3
ftp 4
Mezgebe M. [UU] 67
The Smart DNS
Server3
Server2
Server1
www.ncku IN A 140.116.1.1
IN A 140.116.1.2
Ping IN A 140.116.1.3
Ping Primary
DNS
Ping IP list
Internet
First Reply
Local Best IP
DNS
DNS query
www.ncku IN A 140.116.1.2 Client
IN A 140.116.1.1
IN A 140.116.1.3
Mezgebe M. [UU] 68