Technical Report: Energy Evaluation of preamble Sampling MAC Protocols for Wireless Sensor Networks
The paper presents a simple probabilistic analysis of the energy consumption in preamble sampling MAC protocols. We validate the analytical results with simulations. We compare the classical MAC protocols (B-MAC and X-MAC) with LAMAC, a method propos…
Authors: Giorgio Corbellini, Cedric Abgrall, Emilio Calvanese Strinati
1 Ener gy Ev aluation of Preamble Sampling MA C Protocols for W ireless Sensor Networks Giorgio Corbellini ∗ † , Cedric Abgrall ∗ , Emilio Calv anese Strinati ∗ , and Andrzej Duda † ∗ CEA-LETI, MINA TEC, Grenoble, France † Grenoble Institute of T echnology , CNRS Grenoble Informatics Laboratory UMR 5217, France Email: [Giorgio.Corbellini, Cedric.Abgrall, Emilio.Calv anese-Strinati]@cea.fr , Andrzej.Duda@imag.fr Abstract The paper presents a simple probabilistic analysis of the energy consumption in preamble sampling MA C protocols. W e validate the analytical results with simulations. W e compare the classical MA C protocols (B-MA C and X-MA C) with LA-MAC, a method proposed in a companion paper . Our analysis highlights the energy sa vings achiev able with LA-MAC with respect to B-MA C and X-MA C. It also shows that LA-MA C provides the best performance in the considered case of high density netw orks under traf fic congestion. I . I N T RO D U C T I O N W ireless Sensor Networks (WSN) have recently expanded to support div erse applications in various and ubiquitous scenarios, especially in the context of Machine-to-Machine (M2M) networks [1]. Ener gy consumption is still the main design goal along with providing sufficient performance support for tar get applications. Medium Access Control (MA C) methods play the ke y role in reducing energy consumption [2] because of the part taken by the radio in the overall ener gy budget. Thus, the main goal consists in designing an access method that reduces the effects of both idle listening during which a de vice consumes energy while waiting for an e ventual transmission and overhearing when it recei ves a frame sent to another device [2]. T o sav e energy , devices aim at achieving low duty cycles: they alternate long sleeping periods (radio switched off) and short active ones (radio switched on). As a result, the challenge of MA C design is to synchronize the instants of the recei ver wake-up with possible transmissions of some devices so that the network achieves a very low duty cycle. The existing MAC methods basically use two approaches. The first one synchronizes devices on a common sleep/wake-up schedule by exchanging synchronization messages (SMA C [3], TMAC [4]) or defines a synchronized network wide TDMA structure (LMA C [5], D- MA C [6], TRAMA [7]). With the second approach, each device transmits before each data frame a preamble long enough to ensure that intended recei vers wake up to catch its frame (Aloha with Preamble Sampling [8], Cycled Receiv er [9], LPL (Low Power Listening) in B-MA C [10], B-MAC+ [11], CSMA-MPS [12] aka X-MAC [13], BOX-MA C [14], and DA-MA C [15]). Both approaches con ver ge to the same scheme, called synchr onous pr eamble sampling , that uses very short preambles and requires tight synchronization between devices (W iseMA C [16], Scheduled Channel Polling (SCP) [17]). Thanks to its lack of explicit synchronization, the second approach based on pr eamble sampling appears to be more easily applicable, more scalable, and less energy demanding than the first synchronous approach. Even if methods based on preamble sampling are collision prone, the y hav e attracted great research interest, so that during last years many protocols ha ve been published. In a companion paper, we hav e proposed LA-MA C, a Lo w-Latency Asynchronous MA C protocol [18] based on preamble sampling and designed for efficient adaptation of device behaviour to v arying network conditions. In this paper , we analytically and numerically compare B-MA C [10], X-MA C [13], and LA-MA C in terms of energy consumption. The novelty of our analysis lies in how we relate the expected energy consumption to traffic load. In prior energy analyses, authors based the e xpected energy consumption on the av erage Traf fic Generation Rate (TGR) of devices [17] as well as on the probability of recei ving a packet in a gi ven interval [13]. In contrast to these approaches, which only focus on the consumption of a “transmitter-recei ver” couple, we rather consider the global energy cost of a group of neighbour contending de vices. Our analysis includes the cost of all radio operations in volved in the transmission of data messages, namely the cost of transmitting, receiving, idle listening, and ov erhearing. The motiv ation for our approach comes from the fact that in comple x, dense, and multi-hop networks, traffic distrib ution is not uniformly spread ov er the network. Thus, the expected energy consumption depends on traffic pattern, e.g . con ver gecast , br oadcast , or multicast , because instantaneous traffic load may differ ov er the network. In our approach, we estimate the expected energy consumption that depends on the instantaneous traf fic load in a given localized area. As a result, o ur analysis estimates the energy consumption independently of the traffic pattern. I I . B A C K G RO U N D W e propose to e valuate the expected ener gy consumption of a group of sensor nodes under three dif ferent preamble sampling MAC protocols: B-MA C, X-MA C and LA-MA C. In complex, dense, and multi-hop networks, the instantaneous traffic distrib ution over the network is not uniform. For example, in the case of networks with the con ver gecast traffic pattern 2 (all messages must be delivered to one sink), the the traffic load is higher at nodes that are closer to the sink in terms of number of hops. Due to this funnelling effect [19], de vices close to the sink exhaust their energy much faster than the others. The ev aluation of the expected energy consumption in this case is difficult and the energy analyses published in the literature often base the expected energy consumption of a gi ven protocol on the traffic generation rate of the network [17]. In our opinion, this approach does not fully reflect the complexity of the problem, so we propose to analyze the expected consumption with respect to the number of messages that are b uffered in a gi ven geographical area. This approach can simulate dif ferent congestion situations by varying the instantaneous size of the buf fer . In our analysis, we consider a “star” network composed of a single recei ving device ( sink ) and a group of N devices that may hav e data to send. All de vices are within 1-hop radio co verage of each other . W e assume that all transmitting devices share a global message buf fer for which B sets the number of queued messages, B is then related to network congestion. Among all N de vices, N s of them hav e at least one packet to send and are called active devices. Remaining devices ha ve empty b uffers and do not participate in the contention, ne vertheless, they are prone to the overhearing effect . Thus, there are N o = N − N s overhear ers . According to the global buf fer state B , there are sev eral combinations of ho w to distribute B packets among N sending devices: depending on the number of packets inside the local b uffers of acti ve de vices, N s and N o may vary for each combination. F or instance, there can be B activ e de vices with each one packet to send or less than B activ e devices with some of them having more than one buf fered packet. In the remainder , we explicitly separate the energy cost due to transmission E t , reception E r , polling (listening for any radio activity in the channel) E l , and sleeping E s . E o is the overall energy consumption of all overhearers. The ov erall expected energy consumption E is the sum of all these energies. The po wer consumption of respectiv e radio states is P t , P r , P l , and P s for transmission, reception, channel polling, and sleeping. The power depends on a specific radio de vice. W e distinguish the polling state from the reception state. When a node is performing channel polling, it listens to any channel for activity—to be detected, a radio transmission must start after the beginning of channel polling. Once a radio acti vity is detected, the de vice immediately switches its radio state from polling to receiving. Otherwise, the device that is polling the channel cannot change its radio state. The duration of a message ov er the air is t d . The time between two wakeup instants is t f = t l + t s , where t l and t s are respectively the channel polling duration and the sleep period. These values are related to the duty cycle. I I I . P R E A M B L E S A M P L I N G M AC P RO TO C O L S In this section, we provide the details of analyzed preamble sampling protocols. Figure 1 presnts the operation of all protocols. A. B-MAC In B-MA C [10], all nodes periodically repeat the same cycle during their lifetime: wak e up, listen for the channel, and then go back to sleep. When an activ e node wants to transmit a data frame, it first transmits a preamble long enough to cover the entire sleep period of a potential receiv er . After the preamble the sender immediately transmits the data frame. When the receiv er wakes up and detects the preamble, it switches its radio to the receiving mode and listens to until the complete reception of the data frame. Even if the lack of synchronization results in low ov erhead, the method presents sev eral drawbacks due to the length of the preamble: high energy consumption of transmitters, high latenc y , and limited throughput. In the remainder , we define t B p , the duration of the B-MAC preamble. B. X-MAC In CSMA-MPS [12] and X-MA C [13], nodes periodically alternate sleep and polling periods. After the end of a polling period, each activ e node transmits a series of short preambles spaced with gaps. During a gap, the transmitter switches to the idle mode and expects to receive an ACK from the recei ver . When a receiv er wakes up and receives a preamble, it sends an A CK back to the transmitter to stop the series of preambles, which reduces the energy spent by the transmitter . After the reception of the ACK, the transmitter sends a data frame and goes back to sleep. After data reception, the recei ver remains awak e for possible transmission of a single additional data frame. If another acti ve node recei ves a preamble destined to the same receiver it wishes to send to, it stops transmitting to listen to the channel for an incoming A CK. When it overhears the A CK, it sets a random back-off timer at which it will send its data frame. The transmission of a data frame after the back-of f is not preceded by any preamble. Note howe ver that nodes that periodically wake up to sample the channel need to keep listening for a duration that is larger than the gap between short preambles to be able to decide whether there is an ongoing transmission or not. The duration of each short preamble is t X p and the A CK duration is t X a . C. LA-MAC LA-MA C [18] is a scalable protocol that aims at achieving lo w latency and limited ener gy consumption by building on three main ideas: efficient forwarding based on proper scheduling of children nodes that want to transmit, transmissions of frame bursts, and traffic differentiation. The method periodically adapts local organization of channel access depending on network dynamics such as the number of acti ve users and the instantaneous traffic load. In LA-MA C, nodes periodically alternate long 3 Rx Tx1 Tx2 P P P P A A P P A P P A A S S S DA T A DA T A DA T A DA T A DA T A DA T A Rx Tx1 Tx2 DA T A P P P P P P P P P P P P P P P P P P P P P P P P P P P P P P P P P P P P P P DA T A DA T A time sleep Rx Tx1 Tx2 DA T A P P P P P P P P rx/idle DA T A DA T A backoff rx/tx/rx sleep sleep sleep rx polling sleep sleep tx polling sleep sleep rx polling sleep sleep rx/idle/tx polling sleep rx sleep sleep tx rx sleep polling tx/rx sleep rx/tx sleep sleep sleep polling rx/tx rx sleep sleep sleep rx LA-MAC X-MAC B-MAC time time time time time time time time A A A DA T A polling polling polling/rx/tx S P A DA T A = T ransmission = Reception = Preamble = SCHEDULE = ACK = Data Figure 1. Comparison of analyzed MA C methods. sleep periods and short polling phases. During polling phases each receiv er can collect sev eral requests for transmissions that are included inside short preambles. After the end of its polling period, the node that has collected some preambles processes the requests, compares the priority of requests with the locally backlogged messages and broadcasts a SCHEDULE message. The goal of the SCHEDULE message is to temporarily organize the transmission of neighbor nodes to av oid collisions. If the node that ends its polling has not detected any channel acti vity and has some backlogged data to send, it starts sending a sequence of short unicast preambles containing the information about the burst to send. As in B-MA C and X-MA C, the strobed sequence is long enough to wakeup the receiver . When a receiver wakes up and recei ves a preamble, it clears it with an A CK frame containing the instant of a rendezvous at which it will broadcast the SCHEDULE frame. If a second active 4 node ov erhears a preamble destined to the same destination it wants to send to, it waits for an incoming A CK. After A CK reception, a sender goes to sleep and wak es up at the instant of the rendezv ous. In Figure 1, we see that after the transmission of an ACK to Tx1, Rx de vice is again ready for recei ving preambles from other devices. So, Tx2 transmits a preamble and receiv es an ACK with the same rendezvous. Preamble clearing continues until the end of the channel polling interv al of the receiv er . I V . E N E R G Y A N A L Y S I S LA- MA C provides its best performance in contexts of high density and traffic congestion. In order SHOW THE GAIN of LA-MA C, we provide an energy analysis aimed at comparing EXPECTED energy consumption of all considered protocols. W e focus on e valuating expected ener gy consumption of a group of nodes when the number of messages to transmit within the group is known. In our analysis, we consider one recei ver and a group of de vices that can have some messages to send as well as empty buf fers. In the analysis thta we provide, we focus our attention to the fact that in a complex sensor network traffic congestion is not uniformly distributed over the network. In fact elements such as the MA C protocol, the density and the traffic model hav e different impact in different areas of the network. For this reason instead of focusing on the simple T raffic Generation Rate (TGR) [17] on the probability of receiving a packet in a gi ven interval [13], we base our analysis on the number of messages that a group of nodes must send to a reference receiver . W ith this approach we can sho w different congestion situations as they happen in a multi-hops networks with con ver gecast traffic pattern, where traffic distribution is not uniform with respect to proximity to the sink (in terms of number of hops). In fact, the closer the sink, the higher the av erage traffic. W e provide an ev aluation that shows energy consumption with respect to a group of nodes. W e assume that a group of nodes share a global message buf fer , depending on the number of messages in the buffer there may be zero, one, two or multiple senders. Those nodes that have any message to send are called others or overhear ers , they don’t participate in the contention but are prone to the overhearing pr oblem (one of the major causes of energy waste in wireless sensor networks). In the analysis we separate energy cost due to transmission (couple, triple or more) E t , reception E r , polling (listening some activities in the channel) E l and sleep E s . Consumption of other node that overhears the channel is represented by E o . Overall expected ener gy consumption E is the sum of all energies. Global buf fer state of the group of nodes is B . Power consumption of radio states are P t for transmission, P r for reception, P l for channel polling and P s for sleep. W e assume that when a device is polling the channel, it listens to the air interface for some activity; if a message is already being sent while a device starts polling the channel, the device will not change its radio state. Otherwise, if a device that is polling the channel hears the beginning of ne w message, it switches its radio in receiving mode increasing the energy consumption. W e consider that the group is composed by N devices and one receiver . Depending on the state of buffers, the number of senders N s varies as well as the number of ov erhearing nodes N o = N − N s . W e assume that all devices are within radio range of each others. Duration of a message over the air is t d . Each frame elapses t f = t l + t s A. Global buf fer is empty ( B = 0 ) If all b uffers are empty , all protocols beha ve in the same way: nodes periodically wakeup, poll the channel, then go back to sleep because of absence of channel activity . Consumption only depends on time spent in polling and sleeping. E ALL (0) = ( N + 1) · ( t l · P l + t s · P s ) (1) B. Global buf fer contains one message ( B = 1 ) If there is one message to send, there are only two devices that are acti ve: the one which has a message in the buf fer ( N s = 1) and the destination. The number of overhears is N o = N − 1 . B-MA C ( B = 1 ) When message sender wakes up, it polls the channel and then starts sending one large preamble that anticipates data transmission. Even if data is unicast, destination field is not included in preambles; therefore, all nodes need to hear both preamble and the header of the following data in order to know the identity of the intended receiv er . Provided that de vices are not synchronized, each device will hear in average half of the preamble. The cost of transmission is the cost of an entire preamble plus the cost of transmitting data. E B t (1) = ( t B p + t d ) · P t (2) The cost of reception is the cost of receiving half of the duration of a preamble plus the cost of receiving data. In packetized radios, a large preamble is obtained by a sequence of short preambles sent one right after the other . For this reason, if a generic device B wakes up and polls the channel while a generic device A is sending a long peamble, radio state of device B will remain in polling state for a short time until the beginning of the next small packet of the large preamble; afterwards the radio will switch in recei ving mode consuming more energy . When the receiv er (that is not synchronized with the sender) 5 wakes up, it polls the channel for some acti vity . Because of lack of synchronization, it may happen that at the time when the receiv er wak es up, the sender is performing channel polling. Probability of this ev ent is p = t l /t f , so if the receiv er wakes up during this period, it will perform half of the polling and then it will listen for the entire preamble. Otherwise, if the receiv er wakes up after the end of the polling of sender , it will listen half of the preamble (probabiliy 1 − p ). In the remainder of this document we say that with probability p transmitter and recei ver are somehow quasi-synchronized. E B r (1) = ( p · t B p + (1 − p ) · t B p 2 + t d ) · P r (3) So more than the entire polling of the sender we must consider half of polling period that must be performed by the recei ver with probability p . E B l (1) = (1 + p 2 ) · t l · P l (4) The cost of sleeping activity for the couple transmitter/receiv er it depends on the time that they do not spend in polling, receiving or transmitting messages. E B s (1) = (2 · t f − ( t B p 2 · ( p + 3) + 2 · t d + t l · (1 + p 2 ))) · P s (5) W ith B-MAC there is not dif ference in terms of energy consumption between ov erhearing and receiving a message. Therefore, the cost of overhearing is: E B o (1) = N o · ( E B r (1) + p · t l 2 · P l + ( t f − ( p · ( t l 2 + t B p ) + (1 − p ) · t B p 2 + t d )) · P s ) (6) X-MA C ( B = 1 ) When the sender wakes up, it polls the channel and starts sending a sequence of unicast preambles separated by a time for early A CK reception. When the intended recei ver wakes up and polls the channel, it receives the preamble and clear it. Then the sender can transmit its message. After data reception, the recei ver remains in polling state for an extra backoff time t b that is used to receiv e other possible messages [13] coming from other senders. All devices that have no message to send, ov erhear channel acti vity and go to sleep as soon as the y receiv e any unicast message (preamble, A CK or data). The expected number of preambles that are needed to wakeup the receiver is γ X . A verage number of preambles depends on the duration of polling period, preamble and A CK messages as well as the duration of an entire frame [13]. γ X Is the in v erse of the collision probability of one preamble ov er the polling period of the receiver . In fact, if the couple sender/receiv er is not synchronized, the sender can not know when the recei ver will wak e up, thus each preamble has the same probability to be heard or not by the receiv er . Each sent preamble is a trial of a geometric distribution, so we say that before there is a collision between preamble and polling period there are ( γ X − 1) preambles whose energy is wasted. γ X = 1 t l − t X a − t X p t f (7) T otal amount of energy that is due to the activity of transmitting one message depends on the average number of preambles that must be sent ( γ X ) and the cost of early A CK reception. Provided that wakeup schedules of nodes are not synchronous, it may happen that when the receiv er wakes up, the sender is performing channel polling (transmitter and receiv er are quasi- synchronized with probability p ). In the case of quasi-synchronization, the receiv er will perform in a verage half of the polling period and afterwards it the will be able to clear the very first preamble of the strobe. In this case the cost of transmission only includes the transmission of one preamble and the cost of receiving the A CK. Otherwise, if nodes are not synchronous (the receiv er wakes up after the end of the polling of sender), the receiver will cause the sender to waste energy for the transmission of γ X preambles and the wait for an A CK (we consider waiting for ACK as a polling state) before it can hear one of them. The energy consumption of all activities of polling is reported separately in E X l (1) . Transmission cost is: E X t (1) = (1 − p ) · γ X · t X p · P t + p · t X p · P t + t X a · P r + t d · P t (8) = ((1 − p ) · γ X + p ) · t X p · P t + t X a · P r + t d · P t (9) The cost of the recei ving activity is represented by the transmission of one ACK and the reception of both data and preamble. E X r (1) = ( t d + t X p ) · P r + t X a · P t (10) W ith probability 1 − p (no synchronization) the recei ver will wakeup while the sender is already transmitting a preamble (or it is waiting for an early ACK). Otherwise (with probability p ) the recei ver will perform in av erage, only half of its polling 6 period. The reason for this is that if the acti ve couple is quasi-synchronized they simultaneously perform channel sensing, then the sender starts the preamble transmission. As far as the sender is concerned, we must consider both the entire polling period and the time that the sender waits for early ACK without any answer (ev ent that happens with probability 1 − p ). E X l (1) = (( t l + (1 − p ) · ( γ X − 1) · t X a ) + ((1 − p ) · t X p + t X a 2 + p · t l 2 ) + t b ) · P l (11) = ((1 − p ) · ( t X p + t X a 2 + ( γ X − 1) · t X a ) + ( p 2 + 1) · t l + t b ) · P l (12) Sleep activity of the activ e couple is twice a frame duration minus the time that both de vices are active. E X s (1) = (2 · t f − ( t l + ((1 − p ) · γ X + p ) · ( t X p + t X a ) + t d ) − ( p · t l 2 + t X p + t X a + (1 − p ) · t X p + t X a 2 + t d + t b )) · P s (13) = (2 · t f − 2 · t d − p · t l 2 − t X p − t X a − (1 − p ) · t X p + t X a 2 − t l − ((1 − p ) · γ X + p ) · ( t X p + t X a ) − t b ) · P s (14) As other devices, the o verhearers can wakeup at a random instant. Howe ver , dif ferently from activ e agents, as soon as they ov erhear some activity the y go back to sleep. Therefore their energy consumption depends on the probability that such nodes wake up while the channel is busy or not. The probability that at wakeup instant the channel is free depends on polling duration, buf fer states, the number of senders etc. In figure 2 we present all the possible situations that can happen. W e consider as reference instant, the time at which the transmitter wakes up (root of the tree). W ith probability p , the receiv er and the the transmitter are quasi-synchronized, not synchronized otherwise (probability (1 − p ) ). W ith probability p · p both the recei ver and a generic overhearer are quasi-synchronized with the transmitter , this is the Case 1 in the tree. Rx Other p p p 1-p 1-p 1-p 1/2 1/2 Case 1 Case 2 Case 3 Case 4 Case 5 Case 6 Case 7 Case 8 1 − p a − p b p a p b 1 − p a − p b p b Case 9 p a p a = tp/tf p b = ta/tf Tx Figure 2. X-MA C. T ree of different wakeup cases. • Case 1 : Sender , receiv er and overhearer are quasi-synchronized. The ov erhearer will sense a preamble that is not intended to it and the goes back to sleep. E X C ase 1 ,o = t l 2 · P l + t X p · P r + ( t f − t l 2 − t X p ) · P s (15) • Case 2, 3, 4: Sender and receiver are synchronized but not the overhearer . When the overhearar wakes up, it can o vehear different messages (preamble, A CK or data) as well as clear channel. Possible situations are summarized in figure 4. 7 Tx1 Rx O1 polling polling polling polling preamble ACK data polling po lling busy Figure 3. Global buffer size A=1. Overhearing situations for Case 1. X-MA C protocol Tx1 Rx O1 polling polling polling polling preamble ACK data polling po lling busy O2 polling polling O3 polling polling Figure 4. Global buffer size A=1. Overhearing situations for Cases 2, 3 and 4. X-MAC protocol – Case 2 If the ovehearer wak es up during a preamble transmission, it will ovehear the following A CK and afterwards go back to sleep. The probability for the overhearer to wakeup during a preamble is p a = t X p /t f . E X C ase 2 ,o = t X p 2 · P l + t X a · P r + ( t f − t X p 2 − t X a ) · P s (16) – Case 3: If the ovehearer wakes up during a A CK transmission, it will ovehear the following data message and afterwards go back to sleep. The probability for the overhearer to wakeup during an ACK is p b = t X a /t f . E X C ase 3 ,o = t X a 2 · P l + t d · P r + ( t f − t X a 2 − t d ) · P s (17) – Case 4: The ovehearer will either wakes up during data transmission or after the end of it. In both cases when the sender wakes up and senses the channel, it will sense it as free because the sender was sleeping when data packet transmission begun. Therefore the overhearer performs an entire polling and go back to sleep. The probability for this event to happen is 1 − p a − p b . E X C ase 4 ,o = t l · P l + ( t f − t l ) · P s (18) • Case 5 Similarly to Case 1, if the overhearer is quasi-synchronized with the transmitter it will overhear the first preamble ev en if the receiver is still sleeping. The energy cost is: E X C ase 5 ,o = E X C ase 1 ,o (19) • Cases 6,7,8: If neither the receiver nor the overhearer are synchronized with the sender , it may happen that the receiver wakes up before the overhearer . Therefore, similarly to cases 2,3 and 4 we hav e dif ferent situations. Cases 6,7,8 are 8 Tx1 Rx O1 polling polling polling polling preamble ACK data polling polling busy Figure 5. Global buffer size A=1. Overhearing situations for Case 5. X-MA C protocol Tx1 Rx O1 polling polling polling polling preamble ACK data polling polling busy O2 polling polling O3 polling polling Figure 6. Global buffer size A=1. Overhearing situations for Cases 6, 7 and 8. X-MAC protocol respectiv ely similar to 2,3 and 4: E X C ase 6 ,o = E X C ase 2 ,o (20) E X C ase 7 ,o = E X C ase 3 ,o (21) E X C ase 8 ,o = E X C ase 4 ,o (22) • Case 9: If the o verhearer wakes up before the intended receiv er , it will receiv e a preamble and go back to sleep. The cost in this case is: E X C ase 9 ,o = t X p · P r + t X p + t X a 2 · P l + ( t f − t X p + t X a 2 − t X p ) · P s (23) The overall energy cost is the sum of the costs of each case weighted by the probability of the case to happen E X o (1) = N o · 9 X i =1 p C ase i · E X C ase i ,o (24) LA-MA C ( B = 1 ) In the present analysis we do not consider adaptive wakeup schedule of senders presented in section [REF PRO T OCOL DESCRIPTION SECTION]. Therefore, wakeup schedules are assumed random. Even if this is a worst case for LA-MAC, it helps to better compare it with other protocols. When sender wakes up, polls channel and send preambles as in X-MA C. Howe ver dif ferently from X-MA C, after early ACK reception, the sender goes back to sleep and waits for Schedule message to be sent. When the intended recei ver receiv es one preamble, it clears it and completes its polling period in order to detect other possible preambles to clear . Immediately after the end of polling period, the receiv er processes requests and broadcasts the Schedule message. In LA-MA C, ov erhearers go to sleep as soon as they receiv e any unicast message (preamble, ACK or data) as well as the Schedule. Due to lack of synchronization, e xpected number of preambles per slot follows X-MA C with different size of preambles t L p and A CK t L a . When the sender wakes up, it perform an entire channel polling before starting transmitting strobed preambles. When the receiver wakes up, it polls the channel. With probability p = t l /t f the sender and receiv er are quasi-synchronized; so with probability p the sender is still polling the channel when the receiver wakes up. 9 When the sender wakes up, it polls the channel and starts sending preambles to wakeup the receiver . W ith probability p , the first preamble that is sent will wak e up the receiv er, so the sender will immediately receiv e an early A CK. Otherwise, if nodes are not synchronized (probability (1 − p ) ) the sender will wake up its destination in average after γ L preambles. E L t (1) is similar to the cost of X-MA C plus the cost of receiving the Schedule. E L t (1) = (1 − p ) · γ L · t L p · P t + p · t L p · P t + t L a · P r + t d · P t + t g · P r (25) Cost of reception depends on the duration of preamble, A CK, data and Schedule messages. E L r (1) = ( t L p + t d ) · P r + ( t L a + t g ) · P t (26) When the sender wakes up, it performs a full polling period before the beginning of the strobed preambles. Moreover the degree of synchronization between sender and receiv er (called active nodes) also influences the consumption. If active nodes are not synchronized, the sender will poll the channel ( γ L − 1) times in order to wait for early ACK. Differently from X-MA C, the receiver will complete its polling period e ven if it clears one preamble, so its radio will remain in polling state the duration of a full polling period less the time for preamble reception and ACK transmission. E L l (1) = (( t l + (1 − p ) · ( γ L − 1) · t L a ) + ( t l − t L p − t L a )) · P l (27) When the activ e nodes are not transmitting, recei ving or polling the channel they can sleep. E L s (1) = (2 · t f − ( t l + (1 − p ) · γ L · t L p + p · t L p + t L a + (1 − p ) · ( γ L − 1) · t L a + t d + t g ) − ( t l + t d + t g )) · P s (28) As in X-MA C as soon as ov erhearers receiv e some messages they go back to sleep. Therefore their energy consumption depends on the probability that such nodes wake up while the channel is busy or not. All the possible combinations of wakeup schedules with relativ e probabilities are sho wn in figure 7 . Rx Other p p p 1-p 1-p 1-p 1/2 1/2 Case 1 Case 2 Case 3 Case 4 Case 5 Case 6 Case 7 Case 8 Case 9 Case 10 Case 11 p c p d p e 1 − p c − p d − p e p c p d p e 1 − p c − p d − p e Figure 7. Lamac. Tree of different wakeup cases. • Case 1 : Sender , receiv er and overhearer are quasi-synchronized. The ov erhearer will sense a preamble that is not intended to it and goes back to sleep. Probability of this ev ent is p · p E L C ase 1 ,o = t l 2 · P l + t L p · P r + ( t f − t l 2 − t L p ) · P s (29) • Case 2, 3, 4, 5: the receiver is synchronized with Sender . Nev ertheless, the overhearer is not synchronized with the sender . When the ov erhearar wakes up, it can receiv e dif ferent messages (preamble, A CK, Schedule or data) as well as clear channel. 10 Tx Rx O polling polling polling polling polling polling preamble ACK data Schedule Figure 8. Lamac. Possible wakeup instants of overhearers. Case 1 Tx Rx O polling polling polling polling polling polling preamble ACK data Schedule Figure 9. Lamac. Possible wakeup instants of overhearers. Case 2 – Case 2 If the o vehearer wak es up during a preamble transmission, it will recei ve in av erage half of the preamble and ov ehear the following ACK. Afterwards it will go back to sleep. Probability of this e vent is p · (1 − p ) · p c , where p c = t L p /t f represents the ev ent that wakeup instant of the overhearer is slightly after the end of polling of the sender . E L C ase 2 ,o = t L p 2 · P l + t L a · P r + ( t f − t L p 2 − t L a ) · P s (30) – Case 3: If the ov ehearer wakes up during an ACK transmission, it will sense a silent period and ov ehear the following schedule message. Afterwards it goes back to sleep. Probability of this ev ent is p · (1 − p ) · p d , where p d = t L a /t f includes the ev ent that wakeup instant of the overhearer happens at least after the transmission of a preamble. p d Neglects the time that elapses between the end of the ACK and the end of channel polling of the recei ver . In other words, p d supposes that schedule message is sent immediately after the transmission of A CK. E L C ase 3 ,o = t L a 2 · P l + t g · P r + ( t f − t L a 2 − t g ) · P s (31) – Case 4: If the ov erhearer wakes up during the transmission of the Schedule, it will hear the following data and then go to sleep. Probability of this event is p · (1 − p ) · p e , where p e = t g /t f assumes that the wak eup instant of the ov erhearer happens in av erage during the middle of schedule transmission. E L C ase 4 ,o = t g 2 · P l + t d · P r + ( t f − t g 2 − t d ) · P s (32) – Case 5 The ov ehearer will either wakes up during data transmission or will sense a free channel because both sender and receiver are already sleeping. Therefore the ov erhearer performs an entire polling and goes back to sleep. Probability of this event is p · (1 − p ) · (1 − p c − p d − p e ) . E L C ase 5 ,o = t l · P l + ( t f − t l ) · P s (33) • Case 6: Similarly to Case 1, if the ov erhearer is quasi-synchronized with the sender with probability (1 − p ) · p , the energy cost is: E L C ase 6 ,o = t l 2 · P l + t L p · P r + ( t f − t l 2 − t L p ) · P s (34) • Cases 7,8,9,10: If neither the receiver nor the ov ehearer are synchronized with sender , it may happen that the receiv er wakes up before the o verhearer . W e distinguish the situations of quasi-synchronization of the couple overhearer -preambles and lack of synchronization. In cases 7 and 8, overhearer is quasi-synchronized with the receiver . 11 Tx Rx O polling polling polling polling polling polling preamble ACK data Schedule Figure 10. Lamac. Possible wakeup instants of overhearers. Cases 7,8,9, 10. – Case 7: There is a probability to ov erhear a preamble. Such a probability is (1 − p ) · (1 − p ) · 1 / 2 · p c . Consumption of this case is the same of Case 2. E L C ase 7 ,o = E L C ase 2 ,o (35) – Case 8: There is a probability to overhear an A CK. Such a probability is (1 − p ) · (1 − p ) · 1 / 2 · p d . Consumption of this case is the same of Case 2. E L C ase 8 ,o = E L C ase 3 ,o (36) If the ov erhearer and the receiv er are not synchronized: – Case 9: There is a probability to overhear a Schedule. Such a probability is (1 − p ) · (1 − p ) · 1 / 2 · p e . Consumption of this case is the same of Case 4. E L C ase 9 ,o = E L C ase 4 ,o (37) – Case 10: There is a probability to ov erhear a data message. Such a probability is (1 − p ) · (1 − p ) · 1 / 2 · (1 − p c − p d − p e ) . Consumption of this case is the same of Case 5. E L C ase 10 ,o = E L C ase 5 ,o (38) • Case 11: Otherwise, if the overhearer wakes up before the intended receiv er, it will receiv e one preamble (whichever preamble amongst γ L ) and go back to sleep. The cost in this case is: E L C ase 11 ,o = t L p + t L a 2 · P l + t L p · P r + ( t f − t L p + t L a 2 − t L p ) · P s (39) The overall energy cost is the sum of the costs of each case weighted by the probability of the case to happen E L o (1) = N o · 11 X i =1 p C ase i · E L C ase i ,o (40) C. Global buf fer contains two messages ( B = 2 ) If A=2 , there can be either one sender with two messages to deliv er , or two senders with each only one message. The others de vices may overhear some channel activity . The number of o verhearers will be N o = N − 1 if there is just one sender , N o = N − 2 otherwise. The probability that two messages are in different buf fers is equal to ( N − 1) / N . B-MA C ( B = 2 ) The overall power consumption for transmission and reception when A ≥ 1 is linear with the global number of packets in buf fer , independently on how packets are distributed in the different buf fers, i.e., independently of the number of senders. In fact, due to the long preamble to send ( t b p = t f ), there can be only one sender per frame. Thus, we ha ve the follo wing relation: E B ( A ) = A · E B (1) = A · ( E B t (1) + E B r (1) + E B l (1) + E B s (1) + E B o (1)) . Such a relation depicts the limitations of B-MA C protocol, since high-loaded traffic can hardly been addressed. X-MA C ( B = 2 ) After the reception of the first data message, the receiv er remains in polling state for an extra back-of f time t b during which it can receiv e a second message. The energy consumed for the transmission of the first packet is the same as the energy E X t (1) defined in the previous subsection; then the cost of the transmission for the second message must be added. Differently from B-MA C, the distribution of messages in the buf fers impacts X-MA C protocol behaviour . W ith probability 1 / N both packets are in the same buf fer; otherwise two different senders are implicated, so we need to study ho w wakeup instants of the activ e agents are scheduled with respect to each others. W akeup instant of different agents are all independent. W e assume that the frame begins at the wakeup instant of the first transmitter; scenarios that may happen are illstrated on Figure 11 with their happening probability: 12 Rx p p p 1-p 1-p 1-p sleep γ X · ( t X p + t X a ) 1/2 1/2 sleep γ X 2 · ( t X p + t X a ) Case 1 Case 2 Case 3 Case 4 Case 5 Case 6 Case 7 Case 8 1/N (N-1)/N t p + t a t a t a Tx 1 Tx 2 1 − q X 1 − q X q X q X Figure 11. X-MA C protocol: Probability tree of wakeup combinations with global buf fer size A=2. There are one sender and one or two transmitters. • Case 1: All three agents are quasi-synchronized. The very first preamble sent by the first transmitter is cleared by the receiv er who sends an A CK; the second transmitter hears both the preamble and the A CK. Probability of this scenario is p C ase 1 = ( N − 1) / N · p · p . Tx1 Rx O1 polling polling polling polling polling polling preamble ACK data Tx2 polling p olling polling polling polling polling O2 O3 busy Figure 12. X-MA C protocol, global buffer size A=2: Overhearing situations for Case 1. E X C ase 1 ,t (2) = t X p · P t + t X a · P r + ( t X p + t X a ) · P r + 2 · t d · P t (41) E X C ase 1 ,r (2) = ( t X p + 2 · t d ) · P r + t X a · P t (42) E X C ase 1 ,l (2) = ( t l + t l 2 + t l 2 ) · P l (43) E X C ase 1 ,s (2) = (3 · t f − ( t l + t X p + t X a + t d ) − ( t l 2 + t X p + t X a + t d ) − ( t l 2 + t X p + t X a + 2 · t d )) · P s (44) Depending on wakeup instants of ov erhearers se veral situations may happen. If the ov erhearer is quasi-synchronized with one of the three activ e agents (receiv er or one of the two senders), then it will sense a busy channel (cf. figure 12). W e assume that an ov erhearer polls the channel for some time and then overhears a message that can be a preamble, an A CK or a data. For simplicity , we assume the overhearer polls the channel during in average a half polling frame and then overhears a data (the largest message that can be overheard). Probability to wakeup during a busy period is 13 p X case 1 ,A =2 = ( t X p + t X a + 2 · t d ) /t f . Otherwise, the overhearer wakes up while channel is free; it polls the channel and then goes back to sleep. E X C ase 1 ,o (2) = N o · ( p X case 1 ,A =2 · ( t l 2 · P l + t d · P r + ( t f − t l 2 − t d ) · P s ) + (1 − p X case 1 ,A =2 ) · ( t l · P l + ( t f − t l ) · P s )) (45) • Case 2: First sender and receiver are quasi-synchronized, contrary to second sender (cf. figure 13). The only possibility for the second sender to send data in the current frame is to manage to catch the A CK of the receiv er during its polling period. This e vent happens with probability q X = ( t l − t X a ) /t f . Probability of this scenario is p C ase 2 = ( N − 1) / N · p · (1 − p ) · q X . Tx1 Rx O1 polling polling polling polling preamble ACK data polling polling Tx2 polling polling polling polling O2 O3 busy pollin g Figure 13. X-MA C protocol, global buffer size A=2: Overhearing situations for Case 2. Energy consumption of this second scenario is quite the same as the one of Case 1 b ut ev ent probability is different. Since the second sender is not quasi-synchronised, it cannot hear the full preamble sent by the first sender and has a shorter polling period. E X C ase 2 ,t (2) = E X C ase 1 ,t (2) − t X p · P r (46) E X C ase 2 ,r (2) = E X C ase 1 ,r (2) (47) E X C ase 2 ,l (2) = E X C ase 1 ,l (2) − t l − t X p 2 · P l (48) E X C ase 2 ,s (2) = E X C ase 1 ,s (2) + t l + t X p 2 · P l (49) W e assume that the probability of busy channel is the same as the previous scenario. So, overhearing consumption is unchanged. E X C ase 2 ,o (2) = E X C ase 1 ,o (2) (50) • Case 3: W ith probability 1 − q X , the second sender wak es up too late and cannot catch the A CK. In this case, it goes back to sleep and it will transmit its data during the next frame. So, energy cost is the sum of the transmission cost for the first packet in the current frame and for the second packet in the following frame. This second frame is the same as E X (1) . This scenario happens with probabiliy p C ase 3 = ( N − 1) / N · p · (1 − p ) · (1 − q X ) . E X C ase 3 ,t (2) = t X p · P t + t X a · P r + t d · P t + E X t (1) (51) E X C ase 3 ,r (2) = t X p · P r + t X a · P t + t d · P r + E X r (1) (52) E X C ase 3 ,l (2) = ( t l + t l + t l 2 ) · P l + E X l (1) (53) E X C ase 3 ,s (2) = (3 · t f − ( t l + t X p + t X a + t d ) − t l − ( t l 2 + t X p + t X a + t d )) · P s + E X s (1) (54) 14 In the second frame, the first sender has nothing to send any more and can be count as an overhearer . Then the number of overhearers should be updated between two frames but energy cost per overhearer is unchanged in comparison to the one for a unique message in global b uffer (A+1): E X C ase 3 ,o (2) = ( N o + ( N o + 1)) · E X o (1) N o + 1 (55) • Case 4: First and second senders are quasi-synchronized but the recei ver wakes up later . In this scenario, the first sender sends a strobed preamble until the recei ver wakes up and sends an A CK; the second sender hears the whole strobed preamble and then sends its data during the back-off time. Between short preambles, senders poll channel waiting for an A CK from receiv er . Probability of this scenario is p C ase 4 = ( N − 1) / N · (1 − p ) · p . Tx1 Rx O1 polling polling polling polling preamble ACK data polling polling Tx2 polling polling polling polling O2 O3 busy polling Figure 14. X-MA C protocol, global buffer size A=2: Overhearing situations for Case 4. E X C ase 4 ,t (2) = γ X · t X p · ( P t + P r ) + 2 · t X a · P r + 2 · t d · P t (56) E X C ase 4 ,r (2) = ( t X p + 2 · t d ) · P r + t X a · P t (57) E X C ase 4 ,l (2) = ( t l + t l 2 + 2 · ( γ X − 1) · t X a + t X p + t X a 2 ) · P l (58) E X C ase 4 ,s (2) = (3 · t f − ( t l + γ X · ( t X p + t X a ) + t d ) − ( t l 2 + γ X · ( t X p + t X a ) + t d ) − ( t X p + t X a 2 + t X p + t X a + 2 · t d )) · P s (59) When recei ver wakes up later than both senders, the probability that an overhearer wak es up during a transmission of a preamble is higher than with pre vious scenarios. If this happens, the ov erhearer performs a v ery short polling, ov erhears a message (most probably a preamble) and then goes back to sleep. For simplicity we assume that the ov erhearer will perform half of ( t X p + t X a ) of polling and than ov erhears an entire preamble. Probability of busy channel is thus p X case 4 ,A =2 = ( γ X · ( t X p + t X a ) + 2 · t d ) /t f . E X C ase 4 ,o (2) = N o · ( p X case 4 ,A =2 · ( t X p + t X a 2 · P l + t X p · P r + ( t f − t X p + t X a 2 − t X p ) · P s ) + (1 − p X case 4 ,A =2 ) · ( t l · P l + ( t f − t l ) · P s )) (60) • Cases 5, 6, 7: Second sender and receiv er are not synchronized with first sender; the beha viour of the protocol depends on which device among the second sender and the receiv er will wake up as first. – Case 5: Receiver wakes up as first. Similarly to Case 2, the only possibility for the second transmitter to send data in the current frame is to catch the ACK of the receiv er during its polling. This e vent happens with probability q X = ( t l − t X a ) /t f . Ho wev er , there is also the possibility for T x 2 to catch the preamble sent by T x 1 that just precedes the ov erheard A CK. Such e ventuality can happen with probability u X = t X p + t X a 2 · t X p + t X a . This scenario happens with probability p C ase 5 = ( N − 1) / N · (1 − p ) · (1 − p ) · 1 2 · q X . 15 pol li Tx1 Rx O1 polling polling polling polling preamble ACK data polling polling Tx2 polling p olling polling polling O2 O3 busy channel Figure 15. X-MA C protocol, global buffer size A=2: Overhearing situations for Case 5. E X C ase 5 ,t (2) = ( γ X · t X p + t d ) · P t + t X a · P r + ( u X · t X p + t X a ) · P r + t d · P t (61) E X C ase 5 ,r (2) = ( t X p + 2 · t d ) · P r + t X a · P t (62) E X C ase 5 ,l (2) = ( t l + ( γ X − 1) · t X a + t X p + t X a 2 + u X · t X p + t X a 2 + (1 − u X ) · t X p 2 ) · P l (63) E X C ase 5 ,s (2) = (3 · t f − ( t l + γ X · ( t X p + t X a )+ t d ) − ( u X · t X p + t X a 2 +(1 − u X ) · t X p 2 + u X · t X p + t X a + t d ) − ( t X p + t X a 2 + t X p + t X a +2 · t d )) · P s (64) As in the previous case, the overhearer perceiv es a very busy channel because of the transmission of preambles; so when it w akes up it will perform half of ( t X p + t X a ) in polling state before overhearing an entire preamble. Probability of busy channel is p X case 5 = p X case 4 . E X C ase 5 ,o (2) = E X C ase 4 ,o (2) (65) – Case 6: Recei ver wakes up as first. Similarly to Case 3, with probability 1 − q X , the second sender wak es up too late and cannot catch the A CK from the receiv er . Thus it goes back to sleep and will transmit its data during the next frame. This scenario happens with probability p C ase 6 = ( N − 1) / N · (1 − p ) · (1 − p ) · 1 2 · (1 − q X ) . E X C ase 6 ,t (2) = γ X · t X p · P t + t X a · P r + t d · P t + E X t (1) (66) E X C ase 6 ,r (2) = ( t X p + t d ) · P r + t X a · P t + E X r (1) (67) E X C ase 6 ,l (2) = ( t l + ( γ − 1) · t X a ) · P l + t l · P l + t X p + t X a 2 · P l + E X l (1) (68) E X C ase 3 ,s (2) = (3 · t f − ( t l + γ X · ( t X p + t X a ) + t d ) + t l + ( t X p + t X a 2 + t X p + t X a + t d )) · P s + E X s (1) (69) E X C ase 6 ,o (2) = E X C ase 3 ,o (2) = 2 · E X o (1) (70) – Case 7: Second transmitter wakes up as first, it hears a part of the strobed preamble until the recei ver wakes up and sends its A CK. In a verage, when the second transmitter wakes up, it performs a short polling whose duration is the one between two successive short preambles: t X p + t X a 2 . After that, it hears an a verage number of b γ X 2 c short preambles before the receiv er wak es up and stops the strobed preamble by sending its ACK. Probability of this scenario is p C ase 7 = ( N − 1) / N · (1 − p ) · (1 − p ) · 1 2 . E X C ase 7 ,t (2) = ( γ X · t X p + t d ) · P t + t X a · P r + ( b γ X 2 c · t X p + t X a ) · P r + t d · P t (71) E X C ase 7 ,r (2) = ( t X p + t d ) · P r + t X a · P t + t d · P r (72) E X C ase 7 ,l (2) = ( t l + ( γ X − 1) · t X a ) · P l + (( b γ X 2 c − 1) · t X a + t X p + t X a 2 ) · P l + t X p + t X a 2 · P l (73) 16 E X C ase 7 ,s (2) = (3 · t f − ( t l + γ X · ( t X p + t X a ) + t d ) − ( t X p + t X a 2 + b γ X 2 c · ( t X p + t X a ) + t d ) − ( t X p + t X a 2 + t X p + t X a + 2 · t d )) · P s (74) From the ov erhearers point of view , this case is equiv alent to Cases 4 and 5. E X C ase 7 ,o (2) = E X C ase 4 ,o (2) (75) • Case 8: There is only one sender that sends two messages in a row during the extra back-of f time. This last scenario happens with a probability equal to p C ase 8 = 1 N . E X C ase 8 ,t (2) = E X t (1) + t d · P t (76) E X C ase 8 ,r (2) = E X r (1) + t d · P r (77) E X C ase 8 ,l (2) = E X l (1) − t d · P l (78) E X C ase 8 ,s (2) = E X s (1) − t d · P s (79) When the sender is unique, energy consumption of the overhearers can be assumed quite the same as the one in case of a global buf fer with one packet to send (A=1). E X C ase 8 ,o (2) = E X o (1) (80) The overall energy cost is the sum of the costs of each scenario, weighted by the probability of the scenario to happen (as showed in the figure 11): E X (2) = 8 X i =1 p C ase i · E X C ase i (2) (81) LA-MA C ( B = 2 ) When global buf fer contains more than one message, there can be one or sev eral senders. In this section we deal with the case A = 2 . Energy consumption E L (2) depends on the number of senders as well as on how wak e-up are scheduled. All different combinations of wake-up instants with their probabilities are giv en on figure 16. With probability ( N − 1) / N there are two senders, otherwise there is a single sender . Cases 1-7 refer to situations in which two senders are inv olved, whereas case 8 refers to a scenario with one sender . Rx p p p 1-p 1-p 1-p sleep γ L · ( t L p + t L a ) 1/2 1/2 sleep Case 1 Case 2 Case 3 Case 4 Case 5 Case 6 Case 7 Case 8 1/N (N-1)/N t L p + t L a t a q L q L 1 − q L 1 − q L Tx 1 Tx 2 t a γ L 2 · ( t L p + t L a ) Figure 16. LA-MA C protocol, global buffer size A=2: Probability tree of wakeup combinations. • Case 1: The three agents are quasi-synchronized. The very first preamble is instantly cleared by the receiver; the second transmitter hears this preamble and the A CK. This scenario happens with a probability equal to p C ase 1 = ( N − 1) / N · p · p . 17 Tx1 Rx O1 polling polling polling polling polling polling preamble ACK data Schedule Tx2 polling polling polling polling polling pollin g O2 O3 busy channel polling polling polling polling O4 O5 Figure 17. LA-MA C protocol, global buffer size A=2: Overhearing situations for Case 1. E L C ase 1 ,t (2) = t L p · P t + t L a · P r + ( t L p + t L a ) · ( P r + P t ) + t g · P t + t d · P t (82) E L C ase 1 ,r (2) = E L r (1) + ( t L p + t d ) · P r + t L a · P t (83) E L C ase 1 ,l (2) = ( E L l (1) − ( t L p + t L a ) · P l ) + t l 2 · P l (84) E L C ase 1 ,s (2) = ( E L s (1) − t d ) − ( t f − t l 2 − t L p − t L a − t g − t d ) · P s (85) As far as ov erhearers are concerned, sev eral situations may happen depending on the instants of wakeup of the o verhearer For simplicity we assume that if the overhearer is quasi-synchronized with one of the three acti ve agents (sender one, two or receiver), it will sense a busy channel (cf. figure 17). W e assume that the ov erhearer will poll the channel for some time and then ovehear a message (that can be a preamble, an A CK, a Schedule or a data), for simplicity we assume that the ovehrearer polls the channel for an average time equal half the duration ( t l ) and then it will ov erhear a data (the largest message that can be sent). Probability to wak eup during a b usy period is p L case 1 ,A =2 = (2 · ( t L p + t L a + t d ) + t g ) /t f . Otherwise, if the overhearer wakes up while channel is free, it will poll the channel and then go to sleep. E L C ase 1 ,o (2) = p L case 1 ,A =2 · ( t l 2 · P l + t d · P r + ( t f − t l 2 − t d ) · P s ) + (1 − p L case 1 ,A =2 ) /t f ) · ( t l · P l + ( t f − t l ) · P s ) (86) • Case 2: The first transmitter and receiver are quasi-synchronized. Ho wev er the second sender, is not. The only possibility for it to send data in the current frame is to send a preamble during the polling of the receiv er plus the probability to receiv e an A CK . This e vent happens with probability q L = 1 /γ L + ( t l − t a ) /t f . E L C ase 2 ,t (2) = E L t (1) + ( t g + 2 · t L a ) · P r + ( t L p + t d ) · P t (87) E L C ase 2 ,r (2) = E L r (1) + ( t L p + t d ) · P r + t L a · P t (88) E L C ase 2 ,l (2) = ( E L l (1) − ( t L p + t L a ) · P l ) + t p 2 · P l (89) E L C ase 2 ,s (2) = E L s (1) − ( t f − t p 2 − t L p − t L a − t g − t d ) · P s (90) W e assume that the probability of b usy channel is the same as the pre vious case. So consumption is assumed to be the same as the previous case. E L C ase 2 ,o (2) = E L C ase 1 ,o (2) (91) • Case 3: with probability 1 − q L , the second sender wakes up too late and can not catch the acknowledge. In this case it will go back to sleep and it will transmit its data during the next frame. ADD FIGURE FOR THIS CASE E L C ase 3 (2) = 2 · E L (1) (92) 18 Tx1 Rx O1 polling polling polling polling preamble ACK data Schedule polling polling Tx2 polling p olling polling polling O2 O3 busy channel polling Figure 18. Global buffer size A=2. Overhearing situations for Case 4. LA-MA C protocol • Case 4: First and second senders are quasi-synchronized b ut the receiv er wakes up later . In this case, the first sender will send a strobed preamble and the second will hear all the preambles until the receiver wakes up and sends the A CK. E L C ase 4 ,t (2) = E L t (1) + γ L · t L p · P r + 2 · t L a · P r + t g · P r + ( t L p + t d ) · P t (93) E L C ase 4 ,r (2) = E L r (1) + ( t L p + t d ) · P r + t L a · P t (94) E L C ase 4 ,l (2) = ( E L l (1) − ( t L p + t L a ) · P l ) + (( γ L − 1) · t L a + t l 2 ) · P l (95) E L C ase 4 ,s (2) = E L s (1) − ( t f − ( γ L + 1) · ( t L p + t L a ) − t g − t d − t l 2 ) · P s (96) If the recei ver wakes up later than the couple of senders, the probability that an overhears wakes up during a transmission of a preamble is high. If this happens, the ov erhearer performs a very short polling, overhears a message (most probably a preamble) and then it goes back to sleep. For simplicity we assume that the overhearer will perform half of ( t L p + t L a ) of polling and than overhears an entire preamble. Probability of busy channel is p L case 4 = γ L · ( t L p + t L a ) + ( t L p + t L a ) + t g + 2 · t d E L C ase 4 ,o (2) = p L case 4 · ( t L p + t L a 2 · P l + t L p · P r + ( t f − t L p + t L a 2 − t L p ) · P s ) + (1 − p L case 4 ) · ( t l · P l + ( t f − t l ) · P s ) (97) • Cases 5, 6, 7: The second transmitter and the receiver are not synchronized with the first transmitter , the behaviour of the protocol depends on which agent will wakes up as first among the second transmitter and the receiv er . – Case 5: the recei ver wakes up as first, similarly to Case 2, the only possibility for it to send data in the current frame is to listen to the ACK of the receiv er , during its polling. This ev ent happens with probability q L = 1 /γ L . E L C ase 5 ,t (2) = E L C ase 2 ,t (98) E L C ase 5 ,r (2) = E L C ase 2 ,r (99) E L C ase 5 ,l (2) = E L C ase 2 ,l (100) E L C ase 5 ,s (2) = E L C ase 2 ,s (101) As in the previous case, the overhearer will perceiv e a very busy channel because of the transmission of preambles so when it will wake up, it will perform half of ( t L p + t L a ) in polling state and than it will ov erhear an entire preamble. Probability of busy channel is p L case 5 = p L case 4 = γ L · ( t L p + t L a ) + ( t L p + t L a ) + t g + 2 · t d E L C ase 5 ,o (2) = E L C ase 4 ,o (2) (102) 19 Tx1 Rx O1 polling polling polling polling preamble ACK data Schedule polling polling Tx2 polling p olling polling polling O2 O3 busy channel p olli ng Figure 19. Global buffer size A=2. Overhearing situations for Case 5. LA-MA C protocol – Case 6: the receiv er wakes up as first, similarly to Case 3, with probability 1 − q L , the second sender wakes up too late and can not catch the acknowledge. In this case it will go back to sleep and it will transmit its data during the next frame. E L C ase 6 (2) = E L C ase 3 = 2 · E L (1) (103) – Case 7: the second transmitter wakes up as first, will hear a part of the strobed preamble until the receiv er wakes up and sends the ACK. In average, the second transmitter will hear b γ L 2 c preambles. E L C ase 7 ,t (2) = E L t (1) + b γ L 2 c · t L p · P r + 2 · t L a · P r + ( t L p + t d ) · P t + t g · P r (104) E L C ase 7 ,r (2) = E L r (1) + ( t L p + t d ) · P r + t L a · P t (105) E L C ase 7 ,l (2) = ( E L l (1) − ( t L p + t L a ) · P l ) + (( b γ L 2 c − 1) · t L a + t L p + t L a 2 ) · P l (106) E L C ase 7 ,s (2) = E L s (1) − ( t f − (( b γ L 2 c + 1) · ( t L p + t L a ) − t L p + t L a 2 − t g − t d ) · P s (107) From the ov erhearers point of view , this case is equiv alent to Cases 4 and 5. E L C ase 7 ,o (2) = E L C ase 4 ,o (2) (108) • Case 8: there is only one sender that will send two messages in a row . E L C ase 8 ,t (2) = E L t (1) + t d · P t (109) E L C ase 8 ,r (2) = E L r (1) + t d · P r (110) E L C ase 8 ,l (2) = ( E L l (1) − t d · P l ) (111) E L C ase 8 ,s (2) = E L s (1) − t d · P s (112) When the sender is unique, overhearer consumption can be assumed the same as the case of A=1. E L C ase 8 ,o (2) = E L o (1) (113) The overall energy cost is the sum of the costs of each case weighted by the probability of the case to happen (as showed in the figure 11): E L (2) = 8 X i =1 p C ase i · E L C ase i (114) 20 D. Global buf fer contains more than two messages ( B > 2 ) B-MA C ( B > 2 ) X-MA C ( B > 2 ) LA-MA C ( B > 2 ) 0 5 10 15 20 25 30 35 40 45 50 0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 Cumulative Packet Generation Rate per Frame [cppf] Energy consumption of the network [Joules] B ï MAC ï simulation B ï MAC ï analytic X ï MAC ï simulation X ï MAC ï analytic LA ï MAC ï simulation LA ï MAC ï analytic Figure 20. Energy analysis and OMNeT++ simulations versus the global buffer size. V . N U M E R I C A L V A L I DA T I O N W e hav e implemented the analyzed MA C protocols in the OMNeT++ simulator [20] for numerical ev aluation. Each numerical value is the av erage of 100 runs and we sho w the corresponding confidence interv als at 95 % confidence lev el. W e assume that devices use the CC1100 [21] radio stack with bitrate of 20Kbps. The values of po wer consumption for different radio states are specific to the CC1100 transceiv er considering a 3V battery . In the following, we assume N = 9 senders. The periodical wakeup period is the same for all protocols: t f = t l + t s = 250 ms . Also the polling duration is the same for all protocols: t l = 25 ms , thus the duty cycle with no messages to send is 10% . W e provide numerical and analytical results for b uffer size B ∈ [1 , 50] . W e compare the protocol performance with respect to se veral criteria: • Latency [s]: the delay between the beginning of the simulation and the instant of packet reception at the sink (we present the latency averaged ov er all nodes). • Ener gy Consumption [Joules]: the averaged energy consumed by all nods due to radio acti vity . • Delivery Ratio: the ratio of the number of receiv ed packet by the sink to the total number of packets sent. In Figure 20, we show the comparison between the proposed energy consumption analysis and numerical simulations for different values of the global b uffer size. W e assume that at the beginning of each simulation all messages to send are already buf fered. Each simulation stops when the last message in the buffer is recei ved by the sink. Figure 20 highlights the validity of the analytical expressions for energy consumption: all curv es match very well. As e xpected, B-MAC is the most energy consuming protocol: as the buf fer size increases, the transmission of a long preamble locally saturates the network resulting in high energy consumption and latency (cf. Figure 22). In X-MA C, short preambles mitigate the effect of the increasing local traffic load, thus both latency and energy consumption are reduced with respect to B-MAC. Even if X-MA C is more energy efficient than B-MA C, Figure 21 sho ws that e ven for small buffer sizes, the deliv ery ratio for this protocol is lo wer than 100 % most likely because packets that are sent after the back-off collide at the receiv er . LA-MA C is the most energy sa ving protocol and it also outperforms other protocols in terms of latency and the delivery ratio. W e observe that when the instantaneous 21 0 2 4 6 8 10 12 14 16 18 20 22 24 26 28 30 32 34 36 38 40 42 44 46 48 50 0.8 0.82 0.84 0.86 0.88 0.9 0.92 0.94 0.96 0.98 1 Cumulative Packet Generation Rate per Frame [cppf] Delivery Ratio B ï MAC and LA ï MAC Delivery Ratio X ï MAC Delivery Ratio Figure 21. Deli very ratio versus the global buf fer size. In X-MAC, most collisions happen when messages are sent after the back-off time. buf fer size is lo wer than 8 messages, the cost of the SCHEDULE message is paid in terms of a higher latency with respect to X-MAC (cf. Figure 22); howe ver , for larger buf fer sizes the cost of the SCHEDULE transmission is compensated by a high number of deliv ered messages. In Figure 23, we show the percentage of the time during which de vices spend in each radio state versus the global buf fer size. Thanks to ef ficient message scheduling of LA-MA C, devices sleep most of the time independently of the buffer size and all messages are delivered. V I . C O N C L U S I O N S In the present paper, we ha ve analyzed the energy consumption of preamble sampling MAC protocols by means of a simple probabilistic modeling. The analytical results are then validated by simulations. W e compare the classical MA C protocols (B-MA C and X-MA C) with LA-MA C, a method proposed in a companion paper . Our analysis highlights the energy savings achiev able with LA-MA C with respect to B-MA C and X-MA C. It also sho ws that LA-MA C provides the best performance in the considered case of high density networks under traffic congestion. R E F E R E N C E S [1] “ICT -258512 EXAL TED project. ” [Online]. A vailable: http://www .ict- e xalted.eu/. [2] K. Langendoen, “Energy-Efficient Medium Access Control, ” Book chapter in Medium Access Contr ol in W ireless Networks, H. W u and Y . P an (editors), Nova Science Publishers , 2008. [3] W . Y e, J. Heidemann, and D. Estrin, “An Energy-Ef ficient MAC Protocol for Wireless Sensor Networks, ” IEEE Infocom , pp. 1567–76, New Y ork, NY , July 2002. [4] T . van Dam and K. Langendoen, “An Adaptive Ener gy-Efficient MA C Protocol for W ireless Sensor Networks, ” In Proceedings of ACM Sensys , pp. 171–80, Los Angeles, CA, November 2003. [5] L. v an Hoesel, P . Having a, “A lightweight medium access protocol (LMA C) for wireless sensor networks: Reducing Preamble Transmissions and T ransceiver State Switches, ” In Proceedings of IEEE INSS , T okyo, Japan 2004. [6] G. Lu, B. Krishnamachari, and C. Raghav endra, “ An adapti ve energy-efficient and low-latenc y MAC for data gathering in wireless sensor networks, ” in Pr oc. of 18th IEEE IPDPS , 2004, p. 224. [7] V . Rajendran, J. J. Garcia-Luna-Aceves, and K. Obraczka, “Energy-Efficient, Application-A ware Medium Access for Sensor Networks, ” IEEE MASS , 2005. [8] A. El-Hoiydi, “Aloha with Preamble Sampling for Sporadic Traf fic in Ad Hoc Wireless Sensor Networks, ” IEEE ICC , New Y ork, NY , USA, April 2002. [9] E-Y . Lin, J. Rabaey , A. W olisz, “Power -Efficient Rendez-vous Schemes for Dense W ireless Sensor Networks, ” In Proceedings of IEEE ICC , Paris, France, June 2004. [10] J. Polastre, J. Hill and D. Culler, “V ersatile Low Power Media Access for W ireless Sensor Networks, ” In Proceedings of A CM SenSys , 2004. [11] M. A vv enuti, P . Corsini, P . Masci, and A. V ecchio, “Increasing the ef ficiency of preamble sampling protocols for wireless sensor networks, ” in Proc. of the F irst Mobile Computing and W ir eless Communication International Confer ence, MCWC , 2006, pp. 117–122. [12] S. Mahlknecht and M. Boeck, “CSMA-MPS: A Minimum Preamble Sampling MA C Protocol for Low Power Wireless Sensor Networks, ” In Pr oceedings of IEEE W orkshop on F actory Communication Systems , V ienna, Austria, September 2004. 22 0 5 10 15 20 25 30 35 40 45 50 10 ï 2 10 ï 1 10 0 10 1 Cumulative Packet Generation Rate per Frame [cppf] Latency [s] B ï MAC X ï MAC LA ï MAC 100 ms 1 s 10 s Figure 22. A verage latency versus the global buffer size. 0 2 4 6 8 10 12 14 16 18 20 22 24 26 28 30 32 34 36 38 40 42 44 46 48 50 0 0.5 1 Percent of Time B ï MAC protocol 0 2 4 6 8 10 12 14 16 18 20 22 24 26 28 30 32 34 36 38 40 42 44 46 48 50 0 0.5 1 Percent of Time X ï MAC protocol 0 2 4 6 8 10 12 14 16 18 20 22 24 26 28 30 32 34 36 38 40 42 44 46 48 50 0 0.5 1 Percent of Time Cumulative Packet Generation Rate per Frame [cppf] LA ï MAC protocol Sleep state Tx state Rx state Idle state Figure 23. Percentage of the time spent in each radio state versus the global buffer size. [13] M. Buettner et al., “X-MA C: A Short Preamble MAC Protocol For Duty-Cycled W ireless Networks, ” In Pr oceedings of ACM SenSys , Boulder, CO, November 2006. [14] R. Kuntz, A. Gallais, and T . Noel, “ Auto-adapti ve mac for energy-ef ficient burst transmissions in wireless sensor networks, ” in W ireless Communications and Networking Conference (WCNC), 2011 IEEE . IEEE, pp. 233–238. 23 [15] G. Corbellini, E. Calv anese Strinati, E. Ben Hamida, and A. Duda, “DA-MA C: Density A ware MAC for Dynamic Wireless Sensor Networks, ” in pr oceeding of 22nd IEEE International Symposium on PIMRC, T or onto, Canada , September 2011. [16] C. Enz, A. El-Hoiydi, J. Decotignie, V . Peiris., “WiseNET : An Ultralow-Power W ireless Sensor Network Solution, ” IEEE Computer , vol. 37, no. 8, pp. 62–70, August 2004. [17] W . Y e, F . Silva and J. Heidemann, “Ultra-Low Duty Cycle MA C with Scheduled Channel Polling, ” ACM SenSys , Boulder , CO, USA, November 2006. [18] G. Corbellini, E. Calvanese Strinati, and A. Duda, “LA-MAC: Low-Latency Asynchronous MA C for Wireless Sensor Networks, ” in submitted for publication . [19] C. W an, S. Eisenman, A. Campbell, and J. Crowcroft, “Siphon: ov erload traffic management using multi-radio virtual sinks in sensor networks, ” in Pr oceedings of the 3rd international conference on Embedded networked sensor systems . ACM, 2005, pp. 116–129. [20] “OMNeT++ Discrete Event Simulator. ” [Online]. A v ailable: http://www .omnetpp.org. [21] “T exas Instruments, CC1100 datasheet. ” [Online]. A vailable: http://focus.ti.com/docs/prod/folders/print/cc1100.html.
Original Paper
Loading high-quality paper...
Comments & Academic Discussion
Loading comments...
Leave a Comment