d to forward packets along the chaining path to the SF. Logically, the SFF forms a switching layer above the existing virtual networking layers. The SFs are elements that perform specific functions on the packets. SFs are different from applications since they perform intermediate or middle operations on packets rather than terminating functions. An SF may be a chain-aware SF or a chain-unaware SF. Chain-aware SFs are capable of processing and forwarding using chain-specific encapsulations and forwarding rules. The CTF is responsible for decapsulating the packet and sending it along to the destination. CTFs may perform forward- ing based on the identity of the chain used to process the packet, addresses within the packet, or meta-data associated with the packet. 5.2.1 OpenFlow-Based SFC Solution Recently, there have been some efforts on how to steer traffic to provide inline service chaining. These mechanisms are designed to explicitly insert the inline services on the path between the endpoints, or explicitly route traffic through different middleboxes according to the policies. Simple [106] proposes an SDN framework to route traffic through a flexible set of service chains while balancing the load across network functions. FlowTags [107] can support dynamic service chaining. In this section, we summarize various solutions as follows: Single box running multiple services: This approach consolidates all inline services into a single box and hence avoids the need for deal- ing with inline service chaining configuration of the middleboxes. The operator adds new services by adding additional service cards 5.2 Service Function Chaining to its router or gateway. This approach cannot satisfy the openness requirement as it is hard to integrate existing third-party service appliances. This solution also suffers from a scalability issue as the number of services and the aggregated bandwidth is limited by the router's capacity. The number of slots in chassis is also limited. Statically configured service chains: The second