| < draft-bernardos-sfc-nsh-distributed-control-03.txt | draft-bernardos-sfc-nsh-distributed-control-04.txt > | |||
|---|---|---|---|---|
| SFC WG CJ. Bernardos | SFC WG CJ. Bernardos | |||
| Internet-Draft UC3M | Internet-Draft UC3M | |||
| Intended status: Experimental A. Mourad | Intended status: Experimental A. Mourad | |||
| Expires: March 14, 2022 InterDigital | Expires: 22 September 2022 InterDigital | |||
| September 10, 2021 | 21 March 2022 | |||
| NSH extensions for local distributed SFC control | NSH extensions for local distributed SFC control | |||
| draft-bernardos-sfc-nsh-distributed-control-03 | draft-bernardos-sfc-nsh-distributed-control-04 | |||
| Abstract | Abstract | |||
| Service function chaining (SFC) allows the instantiation of an | Service function chaining (SFC) allows the instantiation of an | |||
| ordered set of service functions and subsequent "steering" of traffic | ordered set of service functions and subsequent "steering" of traffic | |||
| through them. In order to set up and maintain SFC instances, a | through them. In order to set up and maintain SFC instances, a | |||
| control plane is required, which typically is centralized. In | control plane is required, which typically is centralized. In | |||
| certain environments, such as fog computing ones, such centralized | certain environments, such as fog computing ones, such centralized | |||
| control might not be feasible, calling for distributed SFC control | control might not be feasible, calling for distributed SFC control | |||
| solutions. This document specifies several NSH extensions to provide | solutions. This document specifies several NSH extensions to provide | |||
| skipping to change at page 1, line 38 ¶ | skipping to change at page 1, line 38 ¶ | |||
| 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 March 14, 2022. | This Internet-Draft will expire on 22 September 2022. | |||
| Copyright Notice | Copyright Notice | |||
| Copyright (c) 2021 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 | Provisions Relating to IETF Documents (https://trustee.ietf.org/ | |||
| (https://trustee.ietf.org/license-info) in effect on the date of | license-info) in effect on the date of publication of this document. | |||
| publication of this document. Please review these documents | Please review these documents carefully, as they describe your rights | |||
| carefully, as they describe your rights and restrictions with respect | and restrictions with respect to this document. Code Components | |||
| to this document. Code Components extracted from this document must | extracted from this document must include Revised BSD License text as | |||
| include Simplified BSD License text as described in Section 4.e of | described in Section 4.e of the Trust Legal Provisions and are | |||
| the Trust Legal Provisions and are provided without warranty as | provided without warranty as described in the Revised BSD License. | |||
| described in the Simplified BSD License. | ||||
| Table of Contents | Table of Contents | |||
| 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 | 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 | |||
| 2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 4 | 2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 4 | |||
| 3. Local SFC control signaling extending NSH . . . . . . . . . . 5 | 3. Local SFC control signaling extending NSH . . . . . . . . . . 4 | |||
| 4. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 7 | 4. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 7 | |||
| 5. Security Considerations . . . . . . . . . . . . . . . . . . . 8 | 5. Security Considerations . . . . . . . . . . . . . . . . . . . 8 | |||
| 6. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 8 | 6. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 8 | |||
| 7. References . . . . . . . . . . . . . . . . . . . . . . . . . 8 | 7. References . . . . . . . . . . . . . . . . . . . . . . . . . 8 | |||
| 7.1. Normative References . . . . . . . . . . . . . . . . . . 8 | 7.1. Normative References . . . . . . . . . . . . . . . . . . 8 | |||
| 7.2. Informative References . . . . . . . . . . . . . . . . . 8 | 7.2. Informative References . . . . . . . . . . . . . . . . . 8 | |||
| Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 8 | Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 8 | |||
| 1. Introduction | 1. Introduction | |||
| skipping to change at page 5, line 6 ¶ | skipping to change at page 5, line 4 ¶ | |||
| Compared to existing SFC controllers/orchestrators, which manage | Compared to existing SFC controllers/orchestrators, which manage | |||
| multiple SFCs instantiated over a common infrastructure, pseudo | multiple SFCs instantiated over a common infrastructure, pseudo | |||
| controllers are constrained to service specific lifecycle | controllers are constrained to service specific lifecycle | |||
| management. | management. | |||
| SFC Central Controller (C-CTRL): central control plane logical | SFC Central Controller (C-CTRL): central control plane logical | |||
| entity in charge of configuring and managing the SFC components | entity in charge of configuring and managing the SFC components | |||
| [RFC7665]. | [RFC7665]. | |||
| 3. Local SFC control signaling extending NSH | 3. Local SFC control signaling extending NSH | |||
| o | o | |||
| node B | | node B | | |||
| +--------|-+ F1+-.-.-+F2+-.-.-+F3 SFC | +--------|-+ F1+-·-·-+F2+-·-·-+F3 SFC | |||
| | ........ | | | ········ | | |||
| | |P-CTRL| | | | |P-CTRL| | | |||
| | ........ | | | ········ | | |||
| +-.-.-+F2 | | +-·-·-+F2 | | |||
| o / +---+------+ ________ | o / +---+------+ ________ | |||
| | . . _( )_ | | · · _( )_ | |||
| +--------|-+ / / _( +--------+ )_ | +--------|-+ / / _( +--------+ )_ | |||
| | | . . (_ | C-CTRL | _) | | | · · (_ | C-CTRL | _) | |||
| | | / / (_+--------+_) | | | / / (_+--------+_) | |||
| | |. | (________) | | |· | (________) | |||
| | +-.-./ . | | +-·-·/ · | |||
| | F1 | | ( (oo) ) | | F1 | | ( (oo) ) | |||
| +----------+ . o /\ ........ | +----------+ · o /\ ········ | |||
| node A | | /\/\ |P-CTRL| | node A | | /\/\ |P-CTRL| | |||
| +-----.--|-+ /\/\/\........ | +-----·--|-+ /\/\/\········ | |||
| | | | /\/ \/\ F3 | | | | /\/ \/\ F3 | |||
| | . | node D | | · | node D | |||
| | | | | | | | | |||
| | + | | | + | | |||
| | | | | | | |||
| +----------+ | +----------+ | |||
| node C | node C | |||
| Figure 1: Example SFC scenario | Figure 1: Example SFC scenario | |||
| Figure 1 shows an exemplary scenario to show the use of the new NSH | Figure 1 shows an exemplary scenario to show the use of the new NSH | |||
| extensions. In this scenario, there is no mobility, so nodes are not | extensions. In this scenario, there is no mobility, so nodes are not | |||
| moving out of radio coverage. In this scenario, at a given point in | moving out of radio coverage. In this scenario, at a given point in | |||
| time the service demands increase, which requires F2 (running at node | time the service demands increase, which requires F2 (running at node | |||
| B) and F3 (running at node D) to have more resources allocated, as | B) and F3 (running at node D) to have more resources allocated, as | |||
| otherwise the service would not meet the required SLA. This is | otherwise the service would not meet the required SLA. This is | |||
| detected by the P-CTRL through service-specific local OAM monitoring. | detected by the P-CTRL through service-specific local OAM monitoring. | |||
| Once detected the need of scaling up the resources at nodes B and D, | Once detected the need of scaling up the resources at nodes B and D, | |||
| P-CTRL notifies this through in-band signaling in the actual data | P-CTRL notifies this through in-band signaling in the actual data | |||
| skipping to change at page 7, line 4 ¶ | skipping to change at page 7, line 4 ¶ | |||
| The format of the new variable-length field for NS lifecycle | The format of the new variable-length field for NS lifecycle | |||
| management commands is shown next: | management commands is shown next: | |||
| 0 1 2 3 | 0 1 2 3 | |||
| 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 | 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | NS lifecycle cmd | Type |U| Length | | | NS lifecycle cmd | Type |U| Length | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | Variable-Length Metadata | | | Variable-Length Metadata | | |||
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| o NS lifecycle cmd: the NS lifecycle management command. This is a | * NS lifecycle cmd: the NS lifecycle management command. This is a | |||
| non-limiting list of the commands: | non-limiting list of the commands: | |||
| * Scale in. | - Scale in. | |||
| * Scale out. | - Scale out. | |||
| * Scale up. | - Scale up. | |||
| * Scale down. | - Scale down. | |||
| * Instantiate function. | - Instantiate function. | |||
| * Terminate function. | - Terminate function. | |||
| * Configure function. | - Configure function. | |||
| * Upgrade function. | - Upgrade function. | |||
| * Update function. | - Update function. | |||
| * Update function. | - Update function. | |||
| * Onboard VNFD. | - Onboard VNFD. | |||
| * Onboard OAMD. | - Onboard OAMD. | |||
| * Sync state. | - Sync state. | |||
| * Request to overcome CTRL. | - Request to overcome CTRL. | |||
| * CTRL activation. | - CTRL activation. | |||
| o Type: indicates the explicit type of command carried out. This | * Type: indicates the explicit type of command carried out. This | |||
| depends on the orchestration framework implementation. | depends on the orchestration framework implementation. | |||
| o Unassigned bit: one unassigned bit is available for future use. | * Unassigned bit: one unassigned bit is available for future use. | |||
| This bit MUST NOT be set, and it MUST be ignored on receipt. | This bit MUST NOT be set, and it MUST be ignored on receipt. | |||
| o Unassigned bit: one unassigned bit is available for future use. | * Unassigned bit: one unassigned bit is available for future use. | |||
| This bit MUST NOT be set, and it MUST be ignored on receipt. | This bit MUST NOT be set, and it MUST be ignored on receipt. | |||
| 4. IANA Considerations | 4. IANA Considerations | |||
| N/A. | N/A. | |||
| 5. Security Considerations | 5. Security Considerations | |||
| TBD. | TBD. | |||
| skipping to change at page 8, line 20 ¶ | skipping to change at page 8, line 20 ¶ | |||
| The work in this draft has been partially supported by the H2020 | The work in this draft has been partially supported by the H2020 | |||
| 5Growth (Grant 856709) and 5G-DIVE projects (Grant 859881). | 5Growth (Grant 856709) and 5G-DIVE projects (Grant 859881). | |||
| 7. References | 7. References | |||
| 7.1. Normative References | 7.1. Normative References | |||
| [I-D.bernardos-sfc-distributed-control] | [I-D.bernardos-sfc-distributed-control] | |||
| Bernardos, C. J. and A. Mourad, "Distributed SFC control | Bernardos, C. J. and A. Mourad, "Distributed SFC control | |||
| for fog environments", draft-bernardos-sfc-distributed- | for fog environments", Work in Progress, Internet-Draft, | |||
| control-04 (work in progress), July 2021. | draft-bernardos-sfc-distributed-control-05, 27 January | |||
| 2022, <https://www.ietf.org/archive/id/draft-bernardos- | ||||
| sfc-distributed-control-05.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, | |||
| DOI 10.17487/RFC2119, March 1997, | DOI 10.17487/RFC2119, March 1997, | |||
| <https://www.rfc-editor.org/info/rfc2119>. | <https://www.rfc-editor.org/info/rfc2119>. | |||
| 7.2. Informative References | 7.2. Informative References | |||
| [I-D.bernardos-sfc-fog-ran] | [I-D.bernardos-sfc-fog-ran] | |||
| Bernardos, C. J., Rahman, A., and A. Mourad, "Service | Bernardos, C. J. and A. Mourad, "Service Function Chaining | |||
| Function Chaining Use Cases in Fog RAN", draft-bernardos- | Use Cases in Fog RAN", Work in Progress, Internet-Draft, | |||
| sfc-fog-ran-09 (work in progress), March 2021. | draft-bernardos-sfc-fog-ran-10, 22 October 2021, | |||
| <https://www.ietf.org/archive/id/draft-bernardos-sfc-fog- | ||||
| ran-10.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>. | |||
| Authors' Addresses | Authors' Addresses | |||
| Carlos J. Bernardos | Carlos J. Bernardos | |||
| Universidad Carlos III de Madrid | Universidad Carlos III de Madrid | |||
| Av. Universidad, 30 | Av. Universidad, 30 | |||
| Leganes, Madrid 28911 | 28911 Leganes, Madrid | |||
| Spain | Spain | |||
| Phone: +34 91624 6236 | Phone: +34 91624 6236 | |||
| Email: cjbc@it.uc3m.es | Email: cjbc@it.uc3m.es | |||
| URI: http://www.it.uc3m.es/cjbc/ | URI: http://www.it.uc3m.es/cjbc/ | |||
| Alain Mourad | Alain Mourad | |||
| InterDigital Europe | InterDigital Europe | |||
| Email: Alain.Mourad@InterDigital.com | Email: Alain.Mourad@InterDigital.com | |||
| URI: http://www.InterDigital.com/ | URI: http://www.InterDigital.com/ | |||
| End of changes. 41 change blocks. | ||||
| 54 lines changed or deleted | 55 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/ | ||||