  Service Function Chaining (SFC) is the problem of deploying various network
service instances over geographically distributed data centers and providing
inter-connectivity among them. The goal is to enable the network traffic to
flow smoothly through the underlying network, resulting in an optimal quality
of experience to the end-users. Proper chaining of network functions leads to
optimal utilization of distributed resources. This has been a de-facto model in
the telecom industry with network functions deployed over underlying hardware.
Though this model has served the telecom industry well so far, it has been
adapted mostly to suit the static behavior of network services and service
demands due to the deployment of the services directly over physical resources.
This results in network ossification with larger delays to the end-users,
especially with the data-centric model in which the computational resources are
moving closer to end users. A novel networking paradigm, Network Function
Virtualization (NFV), meets the user demands dynamically and reduces
operational expenses (OpEx) and capital expenditures (CapEx), by implementing
network functions in the software layer known as virtual network functions
(VNFs). VNFs are then interconnected to form a complete end-to-end service,
also known as service function chains (SFCs). In this work, we study the
problem of deploying service function chains over network function virtualized
architecture. Specifically, we study virtual network function placement problem
for the optimal SFC formation across geographically distributed clouds. We set
up the problem of minimizing inter-cloud traffic and response time in a
multi-cloud scenario as an ILP optimization problem, along with important
constraints such as total deployment costs and service level agreements (SLAs).
We consider link delays and computational delays in our model.
