Transcript Document
A Heterogeneous Testbed with TinyOS and EmStar TinyOS Technology Exchange 02/11/05 Martin Lukac – [email protected] Contributors: Lewis Girod, Thanos Stathopoulos, Nithya Ramanathan, Tom Schoellhammer, Ning Xu, Martin Lukac, Richard Guy, Deborah Estrin CENS Systems Lab Testbeds for Heterogeneous Applications • Real applications are heterogeneous – Scaling beyond 40-50 motes is simpler with tiered architecture of low-power motes and 802.11-enabled microservers • Heterogeneous systems are still complicated – Separately motes and microservers are complex systems – 1 binary on one type of platform is hard enough to debug – Multiple interacting binaries running on several platforms is scary • We are interested in evaluating and debugging: – Motes operating under real RF conditions – Interacting motes and microservers – Coordinated and cooperating microservers 2 CENS Heterogeneous Testbed 3256N 3256S 3286 … 3256 Copy Room 3531 • 39 Nodes – 3rd floor of Boelter Hall • 26 Mica2s on MIB510s – MDA300’s • Connected through serial multiplexers to server Deborah’s Office … 3 CENS Heterogeneous Testbed 3256N 3256S 3286 … 3256 • 13 Stargates with 802.11 – Still have Mica2s with MDA300s Copy Room • Connected through wired ethernet 3531 Deborah’s Office … 4 Centralized Simulation Deployed Radios Simulation Server Node 1 Node 2 Node 3 Node 4 Node 5 Node 6 Node 7 Node 8 Serial • All application code runs on one server • The server uses the real nodes as network interfaces Wired Ethernet (Sockets) • Access to all logs • Global view of order of events • Easier measurement 5 Anatomy of a Node Node 7 TinyOS App EmTOS Fusdnet • EmStar – A Framework for simulation, emulation, and deployment of heterogeneous sensor networks – Multi-process architecture. Runs on Linux. • EmTOS – New platform for TinyOS: “make emstar” – Builds a Linux binary from TinyOS code that uses other EmStar services • Fusdnet Ethernet – Remote access protocol for EmStar services HostMote Serial • HostMote – Like serial forwarder: talks to motes over serial – Handles communication between EmTOS and mote • Transceiver (runs on the mote!) – Transmits and receives packets from hostmote and radio Transceiver 6 Centralized Simulation Deployed Radios Simulation Server TinyOS App TinyOS App EmTOS EmTOS HostMote HostMote TinyOS App … EmTOS EmStar App HostMote Fusdnet Serial … • Collection of tools to script, visualize, and measure running simulation … EmStar App Fusdnet Wired Ethernet (Sockets) … Sample command line to start testbed: $ emrun/emsim ../devel/objecttrack/tabs/track.sim 7 Validating Simulation Results Simulation Server TinyOS App TinyOS App EmTOS EmTOS HostMote HostMote TinyOS App … EmTOS EmStar App HostMote Fusdnet Serial … • Radios run in real time – No virtual clock … EmStar App Fusdnet Wired Ethernet (Sockets) … – Can not do precise timing and hardware interrupts • Testbed provides “Native” mode – Program motes with TinyOS binary (like Motelab) 8 Thanks for listening! Questions? 9 Backup slides are this way 10 Mote Emulation Simulation Server TinyOS App TinyOS App EmTOS EmTOS motenic HostMote TinyOS App … TinyOS App EmTOS EmTOS motenic motenic motenic HostMote HostMote Fusdnet TinyOS App … motenic Fusdnet Serial MUX to Motes Ethernet Switch Stargate Fusdnet Server … Transceiver EmTOS Stargate … Fusdnet Server HostMote HostMote Transceiver Transceiver Transceiver 11 Microserver & Mote Emulation Simulation Server TinyOS App EmTOS … Ethernet Switch EmStar App Fusdnet Client Fusdnet Client Stargate Stargate Fusdnet Server HostMote udpd Fusdnet Server … HostMote 802.11 Transceiver udpd 802.11 Transceiver 12 Hybrid Mode EssDse Transceiver EssDse Transceiver Transceiver Transceiver Simulation Server Serial MUX HostMote Serial Protocol Hybrid Mode Multihop Multihop ESS Sink ESS Sink Microservers EssDse Dbg Stub ESS Mote … Dbg Stub • • Mixture of real and emulated motes Range of possibilities Motes 13 EmSim Modes (Runs at scale of emulation array) Pure Simulation Emulation Mode Visibility Full Logs and Status Hybrid Mode Limited “Out Of Band” Status Reports Real Mode Pure Sim Deployed Deployment No OOB Status Reality 14 Testbed Supports Native Mode • Emulating motes lack reality – Can’t do precise timing and hardware interrupts – Packet timing – Can’t emulate MAC layer • Testbed provides “Native” mode – Push TinyOS binary to motes (like Motelab) – Can debug over serial line 15