CoR-MAC: Contention over Reservation MAC Protocol for Time-Critical Services in Wireless Body Area Sensor Networks

Reserving time slots for urgent data, such as life-critical information, seems to be very attractive to guarantee their deadline requirements in wireless body area sensor networks (WBASNs). On the other hand, this reservation imposes a negative impact on performance for the utilization of a channel. This paper proposes a new channel access scheme referred to as the contention over reservation MAC (CoR-MAC) protocol for time-critical services in wireless body area sensor networks. CoR-MAC uses the dual reservation; if the reserved time slots are known to be vacant, other nodes can access the time slots by contention-based reservation to maximize the utilization of a channel and decrease the delay of the data. To measure the effectiveness of the proposed scheme against IEEE 802.15.4 and IEEE 802.15.6, we evaluated their performances with various performance indexes. The CoR-MAC showed 50% to 850% performance improvement in terms of the delay of urgent and time-critical data according to the number of nodes.


Introduction
Spurred by the rapid convergence of key technologies, such as physiological sensors, wireless communication and low power micro-electro-mechanical systems (MEMS), a new generation of wireless body area sensor networks (WBASNs) is emerging. These WBASNs exploit special-purpose implantable biosensors that aim to provide a large variety of applications, including computer-assisted rehabilitation, early detection of medical conditions, etc. To display human physiological status, these biosensors continuously monitor and transmit health conditions to a coordinating device wirelessly, forming a WBASN.
Although the applications of these WBASNs are attractive, there are still a large number of challenges to be tackled for providing reliable and efficient WBASN systems. One of the important challenges is to provide urgent data transmissions for life-critical applications. Techniques for urgent data transmissions have traditionally been based on priority. There have been a large number of studies on priority-based mechanisms [1][2][3][4][5][6] in wireless networks. However, these mechanisms are not applicable to WBASNs, since they are not designed for a WBASN's unique features of low-power, reliability and the accommodation of diverse traffic types, including emergency alarms.
In addition to the above schemes, a number of studies related to WBASN are based on the IEEE 802.15.4 technology [7][8][9][10][11]. The IEEE 802.15.4 has a superframe structure consisting of a contention-free phase (CFP) and a contention access phase (CAP). If we use the CAP to transmit urgent data, there is no guaranteed deadline of urgent data transmission due to contentions with other urgent or non-urgent data. (the IEEE 802.15.6 recommends 20 ms for this deadline [12]). Therefore, to guarantee such a deadline, the CFP is a better option for urgent data transmission. However, the IEEE 802. 15.4 standard has only seven guaranteed time slots (GTSs) in the CFP, which is likely not sufficient to accommodate additional devices. Further, since the emergency alarms do not occur frequently, reserving the GTSs for emergencies will waste scarce wireless resources.
For WBASNs, the few proposals for urgent data transmission in terms of priority-based MAC can be classified into three categories: parametric [13][14][15], channelization-based [16][17][18][19] and hybrid [20,21] approaches. The parametric approach is a technique where channel access parameters are treated differently for various traffic types, as in the enhanced distributed channel access (EDCA) mechanism in IEEE 802.11e [22]. The channelization-based approach is a scheme in which priority is assigned based on transmission opportunity. For instance, GTSs can be assigned to urgent traffic without contention, while non-urgent traffic is transmitted over the CAP with more contentions, as in the IEEE 802. 15.4. The hybrid approach is a scheme that exploits the benefits of both parametric and channelization-based techniques. Recently, IEEE 802.15.6 produced a new WBASN standard that can be considered a hybrid approach. Details of this classification will be discussed in Section 2.
In this paper, we propose a hybrid priority-based MAC protocol for WBASN, referred to as contention over reservation MAC (CoR-MAC). In the CoR-MAC, each time slot is dedicated to a node that might transmit urgent data. However, dedicated time slots waste wireless resources. When the dedicated time slots are not used, the other nodes cannot use those time slots. To solve this problem, in the CoR-MAC, data can be transmitted over the time slot, which is dedicated to another node and not in use.
The rest of this paper is organized as follows. We survey the existing related work in Section 2. In Section 3, we describe the proposed CoR-MAC in detail, followed by the theoretical analysis of delay in Section 4. Section 5 evaluates the performance of our protocol compared to the existing schemes. Finally, we draw conclusions and suggest future directions in Section 6.

Related Work
According to the taxonomy mentioned in Section 1, Cao et al. [13] proposed a parametric prioritization scheme for QoS provisioning in WBASNs. In this protocol, WBASN traffic is divided into three classes of alarm/control (AC), command/data (CD) and routine (RT) traffic in a descending order of priority (i.e., the AC traffic has the highest priority). To differentiate AC and CD traffic, a unique backoff exponent (BE) is configured for each. In other words, the AC has more transmission to opportunities than the CD, since the AC has a smaller BE. Nevertheless, there is no way that the AC can preempt the CD when the CD has already decreased its backoff counter to be smaller than that of the AC. Zhang et al. [14] proposed another parametric prioritization protocol in which traffic is divided into two classes of life-critical medical and other. To guarantee the QoS of the life-critical traffic, they exploit two CAPs in the protocol. Their CAP is further divided into two parts: AC1 for the life-critical medical uplink control and AC2 for the other uplink control. During AC1 and AC2, time slots are reserved for periodic traffic and bursty traffic. Although divided time slots can help to transmit bursty traffic with heavy-weighted periodic traffic, the time slots may cause negative impact on the utilization of wireless resources because bursty traffic and periodic traffic neither use timeslots of the other side. Ali et al. [15] suggested different maximum retry limits for transmission of emergency data and normal data in order to provide a higher probability of emergency data transmission. However, this scheme only provides reliable emergency data transmission, but does not guarantee the delay of urgent data.
Zhang et al. [16] proposed a priority-guaranteed MAC protocol as a channelization-based approach. In this protocol, data traffic is divided into two classes of medical (urgent) and consumer electronic (CE), both of which are transmitted over TDMA slots. To reserve their TDMA slots, both traffic types use a CAP. Since the CAP and CFP are divided into two, respectively, for both types of traffic, the medical traffic can still access the channel even if the CE traffic is overwhelmed. This is their prioritization mechanism differentiating medical from CE traffic. However, their approach does not guarantee timely transmission of urgent medical data, even if TDMA slots for medical traffic are exhausted, but the slots for CE are available. Li et al. [18] proposed an IEEE 802.15.4-based MAC protocol that adopts the slotted Aloha mechanism for the reservation of a GTS or normal data transmission in the CAP with a mini-slot. If non-urgent data win a contention in CAP, urgent data cannot be transmitted in the superframe, and it does not guarantee the QoS. Otal et al. [17] proposed the distributed queuing body area network (DQBAN) targeting both the QoS of urgency data and energy efficiency. The DQBAN utilizes its cross-layer fuzzy rule-based scheduler to schedule higher-priority urgent data before the other traffic types in the data transmission queue (DTQ). However, there still remains the problem of the channelization-based protocol, which cannot guarantee the deadline of urgent data transmission due to contentions with other data. Zhen et al. [19] proposed a channelization-based MAC protocol based on IEEE 802.15.4. In [19], the priority access period (PAP) is added after the beacon phase in the superframe for urgent data transmission. While the proposed scheme targeted reducing the delay of urgent data, PAP may reduce the throughput since the PAP phase is used only for urgent data. However, the channelization-based technique has the problem of bandwidth wastage. In other words, if excessive time slots for urgent data are reserved, bandwidth is wasted. This also imposes a negative impact on throughput performance for non-urgent data. In contrast, if minimal time slots are allocated for the urgent data, timely transmission of these data might not be possible. Therefore, the optimum number of time slots for urgent data should be computed for the channelization-based technique, which is very difficult in reality, since the timing of urgent data generation is not generally unknown.
As mentioned in Section 1, the hybrid approach exploits the benefits of both the parametric and channelization-based techniques. Yoon et al. [20] suggested the PNP-MAC as a hybrid approach for providing QoS in WBASNs. The PNP-MAC is a TDMA-based MAC that provides QoS in accordance with the priority of traffic. In the PNP-MAC, the data transmit slots (DTSs) are reserved for non-urgent data, while the emergency data transmit slots (ETSs) are used for the transmission of urgent data. The CAP is used for the reservation of the DTSs for non-urgent data and used for the transmission of urgent data. Non-urgent data with higher priority can preempt the DTS reserved for non-urgent data with lower priority. If there is no room for the DTSs, non-urgent data can reserve an ETS opportunistically. In other words, non-urgent data perform clear channel assessment (CCA) in the ETS and check for any urgent data transmission with shorter inter-frame space (IFS) and, thus, higher priority than the non-urgent data. Although an emergency alarm can occur during the DTSs, priority is given to non-urgent data in the PNP-MAC. Zhou et al. [21] proposed the virtual MAC (V-MAC) for adapting various QoS requirements. The V-MAC is positioned between the network layer and MAC layer and adjusts the data communication between them to satisfy QoS. However, if emergency data are placed into the V-MAC, the data preempt non-time-critical data in the queue. More recently, another hybrid approach has been standardized in IEEE 802.15.6 [23]. Since IEEE 802.15.6 is a merged technology [14,19,20,22,24], it has much in common with the above research. Especially, the methodology of urgent data transmission is mostly adapted from the PNP-MAC [20] and NICT's MAC proposal [19]. IEEE 802.15.6 uses three different phases of exclusive access phase (EAP), random access phase (RAP) and CAP. The channel access mechanism of high-priority data is fundamentally the same as in the PAP of the NICT's MAC proposal. Polling access in IEEE 802.15.6 is similar to the ETS reservation in the PNP-MAC in the sense that the polling frame is transmitted.
As we can conclude from the above data, research for WBASNs concentrates on urgent data transmission with a guaranteed time slot for urgent data. However, these research works are not considered to be wasting network utilization caused by the non-transmission of urgent data on the slot. The CoR-MAC, as we mentioned, can resolve this problem with the dual reservation scheme that allows transmitting within unused slots for urgent data.

Contention over Reservation MAC
In our CoR-MAC, we assume that the WBASN forms a star topology (this is the basic formation of the network; however, this network can be further extended into multihop networks as in IEEE 802.15.6) consisting of one coordinator (n 0 ) and N sensor nodes (n i , i ∈ {1, 2, . . . , N}) that monitor the physiological status of a human body. These nodes can be implantable or wearable devices. Although there are N + 1 nodes in the network, we assume there are m (m < N + 1) nodes that can generate urgent data depending on their detection task. Let U denote the set of such nodes u i where (i ∈ {1, 2, . . . , m}). Further, we assume that the sensor nodes are fixed; hence, there is no mobility in the network. In the network, times are slotted by the coordinator, so that the sensor nodes can be synchronized. Moreover, we assume there is no direct link between sensor nodes, and thus, transmission from one to another has to be relayed by the coordinator. This assumption is because two sensor nodes can be located very far apart, so as not to be in the communication range.

System Model and Basic Assumptions
In the CoR scheme, traffic is divided into three priority levels in descending order of urgency: urgent, time-critical and non-time-critical data. The urgent data include life-threatening conditions of the patient and need to be relayed immediately. The time-critical data include real-time data, such as electrocardiogram (ECG), electroencephalogram (EEG), electromyographic (EMG) and medical video data. The non-time-critical data include messaging and traffic service, as in [12]. Similar to u i , we denote c i the node that generates time-critical data. It is possible that a node generates both urgent and time-critical data.

Superframe Structure
To accommodate all three traffic types in Section 3.1, the CoR-MAC employs a superframe structure consisting of the beacon, CFP and CAP, as shown in Figure 1. The three traffic types are transmitted as follows: 1. No non-emergency traffic can be transmitted during an inactive phase that is designed for energy reduction. Although transmission is not allowed, this phase can be utilized for emergency data transmission, as in [4]. Transmission of emergency data during an inactive phase is beyond the scope of this paper. 2. The beacon phase is the time in which only the coordinator is allowed to transmit a beacon frame, and it is used for network synchronization and advertising information, such as time slot allocation. The beacon frame includes superframe length, subsequent superframe start time, beacon length, CFP length, CAP length, length of the CFP time slot, network ID, the number of time slots in the CFP and the CFP allocation map, including slot number and node ID. The size of the beacon is varied according to the size of the CFP allocation map. If the number of nodes is 10∼15, the size of the beacon will be around 228∼278 bits when the size of the CFP allocation information per node is 10 bits (five bits for the number of slots and five bits for the node's ID). 3. Urgent data can be transmitted during either the CFP or CAP. A detailed description of urgent data transmission is described below. 4. The time-critical data can be transmitted during CAP or the reserved time slot in CFP, as long as urgent data are not being transmitted. 5. Non-time-critical data can be transmitted during either CFP or CAP, as long as urgent, time-critical or other non-time-critical data are not being transmitted. Generally, transmitting urgent data over a CAP is not desirable, since timely transmission is not guaranteed due to contentions. Therefore, it would be better to transmit urgent data over a CFP by reserving a dedicated slot. However, the dedicated time slot might not be frequently utilized since urgent traffic is generated sporadically in general, resulting in degraded throughput. Therefore, in the CoR-MAC, the CFP is divided into time slots S 1 , S 2 , . . ., S M , and u i is allocated to S i (i ∈ {1, 2, . . . , M}). Initially (M = 0), there is no CFP, and the CAP spans from the end of the beacon phase to the beginning of the inactivity phase. When u i joins the network, the CFP expands, while the CAP shrinks. This join request for u i is transmitted over the CAP. M is the maximum allowable number of time slots in the CFP and is selected based on the number of nodes that generate urgent data. We call this phase the self CFP (SCFP). Further, to increase the transmission opportunities, urgent data of u i can be transmitted over S j (j = i) if S j is not used for u j . Unlike the SCFP, we call this phase the opportunistic CFP (OCFP). To prioritize u j against u i over S j , u j transmits its urgent data at the beginning of the slot boundary, while u i waits for short inter-frame space (SIFS) before transmitting a frame.

Contention Access Phase
Moreover, in the CoR-MAC, S i can be used for the transmission of other traffic types as long as urgent data from u i or u j (j = i) is not being transmitted over S i . This is because urgent traffic is sporadically generated, and S i can be wasted as described in the above. Therefore, S i 's can be reserved (this is why our scheme is referred to as "dual reservation," i.e., S i can be reserved by both urgent and time-critical data) for time-critical data or used for transmission of non-time-critical data. Of course, the reservation of S i 's for time-critical data is performed at the CAP, i.e., a reservation request command for time-critical data is transmitted over the CAP. To prioritize urgent data against time-critical data, time-critical data wait for the medium inter-frame space (MIFS) before transmitting a frame, where MIFS > SIFS. In other words, even if time-critical data are reserved at S i , urgent data from u j (∀j) can take S i . In order to reduce collisions among u j (j = i), a contention window is used in the range of (0, U max ), where U max < MIFS-SIFS. Likewise, to prioritize time-critical data against non-time-critical data, non-time-critical data wait for a long inter-frame space (LIFS) before transmitting a frame, where LIFS > SIFS.
In addition to the CFP, the CAP is used for the transmission of urgent data and non-time-critical data. In this way, urgent data have ample opportunity to access a channel. Using this mechanism, our scheme can transmit the urgent data significantly faster than the method in [20].

Protocol Description
Initially, there is no CFP, and the CAP is extended to the end of the beacon phase, as shown in Figure 2a. Suppose that u 0 joins the network. Then, S 1 is allocated to u 1 , as shown in Figure 2b. Now, suppose u 2 , u 3 and u 4 join the network (Figure 2c). S 2 , S 3 and S 4 are allocated to u 2 , u 3 and u 4 , respectively, as shown in Figure 2d. Moreover, we assume c 1 has time-critical data to transmit and, so, requests a time slot as, shown in Figure 2e. After receiving this request, the coordinator allocates S 1 for c 1 , as shown in Figure 2f. Note that S 1 is reserved for both u 1 and c 1 . This is the reason why we call the scheme dual reservation.   The CoR-MAC algorithm for the coordinator is shown in Algorithm 1. When u i or c i joins the network, the coordinator determines the number of time slots in the CFP. If the number is less than M, the coordinator allocates S i to the u i or c i . Otherwise, the coordinator rejects the join request (Lines 5-12). Moreover, if the current time is within the beacon phase, the coordinator sends a beacon frame along with the superframe length, the subsequent superframe start time, the beacon length, the CFP length, the CAP length, the length of the CFP time slot, the network ID, the number of time slots in the CFP and the CFP allocation map, including the slot number and node ID (Lines 2-4). If data and the RTSare received from n i , the coordinator sends ACK and CTS, respectively (Lines 13-17).

Algorithm 1
The CoR-MAC algorithm for the coordinator.
1: u i ← The node that generates urgent data; 2: c i ← The node that generates time-critical data; 3: M ← The maximum allowable number of time slots in CFP; 4: S i ← The slot that is located at the i'-th position; 5: n i ← The node whose ID is i; 6: loop 7: if Current time = start of beacon phase then 8: Send beacon with CFP allocation map 9: end if 10: if u i or c i joins the network then 11: if # of time slots in the CFP < M then 12: Allocate S i to the u i or c i

13:
Update CFP allocation map 14: else 15: Reject the join request 16: end if 17: end if 18: if DATA is received from n i then 19: Send ACK to n i after SIFS 20: else if RTS is received from n i then 21: Send CTS to n i after SIFS 22: end if 23: end loop Algorithm 2 The CoR-MAC algorithm for the node.
1: S i ← The slot which is located in the i'-th position; 2: Φ ← The current time; 3: Φ sc f p ← The phase of SCFP; 4: Φ oc f p ← The phase of OCFP; 5: Φ cap ← The phase of CAP; 6: loop 7: if BEACON is received from the coordinator then 8: Synchronize itself to the coordinator; 9: Record this S i based on CFP allocation map; 10: else if The node has urgent data to transmit then 11: if Φ ⊂ Φ sc f p then 12: Send urgent DATA immediately; 13: else if Φ ⊂ Φ oc f p then 14: Send DATA with CSMA/CA after SIFS; 15: else if Φ ⊂ Φ cap then 16: Send DATA with CSMA/CA; 17: end if 18: else if The node has time-critical data to transmit then 19: if Φ ⊂ (Φ sc f p ∪ Φ oc f p ) then 20: Send DATA after MIFS; 21: else if Φ ⊂ Φ cap then 22: Send DATA with CSMA/CA; 23: end if 24: else if The node has non-time-critical data to transmit then 25: if Φ ⊂ (Φ sc f p ∪ Φ oc f p ) then The CoR-MAC algorithm for the sensor node is shown in Algorithm 2. When a beacon is received from the coordinator, nodes synchronize themselves to the coordinator and record this S i based on the CFP allocation map (Lines 2-4). If the node has urgent data and the current time is within the SCFP, the data are transmitted immediately (Lines 6-7). If the current time is within the OCFP, the node sends the urgent data with CSMA/CA after SIFS (Lines 8-9). However, the node sends the urgent data with CSMA/CA if the current time is within CAP (Lines 10-11). On the other hand, if the node has time-critical data to transmit and the current time is within the CFP, the node sends its data after MIFS (Lines 14-15). If the current time is within the CAP, the node sends its data with CSMA/CA (Lines [16][17]. Lastly, if the data are non-time-critical and the current time is within CFP, the node sends its data after LIFS (Lines 20-21). If the current time is within CAP, the node sends its data with CSMA/CA (Lines 22-23). During CSMA/CA, the backoff counter is decreased as long as the channel is idle, frozen when the channel is busy and reactivated when the channel is idle in the CAP or OCFP. If there is no other transmission when the backoff counter reaches zero, the node will transmit its data. To achieve energy efficiency, a node that could not transmit data in a timeslot should go to inactive mode until the next beacon frame in CoR-MAC.

Theoretical Approach
In this section, we analyze an urgent data delay of the proposed scheme with a theoretical approach. We show that our scheme guarantees the delay requirement of the urgent data. In the following, we describe our assumption and system model to obtain the expected delay in Section 4.1. Based on the assumption, we derive the expected delay of the proposed scheme in Section 4.2. The meanings of the variables in theoretical approach are summarized in Table 1. Probability of error or collision when the packet is transmitted P w Probability of winning a contention λ u Arrival rate of urgent data λ n Arrival rate of non-time critical data T s f Length of the superframe period T b Length of the beacon period T i Length of the inactive period T send Transmission time in CAP τ c f p Length of a CFP slot τ cap Length of a system time slot

System Model
We assume that each node generates both urgent data and non-urgent data. Note that the arrival rates of urgent data follow exponential distributions with λ u and the arrival rates of non-urgent data with λ n . We assume that the allowable number of time slots in the CFP (denoted as M) is less than or equal to the number of nodes N. In the CoR-MAC protocol, non-urgent data can be transmitted when no node has urgent data in CFP. Therefore, we do not consider non-urgent data in CFP. Denoting ζ τ c f p as the probability that a node does not generate urgent data in the CFP slot, ζ τ c f p can be described as: where τ c f p is the length of a CFP slot. We assume that CAP consists of a number of system time slots (τ cap ). A system time slot is a very short amount of time, such as a system tick. We denote L as the number of τ cap in a T CAP . In CAP, however, urgent data exist among other urgent data and other non-urgent data, although urgent data have higher priority than non-urgent data. Moreover, a transmission can be either a new transmission or a retransmission. We denote G as the rate of attempted transmissions, including retransmission, new arrivals, urgent data and non-urgent data. Although G depends on time in reality, we assume that G is a constant value in our analysis.
Denoting ζ τ cap as the probability that a node can transmit by CSMA/CA at a time unit (τ cap = one system time slot) in the CAP, ζ τ cap can be described as: We denote the probability of transmission failure due to errors or collision and that of transmission success as P f and P s , respectively. P s is described as P s = 1 − P f . Let P w be the probability that a node can occupy the channel to contendamong other nodes, then P w can be obtained by: where N is the number of nodes and k is the number of nodes with urgent data. In the CoR protocol, each node has the opportunity to transmit data in CAP and CFP. CFP consists of dedicated slots for each user, and we describe a user who allocates the slot as an owner.

Expected Delay of Urgent Data
We denote the expected delay from running time t when t is located at Phase (∈ {OCFP, SCFP, CAP}) in the i-th superframe as D (Phase t i ). In the CoR-MAC protocol, there are three channel occupancy scenarios for urgent data, as shown in Figure 3. In SCFP, a node can occupy the CFP slot without contention if the node has urgent data. This is because SCFP is allocated to the node. As shown in the figure, the node has a dedicated slot with three transmit chances in SCFP. If the transmissions are successful in the slot, then the delay is τ c f p . If transmissions fail in the slot, however, there are two scenarios of going to CAP or to OCFP after time τ c f p . Since the number of nodes is N, the probability of transmission to OCFP after SCFP is (N − 1)/N, and the probability of transmission to CAP is 1/N. Therefore, the expected delay D(SCFP t i ) can be obtained by: where D(CAP t i ) is the expected delay in CAP and D(OCFP t i ) is the expected delay in OCFP. The OCFP slot is dedicated to another node (called the slot owner). Therefore, each node has an opportunity to transmit if the slot owner does not have urgent data. If the slot owner has urgent data, the other nodes wait τ c f p and choose one of the three scenarios of transmission to CAP, OCFP or SCFP. This scenario is described at the n − 1'-th slot in Figure 3, Scenario 2. The probabilities of transmission to CAP, OCFP, SCFP are 1/N, (N − 2)/N, 1/N, respectively.
If the slot owner of the slot does not have urgent data, each node with urgent data vies with other nodes. If a node wins contention and transmissions are successful in the slot, then the delay is τ c f p . This scenario is described at the N'-th slot in Figure 3, Scenario 2. If a node loses contention or transmissions fail in the slot, however, transmission occurs in CAP, OCFP or SCFP after time τ c f p . Therefore, the expected delay D(OCFP t i ) can be obtained by Equation (5), where P s , P f and P w are probabilities described in Section 4.1.
CAP consists of a number of τ cap . We described τ cap as the duration of one system time slot in Section 4.1, and L is the number of τ cap in CAP (e.g., the length of CAP is τ cap × L). If a node cannot transmit with probability 1 − ζ τ cap , then the node waits τ cap and transmits during CAP or the next superframe. The probabilities of transmission during CAP or the next superframe are (L − T send /τ cap )/L and T send τ cap L , respectively. If a node transmits in the CAP and the transmissions are successful, then the delay is T send = (RTStime+CTStime+Datatime+ACKtime). This scenario is described in Figure 3, Scenario 3. Therefore, the expected delay D(CAP t i ) can be obtained by Equation (6).
We use Gaussian elimination to solve these trinomial expressions. To use Gaussian elimination, each equation is arranged with unknown quantities (D(SCFP t i ), D(OCFP t i ), D(CAP t i )), as shown in Equations (7)-(9), respectively.
To simplify the equation, we use auxiliary variables α, β, γ, δ and to construct the augmented matrix for Gaussian elimination.
Using these auxiliary variables, the augmented matrix can be obtained as: Utilizing the augmented Matrix (15) for Gaussian elimination, we get Equations (16)- (18).
Substituting each equation, we obtain the values of D(CAP t n ), D(OCFP t n ) and D(SCFP t n ). Data generation follows an exponential distribution; this is contrary to our expectation. Therefore, the delay associated with each type of data is obtained using Equation (19), where T s f is the length of a superframe.
Using parameters listed in Table 2 with 20 nodes, we compare the results of our theoretical model to the simulation. We show that the average delay of urgent data vs. λ u (λ n = 1) is almost similar between the theoretical model and simulation, as shown in Figure 4. We also show in Figure 5 that the average delay of urgent data vs. λ n (λ u = 66.6) using a theoretical model is similar to the simulated delay.

Performance Evaluation
In this section, we evaluate the performance of the proposed protocol compared to those of IEEE 802. 15 [7][8][9][10][11]. Furthermore, IEEE 802.15.6 uses a hybrid approach that exploits the benefits of both parametric-and channelization-based techniques.
For performance evaluation, we use the OPNET modeler [25] and record data transmission information during a one-hour simulation time. In the simulation, we form a star topology where the coordinator and sensor nodes are located within a 1-m range. In the given topology, the positions of sensor nodes are chosen randomly. The simulation parameters are listed in Table 2.
In this simulation, we measure the average delay of the urgent, time-critical and non-time-critical data; the utilization in CAP and CFP; the average aggregate throughput of three traffic types (urgent, time-critical, non-time-critical); and the energy consumption. Figure 6 shows the average non-time-critical data delay versus the arrival rate of the number of nodes. The delay of IEEE 802.15.6 increases from 11-12 nodes since IEEE 802.15.6 has an exclusive access phase (EAP) for the processing of urgent data and time-critical data. The EAP is efficient for processing urgent data and time-critical data, but cannot process non-time-critical data. In addition, the CoR-MAC and IEEE 802.15.4 can process non-time-critical data during the entire superframe. With a high arrival rate, the non-time-critical data delay of all schemes increases extremely, since those schemes have lower priority of non-time-critical data, and those MACs are unable to process non-time-critical data. Figures 7 and 8 show the average time-critical data and urgent data delay versus the number of nodes, respectively. The delay of IEEE 802.15.4 is higher than that of the other schemes because IEEE 802.15.6 has EAP. Furthermore, CoR-MAC has a dual reservation scheme for urgent data and time-critical data. In any environment, CoR-MAC has a shorter delay than the other schemes, since the dual reservation scheme allows use of a slot even if the slot is owned by another node. IEEE 802.15.6 and IEEE 802.15.4 also have reserved slots; however, in these schemes, a slot cannot be used if it is owned by another node.   For urgent data, the goal is to guarantee a delay that is below a given deadline (20 ms), not that the delay is the minimum possible value. Therefore, we measure the percentage of packets that exceeds the required deadline. Table 3 shows the delay statistics of urgent data with 15 nodes. As shown in the table, CoR-MAC has the best performance in terms of minimum, maximum and average delays, as well as the percentage over the deadline. Noticeably, 32.17% and 13.17% of urgent data in IEEE 802.15.4 and IEEE 802.15.6 cannot be transmitted by the deadline, respectively. However, in the CoR-MAC, urgent data transmission can meet the deadline with 100%. The CoR-MAC only guarantees the deadline of emergency transmission among the three schemes.

Throughput
The throughput is measured by the sensor nodes. When a node receives an ACK message from a data frame, it records the throughput with the size of the data frame. Figure 9 shows the aggregate throughput of data. The throughput of IEEE 802.15.6 is lower than that of others with a high arrival rate because IEEE 802.15.6 has EAP, which cannot transmit low-priority data. Since IEEE 802.15.4 can transmit non-time-critical data in the whole region, like the CoR-MAC, the throughputs of these schemes are very similar.

Utilization
The utilization of a phase is measured by a node. When the node successfully transmits a data frame, the node records a utilization in that phase. Figure 10 shows the average number of transmitted packets with dual reservation in one beacon frame per node. From the figure, we observe that the utilization of OCFP increases with the number of nodes. If the number of nodes decreases, fewer slots are used by other nodes, because data can be transmitted in SCFP or CAP instead of OCFP. Otherwise, as the number of nodes in OCFP increases, the utilization of OCFP also increases. With 6-16 nodes, the increase in utilization is slower; after 16 nodes, the utilization increases more quickly. This phenomenon is related to the number of nodes in OCFP. When the arrival rate and the number of OCFP are balanced, the utilization of OCFP is relatively constant. However, when most of the superframe contains OCFP, a node that has urgent data or time-critical data can use OCFP with high probability. For this reason, the utilization of OCFP increases with more than 16 nodes. The figure shows a special pattern in CoR-MAC in which the utilization in SCFP is lower than those of the other schemes. This phenomenon is caused by the dual reservation scheme. The dual reservation scheme can decrease the utilization of SCFP by utilizing OCFP. This low utilization of SCFP indicates the success of the dual reservation scheme.  Figure 11 shows the utilization of CAP. The utilization in CAP is like that of the IEEE 802.15.4. This phenomenon shows that the dual reservation scheme does not effect CAP.  Figure 12 shows the average power consumption per superframe. The power consumption of IEEE 802.15.6 is lower than that of the others with a high arrival rate, since IEEE 802.15.6 has EAP, which cannot transmit low-priority data; like throughput.

Remark 1.
As previously mentioned, the contention window of CoR-MAC is divided into SIFS, MIFS and LIFS. This will lead to overhead, such as the increasing of each time slot's size and extra energy consumption. As shown in Figure 12, CoR-MAC consumes a little more power than IEEE 802.15.6. However, the total energy consumption of CoR-MAC is similar to the IEEE 802.15.4. This is because the node enters an inactivity mode when the node cannot transmit the SCFP or OCFP in CoR-MAC.

Conclusions
In this paper, we addressed the problem of the delay of urgent data and time-critical data. We also addressed the utilization of dedicated slots. Existing WBASN schemes cannot properly resolve the above problems and do not address heavy traffic load situations, since they do not consider urgent data transmission. To reduce the delay of urgent data transmission, we proposed a contention over reservation MAC protocol for WBASNs. Our protocol exploits CFP reservation among nodes. For the reservation, traffic is divided into urgent, time-critical and non-time critical data, in descending order of priority. Each time slot in the CFP is dedicated to a node that might transmit urgent data. To increase transmission opportunities, urgent data can be transmitted over the unused CFP time slots. Since the urgent data are sporadically generated, the slots of CFP can be further reserved for time-critical data (i.e., the slots are dually reserved) in order to increase the overall throughput.
The simulation results show that our protocol is very effective and provides significantly shorter delay by providing opportunistic transmission chances. In the simulation, CoR-MAC shows an approximate 50%-850% better performance in the delay of urgent and time-critical data. Furthermore, our protocol provides flexible power consumption compared to the existing protocols.