Functions - Roberto Bifulco

Download Report

Transcript Functions - Roberto Bifulco

IEEE NetSoft‘16
Ready-to-Deploy
Service Function Chaining
for Mobile Networks
Roberto Bifulco, NEC Labs Europe
Anton Matsiuk, NEC Labs Europe
Alessio Silvestro, NEC Labs Europe
Network function deployment
▌Today: Change network topology
put the middlebox on path
Network
Function
2
© NEC Corporation 2016
NEC Public
Network Function Virtualization
3
© NEC Corporation 2016
NEC Public
Let’s chain all together
▌Dynamic on-demand composition
Service Function Chaining (SFC)
Network
Function
4
© NEC Corporation 2016
Network
Function
Network
Function
NEC Public
Network
Function
Challenges
▌Classification
Assign network flows to function chains
Scalability is the main issue
▌Traffic Steering
Move packets from one function to the next
Requires coordination of bi-directional flows
May require re-classification after a function has
been applied
5
© NEC Corporation 2016
NEC Public
Related work 1/2
▌SFC in Standards
RFC7498 Problem statement
RFC7665 Architecture
Network Service Header (NSH)
…
▌SFC in Research
SIMPLE, SIGCOMM ‘13
FlowTags, NSDI ‘14
StEERING, ICNP ‘13
SoftCell, CoNext ’13
…
6
© NEC Corporation 2016
NEC Public
Related work 2/2
▌Very good solutions!!
▌But…
Changes to the network hardware
Changes to the network functions
Changes to the network architecture
▌Unfulfilled Requirement:
a solution should introduce minimum
impact on the legacy infrastructure
7
© NEC Corporation 2016
NEC Public
CATENAE
Ready-to-Deploy Service Function Chaining
Let’s change topic…
9
© NEC Corporation 2016
NEC Public
The case of SGi-LANs
▌User traffic is carried in IP tunnels (GTP tunnels)
▌Operator’s services are deployed in a L2 domain
(SGi-LAN)
▌Network flows always start in the upstream direction
▌A NAT is always deployed
GTP
Tunnel
NAT
10
© NEC Corporation 2016
NEC Public
CATENAE architecture
No modifications
to the network
11
© NEC Corporation 2016
NEC Public
CATENAE’s classifier
No modifications
to the network
Classifier
scalability
NAT
12
© NEC Corporation 2016
NEC Public
Traffic Steering
▌Workaround IP routing
Tunneling is the straightforward solution
▌Issues:
VLAN is not an option
MPLS is expensive
Higher layers tunneling, e.g. VXLAN, impacts
performance
▌In CATENAE:
Traffic steering is enforced by the software switches
Only MAC address rewriting is used
13
© NEC Corporation 2016
NEC Public
Traffic Steering in CATENAE
▌Each (software) switch in the chain
knows the next hop for a given chain
E.g., the classifier knows all the first chains’
functions
▌Network flows reclassification & MAC
addresses rewriting after each function
▌Fake per-function VLANs to handle
opaque functions
14
© NEC Corporation 2016
NEC Public
Switch connected to a transparent function
▌Packet received from the SGi-LAN:
Lookup DST MAC ADDRESS  Send to corresponding function
▌Packet received from the Function:
Re-classify the packet  Rewrite SRC and DST MAC
ADDRESSES
Classifier
16
© NEC Corporation 2016
SGiLAN
NEC Public
F1
Switch connected to an Opaque function
(After a transparent function)
▌Packet received from the SGi-LAN:
Classify packet  Set fake-VLAN and send to corresponding
function
▌Packet received from the Function:
Lookup VLAN  use generated SRC MAC address, rewrite SRC
and DST MAC ADDRESSES
SGiLAN
17
© NEC Corporation 2016
F2
NEC Public
Switch connected to a function after an opaque function
▌Packet received from the SGi-LAN:
Lookup SRC MAC Addr  Set fake-VLAN and send to
corresponding function
SGiLAN
18
© NEC Corporation 2016
F3
NEC Public
Implementation
Implementation
▌SFC Controller
RYU SDN Framework, ~100 LoC in python
▌Virtual Network Functions:
 Emulated with click and node.js using Linux
containers
20
© NEC Corporation 2016
NEC Public
Evaluation
▌No forwarding delays
Chains execution do not involve control plane actions
▌No per-packet overheads
No encapsulation required
▌Classifier scalability
Only upstream flows are processed (10-15% of total traffic)
Support for millions of flow classification entries in software
hash tables
▌Simple integration in legacy networks
No “global” VLANs
No specialized hardware (switches and NICs)
21
© NEC Corporation 2016
NEC Public
Chains creation throughput
22
© NEC Corporation 2016
NEC Public
Conclusions
▌CATENAE is an effective system for
supporting Service Function Chaining in
today’s networks
▌Takeaways:
General Purpose Infrastructure != General Purpose
Solution
System-level solutions solve unsolvable problems!
23
© NEC Corporation 2016
NEC Public