DeepAI
Log In Sign Up

Shifted Coded Slotted ALOHA

04/13/2018
by   Tomokazu Emoto, et al.
0

The random access scheme is a fundamental scenario in which users transmit through a shared channel and cannot coordinate each other. In recent years, successive interference cancellation (SIC) was introduced into the random access scheme. It is possible to decode transmitted packets using collided packets by the SIC. The coded slotted ALOHA (CSA) is a random access scheme using the SIC. The CSA encodes each packet using a local code prior to transmission. It is known that the CSA achieves excellent throughput. On the other hand, it is reported that in the coding theory time shift improves the decoding performance for packet-oriented erasure correcting codes. In this paper, we propose a random access scheme which applies the time shift to the CSA in order to achieve better throughput. Numerical examples show that our proposed random access scheme achieves better throughput and packet loss rate than the CSA.

READ FULL TEXT VIEW PDF

page 1

page 2

page 3

page 4

06/10/2019

Random Access for Massive Machine-Type Communications

The thesis is dedicated to studying methods to improve the efficiency of...
10/11/2019

Throughput of CDM-based Random Access With SINR Capture

Code division multiplexing (CDM)-based random access is used in many pra...
10/30/2021

Throughput and Latency in the Distributed Q-Learning Random Access mMTC Networks

In mMTC mode, with thousands of devices trying to access network resourc...
05/28/2020

Analysis of Tree-Algorithms with Multi-Packet Reception

In this paper, we analyze binary-tree algorithms in a setup in which the...
05/14/2019

A TDMA-like Access Scheme with Splitting Request and Transmission for Vehicular Networks

In this paper, we consider safety message transmission in a dense vehicu...
04/21/2021

How to Identify and Authenticate Users in Massive Unsourced Random Access

Identification and authentication are two basic functionalities of tradi...
01/19/2018

On the Modeling and Performance Assessment of Random Access with SIC

In this paper, we review the key figures of merit to assess the performa...

I Introduction

The random access scheme is a fundamental scenario in which users transmit through a shared channel and cannot coordinate each other. A simple random access scheme is ALOHA [1] proposed by Abramson. In ALOHA, users transmit their packets whenever they want. If two or more packets collide, the users re-transmit their packets after waiting random time. Roberts proposed slotted ALOHA [2], in which users are synchronized and the transmission starts at the beginning of time slots.

Casini et al. [3] proposed contention resolution diversity slotted ALOHA (CRDSA). In CRDSA, each user transmits two copies of the packet. If two or more packets collide, the receiver re-solves the packets via successive interference cancellation (SIC) [4]. Roughly speaking, in the SIC if several packets are transmitted simultaneously, the receiver gets the sum of those packets. Hence, the random access schemes with the SIC (e.g, CRDSA) can be regarded to as packet-oriented erasure correcting coding systems. Liva [5] proposed irregular repetition slotted ALOHA (IRSA) as a generalization of CRDSA to improve the throughput. From the coding theoretic aspect, the factor graph of IRSA is regarded to as the Tanner graph of an irregular low-density parity-check (LDPC) code [6, 7]. Paolini et al. [8] proposed coded slotted ALOHA (CSA) from the construction of a doubly generalized LDPC code [9] as a generalization of the IRSA.

Nowadays, it is known that packet-oriented erasure correcting codes with shift operations have good decoding performance [10, 11]. The codes with the shift operations are efficiently decoded by zigzag decoding [12].

In this paper, we propose a random access scheme, referred to as shifted coded slotted ALOHA (SCSA). The SCSA is a protocol combining the CSA with the shift operations. This paper gives the procedure of the transmitter and the receiver and compares the throughput of the SCSA with the CSA by numerical examples.

This paper is organized as follows. Section II briefly introduces the CSA and time shift. Section III proposes the SCSA. In Section IV, numerical examples show that the proposed protocol outperforms the CSA in terms of the throughput and the packet loss rate. Section V concludes the paper.

Ii Preliminaries

In this section, we introduce the system model assumed in this paper. Moreover, this section briefly introduces the procedure of CSA. Furthermore, we explain the time shift operation. The notations given in this section are used throughout the paper.

Ii-a System Model

In this paper, we assume that users transmit packets to a receiver. All the users and the receiver are frame and slot synchronous. All the users are within the range of detectability of the receiver. Each user attempts at most one packet transmission per frame.

If several packets are transmitted simultaneously, packet collision occurs. Collisions are always detected by the receiver. We assume interference cancellation of the SIC is ideal. In other words, collisions can be regarded as the sum of the packets.

Ii-B Coded Slotted ALOHA

The CSA is a protocol in which a packet of each user is encoded prior to transmission in a frame.

Ii-B1 Preliminaries of CSA

We consider a slotted random access protocol where slots are grouped in the frames. The time duration of the frame is . The frame is composed of slots of duration . Every slot in the frame is divided into slices. The slot is composed of slices of duration .

The packet of a user is divided into data segments, all of the same length. The transmission of a segment is enforced within one slice.

Ii-B2 Local Component Codes and Code Distribution

The segments are encoded by the user via a packet-oriented linear block code, generating encoded segments, all of the same length. For each transmission, the code is randomly chosen by the user from a set of component codes. Note that the set is also known to the receiver. The component code has length , dimension , and minimum distance . Moreover, it is a proper code, i.e, it has no idle symbols.

Each user randomly and independently chooses a component code from the set according to the code distribution . More precisely, the component code is chosen as

with probability

.

Ii-B3 Encoding Procedures

The system parameters for the CSA are the number of segments , the set of the component codes and the code distribution . The encoding procedure of the CSA is as follows.

  1. The user divides a packet into segments.

  2. The user randomly picks a component code from the set according to a code distribution .

  3. The user encodes segments via a component code , generating encoded segments.

  4. The user randomly selects slices in the frame.

  5. The user equips each encoded segment with protocol-control information, namely, the component code picked by the user and the position of the other encoded segments in the frame.

  6. The user encodes the encoded segments via a physical layer code and transmits those at chosen slices.

Ii-B4 Decoding Procedures

On the receiver side decoding is performed as follows.

  1. The receiver searches segments in clean slices (i.e, segments not experiencing collisions).

  2. The receiver extracts protocol-control information, i.e, the relevant user, the code adopted by the user, and the position of the other segments in the frame from the received segments.

  3. The receiver performs maximum a posteriori (MAP) erasure decoding of the component code adopted by the user in order to recover as many encoded segments as possible.

  4. The receiver exploits the recovered segments in order to subtract their contribution of interference in those slices where collisions occur.

  5. This procedure from Step 1 to Step 4 is iterated until either all slices have been cleaned or collisions persist but no further encoded segments can be recovered via MAP erasure decoding.

Ii-C Time Shift

This section gives the key idea of this paper, namely shift operation or time shift to the segments. From the sum of shifted segments, the source segments can be recovered by zigzag decoding[10, 11]. This section explains the time shift to a segment and zigzag decoding via a toy example.

We assume that there are two source segments of length . From those source segments, we generates two “encoded” segments . The first encoded segment is generated from the addition of two source segments and . The second encoded segment is generated from the addition of and with a right shift. After shifting the packet, zeros are filled.

For this example, the zigzag decoding algorithm proceeds as the following way. The decoder has recovered from since . The decoder has recovered by solving . Similarly, the decoder has recovered and decoding is success.

Iii Shifted Coded Slotted ALOHA

In this section, we propose a protocol which applies the time shift to the CSA. Recall that the CSA is provided by the three system parameters . On the other hand, the system parameters for the SCSA are , i.e, the shift distribution is added to the system parameters of the CSA.

Iii-a Shift Distribution

In this paper, we refer to the unit of digital information as a word, which is composed of bits. Moreover, we assume that the shift operation is performed in word-wise. In other word, word-wise shift equals to bit-wise shift. We assume that the length of the segment is words.

We refer to the number of word-wise shifts as the shift amount. We denote the maximum number of the shift amount, by . Let be a set of the shift amount, i.e, . Each user randomly and independently chooses a shift amount from the set according to the shift distribution . More precisely, the shift amount is chosen as with probability .

Iii-B Encoding Procedure of the SCSA

The encoding procedure of the SCSA is as follows.

  1. The user divides a packet into segments.

  2. The user randomly picks a code from the set according to a code distribution .

  3. The user encodes segments via a , generating encoded segments.

  4. The user randomly selects slices in the frame.

  5. The user randomly and independently picks shift amounts from the set for encoded segments according to a shift distribution .

  6. The user equips both beginning and end of each encoded segment with protocol-control information (namely, the component code picked by the user, the position and the shift amount of the other encoded segments).

  7. For a segment whose shift amount is , the user fills zeros at the beginning of the segment and zeros at the end of it.

  8. The user encodes the encoded segments via a physical layer code and transmits those at chosen slices.

Iii-C Decoding Procedure of the SCSA

On the receiver side decoding of the SCSA is performed as follows.

  1. The receiver searches segments in clean slices.

  2. The receiver extracts protocol-control information (i.e, the code adopted by the user, and the position and the shift amount of the other encoded segments) from the received segments.

  3. The receiver performs MAP erasure decoding of in order to recover as many encoded segments as possible.

  4. The receiver exploits the recovered segments in order to subtract their contribution of interference in those slices where collisions occur.

  5. This procedure from Step 1 to Step 4 is iterated until either all slices have been cleaned or collisions persist, but no further encoded segments can be recovered via MAP erasure decoding.

  6. The receiver searches segments in partly clean slices (i.e, words of segments not experiencing collisions).

  7. The receiver extracts protocol-control information from the beginning or the end word of the received segments.

  8. The receiver performs MAP erasure decoding of in order to recover as many words of the encoded segment as possible.

  9. The receiver exploits the recovered word of the encoded segment in order to subtract their contribution of interference in those slices where collisions occur.

  10. This procedure from Step 6 to Step 9 is iterated until either all slices have been cleaned or collisions persist but no further the words of encoded segments can be recovered via MAP erasure decoding.

Iii-D Example of the SCSA

Fig. 1: An example of the SCSA

In Fig. 1 a pictorial representation of the encoding and transmission process is provided in the case of users (indexed as user X, user Y, user Z), slices (indexed from 1 to 8), and . A set is and a generator matrix of code is

(1)

Iii-D1 Encoding

Each packet is split into information segments. Out of the three users, the users X and Z employ a code while the user Y employs a code . The user X performs systematic encoding of its two data segments, generating one parity segment. The three segments are then transmitted into the frame slices of indexes 1, 3, 4 with the shift amount 0, 0, 1. The encoded segments of the users Y and Z (performing systematic encoding as well) are transmitted in slices of indexes 1, 3, 4, 6 and 2, 6, 7 with the shift amount 1, 1, 1, 0 and 1, 0, 1, respectively.

Iii-D2 Decoding

A collision is detected by the receiver on the slices with indexes 1, 3, 4, and 6, while interference-free segments are received on the slices with indexes 2 and 7. It is easy to recognize that MAP erasure decoding of the code employed by the user Z allows us to recover the one missing segment of this user. The contribution of interference of this one segment can then be subtracted from the corresponding slice (of index 6), cleaning the segment transmitted by the user Y. The remaining segments cannot be recovered by the decoding procedure of the CSA. Hence, the receiver starts zigzag decoding.

Interference-free words are received in indexes 1 and 3. MAP erasure decoding of the code employed by the user X allows us to recover the word at the beginning of the segment of this user. The contribution of interference of this one word can then be subtracted from the corresponding word (of index 3), cleaning the word transmitted by the user Y. MAP erasure decoding of the code employed by the user Y allows us to recover the words at the beginning of the segment of this user. The contribution of interference of these two words can then be subtracted from the corresponding word (of indexes 1 and 3), cleaning the words transmitted by the user X. Similarly, the receiver can recover all the words of the users X and Y, and decoding successes.

Iv Numerical Examples

We perform numerical simulations for frame size and user population size .

Iv-a System Parameters

Recall that the SCSA is provided by the four system parameters . We employ the set and the code distribution which achieve the largest peak throughput in [8] when . We use the set (resp. ) and the code distribution (resp. ) when (resp. ) detailed in the following.

where is a generator matrix of .

We employ the uniform distribution for the shift distribution

. More precisely,

Iv-B Evaluation Criteria

The normalized offered traffic (or channel traffic) is given as follows,

where is the indicator function which is 1 if the condition in the square brackets is fulfilled and otherwise 0. Here, the second factor represents the effect of protocol control information and time shift. The packet loss rate (PLR) and the segment loss rate (SLR) are defined as :

where stands “the number of”. Note that the number of users equals to .

The normalized throughput (or channel output) (resp. ) is defined as the probability of successful packet (resp. segment) transmission per slot (resp. slice). More precisely,

Iv-C Results

The simulations carry out at two cases. The first case of simulations deals with . We adopt and introduced in Section IV-A. The number of segments equals the number of packets when . Hence, PLR = SLR and .

The second case of simulations deals with . We adopt and introduced in Section IV-A. The set of simulations assumes a fixed frame length of and a fixed segment length of .

Iv-C1 Case of

Fig. 4 (resp. Fig. 4) compares the PLR (resp. throughput) of CSA with SCSA. The simulations are performed with and . The curves with give of the SCSA with the maximum shift amount , respectively. As shown in Fig. 4, the PLR is monotonically decreasing as increases. From Fig. 4, the peak throughput is increasing as increases. Hence, we conclude that the SCSA outperforms the CSA for .

Iv-C2 Case of

In Figs. 4, 7, 7 and 7 compare the PLR, the SLR, and the throughput of packet and segment for SCSA with CSA, respectively. The simulations are performed with and . The curves with give of the SCSA with the maximum shift amount , respectively. As shown in Figs. 4 and 7, the PLR and the SLR are monotonically decreasing as increases. From Figs. 7 and 7, the peak throughput of packet and segment are increasing as increases. Hence, the SCSA outperforms the CSA for .

Fig. 3: Comparison of normalized throughput of SCSA () with CSA for
Fig. 2: Comparison of packet loss rate of SCSA () with CSA for
Fig. 3: Comparison of normalized throughput of SCSA () with CSA for
Fig. 4: Comparison of packet loss rate of SCSA () with CSA for
Fig. 2: Comparison of packet loss rate of SCSA () with CSA for
Fig. 6: Comparison of normalized throughput of SCSA () with CSA for
Fig. 5: Comparison of segment loss rate of SCSA () with CSA for
Fig. 6: Comparison of normalized throughput of SCSA () with CSA for
Fig. 7: Comparison of normalized throughput of SCSA () with CSA for
Fig. 5: Comparison of segment loss rate of SCSA () with CSA for

V Conclusion

In this paper, we have proposed the SCSA that is a protocol combining the CSA with the shift operations. Numerical examples have shown that our proposed protocol achieves better throughput than the CSA.

References

  • [1] N. Abramson, “The ALOHA system: Another alternative for computer communications,” in Proceedings of the November 17-19, 1970, Fall Joint Computer Conference, ser. AFIPS ’70 (Fall).   New York, NY, USA: ACM, 1970, pp. 281–285.
  • [2] L. G. Roberts, “ALOHA packet system with and without slots and capture,” SIGCOMM Comput. Commun. Rev., vol. 5, no. 2, pp. 28–42, Apr. 1975.
  • [3] E. Casini, R. D. Gaudenzi, and O. D. R. Herrero, “Contention resolution diversity slotted ALOHA (CRDSA): An enhanced random access schemefor satellite access packet networks,” IEEE Transactions on Wireless Communications, vol. 6, no. 4, pp. 1408–1419, April 2007.
  • [4] T. Cover, “Broadcast channels,” IEEE Transactions on Information Theory, vol. 18, no. 1, pp. 2–14, 1972.
  • [5] G. Liva, “Graph-based analysis and optimization of contention resolution diversity slotted ALOHA,” IEEE Transactions on Communications, vol. 59, no. 2, pp. 477–487, February 2011.
  • [6] R. G. Gallager, Low Density Parity Check Codes.   in Research Monograph series, MIT Press, Cambridge, 1963.
  • [7] M. G. Luby, M. Mitzenmacher, M. A. Shokrollahi, and D. A. Spielman, “Improved low-density parity-check codes using irregular graphs,” IEEE Transactions on Information Theory, vol. 47, no. 2, pp. 585–598, 2001.
  • [8] E. Paolini, G. Liva, and M. Chiani, “Coded slotted ALOHA: A graph-based method for uncoordinated multiple access,” IEEE Transactions on Information Theory, vol. 61, no. 12, pp. 6815–6832, Dec 2015.
  • [9] Y. Wang and M. Fossorier, “Doubly generalized LDPC codes,” in 2006 IEEE International Symposium on Information Theory, July 2006, pp. 669–673.
  • [10] M. Dai, C. W. Sung, H. Wang, X. Gong, and Z. Lu, “A new zigzag-decodable code with efficient repair in wireless distributed storage,” IEEE Transactions on Mobile Computing, vol. 16, no. 5, pp. 1218–1230, 2017.
  • [11] T. Nozaki, “Zigzag decodable fountain codes,” IEICE Transactions on Fundamentals of Electronics, Communications and Computer Sciences, vol. 100, no. 8, pp. 1693–1704, 2017.
  • [12] S. Gollakota and D. Katabi, “Zigzag decoding: Combating hidden terminals in wireless networks,” in Proceedings of the ACM SIGCOMM 2008 Conference on Data Communication, ser. SIGCOMM ’08.   New York, NY, USA: ACM, 2008, pp. 159–170.