| < draft-ietf-sfc-ioam-nsh-07.txt | draft-ietf-sfc-ioam-nsh-08.txt > | |||
|---|---|---|---|---|
| SFC F. Brockners, Ed. | SFC F. Brockners, Ed. | |||
| Internet-Draft Cisco | Internet-Draft Cisco | |||
| Intended status: Standards Track S. Bhandari, Ed. | Intended status: Standards Track S. Bhandari, Ed. | |||
| Expires: 4 August 2022 Thoughtspot | Expires: 5 October 2022 Thoughtspot | |||
| 31 January 2022 | 3 April 2022 | |||
| Network Service Header (NSH) Encapsulation for In-situ OAM (IOAM) Data | Network Service Header (NSH) Encapsulation for In-situ OAM (IOAM) Data | |||
| draft-ietf-sfc-ioam-nsh-07 | draft-ietf-sfc-ioam-nsh-08 | |||
| Abstract | Abstract | |||
| In-situ Operations, Administration, and Maintenance (IOAM) is used | In-situ Operations, Administration, and Maintenance (IOAM) is used | |||
| for recording and collecting operational and telemetry information | for recording and collecting operational and telemetry information | |||
| while the packet traverses a path between two points in the network. | while the packet traverses a path between two points in the network. | |||
| This document outlines how IOAM data fields are encapsulated with the | This document outlines how IOAM data fields are encapsulated with the | |||
| Network Service Header (NSH). | Network Service Header (NSH). | |||
| Status of This Memo | Status of This Memo | |||
| skipping to change at page 1, line 35 ¶ | skipping to change at page 1, line 35 ¶ | |||
| Internet-Drafts are working documents of the Internet Engineering | Internet-Drafts are working documents of the Internet Engineering | |||
| Task Force (IETF). Note that other groups may also distribute | Task Force (IETF). Note that other groups may also distribute | |||
| working documents as Internet-Drafts. The list of current Internet- | working documents as Internet-Drafts. The list of current Internet- | |||
| Drafts is at https://datatracker.ietf.org/drafts/current/. | Drafts is at https://datatracker.ietf.org/drafts/current/. | |||
| Internet-Drafts are draft documents valid for a maximum of six months | Internet-Drafts are draft documents valid for a maximum of six months | |||
| and may be updated, replaced, or obsoleted by other documents at any | and may be updated, replaced, or obsoleted by other documents at any | |||
| time. It is inappropriate to use Internet-Drafts as reference | time. It is inappropriate to use Internet-Drafts as reference | |||
| material or to cite them other than as "work in progress." | material or to cite them other than as "work in progress." | |||
| This Internet-Draft will expire on 4 August 2022. | This Internet-Draft will expire on 5 October 2022. | |||
| Copyright Notice | Copyright Notice | |||
| Copyright (c) 2022 IETF Trust and the persons identified as the | Copyright (c) 2022 IETF Trust and the persons identified as the | |||
| document authors. All rights reserved. | document authors. All rights reserved. | |||
| This document is subject to BCP 78 and the IETF Trust's Legal | This document is subject to BCP 78 and the IETF Trust's Legal | |||
| Provisions Relating to IETF Documents (https://trustee.ietf.org/ | Provisions Relating to IETF Documents (https://trustee.ietf.org/ | |||
| license-info) in effect on the date of publication of this document. | license-info) in effect on the date of publication of this document. | |||
| Please review these documents carefully, as they describe your rights | Please review these documents carefully, as they describe your rights | |||
| and restrictions with respect to this document. Code Components | and restrictions with respect to this document. Code Components | |||
| extracted from this document must include Revised BSD License text as | extracted from this document must include Revised BSD License text as | |||
| described in Section 4.e of the Trust Legal Provisions and are | described in Section 4.e of the Trust Legal Provisions and are | |||
| provided without warranty as described in the Revised BSD License. | provided without warranty as described in the Revised BSD License. | |||
| Table of Contents | Table of Contents | |||
| 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 | 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 | |||
| 2. Conventions . . . . . . . . . . . . . . . . . . . . . . . . . 2 | 2. Conventions . . . . . . . . . . . . . . . . . . . . . . . . . 2 | |||
| 3. IOAM encapsulation with NSH . . . . . . . . . . . . . . . . . 3 | 3. IOAM encapsulation with NSH . . . . . . . . . . . . . . . . . 3 | |||
| 4. Considerations . . . . . . . . . . . . . . . . . . . . . . . 4 | 4. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 4 | |||
| 4.1. IOAM and the use of the NSH O-bit . . . . . . . . . . . . 4 | 5. Security Considerations . . . . . . . . . . . . . . . . . . . 5 | |||
| 5. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 4 | 6. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 5 | |||
| 6. Security Considerations . . . . . . . . . . . . . . . . . . . 5 | 7. Contributors . . . . . . . . . . . . . . . . . . . . . . . . 5 | |||
| 7. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 5 | 8. References . . . . . . . . . . . . . . . . . . . . . . . . . 6 | |||
| 8. Contributors . . . . . . . . . . . . . . . . . . . . . . . . 5 | 8.1. Normative References . . . . . . . . . . . . . . . . . . 6 | |||
| 9. References . . . . . . . . . . . . . . . . . . . . . . . . . 6 | 8.2. Informative References . . . . . . . . . . . . . . . . . 6 | |||
| 9.1. Normative References . . . . . . . . . . . . . . . . . . 6 | ||||
| 9.2. Informative References . . . . . . . . . . . . . . . . . 7 | ||||
| Appendix A. Discussion of the IOAM encapsulation approach . . . 7 | Appendix A. Discussion of the IOAM encapsulation approach . . . 7 | |||
| Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 8 | Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 8 | |||
| 1. Introduction | 1. Introduction | |||
| In-situ OAM (IOAM), as defined in [I-D.ietf-ippm-ioam-data], is used | In-situ OAM (IOAM), as defined in [I-D.ietf-ippm-ioam-data], is used | |||
| to record and collect OAM information while the packet traverses a | to record and collect OAM information while the packet traverses a | |||
| particular network domain. The term "in-situ" refers to the fact | particular network domain. The term "in-situ" refers to the fact | |||
| that the OAM data is added to the data packets rather than is being | that the OAM data is added to the data packets rather than is being | |||
| sent within packets specifically dedicated to OAM. This document | sent within packets specifically dedicated to OAM. This document | |||
| skipping to change at page 3, line 33 ¶ | skipping to change at page 3, line 32 ¶ | |||
| |Ver|O|U| TTL | Length |U|U|U|U|MD Type| NP = TBD_IOAM | | | |Ver|O|U| TTL | Length |U|U|U|U|MD Type| NP = TBD_IOAM | | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ N | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ N | |||
| | Service Path Identifier | Service Index | S | | Service Path Identifier | Service Index | S | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ H | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ H | |||
| | ... | | | | ... | | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+<-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+<-+ | |||
| | IOAM-Type | IOAM HDR len | Reserved | Next Protocol | | | | IOAM-Type | IOAM HDR len | Reserved | Next Protocol | | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ I | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ I | |||
| ! | O | ! | O | |||
| ! | A | ! | A | |||
| ~ IOAM Option and Data Space ~ M | ~ IOAM Option and Optional Data Space ~ M | |||
| | | | | | | | | |||
| | | | | | | | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+<-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+<-+ | |||
| | | | | | | |||
| | | | | | | |||
| | Payload + Padding (L2/L3/ESP/...) | | | Payload + Padding (L2/L3/ESP/...) | | |||
| | | | | | | |||
| | | | | | | |||
| | | | | | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| skipping to change at page 4, line 30 ¶ | skipping to change at page 4, line 28 ¶ | |||
| the IOAM-Option-Type (e.g. see Section 5 of | the IOAM-Option-Type (e.g. see Section 5 of | |||
| [I-D.ietf-ippm-ioam-data] and Section 3.2 of | [I-D.ietf-ippm-ioam-data] and Section 3.2 of | |||
| [I-D.ietf-ippm-ioam-direct-export]). | [I-D.ietf-ippm-ioam-direct-export]). | |||
| Multiple IOAM-Option-Types MAY be included within the NSH | Multiple IOAM-Option-Types MAY be included within the NSH | |||
| encapsulation. For example, if a NSH encapsulation contains two | encapsulation. For example, if a NSH encapsulation contains two | |||
| IOAM-Option-Types before a data payload, the Next Protocol field of | IOAM-Option-Types before a data payload, the Next Protocol field of | |||
| the first IOAM option will contain the value of TBD_IOAM, while the | the first IOAM option will contain the value of TBD_IOAM, while the | |||
| Next Protocol field of the second IOAM-Option-Type will contain the | Next Protocol field of the second IOAM-Option-Type will contain the | |||
| "NSH Next Protocol" number indicating the type of the data payload. | "NSH Next Protocol" number indicating the type of the data payload. | |||
| The applicability of the IOAM Active and Loopback flags | ||||
| [I-D.ietf-ippm-ioam-flags] is outside the scope of this document and | ||||
| may be specified in the future. When a packet with IOAM is received | ||||
| at an NSH based forwarding node such as an Service Function Forwarder | ||||
| (SFF) that does not understand IOAM header, it SHOULD drop the | ||||
| packet. The mechanism to maintain and notify of such events are | ||||
| outside the scope of this document. | ||||
| 4. Considerations | 4. IANA Considerations | |||
| 4.1. IOAM and the use of the NSH O-bit | ||||
| [RFC8300] defines an "O bit" for OAM packets. Per [RFC8300] the O | ||||
| bit must be set for OAM packets and must not be set for non-OAM | ||||
| packets. Packets with IOAM data included MUST follow this | ||||
| definition, i.e. the O bit MUST NOT be set for regular customer | ||||
| traffic which also carries IOAM data and the O bit MUST be set for | ||||
| OAM packets which carry only IOAM data without any regular data | ||||
| payload. | ||||
| 5. IANA Considerations | ||||
| IANA is requested to allocate protocol numbers for the following "NSH | IANA is requested to allocate protocol numbers for the following "NSH | |||
| Next Protocol" related to IOAM: | Next Protocol" related to IOAM: | |||
| +---------------+-------------+---------------+ | +---------------+-------------+---------------+ | |||
| | Next Protocol | Description | Reference | | | Next Protocol | Description | Reference | | |||
| +---------------+-------------+---------------+ | +---------------+-------------+---------------+ | |||
| | x | TBD_IOAM | This document | | | x | TBD_IOAM | This document | | |||
| +---------------+-------------+---------------+ | +---------------+-------------+---------------+ | |||
| 6. Security Considerations | 5. Security Considerations | |||
| IOAM is considered a "per domain" feature, where one or several | IOAM is considered a "per domain" feature, where one or several | |||
| operators decide on leveraging and configuring IOAM according to | operators decide on leveraging and configuring IOAM according to | |||
| their needs. Still, operators need to properly secure the IOAM | their needs. Still, operators need to properly secure the IOAM | |||
| domain to avoid malicious configuration and use, which could include | domain to avoid malicious configuration and use, which could include | |||
| injecting malicious IOAM packets into a domain. For additional IOAM | injecting malicious IOAM packets into a domain. For additional IOAM | |||
| related security considerations, see Section 10 in | related security considerations, see Section 10 in | |||
| [I-D.ietf-ippm-ioam-data]. | [I-D.ietf-ippm-ioam-data]. | |||
| 7. Acknowledgements | 6. Acknowledgements | |||
| The authors would like to thank Eric Vyncke, Nalini Elkins, Srihari | The authors would like to thank Eric Vyncke, Nalini Elkins, Srihari | |||
| Raghavan, Ranganathan T S, Karthik Babu Harichandra Babu, Akshaya | Raghavan, Ranganathan T S, Karthik Babu Harichandra Babu, Akshaya | |||
| Nadahalli, Stefano Previdi, Hemant Singh, Erik Nordmark, LJ Wobker, | Nadahalli, Stefano Previdi, Hemant Singh, Erik Nordmark, LJ Wobker, | |||
| Andrew Yourtchenko and Greg Mirsky for the comments and advice. | Andrew Yourtchenko and Greg Mirsky for the comments and advice. | |||
| 8. Contributors | 7. Contributors | |||
| In addition to editors listed on the title page, the following people | In addition to editors listed on the title page, the following people | |||
| have contributed to this document: | have contributed to this document: | |||
| Vengada Prasad Govindan | Vengada Prasad Govindan | |||
| Cisco Systems, Inc. | Cisco Systems, Inc. | |||
| Email: venggovi@cisco.com | Email: venggovi@cisco.com | |||
| Carlos Pignataro | Carlos Pignataro | |||
| Cisco Systems, Inc. | Cisco Systems, Inc. | |||
| skipping to change at page 6, line 32 ¶ | skipping to change at page 6, line 25 ¶ | |||
| Menlo Park, CA 94025 | Menlo Park, CA 94025 | |||
| US | US | |||
| Email: petr@fb.com | Email: petr@fb.com | |||
| Remy Chang | Remy Chang | |||
| Barefoot Networks | Barefoot Networks | |||
| 2185 Park Boulevard | 2185 Park Boulevard | |||
| Palo Alto, CA 94306 | Palo Alto, CA 94306 | |||
| US | US | |||
| 9. References | 8. References | |||
| 9.1. Normative References | 8.1. Normative References | |||
| [I-D.ietf-ippm-ioam-data] | [I-D.ietf-ippm-ioam-data] | |||
| Brockners, F., Bhandari, S., and T. Mizrahi, "Data Fields | Brockners, F., Bhandari, S., and T. Mizrahi, "Data Fields | |||
| for In-situ OAM", Work in Progress, Internet-Draft, draft- | for In-situ OAM", Work in Progress, Internet-Draft, draft- | |||
| ietf-ippm-ioam-data-17, 13 December 2021, | ietf-ippm-ioam-data-17, 13 December 2021, | |||
| <https://www.ietf.org/archive/id/draft-ietf-ippm-ioam- | <https://www.ietf.org/archive/id/draft-ietf-ippm-ioam- | |||
| data-17.txt>. | data-17.txt>. | |||
| [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate | [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate | |||
| Requirement Levels", BCP 14, RFC 2119, | Requirement Levels", BCP 14, RFC 2119, | |||
| skipping to change at page 7, line 10 ¶ | skipping to change at page 6, line 50 ¶ | |||
| [RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC | [RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC | |||
| 2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174, | 2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174, | |||
| May 2017, <https://www.rfc-editor.org/info/rfc8174>. | May 2017, <https://www.rfc-editor.org/info/rfc8174>. | |||
| [RFC8300] Quinn, P., Ed., Elzur, U., Ed., and C. Pignataro, Ed., | [RFC8300] Quinn, P., Ed., Elzur, U., Ed., and C. Pignataro, Ed., | |||
| "Network Service Header (NSH)", RFC 8300, | "Network Service Header (NSH)", RFC 8300, | |||
| DOI 10.17487/RFC8300, January 2018, | DOI 10.17487/RFC8300, January 2018, | |||
| <https://www.rfc-editor.org/info/rfc8300>. | <https://www.rfc-editor.org/info/rfc8300>. | |||
| 9.2. Informative References | 8.2. Informative References | |||
| [FD.io] "Fast Data Project: FD.io", <https://fd.io/>. | [FD.io] "Fast Data Project: FD.io", <https://fd.io/>. | |||
| [I-D.ietf-ippm-ioam-deployment] | [I-D.ietf-ippm-ioam-deployment] | |||
| Brockners, F., Bhandari, S., Bernier, D., and T. Mizrahi, | Brockners, F., Bhandari, S., Bernier, D., and T. Mizrahi, | |||
| "In-situ OAM Deployment", Work in Progress, Internet- | "In-situ OAM Deployment", Work in Progress, Internet- | |||
| Draft, draft-ietf-ippm-ioam-deployment-00, 19 October | Draft, draft-ietf-ippm-ioam-deployment-00, 19 October | |||
| 2021, <https://www.ietf.org/archive/id/draft-ietf-ippm- | 2021, <https://www.ietf.org/archive/id/draft-ietf-ippm- | |||
| ioam-deployment-00.txt>. | ioam-deployment-00.txt>. | |||
| [I-D.ietf-ippm-ioam-direct-export] | [I-D.ietf-ippm-ioam-direct-export] | |||
| Song, H., Gafni, B., Zhou, T., Li, Z., Brockners, F., | Song, H., Gafni, B., Zhou, T., Li, Z., Brockners, F., | |||
| Bhandari, S., Sivakolundu, R., and T. Mizrahi, "In-situ | Bhandari, S., Sivakolundu, R., and T. Mizrahi, "In-situ | |||
| OAM Direct Exporting", Work in Progress, Internet-Draft, | OAM Direct Exporting", Work in Progress, Internet-Draft, | |||
| draft-ietf-ippm-ioam-direct-export-07, 13 October 2021, | draft-ietf-ippm-ioam-direct-export-07, 13 October 2021, | |||
| <https://www.ietf.org/archive/id/draft-ietf-ippm-ioam- | <https://www.ietf.org/archive/id/draft-ietf-ippm-ioam- | |||
| direct-export-07.txt>. | direct-export-07.txt>. | |||
| [I-D.ietf-ippm-ioam-flags] | ||||
| Mizrahi, T., Brockners, F., Bhandari, S., Sivakolundu, R., | ||||
| Pignataro, C., Kfir, A., Gafni, B., Spiegel, M., and J. | ||||
| Lemon, "In-situ OAM Loopback and Active Flags", Work in | ||||
| Progress, Internet-Draft, draft-ietf-ippm-ioam-flags-07, | ||||
| 13 October 2021, <https://www.ietf.org/archive/id/draft- | ||||
| ietf-ippm-ioam-flags-07.txt>. | ||||
| [RFC7665] Halpern, J., Ed. and C. Pignataro, Ed., "Service Function | [RFC7665] Halpern, J., Ed. and C. Pignataro, Ed., "Service Function | |||
| Chaining (SFC) Architecture", RFC 7665, | Chaining (SFC) Architecture", RFC 7665, | |||
| DOI 10.17487/RFC7665, October 2015, | DOI 10.17487/RFC7665, October 2015, | |||
| <https://www.rfc-editor.org/info/rfc7665>. | <https://www.rfc-editor.org/info/rfc7665>. | |||
| Appendix A. Discussion of the IOAM encapsulation approach | Appendix A. Discussion of the IOAM encapsulation approach | |||
| This section lists several approaches considered for encapsulating | This section lists several approaches considered for encapsulating | |||
| IOAM with NSH and presents the rationale for the approach chosen in | IOAM with NSH and presents the rationale for the approach chosen in | |||
| this document. | this document. | |||
| End of changes. 14 change blocks. | ||||
| 33 lines changed or deleted | 34 lines changed or added | |||
This html diff was produced by rfcdiff 1.48. The latest version is available from http://tools.ietf.org/tools/rfcdiff/ | ||||