r in which they must be executed. A service forward- ing graph is used to represent these SFCs where the nodes of the graph represent SFs. Each node of a graph can be part of one or many abstract SFCs. A single SF can appear one or more times in a given SFC. A given SFC may start at the origination point of the forwarding graph or at any subsequent node in the forwarding graph. SFs can also perform 5.2 Service Function Chaining Cat 1 Cat 2 Cat 3 Other application platforms, for example IMS TCP-Opt. Parental Hdr.Enr Cntrl Video-Opt Internet Access services Service functions Figure 5.2 SFC in telecom network. SFC mgmt and control plane SF forwarder SFC orchestrator SFC proxy Policy engine SFC aware SF VNF manager Service SFC encapsulation SFC unaware SF classifier SFC/SDN controller Virtual infrastructure Mgr Underlying infrastructure compute, network, storage (virtualized) Figure 5.3 SFC framework. branching in the service forwarding graph. It is also possible to have multiple termination points in an SFC. There are four main components to the SFC architecture as illustrated in Figure 5.3. The main components are the service clas- sification function (SCF), the chain termination function (CTF), the service function forwarder (SFF), and the SF. The SCF is responsible for determining the appropriate starting chain for processing each packet, encapsulating the service packets received at the classifier, and forwarding the encapsulated packets to the first SFF. The SCF may be a very simple function (i.e., every packet received on port 1 will be processed by a particular chain) or may be very complex (i.e., use deep packet inspection to make the chain decision based on the progress of the application). We called the former static service chain and the latter dynamic service chain. Two examples of static service chain and dynamic service chain are shown in Figure 5.4. 5 SDN and NFV in 5G Static Campus Storage Dynamic Normal Campus Storage Malicious Figure 5.4 Static and dynamic SFC examples. The SFF is the mechanism use