We exemplify the need for chaining service functions at the level
of a service name through a use case stemming from the current
3GPP Release 16 work on Service Based Architecture (SBA) [SDO-3GPP-SBA], [SDO-3GPP-SBA-ENHANCEMENT]. In
this work, mobile network control planes are proposed to be
realized by replacing the traditional network function interfaces
with a fully service-based one. HTTP was chosen as the
application-layer protocol for exchanging suitable service
requests [SDO-3GPP-SBA]. With this in mind, the
exchange between, for example, the 3GPP-defined (Rel. 15) Session
Management Function (SMF) and the Access and Mobility Management
Function (AMF) in a 5G control plane is being described as a set
of web-service-like requests that are, in turn, embedded into HTTP
requests. Hence, interactions in a 5G control plane can be
modeled based on service function chains where the relationship
is between the specific (IP-based) service function endpoints that
implement the necessary service endpoints in the SMF and AMF. The
service functions are exposed through URIs with work ongoing to
define the used naming conventions for such URIs.¶
This move from a network function model (in pre-Release 15 systems of
3GPP) to a service-based model is motivated through the
proliferation of data-center operations for mobile network
control-plane services. In other words, typical IT-based methods
to service provisioning, particularly that of virtualization of
entire compute resources, are envisioned to being used in future
operations of mobile networks. Hence, operators of such future
mobile networks desire to virtualize service function endpoints
and direct (control-plane) traffic to the most appropriate
current service instance in the most appropriate (local) data
center, such data center envisioned as being interconnected
through a software-defined wide area network
(SD-WAN). "Appropriate" here can be defined by topological or
geographical proximity of the service initiator to the service
function endpoint. Alternatively, network or service instance
compute load can be used to direct a request to a more
appropriate (in this case less loaded) instance to reduce
possible latency of the overall request. Such data-center-centric
operation is extended with the trend towards regionalization of
load through a "regional office" approach, where
micro data centers provide virtualizable resources that can be used in the
service execution, creating a larger degree of freedom when
choosing the "most appropriate" service endpoint for a particular
incoming service request.¶
While the move to a service-based model aligns well with the
framework of SFC, choosing the most appropriate service instance
at runtime requires so-called "rechaining" of the SFC since the
relationships in said SFC are defined through Layer 2 or 3
identifiers, which, in turn, are likely to be different if the
chosen service instances reside in different parts of the network
(e.g., in a regional data center).¶
Hence, when a traffic flow is forwarded over a service chain
expressed as an SFC-compliant Service Function Path (SFP), packets in
the traffic flow are processed by the various service function
instances, with each service function instance applying a service
function prior to forwarding the packets to the next network node. It
is a service-layer concept and can possibly work over any Virtual
network layer, Underlay network, or possibly over an IP or any Layer 2
technology. At the service layer, Service Functions are identified
using a path identifier and an index. Eventually, this index is
translated to an IP address (or MAC address) of the host where the
service function is running. Because of this, any change-of-service
function instance is likely to require a change of the path
information since either the IP address (in the case of changing the
execution from one data center to another) or MAC address will change
due to the newly selected service function instance.¶
Returning to our 5G control-plane example, a user's connection request to
access an application server in the internet may start with signaling in the
Control Plane to set up user-plane bearers. The connection request may flow
through service functions over a service chain in the control plane, as
deployed by a network operator. Typical SFs in a 5G control plane may include
"RAN termination / processing", "Slice Selection Function", "AMF", and
"SMF". A "Network Slice" is a complete logical network including Radio Access
Network (RAN) and Core Network (CN). Distinct RAN and CN Slices may exist. A
device may access multiple Network Slices simultaneously through a single
RAN. The device may provide Network Slice Selection Assistance Information
(NSSAI) parameters to the network to help it select a RAN and a Core Network
part of a slice instance. Part of the control plane, the Common Control
Network Function (CCNF), the Network Slice Selection Function (NSSF) is in
charge of selecting core Network Slice instances. The Classifier, as
described in SFC architecture, may reside in the user terminal or at the
Evolved Node B (eNB). These service functions can be configured to be part
of a Service Function Chain. We can also say that some of the configurations
of the Service Function Path may change at the execution time. For example,
the SMF may be relocated as the user moves and a new SMF may be included in
the Service Function Path based on user location. Figure 1 shows the example Service Function Chain
described here.¶