THINC
E N D
Presentation Transcript
Ricardo A. Baratto Network Computing Lab Columbia University THINC
Features • Fast • Secure • Hardware Cursor • Video support • Resizable • Bandwidth scheduling
System Architecture • Server: Virtual video driver • Translates driver commands to THINC commands: • RAW • FILL • BITMAP • TILE • Commands: • Initial compression almost free • Nice abstraction: manage and manipulate as needed
Offscreen Awareness • Render offscreen, copy onscreen • Translation impossible: Everything is RAW!!! • Solution: • Capture commands everywhere and follow them
Push with a twist • Server Pushes data to client but, • Server is aware of each client's responsiveness: • Does not block • Commands can be clipped and evicted
Command Scheduling • Improve interactiveness • Particularly useful in slow networks • Multiqueue and Preemptive • Two traffic classes: • Real Time: Cursor, keystrokes, mouse drag, DnD • Normal: ordered by size • We don't like ads
Resize • Small Screens • Bandwidth reduction • Magnify too! • Future: Resize & Clip
Video S: really? T: yup. full motion, resizable, application transparent, low CPU overhead. AND, no need for GbE S: but... how? T: just get out of the way! S: eh? T: export the client's hardware to the server and just be a bridge S: <stares in disbelief as the video plays> catch: There's no sound. Yet.
Features and Optimizations Latency Data Size Per page
Web Data Size Latency Per page
The Future • Generic Device Support • Sound for the video!!! • Network resilience • Collaboration • Games • ...