Presentation is loading. Please wait.

Presentation is loading. Please wait.

C. Lu, B.M. Blum, T.F. Abdelzaher, J.A. Stankovic, and T. He

Similar presentations


Presentation on theme: "C. Lu, B.M. Blum, T.F. Abdelzaher, J.A. Stankovic, and T. He"— Presentation transcript:

1 C. Lu, B.M. Blum, T.F. Abdelzaher, J.A. Stankovic, and T. He
1/1/2019 RAP:A Real-Time Communication Architecture for Large-Scale Wireless Sensor Networks C. Lu, B.M. Blum, T.F. Abdelzaher, J.A. Stankovic, and T. He

2 Design Requirements Minimize end-to-end deadline miss ratio
Support distributed micro-sensing High-level service API Large scale, high density Scalability is key Extreme resource constraints Minimal overheads 1/1/2019 Chenyang Lu

3 Location-based Communication
From location to location What is the virus density in south terminal of airport? Individual sensors NOT important Local coordination: Sensors in interested area aggregate data Sensor-base comm.: Send aggregated result to base station ID-based From ID to ID What is the reading of sensor ? Rely on (unreliable) individual sensors 1/1/2019 Chenyang Lu

4 RAP: Real-time locAtion-based Protocols
Sensing/Control Application Query/Event Service APIs Query/Event Service Coordination Service Location-Addressed Protocol Geographic Routing Velocity Monotonic Scheduling Prioritized MAC 1/1/2019 Chenyang Lu

5 Query/Event API RAP provides the following query/event service APIs.
Coordination Service Location-Addressed Protocol Geographic Forwarding Velocity Monotonic Scheduling Prioritized MAC RAP provides the following query/event service APIs. query { attribute_list, area, timing_constraints, querier_loc } register_event { event, area, query } Assume that the locations of the base stations are fixed. 1/1/2019 Chenyang Lu

6 Example .. register_event {
Query/Event Service Example .. Coordination Service Location-Addressed Protocol Geographic Forwarding Velocity Monotonic Scheduling Prioritized MAC register_event { virusFound(0,0,100,100), // area to post event query { // query to be triggered virus.count, // attribute area=(x-1,y-1,x+1,y+1), // query area period=1.5, deadline=5, // timing info base=(100,100) // base station location } The following API call registers a virus_count query for a virus_found event. If any viruses are found in a rectangular area with coordinates (0,0,100,100), returns the average density of the viruses of the 2×2 square area centered at the event location (Xevent,Yevent) every 1.5 sec. Every reading should reach the base station within an end-to-end deadline of 5 sec 1/1/2019 Chenyang Lu

7 query { virus.count, area=(10,10,12,12), period=1.5,deadline=5,
base=(100,100) } The following query requires the average density of the viruses in an rectangular area (10,10,12,12) be reported to the base station of the querier every 1.5 sec. Every reading should reach the base station within an end-to-end deadline of 5 sec. 1/1/2019 Chenyang Lu

8 Location-Addressed Protocol
LAP is a connectionless transport layer in the network stack. LAP is similar to UDP except that all messages are addressed by location instead of IP address. Three types of communication are supported by LAP: unicast, area multicast, and area anycast. Unicast delivers a message to a node that is closest to the destination location. Unicast can be used by sensors to send query results to base stations. Area multicast delivers a message to every node in a specified area. Area multicast can be used to register for an event or send a query to an area, for coordination among nodes in a local group. Area anycast delivers a message to at least one node in a specified area. Area anycast can also be used for sending a query to a node in an area. The node can initiate group formation and coordination in that area. 1/1/2019 Chenyang Lu

9 Geographic Forwarding
1/1/2019 Query/Event Service Geographic Routing Coordination Service Location-Addressed Protocol Geographic Forwarding Velocity Monotonic Scheduling Closest to C Prioritized MAC A C E What if there is holes/obstacles? Local state  Scalability – Routing decisions are local Dense network  Efficient greedy forwarding works well Dense network  #hop proportional to distance Location-based comm.  No location directory service 1/1/2019 Chenyang Lu

10 Background – GF GF always chooses the node that is closest to the destination in FS. s d 1/1/2019 Chenyang Lu

11 Deadline & Distance Aware
Existing ad hoc networks, packets are typically forwarded in FCFS order. FCFS scheduling does not work well in real-time networks where packets have different end-to-end deadlines and distance constraints. Deadline-aware means that a packet’s priority should relate to its deadline. The shorter the deadline, the higher the packet priority. Distance-aware means that a packet’s priority should relate to its distance from the destination. The longer the distance, the higher the packet priority. 1/1/2019 Chenyang Lu

12 Velocity Monotonic Scheduling
Query/Event Service Velocity Coordination Service Location-Addressed Protocol Geographic Forwarding Velocity Monotonic Scheduling Prioritized MAC Timing constraint: deadline Location constraint: distance to destination Requested Velocity Embody both constraints Reflect local urgency Velocity Monotonic Scheduling (VMS): Priority = Requested Velocity 1/1/2019 Chenyang Lu

13 Example D A C B dis = 90 m; D = 2 s V = 45 m/s HIGH Priority
LOW Priority 1/1/2019 Chenyang Lu

14 Velocity Monotonic Scheduling
Query/Event Service Coordination Service Velocity Monotonic Scheduling Location-Addressed Protocol Geographic Forwarding Velocity Monotonic Scheduling Prioritized MAC Static VMS Fixed velocity on each hop V = dis(x0,y0,xd,yd)/D Source location: (x0,y0) Destination location: (xd,yd) End-to-end deadline: D Dynamic VMS Adapt velocity at intermediate node based on progress Vi = dis(xi,yi,xd,yd)/Si Velocity at node: Vi Location of node i: (xi,yi) Slack: Si = D – elapseTime 1/1/2019 Chenyang Lu

15 Priority Queue Single Queue: Multiple Queue: Ordered by priority
Queue is full, higher priority incoming packets overwrite lower priority. Implementing a data structure whose insertion time, in the worst case, grows logarithmically in the number of packets. Multiple Queue: Priority corresponds to a range of requested velocities. A packet is first mapped to a priority, and then inserted into the FIFO queue that corresponds to its priority Packets that miss their deadlines are useless, priority queues actively drop packets that have missed their deadlines to avoid wasting bandwidth. 1/1/2019 Chenyang Lu

16 Velocity Monotonic Scheduling
1/1/2019 Query/Event Service Prioritized MAC Coordination Service Location-Addressed Protocol Geographic Forwarding Velocity Monotonic Scheduling Prioritized MAC Collision Avoidance (CA) Channel idle  wait for DIFS = BASE_DIFSPRI Packets with a higher priority (corresponding to a smaller PRIORITY value) on average choose a smaller waiting period. Contention Collision (No CTS or No ACK)CW = CW*(2+(PRI-1)/MAXPRI) MAXPRI is the maximum value of priority(corresponding to the lowest priority). The backoff counter of a node with a pending lower priority packet increases faster than a node with a pending packet with a higher priority. Similar to ’s EDCF Acquire Channel Idle Time BASE_DIFSPRI CW Avoidance Contention Exponential Backoff Transmission 1/1/2019 Chenyang Lu

17 Example … Count: registerEvent { virusFound(0,0,136,136), query {
virus.count, area=(Xevent-1,Yevent-1,Xevent+1,Yevent+1), period=Pc, deadline=Dc base = (134.07, ) }; Detail: query { detail, area=(x-1,y-1,x+1,y+1), period=Pd, deadline=Dd base=(134.07, ) 1/1/2019 Chenyang Lu

18 Example … A user registers a count query with a virusFound event in the whole 136*136 m2 squared area. A virusFound event is generated when a grid detects a specified virus at location (Xevent,Yevent). This event triggers a query virus_count, which periodically reports the density of the detected virus in the area (Xevent-1,Yevent-1,Xevent+1,Yevent+1) to the base station A user can also directly submit a detail query to get more detailed data collected at a location. Detail generates periodic flows that send detailed information about a grid to the base station for further analysis. While a large number of count flows may be generated (e.g., during a bio-attack), the user may only query the details of a small number of important grids. We assume that packets (called count packets) returned by count queries have longer deadlines than packets (called detail packets) returned by detail queries. 1/1/2019 Chenyang Lu

19 Simulation: Biometric Sensing
1/1/2019 Simulation: Biometric Sensing 100 nodes on 136X136 m2 Periodic query count on 31 nodes; detail on 15 nodes Base Station Hot Regions (sources) 6-7 hop maximum FAR 1/1/2019 Chenyang Lu

20 Workload Communication range: 30.5 m
Limitations of the GloMoSim simulator, we had to send data flows on top of the UDP/IP stack that contribute to 28 B overhead. In a real implementation we expect to eliminate the UDP/IP headers Network (roughly approximate MICA mote) Communication range: 30.5 m Packet size: 32B (count), 160 B (detail) Bandwidth: 200 kbps (> MICA) Protocols Routing: DSR (Dynamic Source Routing), GF (Geographic Forwarding) Scheduling: FIFO, DS (Deadline-based), SVM, DVM MAC: , extended w. prioritization 1/1/2019 Chenyang Lu

21 Details … The main performance metric is the deadline miss ratio, i.e., the percentage of generated packets that are received by the base station within their deadlines DS assigns a fixed priority to packets based on their end-to-end deadlines. In our workload, all count packets are assigned priority 3 (the lowest), and all detail packets are assigned priority 1 (the highest). It doesn’t depend on the distance. DS and SVM perform almost identically when deadline is (5, 50) s. This conforms to our intuition. While the distances from each sensor to the base station stays the same, the bigger differences between the deadlines of detail and count flows become a dominant factor in requested velocity. 1/1/2019 Chenyang Lu

22 Flow of Packets Base station Base station GF – Flow of Packets
DSR – Flow of Packets 1/1/2019 Chenyang Lu

23 Deadline Miss Ratio Overall
1/1/2019 Deadline Miss Ratio Overall GlomoSim simulation (deadline: detail: 5 s, count: 10 s) 1/1/2019 Chenyang Lu

24 Deadline Miss Ratio: FAR hot region
1/1/2019 Deadline Miss Ratio: FAR hot region GlomoSim simulation (deadline: detail: 5 s, count: 10 s) 1/1/2019 Chenyang Lu

25 Distance Fairness SVM provides “fairer” service to remote sensors
Critical for scalability of sensor networks! 1/1/2019 Chenyang Lu

26 Conclusion Velocity Monotonic Scheduling
Reduce end-to-end deadline miss ratio Fair service to remote sensors Event/query service API’s High-level abstraction for distributed microsensing Location-based protocol stack Scalable Small protocol overhead 1/1/2019 Chenyang Lu

27 Critique VMS DVM No schedulability analysis or admission control  No guarantee Is velocity the right trade-off between distance and time? Distance = #hop? in-doors, obstacles, void, long links No routing or congestion control to handle congestion: RAP+SPEED+? Location of the base station is fixed. Lack support for Coordination services Area multicast Mobility 1/1/2019 Chenyang Lu

28 Related Work Directed diffusion is a data-driven communication paradigm for sensor networks. Users can broadcast interests to sensor networks. Sensors whose data match an interest report their data to the node that posts the interest At the MAC layer Woo and Culler proposed a MAC protocol with adaptive rate control to achieve fairness among nodes regardless of their distance from the base station in a sensor network. However, their MAC does not provide prioritization for packets with different velocities. Timing constraints are not considered in their protocol. 1/1/2019 Chenyang Lu

29 Related Work … VMS is inspired by coordinated multihop scheduling developed by Kanodia et. al. They proposed three priority index assignment policies for multi-hop wireless networks. The Time-To-Live (TTL) policy assigns priority to a packet based on its TTL counter, while each node decreases TTL by the time it spent in that node. The TTL-based priority can dynamically adapt packet priorities based on its progress. We note that TTL-based priority may not handle scenario 2 in Figure 2 well because A and B’s packets may have a similar TTL despite the fact that they have different distances to travel after E. The fixed per-node allocation decreases the priority index on each node by a per-node constant. 1/1/2019 Chenyang Lu

30 Related Work … The uniform delay budget (UDB) allocation assigns a fixed priority index to a packet based on its end-to-end deadline divided by the end-to-end hop count. UDB essentially utilizes per-hop velocity computed based on end-to-end hop count, while VMS is based on geographic velocity computed based on the geographic distance to the destination. UDB requires routing protocols to provide the end-to-end hop count for each flow at the cost of route discovery and maintenance overhead. UDB cannot work with GF, which does not provide hop count. In comparison, VMS does not require hop count and is a perfect match with GF. 1/1/2019 Chenyang Lu


Download ppt "C. Lu, B.M. Blum, T.F. Abdelzaher, J.A. Stankovic, and T. He"

Similar presentations


Ads by Google