improving thin client performance using the smart proxy ...cseweb.ucsd.edu/~cbtaylor/psu.pdf · the...
TRANSCRIPT
![Page 1: Improving Thin Client Performance Using the Smart Proxy ...cseweb.ucsd.edu/~cbtaylor/psu.pdf · The Proxy and VNC unmodified server unmodified client proxy using RFB protocol request](https://reader034.vdocuments.site/reader034/viewer/2022042212/5eb551126516701f5d1d0773/html5/thumbnails/1.jpg)
Improving Thin ClientPerformance Using the
Smart Proxy Architecture
Cynthia Taylor, Joe PasqualeUniversity of California,
San Diego
![Page 2: Improving Thin Client Performance Using the Smart Proxy ...cseweb.ucsd.edu/~cbtaylor/psu.pdf · The Proxy and VNC unmodified server unmodified client proxy using RFB protocol request](https://reader034.vdocuments.site/reader034/viewer/2022042212/5eb551126516701f5d1d0773/html5/thumbnails/2.jpg)
Introduction Sample Device Sample Application
Definitions The Smart Proxy Architecture Improving VNC Results & Conclusion
![Page 3: Improving Thin Client Performance Using the Smart Proxy ...cseweb.ucsd.edu/~cbtaylor/psu.pdf · The Proxy and VNC unmodified server unmodified client proxy using RFB protocol request](https://reader034.vdocuments.site/reader034/viewer/2022042212/5eb551126516701f5d1d0773/html5/thumbnails/3.jpg)
Devices
Zypad Wearable Computer
128 MB RamGPS, Accelerometer
Video Glasses
![Page 4: Improving Thin Client Performance Using the Smart Proxy ...cseweb.ucsd.edu/~cbtaylor/psu.pdf · The Proxy and VNC unmodified server unmodified client proxy using RFB protocol request](https://reader034.vdocuments.site/reader034/viewer/2022042212/5eb551126516701f5d1d0773/html5/thumbnails/4.jpg)
Application
Displaying contextual information about theuser’s location
Historic InformationMapsVirtual Worlds
![Page 5: Improving Thin Client Performance Using the Smart Proxy ...cseweb.ucsd.edu/~cbtaylor/psu.pdf · The Proxy and VNC unmodified server unmodified client proxy using RFB protocol request](https://reader034.vdocuments.site/reader034/viewer/2022042212/5eb551126516701f5d1d0773/html5/thumbnails/5.jpg)
Introduction Definitions
What is Thin Client Computing? Why Thin Clients? Latency and Performance
The Smart Proxy Architecture Improving VNC Results & Conclusion
![Page 6: Improving Thin Client Performance Using the Smart Proxy ...cseweb.ucsd.edu/~cbtaylor/psu.pdf · The Proxy and VNC unmodified server unmodified client proxy using RFB protocol request](https://reader034.vdocuments.site/reader034/viewer/2022042212/5eb551126516701f5d1d0773/html5/thumbnails/6.jpg)
What is Thin ClientComputing?
internet
![Page 7: Improving Thin Client Performance Using the Smart Proxy ...cseweb.ucsd.edu/~cbtaylor/psu.pdf · The Proxy and VNC unmodified server unmodified client proxy using RFB protocol request](https://reader034.vdocuments.site/reader034/viewer/2022042212/5eb551126516701f5d1d0773/html5/thumbnails/7.jpg)
What is Thin ClientComputing?
internet
User input
![Page 8: Improving Thin Client Performance Using the Smart Proxy ...cseweb.ucsd.edu/~cbtaylor/psu.pdf · The Proxy and VNC unmodified server unmodified client proxy using RFB protocol request](https://reader034.vdocuments.site/reader034/viewer/2022042212/5eb551126516701f5d1d0773/html5/thumbnails/8.jpg)
What is Thin ClientComputing?
internet
User input
Screen updates
![Page 9: Improving Thin Client Performance Using the Smart Proxy ...cseweb.ucsd.edu/~cbtaylor/psu.pdf · The Proxy and VNC unmodified server unmodified client proxy using RFB protocol request](https://reader034.vdocuments.site/reader034/viewer/2022042212/5eb551126516701f5d1d0773/html5/thumbnails/9.jpg)
Why Thin Clients?Lightweight Devices
![Page 10: Improving Thin Client Performance Using the Smart Proxy ...cseweb.ucsd.edu/~cbtaylor/psu.pdf · The Proxy and VNC unmodified server unmodified client proxy using RFB protocol request](https://reader034.vdocuments.site/reader034/viewer/2022042212/5eb551126516701f5d1d0773/html5/thumbnails/10.jpg)
Why Thin Clients?Intensive Applications Machine Learning/Vision
Object recognition Speech recognition
Graphics Rendering
Data Storage Video
![Page 11: Improving Thin Client Performance Using the Smart Proxy ...cseweb.ucsd.edu/~cbtaylor/psu.pdf · The Proxy and VNC unmodified server unmodified client proxy using RFB protocol request](https://reader034.vdocuments.site/reader034/viewer/2022042212/5eb551126516701f5d1d0773/html5/thumbnails/11.jpg)
Why Thin Clients?Security & Data Loss
A lost laptop doesn’t mean lost data Helps companies stay compliant with
privacy laws such as HIPAA
![Page 12: Improving Thin Client Performance Using the Smart Proxy ...cseweb.ucsd.edu/~cbtaylor/psu.pdf · The Proxy and VNC unmodified server unmodified client proxy using RFB protocol request](https://reader034.vdocuments.site/reader034/viewer/2022042212/5eb551126516701f5d1d0773/html5/thumbnails/12.jpg)
Latency and Performance
internet
Thin ClientDesktop
![Page 13: Improving Thin Client Performance Using the Smart Proxy ...cseweb.ucsd.edu/~cbtaylor/psu.pdf · The Proxy and VNC unmodified server unmodified client proxy using RFB protocol request](https://reader034.vdocuments.site/reader034/viewer/2022042212/5eb551126516701f5d1d0773/html5/thumbnails/13.jpg)
Introduction Definitions The Smart Proxy Architecture
Resource Assumptions The Smart Proxy Architecture Uses of the Smart Proxy
Improving VNC Results & Conclusion
![Page 14: Improving Thin Client Performance Using the Smart Proxy ...cseweb.ucsd.edu/~cbtaylor/psu.pdf · The Proxy and VNC unmodified server unmodified client proxy using RFB protocol request](https://reader034.vdocuments.site/reader034/viewer/2022042212/5eb551126516701f5d1d0773/html5/thumbnails/14.jpg)
Resource Assumptions: ActiveWireless Spaces
computingresources
clientwireless
link
server
server
internet
computingresources
client
client
![Page 15: Improving Thin Client Performance Using the Smart Proxy ...cseweb.ucsd.edu/~cbtaylor/psu.pdf · The Proxy and VNC unmodified server unmodified client proxy using RFB protocol request](https://reader034.vdocuments.site/reader034/viewer/2022042212/5eb551126516701f5d1d0773/html5/thumbnails/15.jpg)
Smart Proxy Architecture
server
client
PDA
GPS video
earpiece smartproxy
world
webserver
gameserver
web server
wireless internet
![Page 16: Improving Thin Client Performance Using the Smart Proxy ...cseweb.ucsd.edu/~cbtaylor/psu.pdf · The Proxy and VNC unmodified server unmodified client proxy using RFB protocol request](https://reader034.vdocuments.site/reader034/viewer/2022042212/5eb551126516701f5d1d0773/html5/thumbnails/16.jpg)
Uses of the Smart Proxy
Buffering updates Compress or Decompress Updates
Scalable Video Coding Video Processing Encryption
![Page 17: Improving Thin Client Performance Using the Smart Proxy ...cseweb.ucsd.edu/~cbtaylor/psu.pdf · The Proxy and VNC unmodified server unmodified client proxy using RFB protocol request](https://reader034.vdocuments.site/reader034/viewer/2022042212/5eb551126516701f5d1d0773/html5/thumbnails/17.jpg)
Introduction Definitions The Smart Proxy Architecture Improving VNC
What is VNC? Defining Performance The Proxy and VNC Example Implementation Details
Results & Conclusion
![Page 18: Improving Thin Client Performance Using the Smart Proxy ...cseweb.ucsd.edu/~cbtaylor/psu.pdf · The Proxy and VNC unmodified server unmodified client proxy using RFB protocol request](https://reader034.vdocuments.site/reader034/viewer/2022042212/5eb551126516701f5d1d0773/html5/thumbnails/18.jpg)
What Is VNC
client server
updateclient server
update
request
Server Push Client Pull
• VNC is a widely-used thin client systemwith several available open-sourceimplementations.
![Page 19: Improving Thin Client Performance Using the Smart Proxy ...cseweb.ucsd.edu/~cbtaylor/psu.pdf · The Proxy and VNC unmodified server unmodified client proxy using RFB protocol request](https://reader034.vdocuments.site/reader034/viewer/2022042212/5eb551126516701f5d1d0773/html5/thumbnails/19.jpg)
Defining Performance
client server
request
client server
update
client server
client server
2. Client waits
3. Server sends update 4. Client processes update
1. Client requests new update
![Page 20: Improving Thin Client Performance Using the Smart Proxy ...cseweb.ucsd.edu/~cbtaylor/psu.pdf · The Proxy and VNC unmodified server unmodified client proxy using RFB protocol request](https://reader034.vdocuments.site/reader034/viewer/2022042212/5eb551126516701f5d1d0773/html5/thumbnails/20.jpg)
The Proxy and VNC
serverclient proxyrequest request
update update
The Smart Proxy sends requests to the server at therate the client is processing them, without waiting foran update from the server
This lets the Smart Proxy adjust for time delaysbetween the client and server
![Page 21: Improving Thin Client Performance Using the Smart Proxy ...cseweb.ucsd.edu/~cbtaylor/psu.pdf · The Proxy and VNC unmodified server unmodified client proxy using RFB protocol request](https://reader034.vdocuments.site/reader034/viewer/2022042212/5eb551126516701f5d1d0773/html5/thumbnails/21.jpg)
The Proxy and VNC
unmodifiedserver
unmodified client
proxyusingRFB
protocol
request request
update update
The client sees the proxy as the server, and theserver sees the proxy as the client.
As long as the proxy sends and receivesmessages in the RFB protocol, the VNC clientand server applications require no modifications.
![Page 22: Improving Thin Client Performance Using the Smart Proxy ...cseweb.ucsd.edu/~cbtaylor/psu.pdf · The Proxy and VNC unmodified server unmodified client proxy using RFB protocol request](https://reader034.vdocuments.site/reader034/viewer/2022042212/5eb551126516701f5d1d0773/html5/thumbnails/22.jpg)
Example
serverclient
200 ms
Client sends request - 200 ms Server processes - 5 ms Server sends update - 200 ms Client processes - 5 ms
Total time = 410 ms
![Page 23: Improving Thin Client Performance Using the Smart Proxy ...cseweb.ucsd.edu/~cbtaylor/psu.pdf · The Proxy and VNC unmodified server unmodified client proxy using RFB protocol request](https://reader034.vdocuments.site/reader034/viewer/2022042212/5eb551126516701f5d1d0773/html5/thumbnails/23.jpg)
Example
serverclient proxy
185 ms15 ms
Proxy processes - 5 ms Proxy sends update to Client - 15 ms Client processes - 5 ms Client sends request - 15 ms
Total time = 40 ms
![Page 24: Improving Thin Client Performance Using the Smart Proxy ...cseweb.ucsd.edu/~cbtaylor/psu.pdf · The Proxy and VNC unmodified server unmodified client proxy using RFB protocol request](https://reader034.vdocuments.site/reader034/viewer/2022042212/5eb551126516701f5d1d0773/html5/thumbnails/24.jpg)
Example
serverproxy
The proxy sends requests to the server at thesame rate the client is processing them, withoutwaiting for a response from the server
request every 40 ms
update every 40 ms
…
…
![Page 25: Improving Thin Client Performance Using the Smart Proxy ...cseweb.ucsd.edu/~cbtaylor/psu.pdf · The Proxy and VNC unmodified server unmodified client proxy using RFB protocol request](https://reader034.vdocuments.site/reader034/viewer/2022042212/5eb551126516701f5d1d0773/html5/thumbnails/25.jpg)
Implementation Details
serverproxy
…
…
•If the proxy sends faster than the server canprocess updates, requests can accumulateat the server
•This causes more work for the server,resulting in a slower response
requests every 30 ms
updates every 50 ms
![Page 26: Improving Thin Client Performance Using the Smart Proxy ...cseweb.ucsd.edu/~cbtaylor/psu.pdf · The Proxy and VNC unmodified server unmodified client proxy using RFB protocol request](https://reader034.vdocuments.site/reader034/viewer/2022042212/5eb551126516701f5d1d0773/html5/thumbnails/26.jpg)
Implementation Details
Occasionally the server sends very large updates,which may be larger than the TCP window size.
We are working at the application level, and theunderlying protocols still require waiting foracknowledgements, which are affected by networkdelays
serverproxy
…
![Page 27: Improving Thin Client Performance Using the Smart Proxy ...cseweb.ucsd.edu/~cbtaylor/psu.pdf · The Proxy and VNC unmodified server unmodified client proxy using RFB protocol request](https://reader034.vdocuments.site/reader034/viewer/2022042212/5eb551126516701f5d1d0773/html5/thumbnails/27.jpg)
Results
![Page 28: Improving Thin Client Performance Using the Smart Proxy ...cseweb.ucsd.edu/~cbtaylor/psu.pdf · The Proxy and VNC unmodified server unmodified client proxy using RFB protocol request](https://reader034.vdocuments.site/reader034/viewer/2022042212/5eb551126516701f5d1d0773/html5/thumbnails/28.jpg)
Future Work
Have the proxy automatically configure itselfto send at the optimal rate.
Is it possible to have to proxy perform as wellas the client-server system with no delay?
serverproxy
update every ? ms
…
…
request every ? ms
![Page 29: Improving Thin Client Performance Using the Smart Proxy ...cseweb.ucsd.edu/~cbtaylor/psu.pdf · The Proxy and VNC unmodified server unmodified client proxy using RFB protocol request](https://reader034.vdocuments.site/reader034/viewer/2022042212/5eb551126516701f5d1d0773/html5/thumbnails/29.jpg)
Conclusion
We can improve VNC performance by havinga Smart Proxy mediate the update rate overnetwork delays.
Faster thin clients can help us integratepowerful computing into our mobile lives.