DURING last decade, many communication technologies

Similar documents
B-MAC Tunable MAC protocol for wireless networks

Receiver-Initiated vs. Short-Preamble Burst MAC Approaches for Multi-channel Wireless Sensor Networks

Examination Mobile & Wireless Networking ( ) April 12,

ECMA st Edition / June Near Field Communication Wired Interface (NFC-WI)

Installing remote sites using TCP/IP

P. Bruschi: Project guidelines PSM Project guidelines.

Mobile Communications Chapter 3 : Media Access

4.5 Biasing in BJT Amplifier Circuits

Social-aware Dynamic Router Node Placement in Wireless Mesh Networks

Starvation Mitigation Through Multi-Channel Coordination in CSMA Multi-hop Wireless Networks

Collaborative communication protocols for wireless sensor networks

Key Issue. 3. Media Access. Hidden and Exposed Terminals. Near and Far Terminals. FDD/FDMA General Scheme, Example GSM. Access Methods SDMA/FDMA/TDMA

Investigation and Simulation Model Results of High Density Wireless Power Harvesting and Transfer Method

ECMA-373. Near Field Communication Wired Interface (NFC-WI) 2 nd Edition / June Reference number ECMA-123:2009

EE201 Circuit Theory I Fall

Investigation of Novel Ultrasonic Positioning Method Installed in Sensor Network

Teacher Supplement to Operation Comics, Issue #5

An off-line multiprocessor real-time scheduling algorithm to reduce static energy consumption

Avoid link Breakage in On-Demand Ad-hoc Network Using Packet's Received Time Prediction

On the Scalability of Ad Hoc Routing Protocols

PRM and VTM Parallel Array Operation

Anti-Jamming Schedules for Wireless Data Broadcast Systems

4 20mA Interface-IC AM462 for industrial µ-processor applications

5 Spatial Relations on Lines

Memorandum on Impulse Winding Tester

Universal microprocessor-based ON/OFF and P programmable controller MS8122A MS8122B

Multiple Load-Source Integration in a Multilevel Modular Capacitor Clamped DC-DC Converter Featuring Fault Tolerant Capability

Review Wireless Communications

EMF: Embedding Multiple Flows of Information in Existing Traffic for Concurrent Communication among Heterogeneous IoT Devices

Distributed Multi-robot Exploration and Mapping

The Design and Evaluation of a Wireless Sensor Network for Mine Safety Monitoring

Performance Study of Positioning Structures for Underwater Sensor Networks

Shortest and Efficient Multipath Routing in Mobile ad hoc Network (MANET)

Location Tracking in Mobile Ad Hoc Networks using Particle Filter

Development of Temporary Ground Wire Detection Device

Signaling Cost Analysis for Handoff Decision Algorithms in Femtocell Networks

Variation Aware Cross-Talk Aggressor Alignment by Mixed Integer Linear Programming

Electrical connection

Gear Deburring with Power Brushes

Lecture September 6, 2011

ISSCC 2007 / SESSION 29 / ANALOG AND POWER MANAGEMENT TECHNIQUES / 29.8

Mobile Robot Localization Using Fusion of Object Recognition and Range Information

Mobility Chapter 5. Rating. First steps Text book. No apps Mission critical. Not really Must have. Overview. Motivation for Mobile IP.

Lab 3 Acceleration. What You Need To Know: Physics 211 Lab

(This lesson plan assumes the students are using an air-powered rocket as described in the Materials section.)

Design of an active radio frequency powered multihop wireless sensor network

Quantifying Application Communication Reliability of Wireless Sensor Networks

Pointwise Image Operations

Modeling and Prediction of the Wireless Vector Channel Encountered by Smart Antenna Systems

A WIDEBAND RADIO CHANNEL MODEL FOR SIMULATION OF CHAOTIC COMMUNICATION SYSTEMS

Table of Contents. 3.0 SMPS Topologies. For Further Research. 3.1 Basic Components. 3.2 Buck (Step Down) 3.3 Boost (Step Up) 3.4 Inverter (Buck/Boost)

Installation and Operating Instructions for ROBA -brake-checker Typ

Lecture 4. EITN Chapter 12, 13 Modulation and diversity. Antenna noise is usually given as a noise temperature!

OPERATION MANUAL. Indoor unit for air to water heat pump system and options EKHBRD011ADV1 EKHBRD014ADV1 EKHBRD016ADV1

Foreign Fiber Image Segmentation Based on Maximum Entropy and Genetic Algorithm

Lecture #7: Discrete-time Signals and Sampling

A-LEVEL Electronics. ELEC4 Programmable Control Systems Mark scheme June Version: 1.0 Final

Q-learning Based Adaptive Zone Partition for Load Balancing in Multi-Sink Wireless Sensor Networks

EXPERIMENT #9 FIBER OPTIC COMMUNICATIONS LINK

Programmable DC Electronic Load 8600 Series

Negative frequency communication

DrunkWalk: Collaborative and Adaptive Planning for Navigation of Micro-Aerial Sensor Swarms

OPERATION MANUAL. Indoor unit for air to water heat pump system and options EKHBRD011AAV1 EKHBRD014AAV1 EKHBRD016AAV1

Lecture 11. Digital Transmission Fundamentals

EE 40 Final Project Basic Circuit

Automatic Power Factor Control Using Pic Microcontroller

On Eliminating the Exposed Terminal Problem Using Signature Detection

Chapter 2 Summary: Continuous-Wave Modulation. Belkacem Derras

AN303 APPLICATION NOTE

Architectures for Resource Reservation Modules for Optical Burst Switching Core Nodes *

MAP-AIDED POSITIONING SYSTEM

The University of Melbourne Department of Mathematics and Statistics School Mathematics Competition, 2013 JUNIOR DIVISION Time allowed: Two hours

Programmable DC Electronic Loads 8600 Series

Network Design and Optimization for Quality of Services in Wireless Local Area Networks using Multi-Objective Approach

Connection. Input II EEx ia IIC without SC red. Composition

Traffic. analysis. The general setting. Example: buffer. Arrival Curves. Cumulative #bits: R(t), R*(t) Instantaneous speeds: r(t), r*(t)

DAGSTUHL SEMINAR EPIDEMIC ALGORITHMS AND PROCESSES: FROM THEORY TO APPLICATIONS

Dimensions. Model Number. Electrical connection emitter. Features. Electrical connection receiver. Product information. Indicators/operating means

Performance Evaluation of a MAC Protocol for Radio over Fiber Wireless LAN operating in the 60-GHz band

Process-Stacking Multiplexing Access for 60 GHz Millimeter-Wave WPANs

Dimensions. Transmitter Receiver ø2.6. Electrical connection. Transmitter +UB 0 V. Emitter selection. = Light on = Dark on

Usually use an op-amp circuit Often found as a pre-amplifier to ADC circuitry Simple circuit to computer natural logarithm

Dimensions. Transmitter Receiver ø2.6. Electrical connection. Transmitter +UB 0 V. Emitter selection. = Light on = Dark on

TR-MAC: An Energy-E cient MAC Protocol for Wireless Sensor Networks exploiting Noise-based Transmitted Reference Modulation

THE Cisco visual network index report predicts a drastic

Programmable DC Electronic Loads 8600 Series

EE 330 Lecture 24. Amplification with Transistor Circuits Small Signal Modelling

Performance Analysis of A Burst-Frame-Based MAC Protocol for Ultra-Wideband Ad Hoc Networks

Pulse Train Controlled PCCM Buck-Boost Converter Ming Qina, Fangfang Lib

49.8. Control Relays and Timers. Contents. Product Selection Guide. Timing Relays

Transmit Beamforming with Reduced Feedback Information in OFDM Based Wireless Systems

Explanation of Maximum Ratings and Characteristics for Thyristors

Spring Localization I. Roland Siegwart, Margarita Chli, Martin Rufli. ASL Autonomous Systems Lab. Autonomous Mobile Robots

A Novel Routing Algorithm for Power Line Communication over a Low-voltage Distribution Network in a Smart Grid

Synchronization of single-channel stepper motor drivers reduces noise and interference

Direct Analysis of Wave Digital Network of Microstrip Structure with Step Discontinuities

Primary Side Control SMPS with Integrated MOSFET

Mode-Changes in COTS Time-Triggered Network Hardware without Online Reconfiguration

Geographic Random Forwarding (GeRaF) for ad hoc and sensor networks: energy and latency performance

ECE-517 Reinforcement Learning in Artificial Intelligence

Transcription:

1 TeamPhone: Neworking Smarphones for isaser Recovery Zongqing Lu, Guohong ao, and Thomas La Pora and suppors daa communicaions among rescue workers in infrasrucure-consrained and infrasrucure-less scenarios. TeamPhone also enables energy-efficien mehods for rapped survivors o discover rescue workers and send ou emergency messages, by carefully addressing he wake-up scheduling of smarphones. The emergency message includes he coarse-grained locaion and posiion informaion of rapped survivors, which is derived from he las known locaions of heir smarphones and he nework formed by hese smarphones. We implemen TeamPhone as an app on he Android plaform and deploy i on off-he-shelf smarphones. Experimenal resuls demonsrae ha TeamPhone can properly fulfill he communicaion requiremens and grealy faciliae rescue operaions. The main conribuion of his paper is he design, implemenaion and evaluaion of TeamPhone. This conribuion breaks down ino he following aspecs: We design TeamPhone which consiss of a messaging sysem and a self-rescue sysem o provide communicaions and faciliae rescue operaions in disaser recovery. The idea of TeamPhone is moivaed by he fac ha people heavily reply on smarphones in heir daily lives. The messaging sysem can accomplish differen ypes of message ransmissions by bridging cellular neworks, ad hoc neworks and opporunisic neworks, and by connecing differen rouing proocols. The self-rescue sysem can send ou emergency messages wih locaion and posiion informaion hrough self-rescue grouping, wake-up scheduling and posiioning, where we design a communicaions proocol ha can fulfill hese funcions in an energy-efficien manner. The design, implemenaion and evaluaion are based on off-he-shelf smarphones, which enables TeamPhone o be insalled as a facory defaul appliarxiv:1606.03417v2 [cs.ni] 26 Mar 2017 Absrac In his paper, we invesigae how o nework smarphones for providing communicaions in disaser recovery. By bridging he gaps among differen kinds of wireless neworks, we have designed and implemened a sysem called TeamPhone, which provides smarphones he capabiliies of communicaions in disaser recovery. Specifically, TeamPhone consiss of wo componens: a messaging sysem and a self-rescue sysem. The messaging sysem inegraes cellular neworking, ad-hoc neworking and opporunisic neworking seamlessly, and enables communicaions among rescue workers. The self-rescue sysem groups, schedules and posiions he smarphones of rapped survivors. Such a group of smarphones can cooperaively wake up and send ou emergency messages in an energy-efficien manner wih heir locaion and posiion informaion so as o assis rescue operaions. We have implemened TeamPhone as a prooype applicaion on he Android plaform and deployed i on off-he-shelf smarphones. Experimenal resuls demonsrae ha TeamPhone can properly fulfill communicaion requiremens and grealy faciliae rescue operaions in disaser recovery. Index Terms Smarphone, rouing, disaser recovery. 1 INTROUTION URING las decade, many communicaion echnologies have been applied o improve rescue effors following a disaser, such as deploying wireless sensor neworks for emergency response [1], [2] and employing smar badges o form a mobile ad-hoc nework and hen gahering informaion from rapped survivors of srucural collapse [3]. However, as learned from he 2011 Grea Eas Japan earhquake, he only helpful services in disaser recovery are hose ha are used daily by everyone [4]. To provide communicaions in disaser recovery, smarphones, equipped wih boh cellular and shor-range radios (e.g., WiFi, Blueooh), are he mos promising communicaion ools. Alhough cellular owers migh also be desroyed by disasers, e.g., in he 2008 Sichuan earhquake [5], shor-range radios of smarphones can sill provide communicaions. Moreover, he ubiquiy of smarphones furher opens grea opporuniies o reinvesigae disaser recovery from he nework poin of view. In disaser recovery, smarphones have he poenial o be he mos feasible communicaion ools. For example, rapped survivors of a srucural collapse can communicae wih rescue workers and repor heir posiion informaion hrough he shor-range radio (e.g., WiFi) of heir smarphones when hey are wihin he communicaion range of each oher. Smarphones of rescue workers can also form neworks using WiFi and mee he communicaion needs in disaser recovery. To his end, in his paper, we propose TeamPhone, a plaform for communicaions in disaser recovery, where smarphones are eamed up and work ogeher o provide daa communicaions. By exploiing WiFi and cellular modules of smarphones, TeamPhone seamlessly inegraes cellular neworking, ad-hoc neworking and opporunisic neworking, Z. Lu, G. ao and T. La Pora are wih he eparmen of ompuer Science and Engineering, The Pennsylvania Sae Universiy, Universiy Park, PA 16802. E-mail: {zongqing, gcao, lp}@cse.psu.edu.

2 caion on smarphones by manufacurers o faciliae rescue operaions in disaser scenarios. The res of his paper is srucured as follows. We sar wih he moivaion and challenges in Secion 2, and hen presen he design and implemenaion of TeamPhone in Secion 3 and Secion 4, respecively. Then, we presen experimenal evaluaions in Secion 5, followed by he review of relaed work in Secion 6 and he conclusion in Secion 7. 2 MOTIVATION AN HALLENGES In his secion, we firs moivae he need of neworking smarphones in disaser recovery for communicaions, and hen illusrae he challenges. 2.1 Moivaion isasers, such as earhquakes, may opple counless homes and kill housands of people. Power failures and fallen cellular owers caused by disasers furher leave he affeced area cu off from he ouside and hinder rescue operaions. In disaser recovery, communicaions are crucial for coordinaing rescue operaions. Moreover, if rapped survivors in he rubble can send ou emergency messages o rescue workers, rescue operaions can be grealy acceleraed. Therefore, in his paper, we invesigae how o provide communicaions in disaser recovery. Wih he increasing peneraion of smarphones equipped wih shor-range radios, GPS and sensors, smarphones have been sudied for various applicaions, including healh monioring [6], mobile sensing [7], ad-hoc communicaions [8], WiFi-based localizaion [9], ec. Moreover, smarphones have evolved o be much more powerful han before in erms of compuing and communicaions, and users heavily rely on smarphones in heir daily lives. As a resul, users always carry heir smarphones or place smarphones where hey can easily and immediaely be accessed even during disasers. However, in disaser recovery such as earhquakes, he cellular owers may be desroyed, and hus cellular communicaion of smarphones is cu off. Then, we have o se up communicaion wih shor-range radios (e.g., WiFi) of smarphones. Smarphones have recenly been concepually considered for disaser recovery o locae immobilized survivors using Blueooh in [10] and o provide muli-hop communicaions in [11]. However, Blueooh has limied communicaion range (a few meers). The design in [10] fails o consider energy efficiency, which may quickly drain he baery of he smarphone. [11] also fails o conserve energy and uses proacive rouing which reacs slowly o he frequenly changing nework opology in disaser recovery. I also increases he mainenance overhead in erms of nework raffic and energy consumpion. In conras o hese exising works, we propose a much more funcional and energy-efficien communicaion sysem using smarphones for disaser recovery, and we address various design and implemenaion issues. 2.2 hallenges uring disaser recovery, communicaions saellies and mobile cellular owers may be deployed. However, communicaions saellies are scarce. Alhough mobile cellular owers can be used o se up he command cener and provide criical communicaions for rescue workers, such vehicle carried owers canno cover all disaser areas. Therefore, i is imporan o nework smarphones wih shor range radios in disaser recovery. ue o he mobiliy of rescue crews and survivors, nework opology changes frequenly; i.e., someimes smarphones may form a mobile ad-hoc nework, and someimes hey only conac each oher opporunisically. Therefore, he big challenge is how o provide communicaion crossing differen ypes of neworks including ad-hoc neworks, opporunisic neworks, and cellular neworks, considering frequen opology changes; i.e., rescue workers can communicae wih each oher and wih he command cener no maer if hey are wihin he coverage of he mobile cellular owers or no. In addiion, rapped survivors may be buried in debris and be difficul o discover. Wih he capabiliy of communicaions beween smarphones, he devices of rapped survivors can auomaically send ou emergency messages o nearby rescue crews wih beer discoverabiliy and reachabiliy. However, broadcasing emergency messages can drain baeries quickly. Since rescue operaions may las for days afer disasers occur, he discovery of nearby rescue crews and sending ou emergency messages in an energyefficien manner is anoher challenge. Moreover, i is beer for rapped survivors o include heir locaion informaion ino emergency messages o faciliae rescue operaions. However, in disaser recovery, GPS and nework providers are no available for localizaion. Providing some coarse-regained locaion or posiion informaion of rapped survivors, which can ye be exploied for rescue operaions, is also challenging. 3 TEAMPHONE TeamPhone is a ailored sysem for disaser recovery based on smarphones, which provides seamless daa communicaion hrough several differen ypes of neworks and faciliaes rescue operaions for rapped survivors. In his secion, we describe he nework scenario of disaser recovery, and presen he design of TeamPhone. 3.1 Nework Scenario Fig. 1 illusraes he nework scenario for disaser recovery. As can be seen, mobile cellular owers only cover limied areas and provide cellular communicaions for rescue workers in hese areas. A command cener sis in he covered region and command ceners in differen regions may be conneced via communicaions saellies. Survivors can also join he nework o help daa communicaions. Trapped survivors in he debris are unable o move and are waiing for rescue. When rescue workers fall ou of cellular coverage, hey can only use shor-range radios (e.g., WiFi) o communicae. They can communicae wih each oher or wih he command cener via individuals or combinaions of ad-hoc connecions, opporunisic conacs, and cellular connecions, as shown in Fig. 1. Also, rapped survivors can consruc a group based on ad-hoc connecions and send ou emergency messages when rescue workers or survivors are wihin he

Self-rescue Sysem TeamPhone Messaging Sysem Messaging User Inerface 3 Rescue Worker Survivor Trapped Survivor message ransmission sar cellular inerface nework layer rouing WiFi inerface applicaion layer rouing cellular connecion ad-hoc rouing opporunisic rouing message ransmission end A aa Transmission Node Movemen Ad hoc onnecion B B Mobile ellular Tower ommand ener Saellie Fig. 1: Nework scenario in disaser recovery communicaion range of he group. Therefore, he exploiaion of smarphones can grealy exend he communicaion field far beyond he region covered by mobile cellular owers, and increase he opporuniy of being discovered and rescued for rapped survivors. 3.2 Overview As shown in Fig. 2, TeamPhone includes wo componens: he messaging sysem and he self-rescue sysem. The messaging sysem runs on he smarphones of rescue workers or survivors and provides message ransmissions. The self-rescue sysem runs on he smarphones of rapped survivors, which auomaically forms groups wih nearby rapped survivors, performs posiioning and sends ou emergency messages. TeamPhone works as follows. Firs, users need o specify which sysem o use. If smarphones are specified as par of he messaging sysem (we call hem messaging nodes), users can send messages via heir smarphones. Their smarphones will ac as relays for boh ad-hoc rouing and opporunisic rouing, and as gaeways when hey have cellular connecions. The smarphones of rapped survivors will be auomaically configured as par of he self-rescue sysem (we call hem self-rescue nodes), which is riggered by oher apps ha measure seismic waves, such as ishake [12]. Self-rescue nodes are grouped and scheduled o wake up and receive hello messages from messaging nodes. When self-rescue nodes receive hello messages, hey will auomaically generae an emergency message and send i o he messaging node, and hen he messaging node can send he emergency message o he command cener. Messaging nodes can also iniiae emergency messages if needed. 3.3 Messaging Sysem The messaging sysem is designed o handle message ransmissions via hree ways: hrough cellular connecions, by ad-hoc communicaions and upon opporunisic conacs. When a messaging node needs o ransmi a message (ex, voice, phoo, ec.), i firs ries o reach he desinaion via he cellular nework. The message can be delivered only when boh he source and desinaion are wihin he region covered by mobile cellular owers. If direc ransmission o he cellular nework fails (e.g., in he case he sender is ou of he cellular coverage), he messaging sysem will ry o reach he desinaion by he ad-hoc nework and hrough he cellular nework via ad hoc relays, i.e., he messaging node will issue a rouing reques o consruc a rouing pah o he desinaion based ad-hoc communicaions and cellular connecions. If he reques is fulfilled, he message can be direcly sen o he desinaion. self-rescue grouping sar self-rescue grouping end discover neighbors scheduled ransmission WiFi inerface exchange messages Fig. 2: Overview of TeamPhone wake-up scheduling and posiioning send emergency message discover sleep generae emergency message wake-up Since messaging nodes ha have cellular connecions ac as gaeways in he ad-hoc nework, hey can be exploied o reach he desinaions ha have cellular connecions, such as he command cener. Therefore, he message migh be ransmied o he gaeway by ad-hoc connecions and hen relayed by he gaeway o he desinaion by cellular connecions. If here is no rouing pah o he desinaion bu he command cener can be conneced, he message will be sen o and sored a he command cener and i will be forwarded o he desinaion once i eners he cellular region. Oherwise, he message will be sored locally and ransmied upon opporunisic conacs beween messaging nodes, and differen opporunisic rouing sraegies can be applied. The IP addresses of rescue workers and survivors for heir WiFi inerfaces can be assigned by he mobile cellular ower when hey connec wih he cellular nework. For example, when a device firs connecs o he cellular nework, he mobile cellular ower will send ou a saic IP address for is WiFi inerface, and he informaion of oher devices (e.g., he smarphones of rescue workers) ha have been already assigned an IP address is shared o he device. The informaion is updaed each ime he device direcly connecs o he cellular nework. In his way, survivors and rescue workers are aware of each oher. Moreover, we do no assume ha any raffic goes beyond he cellular nework and he nework formed by WiFi of smarphones. The raffic beween hese wo neworks is handled by gaeways as discussed above. Therefore, NAT and Inerne public IPs are no needed. 3.3.1 Ad-hoc Rouing To reach he command cener via ad-hoc connecions, messages mus be relayed a a gaeway, i.e., a messaging node in he cellular region. Suppose a reacive rouing proocol is employed (e.g., AOV rouing). The messaging nodes will reply o he rouing reques differenly, based on wheher hey are wihin or ouside of he cellular region. ue o node movemen, messaging nodes need o monior he saus of heir cellular connecion and configure hemselves as gaeways for he rouing proocol when hey have cellular connecions, or vice versa. In he following, we use AOV as an example o illusrae how o bridge he ad-hoc nework and cellular nework via ad-hoc rouing in our design. When a gaeway receives a rouing reques for a desinaion, if i does no have an acive pah o he desinaion, in addiion o forwarding he rouing reques o is neighbors, i will also send back a rouing reply wih a gaeway flag and he hop coun o he source. If he source receives a rouing reply wih an adhoc pah o he desinaion before he imeou, i will ignore

4 he rouing replies wih he gaeway flag. Oherwise, he source will selec he gaeway wih he minimum hop coun, encapsulae he message and send i o he gaeway. When he gaeway receives he message, i will decapsulae i, connec he desinaion and forward he message hrough is cellular inerface. 3.3.2 Opporunisic Rouing In he messaging sysem, opporunisic rouing acs as an alernaive when he desinaion canno be conneced via cellular or ad-hoc communicaions. Opporunisic rouing works as an applicaion ha forwards messages beween wo nodes ha encouner each oher. The opporunisic rouing of he messaging sysem adops wo simple forwarding sraegies: (i) saic rouing where he message carried by a messaging node is forwarded only when i encouners he desinaion, o save nework resources such as energy and bandwidh; (ii) flood rouing (also known as epidemic rouing) where messaging nodes ha carry he message always forward i o he encounered node such ha he delay of he message can be minimized. More sophisicaed rouing schemes ailored for rescue operaion are o be considered in fuure work. Noe ha TeamPhone is a sysem ha can adop any opporunisic rouing proocol. Unlike mobile opporunisic neworks where nodes are isolaed individually, he nework in disaser recovery mos likely consiss of groups of nodes (e.g., groups of rescue workers), where nodes wihin he group are well conneced via ad-hoc communicaions and nodes beween groups can also be conneced hrough oher nodes, e.g., smarphones of survivors. In such a scenario, ad-hoc rouing is preferred for message ransmission raher han opporunisic rouing. Therefore, in he messaging sysem, opporunisic rouing is explored only when nework pariions occur and hus wo simple rouing sraegies are adoped raher han oher sophisicaed schemes based on hisorical conac informaion, such as [13] [14]. 3.3.3 Rouing Effors The messaging sysem differeniaes messages ino wo caegories: general messages and emergency messages (by using a flag in he message), on which he messaging sysem makes differen rouing effors. urrenly, he sysem reas messages from self-rescue nodes as emergency messages and all oher messages as general messages. General messages are handled considering he balance beween nework resource and delay, whereas emergency messages are deliberaely handled o minimize he delay. ifferen sraegies are adoped o handle hese wo ypes of messages. General messages are handled in he order of cellular connecions, ad-hoc communicaions and opporunisic conacs as aforemenioned. If a general message has o be forwarded opporunisically, hen saic rouing is adoped. Emergency messages ha are iniiaed by rapped survivors will be firs received a nearby messaging nodes and hen forwarded o he command cener for beer coordinaion of rescue operaions. Since rapped survivors are usually far from he regions covered by cellular owers, cellular is usually unavailable for nearby messaging nodes o send ou he emergency message. If he command cener also canno be conneced by ad-hoc communicaions, he emergency message will be handled as follows. The nearby messaging node will forward a copy of he emergency message o all he messaging nodes ha can currenly be conneced via ad-hoc communicaions. Then, a each node he emergency message is sored and forwarded via opporunisic conacs by he flood rouing. Whenever a node receives an emergency message, i will firs examine wheher i can forward he emergency message o he command cener direcly by a cellular or ad-hoc pah. If no, i will coninue he flood rouing. 3.4 Self-rescue Sysem The smarphones of rapped survivors are configured as par of he self-rescue sysem and hen he self-rescue sysem auomaically sends ou emergency messages when rescue workers or survivors are nearby. The baery life of smarphones mus las as long as possible, since rescue operaions may las for hours or even days. Therefore, he self-rescue sysem mus be energy-efficien. Since rapped survivors are mos likely difficul o discover, rescue crews may no infer he locaion of rapped survivors, even if hey have received emergency messages from hem. Thus, he emergency message should also provide locaion informaion o faciliae rescue operaions. 3.4.1 Self-rescue Grouping and Wake-up Scheduling To save energy, insead of coninuously saying awake, a self-rescue node can wake up periodically o discover messaging nodes. However, his will increase he possibiliy ha a self-rescue node is asleep when a messaging node passes by. Since survivors in he same building may be rapped ogeher or nearby when he building collapses, hey can group ogeher as a self-rescue group via WiFi and wake up in a coordinaed way o save energy. The group coordinaion mus be carefully done, since hey may sill miss passing by nodes if only one node in he group is scheduled o wake up during some ime. For example, as shown in Fig. 1, node moves around he group of rapped survivors. If he lefmos node is scheduled o wake up and all ohers are sleeping, he self-rescue node will no receive he hello message since i is ou of he communicaion range of node. Therefore, he design of he self-rescue sysem should ake his ino consideraion. Noe ha our wake-up scheduling problem is similar o he sensor aciviy scheduling problem [15] in sensor neworks. However, exising work focuses on achieving full coverage by scheduling among redundan nodes, saisfying coverage raio requiremen, and maximizing coverage lifeime. Unlike hese problems, in disaser scenarios, a self-rescue group mos likely does no have redundan nodes (i.e., impossible o achieve full coverage by scheduling), and here is no imposed requiremens of coverage raio and lifeime. Given a nework randomly formed by smarphones, our goal is achieve a good radeoff beween coverage and energy cos, considering he characerisics of disaser scenarios. In he following we presen he deails of our soluion. lique. onsidering a group of nodes ha coordinae waking up, we need o decide which nodes should be awake during each ime period so as o reduce energy cos while mainaining good coverage. To do so, we consider cliques.

5 a r b (a) 62.2% a r 2 (d) wo-node clique b a r c b (b) 48.8% a r 2 c (e) hree-node clique b a c b r d (c) 48.9% a c r b 2 d (f) four-node clique Fig. 3: Illusraion of wireless coverage of one node in wonode clique, hree-node clique and four-node clique, where r is he ransmission radius. In a clique here exis an edge beween every wo nodes, and hence any node in a clique can cover all oher nodes. Therefore, in a clique nodes are close o each oher, and he area covered by one node akes a large proporion of he area covered by all nodes in he clique. Fig. 3 illusraes he raios beween he coverage of one node and he coverage of all nodes in wo-node, hreenode and four-node cliques. In Figures 3a, 3b and 3c, he percenage indicaes he leas coverage raio for each case; i.e. he leas coverage raio for wo-node clique, hree-node clique and four-node clique are 62.2%, 48.8% and 48.9%, respecively, when he longes disance beween nodes is exacly he ransmission radius r. The coverage raio increases wih he decrease of such disance. For example, when i is decreased o r/2, as shown in Figures 3d, 3e and 3f, he coverage raio of one node grealy increases and i is close o he coverage of all nodes in he clique. Thus, insead of waking up individually, nodes in a clique should wake up alernaely (i.e., here is no more han one awake node a any ime in a clique) o discover nearby messaging nodes so as o save energy. Wake-up among Maximal Independen Ses. Since a nework can be seen as being composed of maximal cliques 1, e.g., he nework shown in Fig. 4a consiss of hree maximal cliques which are A = {i, j, l, n}, B = {i, j, k} and = {i, m}. The problem is how o choose a node from each maximal clique o wake up ogeher so as o yield beer coverage. Using Fig. 4a as an example, le us consider wo node ses {n, k, m} and {j, k, m}, where hree nodes of each node se are from hese hree maximal cliques, respecively. omparing hese wo node ses, {n, k, m} is beer han {j, k, m} since he coverage of node k overlaps more wih he coverage of node j han node n. In oher words, i is because nodes j and k are adjacen. Therefore, i is beer o selec he nodes from he maximal cliques such ha hey are no adjacen. Such a node se is also called he maximal independen se 2. For he nework in Fig. 4a, he maximal independen ses are {i}, {j, m}, {l, k, m} and {n, k, m}, whose union equals o he node se of he nework. A max- 1. A maximal clique is a clique o which no more nodes can be added o form anoher clique. 2. A maximal independen se is an independen se such ha adding any oher node o he se forces he se o conain wo adjacen nodes. imal independen se wih more nodes has larger coverage. However, o balance he energy consumpion a each node, he maximal independen ses have o be scheduled o wake up alernaely. To deermine he wake-up schedule for a nework, we need o find all maximal independen ses. However, finding all maximal independen ses is a NP-hard problem and requires global informaion of he enire nework. Moreover, as we will discuss laer, wake-up scheduling among maximal independen ses may no save much energy for some nodes, compared o being always awake. To his end, we break his NP-hard problem ino easier problems and deermine he wake-up scheduling a each node in a disribued way. More specifically, each node builds a onehop nework, finds all maximal cliques, and deermines he wake-up schedule based he schedules of oher nodes wihin a maximal clique. In he following, we firs briefly describe how o build he one-hop nework a each node. One-hop Nework. Self-rescue nodes broadcas beacon messages o learn heir neighbors. As he configuraion of self-rescue nodes is riggered auomaically, e.g., by he seismic deecion, self-rescue nodes mos likely sar he process simulaneously. Afer a shor period ime a node should have received beacon messages from all is one-hop neighbors. Le N u denoe he se of one-hop neighbors of node u. Then, hey broadcas heir one-hop neighbor se such ha all nodes know heir wo-hop neighbors. Noe ha self-rescue nodes do no consider unidirecional links; i.e., for example, if node u receives he one-hop neighbor se of node v bu N v does no include u, node u will no coun node v as a one-hop neighbor. Based on he informaion of wo-hop neighbors, hey can consruc one-hop neworks ha include one-hop neighbors and edges among hem, for example, as shown in Fig. 4a, which is buil by node i. Noe ha o deermine he maximal cliques a node belongs o, he one-hop nework is sufficien, since nodes in a clique mus be fully conneced. Scheduling wihin/across Maximal liques. Each node acknowledges is one-hop nework and i can also find all maximal cliques in he one-hop nework. Alhough finding all maximal cliques is also NP-hard (i is complemen o finding all maximal independen ses) [16], i can be easily performed by a node since he one-hop nework is usually small regardless of he size of he rescue group. In a maximal independen se, here are no wo adjacen nodes; i.e., here has o be no more han one awake node a any ime in a maximal clique. Therefore, our scheduling should follow his rule. Moreover, when all maximal independen ses are scheduled alernaely, he wake-ups may no be well balanced among nodes since some nodes may belong o muliple maximal independen ses. For example, for he nework shown in Fig. 4a, as discussed above here are four maximal independen ses (i.e., {i}, {j, m}, {l, k, m} and {n, k, m}) and node m belongs o hree of hem, and hence he wakeup frequency of node m is 3 4 (i.e., 3 4 of oal roaions). This only saves 1 4 energy for node m compared o always saying awake. Therefore, we have o consider a way o furher save energy for such nodes. A node may belong o muliple maximal cliques and hus he node should deermine a wake-up schedule across

n { 1 4 } l j A { 1 3, 1 4 } { 1 4 } m { 1 2 } i { 1 2, 1 3, 1 4 } B k { 1 3 } i j m k l n τ 3τ 3τ τ 2τ 3τ 3τ A B 0 12τ 3τ i j l n i j l n i j l n i j k k i j k i j k i m m i m m i m m 0 4τ 8τ 12τ (a) one-hop nework of i (b) wakeup schedule for each node (c) cumulaive wakeup schedule for each clique Fig. 4: Illusraion of one-hop nework, individual wakeup schedule and cumulaive wakeup schedule of maximal cliques. all hese cliques. For example, in Fig. 4a, node i belongs o cliques A, B and and he wake-up fracion of node i is 1/4 (since here are four nodes in clique A), 1/3 and 1/2 for A, B and, respecively. To save energy, for each node, we choose he lowes wake-up fracion of he maximal cliques i belongs o, denoed as γ, as he wake-up frequency (e.g., γ i = 1/4 for node i). By doing so, he wake-up frequency for all nodes is less han or equal o he frequency using maximal independen ses. For example, he wake-up frequencies of nodes m and k are reduced from 3 4 o 1 2 and from 1 2 o 1 3, respecively. Furhermore, since he wake-up schedules of self-rescue nodes in he same maximal clique are dependen, o deermine he wake-up schedule a each node in a disribued way, we have o decide a scheduling order. We use he sum of wake-up fracions of he maximal cliques ha a node belongs o as he crierion, denoed as θ, o deermine he scheduling order. Wihin a maximal clique, he node wih a larger θ decides firs. Fig. 4b shows he wake-up schedule of each node in he nework of Fig. 4a, assuming he wake-up schedule sars a ime 0 and each wake-up ime period is τ, which is a sysem parameer. The wake-up schedule of he nodes is easily deermined following he scheduling order discussed above and wo rules: (i) he wake-up frequency for each node mus be γ; and (ii) here is no more han one wakeup node a any ime in a clique. Fig. 4c shows he wake-up schedule for each clique, which is he cumulaive schedule of nodes in each clique. We can see for cliques B and, here are vacancies because node i is scheduled a γ i = 1/4 raher han 1/2 in clique and node j is scheduled a γ i = 1/4 raher han 1/3 in clique B. Since he vacancy raio is low, i.e., 16.7% for clique B and 25% for clique, and he coverage raios are high as discussed above, he schedule vacancy only slighly affecs he overall coverage; ye such wake-up scheduling can grealy save energy. Nodes may belong o more han one clique, such as nodes i and j in Fig. 4c. When such nodes are awake, no oher nodes in is clique need o wake up o save energy. As an example, for he nework of Figure 4a, he oal number of scheduled wake-up periods of all he nodes is 22 (27 if using maximal independen ses) for a ime period 12τ as shown in Figure 4b, while if all he nodes say awake, he oal number of wake-up periods is 72. Therefore, we can see he scheduling can save abou 70% of he energy, assuming each node spends he same amoun of energy for each wakeup period τ; in oher words, i can exend he baery life of he self-rescue group more han hree imes. Opimaliy Obviously, keeping all nodes awake can guaranee he opimaliy of coverage, bu drain he baery quickly, while keeping only one node awake can guaranee he opimaliy of efficiency (coverage/energy), i.e., no coverage overlaps, bu wih he minimal coverage. Assume selfrescue nodes have he same WiFi range and energy cos per wake-up period. As a mos one node in a maximal clique is scheduled o wake up, here is no coverage overlap in he clique, bu here may be overlaps wih nodes from oher cliques. The combinaion of awake nodes in he self-rescue group a a ime deermined by our soluion maximizes he coverage wih is efficiency, i.e., adding one more awake node canno increase he coverage wihou decreasing he efficiency. The proof is sraighforward. As each awake node is seleced from an individual clique, addiional node will conribue a larger overlap o he coverage and hus reduce he efficiency. isribued Wake-up Scheduling. In he following, we describe how o deermine he wake-up schedule in a disribued way. Noe ha he disribued scheduling works on he enire nework, no jus he one-hop nework. As discussed above, by exchanging neighboring informaion, each node can consruc he one-hop nework and find all maximal cliques, and i can furher calculae θ and γ based on he maximal cliques. Then each node floods θ ino he nework, and afer ha each node acknowledges θ of all oher nodes. The node ha has he maximum θ will iniiae he scheduling procedure; i.e., i decides a reasonable sar ime for he wake-up schedule, deermines is own wake-up schedule based on γ, and hen broadcass he schedule o is one-hop neighbors. The nodes ha receive he schedule and belong o a same maximal clique, e.g. j and k in clique B in Fig. 4a, need o deermine he scheduling order. Since θ j > θ k, node j goes firs. As node k also acknowledges θ j > θ k, i will no proceed unil i receives he schedule of j. For he nodes from differen maximal cliques, e.g. nodes j and m, heir schedules are independen and hus he scheduling order does no apply o hem. Since node i decides he sar ime of he wake-up schedule, clock synchronizaion is required for all he nodes in he self-rescue group. However, smarphones usually ge he local ime from nework providers such ha self-rescue nodes are already synchronized wih millisecond accuracy before disasers occur. Therefore, no addiional synchronizaion is required since τ is a he second level. In summary, when a node receives a schedule from a neighboring node, i firs checks wheher i has received he schedules from all oher nodes wih larger θ in he same maximal clique of he sender. If i has, i will deermine is own wake-up schedule based on he received schedules and and broadcas he schedule o is neighbors, oherwise i will wai for oher schedules. If here are more han one node in he maximal clique ha have he same value of θ, he order is deermined based on node id. Evenually, each node has is wake-up schedule. 6

x n A l j k i B y k m x n A l j (a) one-hop nework of i and buil coordinae sysem (b) one-hop nework of j (c) posiioned nodes in selfrescue group Fig. 5: Illusraion of building he coordinae sysem for self-rescue group 3.4.2 Locaion and Posiioning Las Known Locaion. When sending ou emergency messages, i is desired o include locaion informaion of rapped survivors o beer help rescue crews o find hem. However, since rapped survivors are buried in he debris, GPS is no available. In addiion, cellular owers are desroyed and hus localizaion by nework providers [17] is also unavailable. Therefore, for each individual smarphone, he only locaion informaion i has is he las known locaion which is kep by he operaing sysem (e.g., he las known locaion ha can be rerieved from he Android sysem consiss of locaion, imesamp, accuracy and provider). Alhough many apps on smarphones require a user s locaion o be periodically updaed in background, he las known locaion does no necessarily indicae curren locaion. However, given a selfrescue group, here are sill chances ha he las known locaion is close o he curren locaion for some self-rescue nodes. While self-rescue nodes hemselves canno deermine ha based on he las known locaion hey currenly have, i is easy for rescue workers o verify he locaion since hey acknowledge heir curren locaion. Therefore, i is necessary o include all las known locaions of he selfrescue group ino emergency messages. oordinae Sysem. Moreover, based on he communicaions among self-rescue nodes, i is possible o build a relaive coordinae sysem in which he posiions of selfrescue nodes can be compued. Node posiions ogeher wih las known locaions can be very helpful for rescue crews o locae he rapped survivors quickly, e.g., he las known locaion close o curren locaion can be plugged ino he coordinae sysem o reveal he locaions of oher self-rescue nodes. In he following, we deail how o build he coordinae sysem for a self-rescue group. Given a wireless nework and he disances beween direcly conneced nodes (one-hop neighbors), he coordinae sysem for he nework can be buil as invesigaed in [18]. The disance beween one-hop neighbors can be measured by differen mehods, such as Angle of Arrival, Time of Arrival and Time ifference of Arrival. However, due o he limiaion of he WiFi chips in off-he-shelf smarphones, he only mehod ha can currenly be exploied is he Signal Srengh mehod, bu his mehod can be easily replaced whenever a more accurae mehod becomes available for off-he-shelf smarphones. The posiioning mehod in [18] is designed for mobile ad hoc neworks (disances beween nodes are required o be periodically updaed and posiions have o be re-compued periodically) bu does no address communicaion overhead, which is indeed very imporan i B o y k x n A l j i B o y k m 5 y p 3 { 1 3 } 2 l { 1 m { 1 E 3, 1 4 } 2 } 4 x n A 1 i { 1 2, 1 3, 1 4 { } 1 3, 1 4 } 2 B 3 j k { 1 { 1 3, 1 3, 1 3, 1 3 } 4 } 4 o { 1 3 } Fig. 6: Example of inegraed wakeup scheduling and posiioning in a self-rescue group for he self-rescue sysem due o he energy consrain. Thus, we design a more efficien posiioning scheme o esablish a coordinae sysem for he self-rescue group. The posiioning scheme is specifically designed on op of self-rescue grouping and scheduling so as o reduce communicaion overhead. Firs, when a node broadcass beacon messages o build one-hop neworks, i will also include he informaion (e.g., ransmi power, anenna gain, ec.) ha is required o compue he disance a receivers. When a node broadcass is se of one-hop neighbors, i will also enclose he disances o hese neighbors. Thus, a node will acknowledge he disance of each edge in is one-hop nework. For example, in Fig 4a, node i will know he disance of each edge in he nework. Then, node i chooses he maximal clique ha conains he maximum number of is one-hop neighbors, i.e. clique A, o define a coordinae sysem, as illusraed in Fig. 5a, and hen all he nodes conained in clique A can be posiioned in he coordinae sysem by riangulaion since all he disances are known (refer [18] for deail). For oher maximal cliques in he one-hop nework, if hey share an edge wih he maximal clique ha has been posiioned, hen hey can be also posiioned in he coordinae sysem, e.g., clique B in Fig. 5a, hough here are wo possible posiions for some nodes due o symmery. For example, based on he coordinaes of nodes i and j and he disances beween i and k and beween j and k, anoher possible posiion of node k is k. However, if node k is locaed a k, i should have discovered nearby nodes l and n, considering heir disances in he coordinae sysem. Alhough i is possible in rare cases ha node k is a he posiion k, node k is mos likely a he posiion shown in he figure. Therefore, he posiioning scheme is designed o choose he mos likely posiion if such cases occur. For he maximal clique ha does no share an edge wih he posiioned clique, he posiion canno be deermined, e.g., node m in clique, which is called oulier. Afer compuing he coordinae of each one-hop neighbor, node i will send he coordinae informaion o is neighbors. The informaion also includes he disances o ouliers, hough hey canno be posiioned by node i in he coordinae sysem. However, ouliers may be posiioned by oher nodes in he self-rescue group wih he help of he included disance informaion. When node j receives he informaion, i acknowledges is posiion in he coordinae sysem buil by node i and will use he informaion o compue he posiion of a node ha is no ye posiioned in is one-hop nework, i.e., node 7

o as depiced in Fig. 5b. Finally, in he self-rescue group, only node m is no posiioned as illusraed in Fig. 5c. Alhough i is possible ha some nodes in he self-rescue group canno be posiioned, he posiioning scheme can provide he posiion informaion of self-rescue nodes as much as possible based on heir connecions. Self-rescue Group ommunicaions Proocol. In he following, we deail how o inegrae he posiioning scheme wih he disribued wake-up scheduling so as o minimize he communicaion overhead. The posiioning is designed o be iniiaed a he node wih he maximum sum of wakeup fracions as he scheduling does. The node deermines a coordinae sysem, compues he posiions of is onehop neighbors and broadcass hem ogeher wih he deermined wake-up schedule o is neighbors. For all oher nodes in he nework, when i is ready o deermine is own wake-up schedule, i will also compue he posiions of is one-hop neighbors if needed (i is possible hese nodes are already posiioned). If he wake-up scheduling is compleed, which means all of is one-hop neighbors are already scheduled, i will flood he posiion informaion i has ino he nework. Oherwise, i broadcass he schedule and posiions, and he process coninues. Finally, all nodes acknowledge he posiion informaion of he self-rescue group. Le us use Fig. 6 as an example o illusrae how he wake-up scheduling and posiioning work ogeher in a selfrescue group, where he order of he process is labeled by red numbers. 1) Since he sum of wake-up fracions of node i is he maximum, node i will iniially deermine is wake-up schedule, seup a coordinae sysem, compue posiions for is one-hop neighbors, and hen broadcas he schedule and he posiion informaion, denoed by (i, j, k, l, n, m), where indicaes he posiion of he node is known in he coordinae sysem. 2) Then, nodes m and j will proceed o scheduling according o he rules discussed in Secion 3.4.1. Node j will compue he posiion of node o and hen broadcas (i, j, k, l, n, m, o ). Since all nodes in he maximal clique node m belongs o have scheduled wakeup, node m will flood (i, j, k, l, n, m) ino he nework. The process coninues similarly for 3), 4) and 5). Similar o node m, nodes o and p will flood (i, j, k, l, n, m, o ) and (i, j, k, l, n, m, o, p ), respecively, afer hey deermine he wake-up scheduling. Finally, every node has is wake-up scheduling and he locaion and posiion informaion of all oher nodes in he self-rescue group. The locaion and posiion informaion will be included in he emergency message. The posiioning works as an add-on funcion of selfrescue grouping and wake-up scheduling, and hey are implemened ogeher as he self-rescue group communicaions proocol as deailed in Proocol 1. The procedures labeled in red are exclusively exploied for posiioning, which are involved wih compuing posiions and flooding posiion informaion. However, hese procedures incur very lile addiional overhead. The compuaion overhead is low and posiions are compued only once. Since only some nodes need o flood he posiion informaion, he communicaion overhead is also low. Moreover, he las known locaion is flooded ogeher wih θ and compued posiions are broadcas wih wake-up schedules. Proocol 1 Self-rescue group communicaions proocol 1: for all i V do 2: broadcas hello messages 3: discover neighbors 4: compue disances 5: broadcas one-hop neighbors 6: consruc one-hop nework 7: find all maximal cliques and calculae θ i and γ i 8: flood θ i and las known locaion ino nework 9: end for 10: if i = arg max j V θ j hen 11: deermine wake-up schedule 12: compuing posiions of one-hop neighbors 13: broadcas schedule and posiions 14: end if 15: for all i V do 16: when received a schedule do 17: if no already scheduled && received enough schedules hen 18: if received enough schedules hen 19: deermine wake-up schedule 20: compuing posiions of one-hop neighbors 21: if wake-up scheduling no compleed hen 22: broadcas schedule and posiions 23: else 24: flood posiions 25: end if 26: end if 27: else 28: coninue o wai 29: end if 30: end when 31: end for Noe ha all self-rescue nodes have o be awake during execuing his communicaions proocol. However, every node knows when his process is complee, i.e., afer i has received he posiion informaion of all oher self-rescue nodes. Then, each node goes o sleep and wakes up accordingly based on he deermined schedule. Self-rescue nodes have differen baery levels and may consume differen amouns of energy. However, each node in such a self-rescue group always consumes much less energy han if i says awake alone, while mainaining a similar coverage. Since rapped survivors wih a high baery level may or may no be willing o consume more energy han i has o when joining he self-rescue group, we currenly do no consider how o balance he baery level among selfrescue nodes, bu leave i for fuure work. 3.4.3 Message Overhead Le us analyze he message overhead of he self-rescue sysem according o Proocol 1. Each node needs o broadcas hree messages (hello message, one-hop neighbors and wake-up scheduling) and flood a message of θ. A node also needs o flood a message of posiion informaion if i is he las one in he maximal cliques i belongs o deermine he wake-up scheduling. Le N denoe he number of self-rescue nodes. In he self-rescue group, here are 3N broadcas messages and flood messages are a mos 2N 2 N. Noe ha nodes ha need o flood he posiion informaion are a mos N 1. Therefore, he oal message overhead of he self-rescue group 2(N 2 + N), i.e., 2(N + 1) ransmissions per node. 3.4.4 Emergency Message Each self-rescue node acknowledges las known locaions and posiion informaion of nodes in he group. This infor- 8

9 Messaging Sysem Self-rescue Sysem Java Neworking Inerface TP Socke UP Socke Global Handse Proxy onfiguraion Manager Ad-hoc rouing (AOV) Opporunisic rouing (TN2) Linux Kernel Rouing ellular Inerface WiFi Inerface Fig. 7: Archiecure of TeamPhone Implemenaion maion will be included in emergency messages and sen o rescue crews. Therefore, an emergency message includes: (1) he number of rapped survivors; (2) he ime when hey were rapped; (3) he laes known locaion of each node; (4) he posiion of each node in he group. 4 TEAMPHONE IMPLEMENTATION In his secion, we describe he deailed implemenaion, which includes TeamPhone inerface, TeamPhone rouing, and TeamPhone applicaion, where he nework inerface configuraion and rouing are implemened in, ++ based on Linux, and he applicaion is implemened in Java based on Android. The archiecure of TeamPhone implemenaion is illusraed in Fig. 7. Noe ha he implemenaion requires he roo privilege of he smarphone. 4.1 The Inerface Besides he cellular inerface, smarphones are usually equipped wih Blueooh and WiFi. Since Blueooh has limied ransmission range, WiFi is used for ad-hoc communicaions beween smarphones. Alhough WiFi irec or WiFi Tehering can be used o seup ad-hoc or opporunisic neworking [19], [20], hey are no feasible o suppor mulihop communicaions, which is criical in disaser scenarios, and hence we choose WiFi ad-hoc mode. However, WiFi ad-hoc mode is no officially suppored by Android. To enable WiFi ad-hoc mode, we need o compile wireless exension suppor ino he Linux kernel and also compile he wireless ool iwconfig for smarphones, which will be uilized o configure he WiFi driver. The configuraion of WiFi includes swiching WiFi from managed mode (also known as saion infrasrucure mode), which is he defaul mode of WiFi on off-he-shelf smarphones, o ad-hoc mode, and manipulaing sleep and wake-up periods of WiFi. Fig. 8 illusraes he saus of WiFi on Samsung Galaxy S3 when being configured as managed mode and ad-hoc mode (he WiFi chip is BM4330 from Broadcom). In TeamPhone, he ad-hoc rouing explois boh he cellular inerface (in gaeway mode) and WiFi inerface, while he opporunisic rouing only employs he WiFi inerface. 4.2 TeamPhone Rouing AOV. In TeamPhone, we implemened AOV insead of proacive rouing proocols (e.g., OLSR) and oher ondemand source rouing proocols (e.g., SR) based on wo major consideraions: (i) nework opology changes are frequen in a disaser recovery scenario, which incurs high mainenance overhead including nework raffic and power consumpion for proacive rouing; (ii) on-demand source Fig. 8: WiFi saus when being configure as managed mode and ad-hoc mode rouing reacs slowly on pah seup, resrucuring and failures. We modified he Linux implemenaion of AOV [21], which also has some exra feaures (i.e., unidirecional link suppor and a signal qualiy hreshold) o improve he performance of hello messages, and cross-compiled i for smarphones. The implemenaion includes wo componens: a loadable kernel module and a user-space daemon. The kernel module capures daa packes using Nefiler wih POSTROUTING, which requires he Linux kernel wih Nefiler enabled, and insrucs he user-space daemon o issue a rouing reques if he desinaion of he packe is ou of roue enries. In addiion, he kernel module is in charge of encapsulaing and decapsulaing he packe ha goes hrough gaeways. The user-space daemon mainains he kernel rouing able and conrols neighbor discovery, rouing reques and rouing reply. The communicaions beween hese wo componens are based on NeLink socke. In disaser recovery, messaging nodes monior he availabiliy of cellular connecions and configure hemselves as gaeways for AOV if he cellular connecion is valid. To maximize he reachabiliy of messages, if he desinaion canno be reached by AOV, he message can be emporarily sored a he command cener hrough gaeways and he message will be delivered o he desinaion once i connecs o he command cener. We have inegraed his funcion ino he implemenaion of AOV. Table 1 shows he seings of major parameers of AOV in our implemenaion. TN2. In TeamPhone, opporunisic rouing is accomplished by TN2 [22], which is a Linux implemenaion of he TN bundle proocol defined in RF 5050 [23]. We cusomized and cross-compiled TN2 for smarphones. TN2 is a plaform ha can adop any opporunisic rouing proocols, working a he applicaion layer and running as TABLE 1 Parameer seings of AOV Parameer Seing hello broadcas inerval 1s # of hellos before reaing as neighbor 3 Allowed hello loss 2 Rouing reques imeou 4s Rouing reques reries 2 Rouing reply AK imeou 50ms Acive roue imeou 10s

10 a user-space daemon. The nework inerface configured for TN2 is WiFi in ad-hoc mode. The basic workflow of TN2 on smarphones is as follows. Firs, a convergence layer needs o be configured, which is used o ransmi messages beween smarphones. We choose he TP convergence layer o guaranee he message ransmission. Nex, service discovery will adverise he convergence layer s presence o neighbors. Meanwhile a node also lisens for neighbor beacons and disribues each even of neighbor discovery o he convergence layer. Then, TN2 performs message ransmissions wih neighbors according o he configured rouing proocol. Saic rouing and flood rouing are wo currenly suppored rouing proocols in TeamPhone. 4.3 Fig. 9: Tesbed TeamPhone Applicaion The TeamPhone applicaion wraps he messaging sysem and self-rescue sysem ogeher, implemened in Java on Android sysem. When TeamPhone is launched, WiFi will be configured as ad-hoc mode and users need o specify which sysem o use. For he messaging sysem, AOV and TN2 are iniialized for rouing, and he messaging app is provided for users o send and receive messages. Messages can be sen in hree ways: (i) hrough AOV o reach he desinaion; (ii) by gaeways o sore he message a he command cener from which he message will be evenually delivered when he desinaion connecs o he command cener (e.g., nodes periodically fech messages from he command cener direcly or hrough gaeways); (iii) by TN2 in saic rouing mode and flood rouing mode. In he prooype, he firs mehod is he defaul and oher wo are opional. The messaging sysem is also designed o receive emergency messages from self-rescue nodes and forward hem o he command cener. The hello message from he messaging node and self-rescue node is flagged differenly so as o deal wih he unidirecional link beween messaging node and self-rescue node, where only he messaging node can receive hello messages from he self-rescue node. In ha case, he messaging node will no receive he emergency message from he self-rescue nodes since he self-rescue nodes are unable o discover he messaging node. The messaging node can sill be alered by receiving he hello message, and his aler funcion is implemened ogeher wih he user-space daemon of AOV. The self-rescue sysem performs self-rescue grouping, wake-up scheduling and posiioning in he background. For he case ha rapped survivors may no have he opporuniy o sar self-rescue sysem manually, TeamPhone can employ ishake [12], which explois smarphones as he seismic sensor3, o rigger he self-rescue sysem auomaically when an earhquake occurs. Afer wake-up scheduling, self-rescue nodes can configure he deermined wake-up schedule of WiFi using iwconfig; i.e., hey need o enable WiFi power managemen and se up he period beween wake-ups and he imeou before going back o sleep (i.e., λ). When self-rescue nodes are awake, hey run AOV o 3. ishake needs o coninuously measure he seismic wave. However, since a large earhquake ypically lass more han 30 seconds, i only needs o perform he measuremen in a 30-second inerval and hence is energy consumpion should no be significan. (a) sending message (b) viewing message (c) seings Fig. 10: Messaging sysem deec messaging nodes in heir viciniy and send ou he emergency message once hey discover he messaging node. The funcion of sending emergency messages is embedded ino he daemon of AOV. 5 E VALUATIONS TeamPhone is deployed on off-he-shelf Android smarphones, i.e., Samsung Galaxy S3. We buil a small esbed of four S3 smarphones, as shown in Fig. 9, o evaluae he performance of TeamPhone. We do noe ha here exis designs for communicaions in disaser recovery. However, few are implemened as real sysems and none provides sysem evaluaion. Thus, we canno compare hem wih TeamPhone in he evaluaion. As discussed in Secion 2, TeamPhone clearly ouperforms hese works in many aspecs of design. 5.1 Messaging Sysem In he experimens, one smarphone has a cellular connecion and works as a geaway. We also deploy a server which can be conneced hrough he cellular nework by smarphones o sore and forward messages. This server acs as he command cener in disaser recovery. Fig. 10 illusraes he user inerface for sending messages, viewing messages and seings4. In Fig. 10a, he firs checkbox corresponds o he ad-hoc rouing wih he geaway mode and he second checkbox corresponds o he opporunis rouing. In he messaging sysem, messages are ransmied over TP connecions (TP convergence layer for TN2) o guaranee he delivery5. The curren implemenaion of TeamPhone can 4. The messaging app is developed based on he open-source sofware MANET Manager [24]. 5. TP in ad hoc wireless neworks may experience hroughpu degradaion [25], due o pah lengh, packe loss, ec. However, since he messaging sysem is no hroughou-inensive and requires more reliable ransporaion of packes, we choose TP.