idnits 2.17.00 (12 Aug 2021) /tmp/idnits39420/draft-ietf-lpwan-schc-over-nbiot-06.txt: Checking boilerplate required by RFC 5378 and the IETF Trust (see https://trustee.ietf.org/license-info): ---------------------------------------------------------------------------- No issues found here. Checking nits according to https://www.ietf.org/id-info/1id-guidelines.txt: ---------------------------------------------------------------------------- No issues found here. Checking nits according to https://www.ietf.org/id-info/checklist : ---------------------------------------------------------------------------- ** The document seems to lack an IANA Considerations section. (See Section 2.2 of https://www.ietf.org/id-info/checklist for how to handle the case when there are no actions for IANA.) ** The document seems to lack a both a reference to RFC 2119 and the recommended RFC 2119 boilerplate, even if it appears to use RFC 2119 keywords. RFC 2119 keyword, line 598: '... word for NB-IoT MUST be considered 8 ...' Miscellaneous warnings: ---------------------------------------------------------------------------- == The copyright year in the IETF Trust and authors Copyright Line does not match the current year -- The document date (October 22, 2021) is 211 days in the past. Is this intentional? Checking references for intended status: Informational ---------------------------------------------------------------------------- == Missing Reference: 'TGPP33203' is mentioned on line 603, but not defined == Missing Reference: 'TGPP36321' is mentioned on line 267, but not defined == Missing Reference: 'TGPP36323' is mentioned on line 375, but not defined == Missing Reference: 'TGPP36322' is mentioned on line 267, but not defined == Missing Reference: 'TGPP36201' is mentioned on line 268, but not defined == Missing Reference: 'TGPP24301' is mentioned on line 307, but not defined Summary: 2 errors (**), 0 flaws (~~), 7 warnings (==), 1 comment (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 lpwan Working Group E. Ramos 3 Internet-Draft Ericsson 4 Intended status: Informational A. Minaburo 5 Expires: April 25, 2022 Acklio 6 October 22, 2021 8 SCHC over NB-IoT 9 draft-ietf-lpwan-schc-over-nbiot-06 11 Abstract 13 The Static Context Header Compression (SCHC) specification describes 14 header compression and fragmentation functionalities for LPWAN (Low 15 Power Wide Area Networks) technologies. 16 The Narrow Band Internet of Things (NB-IoT) architecture may adapt 17 SCHC to improve its capacities. 19 This document describes the use of SCHC over the NB-IoT wireless 20 access and provides elements for efficient parameterization. 22 Status of This Memo 24 This Internet-Draft is submitted in full conformance with the 25 provisions of BCP 78 and BCP 79. 27 Internet-Drafts are working documents of the Internet Engineering 28 Task Force (IETF). Note that other groups may also distribute 29 working documents as Internet-Drafts. The list of current Internet- 30 Drafts is at http://datatracker.ietf.org/drafts/current/. 32 Internet-Drafts are draft documents valid for a maximum of six months 33 and may be updated, replaced, or obsoleted by other documents at any 34 time. It is inappropriate to use Internet-Drafts as reference 35 material or to cite them other than as "work in progress." 37 This Internet-Draft will expire on April 25, 2022. 39 Copyright Notice 41 Copyright (c) 2021 IETF Trust and the persons identified as the 42 document authors. All rights reserved. 44 This document is subject to BCP 78 and the IETF Trust's Legal 45 Provisions Relating to IETF Documents 46 (http://trustee.ietf.org/license-info) in effect on the date of 47 publication of this document. Please review these documents 48 carefully, as they describe your rights and restrictions with respect 49 to this document. Code Components extracted from this document must 50 include Simplified BSD License text as described in Section 4.e of 51 the Trust Legal Provisions and are provided without warranty as 52 described in the Simplified BSD License. 54 Table of Contents 56 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 3 57 2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 3 58 3. Architecture . . . . . . . . . . . . . . . . . . . . . . . . 4 59 4. Data Transmission . . . . . . . . . . . . . . . . . . . . . . 5 60 5. IP based Data Transmission . . . . . . . . . . . . . . . . . 6 61 5.1. SCHC over the Radio link . . . . . . . . . . . . . . . . 6 62 5.1.1. SCHC Entities Placing . . . . . . . . . . . . . . . . 6 63 5.2. SCHC over No-Access Stratum (NAS) . . . . . . . . . . . . 7 64 5.2.1. SCHC Entities Placing . . . . . . . . . . . . . . . . 8 65 5.3. Parameters for Static Context Header Compression (SCHC) . 9 66 5.3.1. SCHC Context initialization . . . . . . . . . . . . . 9 67 5.3.2. SCHC Rules . . . . . . . . . . . . . . . . . . . . . 9 68 5.3.3. Rule ID . . . . . . . . . . . . . . . . . . . . . . . 9 69 5.3.4. SCHC MAX_PACKET_SIZE . . . . . . . . . . . . . . . . 10 70 5.3.5. Fragmentation . . . . . . . . . . . . . . . . . . . . 10 71 6. End-to-End Compression . . . . . . . . . . . . . . . . . . . 10 72 6.1. SCHC Entities Placing . . . . . . . . . . . . . . . . . . 11 73 6.2. Parameters for Static Context Header Compression . . . . 11 74 6.2.1. SCHC Context initialization . . . . . . . . . . . . . 11 75 6.2.2. SCHC Rules . . . . . . . . . . . . . . . . . . . . . 12 76 6.2.3. Rule ID . . . . . . . . . . . . . . . . . . . . . . . 12 77 6.2.4. SCHC MAX_PACKET_SIZE . . . . . . . . . . . . . . . . 12 78 6.3. Fragmentation . . . . . . . . . . . . . . . . . . . . . . 12 79 6.3.1. Fragmentation modes . . . . . . . . . . . . . . . . . 12 80 6.3.2. Fragmentation Parameters . . . . . . . . . . . . . . 13 81 7. Padding . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 82 8. Security considerations . . . . . . . . . . . . . . . . . . . 13 83 9. 3GPP References . . . . . . . . . . . . . . . . . . . . . . . 14 84 10. Appendix . . . . . . . . . . . . . . . . . . . . . . . . . . 14 85 10.1. NB-IoT User Plane protocol architecture . . . . . . . . 14 86 10.1.1. Packet Data Convergence Protocol (PDCP) . . . . . . 14 87 10.1.2. Radio Link Protocol (RLC) . . . . . . . . . . . . . 15 88 10.1.3. Medium Access Control (MAC) . . . . . . . . . . . . 16 89 10.2. NB-IoT Data over NAS (DoNAS) . . . . . . . . . . . . . . 17 90 11. Normative References . . . . . . . . . . . . . . . . . . . . 20 91 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 21 93 1. Introduction 95 The Static Context Header Compression (SCHC) [RFC8724] defines a 96 header compression scheme, and fragmentation functionality suitable 97 for the Low Power Wide Area Networks (LPWAN) networks defined in 98 [RFC8376]. 100 In an NB-IoT network, header compression efficiently brings Internet 101 connectivity to the node. This document describes the SCHC 102 parameters used to performs the static context header compression 103 into the NB-IoT wireless access. This document assumes functionality 104 for NB-IoT of 3GPP release 15. Otherwise, the text explicitly 105 mentions other versions' functionality. 107 2. Terminology 109 This document will follow the terms defined in [RFC8724], in 110 [RFC8376], and the TGPP23720. 112 o CIoT. Cellular IoT 114 o NGW-C-SGN. Network Gateway - CIoT Serving Gateway Node 116 o Dev-UE. Device - User Equipment 118 o RGW-eNB. Radio Gateway - Node B. Base Station that controls the 119 UE 121 o EPC. Evolved Packet Connectivity. Core network of 3GPP LTE 122 systems. 124 o EUTRAN. Evolved Universal Terrestrial Radio Access Network. 125 Radio network from LTE based systems. 127 o NGW-MME. Network Gateway - Mobility Management Entity. Handle 128 mobility of the UE 130 o NB-IoT. Narrow Band IoT. Referring to 3GPP LPWAN technology 131 based in LTE architecture but with additional optimization for IoT 132 and using a Narrow Band spectrum frequency. 134 o NGW-SGW. Network Gateway - Serving Gateway. Routes and forwards 135 the user data packets through the access network 137 o HSS. Home Subscriber Server. It is a database that performs 138 mobility management 140 o NGW-PGW. Network Gateway - Packet Data Node Gateway. An 141 interface between the internal with the external network 143 o PDU. Protocol Data Unit. Data packets including headers that are 144 transmitted between entities through a protocol. 146 o SDU. Service Data Unit. Data packets (PDUs) from higher layers 147 protocols used by lower layer protocols as a payload of their own 148 PDUs that has not yet been encapsulated. 150 o IWK-SCEF. InterWorking Service Capabilities Exposure Function. 151 Used in roaming scenarios and serves for interconnection with the 152 SCEF of the Home PLMN and is located in the Visited PLMN 154 o NGW-SCEF. Network Gateway - Service Capability Exposure Function. 155 EPC node for exposure of 3GPP network service capabilities to 3rd 156 party applications. 158 3. Architecture 160 +---+ +------+ 161 |Dev| \ +-----+ ----| HSS | 162 +---+ \ | NGW | +------+ 163 | |-MME |\__ 164 \ / +-----+ \ 165 +---+ \+-----+ / | +------+ 166 |Dev| ----| RGW |- | | NGW- | 167 +---+ |-eNB | | | SCEF |---------+ 168 /+-----+ \ | +------+ | 169 / \ +------+ | 170 / \| NGW- | +-----+ +-----------+ 171 +---+ / | CSGW |--| NGW-|---|Application| 172 |Dev| | | | PGW | | Server | 173 +---+ +------+ +-----+ +-----------+ 175 Figure 1: 3GPP network architecture 177 The Narrow Band Internet of Things (NB-IoT) architecture has a more 178 complex structure. It relies on different NGWs from different 179 providers and can send data by different paths, each path with 180 different characteristics such as bandwidths, acknowledgments, and 181 layer two reliability and segmentation. 183 Figure 1 shows this architecture where the Network Gateway Cellular 184 Internet of Things Serving Gateway Node (NGW-CSGN) optimizes co- 185 locating entities in different paths. For example, a Dev using the 186 path form by the Network Gateway Mobility Management Entity (NGW- 187 MME), the NGW-CSGW, and Network Gateway Packet Data Node Gateway 188 (NGW-PGW) may get a limited bandwidth transmission from few bytes/s 189 to one thousand bytes/s only. 191 Another node introduced in the NBIoT architecture is the Network 192 Gateway Service Capability Exposure Function (NGW-SCEF), which 193 securely exposes service and network capabilities to entities 194 external to the network operator. OMA and OneM2M define the 195 northbound APIS [TGPP33203]. In this case, the path is small for 196 data transmission. The main functions of the NGW-SCEF are: 198 o Connectivity path 200 o Device Monitoring 202 4. Data Transmission 204 NB-IoT networks deal with end-to-end user data and in-band signaling 205 between the nodes and functions to configure, control, and monitor 206 the system functions and behaviors. The signaling data uses a 207 different path with specific protocols, handling processes, and 208 entities but can transport end-to-end user data for IoT services. In 209 contrast, the end-to-end application only transports end-to-end data. 211 The maximum recommended MTU size is 1358 Bytes. The radio network 212 protocols limit the packet sizes over the air, including radio 213 protocol overhead to 1600 Bytes. However, the MTU is smaller to 214 avoid fragmentation in the network backbone due to the payload 215 encryption size (multiple of 16) and the additional core transport 216 overhead handling. 218 3GPP standardizes NB-IoT and, in general, the cellular technologies 219 interfaces and functions. Therefore the introduction of SCHC 220 entities to Dev, RGW-eNB, and NGW-CSGN needs to be specified in the 221 NB-IoT standard, which implies that standard specifying SCHC support 222 would not be backward compatible. A terminal or a network supporting 223 a version of the standard without SCHC or without capability 224 implementation (in case of not being standardized as mandatory 225 capability) cannot utilize the compression services with this 226 approach. 228 SCHC could be deployed differently depending on where the header 229 compression and the fragmentation are applied. The SCHC 230 functionalities can be used over the radio transmission only, between 231 the Dev and the RGW-eNB. Alternatively, the packets transmitted over 232 the end-to-end link can use SCHC. Else, when the transmissions over 233 the NGW-MME or NGW-SCEF, the NGW-CSGN uses SCHC entity. For these 234 two cases, the functions are to be standardized by 3GPP. 236 Another possibility is to apply SCHC functionalities to the end-to- 237 end connection or at least up to the operator network edge. SCHC 238 functionalities are available in the application layer of the Dev and 239 the Application Servers or a broker function at the edge of the 240 operator network. The radio network transmits the packets as non-IP 241 traffic using IP tunneling or SCEF services. Since this option does 242 not necessarily require 3GPP standardization, it is possible to also 243 benefit legacy devices with SCHC by using the non-IP transmission 244 features of the operator network. 246 5. IP based Data Transmission 248 5.1. SCHC over the Radio link 250 Deploying SCHC only over the radio link would require placing it as 251 part of the protocol stack for data transfer between the Dev and the 252 RGW-eNB. This stack is the functional layer responsible for 253 transporting data over the wireless connection and managing radio 254 resources. There is support for features such as reliability, 255 segmentation, and concatenation. The transmissions use link 256 adaptation, meaning that the system will optimize the transport 257 format used according to the radio conditions, the number of bits to 258 transmit, and the power and interference constraints. That means 259 that the number of bits transmitted over the air depends on the 260 Modulation and Coding Schemes (MCS) selected. A Transport Block (TB) 261 transmissions happen in the physical layer at network synchronized 262 intervals called Transmission Time Interval (TTI). Each Transport 263 Block has a different MCS and number of bits available to transmit. 264 The MAC layer [TGPP36321] defines the Transport Blocks 265 characteristics. The Radio link Figure 2 stack comprises the Packet 266 Data Convergence Protocol (PDCP) [TGPP36323], Radio Link Protocol 267 (RLC) [TGPP36322], Medium Access Control protocol (MAC) [TGPP36321], 268 and the Physical Layer [TGPP36201]. The Appendix gives more details 269 of these protocols. 271 5.1.1. SCHC Entities Placing 273 The current architecture provides support for header compression in 274 PDCP with RoHC [RFC5795]. Therefore SCHC entities can be deployed 275 similarly without the need for significant changes in the 3GPP 276 specifications. 278 In this scenario, RLC takes care of fragmentation unless for the 279 transparent mode. When packets exceed the transport block size at 280 the time of transmission, SCHC fragmentation is unnecessary and 281 should not be used to avoid the additional protocol overhead. It is 282 not common to configure RLC in Transparent Mode for IP-based data. 283 However, given the case in the future, SCHC fragmentation may be 284 used. In that case, a SCHC tile would match the minimum transport 285 block size minus the PDCP and MAC headers. 287 +---------+ +---------+ | 288 |IP/non-IP+------------------------------+IP/non-IP+->+ 289 +---------+ | +---------------+ | +---------+ | 290 | PDCP +-------+ PDCP | GTP|U +------+ GTP-U |->+ 291 | (SCHC) + + (SCHC)| + + | | 292 +---------+ | +---------------+ | +---------+ | 293 | RLC +-------+ RLC |UDP/IP +------+ UDP/IP +->+ 294 +---------+ | +---------------+ | +---------+ | 295 | MAC +-------+ MAC | L2 +------+ L2 +->+ 296 +---------+ | +---------------+ | +---------+ | 297 | PHY +-------+ PHY | PHY +------+ PHY +->+ 298 +---------+ +---------------+ +---------+ | 299 C-Uu/ S1-U SGi 300 Dev RGW-eNB NGW-CSGN 302 Figure 2: SCHC over the Radio link 304 5.2. SCHC over No-Access Stratum (NAS) 306 The NGW-MME conveys mainly control signaling between the Dev and the 307 cellular network [TGPP24301]. The network transports this traffic on 308 top of the radio link. 310 This kind of flow supports data transmissions to reduce the overhead 311 when transmitting infrequent small quantities of data. This 312 transmission is known as Data over No-Access Stratum (DoNAS) or 313 Control Plane CIoT EPS optimization. In DoNAS, the Dev uses the pre- 314 established security and piggyback small uplink data into the initial 315 uplink message and uses an additional message to receive downlink 316 small data response. 318 The NGW-MME performs the data encryption from the network side in a 319 DoNAS PDU. Depending on the data type signaled indication (IP or 320 non-IP data), the network allocates an IP address or establishes a 321 direct forwarding path. DoNAS is regulated under rate control upon 322 previous agreement, meaning that a maximum number of bits per unit of 323 time is agreed upon per device subscription beforehand and configured 324 in the device. 326 The system will use DoNAS when a terminal in a power-saving state 327 requires a short transmission and receives an acknowledgment or short 328 feedback from the network. Depending on the size of buffered data to 329 transmit, the Dev might deploy the connected mode transmissions 330 instead, limiting and controlling the DoNAS transmissions to 331 predefined thresholds and a good resource optimization balance for 332 the terminal and the network. The support for mobility of DoNAS is 333 present but produces additional overhead. The Appendix gives 334 additional details of DoNAS. 336 5.2.1. SCHC Entities Placing 338 SCHC may reside in the Non-Access Stratum (NAS) protocol layer in 339 this scenario. The same principles as for Radio link transmissions 340 apply here as well. The main difference is the physical placing of 341 the SCHC entities on the network side as the NGW-MME resides in the 342 core network and is the terminating node for NAS instead of the eNB. 344 +--------+ +--------+--------+ + +--------+ 345 | IP/ +--+-----------------+--+ IP/ | IP/ +-----+ IP/ | 346 | Non-IP | | | | Non-IP | Non-IP | | | Non-IP | 347 +--------+ | | +-----------------+ | +--------+ 348 | NAS +-----------------------+ NAS |GTP-C/U +-----+GTP-C/U | 349 |(SCHC) | | | | (SCHC) | | | | | 350 +--------+ | +-----------+ | +-----------------+ | +--------+ 351 | RRC +-----+RRC |S1|AP+-----+ S1|AP | | | | | 352 +--------+ | +-----------+ | +--------+ UDP +-----+ UDP | 353 | PDCP* +-----+PDCP*|SCTP +-----+ SCTP | | | | | 354 +--------+ | +-----------+ | +-----------------+ | +--------+ 355 | RLC +-----+ RLC | IP +-----+ IP | IP +-----+ IP | 356 +--------+ | +-----------+ | +-----------------+ | +--------+ 357 | MAC +-----+ MAC | L2 +-----+ L2 | L2 +-----+ L2 | 358 +--------+ | +-----------+ | +-----------------+ | +--------+ 359 | PHY +--+--+ PHY | PHY +--+--+ PHY | PHY +-----+ PHY | 360 +--------+ +-----+-----+ +--------+--------+ | +--------+ 361 C-Uu/ S1-lite SGi 362 Dev RGW-eNB NGW-MME NGW-PGW 364 *PDCP is bypassed until AS security is activated TGPP36300. 366 Figure 3 368 5.3. Parameters for Static Context Header Compression (SCHC) 370 5.3.1. SCHC Context initialization 372 RRC (Radio Resource Control) protocol is the main tool used to 373 configure the parameters of the Radio link. It will configure SCHC 374 and the static context distribution as it has made for RoHC operation 375 [TGPP36323]. 377 5.3.2. SCHC Rules 379 The network operator in these scenarios defines the number of rules 380 in a context. The operator must be aware of the type of IP traffic 381 that the device will carry out. Implying that the operator might use 382 provision sets of rules compatible with the use case of the device. 383 For devices acting as gateways of other devices, several rules may 384 match the diversity of devices and protocols used by the devices 385 associated with the gateway. Meanwhile, simpler devices (for 386 example, an electricity meter) may have a predetermined set of fixed 387 protocols and parameters. Additionally, the deployment of IPv4 388 addresses and IPv6 may force different rules to deal with each case. 390 5.3.3. Rule ID 392 There is a reasonable assumption of 9 bytes of radio protocol 393 overhead for these transmission scenarios in NB-IoT, where PDCP uses 394 5 bytes due to header and integrity protection, and RLC and MAC use 4 395 bytes. The minimum physical Transport Blocks (TB) that can withhold 396 this overhead value according to 3GPP Release 15 specifications are 397 88, 104, 120, and 144 bits. A transmission optimization may require 398 only one physical layer transmission. SCHC overhead should not 399 exceed the available number of effective bits of the smallest 400 physical TB available. The packets handled by 3GPP networks are 401 byte-aligned, and therefore the minimum payload possible (including 402 padding) is 8 bits. Therefore in order to use the smallest TB, the 403 maximum SCHC header is 12 bits. These 12 bits must include the 404 Compression Residue in addition to the Rule ID. On the other hand, 405 more complex NB-IoT devices (such as a capillarity gateway) might 406 require additional bits to handle the variety and multiple parameters 407 of higher-layer protocols deployed. In that sense, the operator may 408 want to have flexibility on the number and type of rules supported by 409 each device independently, and consequently, these scenarios require 410 a configurable value. The configuration may be part of the operation 411 profile agreed together with the content distribution. The Rule ID 412 field size may range from 2 bits, resulting in 4 rules to an 8 bits 413 value that would yield up to 256 rules that can be used together with 414 the operators and seems quite a reasonable maximum limit even for a 415 device acting as a NAT. More bits could be configured, but it should 416 consider the byte-alignment of the expected Compression Residue. In 417 the minimum TB size case, 2 bits of Rule Id leave only 6 bits 418 available for Compression Residue. 420 5.3.4. SCHC MAX_PACKET_SIZE 422 The Radio Link can handle the fragmentation of SCHC packets if 423 needed, including reliability. Hence the packet size is limited by 424 the MTU handled by the radio protocols that correspond to 1600 bytes 425 for 3GPP Release 15. 427 5.3.5. Fragmentation 429 For these scenarios, the SCHC fragmentation functions are disabled. 430 The RLC layer of NB-IoT can segment packets in suitable units that 431 fit the selected transport blocks for transmissions of the physical 432 layer. The blocks selection is made according to the link adaptation 433 input function in the MAC layer and the quantity of data in the 434 buffer. The link adaptation layer may produce different results at 435 each Time Transmission Interval (TTI), resulting in varying physical 436 transport blocks that depend on the network load, interference, 437 number of bits transmitted, and QoS. Even if setting a value that 438 allows the construction of data units following the SCHC tiles 439 principle, the protocol overhead may be greater or equal than 440 allowing the Radio link protocols to take care of the fragmentation 441 natively. 443 5.3.5.1. Fragmentation in Transparent Mode 445 If RLC operates in Transparent Mode, there could be a case to 446 activate a fragmentation function together with a light reliability 447 function such as the ACK-Always mode. In practice, it is uncommon to 448 transmit radio link data using this configuration. It mainly targets 449 signaling transmissions. In those cases, the MAC layer mechanisms 450 ensure reliability, such as repetitions or automatic retransmissions, 451 and additional reliability might only generate protocol overhead. 453 SCHC may reduce radio network protocols overhead in future 454 operations, support reliable transmissions, and transmit small data 455 with fewer possible transmissions by using fixed or limited transport 456 blocks compatible with the tiling SCHC fragmentation handling. 458 6. End-to-End Compression 460 The Non-IP Data Delivery (NIDD) services of 3GPP enable the 461 transmission of SCHC packets compressed by the application layer. 462 The packets can be delivered using IP-tunnels to the 3GPP network or 463 NGW-SCEF functions (i.e., API calls). In both cases, as compression 464 occurs before transmission, the network will not understand the 465 packet, and the network does not have context information of this 466 compression. Therefore the network will treat the packet as Non-IP 467 traffic and deliver it to the Dev without any other stack element, 468 directly under the L2. 470 6.1. SCHC Entities Placing 472 In the two scenarios using End-to-End compression, SCHC entities are 473 located almost on top of the stack. In the Dev, an application using 474 the NB-IoT connectivity services may implement SCHC and the 475 Application Server. The IP tunneling scenario requires that the 476 Application Server send the compressed packet over an IP connection 477 terminated by the 3GPP core network. If the transmission uses the 478 NGW-SCEF services, it is possible to utilize an API call to transfer 479 the SCHC packets between the core network and the Application Server. 480 Also, an IP tunnel could be established by the Application Server if 481 negotiated with the NGW-SCEF. 483 +---------+ XXXXXXXXXXXXXXXXXXXXXXXX +--------+ 484 | SCHC | XXX XXX | SCHC | 485 |(Non-IP) +-----XX........................XX....+--*---+(Non-IP)| 486 +---------+ XX +----+ XX | | +--------+ 487 | | XX |SCEF+-------+ | | | 488 | | XXX 3GPP RAN & +----+ XXX +---+ UDP | 489 | | XXX CORE NETWORK XXX | | | 490 | L2 +---+XX +------------+ | +--------+ 491 | | XX |IP TUNNELING+--+ | | 492 | | XXX +------------+ +---+ IP | 493 +---------+ XXXX XXXX | +--------+ 494 | PHY +------+ XXXXXXXXXXXXXXXXXXXXXXX +---+ PHY | 495 +---------+ +--------+ 496 UE AS 498 Figure 4: SCHC entities placed when using Non-IP Delivery (NIDD) 3GPP 499 Sevices 501 6.2. Parameters for Static Context Header Compression 503 6.2.1. SCHC Context initialization 505 The application layer handles the static context; consequently, the 506 context distribution must be according to the application's 507 capabilities, perhaps utilizing IP data transmissions up to context 508 initialization. Also, the static contexts delivery may use the same 509 IP tunneling or NGW-SCEF services used later for the SCHC packets 510 transport. 512 6.2.2. SCHC Rules 514 Even when the transmission content is not visible for the 3GPP 515 network, the same limitations as for IP-based data transmissions 516 applies in these scenarios in terms of aiming to use the minimum 517 number of transmission and minimize the protocol overhead. 519 6.2.3. Rule ID 521 Similar to the case of IP transmissions, the Rule ID size can be 522 dynamically set before the context delivery. For example, negotiated 523 between the applications when choosing a profile according to the 524 type of traffic and application deployed. The same considerations 525 related to the transport block size and performance mentioned for the 526 IP type of traffic must be followed when choosing a size value for 527 the Rule ID field. 529 6.2.4. SCHC MAX_PACKET_SIZE 531 In these scenarios, the maximum recommended MTU size that applies is 532 1358 Bytes since the SCHC packets (and fragments) are traversing the 533 whole 3GPP network infrastructure (core and radio), not only the 534 radio as the IP transmissions case. 536 6.3. Fragmentation 538 In principle, packets larger than 1358 bytes need the fragmentation 539 function. Since the 3GPP uses reliability functions, the No-ACK 540 fragmentation mode may be enough in point-to-point connections. 541 Nevertheless, additional considerations are described below for more 542 complex cases. 544 6.3.1. Fragmentation modes 546 A global service assigns a QoS to the packets depending on the 547 billing. Packets with very low QoS may get lost before they arrive 548 in the 3GPP radio network transmission, for example, in between the 549 links of a capillarity gateway or due to buffer overflow handling in 550 a backhaul connection. The use of SCHC fragmentation with the ACK- 551 on-Error mode is recommended to secure additional reliability on the 552 packets transmitted with a small trade-off on additional 553 transmissions to signal the end-to-end arrival of the packets if no 554 transport protocol takes care of retransmission. 555 Also, the ACK-on-Error mode is even desirable to keep track of all 556 the SCHC packets delivered. In that case, the fragmentation function 557 could be active for all packets transmitted by the applications. 558 SCHC ACK-on-Error fragmentation may be active for the transmission of 559 non-IP packets on the NGW-MME. If these packets are considering to 560 use SCHC with the RuleID for non-compressing packets as {RFC8724} 561 allows it. 563 6.3.2. Fragmentation Parameters 565 SCHC profile with the fragmentation mode will have specific Rules. 566 SCHC defines the Rule ID according to the fragmentation mode; 2 bits 567 could recognize all the fragmentation modes or another solution 568 depending on the Rules implementation. 570 SCHC parametrization considers that NBIoT aligns the bit and uses 571 padding and the size of the Transfer Block. SCHC will try to reduce 572 padding to optimize the compression of the information. The Header 573 size needs to be multiple of 4, and the Tiles may keep a fixed value 574 of 4 or 8 bits to avoid padding except for transfer block equals 16 575 bits where Tiles may be of 2 bits. For the other parameters, the 576 transfer block size has a wide range that needs two configurations. 578 o For Transfer Blocks smaller than 300bits: 8 bits-Header_size 579 configuration, with the size of the header fields as follows: Rule 580 ID 3 bits, DTag 1 bit, FCN 3 bits, W 1 bits. 582 o For Transfer Blocks bigger than 300 bits: 16 bits-Header_size 583 configuration, with the size of the header fields as follows: 584 Rules ID 8 - 10 bits, DTag 1 or 2 bits, FCN 3 bits, W 2 or 3 bits. 586 The IoT devices communicate with small data transfer and have a 587 battery life of 10 years. These devices use the Power Save Mode and 588 the Idle Mode DRX, which govern how often the device wakes up, stays 589 up, and is reachable. Table 10.5.163a in {3GPP-TS_24.088} specifies 590 a range for the radio timers as N to 3N in increments of one where 591 the units of N can be 1 hour or 10 hours. To adapt SCHC to the NB- 592 IoT activities, the Inactivity Timer and the Retransmission Timer may 593 use these limits. 595 7. Padding 597 NB-IoT and 3GPP wireless access, in general, assumes byte-aligned 598 payload. Therefore the L2 word for NB-IoT MUST be considered 8 bits, 599 and the padding treatment should use this value accordingly. 601 8. Security considerations 603 3GPP access security is specified in [TGPP33203]. 605 9. 3GPP References 607 o TGPP23720 3GPP, "TR 23.720 v13.0.0 - Study on architecture 608 enhancements for Cellular Internet of Things", 2016. 610 o TGPP33203 3GPP, "TS 33.203 v13.1.0 - 3G security; Access security 611 for IP-based services", 2016. 613 o TGPP36321 3GPP, "TS 36.321 v13.2.0 - Evolved Universal Terrestrial 614 Radio Access (E-UTRA); Medium Access Control (MAC) protocol 615 specification", 2016 617 o TGPP36323 3GPP, "TS 36.323 v13.2.0 - Evolved Universal Terrestrial 618 Radio Access (E-UTRA); Packet Data Convergence Protocol (PDCP) 619 specification", 2016. 621 o TGPP36331 3GPP, "TS 36.331 v13.2.0 - Evolved Universal Terrestrial 622 Radio Access (E-UTRA); Radio Resource Control (RRC); Protocol 623 specification", 2016. 625 o TGPP36300 3GPP, "TS 36.300 v15.1.0 - Evolved Universal Terrestrial 626 Radio Access (E-UTRA) and Evolved Universal Terrestrial Radio 627 Access Network (E-UTRAN); Overall description; Stage 2", 2018 629 o TGPP24301 3GPP "TS 24.301 v15.2.0 - Non-Access-Stratum (NAS) 630 protocol for Evolved Packet System (EPS); Stage 3", 2018 632 o TGPP24088 3GPP, "TS 24.088 v12.9.0 - Mobile radio interface Layer 633 3 specification;Core network protocols; Stage 3", 2015. 635 10. Appendix 637 10.1. NB-IoT User Plane protocol architecture 639 10.1.1. Packet Data Convergence Protocol (PDCP) 641 Each of the Radio Bearers (RB) is associated with one PDCP entity. 642 Moreover, a PDCP entity is associated with one or two RLC entities 643 depending on the unidirectional or bi-directional characteristics of 644 the RB and RLC mode used. A PDCP entity is associated with either a 645 control plane or a user plane with independent configuration and 646 functions. The maximum supported size for NB-IoT of a PDCP SDU is 647 1600 octets. The primary services and functions of the PDCP sublayer 648 for NB-IoT for the user plane include: 650 o Header compression and decompression using ROHC (Robust Header 651 Compression) 653 o Transfer of user and control data to higher and lower layers 655 o Duplicate detection of lower layer SDUs when re-establishing 656 connection (when RLC with Acknowledge Mode in use for User Plane 657 only) 659 o Ciphering and deciphering 661 o Timer-based SDU discard in uplink 663 10.1.2. Radio Link Protocol (RLC) 665 RLC is a layer-2 protocol that operates between the UE and the base 666 station (eNB). It supports the packet delivery from higher layers to 667 MAC, creating packets transmitted over the air, optimizing the 668 Transport Block utilization. RLC flow of data packets is 669 unidirectional, and it is composed of a transmitter located in the 670 transmission device and a receiver located in the destination device. 671 Therefore to configure bi-directional flows, two sets of entities, 672 one in each direction (downlink and uplink), must be configured and 673 effectively peered to each other. The peering allows the 674 transmission of control packets (ex., status reports) between 675 entities. RLC can be configured for data transfer in one of the 676 following modes: 678 o Transparent Mode (TM). RLC does not segment or concatenate SDUs 679 from higher layers in this mode and does not include any header to 680 the payload. RLC receives SDUs from upper layers when acting as a 681 transmitter and transmits directly to its flow RLC receiver via 682 lower layers. Similarly, a TM RLC receiver would only deliver 683 without processing the packets to higher layers upon reception. 685 o Unacknowledged Mode (UM). This mode provides support for 686 segmentation and concatenation of payload. The RLC packet's size 687 depends on the indication given at a particular transmission 688 opportunity by the lower layer (MAC) and is octets aligned. The 689 packet delivery to the receiver does not include reliability 690 support, and the loss of a segment from a packet means a complete 691 packet loss. Also, in the case of lower layer retransmissions, 692 there is no support for re-segmentation in case of change of the 693 radio conditions triggering the selection of a smaller transport 694 block. Additionally, it provides PDU duplication detection and 695 discards, reordering of out-of-sequence, and loss detection. 697 o Acknowledged Mode (AM). In addition to the same functions 698 supported by UM, this mode also adds a moving windows-based 699 reliability service on top of the lower layer services. It also 700 supports re-segmentation, and it requires bidirectional 701 communication to exchange acknowledgment reports called RLC Status 702 Report and trigger retransmissions. This model also supports 703 protocol error detection. The mode used depends on the operator 704 configuration for the type of data to be transmitted. For 705 example, data transmissions supporting mobility or requiring high 706 reliability would be most likely configured using AM. Meanwhile, 707 streaming and real-time data would be mapped to a UM 708 configuration. 710 10.1.3. Medium Access Control (MAC) 712 MAC provides a mapping between the higher layers abstraction called 713 Logical Channels comprised by the previously described protocols to 714 the Physical layer channels (transport channels). Additionally, MAC 715 may multiplex packets from different Logical Channels and prioritize 716 what to fit into one Transport Block if there is data and space 717 available to maximize data transmission efficiency. MAC also 718 provides error correction and reliability support through HARQ, 719 transport format selection, and scheduling information reporting from 720 the terminal to the network. MAC also adds the necessary padding and 721 piggyback control elements when possible and the higher layers data. 723 724 +---+ +---+ +------+ 725 Application |AP1| |AP1| | AP2 | 726 (IP/non-IP) |PDU| |PDU| | PDU | 727 +---+ +---+ +------+ 728 | | | | | | 729 PDCP +--------+ +--------+ +-----------+ 730 |PDCP|AP1| |PDCP|AP1| |PDCP| AP2 | 731 |Head|PDU| |Head|PDU| |Head| PDU | 732 +--------+ +--------+ +--------+--\ 733 | | | | | | | | |\ `----\ 734 +---------------------------+ | |(1)| `-----\(2)'-\ 735 RLC |RLC |PDCP|AP1|RLC |PDCP|AP1| +-------------+ +----|---+ 736 |Head|Head|PDU|Head|Head|PDU| |RLC |PDCP|AP2| |RLC |AP2| 737 +-------------|-------------+ |Head|Head|PDU| |Head|PDU| 738 | | | | | +---------|---+ +--------+ 739 | | | LCID1 | | / / / / / 740 / / / _/ _// _/ _/ / LCID2 / 741 | | | | | / _/ _/ / ___/ 742 | | | | || | | / / 743 +------------------------------------------+ +-----------+---+ 744 MAC |MAC|RLC|PDCP|AP1|RLC|PDCP|AP1|RLC|PDCP|AP2| |MAC|RLC|AP2|Pad| 745 |Hea|Hea|Hea |PDU|Hea|Hea |PDU|Hea|Hea |PDU| |Hea|Hea|PDU|din| 746 |der|der|der | |der|der | |der|der | | |der|der| |g | 747 +------------------------------------------+ +-----------+---+ 748 TB1 TB2 750 Figure 5: Example of User Plane packet encapsulation for two 751 transport blocks 753 10.2. NB-IoT Data over NAS (DoNAS) 755 The Access Stratum (AS) protocol stack used by DoNAS is somehow 756 particular. Since the security associations are not established yet 757 in the radio network, to reduce the protocol overhead, PDCP (Packet 758 Data Convergence Protocol) is bypassed until AS security is 759 activated. RLC (Radio Link Control protocol) uses by default the AM 760 mode, but depending on the network's features and the terminal, it 761 may change to other modes by the network operator. For example, the 762 transparent mode does not add any header or process the payload to 763 reduce the overhead, but the MTU would be limited by the transport 764 block used to transmit the data, which is a couple of thousand bits 765 maximum. If UM (only Release 15 compatible terminals) is used, the 766 RLC mechanisms of reliability are disabled, and only the reliability 767 provided by the MAC layer by Hybrid Automatic Repeat reQuest (HARQ) 768 is available. In this case, the protocol overhead might be smaller 769 than the AM case because of the lack of status reporting but with the 770 same support for segmentation up to 16000 Bytes. NAS packets are 771 encapsulated within an RRC (Radio Resource Control) TGPP36331 772 message. 774 Depending on the data type indication signaled (IP or non-IP data), 775 the network allocates an IP address or establishes a direct 776 forwarding path. DoNAS is regulated under rate control upon previous 777 agreement, meaning that a maximum number of bits per unit of time is 778 agreed upon per device subscription beforehand and configured in the 779 device. The use of DoNAS is typically expected when a terminal in a 780 power-saving state requires a short transmission and receiving an 781 acknowledgment or short feedback from the network. Depending on the 782 size of buffered data to transmit, the UE might be instructed to 783 deploy the connected mode transmissions instead, limiting and 784 controlling the DoNAS transmissions to predefined thresholds and a 785 good resource optimization balance for the terminal the network. The 786 support for mobility of DoNAS is present but produces additional 787 overhead. 789 +--------+ +--------+ +--------+ 790 | | | | | | +-----------------+ 791 | UE | | C-BS | | C-SGN | |Roaming Scenarios| 792 +----|---+ +--------+ +--------+ | +--------+ | 793 | | | | | | | 794 +----------------|------------|+ | | P-GW | | 795 | Attach | | +--------+ | 796 +------------------------------+ | | | 797 | | | | | | 798 +------|------------|--------+ | | | | 799 |RRC Connection Establishment| | | | | 800 |with NAS PDU transmission | | | | | 801 |& Ack Rsp | | | | | 802 +----------------------------+ | | | | 803 | | | | | | 804 | |Initial UE | | | | 805 | |message | | | | 806 | |----------->| | | | 807 | | | | | | 808 | | +---------------------+| | | 809 | | |Checks Integrity || | | 810 | | |protection, decrypts || | | 811 | | |data || | | 812 | | +---------------------+| | | 813 | | | Small data packet | 814 | | |-------------------------------> 815 | | | Small data packet | 816 | | |<------------------------------- 817 | | +----------|---------+ | | | 818 | | Integrity protection,| | | | 819 | | encrypts data | | | | 820 | | +--------------------+ | | | 821 | | | | | | 822 | |Downlink NAS| | | | 823 | |message | | | | 824 | |<-----------| | | | 825 +-----------------------+ | | | | 826 |Small Data Delivery, | | | | | 827 |RRC connection release | | | | | 828 +-----------------------+ | | | | 829 | | 830 | | 831 +-----------------+ 833 Figure 6: DoNAS transmission sequence from an Uplink initiated access 834 +---+ +---+ +---+ +----+ 835 Application |AP1| |AP1| |AP2| |AP2 | 836 (IP/non-IP) |PDU| |PDU| |PDU| ............... |PDU | 837 +---+ +---+ +---+ +----+ 838 | |/ / | \ | | 839 NAS /RRC +--------+---|---+----+ +---------+ 840 |NAS/|AP1|AP1|AP2|NAS/| |NAS/|AP2 | 841 |RRC |PDU|PDU|PDU|RRC | |RRC |PDU | 842 +--------+-|-+---+----+ +---------| 843 | |\ | | | 844 |<--Max. 1600 bytes-->|__ |_ | 845 | | \__ \___ \_ \_ 846 | | \ \ \__ \_ 847 +---------------|+-----|----------+ \ \ 848 RLC |RLC | NAS/RRC ||RLC | NAS/RRC | +----|-------+ 849 |Head| PDU(1/2)||Head | PDU (2/2)| |RLC |NAS/RRC| 850 +---------------++----------------+ |Head|PDU | 851 | | | \ | +------------+ 852 | | LCID1 | \ | | / 853 | | | \ \ | | 854 | | | \ \ | | 855 | | | \ \ \ | 856 +----+----+----------++-----|----+---------++----+---------|---+ 857 MAC |MAC |RLC | RLC ||MAC |RLC | RLC ||MAC | RLC |Pad| 858 |Head|Head| PAYLOAD ||Head |Head| PAYLOAD ||Head| PDU | | 859 +----+----+----------++-----+----+---------++----+---------+---+ 860 TB1 TB2 TB3 862 Figure 7: Example of User Plane packet encapsulation for Data over 863 NAS 865 11. Normative References 867 [RFC5795] Sandlund, K., Pelletier, G., and L-E. Jonsson, "The RObust 868 Header Compression (ROHC) Framework", RFC 5795, 869 DOI 10.17487/RFC5795, March 2010, . 872 [RFC8376] Farrell, S., Ed., "Low-Power Wide Area Network (LPWAN) 873 Overview", RFC 8376, DOI 10.17487/RFC8376, May 2018, 874 . 876 [RFC8724] Minaburo, A., Toutain, L., Gomez, C., Barthel, D., and JC. 877 Zuniga, "SCHC: Generic Framework for Static Context Header 878 Compression and Fragmentation", RFC 8724, 879 DOI 10.17487/RFC8724, April 2020, . 882 Authors' Addresses 884 Edgar Ramos 885 Ericsson 886 Hirsalantie 11 887 02420 Jorvas, Kirkkonummi 888 Finland 890 Email: edgar.ramos@ericsson.com 892 Ana Minaburo 893 Acklio 894 1137A Avenue des Champs Blancs 895 35510 Cesson-Sevigne Cedex 896 France 898 Email: ana@ackl.io