thin clients: thin clients: back to the future back to the future - - PowerPoint PPT Presentation
thin clients: thin clients: back to the future back to the future - - PowerPoint PPT Presentation
thin clients: thin clients: back to the future back to the future <Jason Nieh> nieh@cs.columbia.edu <Jason Nieh> nieh@cs.columbia.edu Computers in the future may weigh no more than 1.5 tons. a Popular Mechanics editorial
“Computers in the future may weigh no more than 1.5 tons.” a Popular Mechanics editorial 1949
PCs in use worldwide (2004) PCs in use worldwide (2004)
224 69 53 46 36 29 26 23 22 19 19 14 13 11 11 206
5 0 5 0 100 100 150 150 200 200 250 250 U S U S Japan apan C h i n a n a G e r m any any U K U K F rance ance K ore a e a I ta l y C anada anada B ra z a z i l i l R u s s u s s i a A u s u st r t ra l i l i a I nd nd i a M e x e x i c o c o Ne th e h er l ands ands O th e h er C
- u
n t r y P C P Cs i n u s e u s e ( m illi illi
- n s
- n s )
"I think there is a world market for about five computers” remark attributed to Thomas J. Watson Chairman of the Board International Business Machines 1943
“There is no reason anyone would want a computer in their home.” Ken Olson founder and chairman Digital Equipment 1977
“I can assure you that data processing is a fad that won't last out the year.” a Prentice Hall business book editor 1957
today today’ ’s computer s computer
today today’ ’s computer problem s computer problem
problem #1: manageability problem #1: manageability
problem #2: operating cost problem #2: operating cost
move add change $1000 per
incident
problem #3: availability problem #3: availability
problem #4: work area problem #4: work area
problem #5: security problem #5: security
dis dis-integration of the computer
- integration of the computer
thin-client computing thin-client computing
network decouples computing and display
user input
thin-client computing thin-client computing
display updates application processing and data here stateless client secure server room
benefits benefits
simplify IT management minimize cost of desktop failures transparent user mobility continuous computing access secure computing services improve user/computer work areas utilize resources efficiently
trends trends
computers are cheap people are expensive
computers computers vs vs people people
Dell Dimension
2400 PC desktop, 2.4 GHz CPU, $420
Dell PowerEdge
420 server, 2.4 GHz CPU, $350
move, add,
change: $1000 per incident
“the network is the computer”
thin clients thin clients vs vs mainframes mainframes
dumb plain text
terminals
large,
expensive machine
rich graphical
interfaces
clusters of
inexpensive servers, blades
thin clients thin clients vs vs web web
rewrite
applications for the web
client browser
and helper applications
preserve
software investments
no client
applications
key technologies key technologies
remote display remote display
display pipeline display pipeline
applications window system display device driver framebuffer
client/server partitioning client/server partitioning
applications window system display device driver framebuffer client server
window server on client window server on client
applications window system display device driver framebuffer client server
window server on client window server on client
local non-app UI interactions complex software running on client software needs to be maintained client resources need to scale
window server on server window server on server
applications window system display device driver framebuffer client server
window server on server window server on server
no complex client software no client software maintenance client scales with display “ultra-thin” client
wire protocol wire protocol
high-level graphics low-level graphics 2D drawing primitives raw pixels
application application protocol protocol
applications window system device driver framebuffer raw pixels high-level requests
THINC THINC
applications window system device driver framebuffer raw pixels high-level requests
virtual device driver
THINC THINC
applications window system
display updates input events
THINC protocol THINC protocol
copy solid fill pixmap fill bitmap RAW
THINC optimizations THINC optimizations
offscreen drawing transparent video support local cursor drawing support server-push model smallest update first scheduling server-side screen scaling
enables enables
stateless clients heterogeneous display devices remote access remote collaboration
performance? performance?
yes yes no yes yes yes no yes yes yes audio Linux no 24 yes no X Linux no 24 yes yes VNC Linux yes 24 yes yes Sun Ray Linux yes 24 yes no THINC Linux yes 24 no no NX Linux yes 24 no no X ssh -C Windows yes 8 yes no GoToMyPC Windows yes 24 yes no RDP Windows yes 24 yes no ICA Linux N/A 24 N/A no local PC OS en- crypt ion color depth ultra thin custom window server name
configurations configurations
desktop LAN desktop WAN 802.11g PDA
desktop LAN web performance desktop LAN web performance
0 . 7 0 . 59 0 . 53 0 . 5 0 . 56 0 . 53 0 . 44 1 . 01 0 . 43 N/A 0 . 5 1 1 . 5 2 2 . 5 3 P C P C ICA CA R D P R D P GoT o M yP C X X s s s sh
- C
N X N X VN C S u n S u n R ay TH IN C
p e p er w eb eb page page l a tency ency (s )
desktop LAN web performance desktop LAN web performance
25 . 29 147 . 32 203 . 91 391 . 8 108 . 4 59 . 33 205 . 54 228 . 92 126 . 75 N / A 5 0 5 0 1 0 0 1 0 0 1 5 0 1 5 0 2 0 0 2 0 0 2 5 0 2 5 0 3 0 0 3 0 0 3 5 0 3 5 0 4 0 0 4 0 0 P C P C I CA RD P G o G oToM yP C P C X X s s s sh - C N X N X VN VNC S u n S u n R a R ay TH I N C
p e p e r w e b e b page page d a d a t a ( K B K B )
desktop WAN web performance desktop WAN web performance
0 . 77 0 . 79 1 . 05 2 . 89 1 . 46 1 . 47 0 . 64 0 . 85 1 . 21 0 . 64 0 . 5 1 1 . 5 2 2 . 5 3 P C P C ICA CA R D P R D P GoT o M yP C X X s s s sh
- C
N X N X VN C S u n S u n R ay TH IN C
p e p er w eb eb page page l a tency ency (s )
802.11g PDA web performance 802.11g PDA web performance
0 . 84 0 . 48 3 . 15 0 . 46 0 . 46 0 . 5 1 1 . 5 2 2 . 5 3 P C P C ICA CA R D P R D P GoT o M yP C X X s s s sh
- C
N X N X VN C S u n S u n R ay TH IN C
p e p er w eb eb page page l a tency ency (s )
desktop LAN A/V performance desktop LAN A/V performance
100 % 28 % 15 % 100 % 76 % 12 % 14 % 13 % 100 % N/A 0 % 0 % 2 0 2 0 % 4 0 4 0 % 6 0 6 0 % 8 0 8 0 % 1 0 0 1 0 0 % P C P C ICA CA R D P R D P GoT o M yP C X X s s s sh
- C
N X N X VN C S u n S u n R ay TH IN C
aud aud i
- /v
- /v i
deo deo qua qua l i l i ty
desktop WAN A/V performance desktop WAN A/V performance
100 % 20 % 2% 1% 65 % 27 % 12 % 8% 12 % 100 % 0 % 0 % 2 0 2 0 % 4 0 4 0 % 6 0 6 0 % 8 0 8 0 % 1 0 0 1 0 0 % P C P C ICA CA R D P R D P GoT o M yP C X X s s s sh
- C
N X N X VN C S u n S u n R ay TH IN C
aud aud i
- /v
- /v i
deo deo qua qua l i l i ty
802.11g PDA A/V performance 802.11g PDA A/V performance
7% 19 % 1% 14 % 100 % 0 % 0 % 2 0 2 0 % 4 0 4 0 % 6 0 6 0 % 8 0 8 0 % 1 0 0 1 0 0 % P C P C ICA CA R D P R D P GoT o M yP C X X s s s sh
- C
N X N X VN C S u n S u n R ay TH IN C
aud aud i
- /v
- /v i
deo deo qua qua l i l i ty
thinc thinc
ultra-thin client
leverage and virtualize standard display driver interface fast, lightweight full-motion, full resolution audio/video performance
transparent transparent checkpoint/migration checkpoint/migration
checkpoint checkpoint
capture the state of a running
process and save it so that it can be resumed at a later time
migration migration
move checkpointed process state to a
target machine and resume process
transparent transparent
no application changes no need for new languages/run-time no operating system kernel changes no constraints on use of OS services
enables enables
software mobility load balancing power management fault resilience improved system availability
approaches approaches
language Emerald library Condor kernel Mosix hardware Vmware, Xen system call zap
Hardware Libraries Applications Operating System
zap zap
virtualize OS to decouple
applications from underlying OS instance
use high-level kernel functionality
for portable migration
preserve application availability
across operating system upgrades
problem problem
int iChildPID; if (iChildPID=fork()) { /* parent does some work */ waitpid(iChildPID); } else { /* child does some work */ exit(0); }
issues issues
resource consistency resource conflicts resource dependencies transparency
solution solution
private virtual namespace
PrOcess Domain (POD)
POD virtualization POD virtualization
PID IPC file system network devices
architecture architecture
POD virtualization + checkpoint/restart kernel module in Linux
cost? cost?
virtualization virtualization
0.5 1 1.5 2 2.5 3 3.5 4 getpid fork hackbench httpperf make mysql volano
Normalized latency
Xen Zap Linux SMP Zap SMP
remote desktop remote desktop
checkpoint/restart checkpoint/restart
19 0 . 851 0 . 942
2 4 6 8 1 0 1 0 1 2 1 2 1 4 1 4 1 6 1 6 1 8 1 8 2 0 2 0 no nor m a l s ta r t r tup up zap zap checkpo checkpo i n t zap zap re s e sta r t r t t i m e ( s )
zap zap
transparent checkpoint/migration
- f legacy and network applications
POD: consistent, conflict-free,
avoid dependencies fast and lightweight
conclusions conclusions
technology scaling trends are driving thin-client computing key enabling technologies: remote display and checkpoint/migration THINC and Zap: display and
- perating system virtualization