Skip to main content

Table 1 Glossary of symbols and functions related to the optimization model

From: Adaptive placement & chaining of virtual network functions with NFV-PEAR


Formal specification


Superscripts and subscripts



Physical infrastructure entity



SFC entity

Sets and set objects

\(p \in \mathcal {P}\)

\(p = \left (N^{P}, L^{P}, E^{P}\right)\)

Physical infrastructure instance, composed of nodes and links


NP={i | i is a N-PoP}

Network points of presence (N-PoPs) in the physical infrastructure


\(L^{P} = \left \{(i,j)\,\vert \, i,j \in N^{P}\right \}\)

Unidirectional links connecting pairs of N-PoPs i and j

i, rEP

\(E^{P} = \{\langle i, r \rangle \,\vert \, i \in N^{P} \land r \in \mathbb {N}^{*}\}\)

Identifier r of the actual location of N-PoP i

\(m \in \mathcal {F}\)

\(\mathcal {F} = \{m\,\vert \,m\,\text {is a function type}\,\} \)

Types of virtual network functions available

\(j \in \mathcal {U}_{m}\)

\(\mathcal {U}_{m} = \{j\,\vert \,j\,\text {is an instance of}\, m \in \mathcal {F}\,\}\)

Instances of virtual network function m available

\(\mathcal {Q}\)


Set of Service function chaining (SFC) requests to be deployed

\(q \in \mathcal {Q}\)

\(q = \left (N^{S}_{q}, L^{S}_{q}, E^{S}_{q}\right)\)

A single SFC request, composed of VNFs and their chainings

\(i \in N^{S}_{q}\)

NS={i | i is a VNF instance or endpoint}

SFC nodes (either a network function instance or an endpoint)

\((i,j) \in L^{S}_{q}\)

\(L^{S}_{q} = \left \{(i,j)\,\vert \, i,j \in N^{S}\right \}\)

Unidirectional links connecting SFC nodes

\(\langle i, r \rangle \in E_{q}^{S}\)

\(E^{S}_{q} = \{\langle i, r \rangle \,\vert \, i \in N^{S} \land r \in \mathbb {N}^{*}\}\)

Required physical location r of SFC endpoint i



Distinct forwarding paths (subgraphs) contained in a given SFC q

\(H^{H}_{q,i} \in H^{S}_{q}\)

\(H^{H}_{q,i} = \left (N^{H}_{q,i}, L^{H}_{q,i}\right)\)

A possible subgraph (with two endpoints only) of SFC q


\(N^{H}_{q,i} \subseteq N^{S}_{q}\)

VNFs that compose the SFC subgraph \(H^{H}_{q,i}\)


\(L^{H}_{q,i} \subseteq L^{S}_{q}\)

Links that compose the SFC subgraph \(H^{H}_{q,i}\)

\(y^{\prime }_{i,m,j}\)


Denotes whether there was a previous VNF placement

\(\delta ^{\prime }_{i,q,j}\)


Denotes whether there was a previous assignment of flow to VNF

\(\lambda ^{\prime }_{i,j,q,k,l}\)


Denotes whether there was a previous flow chaining



\(\phi \in \mathbb {R}_{+}, \phi \geq 0\)

Percentage of capacity of VNFs that can be violated.

α, β, and γ


Weight factors of the ILP model.

\(C^{P}_{i} \in \mathbb {R}_{+}\)


Computing power capacity of N-PoP i

\(B^{P}_{i,j} \in \mathbb {R}_{+}\)


One-way link bandwidth between N-PoPs i and j

\(D^{P}_{i,j} \in \mathbb {R}_{+}\)


One-way link delay between N-PoPs i and j

\(C^{S}_{q,i} \in \mathbb {R}_{+}\)


Computing power required for network function i of SFC q

\(B^{S}_{q,i,j} \in \mathbb {R}_{+}\)


One-way link bandwidth required between nodes i and j of SFC q

\(D^{S}_{q} \in \mathbb {R}_{+}\)


Maximum tolerable end-to-end delay of SFC q



\(f^{type} : N^{P} \cup N^{S} \rightarrow \mathcal {F}\)

Type of some given virtual network function (VNF)


\(f^{cpu} : (\mathcal {F} \times \mathcal {U}_{m}) \rightarrow \mathbb {R}_{+}\)

Computing power associated to instance j of VNF type m


\(f^{delay} : \mathcal {F} \rightarrow \mathbb {R}_{+}\)

Processing delay associated to VNF type m



\(Y = \{\,y_{i,m,j}\,,\,\forall \,i \in N^{P}, m \in \mathcal {F}, j \in \mathcal {U}_{m}\,\}\)

VNF placement


\(\Delta = \left \{\,\delta _{i,q,j}\,,\,\forall \,i \in N^{P}, q \in \mathcal {Q}, j \in N_{q}^{S}\,\right \}\)

Assignment of required network functions/endpoints


\(\Lambda = \left \{\,\lambda _{i,j,q,k,l}\,,\,\forall \,(i,j) \in L^{P}, q \in \mathcal {Q}, (k,l) \in L_{q}^{S}\,\right \}\)

Chaining allocation

\(\overline {y}_{i,m,j} \in \overline {Y}\)

\(\overline {Y} = \{\,\overline {y}_{i,m,j}\,,\,\forall \,i \in N^{P}, m \in \mathcal {F}, j \in \mathcal {U}_{m}\,\}\)

Denotes whether an VNF placement changes

\(\overline {\delta }_{i,q,j} \in \overline {\Delta }\)

\(\overline {\Delta } = \left \{\,\overline {\delta }_{i,q,j}\,,\,\forall \,i \in N^{P}, q \in \mathcal {Q}, j \in N_{q}^{S}\,\right \}\)

Denotes whether an assignment of flow to VNF changes

\(\overline {\lambda }_{i,j,q,k,l} \in \overline {\Lambda }\)

\(\overline {\Lambda } = \left \{\,\overline {\lambda }_{i,j,q,k,l}\,,\,\forall \,(i,j) \in L^{P}, q \in \mathcal {Q}, (k,l) \in L_{q}^{S}\,\right \}\)

Denotes whether a flow chaining changes