Skip to content

Commit

Permalink
FIX casing issues & wording
Browse files Browse the repository at this point in the history
  • Loading branch information
watal committed Sep 4, 2024
1 parent a5cd1e3 commit cb3da38
Showing 1 changed file with 22 additions and 22 deletions.
44 changes: 22 additions & 22 deletions draft-watal-spring-srv6-sfc-sr-aware-functions.md
Original file line number Diff line number Diff line change
Expand Up @@ -71,7 +71,7 @@ The following terms are used in this document as defined in the related RFCs and
The following terms are used in this document as defined below:

* SRv6 Service Function Node: an SR segment endpoint node that provides SR-aware functions as service segments.
* Classification Rule Controller: applies sets of SR policy and flows to SR source nodes.
* Classification Rule Controller: applies sets of SR Policy and flows to SR source nodes.
* Service Function Controller: applies service segments to SRv6 service function nodes.
* SRv6 Controller: controls SRv6 services comprehensively, consisting of a Service Function Controller, a PCE, and a Classification Rule Controller.
* SRv6 Managers: manage SRv6 SFC infrastructure, consisting of a Virtualized Network Function (VNF) Manager, a Virtualized Infrastructure Manager (VIM), and a data collector of network metrics.
Expand All @@ -86,15 +86,15 @@ SRv6 SFC Architecture is designed with two main objectives:
* Comprehensive management: a centralized controller for SFC, handling SR Policy, link-state, and network metrics.
When providing SRv6 services, meeting SLAs for each customer is required.
These SLAs consist of one or more SLOs such as availability, latency, and bandwidth.
In an SRv6 SFC network, service segment provisioning, link-state collection, and SR policy calculation are required to meet SLOs, respectively.
In an SRv6 SFC network, service segment provisioning, link-state collection, and SR Policy calculation are required to meet SLOs, respectively.

{{!RFC8402}} outlines a hybrid control plane that merges a distributed control plane and a centralized control plane.
In this hybrid control plane, forwarding information like Node/Adjacency SIDs are advertised mutually by distributed SR nodes via IGPs such as ISIS and OSPF, while other information like SR Policies and service segments are provided by a centralized controller.

Software-Defined Networking (SDN) {{!RFC7426}} provides centralized management of a network by a controller and a manager.
Centralized management reduces operational costs through abstraction and automation.
The SDN framework allows users to manage an SR domain without considering the details of a forwarding plane like a topology and node state.
Operators can use a SRv6 controller to build SR policies for SFC and QoS, manage the state of network functions, issue service segments automatically, and specify disaster recovery with protection.
Operators can use a SRv6 controller to build SR Policies for SFC and QoS, manage the state of network functions, issue service segments automatically, and specify disaster recovery with protection.

* Simplicity: no SFC proxies, so that reduces nodes and address resource consumption.
Network complexity increases operating costs.
Expand All @@ -105,15 +105,15 @@ SRv6 SFC Architecture is designed with two main objectives:
## Assumptions
To achieve these objectives, this architecture is based on two main assumptions:

* Straightforward extension of the SRv6 Network Programming model
* Straightforward extension of the SRv6 network programming model

The protocol used in this architecture is compatible with SRv6.
This streamlines the operation of services like traffic steering, including SFC, redundancy, and local protection.
Standardized protocols such as BGP, PCEP, IS-IS, OSPF, TI-LFA, and Anycast SID are used in this architecture.

This architecture is SRv6 compliant, enabling support for SR-unaware functions, although SR-aware functions are expected to meet the objective.

* SDN Framework compliance and comprehensive management of SRv6 SFC by controllers
* SDN framework compliance and comprehensive management of SRv6 SFC by controllers

A controller is used to provide comprehensive management.
To simplify building and operating, the controller uses standardized protocols and abstracted service interfaces.
Expand All @@ -139,7 +139,7 @@ Figure 1 illustrates an overview of this architecture.
| | | | Interface
+--------|-----------|---------|---------|---------------|-------+
| +------v-----------|---------v-+ +-----v---------------v-----+ |
| | SRv6 SR Source Node / | | SRv6 Service | |
| | SR Source Node / | | SRv6 Service | |
| | Service Classification |-| Function | |
| | Function | | Node | |
| +------------------------------+ +---------------------------+ |
Expand Down Expand Up @@ -182,8 +182,8 @@ In this architecture, all forwarding plane components are located within the SR
~~~ drawing
+----------------------------------------------------------------+
| +--------------+ +--------+ +--------+ |
| | SRv6 SR | SRv6 Packet | SRv6 | SRv6 Packet | SRv6 | |
| | Source Node |(S2,S1; SL:1)|Service |(S2,S1; SL:1)|Service | |
| | SR Source | SRv6 Packet | SRv6 | SRv6 Packet | SRv6 | |
| | Node |(S2,S1; SL:1)|Service |(S2,S1; SL:1)|Service | |
-->| / Service |------------>|Function|------------>|Function|-->
| |Classification| | Node | | Node | |
| | Function | | (S1) | | (S2) | |
Expand All @@ -193,7 +193,7 @@ In this architecture, all forwarding plane components are located within the SR
{: #fp title="Forwarding Plane"}

Figure 2 shows an example of SFC with two network functions.
Firstly, the SRv6 SR source node classifies the flow and encapsulates it with an SRH containing the segment list <S1, S2>.
Firstly, the SR source node classifies the flow and encapsulates it with an SRH containing the segment list <S1, S2>.
Next, the SRv6 service function node (S1) receives the packet and applies a network function associated with an End.AN S1.
Finally, the SRv6 service function node (S2) receives the packet and also applies a network function associated End.AN S2, thus achieving SFC.

Expand Down Expand Up @@ -225,17 +225,17 @@ When an FRR occurs, if the Active segment is an Anycast SID, it MAY be forwarded
In such a case, since state synchronization may not have been completed, the network function MUST have a mechanism to handle rerouted packets, such as buffering to wait for synchronization.

## Service Function Chains
In this architecture, each SFC is represented as an SRv6 Policy {{!RFC9256}}.
The purpose or intent of each SRv6 Policy can be identified using attributes such as color or name.
In this architecture, each SFC is represented as an SR Policy.
The purpose or intent of each SR Policy can be identified using attributes such as color or name.

In general, SFC is achieved by using loose source routing.
If both SFC and QoS are desired, they can be achieved by using strict source routing or loose source routing with Flex-Algo SIDs.

## Per-Flow Encapsulation
In the SRv6 SR source node, which serves as the Service Classifier, packets are classified on a per-flow basis using PBR and encapsulated with SRv6 Policy.
Therefore, the SRv6 SR source node MUST be capable of identifying packets using at least a 5-tuple or even more detailed information.
In an SR source node, which serves as the Service Classification Function, packets are classified on a per-flow basis using PBR and encapsulated with SR Policy.
Therefore, the SR source node MUST be capable of identifying packets using at least a 5-tuple or even more detailed information.

In this architecture, aiming for comprehensive management, the service classifier has an API to communicate with the controller.
In this architecture, aiming for comprehensive management, the Service Classification Function has an API to communicate with the controller.

# Control Plane
A control plane is responsible for enabling comprehensive management of SRv6 SFC.
Expand All @@ -255,7 +255,7 @@ A control plane has a Northbound API to receive user requests and a Southbound A
(BGP Flowspec) | | (End.AN SID:S1)
+--------|-----------|---------|----------|----------------------+
| +------v-----------|---------v-+ +------v--------------------+ |
| | SRv6 SR Source Node / | | SRv6 Service | |
| | SR Source Node / | | SRv6 Service | |
| | Service Classification |-| Function | |
| | Function | | Node | |
| +------------------------------+ +---------------------------+ |
Expand All @@ -266,8 +266,8 @@ A control plane has a Northbound API to receive user requests and a Southbound A
The SRv6 Controller consists of the following three components:

* Service Function Controller: provides an SID for a network service and manages this state.
* PCE: provides SR Policies that fulfill SFC/QoS requirements from the headend to the tailend and sends them to the SRv6 SR source node.
* Classification Rule Controller: provides an Encapsulation Policy that corresponds to a specific flow and SR Policy, and sends them to the SRv6 SR source node.
* PCE: provides SR Policies that fulfill SFC/QoS requirements from the headend to the tailend and sends them to the SR source node.
* Classification Rule Controller: provides an Encapsulation Policy that corresponds to a specific flow and SR Policy, and sends them to the SR source node.

## Service Function Controller
Service Function Controller is responsible for enabling and disabling service segments of SRv6 service function nodes.
Expand All @@ -293,7 +293,7 @@ The BGP-LS service segment is required to calculate dynamic paths based on the s
## Classification Rule Controller
A Classification Rule Controller determines flows to apply specific SFC.

The classification results are advertised to each SRv6 SR source node as a set of flow, endpoints, and color with an extended protocol based on BGP Flowspec defined in {{!I-D.draft-ietf-idr-ts-flowspec-srv6-policy}}.
The classification results are advertised to each SR source node as a set of flow, endpoints, and color with an extended protocol based on BGP Flowspec defined in {{!I-D.draft-ietf-idr-ts-flowspec-srv6-policy}}.

# Management Plane
A management plane is responsible for configuring network function instances, monitoring resources, and collecting network metrics.
Expand All @@ -312,7 +312,7 @@ The details of each manager are outside the scope of this document, as the south
| | |
+--------|----------------|---------------|-------+
| +------|----------------v---------------|-----+ |
| | SRv6 Service | |
| | SR Service | |
| | Function | |
| | Node | |
| +---------------------------------------------+ |
Expand All @@ -323,10 +323,10 @@ The details of each manager are outside the scope of this document, as the south
Figure 4 shows examples of managers that MAY be added to a management plane:

* VNF Manager: handles deployment and scaling of network functions.
* This manager considers redundancy and link utilization optimization.
* VIM: monitors hypervisor resources on SRv6 service function node.
* It considers redundancy and link utilization optimization.
* VIM: monitors hypervisor resources on SRv6 service function nodes.
* In SRv6 SFC, a hypervisor managed by a VIM MAY be located in virtualized spaces within routers or on generic servers.
* Network Metrics Manager: collects metrics for SRv6 policy calculation and evaluation.
* Network Metrics Manager: collects metrics for SR Policy calculation and evaluation.
* Metrics are collected from multiple data sources, including IPFIX, TCP statistics, and SRv6 path tracing {{!I-D.draft-filsfils-spring-path-tracing}}.
* Metrics can be used for PCE calculation parameters.

Expand Down

0 comments on commit cb3da38

Please sign in to comment.