90 likes | 217 Views
Object Sharing Over Mobile Devices. Sharad Agarwal, Ioannis Mavroidis CS258. Alec Woo CS294-11. Vision Slide. An universal infrastructure where data can exist anywhere and be available to any device with some form of consistency guarantee. Server. Pilot. Pilot. Network. Server. Pilot.
E N D
Object Sharing Over Mobile Devices Sharad Agarwal, Ioannis Mavroidis CS258 Alec Woo CS294-11
Vision Slide • An universal infrastructure where data can exist anywhere and be available to any device with some form of consistency guarantee Server Pilot Pilot Network Server Pilot Toaster Laptop Camera
Why Share Over Mobile Devices • Need collaborative applications • not for running Ocean or Barnes-Hut • distributed address book • group whiteboard / document review • group coding • collaborative control of sensors and actuators • Need a shared data infrastructure • Can’t simply port an existing SW DSM
Design Requirements • Platform independent • SW solution, in Java • Interconnection is the Internet • Object based sharing • Data storage on remote servers • scales {communication, capacity} • available over disconnections • Allows disconnected operation • Emphasis on low compute power, low bandwidth, high latency tolerance
$ Memory Server Memory Server $ $ $ $ $ $ WinCE Pilot Pilot Laptop Pilot System Architecture Memory Service Nameserver Internet Masquerader App Nameserver Pilot
M S M_T V W_T Coherence Protocol create • Directory based • SC destroy readex upgr / inv writeback read / wr-inv readex / inv writethru / inv read writethru/inv writeback writethru
MUD Application • Users control characters in an arena of rooms • move around, look, pick/drop objects, etc • Masquerader creates shared objects • room locks, room inventory, people in room, etc • Each client requests character init from masquerader • When moving, linear lock ordering is used • (Dining Philosophers) • Automated bots that run around
Results Screen Shot Latency Measurements
Conclusions • Formulated the need & requirements • Designed an infrastructure & application • Shown performance numbers • This was not easy • JVMs underdeveloped • Pilot debugging infrastructure non-existent • ActiveProxy is still under development • Scalable yet versatile shared object system is complicated