Multislot Coded ALOHA with Irregular Degree Distribution
Abstract
This paper proposes an improvement of the random multiple access scheme for satellite communication named Multislot coded ALOHA (MuSCA). MuSCA is a generalization of Contention Resolution Diversity Slotted ALOHA (CRDSA). In this scheme, each user transmits several parts of a single codeword of an error correcting code instead of sending replicas. At the receiver level, the decoder collects all these parts and includes them in the decoding process even if they are interfered. In this paper, we show that a high throughput can be obtained by selecting variable code rates and user degrees according to a probability distribution. With an optimal irregular degree distribution, our system achieves a normalized throughput up to , resulting in a significant gain compared to CRDSA and MuSCA. The spectral efficiency and the implementation issues of the scheme are also analyzed.
1 Introduction
In a wireless communication system, two or more sources transmitting their data at the same time and on the same frequency generate interference. The interference between users are traditionally considered harmful. In first network generations, access methods strive to prevent simultaneous transmissions in order to avoid interference. Recently, an opposite approach named physical layer network coding (PNC) [zhang:PNC] that allows interfered users to extract information from collided signals has motivated an extremely large number of studies. Instead of avoiding interference, PNC exploits it to increase system capacity [Katti:PNC]. Asynchronous scenarios and practical deployment aspects of this technique have been studied [Zhang:PNCasynchro, analogNC].
Recent works have combined PNC with Successive Interference Cancellation (SIC) to resolve interference in the context of random access protocols. One of theses solutions is Contention ResolutionALOHA (CRA) [paperCRA] that transmits multiple replicas of a packet (called bursts) in a pure ALOHA system [abramsonAloha]. In CRA scheme, users send randomly their bursts onto the communication medium. Each burst contains a signalling information which points to its replica locations. When a burst is successfully decoded, the replicas are also located and canceled. With a high SignaltoNoise ratio (SNR) (dB), the maximum normalized throughput is significantly extended from up to .
In the same philosophy, PNC and SIC are applied to the Slotted ALOHA protocol [paperSA] to create Contention Resolution Diversity Slotted ALOHA (CRDSA) and CRDSA++ (subsequently called CRDSA*) [paperCRDSA, paperCRDSA++]. Unlike SA, instead of transmitting a single packet, every terminal additionally transmits one (CRDSA) or more (CRDSA++) replicas of the packet onto a frame of slots. As in CRA, the CRDSA* iterative decoding process is realized thanks to the header of each replica. The high performance of CRDSA* has motivated their adoption in the second generation of Digital Video Broadcasting Return Channel via Satellite (DVBRCS2) standard [DVBRCS2document]. Performance evaluations show that CRDSA* significantly outperforms SA in terms of normalized throughput (, vs. ).
A generalization of CRDSA, named Irregular Repetition Slotted ALOHA (IRSA) [paperJournalIRSA], proposes to apply variable repetition rates according to a probability distribution to each user. By optimizing the distribution, theoretical throughput can be increased up to 0.965 with a maximum repetition rate of 16. However, in a practical case where slots, is upper bound by 0.8.
While CRDSA* and IRSA are based on repetitions, Coded Slotted ALOHA (CSA) encodes (instead of repeat) the bursts of each user with erasure correcting codes before the transmission [paperCSA]. The maximum achievable throughput of CSA is .
Recently, MultiSlot Coded Aloha (MuSCA) [paperMuSCA] was introduced as a new generalization of CRDSA. Instead of transmitting replicas, MuSCA sends several parts of a single codeword of an error correcting code. At the decoding level, the entity in charge of this process collects all bursts of the same user even if they are interfered. This is the main difference from CSA in which the decoder only considers non collided bursts. The decoder implements then a SIC process to remove successfully decoded signals. This random access method provides normalized throughput greater than 1.29 for a shot frame ( slots). This means a gain of and with respect to CRDSA++ with 3 repetitions (subsequently called CRDSA3) and CSA.
Following the idea which generalized CRDSA to IRSA, we propose in this paper an optimization of MuSCA by applying variable code rates and irregular user degree distribution. The choice of the code rate of each user is done according to a probability distribution. The rest of the paper is organized as follows: Section 2 provides an overview of the proposed scheme. Section 3 presents an implementation of our mechanism. The performance in terms of throughput is evaluated with simulations involving practical codes in Section 4. Finally, we conclude the paper by summarizing the results and presenting the future work in Section 5.
2 System Overview
2.1 Definitions and Hypotheses
We consider a wireless communication system with a satellite link shared among users (Figure 1). The satellite is a relay that amplifies all received signals with a fixed gain . There is no direct link between users. The channel is considered linear and the transmission is subjected to Additive White Gaussian Noise (AWGN). We assume that each user has the same maximum energy per symbol . The communication medium is divided into time and/or frequency slots of same size. We consider frames of duration . consecutive slots form a frame, then the duration of each slot is .
In our system, each user can attempt a transmit of information bits within a frame. To send more message, the user must wait until the next frame. We assume that the channel estimation is perfect and all users are synchronized at slot and frame levels.
As in other wireless communication systems, if several users transmit their messages at the same time and frequency, there is collision. In this scheme, we integrate all bursts into the decoding process event if they are interfered by other bursts.
2.2 Description of the Mechanism
As mentioned, each user transmits a data packet of bits per frame. The transmitter first encodes the packet with an error correcting code of rate and generates a codeword of bits. This codeword is modulated by a order modulator and split into part. The length of the data field of each part is thus symbols. Signalling information bits are added to each part to form a burst. The bursts from a data packet are then transmitted on random slots within a frame. In following sections, we call the user degree. and are selected according to the probability distribution defined by the system.
The relay receives a signal which is a noisy sum of the users signals after passing through the uplink channel. This sum can be written as
(1) 
where is the signal transmitted by user , is the uplink AWGN with variance and takes into account the channel from terminal to the relay. The relay amplifies the input signal with a fixed gain and forwards this corrupted sum of messages back to all users on a second set of time slots or on another frequency.
The signal received by all users is
(2) 
where is the downlink AWGN with variance and takes into account the channel from the relay to the receiver. As in MuSCA with regular degree distribution, the receiver applies the SIC process twice to first decode signalling fields (to located bursts of each user) and then to decode data fields of located users. Once user is decoded, the receiver regenerates the signal of this user using estimated parameters (amplitude, frequency, phase) and subtracts it from the received signal. The resulting signal after the first round is given by
(3) 
The decoding algorithm is iterative until signal of all users are decoded or until a deadlock situation where no user is still decodable.
2.3 Example of decoding algorithm
Figure 2 and 3 present an example of the decoding process. We consider a system with 4 users transmiting on a frame composed of 3 slots. The first 3 users use the same code of rate to encode their packets of bits. The codeword of bits is divided in 2 parts (). The last user applies a code of rate to its packet of bits. The codeword of is divided in 3 parts (). The code rates and are chosen in order to provide parts of same size (i.e., ). In each part, pointers to other parts of the same user are added into the signalling field. This field is encoded by a short code of rate . The performance of these 3 codes are known. Besides, we assume that the SNR is 5 dB for all users. The users send their bursts on the communication medium as represented in the Figure 2. Note that all bursts are collided with others. Therefore, this situation does not allow algorithms like CRDSA, IRSA and CSA to decode while our scheme is able to implement the decoding even if there is no clean burst on the frame.
The first phase concerns the decoding of signalling fields. The entity that handles the decoding runs through the entire frame to find the most likely decodable fields (in a collisionfree slot or interfered by only one other user). Thus, on the slot 1, the decoder detects bursts that are interfered by one user, so it begins by decoding the first slot. With the code considered in Section 3.2, simulation shows that the probability of failed decoding is 0.109. This signalling field has a high chance (90%) to be correctly decoded. We suppose that the decoding is successful and the signalling field of user 1 is obtained. Then, the pointer to the second burst of the first user is recovered. The signalling fields of the both bursts are then subtracted from the received signal (see Figure 2).
Currently, the signalling field of the clean burst on slot 1 of user 4 is easily decodable. Its complementary bursts are located and their signalling fields are subtracted (Figure 2).
On slots 2 and 3, signalling fields of users 2 and 3 are interfered by 1 user. As before, signalling fields on slot 2 have a probability of to be decoded. Supposing that we obtain the pointers of user 2 on the slot 2, then we can subtract the both signalling fields of this user. After that, the signalling field of user 3 is clean (not in collision with other burst). The probability of locating the both bursts of this user is greater than .
At the end of the first phase, the decoder has information on the location of all users’ bursts. It starts the data decoding phase. User 4 has the highest decoding probability. Its 3 bursts are interfered with 1, 2 and 3 other bursts, respectively (Figure 3). We note this configuration [1 2 3]. The decoder starts the data decoding process with user 4. It gathers the 3 located bursts of this user to attempt the decoding. Simulations show that with the code considered in Section 3.3, the packet error rate is at 5 dB. Supposing this user is successfully decoded, its 3 bursts can be regenerated and subtracted from the signal received in the corresponding slots (i.e. slots 1, 2 and 3) (Figure 3). User 1 becomes the one with highest decoding probability, . After the successful decoding of user 1 (Figure 3), user 2 and 3 have the same decoding probability (). We assume that user 2 is decoded first. The remaining user (user 3) is not any more interfered on the both slots and then easily decoded.
3 Implementation
In [paperMuSCA], we showed that the choice of codes for the signalization field, payload and the parameters , may deeply influence the system performance. In our scheme, each user could have different code and different degree from others.
3.1 Distribution probability
Our system works as follows: for each transmission, the user adopts a variable code rate and a degree , which are selected according to a given distribution . The distribution has to be optimized to increase the system performance in terms of throughput. Note that it is possible to choose independently and . However, in this paper, we only detail the case where depends on (i.e., each codeword contains a fix amount of information bits). The distribution can be then represented as
(4) 
where is the probability that a user has the degree and .
3.2 Signalling field
As in regular MuSCA, the signalling field includes pointers to the positions of other bursts of the same user. Pointer sizes depend on the frame length and the code rate . The signalling field size of each user can be estimated by
(5) 
must remain relatively small in order to maintain a high throughput. We choose to protect these fields by ReedMuller codes which have a fair performance/complexity tradeoff for softdecision decoding of short codewords [paperRM]. For example, for a frame of length slots, each location is represented by 7 bits. Users of degree 3 can adopt a ReedMuller code (14, 64). The signalization decoding is launched when a burst is on a clean (without collision) slot or it is interfered by only one user. Figure 4 represents the PER curves of this code combined with BPSK modulation in 2 cases: the burst on a clean slot and the burst interfered with one user.
3.3 Data field
Our scheme has no particular constraint on the choice of codes to encode data packets for each user. However, to be comparable with existing methods, we consider codes allowing to sent an amount of information bits per slot equivalent to CRDSA*. In CRDSA*, a source transmits replicas of the same packet within a frame. Each data packet is coded by a convolution code [paperCRDSA] or turbo code [paperCRDSA++] of rate . In our scheme, this code rate is equivalent to a general code of rate where depends on a irregular degree distribution . Moreover, due to the system characteristic, the correcting codes have to simultaneously manage errors and collisions. In our simulations, we use CCSDS turbo codes [CCSDSref] provided by the CML library [libCML]. For , 2 or 3, the code rate is , and , respectively. Turbo codes, associated with QPSK modulation are applied to information bit sequences of length , producing codewords of symbols. Note that the turbo codes do not reach their highest performance when there are long damaged sequences in the received codeword. Therefore, similarly to Digital Video Broadcasting  Satellite Handheld (DVBSH) [DVBSHguidelines], we apply a bitinterleaver to each codeword.
Figure 5 depicts the performance curves in terms of PER of a turbo code combining with QPSK modulation in the 3 cases:

3 bursts on clean slots (configuration [0 0 0]);

3 bursts in collision with signal of one user of the same power (configuration [1 1 1]);

3 bursts in collision with two other users (configuration [2 2 2]).
Bursts interfered by more than 2 other bursts are considered as erased.
4 Performance evaluation
As mentioned in the previous section, we consider a frame composed of slots in which users attempt to transmit a data packet. The normalized load represents the average number of packet transmissions per slot and is defined by
(6) 
For each value of and , we obtain a probability of non decoding a packet, denoted . For a fixed , the normalized throughput (defined as the number of successful packets transmissions per slot) is computed as
(7) 
For SA, the throughput depends on as . SA is a particular case of our scheme where the distribution is . Besides, regular MuSCA with (called MuSCA3) corresponds to the distribution associated with turbo codes.
In previous work, we showed that MuSCA can achieve a normalized throughput up to 1.29 [paperMuSCA]. This means that, on average, more than one user can transmit their data packets per slot. Section 2.3 is an example where the normalized throughput is beyond 1. This throughput shows a significant gain between MuSCA and other presented methods. As in regular MuSCA, a frame of 100 slots is considered for all simulations in this study. A longer frame could improve the throughput but it increases the transmission delay because the decoding process cannot be started before the end of entire frame.
In Section 3.2, the link between the signalling field size and the user degree was presented. With a higher user degree (i.e., more pointers in a burst header), the traffic part occupied by the signalization will be larger compared to the useful signal. Therefore, we choose to limit the user degrees to 3 in order to maintain a high effective throughput.
Distribution  Throughput 

0.368  
1.270  
1.293  
1.401  
1.426  
1.366 
Theoretical evaluation based on density evolution (DE) [paperJournalIRSA, paperCSA] is not applied in this study because DE relies on the hypothesis of the independence between exchanged messages in the iterative decoding process. This hypothesis is not verified for the short frame considered in our study. Moreover, this method does not allow to evaluate distributions that contain user of degree 1 while this degree is used in our optimal distribution. Therefore, in order to point out the optimal distribution, we performed simulations in varying the probabilities of each degree. As mentioned in Section 3.3, all users apply turbo codes to encoded packets of 456 bits (). Table 1 represents maximum normalized throughputs for various degree distributions at a high SNR level (dB). The optimal distribution obtained by simulations is . The corresponding threshold exceeds 1.42 for a frame of length 100 slots. This is equivalent to the performance of regular MuSCA with a frame of 500 slots [paperMuSCA].
The optimal distribution is then studied for several values of SNR. For each SNR, the normalized load that maximizes the throughput is identified. Figure 6 shows simulation curves for our scheme with the distribution . For SNR higher than 4 dB, the system permits more than 140 users to transmit on a frame of 100 slots. The relation between and is almost linear up to . That means the probability of successful transmission is maintained close to 1 even if the system is 140% loaded. At low SNR ( dB), the high normalized throughput is maintained, . For a lower level of SNR ( dB), our scheme still allows up to 76 users.
Figure a depicts the throughput curves at dB of SA, CRDSA3 and various probability distributions from Table 1 for MuSCA. We observe that the irregular distribution containing degrees 1, 2 and 3 achieves a throughput up to 1.43. It provides a throughput gain of 10% compared to regular MuSCA. The distribution containing only degrees 2 and 3 obtains a throughput close to the optimal one.
In Figure b, we compare the at dB of SA, CRDSA3 and various irregular degree distributions for MuSCA scheme. We can note that for a normalized load smaller than 1.3, systems with irregular distributions offer higher than MuSCA3 using turbo code of code rate . The difference is due to the high of users with degree lower than 3 that take part in irregular distribution. However, for higher value of , the gain in terms of between regular and irregular MuSCA is significant. At , while . The choice of the best distribution must be done according to the target . At a lower than , regular MuSCA3 obtains the best results. For a target , SA operate at extremely low load ; CRDSA and CRDSA3 offer a traffic close to 0.35 and 0.66, respectively [paperCRDSA++] while irregular distributions for MuSCA achieve a traffic close to 1.3.
To define the best degree distribution for each value of SNR, we quantify the spectral efficiency as the maximum number of bits per symbol for each distribution. For a given SNR, is defined by
(8) 
where is the maximum normalized throughput for this SNR and is the number of symbols in a data field. As mentioned in Section 2, symbols, then can be written as
(9) 
Figure 8 compares numerical results in terms of spectral efficiency from simulations for , , , and CRDSA3 scheme with the reference capacity curve of QPSK modulation. At any , we can observe that MuSCA achieves a significant gain compared to CRDSA. At SNR values higher than 1 dB, the distribution permits to obtain normalized throughput higher than regular MuSCA3. Particularly, at 2 dB, the spectral efficiency of our scheme is extremely close to the capacity of QPSK modulation. This result is explained by the fact that the sum of 2 QPSK modulated signals can be considered as a signal of a higher order modulation [paperCandH].
5 Conclusion and future work
In this paper, we introduced and analyzed an an improvement of the random access scheme MuSCA. The proposed approach allows users to adopt variable code rates and user degrees, according to a distribution probability. Simulations results show that with the optimal choice of the probability distribution, significant gains in terms of packet loss ratio and normalized throughput are achieved compared to existing random access techniques. For dB, our scheme with frames of 100 slots can achieve a normalized throughput close to . In future work, we expect to investigate the impact of imperfect channel estimation on the system performance.