1. Introduction
Buffer-aided cooperative relaying is capable of reducing the channel mismatch problem in traditional cooperative relaying to enhance diversity gain and throughput. It gives liberty to pick separate relays for information transfer in contract to traditional relaying which picks a single relay for information transfer. Thus, we can do information processing in the most suitable channel conditions. If source-to-relay channel (C1) is the most suitable, the relay receives and collects data in its buffer. Moreover, if relay-to-destination channel (C2) is most suitable, the relay forwards the collected data to the destination [
1,
2,
3,
4].
Buffer-aided cooperative relaying is usually performed in two schedules of transmission, fixed and dynamic. In a fixed schedule, the most suitable C1 based on channel quality or buffer occupancy is picked for data collection at the relay per odd time slot. Similarly, the most fitting C2 is chosen for data forwarding per even time slot. Because of the set communication schedule, the designs following this paradigm achieve maximum diversity gain corresponding to the number of relays [
3,
5]. In the dynamic schedule, most fitting channel based on channel quality or buffer occupancy is picked either for information processing per time slot. When C1 is most suitable, the corresponding relay collects in its buffer and when C2 is fittest, the corresponding relay forwards from its buffer. The schemes based on dynamic schedule achieve best diversity gain corresponding to twice the number of relays [
4,
6,
7,
8]. In this work, our focus is on dynamic schedule.
The advantages of buffer-aided cooperative relaying come with challenges for the system designers, including getting the instant channel state information (CSI), getting the instant buffer occupancy and handling of the extended queuing delay [
2]. The most suitable relay is decided based on instantaneous CSI or buffer occupancy. Therefore, it is essential to acquire the CSI of all the channels every time slot. Additionally, in the case of finite buffers, the buffer status monitoring is required to keep track of entirely free or entirely occupied buffers. A filled buffer cannot collect more data and entirely free buffer cannot send data. They are thus making channels inactive. Furthermore, the packet waits in the buffer until its respective C2 is picked for information transfer and it sums up to the queuing delay.
Many efforts have been made in the literature to address the challenges mentioned earlier. The max-max relay selection scheme [
3] and Max-Link relay selection scheme [
4] are some of the first works in this domain. The link quality, i.e., signal-to-noise ratio (SNR) is the only criteria in these schemes for selection of the most suitable relay. Therefore, they are referred to as SNR-based relay selection schemes. They follow the fixed and dynamic schedules, respectively. Majority of the literature is developed over [
3,
4]. A priority-based Max-Link relay selection scheme is introduced in [
9]. The authors assigned first, second and third priority to full, empty and partially filled buffers, respectively. Relay selection is based on the most powerful channel within a priority class. Similarly, the authors in [
10] proposed a hybrid of max-max and Max-Link schemes. In this scheme, the diversity gain of twice the number of relays is obtained using fixed transmission law. In the literature mentioned above, channel quality is the only criteria in relay selection, which has increased the chances of filled or empty buffers. It limits the number of active channels. The drop in the active channels contributes to an increase in the outage probability of the system. Considering this, the authors in [
5,
7,
8,
11] propose to select buffer occupancy as the second criteria for relay selection. The schemes viewing buffer occupancy are referred to as buffer state-based relay selection schemes. The authors in [
5,
7,
8] found weight assignment according to the available and occupied buffer space. Channel with the biggest weight is picked for information transfer. The relay choice based on current buffer occupancy considerably increases the number of active channels because it prevents the buffer from being filled or empty. Another approach proposed in [
11] considered both the channel quality and buffer occupancy for the choice of the relay. The authors also lessened the queuing delay introduced by buffers by assigning priority to C2 over C1.
To address the latency in a buffer-aided cooperative communication system, the authors in [
12] introduce a Max-Link variant that can achieve the perfect delay of only 2 time slots. They propose C2 prioritization over C1 to maintain the shortest possible buffer queues. Another attempt is made in [
13]. The authors make use of multiple C1 channels to overcome delays. Yet, these schemes compensated the diversity gains with delay. If the latency is improved, the maximum achievable diversity gain is not attained and if the diversity gain is recovered, the delay is negotiated. Another approach to lessen delay with reduced complexity is presented in [
14]. The authors grant priority to C2 while maintaining diversity. They forced a threshold on buffer based on the number of packets. When at least one C1 communication can be made, C2 gets priority only if the buffer fulfills its threshold.
The authors explore [
4] using amplify and forward (AF) relaying technique in [
15]. This scheme is further studied in [
16] using buffer occupancy as a main selection criterion. Another work for buffer-aided cooperative relaying using AF relaying is proposed in [
17]. It is designed for single relay node, and it focused on packet selection instead of relay selection to develop the better outage probability. In this scheme, the relay is populated with packets in the first stage. When the buffer is complete with packets, the packet matching is carried out in stage two based on the notion of the channel to packet matching. This concept allows improving the outage probability by providing the packets that passed through adverse C1 move through right C2 and vice versa. This scheme is enhanced in [
18] by the inclusion of direct contact between the source and destination and using incremental relaying cooperative diversity technique. The work in [
19] considered secrecy performance in buffer-aided cooperative relaying. The secrecy outage performance of buffer-aided multiple-input multiple-output cooperative relaying systems is also investigated in [
20] in the proximity of a quiet eavesdropper. The channel with the most beneficial rate is picked to improve the secrecy outage probability. The throughput optimization problem for dual-hop cooperative relay network is also studied in [
21]. In this work, the authors claimed that optimal link selection has threshold-based structure and formulate throughput optimization problem using Markov Decision Process.
The literature discloses that the researchers either focused on relay selection or packet selection. To the best of our information, there is no such available literature that simultaneously explores both the relay selection and packet selection for buffer-aided cooperative relaying networks.
Contributions
This work explores relay and packet selection together for buffer-aided CR networks. The contributions are summed as follows:
The first scheme known as joint packet and relay selection (JPARS)-SNR is proposed for SNR-based relay selection. The relay selection is carried out first. The most suitable channel based on channel quality is picked for information transfer from all channels. After the relay selection, the packet selection is executed. If the chosen channel is of C2, the scheme picks the best matching from buffers of all relays. The best match is found according to the channel to packet matching notion. According to the condition of C2, the packet that affords the highest end-to-end SNR is picked from the buffer of the corresponding relay. In this design, the overall outage probability of the system is enhanced.
JPARS-buffer state-based (BSB) being the second proposed scheme considers current buffer possession in relay selection. The relay with the freest or most occupied buffer space is selected for information processing. The packet selection step is the same as in JPARS-SNR scheme.
The proposed JPARS-SNR scheme is simulated for both symmetric and asymmetric channel configurations and investigation for the outage probability, throughput and end-to-end packet delay are presented. The proposed JPARS-BSB scheme is simulated for the symmetric channel configuration using the relay thresholding technique.
The results are analyzed with the existing schemes.
The remainder of the article is arranged as follows:
Section 2 introduces the various schemes and the motivation for the proposed design. In
Section 3, we present our proposed schemes. The numerical results are given in
Section 4. The conclusions and future work are shown in
Section 5.
3. Joint Packet and Relay Selection (JPARS) Schemes
The joint packet and relay selection scheme jointly investigates the relay and packet selection. It is based on the concept of selecting the best relay for data reception and the best packet for data transmission. The scheme operates in two steps. In step 1, the relay selection is performed while in step 2, the packet selection is carried out. It is to mention here that the two steps are not operated in different time slots. Instead, step 2 is initiated only when C2 is chosen in step 1, and it operates in the same time slot to preserve the diversity gain. The flow charts for both the proposed schemes are shown in
Figure 2 and
Figure 3.
3.1. SNR-Based JPARS Scheme
The first proposed scheme denoted as JPARS-SNR is introduced. This scheme chose the most suitable relay based on the instantaneous SNR of the channel.
3.1.1. Step 1: Relay Selection
In step 1, the most dependable relay based on good channel quality is picked. It is the one having the most powerful channel in terms of SNR among all active channels. Mathematically, the most suitable relay is shown as [
4]:
where
is the selected relay. If C1 is the fittest, the corresponding relay collects the packet and increments the buffer by 1. The SNR information is also collected in the buffer. Since AF relaying is used, the received signal is not decoded. Instead, it is collected in the corresponding buffer in its amplified form. Step 2 is not initiated in this case, and the relay selection for the next time slot is continued. The packet collected at the relay in the
tth time slot is mathematically written as:
where
is the transmitted signal,
is the received signal at the relay
and
is the channel noise. On the other hand, if C2 is most suitable, instead of transmitting the packet stored at the front of the buffer queue, the fittest packet is selected in step 2 which is explained in the next subsection.
3.1.2. Phase 2: Packet Selection
Step 2 is meant to execute the packet selection. Step 1 determines whether to receive data at the relay or to begin joint packet and relay selection. The term joint selection is used here because, in this step, the fittest relay is re-selected along with the fittest packet. The purpose of step 1 is only to know which channel to select, i.e., C1 or C2. When the C2 channel is picked based on SNR, the goal is to select which packet of which relay is most suitable for sending. To this goal, the relay and packet selection is jointly performed. The packet selection is based on the notion of the channel to packet matching. The saved packets in the buffer with low SNR leaves the buffer on getting the high SNR of the C2 to improve the overall system performance. Depending on the quality of each active C2, the equivalent SNRs of all the packets collected in the buffers of all the relays are calculated using their saved SNR; they experienced in C1 hop. The equivalent SNR
for the SNR received at previous
qth time slot from the C1 is defined as [
22,
23]:
We define
matrix that contains the equivalent SNRs of all the packets stored in the buffer. As an example, the
when all the buffers are full is expressed as:
The packet with the strongest equivalent SNR is picked for transmission. Mathematically, the joint relay and packet selection is expressed as:
where
is the selected packet and
is the set consisting of all the SNRs currently stored in the buffers of all the relays.
represents the received SNR of
lth packet in a buffer of relay
received at
qth time slot, where
.
is the instantaneous SNR at C2 for relay
. The condition
ensures that the selected packet is the one that provides equivalent SNR greater than
. It is to mention here that the selected relay in step 2 can be different from the relay selected in step 1. The purpose of re selection of relay in step 2 is to get best available packet for transmission which in turn reduces the overall outage probability. The packet received at D is mathematically expressed as:
where
is the relay whose packet is selected,
is the received signal at
D,
is the channel noise and
G is the gain factor defined as [
22]:
The outage is considered in the JPARS-SNR scheme when no packet is picked for transmission, i.e.,
. It is the case when there is not a single packet in the buffer that provides equivalent SNR higher than the predefined threshold value
, where
.
is the minimum threshold for the data to be decode-able at
D. Mathematically, the outage probability of a packet is expressed as:
Any packet whose equivalent SNR at the destination falls below is considered in an outage. In case of an outage, the packet stays in the buffer, and buffer status remains unchanged. On the other hand, if the maximum equivalent SNR is higher than , the chosen packet is sent to the destination, and the corresponding buffer size is decreased by 1.
3.2. Buffer State-Based Relay and Packet Selection
The SNR-based relay selection ignores the buffer occupancy, which commences the problem of crowded or blank buffers. It, in turn, reduces the number of active channels. In this section, a scheme for buffer occupancy-based relay and packet choice is presented. The operation of the scheme is similar to JPARS-SNR scheme. Step 1 picks the most suitable relay and step 2 picks the fittest packet.
3.2.1. Step 1: Relay Selection
Step1 is meant to execute relay selection. In this scheme, each channel is assigned an appropriate weight. The weight is according to the available or occupied buffer space in the corresponding buffer for reception or transmission, respectively. Let
be the vector containing weights of all links.
The length of
is
.
are the weights of the channels on C1 side if
and
are the weights of the channels on C2 side if
. For instance, with
and
,
.
and
are the weights of C1 channels and
and
are the weights of C2 channels. If
has 2 packets,
and
. The channel with the largest weight is picked for information transfer. The relay selection is mathematically expressed as [
7],
where
is the selected relay for reception or transmission. There is a possible scenario when multiple links have the same maximum weights. In such a case, one channel is randomly selected among the channels with largest weight. Here
is the threshold at relay for AF relaying to avoid noise propagation. This threshold technique is introduced in [
16]. In AF relaying, data is not decode-able at the relay. In buffer-aided CR based on AF relaying, the signal is not checked against acceptable threshold SNR at the relay. Instead, amplified signal along with noise is transmitted and end-to-end equivalent SNR is checked against SNR threshold at the destination only. Therefore, the quality of the signal at the destination depends on the poorest channel. To avoid noise propagation, we adopt thresholding at the relay and destination node. If the signal is below threshold
, it is not stored in the buffer. The expression of
considering the symmetric case, i.e.,
,
and using (
3), is given as,
where
, which is the thresholding SNR at the relay and destination. If the relay is picked for the reception, the data is collected in the respective buffer, and buffer size is increased by 1. On the other hand, if the relay is picked for transmission, step 2 is initiated for packet selection. The outage is considered when none of the channels have SNR greater than
. In that case,
. The outage in step 1 is expressed as,
3.2.2. Step 2: Packet Selection Selection
The packet selection in buffer state-based JPARS scheme is the same as in SNR-based JPARS scheme. The packet that provides the highest end-to-end equivalent SNR is selected for transmission.
The outage is considered in JPARS-BSB scheme when no packet is available that provides equivalent SNR higher than the threshold, which is similar to JPARS-SNR scheme.
3.3. Buffer Access
The buffer access method is considered to be random in the proposed scheme. Initially, all the buffers are empty and only the C1 channels are active. Therefore, the packets are stored in the buffer on the first-come, first-served basis. The first packet is collected and saved at the first location of the selected buffer. If in the subsequent time slot, the same C1 channel is picked, the packet is stored at the second available location and so on. When C2 can contribute, the best packet is selected for data transmission. The best packet is not necessarily placed at the head. Instead, it can be any location inside the buffer. Therefore, an empty location is created between two filled buffer locations. In this case, the packet arrives at the first available space and departs from any location. REMARK: According to the proposed scheme, the most suitable reception relay is picked out of K C1 channels and K C2 channels in step 1. Furthermore, in step 2, the most suitable packet is selected out of SNRs (in the worst case) stored in the buffers. Therefore, the overall complexity of the proposed scheme is .
5. Conclusions and Future Works
In this article, we jointly explore the relay and packet selection and proposed two schemes known as JPARS-SNR and JPARS-BSB. The idea of packet selection over multiple relays improved the overall outage probability of the system. The simulation outcomes show that the JPARS-BSB scheme is better in terms of outage probability as compared to JPARS-SNR scheme. It is concluded that in the JPARS-SNR scheme, the symmetric channel configuration gives a better outage probability as compared to the asymmetric channel configuration. When the SNR of C2 is higher than the SNR of C1, the proposed schemes perform better for small values of . However, when is increased, AF Max-Link and JPARS-SNR schemes have the same performance. When the SNR of C2 is less than the SNR of C1, the proposed scheme is not making much difference in the outage probability. Similar observations hold true for throughput. The maximum packet delay of JPARS-SNR is below AF Max-Link both in the symmetric and asymmetric channel conditions; however, when C2 is given priority over C1, the improvement in the delay is not very significant. The delay in JPARS-BSB scheme is not increasing linearly as in JPARS-SNR and AF Max-Link schemes. Additionally, in the case of asymmetric channel conditions, since JPARS-BSB perform relay selection on the basis of buffer status, we can conclude that JPARS-SNR can be used to prioritize the relay-destination links for better average delay. In the future, we intend to investigate joint packet and relay selection for non-orthogonal multiple access communication.