Random access protocols find applications in scenarios where there is a number of users sharing a common transmission medium and there exists uncertainty regarding which users are active. They can be used both in the initial phase of grant-based access, where the active users contend with metadata in order to reserve the uplink resources for the subsequent data transmissions, or in grant-free access, where the active users contend directly with packets containing data. The former approach forms the basis of mobile cellular access, e.g. . However, the latter approach has been gaining research momentum recently, e.g. , due its lower signaling overhead which makes it suitable for systems, such as Internet of things (IoT), where the amount of the exchanged data is small but the number of contending users may be large .
The first and still widely used random access protocols are ALOHA and slotted ALOHA . Assuming a collision channel model, these two protocols offer low peak throughput ( and respectively) and high packet error rate (PER) even for low channel load. However, it has been shown how the introduction of successive interference cancellation (SIC) at the receiver can lead to higher performance by leveraging on coding-theoretic tools [7, 8]. In practice, this implies storing and processing the receiver waveform and leads to higher receiver complexity. The results presented in  inspired a strand of works that applied various concepts from codes-on-graphs to design SIC-enabled slotted ALOHA schemes [9, 10, 11, 12, 13, 14], which are usually referred to using the umbrella term of coded slotted ALOHA.
. In particular, it is characterized by a contention period that consists of a number of slots that is not defined a priori, and by a slot access probability for the users to independently transmit their packets in a slot. An asymptotic optimization of the slot access probability that maximizes the expected throughput was performed in, while a similar optimization in a cooperative, multi-base station scenario was recently considered in . A joint assessment of the optimal slot access probability and the contention termination criteria in non-asymptotic, i.e., finite-length scenarios were assessed by means of simulations in . In particular, the finite-length performance of SIC-enabled slotted ALOHA protocols, has been so far established only by means simulations or approximate methods, see [18, 14, 19, 20, 21], for example.
The focus of this paper on finite-length analysis of frameless ALOHA and of its reliability-latency performance. Specifically, we formulate the finite-length analysis of multi-slot type frameless ALOHA, i.e., frameless ALOHA with multiple classes of slots, where each class is characterized by a different slot access probability. In the next step, we statistically characterize the reliability of the scheme for a predefined latency target. We then use the flexibility that frameless ALOHA offers with respect to the frame-based schemes and propose a scheme in which the actual reliability performance is progressively assessed at predefined checkpoints during the contention, and feedback is used to drive the contention process towards the maximum possible reliability (i.e., decoding of as many users as possible) given the latency target. In particular, the feedback sent by the access point to the users consists of an update on the slot access probability that should be subsequently used. This feedback induces a multi-slot type contention, since a new slot type is created whenever the slot access probability is changed. In other words, the proposed scheme adapts to the reliability-latency performance observed at multiple points, instead of focusing on just a single point (i.e., at the very end of the latency budget) like in the frame-based schemes, which allows for a finer control of the contention process. We show that the proposed scheme achieves a superior performance.
This paper builds on preliminary results from  and . In  an exact finite-length analysis of frameless ALOHA was presented for the case in which all slots are statistically identical. This analysis was then extended in 
to multiple slot types, sketching how the analysis could be changed to accommodate this extension without actually providing a full proof. The contributions in this paper are the following. We present in detail an exact, self-contained finite-length analysis of multi-slot type frameless ALOHA. Due to computational complexity, this exact analysis is only feasible for moderate contention. This has been the motivation to extend the analysis towards deriving continuous approximations of the expected ripple size (the number of slots containing only one transmission) and its standard deviation. Based on these approximations, we propose a method to estimate thePER with very low complexity. Finally, we exploit this estimation of the packet error rate to propose a feedback based scheme in which the slot access probability of frameless ALOHA is adapted dynamically.
The remainder of the paper is organized as follows. Section II provides a brief overview of frameless ALOHA and describes the system model. Section III presents the finite-length analysis, which can be used to obtain the exact probability mass function of the number of unresolved users for for a given duration of the contention period. In Section IV, the state generating function of the frameless ALOHA decoding process is derived. In Section V, we derive continuous approximations for the expected sizes of the ripple and the different clouds, as well as an approximation of the standard deviation of the ripple. It is also shown how these approximations can be used to estimate the packet error rate. Section VI shows how it is possible to largely improve the performance of frameless ALOHA by introducing feedback and applying the analysis derived in this paper. Finally, Section VII concludes the paper.
Ii Background and System Model
Ii-a Background: Frameless ALOHA
Frameless ALOHA  can be regarded as a variant of slotted ALOHA with SIC that is inspired by rateless codes . The time in frameless ALOHA is divided into equal-length slots and slots are organized into contention periods, whose length is a-priori not known. In order to transmit a packet, users must first wait until a new contention period starts. Next, in each slot of the contention period, every contending user transmits a replica of its packet with a predefined slot-access probability. This happens independently from the transmission on other slots and independently of the actions of any other contending user. Furthermore, the assumption is made that each packet replica contains information about the slots in which the other replicas of the same packet are placed (e.g., this information could be represented with a seed of a random number generator included in the packet header). The receiver (access point) is required to store the waveform of the whole contention period and processes slots sequentially. In particular, the receiver attempts to decode transmissions in the last received slot. Whenever a packet is successfully decoded, the contribution of the decoded packet and of all its replicas are removed from the stored waveform. This might reduce the interference suffered by some still undecoded packets, enabling the receiver to decode them. This process is repeated until no more packets can be decoded. At this stage, the access point can decide whether to terminate the contention period or to allow for more slots in the current contention period. The decision is made according to a predefined criterion, e.g., whether the target throughput has been reached and/or a predefined fraction of users have been resolved . The start or termination of a contention period can be signaled to users by means of a beacon signal transmitted by the access point. An example of contention period in frameless ALOHA is depicted in Fig. 1.
Ii-B System Model
We denote by the number of users contending for access to a single access point. The duration of the contention period in slots is denoted by ; note that is not a-priori fixed. Furthermore, we shall assume that different slot types exists. In particular, we assume that, out of the total slots, exactly are of type . Slots of type , are characterized by a slot access probability , given by , which is equal for all users. It is easy to verify that is the mean number of users that transmitted in a slot of type , and, thus, the mean number of transmissions contained in the slot.
A collision channel model will be assumed. Hence, singleton slots, i.e., slots containing a single transmission, are decodable with probability , and collision slots, i.e., slots containing two or more transmissions, are not decodable with probability . Perfect interference cancellation will be assumed, i.e., the removal of replicas from the slots leaves no residual transmission power.111This assumption is reasonable for practical interference cancellation methods and moderate to high signal-to-noise ratios .
In order to model the successive interference cancellation process at the receiver, we introduce the following definitions:
Definition 1 (Initial slot degree).
The initial slot degree is the number of transmissions originally occurring in the slot.
Definition 2 (Reduced slot degree).
The reduced slot degree is the current number of transmissions in the slot, over the iterations of the reception algorithm.
Definition 3 (Ripple).
The ripple is the set of slots of reduced degree 1, and it is denoted it by .
The cardinality of the ripple, is denoted by
and its associated random variable as.
Definition 4 (-th cloud).
The -th cloud, , is the set of slots of type with reduced degree .
The cardinality of the -th cloud, , is denoted by and the corresponding random variable as .
Upon reception, the reduced degree of a slot is equal to its initial degree. During the decoding process, the reduced degree of a slot is decreased by whenever one of the undecoded packets present the slot is decoded and its interference cancelled. Note that the interference cancellation process may cause some of the slots of the -th cloud to leave the -th cloud and enter the ripple, if the slot becomes of reduced degree . Furthermore, the interference cancellation process also causes slots in the ripple to become of reduced degree and leave the ripple. These slots are of no further use in the decoding process, thus, we do not consider them explicitly in our analysis. This process is depicted in Fig. 2.
Let us consider the example in Fig. 1, and assume that there are two slot types. Further, let us assume that slot 1 and 3 ar of type 1, whereas slot 2 and 4 are of type 2. Initially, slot 1 is in the -st cloud , slot 2 is in the -nd cloud , and slot 4 in the ripple, . After the fist round of decoding and replica removal, slot 4 leaves the ripple, while slot 1 leaves the -st cloud and enters the ripple. Hence, the -st cloud becomes empty. In the next round of decoding and replica removal, slot 1 leaves the ripple, while the slot 2 leaves the -nd cloud and enters the ripple. Thus, the -nd cloud becomes empty. The reception algorithm stops when slot 2 leaves the ripple.
Finally, we denote the slot degree distribution of slot type by , , where is the probability that a slot of type has initial degree . It is straightforward to verify that , , is given by
Hence, the probability that a slot of type initially contains no transmission at all is , the probability that it initially belongs to the ripple is , and the probability that it initially belongs to the -th cloud is .
Iii Finite-Length Analysis
For the sake of convenience and without loss of accuracy, we shall assume that the receiver works iteratively. If the ripple is empty, the receiver simply stops. Otherwise, it carries out the following steps:
Selects at random one of the slots in the ripple;
Resolves the user that was active in that slot (i.e., decodes its packet);
Cancels the interference contributed by the resolved user from all other slots in which its packet replicas were transmitted. This may cause some slots to leave the cloud and enter the ripple. Furthermore, some slots from the ripple may become degree zero and leave the ripple. These last slots correspond to slots in the ripple in which the resolved user was active.
Thus, in each iteration, reception algorithm either fails, or exactly one user gets resolved. These assumptions are made to ease the analysis and have no impact on the performance.
i.e., the state comprises the cardinalities from the first to -th cloud and the ripple at the reception step in which users are unresolved. Each iteration of the reception algorithm corresponds to a state transition. The following proposition establishes a recursion that can be used to determine the state distribution.
Given that its is state , where users are unresolved, and (i.e., the ripple is not empty), the probability of the receiver transitioning to state , where users are unresolved, is given by
for , .
Let us start by remarking that, given the fact that that every users decides whether to transmit or not in a slot independently from other users, all users and independent and statistically identical. Furthermore, all slots are mutually independent. Thus, if we look at the decoder when users are unresolved, the set of unresolved users is obtained by selecting users at random among the total of users. In particular, the proof analyzes the variation of the clouds and ripple sizes in the transition from to unresolved users. Since we assume , in the transition from to unresolved users, exactly 1 user is resolved. All the edges coming out from the resolved user are erased from the decoding graph. As a consequence, some slots might leave the cloud and enter the ripple if their reduced degree becomes one, and other slots will leave the ripple if their reduced degree decreases from 1 to 0.
Let us first focus of the number of slots leaving and entering in the transition, denoted by and with associated random variable given by . Due to the nature of frameless ALOHA, in the decoding graph the neighbor users of a slot are selected uniformly at random and without replacement222In fact, it is users who choose their neighbor slots uniformly at random and without replacement.. Thus, random variable
is binomially distributed with parametersand , being the probability of a generic slot of type leaving to enter ,
We shall first focus on the numerator of (5) and we shall condition it to the slot having degree , . This corresponds to the probability that one of the edges of slot is connected to the user being resolved at the transition, one edge is connected to one of the unresolved users after the transition and the remaining edges are connected to the resolved users before the transition. In other words, slot must have reduced degree before the transition and reduced degree after the transition. It is easy to see how this probability, conditioned to , corresponds to
for . In the complementary case, , it is obvious that the slot cannot enter the ripple. Thus, we have
Let us now concentrate on the denominator of (5), that corresponds to the probability that a slot is in the -th cloud when users are still unresolved. This is equivalent to the probability of slot not being in the ripple or having reduced degree zero (all edges connected to resolved users). Hence, we have
where the first summation on the right hand side corresponds to the probability of a slot being the ripple, and the second summation corresponds to the probability of a slot having reduced degree zero. Inserting (6) and (7) in (5), the expression of in (4) is obtained, and the variation of size of the cloud, i.e., random variable , is determined.
We focus next on the variation of size of the ripple in the transition from to resolved users. In this transition, some slots enter the ripple (in total slots), but there are also slots leaving the ripple. Let us denote by the number of slots leaving the ripple in the transition from to unresolved users, and let us refer to the associated random variable as . Assuming that the ripple is not empty333If the ripple is empty, , no slots can leave the ripple. Moreover, decoding stops, so there is no transition., the decoder will select uniformly at random one slot from the ripple, that we denote as . The only neighbour of , will get resolved. All slots in the ripple that are connected to (including ) leave the ripple in the transition. Additionally, the remaining slots in the ripple will leave the ripple independently with probability , which is the probability that they have as neighbour. Thus, the probability mass function of is given by
The proof is completed by observing that from the definition of and it follows
Recall that out of the slots in the contention period, exactly belong to slot type . We focus on slots of type , of which there are . The initial state distribution corresponds to a multinomial with experiments (slots) and three possible outcomes for each experiment: the slot being in the cloud, the ripple or having degree 0, with respective probabilities , and . Denoting by the random variable associated to the number of slots of type of reduced degree 1 when all users are still undecoded, we have
for all non-negative such that .
If we observe that, when all users are still undecoded, the total number of degree one slots is given by
we can obtain from (9) the initial state distribution of the receiver.
By applying recursively Theorem 1 and initializing as described the finite state machine one obtains the state probabilities.
Let us denote by the probability that exactly users remain unresolved after a contention period of slots. Obviously, the event that exactly users remain unresolved corresponds to the event that the user resolution ends at stage . The probability of this event is simply the probability that the ripple is empty when users are still unresolved. Formally we have
where the summations is taken over all possible values of , .
Thus, by applying Theorem 1 and then using (11), one obtains the probability mass function of the number of unresolved users for the given number of users and duration of the contention period in .444Note that implicitly depends on the initial state distribution that is obtained through (9), while (9) depends on the number of slots of a given type , , and thereby on the total number of slots .
As an example, in Fig. 4 we show the pmf of the number of undecoded users , i.e., for , when and , for (i) one slot type with mean initial slot degree , and (ii) two slot types, with slots of the first type, slots of the second type, with mean initial degrees and , respectively.555Recall that slot access probability of a type is . The figure shows analytical results according to Theorem 1 and the outcome of Monte Carlo simulations. We see that the match is tight down to simulation error (100,000 contention periods were simulated). In this particular example, we can observe how has a bimodal distribution. Thus, there are two points in the decoding process in which the ripple has a higher probability of becoming empty.
The expected packet error rate , i.e., the probability that a user is not resolved, can also be derived from Theorem 1. In particular, we have
For the example in Fig. 4, the expected packet error rates for the contention with one and two slot classes correspond to and , respectively.
Hence, the expected (normalized) throughput is simply
Iv State generating Functions
Following the works in [22, 24, 25], which analyze the iterative LT decoding process, let us define the state generating function of the frameless ALOHA decoder as the probability generating function of the random variable associated with the state of the frameless ALOHA decoder,
The following theorem establishes a recursion for the state generating function.
Consider a contention period with slots of different types and contending users, which in a slot of type are active with probability . For , we have
where is given by
and initial condition given by
We provide a proof only for the case of slot types. The proof follows closely [24, Theorem 1]. By definition, the state generating function of the frameless ALOHA decoder when users are undecoded can be written as
Our objective is expressing as a function of . For this purpose, we must consider the contribution of all previous states to the future state . In the remainder of the proof, we shall drop the subscript for the sake of readability. As done in the proof of Theorem 1, we denote by the number of slots leaving in the transition from to undecoded slots. Furthermore, we denote by the number of slots leaving the ripple in the transition. Obviously, we have
Thus, we can rewrite (20) as follows
By grouping different terms together, we obtain
We now take out the term from the summation. In case that , and cannot be both zero at the same time. Thus, we have
By using in (28) the results of the following two finite sums
after some manipulation, we obtain
which yields (15).
In order to complete the proof, we only need to provide a proof for (19), which specifies the initial condition of the recursive expression given in (15). By definition, is simply the probability that before decoding starts () we have exactly slots in the first cloud, slots in the second cloud and slots in the ripple. Let us decompose as , where and represent, the number of slots of type 1 and type 2 in the ripple, respectively, with and . We have
From (9) we have that
If we replace this expression into (9) and make use of the multinomial Theorem, one obtains (19). This completes the proof for . The proof for generic uses the same reasoning and follows exactly the same steps. ∎
Theorem 15 can be used to derive the probability of decoding failure in a similar way as done the for the LT decoder in . In particular, we have that the probability that the decoder fails when exactly users are undecoded is , where
is the all one vector. This corresponds to the probability that the ripple is empty. Hence, the probability that exactlyusers remain unresolved after a contention period of slots, , corresponds to:
V Approximation Using Differential Equations
can provide the exact probability mass function of the number of unresolved users, its evaluation is computationally complex. In this section, we derive continuous approximations of the first and second moment of the ripple and clouds. These approximations can be indirectly used to obtain an assessment of the number of unresolved users. In particular, they can help us identify if the decoding process is likely to stop or continue until a large fraction of the users has been decoded. Furthermore, the approximations are very easy to evaluate, since they consist of polynomials and logarithms.
V-a First Moment
Thus, we can obtain a recursion for if we differentiate both sides of the recursion in Theorem 15 with respect to , and evaluate the expression at , which yields
In a similar way, the expression for can be obtained differentiating both sides of the recursion in Theorem 15 with respect to and evaluating the expression at ,
We again make use of a result in , where it was shown that for the residual term
can be approximated as .
Recall that in frameless ALOHA, due to the contention mechanism, in a slot of type , users are active with a probability . This induces a binomial slot degree distribution given by eq. (1). If for a fixed contention period length, we look at the contention graph of frameless ALOHA from the perspective of slots, this is equivalent to saying that slots choose their neighbours uniformly at random and without replacement (a user can not be active multiple times in a slot).
in the bipartite graph representation of the contention process, i.e., the same user node can be chosen several times in the same slot. If a slot node has an odd number of edges connected to a user node, the user node will be active in that slot. If the number of edges is even, the user is not active in that slot. This approximation results in a slight decrease of the slot access probability . Nevertheless, intuitively the approximation becomes tighter as the number of users increases, since it becomes less and less likely that a slot chooses several times the same user.
Under the replacement assumption, the expression of becomes:
and is the generator polynomial of the slot degree distribution of slots of type ,
Let us now define the expected normalized size of the clouds and ripple respectively as
Making use of these definitions, and assuming , we can divide both sides of (46) by to obtain
and the same can be done for (47) leading to
As shown in , it is possible to approximate respectively by , which are the solutions to the following differential equations
These approximations are tight during almost all the decoding process except for the last few users that are decoded. In particular, it was shown in  that as long as is a constant fraction of , we have
Thus, the approximations become tighter for increasing .
where the values of the parameters and are determined by the initial conditions to the differential equations. In particular, for the clouds we have
Hence, by imposing , we obtain
For the ripple we have
Thus, imposing yields
V-B Second Moment
In the following, we shall focus on the variance of the ripple,. By definition, we have
Experimentally, we made the observation that the distribution of the ripple is approximately binomial (see Fig. 12). Under the assumption that is binomially distributed with parameters and , a continuous approximation of the variance of the normalized ripple is given by
V-C Numerical Results
Fig. 7 shows the expected normalized ripple and clouds sizes, as well as the normalized standard deviation of the ripple and their continuous approximation. The setting considered is users, slot types, slots, and . We can observe how the continuous approximation is very close to the actual expected normalized ripple size