NB-IoT networks deal with end-to-end user data and in-band signaling between the nodes and functions to configure, control, and monitor the system functions and behaviors. The signaling uses a different path with specific protocols, handling processes, and entities but can transport end-to-end user data for IoT services. In contrast, the end-to-end application only transports end-to-end data.
The recommended 3GPP MTU size is 1358 bytes. The radio network protocols limit the packet sizes over the air, including radio protocol overhead, to 1600 bytes; see
Section 5.2.3. However, the recommended 3GPP MTU is smaller to avoid fragmentation in the network backbone due to the payload encryption size (multiple of 16) and the additional core transport overhead handling.
3GPP standardizes NB-IoT and, in general, the interfaces and functions of cellular technologies. Therefore, the introduction of SCHC entities to Dev-UE, RGW-eNB, and NGW-CSGN needs to be specified in the NB-IoT standard.
This document identifies the use cases of SCHC over the NB-IoT architecture.
The first use case is of the radio transmission (see
Section 5.2.1) where the Dev-UE and the RGW-eNB can use the SCHC functionalities.
The second is where the packets transmitted over the control path can also use SCHC when the transmission goes over the NGW-MME or NGW-SCEF (see
Section 5.2.2).
These two use cases are also valid for any 3GPP architecture and not only for NB-IoT. And as the 3GPP internal network is involved, they have been put in the informational part of this section.
And the third covers the SCHC over Non-IP Data Delivery (NIDD) connection or at least up to the operator network edge (see
Section 5.1.1). In this case, SCHC functionalities are available in the application layer of the Dev-UE and the Application Servers or a broker function at the edge of the operator network. NGW-PGW or NGW-SCEF transmit the packets that are Non-IP traffic, using IP tunneling or API calls. It is also possible to benefit legacy devices with SCHC by using the Non-IP transmission features of the operator network.
A Non-IP transmission refers to an L2 transport that is different from NB-IoT.
These scenarios do not modify the 3GPP architecture or any of its components. They only use the architecture as an L2 transmission.
This section specifies the use of SCHC over NIDD services of 3GPP. The NIDD services of 3GPP enable the transmission of SCHC packets compressed by the application layer. The packets can be delivered between the NGW-PGW and the Application Server or between the NGW-SCEF and the Application Server, using IP-tunnels or API calls. In both cases, as compression occurs before transmission, the network will not understand the packet, and the network does not have context information of this compression. Therefore, the network will treat the packet as Non-IP traffic and deliver it to the other side without any other protocol stack element, directly over L2.
In the two scenarios using NIDD compression, SCHC entities are located almost on top of the stack. The NB-IoT connectivity services implement SCHC in the Dev-UE, an in the Application Server. The IP tunneling scenario requires that the Application Server send the compressed packet over an IP connection terminated by the 3GPP core network. If the transmission uses the NGW-SCEF services, it is possible to utilize an API call to transfer the SCHC packets between the core network and the Application Server. Also, an IP tunnel could be established by the Application Server if negotiated with the NGW-SCEF.
+---------+ XXXXXXXXXXXXXXXXXXXXXXXX +--------+
| SCHC | XXX XXX | SCHC |
|(Non-IP) +-----XX........................XX....+--*---+(Non-IP)|
+---------+ XX +----+ XX | | +--------+
| | XX |SCEF+-------+ | | |
| | XXX 3GPP RAN & +----+ XXX +---+ UDP |
| | XXX CORE NETWORK XXX | | |
| L2 +---+XX +------------+ | +--------+
| | XX |IP TUNNELING+--+ | |
| | XXX +------------+ +---+ IP |
+---------+ XXXX XXXX | +--------+
| PHY +------+ XXXXXXXXXXXXXXXXXXXXXXX +---+ PHY |
+---------+ +--------+
Dev-UE Application
Server
These scenarios
MAY use the SCHC header compression capability to improve the transmission of IPv6 packets.
-
SCHC Context Initialization
The application layer handles the static context. Consequently, the context distribution MUST be according to the application's capabilities, perhaps utilizing IP data transmissions up to context initialization. Also, the static context delivery may use the same IP tunneling or NGW-SCEF services used later for the transport of SCHC packets.
-
SCHC Rules
For devices acting as a capillary gateway, several rules match the diversity of devices and protocols used by the devices associated with the gateway. Meanwhile, simpler devices may have predetermined protocols and fixed parameters.
-
RuleID
This scenario can dynamically set the RuleID size before the context delivery, for example, by negotiating between the applications when choosing a profile according to the type of traffic and application deployed. Transmission optimization may require only one Physical Layer transmission. SCHC overhead SHOULD NOT exceed the available number of effective bits of the smallest physical Transport Block (TB) available to optimize the transmission. The packets handled by 3GPP networks are byte-aligned. Thus, to use the smallest TB, the maximum SCHC header size is 12 bits. On the other hand, more complex NB-IoT devices (such as a capillary gateway) might require additional bits to handle the variety and multiple parameters of higher-layer protocols deployed. The configuration may be part of the agreed operation profile and content distribution. The RuleID field size may range from 2 bits, resulting in 4 rules, to an 8-bit value, yielding up to 256 rules for use by operators. A 256-rule maximum limit seems to be quite reasonable, even for a device acting as a NAT. An application may use a larger RuleID, but it should consider the byte alignment of the expected Compression Residue. In the minimum TB size case, 2 bits of RuleID leave only 6 bits available for Compression Residue.
-
SCHC MAX_PACKET_SIZE
In these scenarios, the maximum RECOMMENDED MTU size is 1358 bytes since the SCHC packets (and fragments) are traversing the whole 3GPP network infrastructure (core and radio), not only the radio as in the IP transmissions case.
-
Fragmentation
Packets larger than 1358 bytes need the SCHC fragmentation function. Since the 3GPP uses reliability functions, the No-ACK fragmentation mode MAY be enough in point-to-point connections. Nevertheless, additional considerations are described below for more complex cases.
-
Fragmentation Modes
A global service assigns a QoS to the packets, e.g., depending on the billing. Packets with very low QoS may get lost before arriving in the 3GPP radio network transmission, e.g., in between the links of a capillary gateway or due to buffer overflow handling in a backhaul connection. The use of SCHC fragmentation with the ACK-on-Error mode is RECOMMENDED to secure additional reliability on the packets transmitted with a small trade-off on further transmissions to signal the end-to-end arrival of the packets if no transport protocol takes care of retransmission.
Also, the ACK-on-Error mode could be desirable to keep track of all the SCHC packets delivered. In that case, the fragmentation function could be activated for all packets transmitted by the applications. SCHC ACK-on-Error fragmentation MAY be activated in transmitting Non-IP packets on the NGW-MME. A Non-IP packet will use SCHC reserved RuleID for non-compressing packets as [RFC 8724] allows it.
-
Fragmentation Parameters
SCHC profile will have specific Rules for the fragmentation modes. The rule will identify which fragmentation mode is in use, and Section 5.2.3 defines the RuleID size.
SCHC parametrization considers that NB-IoT aligns the bit and uses padding and the size of the Transfer Block. SCHC will try to reduce padding to optimize the compression of the information. The header size needs to be a multiple of 4. The Tiles
MAY keep a fixed value of 4 or 8 bits to avoid padding, except for when the transfer block equals 16 bits as the Tiles may be 2 bits. The transfer block size has a wide range of values. Two configurations are
RECOMMENDED for the fragmentation parameters.
-
For Transfer Blocks smaller than or equal to 304 bits using an 8-bit Header_size configuration, with the size of the header fields as follows:
-
RuleID from 1 - 3 bits
-
DTag 1 bit
-
FCN 3 bits
-
W 1 bits
-
For Transfer Blocks bigger than 304 bits using a 16-bit Header_size configuration, with the size of the header fields as follows:
-
RulesID from 8 - 10 bits
-
DTag 1 or 2 bits
-
FCN 3 bits
-
W 2 or 3 bits
-
WINDOW_SIZE of (2N)-1 is RECOMMENDED.
-
Reassembly Check Sequence (RCS) will follow the default size defined in Section 8.2.3 of RFC 8724, with a length equal to the L2 Word.
-
MAX_ACK_REQ is RECOMMENDED to be 2, but applications MAY change this value based on transmission conditions.
The IoT devices communicate with small data transfers and use the Power Save Mode and the Idle Mode Discontinuous Reception (DRX), which govern how often the device wakes up, stays up, and is reachable. The use of the different modes allows the battery to last ten years. Table 10.5.163a in [
TS24008] defines the radio timer values with units incrementing by N. The units of N can be 1 hour or 10 hours. The range used for IoT is of N to 3N, where N increments by one. The Inactivity Timer and the Retransmission Timer can be set based on these limits.
These scenarios show how 3GPP could use SCHC for their transmissions.
Deploying SCHC over the Radio Link only would require placing it as part of the protocol stack for data transfer between the Dev-UE and the RGW-eNB. This stack is the functional layer responsible for transporting data over the wireless connection and managing radio resources. There is support for features such as reliability, segmentation, and concatenation. The transmissions use link adaptation, meaning that the system will optimize the transport format used according to the radio conditions, the number of bits to transmit, and the power and interference constraints. That means that the number of bits transmitted over the air depends on the selected Modulation and Coding Schemes (MCSs). Transport Block (TB) transmissions happen in the Physical Layer at network-synchronized intervals called Transmission Time Interval (TTI). Each TB has a different MCS and number of bits available to transmit. The MAC layer [
TR36321] defines the characteristics of the TBs. The Radio Link stack shown in
Figure 3 comprises the Packet Data Convergence Protocol (PDCP) [
TS36323], the Radio Link Protocol (RLC) [
TS36322], the Medium Access Control protocol (MAC) [
TR36321], and the Physical Layer [
TS36201].
Appendix A gives more details about these protocols.
+---------+ +---------+ |
|IP/Non-IP+------------------------------+IP/Non-IP+->+
+---------+ | +---------------+ | +---------+ |
| PDCP +-------+ PDCP | GTP|U +------+ GTP-U |->+
| (SCHC) + + (SCHC)| + + | |
+---------+ | +---------------+ | +---------+ |
| RLC +-------+ RLC |UDP/IP +------+ UDP/IP +->+
+---------+ | +---------------+ | +---------+ |
| MAC +-------+ MAC | L2 +------+ L2 +->+
+---------+ | +---------------+ | +---------+ |
| PHY +-------+ PHY | PHY +------+ PHY +->+
+---------+ +---------------+ +---------+ |
C-Uu/ S1-U SGi
Dev-UE RGW-eNB NGW-CSGN
Radio Link
The 3GPP architecture supports Robust Header Compression (ROHC) [
RFC 5795] in the PDCP layer. Therefore, the architecture can deploy SCHC header compression entities similarly without the need for significant changes in the 3GPP specifications.
The RLC layer has three functional modes: Transparent Mode (TM), Unacknowledged Mode (UM), and Acknowledged Mode (AM). The mode of operation controls the functionalities of the RLC layer. TM only applies to signaling packets, while AM or UM carry signaling and data packets.
The RLC layer takes care of fragmentation except for the TM. In AM or UM, the SCHC fragmentation is unnecessary and
SHOULD NOT be used. While sending IP packets, the Radio Link does not commonly use the RLC TM. However, if other protocol overhead optimizations are targeted for NB-IoT traffic, SCHC fragmentation may be used for TM transmission in the future.
This section consists of IETF suggestions to the 3GPP. The NGW-MME conveys mainly signaling between the Dev-UE and the cellular network [
TR24301]. The network transports this traffic on top of the Radio Link.
This kind of flow supports data transmissions to reduce the overhead when transmitting infrequent small quantities of data. This transmission is known as Data over Non-Access Stratum (DoNAS) or Control Plane CIoT EPS optimizations. In DoNAS, the Dev-UE uses the pre-established security, can piggyback small uplink data into the initial uplink message, and uses an additional message to receive a downlink small data response.
The NGW-MME performs the data encryption from the network side in a DoNAS PDU. Depending on the data type signaled indication (IP or Non-IP data), the network allocates an IP address or establishes a direct forwarding path. DoNAS is regulated under rate control upon previous agreement, meaning that a maximum number of bits per unit of time is agreed upon per device subscription beforehand and configured in the device.
The system will use DoNAS when a terminal in a power-saving state requires a short transmission and receives an acknowledgment or short feedback from the network. Depending on the size of the buffered data to be transmitted, the Dev-UE might deploy the connected mode transmission instead. The connected mode would limit and control the DoNAS transmissions to predefined thresholds, and it would be a good resource optimization balance for the terminal and the network. The support for mobility of DoNAS is present but produces additional overhead.
Appendix B gives additional details of DoNAS.
SCHC resides in this scenario's Non-Access Stratum (NAS) protocol layer. The same principles as for
Section 5.2.1 apply here as well. Because the NAS protocol already uses ROHC [
RFC 5795], it can also adapt SCHC for header compression. The main difference compared to the Radio Link (
Section 5.2.1) is the physical placing of the SCHC entities. On the network side, the NGW-MME resides in the core network and is the terminating node for NAS instead of the RGW-eNB.
+--------+ +--------+--------+ + +--------+
| IP/ +--+-----------------+--+ IP/ | IP/ +-----+ IP/ |
| Non-IP | | | | Non-IP | Non-IP | | | Non-IP |
+--------+ | | +-----------------+ | +--------+
| NAS +-----------------------+ NAS |GTP-C/U +-----+GTP-C/U |
|(SCHC) | | | | (SCHC) | | | | |
+--------+ | +-----------+ | +-----------------+ | +--------+
| RRC +-----+RRC |S1|AP+-----+ S1|AP | | | | |
+--------+ | +-----------+ | +--------+ UDP +-----+ UDP |
| PDCP* +-----+PDCP*|SCTP +-----+ SCTP | | | | |
+--------+ | +-----------+ | +-----------------+ | +--------+
| RLC +-----+ RLC | IP +-----+ IP | IP +-----+ IP |
+--------+ | +-----------+ | +-----------------+ | +--------+
| MAC +-----+ MAC | L2 +-----+ L2 | L2 +-----+ L2 |
+--------+ | +-----------+ | +-----------------+ | +--------+
| PHY +--+--+ PHY | PHY +--+--+ PHY | PHY +-----+ PHY |
+--------+ +-----+-----+ +--------+--------+ | +--------+
C-Uu/ S1 SGi
Dev-UE RGW-eNB NGW-MME NGW-PGW
*PDCP is bypassed until AS security is activated TGPP36300.
If 3GPP incorporates SCHC, it is recommended that these scenarios use the SCHC header compression [
RFC 8724] capability to optimize the data transmission.
-
SCHC Context Initialization
The Radio Resource Control (RRC) protocol is the main tool used to configure the parameters of the Radio Link. It will configure SCHC and the static context distribution as it has been made for ROHC operation [RFC 5795] [TS36323].
-
SCHC Rules
The network operator defines the number of rules in these scenarios. For this, the network operator must know the IP traffic the device will carry. The operator might supply rules compatible with the device's use case. For devices acting as a capillary gateway, several rules match the diversity of devices and protocols used by the devices associated with the gateway. Meanwhile, simpler devices may have predetermined protocols and fixed parameters. The use of IPv6 and IPv4 may force the operator to develop more rules to deal with each case.
-
RuleID
There is a reasonable assumption of 9 bytes of radio protocol overhead for these transmission scenarios in NB-IoT, where PDCP uses 5 bytes due to header and integrity protection and where RLC and MAC use 4 bytes. The minimum physical TBs that can withhold this overhead value, according to the 3GPP Release 15 specification [R15-3GPP], are 88, 104, 120, and 144 bits. As for Section 5.1.1.2, these scenarios must optimize the Physical Layer where the smallest TB is 12 bits. These 12 bits must include the Compression Residue in addition to the RuleID. On the other hand, more complex NB-IoT devices (such as a capillary gateway) might require additional bits to handle the variety and multiple parameters of higher-layer protocols deployed. In that sense, the operator may want flexibility on the number and type of rules independently supported by each device; consequently, these scenarios require a configurable value. The configuration may be part of the agreed operation profile with the content distribution. The RuleID field size may range from 2 bits, resulting in 4 rules, to an 8-bit value, yielding up to 256 rules for use with the operators. A 256-rule maximum limit seems to be quite reasonable, even for a device acting as a NAT. An application may use a larger RuleID, but it should consider the byte alignment of the expected Compression Residue. In the minimum TB size case, 2 bits of RuleID leave only 6 bits available for Compression Residue.
-
SCHC MAX_PACKET_SIZE
The Radio Link can handle the fragmentation of SCHC packets if needed, including reliability. Hence, the packet size is limited by the MTU that is handled by the radio protocols, which corresponds to 1600 bytes for the 3GPP Release 15.
-
Fragmentation
For the Radio Link (Section 5.2.1) and DoNAS (Section 5.2.2) scenarios, the SCHC fragmentation functions are disabled. The RLC layer of NB-IoT can segment packets into suitable units that fit the selected TB for transmissions of the Physical Layer. The block selection is made according to the link adaptation input function in the MAC layer and the quantity of data in the buffer. The link adaptation layer may produce different results at each TTI, resulting in varying physical TBs that depend on the network load, interference, number of bits transmitted, and QoS. Even if setting a value that allows the construction of data units following the SCHC tiles principle, the protocol overhead may be greater or equal to allowing the Radio Link protocols to take care of the fragmentation intrinsically.
-
Fragmentation in RLC TM
The RLC TM mostly applies to control signaling transmissions. When RLC operates in TM, the MAC layer mechanisms ensure reliability and generate overhead. This additional reliability implies sending repetitions or automatic retransmissions.
The ACK-Always fragmentation mode of SCHC may reduce this overhead in future operations when data transmissions may use this mode. The ACK-Always mode may transmit compressed data with fewer possible transmissions by using fixed or limited TBs compatible with the tiling SCHC fragmentation handling. For SCHC fragmentation parameters, see Section 5.1.1.2.