390 likes | 665 Views
Convergecasting in Wireless Sensor Networks. Valliappan Annamalai. Inaccessible Environment. Sensors. To External network. Base station (BS) or Control node. Wireless Communication link. Convergecasting in WSN. WSN are mainly used for monitoring
E N D
Convergecasting in Wireless Sensor Networks Valliappan Annamalai
Inaccessible Environment Sensors To External network Base station (BS) or Control node Wireless Communication link Convergecasting in WSN • WSN are mainly used for monitoring • Monitoring involves data collection and request dissemination. • Convergecasting: Process of data collection from all or a set of sensors in the network towards the base station (Many to one communication) • Energy and latency minimization is a requirement in WSNs • Why Energy? Energy constrained nature of sensors • Why latency? Requirements set forth by monitoring applications.
Convergecasting • Route construction plays a major role during convergecasting. • Criterion for route construction • Energy consumption • Latency incurred • Choice of MAC layer – Since traffic is many to one.
Choice of MAC layer • Traffic is event triggered. So traffic of two nodes close together will be dependent in nature. • And since traffic in many-to-one, high probability of collision. BS Collision Collision 2 1 Coverage Area or Sensing Range 6 5 3 4
Collisions • Results in packet loss. • Need reliability, use retransmissions. • Retransmission increases energy consumption and latency. • Avoided by using a contention based or contention free MAC protocol.
MAC protocol • Contention based (MACA, MACAW, etc…) • Acquire channel mostly using control packets. • Good for independent traffic patterns. • Disadvantage: Additional energy consumption for control packets. • Contention free (TDMA, CDMA, FDMA, etc…) • Additional cost associated with channel allocation. • For networks with dependent traffic patterns. • Can be used if network topology is static or changes rarely. • Disadvantage: Channel allocation overhead.
Energy • Total energy consumed for gathering data from all the nodes in the network. • Energy consumed at a node is used for • Running the transceiver circuitry for transmitting a bit (Etrx) • Amplifying a bit of data to be transmitted (Eamp). It depends on the transmission distance. P1 and P2 are paths BS – Base Station BS BS Eamp= 4nj Eamp= 4nj P2 P2 2 hops Eamp= 4nj P1 P1 Eamp= 5nj 3 hops Eamp= 5nj n n Energy consumed for running transceiver To transmit k data bits from n to BS Amplification energy consumed for transmitting k data bits from n to BS P1: 5 * Etrx * k P2: 3 * Etrx* k P1: (4nj + 4nj + 5nj)*k = 13 *knj P2: (4nj + 5nj )*k = 10 *k nj
Energy • Transceiver startup time. • Frequently switching the transceiver on leads to higher energy wastage. • Aggregation reduces packet header overhead. BS – Base Station BS Slots allocated to children should reduce cumulative startup time of parent’s receiver Aggregation reduces transmitter startup energy wastage 2 1 Time-slot = 3 3 4 5 Time-slot =1 Time-slot = 2
Latency • Time taken to gather data at the base station • Latency = No. of time-slots x Length of one-slot • Balanced tree helps in reducing total number of time-slots and length of time-slots Unbalanced Tree Balanced Tree BS – Base Station BS BS t = 4 2 1 t = 3 t = 2 t = 1 2 1 4 3 5 3 4 5 t =1 t = 2 t = 3 t =1 t = 2 t =1 Number of slots = 4 Length of each slot = 4 packets Latency = 16 units Number of slots = 3 Length of each slot = 3 packets Latency = 9 units
Summary • Energy and latency minimized by avoiding collisions. • Energy consumption can also be minimized by • Reducing the number of hops. • Choosing path that minimizes amplification energy. • Reducing energy wastage due to transceiver startup time by performing data aggregation. • Latency minimization by building a balanced routing tree.
Our Work • Algorithm CTCCAA*[3]: • Construct a tree and allocate channels. • Channels are a combination of time-slots t and CDMA codes c (<t,c>). • Improvement to CTCCAA[4]: • Constructs the tree with β–rule. *CTCCAA - Convergecast Tree Construction and Channel Allocation Algorithm
Assumptions • Etrx < Eamp. • One transceiver per node. • Nodes have maximum transmission range (MEamp). • Clock synchronization mechanism exists. *CTCCAA - Convergecast Tree Construction and Channel Allocation Algorithm
CTCCAA • Builds the tree and allocates channel for the nodes. • Allocates channel for two different convergecast patterns • Synchronous: Used for realtime data. Enables aggregation. Therefore parent transmits after it receives from children (parent time-slot > child time-slots) • Asynchronous: Used for non-realtime data. Enables aggregation only if data does not depend in time.
Synchronous Convergecast • Data collection starts from leaf nodes. • Each parent waits for data from its children before sending its data • Reordering based on timestamp is not necessary at base station. BS BS <4, 1> <3, 1> 2 2 1 1 3 3 <3, 1> <1, 1> 5 5 <2, 1> 4 4 Network Convergecast Tree Note: Weights indicate the amplification energy expended to transmit a data bit over that link
Asynchronous Convergecast • Data collection takes place at independent and not interfering parts of the network • Reordering necessary at base station. • Latency will be low. BS BS <1, 1> <2, 1> 2 2 1 1 <2, 1> 3 3 5 <1, 1> 5 <3, 1> 4 4 Network Convergecast Tree Note: Weights indicate the amplification energy expended to transmit a data bit over that link
Channel allocation Criterion 1 • Each node has one transceiver • Therefore a parent with two children cannot receive from both of them at the same time using two different codes. • Therefore children transmit at different time instants. ParentX = ParentY ParentX = ParentY Not Possible X Y X Y <t1,c2> <t2,c1> <t1,c1> <t1,c1>
Channel allocation Criterion 2 • Avoid exposed terminal problem Transmission range ParentX ParentY Collision Collision If X and Y use the same channel If X and Y transmit at different time-slots If X and Y transmit using different CDMA codes X Y
Channel allocation Criterion 3 • Parent cannot receive the same time it is transmitting. • Therefore parent time-slot ≠ child time-slot. ParentParentx ParentParentx ParentX Not Possible ParentX <t1,c2> <t2,c1> <t1,c1> <t1,c1> X X
Algorithm CTCCAA • Builds the tree and allocates the channel (is a tuple of time-slot t and CDMA codes c, <t,c>). • Tree constructed in top down manner. • Uses channel allocation criteria defined earlier • Additional criterion for synchronous convergecasting • child time-slot < parent time-slot • Since tree construction is top down it is not possible to allocate a valid time-slot for children. • And so does channel allocation in two phases • Phase I: Construct tree and allocate channel in increasing order of time-slots • Phase II: Reverse mapping of time slots to enable synchronous convergecast.
CTCCAA: Phase I (Tree Construction) • Constructs the tree by reducing number of hops and then choosing the path that consumes minimum amplification energy. • Reason: Etrx < Eamp since transmission range of sensors are small. • Starts constructing the tree with Base station (BS) as the root node • Maintains a possible parent and a possible child list. • Possible Parent List (PPL) = {All nodes recently added to the tree} • Possible Children List (PCL) = {x | exists y ε PPL such that Eamp(x,y) < MEamp} • Parent selection: forall x ε PCL parentx = arg Minforall y ε PPL Eamp(x,y) • If forall x ε PCL parentx≠ null then copy PCL to PPL
Example: Phase I Weights on links indicate the amplification energy expended to transmit a data bit Initially current level is 0 PPL = {BS} PCL = {1, 2} Since BS is the only possible parent both 1 and 2 choose BS as their parent. BS 2 1 3 5 4 Note: Weights indicate the amplification energy expended to transmit a data bit over that link
CTCCAA: Phase I (Channel Allocation) • Use a combination of CDMA codes and time-slots. • Allocates children a time-slot that is greater than parent (will do reverse mapping in phase II).
Example: Phase I Weights on links indicate the amplification energy expended to transmit a data bit This example assumes channel to be divided over time. Initially current level is 0 PPL = {BS} PCL = {1, 2} BS <1, 1> <2, 1> 2 1 3 5 4
Example: Phase I Weights indicate the amplification energy Initially current level is 0 PPL = {1, 2} PCL = {3, 4, 5} BS <1, 1> <2, 1> 2 1 <2, 1> 3 <4, 1> 5 <3, 1> 4
CTCCAA: Phase II • Only executed for synchronous convergecast. • Uses maximum time-slot (Maxts) allocated in the network • Actual time-slot = Maxts – allocated time-slot.
Example: Phase II Maxts = 4 BS <4, 1> <2, 1> <1, 1> 2 <3, 1> 3 <1, 1> <4, 1> <2, 1> <3, 1> 5 4 <3, 1> <2, 1>
Example Example: Shows the advantage of divided channel over time and CDMA Codes. CDMA codes help in reducing latency by increasing time-slot reuse. BS <3, 2> 2 1 <2, 2> 3 <1, 2> <1, 1> 5 4 <2, 1>
Results • Convergecast will be preceded by broadcast in monitoring applications. • Better to maintain a single tree for both convergecast and broadcast. • Measured energy and latency incurred during convergecast over a broadcast tree and a tree constructed by CTCCAA. • Similarly we measured energy and latency for broadcasting over both the trees.
Results Continued: Latency Ratio on time taken for synchronized convergecasting using 3 CDMA codes Tb,c: Time taken for convergecasting over a broadcast tree. Tc,c: Time taken for convergecasting over a tree constructed by CTCCAA. Tree constructed by CTCCAA incurs lesser latency compared to the broadcast tree.
Results Continued: Latency Ratio on time taken for synchronized convergecasting using 5 CDMA codes Tb,c: Time taken for convergecasting over a broadcast tree. Tc,c: Time taken for convergecasting over a tree constructed by CTCCAA. Tree constructed by CTCCAA incurs lesser latency compared to the broadcast tree.
Results Continued: Energy Eb,c: Energy Consumed for convergecasting over a broadcast tree. Ec,c: Energy consumed for convergecasting over a tree constructed by CTCCAA. Tree constructed by CTCCAA incurs lesser Energy compared to the broadcast tree.
Results Continued: Broadcasting Latency Ratio on time taken for broadcasting on randomly generated graphs Tb,b: Time taken for broadcasting over a broadcast tree. Tc,b: Time taken for broadcasting over a tree constructed by CTCCAA. Tree constructed by CTCCAA performs as good as the broadcast tree for broadcasting.
Improved CTCCAA • Problem with CTCCAA: • Constructed tree unbalanced. • Improved CTCCAA: • Tree Construction • A set of nodes chooses closest neighbors as its children – subject to β-rule (β specifies number of children) • This process is followed iteratively until all the nodes in the network join the tree • A node chooses more than β nodes as its children only if they do not have any other possible parent.
Results Energy for Convergecast (β = 3) • CTCCAA and improved CTCCAA consume almost same amount of energy for convergecast • Improved CTCCAA gains up to 8% over [Imrich87] for network of size >150 nodes
Results Latency for Convergecast ( β= 3) • Tree constructed by improved CTCCAA is almost 4 times faster than the tree constructed by CTCCAA and 2 times faster than broadcast tree.
References • [Estrin02] “Modelling Data-Centric Routing in Wireless Sensor Networks” by B. Krishnamachari, D. Estrin, S. Wicker Published in IEEE Infocom 2002. • [Lindsey02] “PEGASIS: Power-Efficient Gathering in Sensor Information Systems” by S. Lindsey C. S. Raghavendra Published in IEEE Aerospace Conference Proceedings, 2002. • [Valli03] “On Tree-Based Convergecasting in Wireless Sensor Networks” by V. Annamalai, S. K. S. Gupta and L. Schwiebert Published in IEEE Wireless Communications and Networking Conference, 2003. • [Sarma03] “A low-latency and energy-efficient algorithm for convergecast in wireless sensor networks” byS. Upadhyayula, V. Annamalai and S. K. S. Gupta Published in Proceedings of Globecom 2003. • [Zhang04] Reliable Bursty Convergecast in Multi-hop Wireless Sensor Networks by Hongwei Zhang, Anish Arora, Young-ri Choi, Mohamed G. Gouda. Technical Report OSU-CISRC-7/01-TR42, Ohio State University. • [Woo03] “Taming the Underlying Challenges of Reliable Multihop Routing in Sensor Networks” by Alec Woo, Torence Tong and David Culler. In proceedings of Sensys 2003. • [Imrich87] “Tree-Based Broadcasting in Multihop Radio Networks” by I. Chalmatac. and S. Kutten. IEEE Transactions on Computers Vol. C-36, No. 10, Oct 1987.
Slot Fragmentation • Arises when the transceiver is idle state during its Tx or Rx slots. • Fragment size depends on the amount of data transmitted or received and slot length. • Leads to higher latency and energy wastage. BS – Base Station BS t = 2 TFS – Transmission Fragment Size RFS – Reception Fragment Size t = 3 2 1 TFS = 1 TFS = 0 RFS = 2 RFS = 4 3 4 5 t = 2 t =1 t =1 TFS = 2 TFS = 2 TFS = 2 RFS = 0 RFS = 0 RFS = 0 Total energy wasted is 13 * Eidle Time wasted is 4 units