190 likes | 343 Views
Virtual Node Layers. Nancy Lynch Massachusetts Institute of Technology, CSAIL Workshop on Critical Research Areas in Aerospace Software MIT August 9, 2005. Collaborators: Shlomi Dolev, Alex Shvartsman, Jennifer Welch, Seth Gilbert, Sayan Mitra, Calvin Newport, Tina Nolte,
E N D
Virtual Node Layers Nancy Lynch Massachusetts Institute of Technology, CSAIL Workshop on Critical Research Areas in Aerospace Software MIT August 9, 2005
Collaborators: Shlomi Dolev, Alex Shvartsman, Jennifer Welch, Seth Gilbert, Sayan Mitra, Calvin Newport, Tina Nolte, Limor Lahiani, Elad Schiller, Matthew Brown, Mike Spindel Virtual Node Layers
Virtual Nodes • Small computers can be equipped with sensors, actuators, wireless communication. • Potentially, people, robots, vehicles, could use this hardware to establish mobile ad hoc networks, coordinate in running applications. • Examples: • Rescue workers in disaster areas • Soldiers in urban battle • Robots exploring a novel location • Cars on highway • Set up network, use network to collect and process data, produce models of environment, plan activities.
That would be nice, but… • Application design for ad hoc networks is hard. • Networks change unpredictably. • New idea for simplifying application design: • Use a Virtual Node layer • Abstract layer containing virtual computing nodes that are better behaved than actual physical nodes. • Program applications on top of the virtual node layer.
Application Virtual Node Layer Virtual Node Layers • Abstraction layers containing virtual active nodes. • Virtual Nodes may be associated with fixed geographical locations, or • VNs may move: • Along a pre-planned path, or • Along a path that is calculated dynamically. • Program applications over the VN layer.
Application: GeoCast Route message to a designated geographical region
Data Management Gather, analyze,aggregate,and distribute data.
Region Coordination Coordinate behavior ofnodes in region.
Token Circulation Circulate tokenregion by region.
Location Tracking Service • Support queries about current locations of (cooperative) PNs. • Implement Location Tracking Service over VN layer: • Each PN has a Home Location: • VN that keeps track of PN’s current location (VN region). • Determined by hash function from PN id. • PN keeps Home Location up-to-date by sending periodic messages. • Use GeoCast (implemented over VN layer). • Queries, responses also use GeoCast. • For reliability, use several, redundant Home Locations. • Easier than solutions using distributed hashing directly over physical layer. • Use this Location Tracking Service to implement (easily) point-to-point message routing between PNs.
Coordination Oracles • Oracle associated with a given VN location: • Gathers and analyzes information about that location. • Sends summarized information to other Oracles. • Builds a suitable model of the environment. • PNs query nearby Oracles and use response to help plan their actions. • Use for advanced global coordination.
Coordination Oracles My model predicts fierce fighting here. Stay here, take cover! Location A
Coordination Oracles Location B My model predicts quiet here. Location A needs reinforcements. I will suggest a safe route there. Location A
Application: Motion Coordination • Given curve Γ, and a finite, unknown set of physical mobile nodes (PNs), move the PNs so that they are (approximately) evenly spaced on Γ.
VN VN VN VN VN VN Virtual Node Approach • Divide region into zones, one VN per zone. • VN coordinates client nodes in its zone • Directs motion of CNs in its zone: • Towards Γ. • On Γ, to even out spacing. • Communicates with neighboring VSNs, sends “extra” clients to neighboring zones. CN CN
Undergrad programmers: Mike Spindel, Matthew Brown PhD students: Gilbert, Newport, Nolte Building small network of virtual nodes on a bunch of HP Ipaqs, equipped with 802.11 and GPS sensors. Demo applications: Virtual traffic light Tracking cooperative mobile devices (using home location service) Sponsor: Quanta, Inc. Experimental project
Relevance to Aero/Astro? • Virtual Node Layer consisting of Virtual Air-Traffic Controllers? • For congestion management, in free flight.