Presentation is loading. Please wait.

Presentation is loading. Please wait.

THINC: A Virtual Display Architecture for Thin-Client Computing Ricardo A. Baratto, Leonard N. Kim, Jason Nieh Network Computing Laboratory Columbia University.

Similar presentations


Presentation on theme: "THINC: A Virtual Display Architecture for Thin-Client Computing Ricardo A. Baratto, Leonard N. Kim, Jason Nieh Network Computing Laboratory Columbia University."— Presentation transcript:

1 THINC: A Virtual Display Architecture for Thin-Client Computing Ricardo A. Baratto, Leonard N. Kim, Jason Nieh Network Computing Laboratory Columbia University

2 isolation...

3 Source: Internet Mapping Project (http://research.lumeta.com/ches/map/)...connectivity

4 dis-integration of the computer network storage clusters and grid computing

5 remote display display updates input

6 benefits

7 ubiquitous access

8 remote collaboration

9 online help

10 stateless client application processing and data secure server room thin clients

11 existing systems

12 existing performance problem

13 THINC

14 virtual display architecture high performance remote display transparent operation

15 ● system architecture ● display protocol ● translation ● delivery

16 system architecture

17 applications window system device driver framebuffer

18 applications window system device driver framebuffer high-level requests interception and redirection ✗ stateful client hurts mobility ✗ app – window system synchronization

19 applications window system framebuffer device driver raw pixels high-level requests interception and redirection ✗ lose semantics: difficult to encode ✗ Bandwidth intensive

20 virtual display architecture

21 benefits

22

23

24

25 display protocol Inspired by Sun Ray protocol 2D Primitives ● copy ● solid and tile fill ● bitmap fill ● raw

26 two key problems how do we translate from application commands to the display protocol? how and when do we send display updates?

27 translation use and preserve semantic information for efficient translation

28 ● use semantic information when doing translation translation

29 use request semantics to generate update req: fill window W, color C window system req: fill [x,y,w,h] color C THINC update: solid fill [x,y,w,h] color C

30 ✔ use semantic information when doing translation ● preserve semantic information throughout the system translation

31 preserving semantics: offscreen rendering draw offscreen regions copy display

32 offscreen rendering (cont) offscreen region command log merge, clip, and discard commands as needed

33 using and preserving semantics: video ● reuse existing hardware acceleration application interfaces ● YUV (luminance-chrominance) color space – format independence – client hardware acceleration (scaling for free)

34 delivery maximize interactive response of the system

35 delivery ● transmit updates as soon as possible ● merge, clip, and discard updates as needed

36 shortest remaining size first scheduler client buffer C1C1 C2C2 C3C3... CnCn real time queue 1 queue p cmd size

37 implementation ● X/Linux server – ongoing: windows server ● X/Linux, windows, PDA, Java clients

38 experimental results ● web and video performance – comparison to existing systems – Internet 2 sites around the globe

39 “ ” LAN WAN g

40 web browsing performance

41 a/v playback quality

42 NY MA PA MN NM CA

43 IE FI KR PR

44 Internet2 web browsing performance

45 Internet2 a/v playback quality

46 demo

47 conclusions THINC : ● virtual display architecture transparently leverages existing display infrastructure ● efficient translation by using and preserving semantic information from display request ● delivery mechanisms increase responsiveness of the system

48 for more info...

49 backup

50 audio applications OS virtual audio driver audio daemon audio data

51 Experimental Results

52 Web Browsing Data Transfer

53 A/V Data Transfer

54 ?

55 server-resized updates

56 offscreen drawing draw offscreen regions copy display

57 offscreen region command queue command queues

58 client queue copy onscreen

59 how? applications client hardware caps video

60 YUV ● Standard hardware interface ● Format independence ● Hardware acceleration (fullscreen for free!)

61 how we deliver updates display updates client buffer C1C1 C2C2 C3C3...CnCn

62 future work ● 3D and high-end user interfaces ● remote device access

63 old slides

64 THINC virtual display architecture for high performance remote display

65 implementation ● server: X/Linux (Windows in progress) ● clients: Linux (Windows, PDA, Java in progress)

66 Web Browsing Performance

67 Audio/Video Performance

68 LBX X proxies

69 ... and a PC

70 Configurations LAN Desktop WAN Desktop g PDA PlanetLab

71 applications window system display driver framebuffer

72 ● ICA, RDP: Rich display protocol ● SunRay: Ultra thin-client Studies have shown performance problems

73 system architecture as important as protocol and encoding

74 goals ● minimize latency ● simple and portable ● transparent operation

75 experimental results ● up to 4.8 times better web browsing performance ● up to two orders of magnitude better audio/video playback quality

76 application requests translate commands deliver display updates THINC

77 applications display pipeline window system display driver framebuffer

78 applications window system display driver framebuffer client/server partitioning

79 ✗ stateful client hurts mobility ✗ app – window system synchronization

80 applications window system display driver framebuffer

81 ✗ “Blind encoding”

82 basic static translation Draw API standard device driver commands THINC commands

83 video: first-class citizen

84 THINC

85 ● high performance remote display ● LAN and WAN environments ● transparent operation in exisiting desktop systems ● full screen, full motion audio/video playback

86 CA IE FI KR PR


Download ppt "THINC: A Virtual Display Architecture for Thin-Client Computing Ricardo A. Baratto, Leonard N. Kim, Jason Nieh Network Computing Laboratory Columbia University."

Similar presentations


Ads by Google