SCHC Working Group L. Toutain Internet-Draft Institut MINES TELECOM; IMT-Atlantique Intended status: Standards Track A. Minaburo Expires: 14 April 2024 Consultant 12 October 2023 Static Context Header Compression and Fragmentation for packets establishing a flow draft-minaburo-schc-flow-compression-00 Abstract This document describes how to compress the header of packets belonging to a flow using Static Context Header Compression and Fragmentation (SCHC) specifications. Status of This Memo This Internet-Draft is submitted in full conformance with the provisions of BCP 78 and BCP 79. Internet-Drafts are working documents of the Internet Engineering Task Force (IETF). Note that other groups may also distribute working documents as Internet-Drafts. The list of current Internet- Drafts is at https://datatracker.ietf.org/drafts/current/. Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as "work in progress." This Internet-Draft will expire on 14 April 2024. Copyright Notice Copyright (c) 2023 IETF Trust and the persons identified as the document authors. All rights reserved. This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents (https://trustee.ietf.org/ license-info) in effect on the date of publication of this document. Please review these documents carefully, as they describe your rights and restrictions with respect to this document. Code Components extracted from this document must include Revised BSD License text as described in Section 4.e of the Trust Legal Provisions and are provided without warranty as described in the Revised BSD License. Toutain & Minaburo Expires 14 April 2024 [Page 1] Internet-Draft SCHC for Flow October 2023 Table of Contents 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 2. Conventions and Definitions . . . . . . . . . . . . . . . . . 2 3. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 2 4. Flow Compression . . . . . . . . . . . . . . . . . . . . . . 3 4.1. ## Action Derivable . . . . . . . . . . . . . . . . . . . 3 4.2. Type of Rules . . . . . . . . . . . . . . . . . . . . . . 4 4.2.1. Based-Rule. . . . . . . . . . . . . . . . . . . . . . 4 4.2.2. Derived-Rule. . . . . . . . . . . . . . . . . . . . . 5 5. IANA considerations . . . . . . . . . . . . . . . . . . . . . 5 6. Security considerations . . . . . . . . . . . . . . . . . . . 5 7. Normative References . . . . . . . . . . . . . . . . . . . . 5 Appendix A. Appendix A . . . . . . . . . . . . . . . . . . . . . 6 Appendix B. Acknowledgements . . . . . . . . . . . . . . . . . . 6 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 6 1. Introduction This document defines how to use Static Context Header Compression and fragmentation (SCHC) [RFC8724] and [RFC8824] for compressing the headers of packets in a flow. SCHC compresses headers of individual packets without any dependency among them, it does not have the notion of flow. In a flow, some information on the header change in each packet. When using SCHC, the information described in the Rule MAY change to consider this dependency. This document solves the possibility of optimizing the use of SCHC while compressing the flow packet headers. 2. Conventions and Definitions The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in BCP 14 [RFC2119] [RFC8174] when, and only when, they appear in all capitals, as shown here. 3. Terminology This document will follow the terms defined in [RFC8724] and in [RFC8824]. * Rule. Part of the Context that describes how a packet is Compressed/Decompressed or Fragmented/Reassembled. * Rule Manager (RM). It is in charge of handling data derived from the YANG Data Model and apply changes to the rules context. Toutain & Minaburo Expires 14 April 2024 [Page 2] Internet-Draft SCHC for Flow October 2023 * Action. Indication in the Rule to perform some operations. * * To Do 4. Flow Compression This document does not change the way SCHC compresses and chooses a Rule. The behavior defined in [RFC8724] is respected. SCHC compressor compresses each packet separately and MAY select the best behavior Rule for each packet. For instance, an action in the Rule indicates that the description compresses the header of a flow, and the compressor will process the packets using the action Derivable behavior. 4.1. ## Action Derivable This Action identifies those Rules describing protocol headers using flows to transmit payloads such as TCP, RTP, SCTP, or any other protocol. When SCHC compresses a packet belonging to a flow, it MUST first identify whether it belongs to a flow. SCHC will check the IP addresses and the ports and keep a reference value for the sequence number, the timestamp, and any other field that maintain the flow description. The fields describing a flow are out of the scope of this document. Each protocol MUST define the corresponding fields. The following packets belonging to a flow will use a Derived Rule which updates the fields changing on each flow packet. The Derived Rule is NOT limited to a number. SCHC C/D Rule Manager decides when to create a new Derived Rule or delete it. At the end of the flow, SCHC MUST delete all the Derived Rules. Figure 1 Shows the format of a Rule with Derivable Action. Toutain & Minaburo Expires 14 April 2024 [Page 3] Internet-Draft SCHC for Flow October 2023 Rule 1000 Action: Derivable +----------------+--+--+--+--------+--------+-----------++------+ | FID |FL|FP|DI| TV | MO | CDA || Sent | | | | | | | | ||[bits]| +----------------+--+--+--+--------+--------------------++------+ |IPv6 Version |4 |1 |Bi|6 | ignore | not-sent || | | ... || | |IPv6 AppIID |64|1 |Bi|::1 | equal | not-sent || | | ... | | | | | | || | |TCP Seq-Num. |32|1 |Up| 234 | LSB | MSB || XXX | +================+==+==+==+========+========+===========++======+ Rule 1001 Action: Derivable +----------------+--+--+--+--------+--------+-----------++------+ | FID |FL|FP|DI| TV | MO | CDA || Sent | | | | | | | | ||[bits]| +----------------+--+--+--+--------+--------------------++------+ |IPv6 Version |4 |1 |Bi|6 | ignore | not-sent || | | ... || | |IPv6 AppIID |64|1 |Bi|::1 | equal | not-sent || | | ... | | | | | | || | |TCP Seq-Num. |32|1 |Up| 235 | LSB | MSB || X | +================+==+==+==+========+========+===========++======+ Figure 1: Rule with Derivable Action 4.2. Type of Rules The [RFC8724] defines the format of the Rule and its content. But it does not specify the different types of Rules. This document specifies two kinds of Rules for compressing the headers of a flow packet. Based-Rule and Derived-Rule. 4.2.1. Based-Rule. A Based-Rule is a Rule as described in section 7.1 of RFC8724. These Rules are charged at run-time and contain the first values of the flow headers. But it will have the action Derivable. Toutain & Minaburo Expires 14 April 2024 [Page 4] Internet-Draft SCHC for Flow October 2023 4.2.2. Derived-Rule. A Derived-Rule is a short-life updated copy of a Based-Rule. This new Derived Rule has updated TV values of those fields that define the flow as Sequence Number, Timestamp, and any other field describing the flow. The compressor/decompressor will prioritize the last Derived Rule to compress the packet. And when needed, it can create another Derived Rule with new TV values or delete the oldest. The Rule ID used to identify the Derived Rules is a complementary number of the Based Rule, so if the Based Rule has a 1000 RuleID, the Derived Rule will use 1001, ..., 1020,... At the end of the flow transmission, SCHC must delete all the Derived Rules. 5. IANA considerations This document has no IANA actions. 6. Security considerations This document does not add any security considerations and follows the [RFC8724]. 7. Normative References [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, DOI 10.17487/RFC2119, March 1997, . [RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174, May 2017, . [RFC8724] Minaburo, A., Toutain, L., Gomez, C., Barthel, D., and JC. Zuniga, "SCHC: Generic Framework for Static Context Header Compression and Fragmentation", RFC 8724, DOI 10.17487/RFC8724, April 2020, . [RFC8824] Minaburo, A., Toutain, L., and R. Andreasen, "Static Context Header Compression (SCHC) for the Constrained Application Protocol (CoAP)", RFC 8824, DOI 10.17487/RFC8824, June 2021, . Toutain & Minaburo Expires 14 April 2024 [Page 5] Internet-Draft SCHC for Flow October 2023 Appendix A. Appendix A To Do, examples. Appendix B. Acknowledgements The authors would like to thank (in alphabetic order): ToDo Authors' Addresses Laurent Toutain Institut MINES TELECOM; IMT-Atlantique 2 rue de la Chataigneraie 35576 Cesson-Sevigne Cedex France Email: Laurent.Toutain@imt-atlantique.fr Ana Minaburo Consultant Rue de Rennes 35510 Cesson-Sevigne Cedex France Email: anaminaburo@gmail.com Toutain & Minaburo Expires 14 April 2024 [Page 6]