Randomly Pre-Coded Packets Based Random Access Scheme for IoT-Oriented Satellite Networks

In this article, a novel random pre-coding (RPC) based random access (RA) scheme is proposed to improve the system performance in the Internet of Things-oriented satellite networks. In this scheme, each device randomly selects a non-orthogonal multi-level complex sequence from a pre-defined pre-coding sequence set to pre-code the transmitted packets in a sub-frame, by which multiple superimposed packets in the sub-frame can be successfully decoded by using the minimum mean squared error (MMSE) based successive interference cancellation (SIC) detection algorithm. Besides, by combining the proposed RPC with the existing contention resolution diversity slotted ALOHA (CRDSA) scheme, which the RPC-CRDSA scheme is generated. The SIC processing should be carried out across sub-frames to remove the received signals that are already recovered, which can further significantly improve the system throughput. The performance of the RPC-RA scheme is evaluated via both theoretical analysis and computer simulation. The collision probabilities of both preamble and pre-coding sequences and an upper bound of throughput are derived, respectively. Simulation results show that the peak normalized throughput of RPC-CRDSA with the pre-coding sequence length $L = 8$ can reach 1.87 bits/symbol, which largely outperforms traditional schemes.


I. INTRODUCTION
Internet of Things (IoT)-oriented satellite networks [1] have become one of the most important IoT networks due to its broad coverage, which can collect a great amount of information from a large number of machine-type communication (MTC) terminals for various monitoring application scenarios. These scenarios include disaster relief, rescuing, target tracking, and so on, especially for scenarios when terminals lie outside the coverage of the terrestrial networks or when terrestrial networks collapse. In the satellite-based IoT system, bursts generated from MTC terminals often have a low duty cycle with unpredicted access time, because of which random access (RA) has become an effective technology for the MTC terminals to access into satellite networks, and RA has been attracting more attention in recent years [2]- [4].
The associate editor coordinating the review of this manuscript and approving it for publication was Wei-Wen Hu .
Due to the large coverage of a spot beam of a satellite, there maybe tens of thousands of MTC terminals attempting to access the network, while the heavy burden in the RA channel is highly possible to make the throughputs of the traditional RA schemes approaching zero, e.g., pure ALOHA [5] and slotted ALOHA [6] scheme, thus introducing unaccepted delays for the transmission of burst packets. In this case, the massive number of burst packets generated from a large number of the MTC terminals have brought a great challenge for the random access technology in the IoT-oriented satellite networks, attracting much attention in recent years.

A. RELATED LITERATURES
To meet this challenge, a contention resolution diversity slotted Aloha (CRDSA) [7] scheme was introduced in 2007, in which each packet is repeated twice in randomly selected slots, while at the receiver an iterative successive interference cancellation (SIC) technique is employed to resolve overlapped packets. Compared with the conventional slotted Aloha (SA) and diversity SA (DSA) scheme [8], CRDSA could dramatically improve the throughput, however, it may also introduce overlapped packets that cannot be canceled anymore, thus resulting in many packet replicas collision phenomenon (contains deadlock loop phenomenon) at the high load that greatly limits the performance of CRDSA. To further improve the throughput, an enhanced version of the CRDSA scheme is named CRDSA++ [9], which transmits more than two repeated replicas of each packet, and the obtained normalized peak throughput can reach as high as 0.68 packets/slot since it can reduce the occurrence probability of the deadlock loops. To further reduce the occurrence probability of the deadlock, an irregular repetition slotted ALOHA (IRSA) scheme is presented in [10] which takes the IC process as a bipartite graph and selects variable burst repetition rates according to the degree distribution. The normalized peak throughput of IRSA can reach 0.8 packets/slot. However, in the CRDSA++ and IRSA schemes, the deadlock phenomenon remains, which greatly limits the improvement in the throughput. This is because the transmitted packets are simply repeated in the randomly selected slots according to the type of the CRDSA schemes. After the IC processing, except deadlock loops, there is not any clean packet, and the remaining packets remain to interfere with each other in different slots. Since packets replicas in CRDSA-type access schemes can be seen as coded replicas with each one being encoded by repetition codes before transmission, other coding based random access schemes were further proposed.
Instead of simply repeating burst packets as in CRDSA, a coded slotted ALOHA (CSA) scheme was proposed in [11] and provided further throughput performance improvement over the CRDSA families, by dividing the packet of an active user into several segments that are encoded by a packetoriented linear block code in the media access control (MAC) frame. Compared with the IRSA scheme, the normalized peak throughput of the CSA scheme can approach 0.9 packets/slot. However, compared with the CRDSA scheme, CSA needs more redundant information and additional location information for each segment in the head of the bursts. It is also found that the decoding of a packet depends on some clean segments in slots, thus encountering the same deadlock problem as the CRDSA scheme when the load increases. Although the CSA scheme can improve throughput comparing with the CRDSA and IRSA schemes, high multi-packet reception capacity still cannot come true.
In all above mentioned RA schemes, successfully decoded packet replicas rely on the clean packet and SIC detection technique. In recent years, advanced RA schemes that resort to state-of-art physical (PHY)-layer techniques are proposed, such as literature [12]- [18]. Polarized MIMO Slotted ALOHA (PMSA) [12] scheme was proposed in 2017, which considers the polarization characteristics in satellite channels and provides an additional freedom degree for packet transmission. However, the throughput of PMSA does not linearly increase with the increase of load under high load. In [13], owing to the adoption of a low-rate turbo coding in the PHY layer, two collided packets can be partially decoded, and the PHY-layer models of CRDSA-type schemes are also analyzed. Besides, the non-orthogonal multiple access (NOMA) based RA schemes are also studied [14], [15], in which the NOMA is utilized to improve the throughput of multichannel ALOHA RA system. NOMA-ALOHA scheme paves into a novel RA fashion for IoT networks. To further improve the throughput of CRDSA and IRSA by utilizing the capture effect, power domain NOMA based CRDSA and IRSA are proposed in [16] and [17], respectively, in which packet replicas of every satellite machine-type-communication terminal (SMT) are transmitted with different power levels, and optimal transmit power distribution and degree distributions with the different number of power levels are obtained. Although its throughput is greatly improved and packets loss rate (PLR) dramatically reduced compared with conventional CRDSA and IRSA schemes, their energy consumption is also greatly increased especially for satellite networks. The nonorthogonal slotted ALOHA (NOSA) RA protocol is proposed in [18], in which signals of every active device is encoded by sparse codebooks of SCMA selected from a predetermined codebook set, and received packets are decoded by message passing detector (MPD). Since the number of codebooks is very small, as the load increases, the codebook collision problem can severely deteriorate the system performance of the NOSA protocol.

B. CONTRIBUTIONS OF THE WORK
The earlier RA schemes based on the collision model focus on the decoding in one slot, in which only interference-free packets can be decoded, such that is not possible to achieve a throughput higher than 1.0 packets/slot. Moreover, the abovementioned improvement schemes neglect some characteristics of the IoT satellite network, such as the total transmit power constraint and energy consumption, so the practical application of these schemes is limited. As the number of IoT terminals rapidly increases, it is required to design a new RA protocol with a higher performance without high energy and bandwidth consumption. In this article, we propose a random pre-coding (RPC) RA to improve the throughput in the IoT satellite networks. In this scheme, a small sub-frame that contains multiple slots is first introduced, and each active device randomly selects a sub-frame in the frame to transmit its packets. Different from the existing RA schemes, in the selected sub-frame, instead of being simply encoded or repeated, each device pre-codes its burst into several pre-coded packets by randomly selecting a multi-level complex sequence in a pre-defined code set. These pre-coded packets are transmitted in corresponding slots without any location information. The inter-sub-frame SIC and intra-subframe minimum mean squared error (MMSE)-SIC algorithm are performed to recover multiple overlapped packets, which improves multiple packets reception capability. The redundant packets introduced by the pre-coding sequences can be fully used, which can support a heavy overload transmission within the bandwidth range, therefore significantly improving the throughput of the RA scheme. The main contributions of this article are summarized as follows.
1) We propose a novel RPC scheme in IoT-oriented satellite networks, which employs pre-code sequences to differentiate data of different devices being multiplexed in a sub-frame. The packets of each active device are pre-coded by a randomly selected pre-code sequence and are mapped onto different slots in a sub-frame. The multiple superimposed packets can be successfully decoded by utilizing the MMSE-SIC detector. 2) We provide a theoretical analysis framework to evaluate the performance of the proposed scheme. The probability of preambles and pre-code sequences are derived, and the throughput performance of the proposed RPC-SA and RPC-CRDSA scheme are analyzed. 3) We utilize the RPC as the elementary transmission unit in CRDSA, which generates the RPC-CRDSA RA protocol. Particularly, we specify the detailed procedures of active devices and satellite nodes in utilizing the RPC in the RA process. We also show numerically that it outperforms traditional RA protocols in terms of normalized throughput and PLR.
The rest of this article is organized as follows. In Section II, we present the system model. The RPC scheme is proposed in Section III, including the structures of sub-frame and pre-coded packets, and received signal model of pre-coded packets. In section IV, the multiuser detection scheme for RPC is presented in detail, including the preamble and precoding sequence detection and MMSE-SIC algorithm for superimposed packets. In section V, we will further apply the proposed RPC into some advanced RA schemes, and the computational complexity of the proposed RPC-CRDSA is presented. The performance analysis of RPC-SA and RPC-CRDSA are presented in Section VI. Numerical results on the PHY layer and the MAC layer of PRC are given in Section VII. Finally, in Section VIII, the conclusion is given. We also explain the following notations used by throughout the letter. Matrices and vectors are represented by symbols in bold face and variables in italic. And we utilize notations (·) T and (·) † to represent transpose and conjugate transpose.

II. SYSTEM OVERVIEW A. SYSTEM MODEL AND TRANSMISSION QUALITIES OF THE UPLINKS
The IoT-oriented satellite network is an expansion of existing territorial networks, which can be used for providing broad network coverage and improving connectivity in wireless communication. In the network, we assume that the deployment of devices follows the uniform distribution with the coverage area of the satellite, that the data rate and the length of the packet are 10 1 −10 2 kbps and 10 1 −10 4 bits in general, respectively. We also assume that the activation probability is very low, that the battery life of terminals is very high (5 to 10 years). A typical example of an IoT-oriented satellite network is shown in Fig. 1. The satellite node received signals and forwards them to the gateway station frame by frame. The gateway station receive signals and stores in the memory in frames. The packet detection and SIC process can be worked in order on the gateway station. Since the satellite only relays the received signals from IoT terminals to the earth gateway station, complex detection calculations are done only on the ground station, not IoT terminals. The acknowledgments (ACKs) or negative acknowledgments (NACKs) of packets are broadcasted to the MTC terminals through the satellite node. Note that due to the traffic feature of MTC terminals, all the MTC terminals are uncoordinated when they are activated transmitting their packets. The distance between the satellite and the terminals can be obtained according to the position of the terminals and the location information of the low earth orbit (LEO) satellite in its trajectory [19]. Although the distance changes as the LEO satellite moves, the relative changes in the distance is little in the duration packet transmission (i.e., T S =10ms). The distance L from the terminals to the LEO satellite can be represented as where R e denotes the average earth radius, H denotes the satellite altitude, ψ = cos −1 ( R e cos θ R e +H ) − θ denotes the angular coverage. θ is the minimum elevation angle from the terminals to the LEO satellite. The received signal-to-noise ratio (SNR) is related to the propagation loss caused by the distance L [20]. In the proposed scheme, the MMSE-SIC receiver can take advantage of the near-far effect that is inherent to the multi-terminal transmission in the LEO satellite uplink. The performance of the satellite RA scheme can be improved by using open loop power control mechanism, in which this method is the same as that the that enhancing the physical layer CRDSA [13] and NOSA scheme [18].
In this article, the parameters of the considered satellite RA system with one LEO satellite node are similar to the existing traditional LEO satellite RA system. The dense LEO satellite constellation [21]- [24] can provide seamless IoT coverage for terrestrial terminals. In addition, IoT terminals can access the LEO satellites with flexible elevation angles compared to the GEO satellite. So the IoT-oriented LEO satellite network is tolerant of terrestrial obstacles.

B. PRELIMINARIES
In the return link of a satellite network, the framed slotted ALOHA (FSA) scheme is often employed in the RA system as the scheme for the access of massive MTC terminals. The duration of the MAC frame is assumed to be T F , which is composed of N slot time slots. The duration of one slot is give as T S = T F /N slot . The total number of terminals in the system is N total . In general, the number of N total range of terminals can be set to 10 2 − 10 5 . Considering the representative environment monitoring applications scenario in 221150 VOLUME 8, 2020 satellite IoT, devices are tasked with collecting data such as temperature and location conditions. If the monitoring data of devices change dramatically, the device is activated and report monitoring data to the satellite. In general, activation probability is very small in this application scenario. Each terminal is sporadically activated (that sends packets to the receiver) with a probability π for a given frame independently of activations in other frames and terminals. It is assumed that the number of active terminals in a frame is N a , and the channel load G is defined as the expected number of active terminals per slot, i.e., G = E[N a ]/N slot = πN total /N slot . The number of active terminals in a frame N a equals to activation probability multiply to the total number of devices, i.e., N a = πN total . Due to the number of activated terminals in a frame is often modeled as a Poisson random variable, which is defined as N a ∼ Po (λ), where Po (·) denotes a Poisson distribution and λ is the average packet arrival rate. λ can be given as where G pg is the processing gain, it is defined as the ratio of the chip rate R c to the effective data bit rate R b , i.e.
where r is the code rate of the forward error correction (FEC) code employed in the packet, and O is the modulation cardinality. The unit of G also can be bits/symbol. The packet loss ratio (PLR) is defined as the ratio of the number of incorrectly decoded packets to the total number of transmitted packets, and the PLR is given as a function of the normalized load G. The normalized throughput T represents the spectral efficiency of the RA scheme at any given normalized load G. The normalized throughput T is expressed as

C. SIGNAL MODEL
In this random access system, the single carrier interleaved frequency division multiple access (SC-IFDMA) can be utilized to transmit the packets from the users because of the advantage of a low peak-to-average power ratio (PAPR) and constant envelope characteristics. The cyclic prefix (CP) of SC-IFDMA symbols can effectively make SC-IFDMA based packet be synchronized in collided packets from different users in the same sub-frame. Since SC-IFDMA can be convenient for synchronization and does not require over-sampling, SC-IFDMA can be employed as the signal model which can be suitable for modern SIC-based detection in IoT-oriented satellite network. The packet structure based on SC-IFDMA is shown in Fig. 2, which is the same as that in the return link of Digital Video Broadcast -Return Channel via Satellite 2 (DVB-RCS2) system. Following the FSA scheme, an activated MTC terminal randomly selects a slot in the frame and transmits its packet. The packet contains L RA pre preambles, L RA pay payload symbols and L RA guard empty guard samples, L RA pkt = L RA pre +L RA pay + L RA guard is defined as the length of a packet which is the same as that of a slot. S u is the transmitted signal of a packet generated by the u th user, which can be represented as For the u th active user, the transmitted data of m th complex SC-IFDMA symbol in the i th slot can be repressed as If K i users transmit their packets in the i th time slot simultaneously, where 0 ≤ K i ≤ N a and 1 ≤ i th ≤ N slot , the received signals in the slot can be expressed in the matrix from as follows where h u,i and τ u,i are the channel coefficient, propagation delay of the u th user in the i th slot, respectively. And the channel from the MTC terminal to the satellite is usually modeled as the Rician fading channel. z −τ u,i is defined as a delay operator that shifts rightward the received signal by τ u,i . W i denotes the white Gaussian noise matrix with zero mean and variance of σ 2 . By the FSA scheme, in which only interference-free packets are decodable. As the channel load increases, the packets collision probability in a slot increases, the collided packets be discarded, and the throughput would greatly decrease. The resolution of the collided packets is a key problem, which will decrease the performance of the RA schemes that are based on the FSA-like schemes.

III. PROPOSED RANDOM PRE-CODED BASED PACKET SCHEME
To further improve the throughput of RA systems, we propose a new packet-level random pre-coding scheme, in which a time division multiple access (TDMA) frame is divided into several sub-frames, that contains multiple slots. An activated user pre-codes its burst into L pre-coded packet replicas by randomly selecting a multi-level complex sequence in a predefined code set, and then randomly selects one of the subframes to send its pre-coded packet replicas instead of simply repeating them. All IoT terminals also need to ensure initial slot-and frame-synchronization like the case in CRDSA-likes schemes. The structures of packets for IoT terminals and the frame structure of the proposed scheme are almost the same as those in the existing traditional satellite RA system. There is only a little increase in the complexity of IoT terminals compared with that of the CRDSA RA system. In this section, the structure of sub-frames and pre-coded packets is first presented, and then the received signal model of pre-coded packets is given.

A. STRUCTURES OF SUB-FRAME AND PRE-CODE BASED PACKETS
In the proposed RPC scheme, the basic unit element in the uplink is sub-frame, and the TDMA frame is divided into M sub-frames which contains L slots, i.e., M = N slot /L. Fig. 3 shows The structure of the frame.
The transmitted packet signal S u is pre-coded by a multilevel complex sequence, which is randomly selected from a multi-level complex sequence set pc . The set is defined by where C pc α denotes anyone multi-level complex sequence with length of L. We assume that the randomly selected multi-level complex sequence by the u th user is C u = C pc α = [c α,1 , . . . , c α,i , . . . , c α,L ], the precoded packet signals for user u can be represented as where the pre-coded packet for user u th on i th slot is S pc u,i . In Eq. (7), multi-levels complex sequences are used to distinguish the overlapped pre-coded signal vectors in one subframe, and therefore the auto-and cross-correlation properties of these multi-levels complex sequences are crucial to the proposed scheme.
To make the length of the sub-frame short and the complexity of the receiver low, the length of the pre-code sequences should be selected as short as possible. The multilevel complex sequences with the short length as well as good auto-and cross-correlation properties in the multi-user shared access [25] (MUSA) can be employed in the proposed scheme. The complex sequence utilizes additional freedom of the imaginary part and exhibits lower cross-correlation than the traditional pseudo-random noise sequence when the length of sequences is short, such as 4, 8, or 16. The real and imaginary parts of each element in multi-level complex sequences are selected in the ternary set {1, 0, −1}, such as etc. This method can indeed construct a large number of extended sequences, but some of the constructed sequences are not suitable for our proposed scheme, because auto-and crosscorrelation properties are not very good. Therefore, tri-levels complex sequences must be optimized for better correlation properties [26]. The optimization criteria of sequences as given as follows, 1) Too many 0 elements in the tri-level complex sequence will lead to the loss of user data and increase the bit error rate of the system, so the number of 0 elements needs to be limited.
2) The correlation that has a great influence on system performance can be divided into auto-and cross-correlation. We select tri-level complex sequence with good auto and cross-correlation performance.
According to the above-mentioned pre-coding sequences optimization criteria, by employing computer search programs, we select some sequences that have good auto-and cross-correlation properties, and these sequences form the RPC sequence set with the number of tri-levels complex sequences is V .
To further enhance the performance of system, packet power unbalance is introduced among different user terminals. Each active user terminal is allowed to randomly select a power level from a power table w to transmit its multiple pre-coded packets. The power table is defined as the j th power level and J the number of power level. These power levels in the power table w are equally spaced and satisfy w min ≤ w 1 < w 2 < . . . < w J ≤ w max , where w min and w max represent the lower and upper power limits, respectively. If an active user terminal u selects the power level w j to transmit its pre-coded packets, and we denote w p u = w j as transmission power of the user terminal u th , thus the transmitted pre-coded packets can be expressed as Subsequently, these pre-coded packets with a randomized transmission power are transmitted in a randomly selected sub-frame.
The preambles play a significant role in TDMA based satellite RA schemes in recognizing the existence of signals and estimating corresponding parameters. In the proposed RPC, the preamble is also used to recognize the tri-levels complex sequence that is randomly selected by the user. The Zadaoff-Chu sequences which have good auto-and crosscorrelation properties are selected as preambles. The preamble set is defined by P pre where the V is the number of preambles in the set of preambles, which equals to the number of tri-levels complex sequence in the set of sequence. And P pre v denotes one preamble with length L pre . We assume that the user u th has first randomly selected a tri-levels complex sequence and that it has then randomly selected a preamble from the corresponding preamble set. Note that The CP is added to the selected preamble. The preamble collision can reduce the throughput, so the number of preambles in the preamble set shall be large enough. However, it will increase the complexity of detection. Thus the size of the set should be suitably selected according to preamble detection complexity and the preamble collision probability.

B. RECEIVED SIGNAL MODEL OF PRE-CODED PACKETS
Due to the short period of the sub-frame, the channel in a subframe is often assumed to be invariant. Supposing there are K j users in the j th sub-frame with L slots, the received signal in the i th (i = 0, 1, . . . , L) slot in the j th sub-frame is represented as where h u j,i is the single-path Rician channel coefficient of the u th terminal in the i th slot of the j th sub-frame. The channel coefficient can be denoted by h u j,i = l u · g u · e jφ u j,i , where l u denotes the large-scale fading coefficient, and g u denotes the small-scale fading coefficient that follows log-normal distribution with the amplitude attenuation mean A u and the deviation σ 2 , and φ u j,i denotes the phase shift that follows uniform distribution in [0, 2π). W j,i denotes the white Gaussian noise matrix in which each element is white Gaussian noise with zero mean and variance of σ 2 .
The k th (k ∈ [1, . . . , L RA pkt ]) received symbol in the i th (i = 0, 1, . . . , L) slot in the j th sub-frame can be expressed as where c pc u,i represents the pre-code coefficient in the i th slot that is randomly selected by the u th terminal.

IV. MULTIUSER DETECTION SCHEME FOR RPC
In this section, the preamble and the pre-coded sequence detection and parameter estimation are then presented. Then, the MMSE-SIC algorithm that is used to resolve multiple superimposed packets in the PRC-RA system is depicted.

A. PREAMBLE AND PRE-CODING SEQUENCE DETECTION
In this scheme, when a frame signal is received, the preamble detector at the gateway station can identify the adopted multilevel complex sequence and estimate channel coefficients of the active users. By correlating local preambles with the received preambles signal, the correlation value in the i th slot in j th sub-frame can be expressed as where Y j,i τ : τ + L RA pre − 1 accounts for the preamble vector of length L RA pre extracted from y j,i . τ = 1, 2, . . . , τ max denotes the indices of possible offsets of symbols, and τ max denotes the maximum possible offset. By (10), the preamble and pre-coding sequence of the user u th in j th sub-frame can be successively detected. We assume that the pre-coding sequence of the u th user detected by receiver is expressed as C u = [c u,1 , c u,2 , . . . , c u,L ]. A preamble is deemed as active if the correlative value satisfies I pre j,i (τ )/L RA pre > γ pre , where γ pre is a predefined threshold about preamble detection, which is determined by a false alarm probability.
Because the power levels chosen by users in a sub-frame are different, we should decode preambles by using SIC. By detecting the power level of each user in the sub-frame, theK j users in j th sub-frame are listed in descending order according to power values. Next, we assume the signal of the user u th with the largest power level w p u is detected, which would be further detected by using the advanced multi-user detection (MUD) technique.
By utilizing correlation values of L slots of the j th sub-frame, the estimated equivalent channel parameters are expressed as,ĥ u j = [ĥ u j,1 ,ĥ u j,2 , . . . ,ĥ u j,L ].
By executing preamble detection in the above j th sub-frame, the equivalent channel coefficient vector and timing offset VOLUME 8, 2020 of the u th user in the j th sub-frame is obtained. The channel coefficient in the i th slot of j th sub-frame is also estimated, it can be denoted as [27], By executing preamble detection in the above j th sub-frame, the equivalent channel coefficient vector and timing offset of the u th user in the j th sub-frame is obtained. And the detected multi-level complex sequence and estimated channel coefficient will be utilized for the MUD technique of the RPC scheme, which is described in the following.

B. MMSE-SIC ALGORITHM FOR SUPERIMPOSED PACKETS
After obtaining the number of active terminals as well as estimating every user corresponding to pre-coding sequences and channel parameters in the j th sub-frame, the packets in each sub-frame can be obtained by jointly detecting L received packets in the same sub-frame. When the number of active terminals in a slot exceeds the capacity of MUD, their packets can be not decoded successfully. Thus for efficient detection, we define a maximum overload ratio θ max as the control parameter in the MAC layer, which is used to indicate which superimposed packets of active terminals can be possibly decoded with the MUD algorithm. The overload ratio θ is defined as the ratio of the number of detected active terminals in a sub-frame to the length of sub-frame (or tri-level complex sequence), i.e., θ =K j /L, whereK j denotes the number of the detected active terminals in the j th sub-frame. The θ max is defined as the maximum allowable overload ratio. When θ ≤ θ max , i.e.,K j ≤ θ max L, the MUD is carried out to decode these superimposed packets fromK j active terminals, otherwise, these packets replicas are stored, then continue to the next sub-frame.
Here we still focus on the sub-frame j th . We assume that, through preamble detection, the number of detected active terminals in the sub-frame j th isK j satisfyingK j ≤ θ max L. At the gateway station, an advanced MUD technique, such as SIC, is used to decode the data packet symbols of allK j users from the access point superimposed packets in the same slot. The matrix H j,i = [ĥ 1 j,i ,ĥ 2 j,i , . . . ,ĥ u j,i , . . . ,ĥK j,i ] T is used to represent channel matrix in the j th sub-frame. According to the user channels and the multi-level complex sequences, we can obtain the equivalent channel. The MMSE weighting matrix can be analytically calculated as Calculating the signal-to-interference-ratio (SINR) of each user, then all users in the sub-frame are listed in descending order according to SINR value. γ u,j is the SINR of the u th user in the j th sub-frame for its pre-code packets transmitted with power E l , which is given by where σ 2 is the noise power and u,j represents the cumulative interference power from u unresolved users, and E x is the energy of the transmitting signal, w u,MMSE is the u th row vector of the MMSE weighting matrix above. We assume the u th user has the highest SINR, and then the k th symbol of u th user data packet can be estimated bŷ We assume that the satellite employs SIC to iteratively recover each user's packet. For a given iteration of the SIC process, the satellite first checks if any packet in any slot can be successfully decoded. In this work, we consider that precoded packets could be successfully decoded if the received SINR exceeds a threshold γ th . Hence, once the user's precoded packets are decoded, the interference caused by that this user can be completely removed. This in turn increases the SINR of the remaining packets in the following iterations. The process is repeated until all packets are recovered or a maximum number of iterations N max iter is reached. Calculating the SINR of each user in the j th sub-frame by using After demodulating, channel decoding, and CRC checking are successfully done, the packet signal is reconstructed and its effect is canceled from the received signal. Then the next user's packet signal is detected, and so on until signals of all K users are detected. The interference signal with maximum SINR value is cancelled from the total receiving y j.i , and the its channel vector h u,j is removed from channel matrix H j .
where N iter is iteration index. Then receiver increase the iteration counter as N iter =N iter +1. When none of PHY replica is newly detected or canceled or the maximum number of iterations N max iter is reached, receiver would stop SIC detect in this sub-frame and detect next sub-frame. The final detected signal components are cancelled from the received signal during each stage as shown in Fig. 4 In the proposed RPC-SA scheme, a larger L can lead to a larger θ, that is, the MUD technique can decode more superimposed packets in a sub-frame. This scheme can achieve a very high multi-packet reception capacity. But a larger L can also lead to larger detection complexity. For example, the length and number of preamble sequences shall be required to be larger and more to meet the accuracy of preamble detection and parameter estimation. Thus in practical 221154 VOLUME 8, 2020 application, L is often selected according to the trade-off of the requirement of overload transmission and the complexity of detection. This conclusion is also verified in [25], in which the length of tri-level complex sequences is set as 4,6,8 and 16. It can conclude that when the length of sequences is larger than 16, the gain in user overloading performance tends to be small, and user overloading performance with different sequences is nearly the same. Since longer sub-frames can cause larger delays, we suggest that the length of the tri-level complex sequence is selected as 4,6,8 in our scheme, in which there is a tradeoff between computational complexity and performance.

V. RPC-CRDSA SCHEME
In this section, we will further apply the proposed RPC into some advanced RA schemes, such as the CRDSA scheme, which generates the RPC-CRDSA scheme.
In the RPC-CRDSA scheme, each active user firstly copies its packet into N rep · L pre-coded packet replicas and will transmit them in a randomly selected sub-frame. Here we only consider N rep = 2 for the convenience of analysis. It is noted that each packet replica carries the same preamble symbols and payload symbols, and each packet replica has a pointer that is used to indicate the location of sub-frames in which another packet replica is located. Fig. 5 shows a schematic diagram about the RPC-CRDSA scheme, in which we assume N a = 7 active users in the frame and M = 4 subframes for demonstration with each one being composed of L = 4 slots. Note that the number of the slot in one subframe equals the length of tri-level complex sequences. And L pre-coded packets of a user in a sub-frame are demonstrated in different colors and types, and the preambles in the grid. By numbering these sub-frame as j th = 1, . . . , 4, we may have K 1 = 5, K 2 = 3, K 3 = 3, and K 4 = 3 active users in corresponding sub-frames, respectively. Every user occupies two sub-frames to transmit its twin-sub-frame replicas in total. Taking user #1 as an example, it has randomly selected the 1 th and 3 th sub-frame, which user #1 pre-codes its packet into L pre-coded packets by randomly selecting a tri-level complex sequence from the pre-defined code set. The lower half of the diagram demonstrates slots 2 th of the 2 th subframe, where the PHY replicas of terminals #2, #4 and #7 are active in the second slot of the second sub-frame. At the gateway station, the MUD is carried out sub-frame by sub-frame within a frame. For any sub-frame j th , firstly, the preamble and pre-coding sequence detection are carried out to determine the number of active users in the sub-frame j th as well as their selected pre-coding sequence. Then the parameter estimation is performed to estimate the channel coefficients of each active user. IfK j , the number of detected active users in the sub-frame j th , satisfiesK j ≤ θ max L, the MUD detector is performed to decode their superimposed pre-coded packet replicas. The demodulator traverses all the sub-frame N max iter times to decode packet replicas since the iterative SIC processing can allow more pre-coded packet replicas to be decoded. Once a pre-coded packet replica is successfully decoded, its another pre-coded packet replica is removed by the SIC. The RPC-CRDSA scheme has outstanding advantages since the iterative SIC processing can allow more pre-coded packet replicas can be recovered. The detailed processing flow of the demodulator for the RPC-CRDSA protocol is presented in Algorithm 1.

A. COMPUTATIONAL COMPLEXITY
Compared to typical CRDSA-like schemes, the complexity of the proposed RPC scheme mainly resides in two aspects, which are the preamble detection and the MMSE-SIC detector. On the one hand, it is necessary for the RPC scheme to estimate the channel and to identify different code sequences that have been randomly selected by different IoT devices. Therefore, similar to the CRDSA scheme, the complexity of preamble detection of the proposed scheme is proportional to the size of the preamble set. On the other hand, the complexity mainly comes from the MMSE-SIC calculations at the receiver with the maximum decodable number of packets in a sub-frame. According to the literature [28], [29], the complexity of MMSE-SIC detector can be expressed as O(K 3 max ), whereK max is defined as the maximum decodable number of connections overall withK max ≤ θ max L. To further reduce the complexity of the MMSE-SIC detector, some low-complexity MMSE-SIC detection techniques could also be exploited in the RPC scheme [30]- [31]. Besides, the complexity of SIC for each replica of the proposed scheme is just the same as that Algorithm 1 RPC-CRDSA Demodulator Initialization: Initialize the number of time slot in a frame N slot . Initialize the pre-code set and the length of pre-code L. Initialize the number of sub-frame in a frame M Initialize a maximum overload ratio θ max . 1: repeat 2: for Each sub-frame j ∈ [1, . . . , M ] do 3: Estimate the number of packet replicasK in subframe j with preamble detection; 4: ifK ≤ θ max L then 5: Order all devices' SINR and perform MMSE-SIC for theK devices; 6: for Each sensor deviceû ∈ [1, . . . ,K ] do 7: Estimate its pre-code C u and its channel coefficientĥ u j as Eq.(11)∼(13), respectively; 8: for Each symbol k ∈ [1, . . . , L RA pkt ] do 9: Estimate symbolŜ u (k) as Eq. (16) ∼ Eq.(17); 10: Decode these packet replicas. If the decoding is successful, the IC technique is performed; 11: end for 12: end for 13: else 14: continue the next sub-frame; 15: end if 16: end for 17: until A maximum iterative time N max iter has been reached or none of packet replicas can be decoded. Output: Payload bits of successfully decoded sensor devices.
of CRDSA-like schemes, and it grows with the achievable throughput and the average number of packet replicas of each device.

VI. PERFORMANCE ANALYZE
In this section, we first analyze the collision probabilities of both preambles and pre-coding sequences in a sub-frame, and then further derive the theoretical throughput of the RPC system.

A. PRE-CODING SEQUENCES AND PREAMBLE COLLISION PROBABILITY
The collision probability of pre-coding sequences is first analyzed. It is assumed that the number of active users in a frame is N a . It is easy to obtain the probability that a packet p u with two pre-coded replicas exist in a given sub-frame j th from the set of M sub-frames available in a frame. For RPC-CRDSA, the probability can be computed as For RPC-SA, the probability is p u = 1/M since one packet exists in a given sub-frame j th from the set of M sub-frames. We assumed that the sub-frames are selected randomly with uniform distribution and never selected twice the same subframe. By focusing in the j th sub-frame occupied by at least one user, the probability that given G there exists K − 1 packets interfering with reference packet (i.e., K packets in total in a given sub-frame) is expressed as, The preambles set and pre-coding sequence set consist of V preamble and pre-coding sequences, respectively. When two or more terminals have selected the same pre-coding sequence with the existing one from the pre-defining code set, the preamble and the pre-coding sequence collisions will occur. The probability that a pre-coding sequence collision occurs among the K devices in the j th sub-frame is given as The analysis method of preamble collision probability is similar to that of the pre-coding sequence collision probability. Since the differential delay among user terminals is uniformly distributed between [1, τ max ], the total number of combinations of preambles and differential delay is V tot = V τ max . The probability that a preamble collision occurs among the K pre-coded packets in the j th is given as

B. THROUGHPUT ANALYSIS
In this section, firstly, the throughput of RPC-SA is derived. Then an upper bound of throughput of RPC-CRDSA is derived.

1) THROUGHPUT ANALYSIS OF RPC-SA
We assume that the number of the generation of packets follows a Poisson distribution. The probability of generating K packets in the period t is presented as, where λ is the expected number of packets generated in a unit of time. The duration of a packet is defined as τ the same as the duration of a slot. The traffic G is represented as 221156 VOLUME 8, 2020 For RPC-SA, the successful transmission probability can be represented as where θ max · L is the maximum number of detectable data packets of the RPC-SA with the length of the pre-coding sequence L. And P θ max ·L−1 indicates the probability that θ max · L − 1 interfering packets arrive in the current sub-frame. The theoretical throughput of the RPC-SA can be given as

2) THROUGHPUT ANALYSIS OF RPC-CRDSA
To derive an upper bound of throughput of RPC-CRDSA, the following assumptions are made for the derivation: a) the number of active users N a should be an integer; b) the received SNR can be large enough such that the packets can be successfully decoded in PHY-layer; c) the number of preambles is large enough such that preambles collisions can not occur.
The system throughput performance T at the iteration number N iter for a given normalized load G can be derived as T (N iter |G) = G · P s (N iter |G), where P s (N iter |G) is the probability that packets can be decoded at N iter for G. The probability P s (N iter |G) can be computed as where P A s and P B s denote the probabilities that the replicas A and B in two sub-frames of the same pre-coded packets can be decoded respectively and P A s = P B s because of symmetry. The upper bound of P A s can be represented as where P A s,1 (G) represents the probability that the replica A of pre-coded packets can be directly recovered at N iter , and P A s,2 (N iter − 1|G) represents the probability that the replica A of pre-coded packets can be recovered at N iter in a given subframe after some pre-coded packets are erased by SIC techniques, because these erased pre-coded packets have been recoverd at N iter − 1.
The P A s,1 (G) and P A s,2 (N iter −1|G) can be derived as follows. Firstly, the probability that I interfering pre-coded packets exist in a given sub-frame j th can be regared as a binomial distribution where I pre-coded packets exist in the sub-frame j th and the remaining N a − 1 − I pre-coded packets dose not exist in the sub-frame j th , i.e., The probability P A s,1 (G) can be represented as where θ max · L − 1 represents the maximum number of interfering pre-coded packets that can be successfully recovered in a sub-frame. The P A s,2 (G) can be representedd as where N a − 1 represents the maximum possible number of interfering pre-coded packets that exist in a sub-frame, and the K represents the number of pre-coded packets that are erased by SIC, i.e., the K pre-coded packets are recovered at N iter − 1. Moreover, the probability P B s denotets that the replicas of the I interfering pre-coded packets are recovered. By utilizing P A s = P B s , the equation (31) can be re-expressed as It is worth noting that an initial value in equation (28) is P A s (0|G) = 0. Let us return to the equation (28), the first iteration denotes no SIC processing, the second iteration denotes one SIC processing until the N max iter can be attained. The equation (28) denotes an upper bound of throughput performance because the decoding error and deadlock situation and preamble collision are not considered.

A. SIMULATION PARAMETERS
In the simulation, the PHY and MAC layers are jointly studied in the MATLAB platform. We consider the open-loop transmission, i.e., no retransmission mechanism. The 3GPP turbo coding with a code rate of 1/2 and Quadrature Phase Shift Keying (QPSK) modulation are employed in every user. And τ max denotes the maximum possible offset that is equal to 5. The number of slots in a MAC frame is N slot = 480. For the length of tri-levels complex sequence equaling 4, 6, and 8, the frame will be divided into M = 120, 80, and 60 subframes respectively, and each sub-frame consisting of L = 4, 6 and 8 slots respectively. The SNR range uniformly in dB from a minimum value of 4dB to a maximum value of 18dB by referring to [13], [20]. Besides, the normalized load G will vary from 0.1 to 2.5.
In the simulation, we assume that the satellite height is about 780 km, and the carrier frequency is 2 GHz, the total bandwidth is 10MHz, Multi-frequency TDMA (MF-TDMA) is employed, 50 sub-channels are considered, and the subbandwidth of RA system is 20KHz. The deployment of user terminals follows the uniform distribution with the coverage area of a satellite node. The small scale fading is obtained by the ITU-R M.1225 channel model A, in which the rice factor is 10dB and the maximum Doppler shift is 35 kHz. The threshold of preamble detection equals 3.2, it is normalized, which is determined by a given probability of false alarm. In the simulation, the length of a packet is 1024 bits. In our paper, the average activation probability of IoT devices in a frame duration is 0.05. The system simulation parameters are summarized in Table 1 in detail.

B. PERFORMANCE EVALUATION 1) NUMERICAL RESULTS OF PHY LAYER
In this section, we investigate the PHY-layer performance of the proposed scheme, which can allow us to utilize the PHYlayer parameters more reasonably to ensure better MAC-layer performance. Fig. 6 shows the packet error rate (PER) versus SNR when the overload ratios are θ = 150%, 175%,200% for L = 4, θ = 150%, 200%, 250% for L = 6, and θ = 150%, 200%,300% for L = 8 respectively, which can be utilized to indicate the decoding capacity of MUD in PHY-layer. From Fig. 6, we can see that, when L = 4, the PERs attain the target PER of 10 −2 at SNRs of 12.0dB and 16.0dB for θ = 150% and 175%, respectively, but the PER can not attain the target PER of 10 −2 for θ = 200% because of the large multi-user interference. When L = 6, the PERs can attain 10 −2 at SNRs of 11.0dB and 16.5dB for θ = 150% and 200%, respectively, however the PER can not attain 10 −2 for θ = 250% because of the large interference. When L = 8, the PERs can attain the target PER of 10 −2 at SNRs of 9.0dB, 13.2dB and 17.6dB for θ = 150%, 200% and 300% respectively. This provides a reference for the setting of the maximum overload ratio θ max in the MAC layer. Fig. 7 shows the PER versus SNR with and without code sequence collision at different overload ratios θ when L = 4, which is utilized to demonstrate the effect of pre-coding sequence collision on the performance of the MUD technique. We can see that the PERs with code sequence collision are worse than that of PERs without code sequence collision when θ = 150% and θ = 175%, even with sequence collision, its PER can still reach a target PER of 10 −2 though the required SNR is higher. Therefore, the effect of code sequence collision on the performance of MUD can be  ignored if only the SNR is large enough, and this conclusion is also verified in [25]. Fig. 8 shows the number of users in a subframe versus the probability of miss-detection the mean square error(MSE) of channel estimation at different preamble length L RA pre for L = 4. It is noted that the MSE is defined as the mean error of the estimated channel coefficient and the actual channel coefficient. From Fig. 8, it can be seen that the probability of miss-detection and the MSE of channel estimation can decrease as the preamble length increases. We can also see that the probability of miss-detection and the MSE of channel estimation can increase as the number of users in a subframe increases, which can be attributed to the fact that the more superimposed packets lead to the larger interference among users. We can also see that in the range of 2 to 7 users in a subframe, the probabilities of miss-detection are less than 10 −2 , and in the range of 2 to 16 users in a subframe, the MSEs of channel estimation are less than 10 −2 when L RA pre = 351. This suggests that the preamble detection and channel estimation are accurate enough to achieve the MUD. If a lower probability of miss-detection or MSE of channel estimation is required, the preamble length can be further enlarged.

2) NUMERICAL RESULTS OF MAC LAYER
In this section, we investigate the MAC-layer performance of the proposed scheme, and we also analyze the effect of MAClayer parameters on the system performance of the proposed scheme, and we also show the performance improvement compared to traditional ones in the MAC layer. Poisson traffic model is utilized in the simulation for both schemes without loss of generality. In the MAC-layer simulation, we take into account that the SNR can be large enough, and the maximum overload ratios are set to be θ max = 175%, 200%, 300% for L = 4, 6, 8, respectively. From Fig. 9, we can see that the comparison between theoretical and simulated preamble collision probabilities at different the number of preambles for RPC-SA with L = 4. The number of preambles in a preamble set can be set to be V = 64, 128, 256, therefore total number of preambles is V tot = 320, 640, 1024. With the increase in normalized load, all the collision probabilities increase as well since the number of superimposed packets is supposed to grow in expectation in each sub-frame, and simulated results are consistent with the theoretical ones. The small difference between the theoretical and simulated ones may be caused by the approximation in (21). It can be seen that the more the number of preambles in a preamble set, the smaller the collision probability. The probabilities of preamble collision are less than 10 −1 when normalized load equals 2.5 with V = 128, which indicate the probability of preamble collision almost can be ignored when L = 4 with V = 128. If a lower probability of preamble  collision is required, the number of preamble V in the predefined set could be further augmented. Fig. 10 shows the theoretical and simulated throughput of PRC-CRDSA when L = 4 versus load at different maximum iterative times N max iter . From Fig.10, we can see that the simulated throughputs are consistent with the theoretical ones. It can be also seen from Fig.10 that the improvement of throughput performance is gradually diminishing as the N max iter increases, and the choice of the iterative times N max iter = 15 appear to reach the convergence.
For a fair comparison with our proposed RPC-SA and RPC-CRDSA with different length of pre-coding sequences, we consider some typical RA scheme, such as SA [6], CRDSA [7], IRSA [10], and recent works NOSA in [18].  6, 8, SA, CRDSA and IRSA, respectively. The preambles collision is not considered. We can see that the peak normalized throughputs of RPC-SA with L = 4, 6 and 8 are about 0.95, 1.26, and 1.83 bits/symbol, respectively, which are about 163.8%, 250.0%, and 408.3% greater than that of SA, 82.7%, 142.3%, and 251.9% greater than that of CRDSA, 37.7%, 82.6%, and 165.2% greater than that of IRSA, respectively. The peak throughputs of RPC-CRDSA with L = 4, 6 and 8 are about 1.19, 1.29, 1.87 bits/symbol, respectively, which are about 230.6%, 255.5%, 419.4% greater than that of SA, 128.9%, 146.1%, 259.6% greater than that of CRDSA, 72.5%, 86.9%, 171.0% greater than that of IRSA, respectively. From Fig. 11, we can see that the peak normalized throughputs of the irregular NOSA with SNR uniformly distributed within [4,18]dB is greater than that of RPC-SA and RPC-CRDSA with L = 4, 6, and less than that RPC-SA and RPC-CRDSA with L = 8. It can be also seen that the throughputs of RPC-CRDSA protocol increase linearly as the loads when the loads are less than their critical points, which denotes that the packet loss is almost ignorable in the linear region. The peak normalized throughputs of RPC-SA and RPC-CRDSA all increase as L increases. This denotes that the larger L can lead to better performance, but can also lead to the larger complexity of detection.
In Fig. 12, we compare the performance in terms of PLR among these schemes, it can be seen that, at a target PLR of 10 −2 , loads of RPC-SA with L = 4, 6 and 8 are approximately 0.6, 1.0, and 1.6 bits/symbol, respectively; and loads of RPC-CRDSA with L = 4, 6 and 8 are approximately 1.2, 1.3 and 1.8 bits/symbol, respectively. For a target PLR of 10 −2 , RPC-SA exhibits a greater advantage at high normalized loads compared to traditional and RPC-CRDSA schemes. However, in the waterfall regions, RPC-CRDSA exhibits a greater advantage compared to traditional ones, and RPC-CRDSA has a steeper waterfall region.

VIII. CONCLUSION
In this article, we have proposed an RPC-RA scheme that can support more IoT devices, and the framework of the RPC-RA system and the structure of the frame have also been presented for the satellite-enabled IoT. We have applied the RPC scheme to the CRDSA, which generates the RPC-CRDSA scheme, and the throughput of RPC-SA and RPC-CRDSA schemes have also been derived. The performance of the RPC-RA scheme has been evaluated via theoretical analysis and computer simulation, which shows that the RPC-RA scheme largely outperforms traditional schemes, thus the proposed scheme can be a suitable access scheme in IoToriented satellite networks. The proposed RPC-RA scheme overcomes the bottleneck of traditional schemes, which paves into a novel RA method for the satellite-enabled IoT and terrestrial networks. Besides, the throughput of the proposed scheme can be further improved by combining IRSA and considering the degree distribution optimization, which will be left as a future study topic.