1 Introduction

LPWAN is an emerging network technology for IoT and M2M applications such as smart grid, cities, industry 4.0 and Internet of vehicular (IoV), which suitable for long-rang performance and cellular Machine-to-Machine (M2M) networks. Traditional technologies such as Short-range technologies like Bluetooth, Zigbee and Wi-Fi are not suitable for applications that require long range. therefore, cellular communication is used for long range connectivity. However, it consumes high-power consumption for long range IoT network [1]. Thus, LPWAN technologies develop to be able to provide a global IoT anywhere and anytime to interacts with any kind of environment. Issues such as range, penetrability of thick objects, long battery life, security and scalability all will be adequate by the LPWAN technologies. To support the future growth and development of (IoT), the mobile industry together with the third Generation Partnership Project (3GPP) has set standards for emerging technologies [2]. These standards are Long-Term Evolution for Machines (LTE-M) and NB-IoT for low power wide area network applications which also are refereed as mobile IoT.

They are designed for licensed spectrum and to support massive number of devices, low power consumption, long range, low cost and security. With variety of low power wide area IoT applications are emerging and their requirements are also differing from each other, a single technology cannot address the requirements of all these applications. For these reasons, the two complementary licensed 3GPP standards: LTE-M and NB-IoT are used. Both standards are built on the LTE as the backbone of these standards. NB-IoT is a new standard known as massive LPWAN to support wide range and low data rate for IoT applications developed by 3GPP release 13 [3]. it operates in licensed spectrum means existing cellular spectrum. It has several characteristics such as ultra-low power consumption, wide coverage and massive connection [4]. Also, NB-IoT has a several novel characteristics for LPWAN deployment to overcome shortcomings such as poor security, poor reliability and high level of operational and maintenance costs. NB-IoT is able to be loaded by major mobile equipment and module manufacturers and indeed it will be existing to be adaptable with 2G, 3G, 4G and 5G cellular networks [5].

2 Related Works

In this section, we present some related literature that are used for network optimization and its corresponding performance analysis of cooperative schemes used in NB-IoT in term of BER, energy efficiency, delay transmission, throughput and probability of the message loss. In [6], the authors proposed analyzed NB-IoT uplink repetition number and bandwidth allocation. they presented analytic expressions in term of SNR, bandwidth, and energy per transmission bit that can be derived by Shannon theorem in order to illustrate the influence of the repetition number and bandwidth allocation to different User Equipment (UEs). Moreover, an algorithm for link adaptation was proposed to exploit resource unit (RU) number, bandwidth and repetition. Their numerical and simulation results show that reducing bandwidth and performing repetition could enhance the coverage. However, this work did not determine the actual impact of channel parameters as well as NB-IoT UE impairments [7, 8].

In [9, 10], the authors presented the idea of using number of repetitions in narrowband physical uplink shared channel (NPDSCH) to enhance coverage at weak signal area to improve signal quality. Performance of NB-IoT system for NPDSCH is evaluated in three operation modes (standalone, guard band and in-band modes). When the number of repetitions increases, a better performance can be achieved where both standalone and guard band modes perform better performance compared to in-band mode. In [11], the authors investigated an extended NB-IoT architecture and the adoption of cooperative relaying paradigm. It determines an optimal relay selection algorithm that minimizes the overall power consumed in a NB-IoT cell. Also, they proposed a greedy algorithm which reaches the same aim with a lower computational complexity. System level simulations has been clearly shown to demonstrate that cooperative relaying can boost the energy saving up to 30%. and the greedy approach achieves only 10% for the average overall energy consumption which is higher than the optimal strategy.

In [12], the authors determine in details an opportunistic crowd-sensing application scenario in which traffic from a large number of connected sensors is transmitted over NB-IoT technology. They have presented analytical models across both urban and rural deployments. Moving vehicles assist in relaying sensor traffic to the NB-IoT BS was addressed to resolve difficulty of baseline infrastructure to handle the massive amounts of short messages from thousands of battery-powered IoT devices [13]. The aim of their work is to bring significant improvements to both network-centric as well as device-centric performance indicators. Thus, a smart alternative to static NB-IoT deployments is offered. The simulation results showed the effects of vehicle-based relays on network performance, expressed in terms of connection reliability, transmission latency and communication energy efficiency.

In [14], the authors presented a cooperative communication as a proposed scheme to increase the throughput and the transmission rate. It contains two terminals (terminal A and terminal B) and destination. There is a collaborate between two terminals in order to improve performance. They used OFDMA as a multiple access and channel is AWGN. A decoding scheme is proposed as well. In [15], the authors discussed solutions, challenges and future work in cooperative communications in M2M. The authors in [8] discussed the design of cooperative Device-to-Device (D2D) network by utilizing the advantages of NB-IoT. A relay-based cooperative communication structure was proposed for D2D communication network performance enhancement so that the information, can be diffused effectivity and consistently in NB-IoT.

In [16] it considered the scenario deployed of NB-IoT, where the direct link quality between user equipment (UE) and serving base-station (BS) is not fulfilling the quality of service (QoS) requirements for transmission of vigorous sensing data. Consequently, device-to-device (D2D) communication is implemented as a network extension to NB-IoT systems. The paper derived a model an opportunistic D2D communication schedule with set of UE relays with dynamic programming-based algorithm to optimized expected delivery ratio (EDR) and Expected End-to-End Delay (EED), respectively. Experimental and numerical results determine that the proposed algorithm enhances the system performance benchmarked with other related counterpart algorithms. The EDR and EED have been improved using deterministic programming-based algorithm in [11] where simulation is conducted and results showed that the deterministic method gives better performance with a 10% enhancement in EDR and overcomes the additional delay.

In [17] a repetition-dominated system model is developed and the link-level coverage performance of NB-IoT uplink systems is evaluated. In the model the channel estimation accuracy is used to control signal repetition where the coverage performance is examined. Narrowband demodulation reference signal supported channel approximation and frequency-domain equalization are performed at the receiver side. For example, the NB-IoT uplink resource grid mapping of NPUSCH format-1 including NDMRS, where a resource unit (RU), contains 12 subcarriers for 15 kHz subcarrier spacing and only one subcarrier for 3.75 subcarrier spacing. Link-level extensive experimental are conducted to confirm the uplink coverage performance for both single-tone and multitone transmissions (Fig. 1).

Fig. 1
figure 1

Narrowband demodulation reference signal (NDMRS)

In [18] the authors showed the analysis of symbol error probability average performance for decode and forward relaying in M2M system over N-Nakagami fading channels. The system modeled as multiple mobile station cooperation, namely, mobile destination (MD), mobile relay (MR), and mobile source (MS), as illustrated in Fig. 2. The nodes operate in half-duplex mode, which are equipped with a single pair of transmitter and receiver antennas. The proposed Moment Generating Function (MGF) algorithm is used to achieve the error probability for different modulation. A Monte Carlo simulation using MATLAB and MAPLE is exploited to validate the system model, where the parameters of fading coefficient, number of cascaded components, relative geometrical gain, power-allocation parameter, and number of mobile relays have been used in the simulation [19].

Fig. 2
figure 2

Decode-and-forward (DF) relaying M2M cooperative system model

3 System Model

In NB-IoT both uplink (UL) and downlink (DL) allocated by 180 kHz bandwidth. During radio resource control (RRC), 3GPP provides three coverage enhancement (CE) levels where each UE can select a suitable CE level base on its link quality [20]. A user equipment (UE) with worse link quality has to select a higher CE level and use more repetitions to compensate the weak signal quality and attenuation. To transmit preamble during random access procedure, UEs used Narrowband physical random-access channel (NPRACH). The DL and UL data packet are carried by NPDSCH and NPUSCH, respectively. NPUSCH may support single-tone and multi-tone (i.e., 3, 6, and 12 tones are supported) transmissions. Each tone occupies 15 kHz bandwidth. A base station (i.e., eNB) uses a downlink control information (DCI) to specify the resource blocks allocation in NB-IoT.

Resource allocation in cooperative process is identified by uplink (UL) DCI and downlink (DL) DCI, where both are carried in NPDCCH. In each NPDCCH, a maximum of 8 DCI scan be transported, and each UE can receive up to one DCI. NPDCCH period is the time interval between two successive NPDCCH opportunities. Each UE will be assigned by a UE-specific NPDCCH period based on the chosen CE level during repetition cooperative connection establishment procedure [21]. Repetition process is used in the paper to enhance coverage and throughput, however in mean time increase the number of repetitions demands high bandwidth. So, an enhanced cooperative relay with repetition is proposed to reduce the demanded bandwidth.

In order to evaluate the performance of enhancing physical layer for NB-IoT when using repetition cooperative process (RCP), the system-level simulator has been developed to investigate the performance of the model. Figure 3 illustrates the simulation scenario topology model, where there are two end-IoT devices and one base station where radiation is uplink. One IoT device is in active mode that contains both user’s data [22, 23]. Each user needs to fetch its own data according to its distance from BS. Moreover, Strong and weak signal user is simulated as near and far user depending on end-user position in the BS cell. The second IoT device in idle mode and act as cooperative-relay to help far UE to send the data. The baseband waveform passes through frequency-selective fading channel and Additive White Gaussian Noise (AWGN) with − 174 dBm/Hz [23, 24].

Fig. 3
figure 3

Proposed repetition cooperative process (RCP) system model

4 Repetition Cooperative Process in NB-IOT

Repetition Cooperative Process (RCP) is a new technique developed to achieve enhanced coverage with low complexity in NB-IoT [25, 26]. Also, Repetition of the transmission can be applied for both data transmission and signal transmission control. In NB-IoT systems, before each NPUSCH transmission, related to control information like RU number, selected Modulation and Coding Scheme (MCS) and repetition, should first be transmitted through a Narrowband Physical Downlink Control Channel (NPDCCH). In the RCP, the modulation coding scheme (MCS) used for a UE in downlink can be determined based on the CE level chosen by the UE and the power header room (PHR) reported by the UE during initial random access [27]. In particular, repetition for NB-IoT uplink can only be selected among {1; 2; 4; 8; 16; 32; 64; 128}. This number of repetitions indicates repetition number of the same transmission block as shown in Fig. 4 [28]. subframe n is the last subframe in which the NPDCCH is transmitted and is determined from the starting subframe of NPDCCH transmission and the downlink control information (DCI) subframe repetition number field in the corresponding DCI.

Fig. 4
figure 4

Repetition cooperative process (RCP)

NPUSCH is transmitted using one or more resource units (RUs) and each of these RUs are repeated up to 128 times to enhance coverage and to meet requirement of ultra-low end IoT. RU is a smallest mapping unit in NPUSCH which computed as follows [29, 30]:

$$ {\text{RU}}\,{\text{in}}\,{\text{time}}\,{\text{domain}} = 7 \times N_{slots}^{UL} $$
(1)

where \(N_{slots}^{UL}\) is Number of SC-FDMA symbols in an uplink slot in time domain. Equation 2 shows the frequency domain of RU formula in where \(N_{sc}^{RU}\) is consecutive subcarriers in the frequency domain [30] while Eq. (3) depicts Number of repetition of identical slots for NPUSCH, \(M_{identical}^{NPUSCH} \) with respect to \(N_{sc}^{RU}\)

$$ {\text{RU}}\,{\text{in}}\,{\text{frequency}}\,{\text{domain}} = N_{sc}^{RU} $$
(2)
$$ M_{identical}^{NPUSCH} = \left\{ {\begin{array}{*{20}l} {\min \left( {\left\lceil {M_{rep}^{NPUSCH} /2,4} \right\rceil } \right) ,} \hfill & {{\text{for}}\quad N_{sc}^{RU} > 1} \hfill \\ {1,} \hfill & { {\text{for}}\quad N_{sc}^{RU} = 1} \hfill \\ \end{array} } \right. $$
(3)

The NB-IoT Uplink Shared Channel (UL-SCH) may carries Common Control Channel (CCCH), Dedicated Control Channel (DCCH) or Dedicated Traffic Channel (DTCH), to be mapped to the NPUSCH physical channel [31, 32]. The NPUSCH itself can be mapped to one RU or more. When number of repetitions increases the total duration will increase. In other words, total duration changes with number of repetitions. Number of consecutive slots and repetitions are identical in NPUSCH. Figure 5 shows the repetition pattern with \(N_{Rep}\) = 4. Table 1 shows value for \(N_{Rep}\) which depends on \(I_{Rep}\).

Fig. 5
figure 5

Repetition pattern with \(N_{Rep}\) = 4

Table 1 Value of repetition number indicator (\(I_{Rep} )\) Number of repetitions \(N_{Rep}\) for NPUSCH

In NB-IoT uplink communication, total duration for transmitting a block of data is given as [33]:

$$ {\text{Total}}\,{\text{duration}} = N_{RU} \times N_{slots}^{UL} \times M_{identical}^{NPUSCH} $$
(4)

where \(N_{RU}\) is the number of scheduled UL resource units for NB-IoT, \(N_{slots}^{UL}\) is the number of consecutive slots in UL resource unit (RU). In the first case, each transport block is transmitted over \(N_{RU}\) = 2 and each of these NRU consists of two UL slots determined by \(N_{slots}^{UL}\). After mapping to \(N_{slots}\), these slots will be repeated \(M_{identical}^{NPUSCH}\) = 2 times, which is proposed number of consecutive subcarriers. For the second case, when \(N_{sc}^{RU}\) = 1 then \(M_{identical}^{NPUSCH}\) = 1 and integrates with \(N_{slots}\) = 1 results in the transmission pattern where each block is transmitted without internal repetitions [34]. In all cases, the scrambling sequence is reset at the start of codeword (transmission or retransmission).

5 Simulation Setup

Flowchart in Fig. 6 shows sequence of calculations during simulation running time. First, input simulation parameters such as SINR with repetition, cooperative relay and NB-IoT bandwidth. We arbitrary set number of repetitions to be 4, 16 and 24 modulated with QPSK. Then, establish uplink channel to connect IoT devices with eNB. NPUSCH is the physical channel that used for uplink to transfer data from UE to eNB [35]. If repetition used with a cooperative relay, then calculate free-space path loss, received power and SINR for cooperative relay. Next, calculate the BLER, data rate, throughput, spectral efficiency and transmission delay [36]. on the hand, if repetition used with SINR, calculate BLER, data rate, throughput, spectral efficiency and transmission delay. In both cases plot the results accordingly.

Fig. 6
figure 6

The simulation process for the proposed cooperative communication scheme for physical uplink shared channel in NB-IoT

In order to evaluate the performance of enhancing the physical layer for NB-IoT by using number of repetition with/without a cooperative relay, the system-level simulator has been implemented to inspect on the performance of this communication. The detailed system-level simulation chain and parameters are illustrated as in Fig. 7.

Fig. 7
figure 7

System-level simulator chain

The simulation models of our proposed contribution are to implement number of repetition (1, 16 and 32) with/without a cooperative relay and to do comparison between them to show when using the repetition only, number of repetition increase, the performance of the overall network will increase but there is a threshold value for number of repetition when it increased than this value the performance will degrade. Moreover, when using repetition with a cooperative relay, fewer number of repetitions will give the high performance of the network.

We calculate the performance of overall network in NPUSCH only. The performance that we calculated are block error rate, data rate, throughput, spectral efficiency and delay transmission [37, 38]. The system of NPUSCH built in the transmitter and receiver sides and the signal will pass through noisy channel (AWGN and fading channel). According to specification and features that specified by 3GPP for release 13 and 14, NB-IoT is simulated by listed parameters in Table 2.

Table 2 System simulation parameters assumptions

In order to evaluate the performance of enhancing the physical layer for NB-IoT by using number of repetition with/without a cooperative relay, the system-level simulator has been implemented to inspect on the performance of this communication [39, 40]. In this study, we confined in NPUSCH only and number of repetitions that used are 1, 16 and 32. We calculate the performance of repetition with cooperative relay communications in NB-IoT evaluated to improve Generate Block Error Rate (BLER), spectrum efficiency, delay, throughput, data rate and signal-to-interference-pulse-noise ratio. Random access—Radio Network Temporary Identifier range, specifies the range of RNTI values that are assumed to be RA -RNTIs when decoding NPUSCH transmissions. This parameter is needed to unambiguously decode the contents of DCI Format 1A decoded as [41]:

  • Default: Max = 0

  • Min = 0

  • Range: 0–60 (0 × 003C)

Noted that zero is not a valid RA RNTI value but is used to indicate that there are no RA RNTI contained in the LTE signal when both the Min and Max values are set to 0. Any NPUSCH whose CRC is scrambled with an RNTI will be demodulated as a C-RNTI NPUSCH. The cell-RNTI (C-RNTI) has a 16-bit numeric value [42,43,44].

6 Simulation Results and Discussion

Simulation runs with two different scenarios, repetition in NB-IoT channels only, and repetition for cooperative relay in NB-IoT uplink channels. The results and discussion are illustrated according to evaluation metrics as follows;

6.1 Data Rate

Repetition with cooperative relay utilized to be a trade-off between data rate, throughput and BLER. The following flowchart Fig. 8 explains an NB-IoT NPUSCH BLER. Data rate (DR) metric shows the average number of bits per unit time unit (bits/second). As shown in the Figs. 9 and 10, if Number of repetition decreases, the data rate increases causing BLER performance degradation as it significantly increases. On the other hand, when using repetition with cooperative relay, BLER improved where data rate increased by = 60%. Note that data rate for SINR in the range (from − 20 to − 10 dB) has almost the same values due to condition of AMI-CQI thresholds.

Fig. 8
figure 8

Generate NB-IoT NPUSCH block error rate (BLER)

Fig. 9
figure 9

Data rate for repetition without cooperative relay

Fig. 10
figure 10

Data rate for repetition with cooperative relay

6.2 System Throughput

System throughput which is defined as the total number of bits correctly received by all users. Mathematical expression of Throughput (TH) is given as \({\text{TH}} = \mathop \sum \nolimits_{n = 1}^{n} \left( {{\text{DR}}\left( 1 \right) + {\text{DR}}\left( 2 \right) + \cdots + {\text{DR}}\left( n \right)} \right)\) Bits/S [42]. Where Figs. 11 and 12 show Performance of NB-IoT system in terms of throughput due to repetition effect with and without using cooperative relay. In case of using repetition only, the throughput is zero when NRep = 1, which means there is no corrected received bits, thus number of repetitions must be increased. However, number of repetitions has a threshold value to avoid system throughput degradation. When NRep = 16 system throughput maximized and hence the best performance obtained. When the repetition used with cooperative relay, optimal throughput achieved with minimum repetition. The repetition with cooperative relay enhanced system throughput approximately by 74% compared to using repetition without relay.

Fig. 11
figure 11

Throughput for repetition without cooperative relay

Fig. 12
figure 12

Throughput for repetition with cooperative relay

6.3 Spectral Efficiency

Spectral Efficiency refers to the number of bits per time that can be transmitted over a given bandwidth in a given system (bit/s). Figures 13 and 14 show that in case of using repetition without relay, spectral efficiency directly proportional with system throughput, there is a threshold value to achieve high spectral efficiency. The best value of spectral efficiency achieved at NRep = 16. Whereas when using repetition with a cooperative relay the best value of spectral efficiency in NRep = 1 which means in case of using repetition with cooperative relay no need to increase number of repetitions to get better spectral efficiency. Indeed, repetition with cooperative relay enhances system performance and increases spectrum efficiency, up to 33%, with a smaller number of repetitions.

Fig. 13
figure 13

Spectral efficiency for repetition without cooperative relay

Fig. 14
figure 14

Spectral efficiency for repetition with cooperative relay

6.4 Delay Transmission

System delay gives the average of the total queuing delay of all packets in the buffers at the NB-IoT eNBs. As shown in the Figs. 15 and 16 respectively, the delay transmission is directly proportional to data rate that is when the number of repetitions increases the delay transmission increases. Delay transmission has the same values when SINR in the range from − 20 to − 10 dB due to delay in the cooperative nodes. In case of using repetition with a cooperative relay, NRep = 1 results in the best result in terms of transmission latency with total improvement around 45%.

Fig. 15
figure 15

Delay transmission for repetition without cooperative relay

Fig. 16
figure 16

Delay transmission for repetition with cooperative relay

7 Conclusion

LPWAN technologies develop to be able to provide a global IoT anywhere and anytime to interacts with any kind of environment. To support the future growth and development of (IoT), extensive research has been done to resolve the bandwidth scarcity due to the huge traffic that IoT may inject to the network. In this paper, we utilize repetition with a cooperative relay scheme to enhanced system performance of NPUSCH. Performance evaluated in terms of BLER, data rate, system throughput, spectral efficiency and delay transmission. We apply number of repetition (1, 16 and 32), with and without cooperative relay, to the same signal and compare the results. We observed that in case of using repetition only, when number of repetition increase, the BLER will enhance but degrades the data rate. Additionally, there is an optimal value for repetition number to achieve better system throughput. However, when number of repetitions increase from this optimal value, it leads to degrade the network performance. Spectral efficiency is directly proportional with system throughput and number of repetitions are directly proportional with delay transmission and data rate. In case of using repetition with a cooperative relay, no need to increase number of repetitions for achieving better results. Based on the insights we have gained on enhanced NB-IoT physical layer. We found that repetition with cooperative relay results in better performance in terms of afore-mentioned metrics with minimum number of repetitions with average 23% enhancement in overall network throughput. We identified a number of issues that need to be addressed in future research such as that a several NB-IoT end device need to access the network dynamically, so implementation of multi-player scenario can improve the system throughput. Also addressing the Internet of Vehicles (IoVs) could raise many issues in cooperative relay scheme for physical uplink shared channel in NB-IoT due to the dynamic nature of the network topology, while taking into consideration communication models, power control mechanisms, delay transmission, packet scheduling and number of repetitions.