and header vector length
L
(
L
is constant)
▪
C
M
: cost of match tables, depending on match width
W
and depth
D
▪
C
A
: cost of the action processor of each HA table
Inequality (2) indicates that the number of HA tables
should be larger than the required HA resources, in which
function
⟨
x
/
y
⟩
denotes rounding up the value of
x
/
y
.
Generally, function
C
M
(
W
,
D
) is not linear with respect
to the two parameters, thus for different VNFs set and
different implementation platforms, the optimal
W
and
D
would be different. Generally, the hardware implementation
should consider the most representative and commonly
used VNFs, and carefully select suitable HA table volumes.
3. Mathematical Model and Problem De
fi
nition
Based on the details of VNF-HA mapping mentioned
above, we introduce a mathematical model for our system
and formally de
fi
ne the VNF-HA mapping and traf
fi
c
routing problem.
Network
Topology.
The
physical
network
is
represented as an undirected graph
G
=
(
N
,
L
), where
N
and
L
denote the set of FE nodes and links, respectively.
As de
fi
ned in the HSN FE structure, each FE node
n
2
N
has HA tables to hold the VNF rules, and the idle HA
table rule space is represented by
C
n
. The set
S
represents
these
VNF
servers
and
binary
variable
h
s
,
n
2
{
0, 1
}
indicates whether server
s
2
S
is attached to FE
n
2
N
.
VNFs.
Different types of VNFs can be provided in a
network. We assume that VNFs have been deployed on
commodity servers located within the network. Let set
P
=
(
P
AS
,
P
AL
,
P
UA
) represent possible VNF types,
where
P
AS
is the set of VNF types that require state
connection and can only be accelerated in the FE node
connected to its server,
P
AL
is the set of VNF types that
are stateless and can be accelerated in any FE node,
P
UA
is the set of VNF types that cannot be accelerated
in any FE node. Let the binary variable
h
s
,
p
2
{
0, 1
}
represent if VNF type
p
has been deployed on server
s
,
and
C
p
represent the rule space requirement of VNF
p
if
p
is mapped into hardware.
Traf
fi
c Requests.
We assume that there are several
requests for setting up paths for different kinds of traf
fi
c. A
traf
fi
c
request
is
represented
by
a
4-tuple
t
= <
u
t
,
v
t
,
Ψ
t
,
b
t
>
, where
u
t
,
v
t
2
N
denote the ingress and egress
nodes, respectively,
b
t
is the volume of traf
fi
c to be processed
(occupied bandwidth) and
Ψ
t
represents the ordered VNF
sequence the traf
fi
c must pass through (for example, the FW-
IDS-Proxy). For simplicity, a speci
fi
c NF instance cannot be
commonly used to handle two or more traf
fi
c requests
because of the different traf
fi
c processing demand.
The VNF-HA mapping and traf
fi
c routing problem can
be described as follows: given
K
traf
fi
c requests (
t
1
,
t
2
,
. . .
,
t
n
),
calculate
the
binary
variable
h
s
,
n
,
p
,
t
2
{
0, 1
}
that
represents whether the VNF
p
deployed in server
s
is to be
accelerated in node
n
for traf
fi
c request
t
, while achieving
the total optimization goals. Generally, the optimization
goal is to minimize the overall operation cost by (i)
mapping VNFs that need acceleration to the optimal FEs