310 likes | 383 Views
AIC group: Networking Protocols and agent methodology research for Sensor Networks. Antonio G. Ruzzelli School of Informatics and Computer Science University College Dublin Dublin, Ireland ruzzelli@ucd.ie www.adaptiveinformation.ie. 1: Dual channel multiple access. Background .
E N D
AIC group:Networking Protocols and agent methodology research for Sensor Networks Antonio G. Ruzzelli School of Informatics and Computer Science University College Dublin Dublin, Ireland ruzzelli@ucd.ie www.adaptiveinformation.ie
Background • Traditional low cost radios for wireless sensors operate with one frequency channel at any given time, e.g Tr1001, CC1000, CC1010 • A profusion of MAC protocols focus on energy efficiency over one frequency channels
Unique frequency channel issues • MACs like IEEE802.11, SMAC, TRAMA or BMAC suffer from: • High latency (e.g. due to RTS/CTS/ACK in CSMA/CA) • Low flexibility (Difficult to release slots unused in TDMA) • Inefficient usage of the wireless channel (e.g. the ETP problem in CSMA/CA)
Advances in WSNs • Novel transceivers can operate with two channels simultaneously with a relative small increase of energy consumption e.g. nRF2401 • nRF2401 is effectively mounted on the motes developed at the University of Cork (Ireland)
DCMA/AP: Dual channel multiple access with adaptive preamble • Usage of 2 frequency channels • Data channel Cd for data • Control channel Cc for notifications Pros • No table of neighbours required • No handshake mechanisms like RTS/CTS • Reduced idle listening at the receiver • Adaptive wake-up node preamble Cons • Small increase of current consumption in dual channel reception mode (18ma23mA) • Suitable for: • Nodes working at very low duty cycle • Dual channel transceiver
The minimum wakeup concept LCCA Ts Sleep period Wakeup period LCCA Time • Nodes alternate long period of inactivity to tiny period of channel assessment; • The Least Clear Channel Assessment LCCA is the shortest time period needed for nodes to sense any activity on the channel (~2.5msec in BMAC) • LCCA time period is much shorter than the time required for a packet transmission (e.g. 35msec for 5byte transmission with Tr1001) • LCCA can reduce node duty cycle to less than 1% • Wakeup period : longest period of consecutive node activity when a signal is detected (Sensing time)
DCMA communication mechanism (1) • Node are unsynchronized asynchronous transmission • All nodes apply LCCA periodically on the data channel Cd only • A node with data to transmit apply LCCA on control channel Cc firstly.
DCMA communication mechanism (2) The transmitter • If the channel is clear then the transmitter starts sending the adaptive preamble Pa on Cd • At the same time TX keeps on listening to Cc
DCMA communication mechanism (3) The receiver • During regular CCA, the receiver can sense channel activity on Cd then reply with a TIP packet on Cc TIP =transmission / reception in progress • TIP contains (1)the receiver ID, (2) next Rx ID, (3) packet length
DCMA communication mechanism (4) • In case of error, the notification is transmitted on Cc • The error packet contain the PackID • In case of error the packet is rescheduled
The exposed terminal problem removal • TIP is sent by the receiver only nodes around the receiver refrain from transmitting The communication mechanism removes the ETP!
Adaptive Preamble mechanism • In case of multiple transmission, asynchronous packets help the receiver to obtain the node ID of the later transmitter Tx2. • Consequently Tx2 can be enabled by means of a RIP packet • The Preamble transmission stops as soon as the RIP packet is received adaptive! Note: RIP content = TIP content Difference: RIP is used to identify multiple Tx
Opportunistic Crossover mechanism Next RX RX TX Channel Cc Channel Cd • During periodical LCCA, if activity is sensed, nodes switches to Cc to get the TIP/RIP packet • TIP/RIP packet contains info about the next scheduled RX node (nextRx) and ongoing packet length • The nextRx is in the position to set up a NAV alarm to wake up right after the packet is transmitted. • Other nodes set up a double NAV to wake up just before the packet has been forwarded Note: Opportunistic crossover needs the next receiver to sense the channel busy (not only the case)
Implementation • DCMA/AP has been coded within the OmNet++ based on the object oriented C++.
Preliminary results • Decrease of transmission packet delay • Increase of network flexibility in terms of access to the channel and node scalability. • Some increase of partial overlapping transmissions on the control channel Cc following an increase of packet generation rate • In general, initial results follow our expectation that an improved performance could compensate for the increase of energy consumption due to two channel utilization
The MERLIN architecture: The TDMA/CSMA hybrid approach, the MERLIN protocol as an example
Scheduling tables: V-schedule vs. X- Schedule • Frame is divided in 8 slots; • Nodes in the same zone transmit simultaneously • The X scheduling is obtained by super positioning 2 V-sched one of which upside-down • Nodes go into sleep immediately after the transmission
X-scheduling vs V-scheduling 300 250 200 Network Lifetime (days) 150 100 50 0 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2 Frametime (sec) X Scheduling V-Scheduling Operational network lifetime Average end-to-end packet delay 1 Gateway 100 Nodes rand. Distributed. 800*500 area network Min signal strength(12 m) 50 msg/min sent by 5 rand. nodes Static network Delay calculated in the worst case scenario: 2 sec frametime The X scheduling used for applications in which some energy can be traded off for a decrease of latency of messages and for applications in which latency is a tighter constraint; V-scheduling used for low data traffic applications where the need for saving energy is of paramount importance.
What about an augmented intelligence of decision making? …A multi agent systems to: • Planning to take long term decisions (not only if the-else based) • Migrate to an area affected by an anomalous event • To improve the adaptivity of the networks • Decision based on information from different layers • Better cope with dynamic changes of the network conditions. • To take local decision between neighbouring nodes rather than at the gateway. Hence: • Energy saving • More accurate and faster response to network changes • Increase of preciseness of the action taken
Application: Dynamic scheduling change due to localized anomaly Possible solution: Multiple Notification messages High energy consuming Our proposed solution: Migrating agent Moderate energy consuming An example:
Disadvantages • Accommodate BDI agents is very challenging due to devices computationally limited • Debugging agent systems during ongoing applications is very challenging (sensors have only 3 leds provided) • Traditionally Multi agent systems (MAS) are java oriented -> JVM needed
Debugging:Agents-nodes mapping at the BS • One-to-One • Each node is controlled by one agent that deliberates accordingly • Nodes can be seen as agent perceptors • Many-to-One • Many agents map to an individual node • E.g. useful when nodes have several sensory modalities • One-to-Many • A single agent map to a group of neighbouring nodes • E.g. useful when decision may be taken by analysing a group of nodes locally placed
Methodology phase 1: Centralised Base station implementation • A single agent placed at the BS • The agent receives raw data from nodes then analyse them • The agent identifies and solve anomalous behaviour of the network or part of it. • The agent communicate to the BS what action to take.
Methodology phase 2: Distributed Base station implementation • The second phase transforms the centralised solution in a distributed agent-base implementation • The key point of this phase is to have a mapping between agents of a MAS and sensor nodes
Methodology phase 3: Distributed agents implementation • Agents on the nodes can be modelled through the agents at the BS • Hence, agents on the nodes can be easily debugged at the BS • The distributed implementation can be achieved by mapping the statements that govern the agents behaviour (such as commitment rules) to the language of the device .
gateway Integrated Sensor and Routing Coverage Agents • Definitions: • Sensing Coverage: If any node within the sensed area is covered by at least 1 sensor • Routing Coverage: It exists at least one communication path from any node within the network to the gateway • Redundant node: It can be switched off without affecting the level of coverage provided by the network;
Gateway Transmission radius Redundant based on sensor coverage Disconnected Integrated Sensor and Routing Coverage Agents Opportunistic Power Management • Disconnecting sensors based on solely sensing coverage may lead to a disconnected network; for example: • Interpolation for sensing Coverage can be used when nodes does not have a well defined sensing radius e.g sensing temperature • A Time-Zones network division for Routing coverage can be used when nodes does not have a well defined transmitting radius e.g channel irregularities • Hibernating redundant sensors, must be decided based on both routing and sensing connectivity! Zone n-1 Zone n Zone n+1 u Redundant based on routing and sensing coverage
Questions and comments are welcome Thank you for your kind attention!