SlideShare uma empresa Scribd logo
1 de 117
Baixar para ler offline
This presentation is partly based on slide decks that have been kindly provided by Cisco Systems
SRv6 and the Network Programming Model
Hands-On tutorial
Stefano Salsano – University of Rome Tor Vergata / CNIT
stefano.salsano@uniroma2.it
6th IEEE Conference on Network Functions Virtualization and
Software Defined Networking (IEEE NFV-SDN 2020)
November 9th 2020
Tutorial highlights - part 1
• What is Segment Routing ?
• What is SRv6 ? (Segment Routing over IPv6)
• How does it work ? few protocol details…
Segment Routing Header (SRH)
2
• Why is SRv6 so cool?
Hint: scalability and SDN!
Tutorial highlights - part 1
• What is the Network Programming Model?
from “waypoints” to “instructions”
• How can we use the Network Programming Model?
SRv6 example use cases:
3
•SR Traffic Engineering / Fast ReRouting
•Service Chaining (SFC)
•VPNs/SD-WANs
Tutorial highlights - part 2 “Hands on”
• SRv6 open source implementations and tools
• The ROSE ecosystem (Linux)
4
• Hands-on using the rose-srv6 Virtual Machine
• Create SRv6 tunnels (VPNs) in a Linux based Data Plane
(SR ingress/SR waypoint/IPv6 transit/SR egress nodes)
- manual setup with Linux CLI
- setup using our controller
The ROSE ecosystem
5
Data
Plane
Control
Plane
web
dashboard
Controller
Apache Kafka
NorthBound APIs
(gRPC)
SouthBound APIs
(gRPC)
Orchestrator
ArangoDB
InfluxDB
Linux
Host/Server
Linux
Router
P4 Router
Experiment topology
6
Acknowledgements
7
This slideset originated from the following presentations:
• Segment Routing
Clarence Filsfils (CISCO), Kris Michielsen (CISCO)
http://www.segment-routing.net/tutorials/2016-09-27-segment-routing-introduction/
• Introduction to Segment Routing
Alberto Donzelli (CISCO)
CISCO Live! – January 29 February 2 2018 Barcelona, Spain
• SRv6 Network Programming
Francois Clad (CISCO)
(which in turn acknowledge several CISCO people)
Acknowledgements
8
This tutorial is based on work performed in the context of:
• 5G-EVE project funded by EU (Horizon 2020)
• ROSE project funded by CISCO University Research Program
5G European Validation Platform for Extensive Trials
https://www.5g-eve.eu/
Research on Open SRv6 Ecosystem
https://netgroup.github.io/rose/
The ROSE team Pier Luigi Ventre
Ahmed AbdelSalam
Bogdan Iatco
Mahdi Tajiki
Lorenzo Bracciale
Pierpaolo Loreti
Angelo Tulumello
Marco Bonola
Luca Chiaraviglio
Fabio D'Andreagiovanni
Marco Ferrari
Daniele Zaccariello
Emanuele Altomare
9
Andrea Mayer
Paolo Lungaroni
Francesco Lombardo
Carmine Scarpitta
Giulio Sidoretti
Stefano Salsano
The team involved in the setup of the tutorial VM and experiments
Agenda
SR and SRv6 introduction
SRv6 Dataplane
SRv6 Network Programming Model
SRv6 use cases
(TE / FRR / Service Function Chaining / VPNs / SD-WAN)
Hands-on part
SRv6 Segment Routing Header
Why SRv6 is so cool? Scalability, SDN…
Additional materials and conclusions
© 2018 Cisco and/or its affiliates. All rights reserved.© 2018 Cisco and/or its affiliates. All rights reserved.
Segment Routing : a form of source routing
Seattle
New-York
Toronto
Segment Routing
11
1. A unique and global luggage
tag is attached to the luggage
with the list of stops to the final
destination
2. At each stop, the luggage is
simply routed to the next hop
listed on the luggage tag
Mission - Route the luggage to Berlin
via Mexico and Madrid
Mexico
Madrid
Berlin
London
© 2018 Cisco and/or its affiliates. All rights reserved.© 2018 Cisco and/or its affiliates. All rights reserved.
Segment Routing : a form of source routing
Seattle
New-York
Toronto
Segment Routing
12
MEX
MAD
BER
1. A unique and global luggage
tag is attached to the luggage
with the list of stops to the final
destination
2. At each stop, the luggage is
simply routed to the next hop
listed on the luggage tag
Mission - Route the luggage to Berlin
via Mexico and Madrid
Mexico
Madrid
Berlin
London
© 2018 Cisco and/or its affiliates. All rights reserved.© 2018 Cisco and/or its affiliates. All rights reserved.
Segment Routing : a form of source routing
Seattle
New-York
Berlin
Mexico
Toronto London
Segment Routing
MEX
MAD
BER
13
MEX
MAD
BER
1. A unique and global luggage
tag is attached to the luggage
with the list of stops to the final
destination
2. At each stop, the luggage is
simply routed to the next hop
listed on the luggage tag
Mission - Route the luggage to Berlin
via Mexico and Madrid
Madrid
© 2018 Cisco and/or its affiliates. All rights reserved.© 2018 Cisco and/or its affiliates. All rights reserved.
Segment Routing : a form of source routing
Seattle
New-York
BerlinToronto London
Segment Routing
MEX
MAD
BER
MEX
MAD
BER
14
MEX
MAD
BER
1. A unique and global luggage
tag is attached to the luggage
with the list of stops to the final
destination
2. At each stop, the luggage is
simply routed to the next hop
listed on the luggage tag
Mission - Route the luggage to Berlin
via Mexico and Madrid
Mexico
Madrid
© 2018 Cisco and/or its affiliates. All rights reserved.© 2018 Cisco and/or its affiliates. All rights reserved.
• Strict Source Routing
• all routing steps should be listed by the source
• Loose Source Routing
• the source can add “waypoints” to the path
• Segment Routing uses Loose Source Routing
15
Source Routing variants (in packet networks!)
© 2018 Cisco and/or its affiliates. All rights reserved.© 2018 Cisco and/or its affiliates. All rights reserved.
• SR is based on Source Routing
• the source chooses a path and encodes it in the packet header as an ordered
list of segments
• the rest of the network executes the encoded instructions
• Segment: an identifier for any type of instruction
• forwarding (segment=>waypoint) or service (segment=>operation)
• SR Policy: an ordered list of segments (segment list)
16
Segment Routing (SR)
SR Policy and SR domain
S1
S2
S3Headend
Node
P=<S1,S2,S3> SR domain
SR Policy
17
Ingress node
(edge node)
Egress node
(edge node)
Datacenter
Server
SR path and SR segments
S1
S2
S3Headend
Node
P=<S1,S2,S3> SR domain
SR Policy
18
Ingress node Egress node
Datacenter
Server
S1 S2 S3
The path is split in three segments
© 2018 Cisco and/or its affiliates. All rights reserved.
Two dataplane instantiations
IPv6 : SRv6
• uses IPv6 source routing extension header (SRH) - RFC8754
• 1 segment = 1 IPv6 address
• a segment list = a list of addresses in the SRH
MPLS : SR-MPLS
• uses the mature MPLS HW with only SW upgrade
• 1 segment = 1 label
• a segment list = a label stack
Segment Routing
19
I will only discuss the SRv6 dataplane in the rest of this tutorial!
Agenda
SR and SRv6 introduction
SRv6 Dataplane
SRv6 Network Programming Model
SRv6 use cases
(TE / FRR / Service Function Chaining / VPNs / SD-WAN)
Hands-on part
SRv6 Segment Routing Header
Why SRv6 is so cool? Scalability, SDN…
Additional materials and conclusions
SRv6 – Forwarding Plane
21
• SRv6: a segment list is encoded in a routing
extension header (SRH)
• Segment → IPv6 Address
• The routing protocols natively distribute the
addresses
(no changes needed for topological instructions)
© 2018 Cisco and/or its affiliates. All rights reserved.
IPv6 header
22
SRH header
23
Total number
of segments
Pointer to the
current segment
SRv6 segments
24
S1
S2
S3Headend
Node
P=<S1,S2,S3> SR domain
SR Policy
Ingress node Egress node
Datacenter
Server
S1 S2 S3
The path is split in three segments, each one identified by an IPv6 address
© 2018 Cisco and/or its affiliates. All rights reserved.
SRv6 forwarding operations
S1
S2
S3
SR source
node SR domain
DA : Destination Address
SL : Segments Left
N4 N5
N6
N7Transit
node SR endpoint
25
Packet
© 2018 Cisco and/or its affiliates. All rights reserved.
PUSH
SRv6 forwarding operations
S1
S2
S3
SR source
node SR domain
SR Policy
P=<S1,S2,S3>
DA : Destination Address
SL : Segments Left
N4 N5
N6
N7Transit
node SR endpoint
26
Packet
(encapsulation)
© 2018 Cisco and/or its affiliates. All rights reserved.
SRv6 forwarding operations
S1
S2
S3
SR source
node SR domain
SR Policy
P=<S1,S2,S3>
DA : Destination Address
SL : Segments Left
IPv6 DA = S1
(S3, S2, S1) SL=2
Payload
SR H
IPv6 H
N4 N5
N6
N7Transit
node SR endpoint
27
Packet
PUSH
(encapsulation)
© 2018 Cisco and/or its affiliates. All rights reserved.
SRv6 forwarding operations
S1
S2
S3
SR source
node SR domain
SR Policy
P=<S1,S2,S3>
NEXT
DA : Destination Address
SL : Segments Left
IPv6 DA = S2
(S3, S2, S1) SL=1
Payload
SR H
IPv6 H
IPv6 DA = S1
(S3, S2, S1) SL=2
Payload
SR H
IPv6 H
N4 N5
N6
N7Transit
node SR endpoint
28
Packet
(encapsulation)
PUSH
© 2018 Cisco and/or its affiliates. All rights reserved.
SRv6 forwarding operations
S1
S2
S3
SR source
node SR domain
SR Policy
P=<S1,S2,S3>
NEXT CONTINUE
DA : Destination Address
SL : Segments Left
IPv6 DA = S2
(S3, S2, S1) SL=1
Payload
SR H
IPv6 H
IPv6 DA = S1
(S3, S2, S1) SL=2
Payload
SR H
IPv6 H IPv6 DA = S2
(S3, S2, S1) SL=1
Payload
SR H
IPv6 H
N4 N5
N6
N7Transit
node SR endpoint
29
Packet
(encapsulation)
PUSH
© 2018 Cisco and/or its affiliates. All rights reserved.
SRv6 forwarding operations
S1
S2
S3
SR source
node SR domain
SR Policy
P=<S1,S2,S3>
NEXT CONTINUE
DA : Destination Address
SL : Segments Left
IPv6 DA = S2
(S3, S2, S1) SL=1
Payload
SR H
IPv6 H IPv6 DA = S3
(S3, S2, S1) SL=0
Payload
SR H
IPv6 H
IPv6 DA = S1
(S3, S2, S1) SL=2
Payload
SR H
IPv6 H IPv6 DA = S2
(S3, S2, S1) SL=1
Payload
SR H
IPv6 H IPv6 DA = S3
(S3, S2, S1) SL=0
Payload
SR H
IPv6 H
N4 N5
N6
N7Transit
node SR endpoint
30
Packet
(encapsulation)
PUSH
© 2018 Cisco and/or its affiliates. All rights reserved.© 2018 Cisco and/or its affiliates. All rights reserved.
Global and Local Segments
• Global Segment
• Any node in the SR domain can execute the associated instruction (e.g. a waypoint,
a.k.a. node segment )
• Each node in the SR domain installs the associated instruction (e.g. forward to a
waypoint) in its forwarding table
• Local Segment
• Only a specific node can execute the associated instruction (e.g. forward the packet
over a specific outgoing interface a.k.a. IGP Adjacency Segment)
31
© 2018 Cisco and/or its affiliates. All rights reserved.© 2018 Cisco and/or its affiliates. All rights reserved.
SRv6 Dataplane - Node Segment
• Shortest-path to the IGP prefix
• Equal Cost Multi-Path (ECMP)-aware
• (Already) distributed by ISIS/OSPF
32
A5::
A5::
A1
A1::
A2
A2::
A3
A3::
A4
A4::
A5
A5::
A5::/56
A5::
A5::
A5::
A5::
© 2018 Cisco and/or its affiliates. All rights reserved.© 2018 Cisco and/or its affiliates. All rights reserved.
SRv6 Dataplane - Node Segment
• Shortest-path to the IGP prefix
• Equal Cost Multi-Path (ECMP)-aware
• (Already) distributed by ISIS/OSPF
33
A1
A1::
A2
A2::
A3
A3::
A4
A4::
A5
A5::
A4::
A4::
A4::/56
A4::
A4::
A4::
A4::
© 2018 Cisco and/or its affiliates. All rights reserved.© 2018 Cisco and/or its affiliates. All rights reserved.
A1
A1::
A2
A2::
A3
A3::
A4
A4::
A5
A5::
SRv6 Dataplane - IGP Adjacency Segment
• Forward on the IGP adjacency
• Advertised as an IPv6 SID
• Distributed by ISIS/OSPF in
specific TLVs
34
A4::C2
A4::C5
Adj to
A5
Adj to
A2
A4::C3
Adj to A3
© 2018 Cisco and/or its affiliates. All rights reserved.© 2018 Cisco and/or its affiliates. All rights reserved.
A1
A1::
A2
A2::
A3
A3::
A4
A4::
A5
A5::
SRv6 Dataplane - IGP Adjacency Segment
• Steer traffic on any path through the
network
• Path is specified by a list of IPv6
addresses (Segment List) in the SRH
header
• No path is signaled
• Per-flow state is created only in the
source node
• Single protocol: IS-IS or OSPF
35
SRH (A4::C5)
Packet to A5
SRH (A4::C5)
Packet to A5
Agenda
SR and SRv6 introduction
SRv6 Dataplane
SRv6 Network Programming Model
SRv6 use cases
(TE / FRR / Service Function Chaining / VPNs / SD-WAN)
Hands-on part
SRv6 Segment Routing Header
Why SRv6 is so cool? Scalability, SDN…
Additional materials and conclusions
• Scalability (thanks to Source Routing)
• the topological and service (NFV/SFC) path is encoded in packet header
• the network fabric does not hold any per-flow state for TE or NFV/SFC
• Simplicity
• automation: sub-50msec FRR (Fast ReRouting) with TI-LFA (Topology Independent
Loop Free Alternates)
• protocol elimination: LDP, RSVP-TE, NSH…
• End-to-End applicability (with SRv6)
• e.g. integrated view of Mobile Access, Data Center, Metro, WAN
Segment Routing: key advantages
37
Scalability : traditional approach
38
State information (match/action)
per flow in all nodes! example: “traditional” MPLS label
lookup tables with per-flow state
Scalability : SR approach
39
State information (match/action)
per flow only in the headend node
Scalability and SDN: traditional approach
40
“traditional” OpenFlow with
per-flow state in all nodes
SDN controller talks with
all nodes (per flow)
Scalability and SDN: SR approach
41
SDN controller only talks with
edge nodes (per flow)
SRv6: extending the SR domain (1/3)
42
S1
S2
S3Headend
Node
SR domainSR Policy
Ingress node
(edge node)
Egress node
(edge node)
Datacenter
Server
SRv6: extending the SR domain (2/3)
43
S1
S2
S3Headend
Node
SR domain
Ingress node
Datacenter
Server
Edge node
SR Policy
SR Policy
Datacenter
Network
SRv6: extending the SR domain (3/3)
44
S1
S2
S3
Headend
Node
SR domainSR Policy
Edge node
Datacenter
Server
Edge node
SR Policy
Datacenter
Network
Access / Metro
Network
“End-to-end” SRv6
© 2018 Cisco and/or its affiliates. All rights reserved.
IPv6 provides reachability
45
© 2018 Cisco and/or its affiliates. All rights reserved.
IPv6 provides reachability: IoT, Core, Data Centers
46
© 2018 Cisco and/or its affiliates. All rights reserved.
SRv6 Underlay and Overlay domains
47
Underlay
Overlay
© 2018 Cisco and/or its affiliates. All rights reserved.
SRv6 – Segment Routing & IPv6 : the Vision
• Simplicity
• Protocol elimination
• SLA
• Fast ReRoute and TE
• Overlay
• NFV
• SDN
• SR is de-facto SDN architecture
• 5G
48
IPv6 for reachability
SR for anything else
© 2018 Cisco and/or its affiliates. All rights reserved.
IPv6 for reachability
SRv6 for underlay
49
RSVP for FRR/TE Horrendous states scaling in k*N^2
© 2018 Cisco and/or its affiliates. All rights reserved.
IPv6 for reachability
SRv6 for underlay
50
SRv6 for Underlay
Simplification through protocol reduction
SLA through automated FRR and TE
De-facto SDN architecture
© 2018 Cisco and/or its affiliates. All rights reserved.
IPv6 for reachability
SRv6 for underlay and overlay
Multiplicity of protocols and states hinder network economics
51
SRv6 for Underlay Simplification, FRR, TE, SDN
UDP+VxLAN Overlay Additional Protocol just for tenant ID
NSH for NFV Additional Protocol and State
© 2018 Cisco and/or its affiliates. All rights reserved.
IPv6 for reachability
SRv6 for underlay and overlay
52
SRv6 for Underlay Simplification, FRR, TE, SDN
SRv6 for Overlay SRv6 for SFC, VPNs…
© 2018 Cisco and/or its affiliates. All rights reserved.
SRv6 – Segment Routing & IPv6
53
IPv6 for reachability
SR for anything else
• Simplicity
• Protocol elimination
• SLA
• Fast ReRoute and TE
• Overlay
• NFV
• SDN
• SR is de-facto SDN architecture
• 5G
Agenda
SR and SRv6 introduction
SRv6 Dataplane
SRv6 Network Programming Model
SRv6 use cases
(TE / FRR / Service Function Chaining / VPNs / SD-WAN)
Hands-on part
SRv6 Segment Routing Header
Why SRv6 is so cool? Scalability, SDN…
Additional materials and conclusions
© 2018 Cisco and/or its affiliates. All rights reserved.
Network instruction
• 128-bit SRv6 SID
• Locator: routed to the node performing the function
• Function: any possible function
either local to network node or app in VM/Container
• Flexible bit-length selection
55
FunctionLocator
© 2018 Cisco and/or its affiliates. All rights reserved.
Network instruction
• 128-bit SRv6 SID
• Locator: routed to the node performing the function
• Function: any possible function
either local to network node or app in VM/Container
• Arguments: optional argument bits to be used only by that SID
• Flexible bit-length selection
• USE WITH CAUTION… it may have side effects if it changes on a packet by packet
base for packets of the same flow
56
FunctionLocator Args*
Network Program
Next Segment
Locator 1 Function 1
Locator 1 Function 1
Locator 2 Function 2
Locator 3 Function 3
Locator 2 Function 2
Locator 3 Function 3
57
Network Program
Next Segment
Locator 2 Function 2
Locator 1 Function 1
Locator 2 Function 2
Locator 3 Function 3
Locator 1 Function 1
Locator 3 Function 3
58
Network Program
Next Segment
Locator 3 Function 3
Locator 1 Function 1
Locator 2 Function 2
Locator 3 Function 3
Locator 1 Function 1
Locator 2 Function 2
59
© 2018 Cisco and/or its affiliates. All rights reserved.
Network Program in the Packet Header
60
Locator 1 Function 1
Locator 2 Function 2
Locator 3 Function 3
TCP, UDP, QUIC
Locator 1 Function 1Source Address
Active Segment
IPv6 header
Segment
Routing
Header
IPv6 payload
IPv6 destination addressIPv6 source address
© 2018 Cisco and/or its affiliates. All rights reserved.
SRv6 Header
61
Metadata TLV
Segments Left
Locator 1 Function 1
Locator 2 Function 2
Locator 3 Function 3
TAG
© 2018 Cisco and/or its affiliates. All rights reserved.
Argument shared between functions
62
“Global”
Argument
Metadata TLV
Segments Left
Locator 1 Function 1
Locator 2 Function 2
Locator 3 Function 3
TAG
© 2018 Cisco and/or its affiliates. All rights reserved.
SRv6 for anything
63
Optimized for HW processing
e.g. Underlay & Tenant use-cases
Optimized for SW processing
e.g. NFV, Container, Micro-Service
Metadata TLV
Segments Left
Locator 1 Function 1
Locator 2 Function 2
Locator 3 Function 3
TAG
© 2018 Cisco and/or its affiliates. All rights reserved.
SRv6 for anything
64
Turing
Metadata TLV
Segments Left
Locator 1 Function 1
Locator 2 Function 2
Locator 3 Function 3
TAG
SRv6 Network Programming model
End Endpoint function
The SRv6 instantiation of a prefix SID
End.X Endpoint function with Layer-3 cross-connect
The SRv6 instantiation of a Adj SID
End.T Endpoint function with specific IPv6 table lookup
End.DX2 Endpoint with decapsulation and Layer-2 cross-connect
L2VPN use-case
End.DX2V Endpoint with decapsulation and VLAN L2 table lookup
EVPN Flexible cross-connect use-cases
End.DT2U Endpoint with decaps and unicast MAC L2 table lookup
EVPN Bridging unicast use-cases
End.DT2M Endpoint with decapsulation and L2 table flooding
EVPN Bridging BUM use-cases with ESI filtering
65
SRv6 Network Programming model
End.DX6 Endpoint with decapsulation and IPv6 cross-connect
IPv6 L3VPN use (equivalent of a per-CE VPN label)
End.DX4 Endpoint with decapsulation and IPv4 cross-connect
IPv4 L3VPN use (equivalent of a per-CE VPN label)
End.DT6 Endpoint with decapsulation and IPv6 table lookup
IPv6 L3VPN use (equivalent of a per-VRF VPN label)
End.DT4 Endpoint with decapsulation and IPv4 table lookup
IPv4 L3VPN use (equivalent of a per-VRF VPN label)
End.DT46 Endpoint with decapsulation and IP table lookup
IP L3VPN use (equivalent of a per-VRF VPN label)
End.B6 Endpoint bound to an SRv6 policy
SRv6 instantiation of a Binding SID
66
SRv6 Network Programming model
End.B6.EncapsEndpoint bound to an SRv6 encapsulation Policy
SRv6 instantiation of a Binding SID
End.BM Endpoint bound to an SR-MPLS Policy
SRv6/SR-MPLS instantiation of a Binding SID
End.S Endpoint in search of a target in table T
The list is not exhaustive. In practice, any function can be
attached to a local SID: e.g. a node N can bind a SID to a local VM
or container which can apply any complex function on the packet.
67
© 2018 Cisco and/or its affiliates. All rights reserved.
END – Default endpoint function
68
• Default endpoint behavior (node segment)
• Decrement Segments Left, update DA
• Forward according to new DA
• Node 2 advertises prefix A2::/64 (A2::/64 is the SID locator)
• Packets are forwarded to node 2 along the default routes (shortest path)
• On 2, the default endpoint behavior is associated with ID 1 (1 is the function)
• The SID corresponding to the default endpoint behavior on node 2 is A2::1
SR Hdr
IPv6 Hdr
SA = A1::, DA =
A2::1
(…,A3::,A2::1,…)
SL=k
Payload
2
A2:: /64
SR Hdr
IPv6 Hdr SA = A1::, DA = A3::
(…, A3::, A2::1,…)
SL=k-1
Payload
3
© 2018 Cisco and/or its affiliates. All rights reserved.
END.X – Endpoint then layer3 Xconnect
70
• Endpoint xconnect behavior (adjacency segment)
• Decrement Segments Left, update DA
• Forward on the interface associated with the Xconnect segment
• Node 3 advertises prefix A3::/64
• Packets are forwarded to node 3 along the default routes (shortest path)
• On 3, the endpoint xconnect behavior for adjacency 1 is associated with ID C1
• The SID corresponding to endpoint xconnect-1 behavior on node 3 is A3::C1
SR Hdr
IPv6 Hdr
SA = A1::, DA =
A3::C1
(…,A4::, A3::C1,…)
SL=k
Payload
SR Hdr
IPv6 Hdr SA = A1::, DA = A4::
(…, A4::, A3::C1,…) SL=k-1
Payload
3
A3:: /64
4
1 2
Agenda
SR and SRv6 introduction
SRv6 Dataplane
SRv6 Network Programming Model
SRv6 use cases
(TE / FRR / Service Function Chaining / VPNs / SD-WAN)
Hands-on part
SRv6 Segment Routing Header
Why SRv6 is so cool? Scalability, SDN…
Additional materials and conclusions
Segment Routing Traffic Engineering
vs. “traditional” Traffic Engineering
• In “traditional” TE, a connection (LSP) is setup updating the forwarding
tables of ALL crossed nodes,
• By combining prefix and adjacency segments we have the same
expressiveness of traditional TE
• The average number of segments (waypoints) needed to enforce a TE
path is very low in typical scenarios
• Equal Cost Multipath (ECMP) can be exploited in a natural way with SR
73
Using Segment Routing for Fault Protection
• FRR (Fast ReRoute) with TI-LFA: Topology Independent Loop-Free
Alternate
• Local backup instructions can be added to protect every routing entry
from (single) failure of outgoing link/node
74
© 2018 Cisco and/or its affiliates. All rights reserved.
TI-LFA example (needs an Adjacency Segment)
75
2 4
6 5
1
A5::0
A5::/64
Pri → via 5
FRR → insert A2::C4
100
Primary route FRR Route
(Using Adiacency Segment)
1
1
1
1
© 2018 Cisco and/or its affiliates. All rights reserved.
TI-LFA example (needs an Adjacency Segment)
76
2 4
6 5
1
A5::0
A5::/64
Pri → via 5
FRR → insert A2::C4
Primary route FRR Route
(Using Adiacency Segment)
1001
1
1
1
© 2018 Cisco and/or its affiliates. All rights reserved.
TI-LFA example (needs an Adjacency Segment)
77
2 4
6 5
1
A2::C4
A5::0
A5::0
<50mec FRR
A5::/64
Pri → via 5
FRR → insert A2::C4
Primary route FRR Route
(Using Adiacency Segment)
1001
1
1
1
© 2018 Cisco and/or its affiliates. All rights reserved.
TI-LFA
81
• 50msec Protection upon
local link, node or SRLG failure
• Simple to operate and understand
• can be automatically computed by the router’s IGP process
• 100% coverage across any topology
• predictable (backup = postconvergence)
• Optimum backup path
• leverages the post-convergence path, planned to carry the traffic
• avoid any intermediate flap via alternate path
• Incremental deployment
• Distributed and Automated Intelligence
© 2018 Cisco and/or its affiliates. All rights reserved.
SRv6 Overlays for VPNs / SD-WAN
• Automated
– No tunnel to configure
C4 identifies the tenant
• Simple
– Protocol elimination
• Efficient
– SRv6 for everything
82
1
2
Green Overlay
V:: /16
via A:2::C4
4
V:: /16
3
T:: /16
IPv6 ( A:1::, A:2::C4 )
Payload
IPv6 ( T:1::, V:2:: )
IPv6 ( T:1::, V:2:: )
Payload
IPv6 ( T:1::, V:2:: )
Payload
© 2018 Cisco and/or its affiliates. All rights reserved.
SRv6 Overlays with Underlay Control
• SRv6 does not only eliminate
unneeded overlay protocols
• SRv6 solves problems that
these protocols cannot solve
83
1
2
Green Overlay
V:: /16
via A:2::C4
with Latency
4
V:: /16
3
T:: /16
3
IPv6 ( T:1::, V:2:: )
Payload
IPv6 ( A:1::, A:3::0 )
Payload
IPv6 ( T:1::, V:2:: )
SRH (A:2::C4, A:3::0 )
© 2018 Cisco and/or its affiliates. All rights reserved.
84
IPv6 ( A:1::, A:2::C4 )
Payload
IPv6 ( T:1::, V:2:: )
SRH ( A:2::C4, A:3::0 )
1
2
Green Overlay
V:: /16
via A:2::C4
with Latency
4
V:: /16
3
T:: /16
3
IPv6 ( T:1::, V:2:: )
Payload
IPv6 ( T:1::, V:2:: )
Payload
SRv6 Overlays with Underlay Control
• SRv6 does not only eliminate
unneeded overlay protocols
• SRv6 solves problems that
these protocols cannot solve
© 2018 Cisco and/or its affiliates. All rights reserved.
SRv6 for SFC
• A:3::A32 means
– App in Container 32
– @ node A:3::/64
• Stateless
– NSH creates per-chain state
in the fabric
– SR does not
• App is SR aware or not
85
IPv6 ( A:1::, A:3::A32 )
Payload
IPv6 ( T:1::, V:2:: )
SRH
( A:2::C4, A:5::A76,
A:4::0, A:3::A32 )
1
2
4
V:: /16
3
T:: /16
4
3
App 32
Container
Server 3
5
App 76
VM
Server 5
IPv6 ( T:1::, V:2:: )
Payload
© 2018 Cisco and/or its affiliates. All rights reserved.
IPv6 ( A:1::, A4::0 )
Payload
IPv6 ( T:1::, V:2:: )
SRH
( A:2::C4, A:5::A76,
A:4::0, A:3::A32 )
3
App 32
Container
Server 3
SRv6 for SFC
• Integrated with
underlay SLA
86
1
2
4
V:: /16
3
T:: /16
4
5
App 76
VM
Server 5
© 2018 Cisco and/or its affiliates. All rights reserved.
IPv6 ( A:1::, A:5::A76 )
Payload
IPv6 ( T:1::, V:2:: )
SRH
( A:2::C4, A:5::A76,
A:4::0, A:3::A32 )
3
App 32
Container
Server 3
SRv6 for SFC
• A:5::A76 means
– App in VM 76
– @ node A:5::/64
• Stateless
– NSH creates per-chain state
in the fabric
– SR does not
• App is SR aware or not
87
1
2
4
V:: /16
3
T:: /16
4
5
App 76
VM
Server 5
© 2018 Cisco and/or its affiliates. All rights reserved.
IPv6 ( A:1::, A:2::C4 )
Payload
IPv6 ( T:1::, V:2:: )
SRH
( A:2::C4, A:5::A76,
A:4::0, A:3::A32 )
3
App 32
Container
Server 3
SRv6 for SFC
• Integrated with
Overlay
88
1
2
4
V:: /16
3
T:: /16
4
5
App 76
VM
Server 5
IPv6 ( T:1::, V:2:: )
Payload
Agenda
SR and SRv6 introduction
SRv6 Dataplane
SRv6 Network Programming Model
SRv6 use cases
(TE / FRR / Service Function Chaining / VPNs / SD-WAN)
Hands-on part
SRv6 Segment Routing Header
Why SRv6 is so cool? Scalability, SDN…
Additional materials and conclusions
Hands-on session
• We run our experiments on the rose-srv6 Virtual Machine, if you want to
replicate them, see https://netgroup.github.io/rose/rose-vm.html
• The experiments performed are reported in these technical reports:
–“ROSE-SRv6 Tutorial on Linux – Part 1. Manual creation of SRv6 tunnels in the data plane”
https://netgroup.github.io/rose/rose-vm.html#rose-srv6-tutorial-on-linux---part-1
–“ROSE-SRv6 tutorial on Linux - Part 2. ROSE Control Plane : setting up SRv6 tunnels from the controller”
https://netgroup.github.io/rose/rose-vm.html#rose-srv6-tutorial-on-linux---part-2
90
Agenda
SR and SRv6 introduction
SRv6 Dataplane
SRv6 Network Programming Model
SRv6 use cases
(TE / FRR / Service Function Chaining / VPNs / SD-WAN)
Hands-on part
SRv6 Segment Routing Header
Why SRv6 is so cool? Scalability, SDN…
Additional materials and conclusions
SRv6 standardization
•Large standardization efforts in IETF (around 70 document)
– Driven by vendors (CISCO is the main supporter)
– See full list here: www.segment-routing.net/ietf/
• Main RFCs
– RFC 8402 Segment Routing Architecture
defines SR concepts both for MPLS and SRv6
– RFC 8660 Segment Routing with MPLS data plane
– RFC 8754 IPv6 Segment Routing Header (SRH)
defines the SRv6 dataplane encapsulation (SRH)
92
SRv6 standardization
• Main WG docs
– draft-ietf-spring-srv6-network-programming
defines the SRv6 Network Programming model
– draft-ietf-spring-segment-routing-policy
– draft-ietf-spring-sr-service-programming
covers SFC aspects
•IETF docs can be classified in several categories:
Architecture, Use-Cases and Requirements, Deployments and Interoperability, Fast Reroute
(FRR), OAM, Performance Measurements, Multicast/Replication, Protocol Extensions
93
SRv6 deployments
• Large-scale commercial deployments
– Softbank, Iliad, China Telecom, LINE corporation, China Unicom, CERNET2, China Bank
and Uganda MTN.
•Hardware linerate implementations
– Cisco Systems, Huawei
– Broadcom, Barefoot, Intel, Marvell, Mellanox
– Multiple Interop Reports
•Open-source platforms/ Applications
– Linux kernel, FD.io VPP, P4, Wireshark, tcpdump, iptables, nftables, snort, ExaBGP,
Contiv-VPP
94
SRv6 Open Source Platforms / Applications
• SRv6 Data path
– Linux kernel
– FD.io VPP (https://wiki.fd.io/view/VPP)
– P4 SRv6 (http://bit.ly/onos-p4-srv6)
• Applications and tools
– Wireshark, Tcpdump
– scapy
– iptables, nftables
– Snort NIDS (https://github.com/SRouting/SR-Snort)
• Control plane
– ExaBGP (https://www.segment-routing.net/open-software/exabgp/)
– Contiv-VPP
95
ROSE - Research on Open SRv6 Ecosystem
• SRv6 uSID (micro segment) implementation in Linux
• SRv6 uSID (micro segment) implementation on P4
• SRv6-PM (SRv6 Performance monitoring)
• rose-srv6 VM
• HIKE – HybrId Kernel EBPF data plane
96
• SREXT - Segment Routing Extension Linux kernel module
• SRNK – SR proxy Native Kernel
• pyroute2 extensions to support SRv6
• SRv6-SDN – An SDN ecosystem for SRv6 on Linux
• SRPerf - a Performance Evaluation Framework for
SRv6 implementations
https://netgroup.github.io/rose/
The ROSE ecosystem includes several sub-projects:
The hands-on part of this tutorial is based on the ROSE ecosystem, in particular on the rose-srv6 VM
Segment Routing scientific work
• More than 90 papers
– http://www.segment-routing.net/scientific-papers/ (lists 60 papers)
– See P.L. Ventre et al. “Segment Routing: a Comprehensive Survey of Research
Activities, Standardization Efforts and Implementation Results” accepted for
publication in IEEE Communications Surveys and Tutorials
(preprint on arxiv http://arxiv.org/abs/1904.03471)
97
Our contributions…
• SRPerf: a Performance Evaluation Framework for IPv6 Segment Routing
A. Abdelsalam, P. L. Ventre, C. Scarpitta, A. Mayer, S. Salsano, P. Camarillo, F. Clad and C. Filsfils,
Accepted to IEEE Transactions on Network and Service Management (TNSM).
• SRPerf: a Performance Evaluation Framework for IPv6 Segment Routing
A. Tulumello, A. Mayer, M. Bonola, P. Lungaroni, C. Scarpitta, S. Salsano, A. Abdelsalam, P. Camarillo, D. Dukes, F. Clad, C. Filsfils,
Conference of Network and Service Management 2020 (CNSM 2020).
• SDN Architecture and Southbound APIs for IPv6 Segment Routing Enabled Wide Area Networks
P. L. Ventre, M. M. Tajiki, S. Salsano, C. Filsfils,
IEEE Transactions on Network and Service Management (TNSM), December 2018.
• The Network as a Computer with IPv6 Segment Routing: a Novel Distributed Processing Model for the Internet of Things
A. Mayer, E. Altomare, S. Salsano, F. Lo Presti, C. Filsfils,
NGOSCPS workshop at the CPS-IoT Week 2019, April 15 2019, Montreal, Canada (pdf)
• SR-Snort: IPv6 Segment Routing Aware IDS/IPS
A. Abdelsalam, S. Salsano, F. Clad, P. Camarillo, C. Filsfils,
IEEE Conference on Network Function Virtualization and Software Defined Networks (NFV-SDN), Verona, Italy, November 2018.
• Performance of IPv6 Segment Routing in Linux Kernel
A. Abdelsalam, P. L. Ventre, A. Mayer, S. Salsano, P. Camarillo, F. Clad, C. Filsfils,
CNSM Workshop on Segment Routing and Service Function Chaining (SR+SFC), Rome, Italy, 2018.
• SERA: SEgment Routing Aware Firewall for Service Function Chaining scenarios
A. Abdelsalam, S. Salsano, F. Clad, P. Camarillo, C. Filsfils, IFIP Networking, Zurich, Switzerland, May 2018.
• Implementation of Virtual Network Function Chaining through Segment Routing in a Linux-based NFV Infrastructure
A. AbdelSalam, F. Clad, C. Filsfils, S. Salsano, G. Siracusano and L. Veltri
IEEE Conference on Network Softwarization (NetSoft), Bologna, Italy, 2017.
• An Efficient Linux Kernel Implementation of Service Function Chaining for legacy VNFs based on IPv6 Segment Routing,
A. Mayer, S. Salsano, P. L. Ventre, A. Abdelsalam, L. Chiaraviglio, C. Filsfils,
5th IEEE International Conference on Network Softwarization (NetSoft 2019), 24-28 June 2019, Paris, France
99
Segment Routing hottest open issues
• In our survey http://arxiv.org/abs/1904.03471 we have identified the following
research directions:
– Service Function Chaining support
– SRv6 end-host implementation aspects / SmartNICs and SRv6
– Cloud Orchestration
– Integration with Applications
– 5G and SRv6
– Internet of Things and SRv6
100
Conclusions
• Segment Routing architecture seeks the right balance between distributed
intelligence and centralized optimization
• Segment Routing over IPv6 (SRv6) brings in the
Network Programming model
• SRv6 provides underlay and overlay services in a unified way, possibly across
access, metro, core and data center networking domains
• Lots of issues are still open, very good for researchers ☺
101
Thank you. Questions?
Contacts
Stefano Salsano
University of Rome Tor Vergata / CNIT
stefano.salsano@uniroma2.it
102
References and acknowledgements
Research on Open SRv6 Ecosystem
https://netgroup.github.io/rose/
5G European Validation Platform for Extensive Trials
https://www.5g-eve.eu/
The 5G EVE project has received funding from the European Horizon 2020 Programme for research,
technological development and demonstration under grant agreement n° 815074
BACKUP SLIDES
104
The network as a computer with SRv6 (SR-IoT)
• The Network as a Computer with IPv6 Segment Routing: a Novel Distributed Processing Model for the Internet of Things
A. Mayer, E. Altomare, S. Salsano, F. Lo Presti, C. Filsfils,
NGOSCPS workshop at the CPS-IoT Week 2019, April 15 2019, Montreal, Canada (pdf)
A position (or visionary…) paper. Assuming that it is possible to exploit
distributed processing in the “things/gateways”, the application logic and the
computation state is transferred “on the fly” with IP packets (using SRv6!) : “SR-
IoT”
105
The network as a computer with SRv6 (SR-IoT)
In SR-IoT, the Segment List can be seen as a “Network program”, where the next
segment is the Instruction Pointer and a network node is a CPU that executes
the instruction
106
The network as a computer with SRv6 (SR-IoT)
In SR-IoT, we extend the SRv6 network programming model, considering the
Functions as “operation codes” of a processor ISA (Instruction Set Architecture)
The whole IoT infrastructure is seen as a logical machine with I/O ports
(corresponding to the ports of IoT devices), that can be programmed through an
Instruction Set Architecture
107
The network as a computer with SRv6 (SR-IoT)
In SR-IoT, we extend the SRv6 network programming model, considering the
Functions as “operation codes” of a processor ISA (Instruction Set Architecture)
The whole IoT infrastructure is seen as a logical machine with I/O ports
(corresponding to the ports of IoT devices), that can be programmed through an
Instruction Set Architecture
108
The network as a computer with SRv6 (SR-IoT)
We designed a prototype of SR-IoT, considering the Instruction Set Architecture
(ISA) of Atmel AVR microcontroller (Arduino) and using the the SimAVR emulator
on Linux to emulate the AVR microcontroller.
An SR-IoT packet corresponds to a process. It includes the program in the SRv6
segment list, and the serialization of registers, stack and RAM. All need to fit in
less than 1500 bytes ! For TinyAVR microcontrollers, RAM used can be as low as
128 or 256 bytes.
We designed an efficient solution to encode operations in the IPv6 segment list.
For example, 100 instructions over 10 different nodes can be represented with
320 bytes, leaving 1000 bytes for RAM, stack and CPU registers…
109
Compressing the SR Header
• An SRv6 segment list is a sequence of IPv6 addresses. The SRH always
introduces 8 bytes. Each IPv6 address is 16 bytes long.
Example for 5 segments => 8 + 5 * 16 = 88 bytes of overhead.
Example for 10 segments => 8 + 10 * 16 = 168 bytes of overhead.
• In most cases the number of segments is limited (e.g. up to 3-4 segments), but
what happens if many segments are needed for a particular service or service
scenario ?
• A more compact representation of the Segment List is needed !
110
SRv6 uSID (micro-SID)
• A new extension of the SRv6 Network Programming model
– https://datatracker.ietf.org/doc/draft-filsfils-spring-net-pgm-extension-srv6-usid/
• It allows expressing SRv6 segments with a very compact and efficient representation.
– For example, using two bytes for uSID instead of using a normal IPv6 address (16
bytes) for a regular SRv6 segment.
• Leverages the SRv6 control and data planes without any change
• Provides better scaling and minimum MTU overhead
111
SRv6 uSID interop event
112
https://www.youtube.com/watch?v=pVFkmwYIgmo
Developed by the ROSE team
Other proposals in IETF for SRH compression
•Segment Routing Mapped To IPv6 (SRm6)
– draft-bonica-spring-sr-mapped-six-01
– draft-bonica-6man-comp-rtg-hdr-22
•Compressed SRv6 Network Programming
– draft-li-spring-compressed-srv6-np-02
113
Network Transport Evolution
Simplify - Optimize - Enable
114
Service
Protocol
s
Transpor
t
Protocol
s
IGP/SR
BGP-EVPN
Unified MPLS
SR
Enabled Transport
Do more with less !!
IP
Path expressed in the packet Data
Dynamic path
Explicit path
Paths options
Dynamic
(Headend computation)
Explicit
(Operator / Controller)
Control Plane
Routing protocols with
extensions
(IS-IS,OSPF, BGP)
SDN controller
Data Plane
MPLS
(segment labels)
IPv6
(+SR header)
Segment Routing
115
Segment routing architecture seeks the right balance between
distributed intelligence and centralized optimization
IPv6 adoption is a reality
https://6lab.cisco.com/stats/ 116
IPv6 adoption trend
117
https://www.google.com/intl/en/ipv6/statistics.html#tab=ipv6-adoption
SRv6 domain and its
security
(few simple considerations…)
SR Domain
• The set of trusted nodes participating in
the SR solution
• May be organized in multiple
IGP areas and BGP AS
SRv6 Domain
AS
AS
area area
119
Domain Blocks
• The SR domain has
– a classic address block (e.g. B::/4)
– a SID block (e.g. A::/4)
SRv6 Domain
Classic
address Block
B::/4
SID Block
A::/4
120
Trust inside the domain
• Any source A inside the domain can inject
SR traffic using any SID of the domain
– via SID list <S1, S2, S3>
S1
S2
S3
A
Z
(A, S1)(Z, S3, S2, S1, SL=3)
121
External traffic is not trusted
• Any external source A cannot
leverage the SID’s of the domain
• Any border router drops any external traffic
destined to its blocks
– A::/4 and B::/4 S1
S2
S3
A
Z
(A, S1)(Z, S3, S2, S1, SL=3)
122
Validating SR Headers
• The HMAC TLV can be carried in Segment Routing Header to
validate the header
– “SR Source Nodes not directly connected to the SR Domain may access
specific sets of segments within the SR Domain when secured with the SRH
HMAC TLV. The SRH HMAC TLV provides a means of verifying the validity of
ingress packets SRH, limiting access to the segments in the SR Domain to
only those source nodes with permission.”
123

Mais conteúdo relacionado

Mais procurados

Cisco Live! :: Cisco ASR 9000 Architecture :: BRKARC-2003 | Milan Jan/2014
Cisco Live! :: Cisco ASR 9000 Architecture :: BRKARC-2003 | Milan Jan/2014Cisco Live! :: Cisco ASR 9000 Architecture :: BRKARC-2003 | Milan Jan/2014
Cisco Live! :: Cisco ASR 9000 Architecture :: BRKARC-2003 | Milan Jan/2014Bruno Teixeira
 
BGP Flowspec (RFC5575) Case study and Discussion
BGP Flowspec (RFC5575) Case study and DiscussionBGP Flowspec (RFC5575) Case study and Discussion
BGP Flowspec (RFC5575) Case study and DiscussionAPNIC
 
Segment Routing
Segment RoutingSegment Routing
Segment RoutingAPNIC
 
Interconnecting Neutron and Network Operators' BGP VPNs
Interconnecting Neutron and Network Operators' BGP VPNsInterconnecting Neutron and Network Operators' BGP VPNs
Interconnecting Neutron and Network Operators' BGP VPNsThomas Morin
 
Segment Routing Lab
Segment Routing Lab Segment Routing Lab
Segment Routing Lab Cisco Canada
 
TechWiseTV Workshop: Segment Routing for the Datacenter
TechWiseTV Workshop: Segment Routing for the DatacenterTechWiseTV Workshop: Segment Routing for the Datacenter
TechWiseTV Workshop: Segment Routing for the DatacenterRobb Boyd
 
Introduction to Segment Routing
Introduction to Segment RoutingIntroduction to Segment Routing
Introduction to Segment RoutingMyNOG
 
PLNOG15: BGP New Advanced Features - Piotr Wojciechowski
PLNOG15: BGP New Advanced Features - Piotr WojciechowskiPLNOG15: BGP New Advanced Features - Piotr Wojciechowski
PLNOG15: BGP New Advanced Features - Piotr WojciechowskiPROIDEA
 
DPDKによる高速コンテナネットワーキング
DPDKによる高速コンテナネットワーキングDPDKによる高速コンテナネットワーキング
DPDKによる高速コンテナネットワーキングTomoya Hibi
 
Troubleshooting BGP
Troubleshooting BGPTroubleshooting BGP
Troubleshooting BGPDuane Bodle
 
Segment Routing Technology Deep Dive and Advanced Use Cases
Segment Routing Technology Deep Dive and Advanced Use CasesSegment Routing Technology Deep Dive and Advanced Use Cases
Segment Routing Technology Deep Dive and Advanced Use CasesCisco Canada
 
Cisco Live! :: Introduction to Segment Routing :: BRKRST-2124 | Las Vegas 2017
Cisco Live! :: Introduction to Segment Routing :: BRKRST-2124  | Las Vegas 2017Cisco Live! :: Introduction to Segment Routing :: BRKRST-2124  | Las Vegas 2017
Cisco Live! :: Introduction to Segment Routing :: BRKRST-2124 | Las Vegas 2017Bruno Teixeira
 
MP BGP-EVPN 실전기술-1편(개념잡기)
MP BGP-EVPN 실전기술-1편(개념잡기)MP BGP-EVPN 실전기술-1편(개념잡기)
MP BGP-EVPN 실전기술-1편(개념잡기)JuHwan Lee
 
BIRD Routing Daemon
BIRD Routing DaemonBIRD Routing Daemon
BIRD Routing DaemonAPNIC
 
NSO: Network Service Orchestrator enabled by Tail-f Hands-on Lab
NSO: Network Service Orchestrator enabled by Tail-f Hands-on LabNSO: Network Service Orchestrator enabled by Tail-f Hands-on Lab
NSO: Network Service Orchestrator enabled by Tail-f Hands-on LabCisco Canada
 

Mais procurados (20)

Cisco Live! :: Cisco ASR 9000 Architecture :: BRKARC-2003 | Milan Jan/2014
Cisco Live! :: Cisco ASR 9000 Architecture :: BRKARC-2003 | Milan Jan/2014Cisco Live! :: Cisco ASR 9000 Architecture :: BRKARC-2003 | Milan Jan/2014
Cisco Live! :: Cisco ASR 9000 Architecture :: BRKARC-2003 | Milan Jan/2014
 
BGP Flowspec (RFC5575) Case study and Discussion
BGP Flowspec (RFC5575) Case study and DiscussionBGP Flowspec (RFC5575) Case study and Discussion
BGP Flowspec (RFC5575) Case study and Discussion
 
MENOG-Segment Routing Introduction
MENOG-Segment Routing IntroductionMENOG-Segment Routing Introduction
MENOG-Segment Routing Introduction
 
Segment Routing
Segment RoutingSegment Routing
Segment Routing
 
hpsr-2020-srv6-tutorial
hpsr-2020-srv6-tutorialhpsr-2020-srv6-tutorial
hpsr-2020-srv6-tutorial
 
Interconnecting Neutron and Network Operators' BGP VPNs
Interconnecting Neutron and Network Operators' BGP VPNsInterconnecting Neutron and Network Operators' BGP VPNs
Interconnecting Neutron and Network Operators' BGP VPNs
 
ACI Hands-on Lab
ACI Hands-on LabACI Hands-on Lab
ACI Hands-on Lab
 
Segment Routing Lab
Segment Routing Lab Segment Routing Lab
Segment Routing Lab
 
TechWiseTV Workshop: Segment Routing for the Datacenter
TechWiseTV Workshop: Segment Routing for the DatacenterTechWiseTV Workshop: Segment Routing for the Datacenter
TechWiseTV Workshop: Segment Routing for the Datacenter
 
Introduction to Segment Routing
Introduction to Segment RoutingIntroduction to Segment Routing
Introduction to Segment Routing
 
PLNOG15: BGP New Advanced Features - Piotr Wojciechowski
PLNOG15: BGP New Advanced Features - Piotr WojciechowskiPLNOG15: BGP New Advanced Features - Piotr Wojciechowski
PLNOG15: BGP New Advanced Features - Piotr Wojciechowski
 
DPDKによる高速コンテナネットワーキング
DPDKによる高速コンテナネットワーキングDPDKによる高速コンテナネットワーキング
DPDKによる高速コンテナネットワーキング
 
Troubleshooting BGP
Troubleshooting BGPTroubleshooting BGP
Troubleshooting BGP
 
Mpls Services
Mpls ServicesMpls Services
Mpls Services
 
Segment Routing Technology Deep Dive and Advanced Use Cases
Segment Routing Technology Deep Dive and Advanced Use CasesSegment Routing Technology Deep Dive and Advanced Use Cases
Segment Routing Technology Deep Dive and Advanced Use Cases
 
Cisco Live! :: Introduction to Segment Routing :: BRKRST-2124 | Las Vegas 2017
Cisco Live! :: Introduction to Segment Routing :: BRKRST-2124  | Las Vegas 2017Cisco Live! :: Introduction to Segment Routing :: BRKRST-2124  | Las Vegas 2017
Cisco Live! :: Introduction to Segment Routing :: BRKRST-2124 | Las Vegas 2017
 
MP BGP-EVPN 실전기술-1편(개념잡기)
MP BGP-EVPN 실전기술-1편(개념잡기)MP BGP-EVPN 실전기술-1편(개념잡기)
MP BGP-EVPN 실전기술-1편(개념잡기)
 
BIRD Routing Daemon
BIRD Routing DaemonBIRD Routing Daemon
BIRD Routing Daemon
 
NSO: Network Service Orchestrator enabled by Tail-f Hands-on Lab
NSO: Network Service Orchestrator enabled by Tail-f Hands-on LabNSO: Network Service Orchestrator enabled by Tail-f Hands-on Lab
NSO: Network Service Orchestrator enabled by Tail-f Hands-on Lab
 
EVPN Introduction
EVPN IntroductionEVPN Introduction
EVPN Introduction
 

Semelhante a Ieee nfv-sdn-2020-srv6-tutorial

SRv6 Mobile User Plane P4 proto-type
SRv6 Mobile User Plane P4 proto-typeSRv6 Mobile User Plane P4 proto-type
SRv6 Mobile User Plane P4 proto-typeKentaro Ebisawa
 
Application Engineered Routing: Allowing Applications to Program the Network
Application Engineered Routing: Allowing Applications to Program the NetworkApplication Engineered Routing: Allowing Applications to Program the Network
Application Engineered Routing: Allowing Applications to Program the NetworkCisco Canada
 
18-20180514_SRv6_RIPE.pdf
18-20180514_SRv6_RIPE.pdf18-20180514_SRv6_RIPE.pdf
18-20180514_SRv6_RIPE.pdfYunLiu75
 
SRv6-TOI-rev3i-EXTERNAL.pdf
SRv6-TOI-rev3i-EXTERNAL.pdfSRv6-TOI-rev3i-EXTERNAL.pdf
SRv6-TOI-rev3i-EXTERNAL.pdfYunLiu75
 
Cisco Connect Montreal 2017 - Segment Routing - Technology Deep-dive and Adva...
Cisco Connect Montreal 2017 - Segment Routing - Technology Deep-dive and Adva...Cisco Connect Montreal 2017 - Segment Routing - Technology Deep-dive and Adva...
Cisco Connect Montreal 2017 - Segment Routing - Technology Deep-dive and Adva...Cisco Canada
 
SRv6 experience for italy iPv6 council
SRv6 experience for italy iPv6 councilSRv6 experience for italy iPv6 council
SRv6 experience for italy iPv6 councilStefano Salsano
 
A comparison of segment routing data-plane encodings
A comparison of segment routing data-plane encodingsA comparison of segment routing data-plane encodings
A comparison of segment routing data-plane encodingsGunter Van de Velde
 
1 bonica tutorial_segment_routing
1 bonica tutorial_segment_routing1 bonica tutorial_segment_routing
1 bonica tutorial_segment_routinghptoga
 
A comparison of Segment Routing Data-Plane encodings
A comparison of Segment Routing Data-Plane encodingsA comparison of Segment Routing Data-Plane encodings
A comparison of Segment Routing Data-Plane encodingsGunter Van de Velde
 
IPv6 infrastructure and multicasting status report
IPv6 infrastructure and multicasting status reportIPv6 infrastructure and multicasting status report
IPv6 infrastructure and multicasting status reportEthern Lin
 
Ipv6 application in 5G bearer network--C&T RF Antennas Inc
Ipv6 application in 5G bearer network--C&T RF Antennas IncIpv6 application in 5G bearer network--C&T RF Antennas Inc
Ipv6 application in 5G bearer network--C&T RF Antennas IncAntenna Manufacturer Coco
 
OIF SDN Transport API NFV Proof of Concept
OIF SDN Transport API NFV Proof of ConceptOIF SDN Transport API NFV Proof of Concept
OIF SDN Transport API NFV Proof of ConceptDeborah Porchivina
 
WAN SDN meet Segment Routing
WAN SDN meet Segment RoutingWAN SDN meet Segment Routing
WAN SDN meet Segment RoutingAPNIC
 
Introducing Application Engineered Routing Powered by Segment Routing
Introducing Application Engineered Routing Powered by Segment RoutingIntroducing Application Engineered Routing Powered by Segment Routing
Introducing Application Engineered Routing Powered by Segment RoutingCisco Service Provider
 
0010-SR-TOI-SR_intro_v10.pdf
0010-SR-TOI-SR_intro_v10.pdf0010-SR-TOI-SR_intro_v10.pdf
0010-SR-TOI-SR_intro_v10.pdfYunLiu75
 
0010-SR-TOI-SR_intro_v10.pdf
0010-SR-TOI-SR_intro_v10.pdf0010-SR-TOI-SR_intro_v10.pdf
0010-SR-TOI-SR_intro_v10.pdfYunLiu75
 
Segment Routing: A Tutorial
Segment Routing: A TutorialSegment Routing: A Tutorial
Segment Routing: A TutorialAPNIC
 
Best CCIE (ENCOR 350-401) Training at NS3EDU
Best CCIE (ENCOR 350-401) Training at NS3EDUBest CCIE (ENCOR 350-401) Training at NS3EDU
Best CCIE (ENCOR 350-401) Training at NS3EDUNs3Edu
 
Leveraging IPv6 extension header for traffic engineering, by Eric Vyncke [APN...
Leveraging IPv6 extension header for traffic engineering, by Eric Vyncke [APN...Leveraging IPv6 extension header for traffic engineering, by Eric Vyncke [APN...
Leveraging IPv6 extension header for traffic engineering, by Eric Vyncke [APN...APNIC
 

Semelhante a Ieee nfv-sdn-2020-srv6-tutorial (20)

SRv6 Mobile User Plane P4 proto-type
SRv6 Mobile User Plane P4 proto-typeSRv6 Mobile User Plane P4 proto-type
SRv6 Mobile User Plane P4 proto-type
 
Application Engineered Routing: Allowing Applications to Program the Network
Application Engineered Routing: Allowing Applications to Program the NetworkApplication Engineered Routing: Allowing Applications to Program the Network
Application Engineered Routing: Allowing Applications to Program the Network
 
18-20180514_SRv6_RIPE.pdf
18-20180514_SRv6_RIPE.pdf18-20180514_SRv6_RIPE.pdf
18-20180514_SRv6_RIPE.pdf
 
SRv6-TOI-rev3i-EXTERNAL.pdf
SRv6-TOI-rev3i-EXTERNAL.pdfSRv6-TOI-rev3i-EXTERNAL.pdf
SRv6-TOI-rev3i-EXTERNAL.pdf
 
Cisco Connect Montreal 2017 - Segment Routing - Technology Deep-dive and Adva...
Cisco Connect Montreal 2017 - Segment Routing - Technology Deep-dive and Adva...Cisco Connect Montreal 2017 - Segment Routing - Technology Deep-dive and Adva...
Cisco Connect Montreal 2017 - Segment Routing - Technology Deep-dive and Adva...
 
SRv6 experience for italy iPv6 council
SRv6 experience for italy iPv6 councilSRv6 experience for italy iPv6 council
SRv6 experience for italy iPv6 council
 
A comparison of segment routing data-plane encodings
A comparison of segment routing data-plane encodingsA comparison of segment routing data-plane encodings
A comparison of segment routing data-plane encodings
 
1 bonica tutorial_segment_routing
1 bonica tutorial_segment_routing1 bonica tutorial_segment_routing
1 bonica tutorial_segment_routing
 
A comparison of Segment Routing Data-Plane encodings
A comparison of Segment Routing Data-Plane encodingsA comparison of Segment Routing Data-Plane encodings
A comparison of Segment Routing Data-Plane encodings
 
IPv6 infrastructure and multicasting status report
IPv6 infrastructure and multicasting status reportIPv6 infrastructure and multicasting status report
IPv6 infrastructure and multicasting status report
 
Ipv6 application in 5G bearer network--C&T RF Antennas Inc
Ipv6 application in 5G bearer network--C&T RF Antennas IncIpv6 application in 5G bearer network--C&T RF Antennas Inc
Ipv6 application in 5G bearer network--C&T RF Antennas Inc
 
OIF SDN Transport API NFV Proof of Concept
OIF SDN Transport API NFV Proof of ConceptOIF SDN Transport API NFV Proof of Concept
OIF SDN Transport API NFV Proof of Concept
 
WAN SDN meet Segment Routing
WAN SDN meet Segment RoutingWAN SDN meet Segment Routing
WAN SDN meet Segment Routing
 
3hows
3hows3hows
3hows
 
Introducing Application Engineered Routing Powered by Segment Routing
Introducing Application Engineered Routing Powered by Segment RoutingIntroducing Application Engineered Routing Powered by Segment Routing
Introducing Application Engineered Routing Powered by Segment Routing
 
0010-SR-TOI-SR_intro_v10.pdf
0010-SR-TOI-SR_intro_v10.pdf0010-SR-TOI-SR_intro_v10.pdf
0010-SR-TOI-SR_intro_v10.pdf
 
0010-SR-TOI-SR_intro_v10.pdf
0010-SR-TOI-SR_intro_v10.pdf0010-SR-TOI-SR_intro_v10.pdf
0010-SR-TOI-SR_intro_v10.pdf
 
Segment Routing: A Tutorial
Segment Routing: A TutorialSegment Routing: A Tutorial
Segment Routing: A Tutorial
 
Best CCIE (ENCOR 350-401) Training at NS3EDU
Best CCIE (ENCOR 350-401) Training at NS3EDUBest CCIE (ENCOR 350-401) Training at NS3EDU
Best CCIE (ENCOR 350-401) Training at NS3EDU
 
Leveraging IPv6 extension header for traffic engineering, by Eric Vyncke [APN...
Leveraging IPv6 extension header for traffic engineering, by Eric Vyncke [APN...Leveraging IPv6 extension header for traffic engineering, by Eric Vyncke [APN...
Leveraging IPv6 extension header for traffic engineering, by Eric Vyncke [APN...
 

Mais de Stefano Salsano

Dataplane programming with eBPF: architecture and tools
Dataplane programming with eBPF: architecture and toolsDataplane programming with eBPF: architecture and tools
Dataplane programming with eBPF: architecture and toolsStefano Salsano
 
Testbeds IntErconnections with L2 overlays - SRv6 for SFC
Testbeds IntErconnections with L2 overlays - SRv6 for SFCTestbeds IntErconnections with L2 overlays - SRv6 for SFC
Testbeds IntErconnections with L2 overlays - SRv6 for SFCStefano Salsano
 
Energy-efficient Path Allocation Heuristic for Service Function Chaining
Energy-efficient Path Allocation Heuristic for Service Function ChainingEnergy-efficient Path Allocation Heuristic for Service Function Chaining
Energy-efficient Path Allocation Heuristic for Service Function ChainingStefano Salsano
 
Extending OpenVIM R3 to support Unikernels (and Xen)
Extending OpenVIM R3 to support Unikernels (and Xen)Extending OpenVIM R3 to support Unikernels (and Xen)
Extending OpenVIM R3 to support Unikernels (and Xen)Stefano Salsano
 
RDCL 3D, a Model Agnostic Web Framework for the Design and Composition of NFV...
RDCL 3D, a Model Agnostic Web Framework for the Design and Composition of NFV...RDCL 3D, a Model Agnostic Web Framework for the Design and Composition of NFV...
RDCL 3D, a Model Agnostic Web Framework for the Design and Composition of NFV...Stefano Salsano
 
Superfluid networking for 5G: vision and state of the art
Superfluid networking for 5G: vision and state of the artSuperfluid networking for 5G: vision and state of the art
Superfluid networking for 5G: vision and state of the artStefano Salsano
 
D-STREAMON - NFV-capable distributed framework for network monitoring
D-STREAMON - NFV-capable distributed framework for network monitoringD-STREAMON - NFV-capable distributed framework for network monitoring
D-STREAMON - NFV-capable distributed framework for network monitoringStefano Salsano
 
Superfluid Deployment of Virtual Functions: Exploiting Mobile Edge Computing ...
Superfluid Deployment of Virtual Functions: Exploiting Mobile Edge Computing ...Superfluid Deployment of Virtual Functions: Exploiting Mobile Edge Computing ...
Superfluid Deployment of Virtual Functions: Exploiting Mobile Edge Computing ...Stefano Salsano
 
Extending ETSI VNF descriptors and OpenVIM to support Unikernels
Extending ETSI VNF descriptors and OpenVIM to support UnikernelsExtending ETSI VNF descriptors and OpenVIM to support Unikernels
Extending ETSI VNF descriptors and OpenVIM to support UnikernelsStefano Salsano
 
Superfluid Orchestration of heterogeneous Reusable Functional Blocks for 5G n...
Superfluid Orchestration of heterogeneous Reusable Functional Blocks for 5G n...Superfluid Orchestration of heterogeneous Reusable Functional Blocks for 5G n...
Superfluid Orchestration of heterogeneous Reusable Functional Blocks for 5G n...Stefano Salsano
 
Deploying of Unikernels in the NFV Infrastructure
Deploying of Unikernels in the NFV InfrastructureDeploying of Unikernels in the NFV Infrastructure
Deploying of Unikernels in the NFV InfrastructureStefano Salsano
 
The SCISSOR approach to establishing situational awareness in Industrial Cont...
The SCISSOR approach to establishing situational awareness in Industrial Cont...The SCISSOR approach to establishing situational awareness in Industrial Cont...
The SCISSOR approach to establishing situational awareness in Industrial Cont...Stefano Salsano
 
Tuning VIM performance for unikernels
Tuning VIM performance for unikernelsTuning VIM performance for unikernels
Tuning VIM performance for unikernelsStefano Salsano
 
Superfluid NFV: VMs and Virtual Infrastructure Managers speed-up for instanta...
Superfluid NFV: VMs and Virtual Infrastructure Managers speed-up for instanta...Superfluid NFV: VMs and Virtual Infrastructure Managers speed-up for instanta...
Superfluid NFV: VMs and Virtual Infrastructure Managers speed-up for instanta...Stefano Salsano
 
Input for Cloud and mobile
Input for Cloud and mobileInput for Cloud and mobile
Input for Cloud and mobileStefano Salsano
 
Generalized Virtual Networking, an enabler for Service Centric Networking and...
Generalized Virtual Networking, an enabler for Service Centric Networking and...Generalized Virtual Networking, an enabler for Service Centric Networking and...
Generalized Virtual Networking, an enabler for Service Centric Networking and...Stefano Salsano
 
OSHI - Open Source Hybrid IP/SDN networking @EWSDN14
OSHI - Open Source Hybrid IP/SDN networking @EWSDN14OSHI - Open Source Hybrid IP/SDN networking @EWSDN14
OSHI - Open Source Hybrid IP/SDN networking @EWSDN14Stefano Salsano
 

Mais de Stefano Salsano (17)

Dataplane programming with eBPF: architecture and tools
Dataplane programming with eBPF: architecture and toolsDataplane programming with eBPF: architecture and tools
Dataplane programming with eBPF: architecture and tools
 
Testbeds IntErconnections with L2 overlays - SRv6 for SFC
Testbeds IntErconnections with L2 overlays - SRv6 for SFCTestbeds IntErconnections with L2 overlays - SRv6 for SFC
Testbeds IntErconnections with L2 overlays - SRv6 for SFC
 
Energy-efficient Path Allocation Heuristic for Service Function Chaining
Energy-efficient Path Allocation Heuristic for Service Function ChainingEnergy-efficient Path Allocation Heuristic for Service Function Chaining
Energy-efficient Path Allocation Heuristic for Service Function Chaining
 
Extending OpenVIM R3 to support Unikernels (and Xen)
Extending OpenVIM R3 to support Unikernels (and Xen)Extending OpenVIM R3 to support Unikernels (and Xen)
Extending OpenVIM R3 to support Unikernels (and Xen)
 
RDCL 3D, a Model Agnostic Web Framework for the Design and Composition of NFV...
RDCL 3D, a Model Agnostic Web Framework for the Design and Composition of NFV...RDCL 3D, a Model Agnostic Web Framework for the Design and Composition of NFV...
RDCL 3D, a Model Agnostic Web Framework for the Design and Composition of NFV...
 
Superfluid networking for 5G: vision and state of the art
Superfluid networking for 5G: vision and state of the artSuperfluid networking for 5G: vision and state of the art
Superfluid networking for 5G: vision and state of the art
 
D-STREAMON - NFV-capable distributed framework for network monitoring
D-STREAMON - NFV-capable distributed framework for network monitoringD-STREAMON - NFV-capable distributed framework for network monitoring
D-STREAMON - NFV-capable distributed framework for network monitoring
 
Superfluid Deployment of Virtual Functions: Exploiting Mobile Edge Computing ...
Superfluid Deployment of Virtual Functions: Exploiting Mobile Edge Computing ...Superfluid Deployment of Virtual Functions: Exploiting Mobile Edge Computing ...
Superfluid Deployment of Virtual Functions: Exploiting Mobile Edge Computing ...
 
Extending ETSI VNF descriptors and OpenVIM to support Unikernels
Extending ETSI VNF descriptors and OpenVIM to support UnikernelsExtending ETSI VNF descriptors and OpenVIM to support Unikernels
Extending ETSI VNF descriptors and OpenVIM to support Unikernels
 
Superfluid Orchestration of heterogeneous Reusable Functional Blocks for 5G n...
Superfluid Orchestration of heterogeneous Reusable Functional Blocks for 5G n...Superfluid Orchestration of heterogeneous Reusable Functional Blocks for 5G n...
Superfluid Orchestration of heterogeneous Reusable Functional Blocks for 5G n...
 
Deploying of Unikernels in the NFV Infrastructure
Deploying of Unikernels in the NFV InfrastructureDeploying of Unikernels in the NFV Infrastructure
Deploying of Unikernels in the NFV Infrastructure
 
The SCISSOR approach to establishing situational awareness in Industrial Cont...
The SCISSOR approach to establishing situational awareness in Industrial Cont...The SCISSOR approach to establishing situational awareness in Industrial Cont...
The SCISSOR approach to establishing situational awareness in Industrial Cont...
 
Tuning VIM performance for unikernels
Tuning VIM performance for unikernelsTuning VIM performance for unikernels
Tuning VIM performance for unikernels
 
Superfluid NFV: VMs and Virtual Infrastructure Managers speed-up for instanta...
Superfluid NFV: VMs and Virtual Infrastructure Managers speed-up for instanta...Superfluid NFV: VMs and Virtual Infrastructure Managers speed-up for instanta...
Superfluid NFV: VMs and Virtual Infrastructure Managers speed-up for instanta...
 
Input for Cloud and mobile
Input for Cloud and mobileInput for Cloud and mobile
Input for Cloud and mobile
 
Generalized Virtual Networking, an enabler for Service Centric Networking and...
Generalized Virtual Networking, an enabler for Service Centric Networking and...Generalized Virtual Networking, an enabler for Service Centric Networking and...
Generalized Virtual Networking, an enabler for Service Centric Networking and...
 
OSHI - Open Source Hybrid IP/SDN networking @EWSDN14
OSHI - Open Source Hybrid IP/SDN networking @EWSDN14OSHI - Open Source Hybrid IP/SDN networking @EWSDN14
OSHI - Open Source Hybrid IP/SDN networking @EWSDN14
 

Último

20240509 QFM015 Engineering Leadership Reading List April 2024.pdf
20240509 QFM015 Engineering Leadership Reading List April 2024.pdf20240509 QFM015 Engineering Leadership Reading List April 2024.pdf
20240509 QFM015 Engineering Leadership Reading List April 2024.pdfMatthew Sinclair
 
20240508 QFM014 Elixir Reading List April 2024.pdf
20240508 QFM014 Elixir Reading List April 2024.pdf20240508 QFM014 Elixir Reading List April 2024.pdf
20240508 QFM014 Elixir Reading List April 2024.pdfMatthew Sinclair
 
Pune Airport ( Call Girls ) Pune 6297143586 Hot Model With Sexy Bhabi Ready...
Pune Airport ( Call Girls ) Pune  6297143586  Hot Model With Sexy Bhabi Ready...Pune Airport ( Call Girls ) Pune  6297143586  Hot Model With Sexy Bhabi Ready...
Pune Airport ( Call Girls ) Pune 6297143586 Hot Model With Sexy Bhabi Ready...tanu pandey
 
Shikrapur - Call Girls in Pune Neha 8005736733 | 100% Gennuine High Class Ind...
Shikrapur - Call Girls in Pune Neha 8005736733 | 100% Gennuine High Class Ind...Shikrapur - Call Girls in Pune Neha 8005736733 | 100% Gennuine High Class Ind...
Shikrapur - Call Girls in Pune Neha 8005736733 | 100% Gennuine High Class Ind...SUHANI PANDEY
 
Call Girls Ludhiana Just Call 98765-12871 Top Class Call Girl Service Available
Call Girls Ludhiana Just Call 98765-12871 Top Class Call Girl Service AvailableCall Girls Ludhiana Just Call 98765-12871 Top Class Call Girl Service Available
Call Girls Ludhiana Just Call 98765-12871 Top Class Call Girl Service AvailableSeo
 
( Pune ) VIP Baner Call Girls 🎗️ 9352988975 Sizzling | Escorts | Girls Are Re...
( Pune ) VIP Baner Call Girls 🎗️ 9352988975 Sizzling | Escorts | Girls Are Re...( Pune ) VIP Baner Call Girls 🎗️ 9352988975 Sizzling | Escorts | Girls Are Re...
( Pune ) VIP Baner Call Girls 🎗️ 9352988975 Sizzling | Escorts | Girls Are Re...nilamkumrai
 
𓀤Call On 7877925207 𓀤 Ahmedguda Call Girls Hot Model With Sexy Bhabi Ready Fo...
𓀤Call On 7877925207 𓀤 Ahmedguda Call Girls Hot Model With Sexy Bhabi Ready Fo...𓀤Call On 7877925207 𓀤 Ahmedguda Call Girls Hot Model With Sexy Bhabi Ready Fo...
𓀤Call On 7877925207 𓀤 Ahmedguda Call Girls Hot Model With Sexy Bhabi Ready Fo...Neha Pandey
 
WhatsApp 📞 8448380779 ✅Call Girls In Mamura Sector 66 ( Noida)
WhatsApp 📞 8448380779 ✅Call Girls In Mamura Sector 66 ( Noida)WhatsApp 📞 8448380779 ✅Call Girls In Mamura Sector 66 ( Noida)
WhatsApp 📞 8448380779 ✅Call Girls In Mamura Sector 66 ( Noida)Delhi Call girls
 
APNIC Updates presented by Paul Wilson at ARIN 53
APNIC Updates presented by Paul Wilson at ARIN 53APNIC Updates presented by Paul Wilson at ARIN 53
APNIC Updates presented by Paul Wilson at ARIN 53APNIC
 
VIP Model Call Girls NIBM ( Pune ) Call ON 8005736733 Starting From 5K to 25K...
VIP Model Call Girls NIBM ( Pune ) Call ON 8005736733 Starting From 5K to 25K...VIP Model Call Girls NIBM ( Pune ) Call ON 8005736733 Starting From 5K to 25K...
VIP Model Call Girls NIBM ( Pune ) Call ON 8005736733 Starting From 5K to 25K...SUHANI PANDEY
 
20240510 QFM016 Irresponsible AI Reading List April 2024.pdf
20240510 QFM016 Irresponsible AI Reading List April 2024.pdf20240510 QFM016 Irresponsible AI Reading List April 2024.pdf
20240510 QFM016 Irresponsible AI Reading List April 2024.pdfMatthew Sinclair
 
Dubai=Desi Dubai Call Girls O525547819 Outdoor Call Girls Dubai
Dubai=Desi Dubai Call Girls O525547819 Outdoor Call Girls DubaiDubai=Desi Dubai Call Girls O525547819 Outdoor Call Girls Dubai
Dubai=Desi Dubai Call Girls O525547819 Outdoor Call Girls Dubaikojalkojal131
 
➥🔝 7737669865 🔝▻ mehsana Call-girls in Women Seeking Men 🔝mehsana🔝 Escorts...
➥🔝 7737669865 🔝▻ mehsana Call-girls in Women Seeking Men  🔝mehsana🔝   Escorts...➥🔝 7737669865 🔝▻ mehsana Call-girls in Women Seeking Men  🔝mehsana🔝   Escorts...
➥🔝 7737669865 🔝▻ mehsana Call-girls in Women Seeking Men 🔝mehsana🔝 Escorts...nirzagarg
 
Wagholi & High Class Call Girls Pune Neha 8005736733 | 100% Gennuine High Cla...
Wagholi & High Class Call Girls Pune Neha 8005736733 | 100% Gennuine High Cla...Wagholi & High Class Call Girls Pune Neha 8005736733 | 100% Gennuine High Cla...
Wagholi & High Class Call Girls Pune Neha 8005736733 | 100% Gennuine High Cla...SUHANI PANDEY
 
💚😋 Salem Escort Service Call Girls, 9352852248 ₹5000 To 25K With AC💚😋
💚😋 Salem Escort Service Call Girls, 9352852248 ₹5000 To 25K With AC💚😋💚😋 Salem Escort Service Call Girls, 9352852248 ₹5000 To 25K With AC💚😋
💚😋 Salem Escort Service Call Girls, 9352852248 ₹5000 To 25K With AC💚😋nirzagarg
 
Nanded City ( Call Girls ) Pune 6297143586 Hot Model With Sexy Bhabi Ready ...
Nanded City ( Call Girls ) Pune  6297143586  Hot Model With Sexy Bhabi Ready ...Nanded City ( Call Girls ) Pune  6297143586  Hot Model With Sexy Bhabi Ready ...
Nanded City ( Call Girls ) Pune 6297143586 Hot Model With Sexy Bhabi Ready ...tanu pandey
 
Sarola * Female Escorts Service in Pune | 8005736733 Independent Escorts & Da...
Sarola * Female Escorts Service in Pune | 8005736733 Independent Escorts & Da...Sarola * Female Escorts Service in Pune | 8005736733 Independent Escorts & Da...
Sarola * Female Escorts Service in Pune | 8005736733 Independent Escorts & Da...SUHANI PANDEY
 

Último (20)

20240509 QFM015 Engineering Leadership Reading List April 2024.pdf
20240509 QFM015 Engineering Leadership Reading List April 2024.pdf20240509 QFM015 Engineering Leadership Reading List April 2024.pdf
20240509 QFM015 Engineering Leadership Reading List April 2024.pdf
 
20240508 QFM014 Elixir Reading List April 2024.pdf
20240508 QFM014 Elixir Reading List April 2024.pdf20240508 QFM014 Elixir Reading List April 2024.pdf
20240508 QFM014 Elixir Reading List April 2024.pdf
 
Pune Airport ( Call Girls ) Pune 6297143586 Hot Model With Sexy Bhabi Ready...
Pune Airport ( Call Girls ) Pune  6297143586  Hot Model With Sexy Bhabi Ready...Pune Airport ( Call Girls ) Pune  6297143586  Hot Model With Sexy Bhabi Ready...
Pune Airport ( Call Girls ) Pune 6297143586 Hot Model With Sexy Bhabi Ready...
 
Shikrapur - Call Girls in Pune Neha 8005736733 | 100% Gennuine High Class Ind...
Shikrapur - Call Girls in Pune Neha 8005736733 | 100% Gennuine High Class Ind...Shikrapur - Call Girls in Pune Neha 8005736733 | 100% Gennuine High Class Ind...
Shikrapur - Call Girls in Pune Neha 8005736733 | 100% Gennuine High Class Ind...
 
Call Girls Ludhiana Just Call 98765-12871 Top Class Call Girl Service Available
Call Girls Ludhiana Just Call 98765-12871 Top Class Call Girl Service AvailableCall Girls Ludhiana Just Call 98765-12871 Top Class Call Girl Service Available
Call Girls Ludhiana Just Call 98765-12871 Top Class Call Girl Service Available
 
( Pune ) VIP Baner Call Girls 🎗️ 9352988975 Sizzling | Escorts | Girls Are Re...
( Pune ) VIP Baner Call Girls 🎗️ 9352988975 Sizzling | Escorts | Girls Are Re...( Pune ) VIP Baner Call Girls 🎗️ 9352988975 Sizzling | Escorts | Girls Are Re...
( Pune ) VIP Baner Call Girls 🎗️ 9352988975 Sizzling | Escorts | Girls Are Re...
 
𓀤Call On 7877925207 𓀤 Ahmedguda Call Girls Hot Model With Sexy Bhabi Ready Fo...
𓀤Call On 7877925207 𓀤 Ahmedguda Call Girls Hot Model With Sexy Bhabi Ready Fo...𓀤Call On 7877925207 𓀤 Ahmedguda Call Girls Hot Model With Sexy Bhabi Ready Fo...
𓀤Call On 7877925207 𓀤 Ahmedguda Call Girls Hot Model With Sexy Bhabi Ready Fo...
 
WhatsApp 📞 8448380779 ✅Call Girls In Mamura Sector 66 ( Noida)
WhatsApp 📞 8448380779 ✅Call Girls In Mamura Sector 66 ( Noida)WhatsApp 📞 8448380779 ✅Call Girls In Mamura Sector 66 ( Noida)
WhatsApp 📞 8448380779 ✅Call Girls In Mamura Sector 66 ( Noida)
 
APNIC Updates presented by Paul Wilson at ARIN 53
APNIC Updates presented by Paul Wilson at ARIN 53APNIC Updates presented by Paul Wilson at ARIN 53
APNIC Updates presented by Paul Wilson at ARIN 53
 
VIP Model Call Girls NIBM ( Pune ) Call ON 8005736733 Starting From 5K to 25K...
VIP Model Call Girls NIBM ( Pune ) Call ON 8005736733 Starting From 5K to 25K...VIP Model Call Girls NIBM ( Pune ) Call ON 8005736733 Starting From 5K to 25K...
VIP Model Call Girls NIBM ( Pune ) Call ON 8005736733 Starting From 5K to 25K...
 
20240510 QFM016 Irresponsible AI Reading List April 2024.pdf
20240510 QFM016 Irresponsible AI Reading List April 2024.pdf20240510 QFM016 Irresponsible AI Reading List April 2024.pdf
20240510 QFM016 Irresponsible AI Reading List April 2024.pdf
 
Dubai=Desi Dubai Call Girls O525547819 Outdoor Call Girls Dubai
Dubai=Desi Dubai Call Girls O525547819 Outdoor Call Girls DubaiDubai=Desi Dubai Call Girls O525547819 Outdoor Call Girls Dubai
Dubai=Desi Dubai Call Girls O525547819 Outdoor Call Girls Dubai
 
Thalassery Escorts Service ☎️ 6378878445 ( Sakshi Sinha ) High Profile Call G...
Thalassery Escorts Service ☎️ 6378878445 ( Sakshi Sinha ) High Profile Call G...Thalassery Escorts Service ☎️ 6378878445 ( Sakshi Sinha ) High Profile Call G...
Thalassery Escorts Service ☎️ 6378878445 ( Sakshi Sinha ) High Profile Call G...
 
➥🔝 7737669865 🔝▻ mehsana Call-girls in Women Seeking Men 🔝mehsana🔝 Escorts...
➥🔝 7737669865 🔝▻ mehsana Call-girls in Women Seeking Men  🔝mehsana🔝   Escorts...➥🔝 7737669865 🔝▻ mehsana Call-girls in Women Seeking Men  🔝mehsana🔝   Escorts...
➥🔝 7737669865 🔝▻ mehsana Call-girls in Women Seeking Men 🔝mehsana🔝 Escorts...
 
Wagholi & High Class Call Girls Pune Neha 8005736733 | 100% Gennuine High Cla...
Wagholi & High Class Call Girls Pune Neha 8005736733 | 100% Gennuine High Cla...Wagholi & High Class Call Girls Pune Neha 8005736733 | 100% Gennuine High Cla...
Wagholi & High Class Call Girls Pune Neha 8005736733 | 100% Gennuine High Cla...
 
valsad Escorts Service ☎️ 6378878445 ( Sakshi Sinha ) High Profile Call Girls...
valsad Escorts Service ☎️ 6378878445 ( Sakshi Sinha ) High Profile Call Girls...valsad Escorts Service ☎️ 6378878445 ( Sakshi Sinha ) High Profile Call Girls...
valsad Escorts Service ☎️ 6378878445 ( Sakshi Sinha ) High Profile Call Girls...
 
💚😋 Salem Escort Service Call Girls, 9352852248 ₹5000 To 25K With AC💚😋
💚😋 Salem Escort Service Call Girls, 9352852248 ₹5000 To 25K With AC💚😋💚😋 Salem Escort Service Call Girls, 9352852248 ₹5000 To 25K With AC💚😋
💚😋 Salem Escort Service Call Girls, 9352852248 ₹5000 To 25K With AC💚😋
 
6.High Profile Call Girls In Punjab +919053900678 Punjab Call GirlHigh Profil...
6.High Profile Call Girls In Punjab +919053900678 Punjab Call GirlHigh Profil...6.High Profile Call Girls In Punjab +919053900678 Punjab Call GirlHigh Profil...
6.High Profile Call Girls In Punjab +919053900678 Punjab Call GirlHigh Profil...
 
Nanded City ( Call Girls ) Pune 6297143586 Hot Model With Sexy Bhabi Ready ...
Nanded City ( Call Girls ) Pune  6297143586  Hot Model With Sexy Bhabi Ready ...Nanded City ( Call Girls ) Pune  6297143586  Hot Model With Sexy Bhabi Ready ...
Nanded City ( Call Girls ) Pune 6297143586 Hot Model With Sexy Bhabi Ready ...
 
Sarola * Female Escorts Service in Pune | 8005736733 Independent Escorts & Da...
Sarola * Female Escorts Service in Pune | 8005736733 Independent Escorts & Da...Sarola * Female Escorts Service in Pune | 8005736733 Independent Escorts & Da...
Sarola * Female Escorts Service in Pune | 8005736733 Independent Escorts & Da...
 

Ieee nfv-sdn-2020-srv6-tutorial

  • 1. This presentation is partly based on slide decks that have been kindly provided by Cisco Systems SRv6 and the Network Programming Model Hands-On tutorial Stefano Salsano – University of Rome Tor Vergata / CNIT stefano.salsano@uniroma2.it 6th IEEE Conference on Network Functions Virtualization and Software Defined Networking (IEEE NFV-SDN 2020) November 9th 2020
  • 2. Tutorial highlights - part 1 • What is Segment Routing ? • What is SRv6 ? (Segment Routing over IPv6) • How does it work ? few protocol details… Segment Routing Header (SRH) 2 • Why is SRv6 so cool? Hint: scalability and SDN!
  • 3. Tutorial highlights - part 1 • What is the Network Programming Model? from “waypoints” to “instructions” • How can we use the Network Programming Model? SRv6 example use cases: 3 •SR Traffic Engineering / Fast ReRouting •Service Chaining (SFC) •VPNs/SD-WANs
  • 4. Tutorial highlights - part 2 “Hands on” • SRv6 open source implementations and tools • The ROSE ecosystem (Linux) 4 • Hands-on using the rose-srv6 Virtual Machine • Create SRv6 tunnels (VPNs) in a Linux based Data Plane (SR ingress/SR waypoint/IPv6 transit/SR egress nodes) - manual setup with Linux CLI - setup using our controller
  • 5. The ROSE ecosystem 5 Data Plane Control Plane web dashboard Controller Apache Kafka NorthBound APIs (gRPC) SouthBound APIs (gRPC) Orchestrator ArangoDB InfluxDB Linux Host/Server Linux Router P4 Router
  • 7. Acknowledgements 7 This slideset originated from the following presentations: • Segment Routing Clarence Filsfils (CISCO), Kris Michielsen (CISCO) http://www.segment-routing.net/tutorials/2016-09-27-segment-routing-introduction/ • Introduction to Segment Routing Alberto Donzelli (CISCO) CISCO Live! – January 29 February 2 2018 Barcelona, Spain • SRv6 Network Programming Francois Clad (CISCO) (which in turn acknowledge several CISCO people)
  • 8. Acknowledgements 8 This tutorial is based on work performed in the context of: • 5G-EVE project funded by EU (Horizon 2020) • ROSE project funded by CISCO University Research Program 5G European Validation Platform for Extensive Trials https://www.5g-eve.eu/ Research on Open SRv6 Ecosystem https://netgroup.github.io/rose/
  • 9. The ROSE team Pier Luigi Ventre Ahmed AbdelSalam Bogdan Iatco Mahdi Tajiki Lorenzo Bracciale Pierpaolo Loreti Angelo Tulumello Marco Bonola Luca Chiaraviglio Fabio D'Andreagiovanni Marco Ferrari Daniele Zaccariello Emanuele Altomare 9 Andrea Mayer Paolo Lungaroni Francesco Lombardo Carmine Scarpitta Giulio Sidoretti Stefano Salsano The team involved in the setup of the tutorial VM and experiments
  • 10. Agenda SR and SRv6 introduction SRv6 Dataplane SRv6 Network Programming Model SRv6 use cases (TE / FRR / Service Function Chaining / VPNs / SD-WAN) Hands-on part SRv6 Segment Routing Header Why SRv6 is so cool? Scalability, SDN… Additional materials and conclusions
  • 11. © 2018 Cisco and/or its affiliates. All rights reserved.© 2018 Cisco and/or its affiliates. All rights reserved. Segment Routing : a form of source routing Seattle New-York Toronto Segment Routing 11 1. A unique and global luggage tag is attached to the luggage with the list of stops to the final destination 2. At each stop, the luggage is simply routed to the next hop listed on the luggage tag Mission - Route the luggage to Berlin via Mexico and Madrid Mexico Madrid Berlin London
  • 12. © 2018 Cisco and/or its affiliates. All rights reserved.© 2018 Cisco and/or its affiliates. All rights reserved. Segment Routing : a form of source routing Seattle New-York Toronto Segment Routing 12 MEX MAD BER 1. A unique and global luggage tag is attached to the luggage with the list of stops to the final destination 2. At each stop, the luggage is simply routed to the next hop listed on the luggage tag Mission - Route the luggage to Berlin via Mexico and Madrid Mexico Madrid Berlin London
  • 13. © 2018 Cisco and/or its affiliates. All rights reserved.© 2018 Cisco and/or its affiliates. All rights reserved. Segment Routing : a form of source routing Seattle New-York Berlin Mexico Toronto London Segment Routing MEX MAD BER 13 MEX MAD BER 1. A unique and global luggage tag is attached to the luggage with the list of stops to the final destination 2. At each stop, the luggage is simply routed to the next hop listed on the luggage tag Mission - Route the luggage to Berlin via Mexico and Madrid Madrid
  • 14. © 2018 Cisco and/or its affiliates. All rights reserved.© 2018 Cisco and/or its affiliates. All rights reserved. Segment Routing : a form of source routing Seattle New-York BerlinToronto London Segment Routing MEX MAD BER MEX MAD BER 14 MEX MAD BER 1. A unique and global luggage tag is attached to the luggage with the list of stops to the final destination 2. At each stop, the luggage is simply routed to the next hop listed on the luggage tag Mission - Route the luggage to Berlin via Mexico and Madrid Mexico Madrid
  • 15. © 2018 Cisco and/or its affiliates. All rights reserved.© 2018 Cisco and/or its affiliates. All rights reserved. • Strict Source Routing • all routing steps should be listed by the source • Loose Source Routing • the source can add “waypoints” to the path • Segment Routing uses Loose Source Routing 15 Source Routing variants (in packet networks!)
  • 16. © 2018 Cisco and/or its affiliates. All rights reserved.© 2018 Cisco and/or its affiliates. All rights reserved. • SR is based on Source Routing • the source chooses a path and encodes it in the packet header as an ordered list of segments • the rest of the network executes the encoded instructions • Segment: an identifier for any type of instruction • forwarding (segment=>waypoint) or service (segment=>operation) • SR Policy: an ordered list of segments (segment list) 16 Segment Routing (SR)
  • 17. SR Policy and SR domain S1 S2 S3Headend Node P=<S1,S2,S3> SR domain SR Policy 17 Ingress node (edge node) Egress node (edge node) Datacenter Server
  • 18. SR path and SR segments S1 S2 S3Headend Node P=<S1,S2,S3> SR domain SR Policy 18 Ingress node Egress node Datacenter Server S1 S2 S3 The path is split in three segments
  • 19. © 2018 Cisco and/or its affiliates. All rights reserved. Two dataplane instantiations IPv6 : SRv6 • uses IPv6 source routing extension header (SRH) - RFC8754 • 1 segment = 1 IPv6 address • a segment list = a list of addresses in the SRH MPLS : SR-MPLS • uses the mature MPLS HW with only SW upgrade • 1 segment = 1 label • a segment list = a label stack Segment Routing 19 I will only discuss the SRv6 dataplane in the rest of this tutorial!
  • 20. Agenda SR and SRv6 introduction SRv6 Dataplane SRv6 Network Programming Model SRv6 use cases (TE / FRR / Service Function Chaining / VPNs / SD-WAN) Hands-on part SRv6 Segment Routing Header Why SRv6 is so cool? Scalability, SDN… Additional materials and conclusions
  • 21. SRv6 – Forwarding Plane 21 • SRv6: a segment list is encoded in a routing extension header (SRH) • Segment → IPv6 Address • The routing protocols natively distribute the addresses (no changes needed for topological instructions)
  • 22. © 2018 Cisco and/or its affiliates. All rights reserved. IPv6 header 22
  • 23. SRH header 23 Total number of segments Pointer to the current segment
  • 24. SRv6 segments 24 S1 S2 S3Headend Node P=<S1,S2,S3> SR domain SR Policy Ingress node Egress node Datacenter Server S1 S2 S3 The path is split in three segments, each one identified by an IPv6 address
  • 25. © 2018 Cisco and/or its affiliates. All rights reserved. SRv6 forwarding operations S1 S2 S3 SR source node SR domain DA : Destination Address SL : Segments Left N4 N5 N6 N7Transit node SR endpoint 25 Packet
  • 26. © 2018 Cisco and/or its affiliates. All rights reserved. PUSH SRv6 forwarding operations S1 S2 S3 SR source node SR domain SR Policy P=<S1,S2,S3> DA : Destination Address SL : Segments Left N4 N5 N6 N7Transit node SR endpoint 26 Packet (encapsulation)
  • 27. © 2018 Cisco and/or its affiliates. All rights reserved. SRv6 forwarding operations S1 S2 S3 SR source node SR domain SR Policy P=<S1,S2,S3> DA : Destination Address SL : Segments Left IPv6 DA = S1 (S3, S2, S1) SL=2 Payload SR H IPv6 H N4 N5 N6 N7Transit node SR endpoint 27 Packet PUSH (encapsulation)
  • 28. © 2018 Cisco and/or its affiliates. All rights reserved. SRv6 forwarding operations S1 S2 S3 SR source node SR domain SR Policy P=<S1,S2,S3> NEXT DA : Destination Address SL : Segments Left IPv6 DA = S2 (S3, S2, S1) SL=1 Payload SR H IPv6 H IPv6 DA = S1 (S3, S2, S1) SL=2 Payload SR H IPv6 H N4 N5 N6 N7Transit node SR endpoint 28 Packet (encapsulation) PUSH
  • 29. © 2018 Cisco and/or its affiliates. All rights reserved. SRv6 forwarding operations S1 S2 S3 SR source node SR domain SR Policy P=<S1,S2,S3> NEXT CONTINUE DA : Destination Address SL : Segments Left IPv6 DA = S2 (S3, S2, S1) SL=1 Payload SR H IPv6 H IPv6 DA = S1 (S3, S2, S1) SL=2 Payload SR H IPv6 H IPv6 DA = S2 (S3, S2, S1) SL=1 Payload SR H IPv6 H N4 N5 N6 N7Transit node SR endpoint 29 Packet (encapsulation) PUSH
  • 30. © 2018 Cisco and/or its affiliates. All rights reserved. SRv6 forwarding operations S1 S2 S3 SR source node SR domain SR Policy P=<S1,S2,S3> NEXT CONTINUE DA : Destination Address SL : Segments Left IPv6 DA = S2 (S3, S2, S1) SL=1 Payload SR H IPv6 H IPv6 DA = S3 (S3, S2, S1) SL=0 Payload SR H IPv6 H IPv6 DA = S1 (S3, S2, S1) SL=2 Payload SR H IPv6 H IPv6 DA = S2 (S3, S2, S1) SL=1 Payload SR H IPv6 H IPv6 DA = S3 (S3, S2, S1) SL=0 Payload SR H IPv6 H N4 N5 N6 N7Transit node SR endpoint 30 Packet (encapsulation) PUSH
  • 31. © 2018 Cisco and/or its affiliates. All rights reserved.© 2018 Cisco and/or its affiliates. All rights reserved. Global and Local Segments • Global Segment • Any node in the SR domain can execute the associated instruction (e.g. a waypoint, a.k.a. node segment ) • Each node in the SR domain installs the associated instruction (e.g. forward to a waypoint) in its forwarding table • Local Segment • Only a specific node can execute the associated instruction (e.g. forward the packet over a specific outgoing interface a.k.a. IGP Adjacency Segment) 31
  • 32. © 2018 Cisco and/or its affiliates. All rights reserved.© 2018 Cisco and/or its affiliates. All rights reserved. SRv6 Dataplane - Node Segment • Shortest-path to the IGP prefix • Equal Cost Multi-Path (ECMP)-aware • (Already) distributed by ISIS/OSPF 32 A5:: A5:: A1 A1:: A2 A2:: A3 A3:: A4 A4:: A5 A5:: A5::/56 A5:: A5:: A5:: A5::
  • 33. © 2018 Cisco and/or its affiliates. All rights reserved.© 2018 Cisco and/or its affiliates. All rights reserved. SRv6 Dataplane - Node Segment • Shortest-path to the IGP prefix • Equal Cost Multi-Path (ECMP)-aware • (Already) distributed by ISIS/OSPF 33 A1 A1:: A2 A2:: A3 A3:: A4 A4:: A5 A5:: A4:: A4:: A4::/56 A4:: A4:: A4:: A4::
  • 34. © 2018 Cisco and/or its affiliates. All rights reserved.© 2018 Cisco and/or its affiliates. All rights reserved. A1 A1:: A2 A2:: A3 A3:: A4 A4:: A5 A5:: SRv6 Dataplane - IGP Adjacency Segment • Forward on the IGP adjacency • Advertised as an IPv6 SID • Distributed by ISIS/OSPF in specific TLVs 34 A4::C2 A4::C5 Adj to A5 Adj to A2 A4::C3 Adj to A3
  • 35. © 2018 Cisco and/or its affiliates. All rights reserved.© 2018 Cisco and/or its affiliates. All rights reserved. A1 A1:: A2 A2:: A3 A3:: A4 A4:: A5 A5:: SRv6 Dataplane - IGP Adjacency Segment • Steer traffic on any path through the network • Path is specified by a list of IPv6 addresses (Segment List) in the SRH header • No path is signaled • Per-flow state is created only in the source node • Single protocol: IS-IS or OSPF 35 SRH (A4::C5) Packet to A5 SRH (A4::C5) Packet to A5
  • 36. Agenda SR and SRv6 introduction SRv6 Dataplane SRv6 Network Programming Model SRv6 use cases (TE / FRR / Service Function Chaining / VPNs / SD-WAN) Hands-on part SRv6 Segment Routing Header Why SRv6 is so cool? Scalability, SDN… Additional materials and conclusions
  • 37. • Scalability (thanks to Source Routing) • the topological and service (NFV/SFC) path is encoded in packet header • the network fabric does not hold any per-flow state for TE or NFV/SFC • Simplicity • automation: sub-50msec FRR (Fast ReRouting) with TI-LFA (Topology Independent Loop Free Alternates) • protocol elimination: LDP, RSVP-TE, NSH… • End-to-End applicability (with SRv6) • e.g. integrated view of Mobile Access, Data Center, Metro, WAN Segment Routing: key advantages 37
  • 38. Scalability : traditional approach 38 State information (match/action) per flow in all nodes! example: “traditional” MPLS label lookup tables with per-flow state
  • 39. Scalability : SR approach 39 State information (match/action) per flow only in the headend node
  • 40. Scalability and SDN: traditional approach 40 “traditional” OpenFlow with per-flow state in all nodes SDN controller talks with all nodes (per flow)
  • 41. Scalability and SDN: SR approach 41 SDN controller only talks with edge nodes (per flow)
  • 42. SRv6: extending the SR domain (1/3) 42 S1 S2 S3Headend Node SR domainSR Policy Ingress node (edge node) Egress node (edge node) Datacenter Server
  • 43. SRv6: extending the SR domain (2/3) 43 S1 S2 S3Headend Node SR domain Ingress node Datacenter Server Edge node SR Policy SR Policy Datacenter Network
  • 44. SRv6: extending the SR domain (3/3) 44 S1 S2 S3 Headend Node SR domainSR Policy Edge node Datacenter Server Edge node SR Policy Datacenter Network Access / Metro Network “End-to-end” SRv6
  • 45. © 2018 Cisco and/or its affiliates. All rights reserved. IPv6 provides reachability 45
  • 46. © 2018 Cisco and/or its affiliates. All rights reserved. IPv6 provides reachability: IoT, Core, Data Centers 46
  • 47. © 2018 Cisco and/or its affiliates. All rights reserved. SRv6 Underlay and Overlay domains 47 Underlay Overlay
  • 48. © 2018 Cisco and/or its affiliates. All rights reserved. SRv6 – Segment Routing & IPv6 : the Vision • Simplicity • Protocol elimination • SLA • Fast ReRoute and TE • Overlay • NFV • SDN • SR is de-facto SDN architecture • 5G 48 IPv6 for reachability SR for anything else
  • 49. © 2018 Cisco and/or its affiliates. All rights reserved. IPv6 for reachability SRv6 for underlay 49 RSVP for FRR/TE Horrendous states scaling in k*N^2
  • 50. © 2018 Cisco and/or its affiliates. All rights reserved. IPv6 for reachability SRv6 for underlay 50 SRv6 for Underlay Simplification through protocol reduction SLA through automated FRR and TE De-facto SDN architecture
  • 51. © 2018 Cisco and/or its affiliates. All rights reserved. IPv6 for reachability SRv6 for underlay and overlay Multiplicity of protocols and states hinder network economics 51 SRv6 for Underlay Simplification, FRR, TE, SDN UDP+VxLAN Overlay Additional Protocol just for tenant ID NSH for NFV Additional Protocol and State
  • 52. © 2018 Cisco and/or its affiliates. All rights reserved. IPv6 for reachability SRv6 for underlay and overlay 52 SRv6 for Underlay Simplification, FRR, TE, SDN SRv6 for Overlay SRv6 for SFC, VPNs…
  • 53. © 2018 Cisco and/or its affiliates. All rights reserved. SRv6 – Segment Routing & IPv6 53 IPv6 for reachability SR for anything else • Simplicity • Protocol elimination • SLA • Fast ReRoute and TE • Overlay • NFV • SDN • SR is de-facto SDN architecture • 5G
  • 54. Agenda SR and SRv6 introduction SRv6 Dataplane SRv6 Network Programming Model SRv6 use cases (TE / FRR / Service Function Chaining / VPNs / SD-WAN) Hands-on part SRv6 Segment Routing Header Why SRv6 is so cool? Scalability, SDN… Additional materials and conclusions
  • 55. © 2018 Cisco and/or its affiliates. All rights reserved. Network instruction • 128-bit SRv6 SID • Locator: routed to the node performing the function • Function: any possible function either local to network node or app in VM/Container • Flexible bit-length selection 55 FunctionLocator
  • 56. © 2018 Cisco and/or its affiliates. All rights reserved. Network instruction • 128-bit SRv6 SID • Locator: routed to the node performing the function • Function: any possible function either local to network node or app in VM/Container • Arguments: optional argument bits to be used only by that SID • Flexible bit-length selection • USE WITH CAUTION… it may have side effects if it changes on a packet by packet base for packets of the same flow 56 FunctionLocator Args*
  • 57. Network Program Next Segment Locator 1 Function 1 Locator 1 Function 1 Locator 2 Function 2 Locator 3 Function 3 Locator 2 Function 2 Locator 3 Function 3 57
  • 58. Network Program Next Segment Locator 2 Function 2 Locator 1 Function 1 Locator 2 Function 2 Locator 3 Function 3 Locator 1 Function 1 Locator 3 Function 3 58
  • 59. Network Program Next Segment Locator 3 Function 3 Locator 1 Function 1 Locator 2 Function 2 Locator 3 Function 3 Locator 1 Function 1 Locator 2 Function 2 59
  • 60. © 2018 Cisco and/or its affiliates. All rights reserved. Network Program in the Packet Header 60 Locator 1 Function 1 Locator 2 Function 2 Locator 3 Function 3 TCP, UDP, QUIC Locator 1 Function 1Source Address Active Segment IPv6 header Segment Routing Header IPv6 payload IPv6 destination addressIPv6 source address
  • 61. © 2018 Cisco and/or its affiliates. All rights reserved. SRv6 Header 61 Metadata TLV Segments Left Locator 1 Function 1 Locator 2 Function 2 Locator 3 Function 3 TAG
  • 62. © 2018 Cisco and/or its affiliates. All rights reserved. Argument shared between functions 62 “Global” Argument Metadata TLV Segments Left Locator 1 Function 1 Locator 2 Function 2 Locator 3 Function 3 TAG
  • 63. © 2018 Cisco and/or its affiliates. All rights reserved. SRv6 for anything 63 Optimized for HW processing e.g. Underlay & Tenant use-cases Optimized for SW processing e.g. NFV, Container, Micro-Service Metadata TLV Segments Left Locator 1 Function 1 Locator 2 Function 2 Locator 3 Function 3 TAG
  • 64. © 2018 Cisco and/or its affiliates. All rights reserved. SRv6 for anything 64 Turing Metadata TLV Segments Left Locator 1 Function 1 Locator 2 Function 2 Locator 3 Function 3 TAG
  • 65. SRv6 Network Programming model End Endpoint function The SRv6 instantiation of a prefix SID End.X Endpoint function with Layer-3 cross-connect The SRv6 instantiation of a Adj SID End.T Endpoint function with specific IPv6 table lookup End.DX2 Endpoint with decapsulation and Layer-2 cross-connect L2VPN use-case End.DX2V Endpoint with decapsulation and VLAN L2 table lookup EVPN Flexible cross-connect use-cases End.DT2U Endpoint with decaps and unicast MAC L2 table lookup EVPN Bridging unicast use-cases End.DT2M Endpoint with decapsulation and L2 table flooding EVPN Bridging BUM use-cases with ESI filtering 65
  • 66. SRv6 Network Programming model End.DX6 Endpoint with decapsulation and IPv6 cross-connect IPv6 L3VPN use (equivalent of a per-CE VPN label) End.DX4 Endpoint with decapsulation and IPv4 cross-connect IPv4 L3VPN use (equivalent of a per-CE VPN label) End.DT6 Endpoint with decapsulation and IPv6 table lookup IPv6 L3VPN use (equivalent of a per-VRF VPN label) End.DT4 Endpoint with decapsulation and IPv4 table lookup IPv4 L3VPN use (equivalent of a per-VRF VPN label) End.DT46 Endpoint with decapsulation and IP table lookup IP L3VPN use (equivalent of a per-VRF VPN label) End.B6 Endpoint bound to an SRv6 policy SRv6 instantiation of a Binding SID 66
  • 67. SRv6 Network Programming model End.B6.EncapsEndpoint bound to an SRv6 encapsulation Policy SRv6 instantiation of a Binding SID End.BM Endpoint bound to an SR-MPLS Policy SRv6/SR-MPLS instantiation of a Binding SID End.S Endpoint in search of a target in table T The list is not exhaustive. In practice, any function can be attached to a local SID: e.g. a node N can bind a SID to a local VM or container which can apply any complex function on the packet. 67
  • 68. © 2018 Cisco and/or its affiliates. All rights reserved. END – Default endpoint function 68 • Default endpoint behavior (node segment) • Decrement Segments Left, update DA • Forward according to new DA • Node 2 advertises prefix A2::/64 (A2::/64 is the SID locator) • Packets are forwarded to node 2 along the default routes (shortest path) • On 2, the default endpoint behavior is associated with ID 1 (1 is the function) • The SID corresponding to the default endpoint behavior on node 2 is A2::1 SR Hdr IPv6 Hdr SA = A1::, DA = A2::1 (…,A3::,A2::1,…) SL=k Payload 2 A2:: /64 SR Hdr IPv6 Hdr SA = A1::, DA = A3:: (…, A3::, A2::1,…) SL=k-1 Payload 3
  • 69. © 2018 Cisco and/or its affiliates. All rights reserved. END.X – Endpoint then layer3 Xconnect 70 • Endpoint xconnect behavior (adjacency segment) • Decrement Segments Left, update DA • Forward on the interface associated with the Xconnect segment • Node 3 advertises prefix A3::/64 • Packets are forwarded to node 3 along the default routes (shortest path) • On 3, the endpoint xconnect behavior for adjacency 1 is associated with ID C1 • The SID corresponding to endpoint xconnect-1 behavior on node 3 is A3::C1 SR Hdr IPv6 Hdr SA = A1::, DA = A3::C1 (…,A4::, A3::C1,…) SL=k Payload SR Hdr IPv6 Hdr SA = A1::, DA = A4:: (…, A4::, A3::C1,…) SL=k-1 Payload 3 A3:: /64 4 1 2
  • 70. Agenda SR and SRv6 introduction SRv6 Dataplane SRv6 Network Programming Model SRv6 use cases (TE / FRR / Service Function Chaining / VPNs / SD-WAN) Hands-on part SRv6 Segment Routing Header Why SRv6 is so cool? Scalability, SDN… Additional materials and conclusions
  • 71. Segment Routing Traffic Engineering vs. “traditional” Traffic Engineering • In “traditional” TE, a connection (LSP) is setup updating the forwarding tables of ALL crossed nodes, • By combining prefix and adjacency segments we have the same expressiveness of traditional TE • The average number of segments (waypoints) needed to enforce a TE path is very low in typical scenarios • Equal Cost Multipath (ECMP) can be exploited in a natural way with SR 73
  • 72. Using Segment Routing for Fault Protection • FRR (Fast ReRoute) with TI-LFA: Topology Independent Loop-Free Alternate • Local backup instructions can be added to protect every routing entry from (single) failure of outgoing link/node 74
  • 73. © 2018 Cisco and/or its affiliates. All rights reserved. TI-LFA example (needs an Adjacency Segment) 75 2 4 6 5 1 A5::0 A5::/64 Pri → via 5 FRR → insert A2::C4 100 Primary route FRR Route (Using Adiacency Segment) 1 1 1 1
  • 74. © 2018 Cisco and/or its affiliates. All rights reserved. TI-LFA example (needs an Adjacency Segment) 76 2 4 6 5 1 A5::0 A5::/64 Pri → via 5 FRR → insert A2::C4 Primary route FRR Route (Using Adiacency Segment) 1001 1 1 1
  • 75. © 2018 Cisco and/or its affiliates. All rights reserved. TI-LFA example (needs an Adjacency Segment) 77 2 4 6 5 1 A2::C4 A5::0 A5::0 <50mec FRR A5::/64 Pri → via 5 FRR → insert A2::C4 Primary route FRR Route (Using Adiacency Segment) 1001 1 1 1
  • 76. © 2018 Cisco and/or its affiliates. All rights reserved. TI-LFA 81 • 50msec Protection upon local link, node or SRLG failure • Simple to operate and understand • can be automatically computed by the router’s IGP process • 100% coverage across any topology • predictable (backup = postconvergence) • Optimum backup path • leverages the post-convergence path, planned to carry the traffic • avoid any intermediate flap via alternate path • Incremental deployment • Distributed and Automated Intelligence
  • 77. © 2018 Cisco and/or its affiliates. All rights reserved. SRv6 Overlays for VPNs / SD-WAN • Automated – No tunnel to configure C4 identifies the tenant • Simple – Protocol elimination • Efficient – SRv6 for everything 82 1 2 Green Overlay V:: /16 via A:2::C4 4 V:: /16 3 T:: /16 IPv6 ( A:1::, A:2::C4 ) Payload IPv6 ( T:1::, V:2:: ) IPv6 ( T:1::, V:2:: ) Payload IPv6 ( T:1::, V:2:: ) Payload
  • 78. © 2018 Cisco and/or its affiliates. All rights reserved. SRv6 Overlays with Underlay Control • SRv6 does not only eliminate unneeded overlay protocols • SRv6 solves problems that these protocols cannot solve 83 1 2 Green Overlay V:: /16 via A:2::C4 with Latency 4 V:: /16 3 T:: /16 3 IPv6 ( T:1::, V:2:: ) Payload IPv6 ( A:1::, A:3::0 ) Payload IPv6 ( T:1::, V:2:: ) SRH (A:2::C4, A:3::0 )
  • 79. © 2018 Cisco and/or its affiliates. All rights reserved. 84 IPv6 ( A:1::, A:2::C4 ) Payload IPv6 ( T:1::, V:2:: ) SRH ( A:2::C4, A:3::0 ) 1 2 Green Overlay V:: /16 via A:2::C4 with Latency 4 V:: /16 3 T:: /16 3 IPv6 ( T:1::, V:2:: ) Payload IPv6 ( T:1::, V:2:: ) Payload SRv6 Overlays with Underlay Control • SRv6 does not only eliminate unneeded overlay protocols • SRv6 solves problems that these protocols cannot solve
  • 80. © 2018 Cisco and/or its affiliates. All rights reserved. SRv6 for SFC • A:3::A32 means – App in Container 32 – @ node A:3::/64 • Stateless – NSH creates per-chain state in the fabric – SR does not • App is SR aware or not 85 IPv6 ( A:1::, A:3::A32 ) Payload IPv6 ( T:1::, V:2:: ) SRH ( A:2::C4, A:5::A76, A:4::0, A:3::A32 ) 1 2 4 V:: /16 3 T:: /16 4 3 App 32 Container Server 3 5 App 76 VM Server 5 IPv6 ( T:1::, V:2:: ) Payload
  • 81. © 2018 Cisco and/or its affiliates. All rights reserved. IPv6 ( A:1::, A4::0 ) Payload IPv6 ( T:1::, V:2:: ) SRH ( A:2::C4, A:5::A76, A:4::0, A:3::A32 ) 3 App 32 Container Server 3 SRv6 for SFC • Integrated with underlay SLA 86 1 2 4 V:: /16 3 T:: /16 4 5 App 76 VM Server 5
  • 82. © 2018 Cisco and/or its affiliates. All rights reserved. IPv6 ( A:1::, A:5::A76 ) Payload IPv6 ( T:1::, V:2:: ) SRH ( A:2::C4, A:5::A76, A:4::0, A:3::A32 ) 3 App 32 Container Server 3 SRv6 for SFC • A:5::A76 means – App in VM 76 – @ node A:5::/64 • Stateless – NSH creates per-chain state in the fabric – SR does not • App is SR aware or not 87 1 2 4 V:: /16 3 T:: /16 4 5 App 76 VM Server 5
  • 83. © 2018 Cisco and/or its affiliates. All rights reserved. IPv6 ( A:1::, A:2::C4 ) Payload IPv6 ( T:1::, V:2:: ) SRH ( A:2::C4, A:5::A76, A:4::0, A:3::A32 ) 3 App 32 Container Server 3 SRv6 for SFC • Integrated with Overlay 88 1 2 4 V:: /16 3 T:: /16 4 5 App 76 VM Server 5 IPv6 ( T:1::, V:2:: ) Payload
  • 84. Agenda SR and SRv6 introduction SRv6 Dataplane SRv6 Network Programming Model SRv6 use cases (TE / FRR / Service Function Chaining / VPNs / SD-WAN) Hands-on part SRv6 Segment Routing Header Why SRv6 is so cool? Scalability, SDN… Additional materials and conclusions
  • 85. Hands-on session • We run our experiments on the rose-srv6 Virtual Machine, if you want to replicate them, see https://netgroup.github.io/rose/rose-vm.html • The experiments performed are reported in these technical reports: –“ROSE-SRv6 Tutorial on Linux – Part 1. Manual creation of SRv6 tunnels in the data plane” https://netgroup.github.io/rose/rose-vm.html#rose-srv6-tutorial-on-linux---part-1 –“ROSE-SRv6 tutorial on Linux - Part 2. ROSE Control Plane : setting up SRv6 tunnels from the controller” https://netgroup.github.io/rose/rose-vm.html#rose-srv6-tutorial-on-linux---part-2 90
  • 86. Agenda SR and SRv6 introduction SRv6 Dataplane SRv6 Network Programming Model SRv6 use cases (TE / FRR / Service Function Chaining / VPNs / SD-WAN) Hands-on part SRv6 Segment Routing Header Why SRv6 is so cool? Scalability, SDN… Additional materials and conclusions
  • 87. SRv6 standardization •Large standardization efforts in IETF (around 70 document) – Driven by vendors (CISCO is the main supporter) – See full list here: www.segment-routing.net/ietf/ • Main RFCs – RFC 8402 Segment Routing Architecture defines SR concepts both for MPLS and SRv6 – RFC 8660 Segment Routing with MPLS data plane – RFC 8754 IPv6 Segment Routing Header (SRH) defines the SRv6 dataplane encapsulation (SRH) 92
  • 88. SRv6 standardization • Main WG docs – draft-ietf-spring-srv6-network-programming defines the SRv6 Network Programming model – draft-ietf-spring-segment-routing-policy – draft-ietf-spring-sr-service-programming covers SFC aspects •IETF docs can be classified in several categories: Architecture, Use-Cases and Requirements, Deployments and Interoperability, Fast Reroute (FRR), OAM, Performance Measurements, Multicast/Replication, Protocol Extensions 93
  • 89. SRv6 deployments • Large-scale commercial deployments – Softbank, Iliad, China Telecom, LINE corporation, China Unicom, CERNET2, China Bank and Uganda MTN. •Hardware linerate implementations – Cisco Systems, Huawei – Broadcom, Barefoot, Intel, Marvell, Mellanox – Multiple Interop Reports •Open-source platforms/ Applications – Linux kernel, FD.io VPP, P4, Wireshark, tcpdump, iptables, nftables, snort, ExaBGP, Contiv-VPP 94
  • 90. SRv6 Open Source Platforms / Applications • SRv6 Data path – Linux kernel – FD.io VPP (https://wiki.fd.io/view/VPP) – P4 SRv6 (http://bit.ly/onos-p4-srv6) • Applications and tools – Wireshark, Tcpdump – scapy – iptables, nftables – Snort NIDS (https://github.com/SRouting/SR-Snort) • Control plane – ExaBGP (https://www.segment-routing.net/open-software/exabgp/) – Contiv-VPP 95
  • 91. ROSE - Research on Open SRv6 Ecosystem • SRv6 uSID (micro segment) implementation in Linux • SRv6 uSID (micro segment) implementation on P4 • SRv6-PM (SRv6 Performance monitoring) • rose-srv6 VM • HIKE – HybrId Kernel EBPF data plane 96 • SREXT - Segment Routing Extension Linux kernel module • SRNK – SR proxy Native Kernel • pyroute2 extensions to support SRv6 • SRv6-SDN – An SDN ecosystem for SRv6 on Linux • SRPerf - a Performance Evaluation Framework for SRv6 implementations https://netgroup.github.io/rose/ The ROSE ecosystem includes several sub-projects: The hands-on part of this tutorial is based on the ROSE ecosystem, in particular on the rose-srv6 VM
  • 92. Segment Routing scientific work • More than 90 papers – http://www.segment-routing.net/scientific-papers/ (lists 60 papers) – See P.L. Ventre et al. “Segment Routing: a Comprehensive Survey of Research Activities, Standardization Efforts and Implementation Results” accepted for publication in IEEE Communications Surveys and Tutorials (preprint on arxiv http://arxiv.org/abs/1904.03471) 97
  • 93. Our contributions… • SRPerf: a Performance Evaluation Framework for IPv6 Segment Routing A. Abdelsalam, P. L. Ventre, C. Scarpitta, A. Mayer, S. Salsano, P. Camarillo, F. Clad and C. Filsfils, Accepted to IEEE Transactions on Network and Service Management (TNSM). • SRPerf: a Performance Evaluation Framework for IPv6 Segment Routing A. Tulumello, A. Mayer, M. Bonola, P. Lungaroni, C. Scarpitta, S. Salsano, A. Abdelsalam, P. Camarillo, D. Dukes, F. Clad, C. Filsfils, Conference of Network and Service Management 2020 (CNSM 2020). • SDN Architecture and Southbound APIs for IPv6 Segment Routing Enabled Wide Area Networks P. L. Ventre, M. M. Tajiki, S. Salsano, C. Filsfils, IEEE Transactions on Network and Service Management (TNSM), December 2018. • The Network as a Computer with IPv6 Segment Routing: a Novel Distributed Processing Model for the Internet of Things A. Mayer, E. Altomare, S. Salsano, F. Lo Presti, C. Filsfils, NGOSCPS workshop at the CPS-IoT Week 2019, April 15 2019, Montreal, Canada (pdf) • SR-Snort: IPv6 Segment Routing Aware IDS/IPS A. Abdelsalam, S. Salsano, F. Clad, P. Camarillo, C. Filsfils, IEEE Conference on Network Function Virtualization and Software Defined Networks (NFV-SDN), Verona, Italy, November 2018. • Performance of IPv6 Segment Routing in Linux Kernel A. Abdelsalam, P. L. Ventre, A. Mayer, S. Salsano, P. Camarillo, F. Clad, C. Filsfils, CNSM Workshop on Segment Routing and Service Function Chaining (SR+SFC), Rome, Italy, 2018. • SERA: SEgment Routing Aware Firewall for Service Function Chaining scenarios A. Abdelsalam, S. Salsano, F. Clad, P. Camarillo, C. Filsfils, IFIP Networking, Zurich, Switzerland, May 2018. • Implementation of Virtual Network Function Chaining through Segment Routing in a Linux-based NFV Infrastructure A. AbdelSalam, F. Clad, C. Filsfils, S. Salsano, G. Siracusano and L. Veltri IEEE Conference on Network Softwarization (NetSoft), Bologna, Italy, 2017. • An Efficient Linux Kernel Implementation of Service Function Chaining for legacy VNFs based on IPv6 Segment Routing, A. Mayer, S. Salsano, P. L. Ventre, A. Abdelsalam, L. Chiaraviglio, C. Filsfils, 5th IEEE International Conference on Network Softwarization (NetSoft 2019), 24-28 June 2019, Paris, France 99
  • 94. Segment Routing hottest open issues • In our survey http://arxiv.org/abs/1904.03471 we have identified the following research directions: – Service Function Chaining support – SRv6 end-host implementation aspects / SmartNICs and SRv6 – Cloud Orchestration – Integration with Applications – 5G and SRv6 – Internet of Things and SRv6 100
  • 95. Conclusions • Segment Routing architecture seeks the right balance between distributed intelligence and centralized optimization • Segment Routing over IPv6 (SRv6) brings in the Network Programming model • SRv6 provides underlay and overlay services in a unified way, possibly across access, metro, core and data center networking domains • Lots of issues are still open, very good for researchers ☺ 101
  • 96. Thank you. Questions? Contacts Stefano Salsano University of Rome Tor Vergata / CNIT stefano.salsano@uniroma2.it 102
  • 97. References and acknowledgements Research on Open SRv6 Ecosystem https://netgroup.github.io/rose/ 5G European Validation Platform for Extensive Trials https://www.5g-eve.eu/ The 5G EVE project has received funding from the European Horizon 2020 Programme for research, technological development and demonstration under grant agreement n° 815074
  • 99. The network as a computer with SRv6 (SR-IoT) • The Network as a Computer with IPv6 Segment Routing: a Novel Distributed Processing Model for the Internet of Things A. Mayer, E. Altomare, S. Salsano, F. Lo Presti, C. Filsfils, NGOSCPS workshop at the CPS-IoT Week 2019, April 15 2019, Montreal, Canada (pdf) A position (or visionary…) paper. Assuming that it is possible to exploit distributed processing in the “things/gateways”, the application logic and the computation state is transferred “on the fly” with IP packets (using SRv6!) : “SR- IoT” 105
  • 100. The network as a computer with SRv6 (SR-IoT) In SR-IoT, the Segment List can be seen as a “Network program”, where the next segment is the Instruction Pointer and a network node is a CPU that executes the instruction 106
  • 101. The network as a computer with SRv6 (SR-IoT) In SR-IoT, we extend the SRv6 network programming model, considering the Functions as “operation codes” of a processor ISA (Instruction Set Architecture) The whole IoT infrastructure is seen as a logical machine with I/O ports (corresponding to the ports of IoT devices), that can be programmed through an Instruction Set Architecture 107
  • 102. The network as a computer with SRv6 (SR-IoT) In SR-IoT, we extend the SRv6 network programming model, considering the Functions as “operation codes” of a processor ISA (Instruction Set Architecture) The whole IoT infrastructure is seen as a logical machine with I/O ports (corresponding to the ports of IoT devices), that can be programmed through an Instruction Set Architecture 108
  • 103. The network as a computer with SRv6 (SR-IoT) We designed a prototype of SR-IoT, considering the Instruction Set Architecture (ISA) of Atmel AVR microcontroller (Arduino) and using the the SimAVR emulator on Linux to emulate the AVR microcontroller. An SR-IoT packet corresponds to a process. It includes the program in the SRv6 segment list, and the serialization of registers, stack and RAM. All need to fit in less than 1500 bytes ! For TinyAVR microcontrollers, RAM used can be as low as 128 or 256 bytes. We designed an efficient solution to encode operations in the IPv6 segment list. For example, 100 instructions over 10 different nodes can be represented with 320 bytes, leaving 1000 bytes for RAM, stack and CPU registers… 109
  • 104. Compressing the SR Header • An SRv6 segment list is a sequence of IPv6 addresses. The SRH always introduces 8 bytes. Each IPv6 address is 16 bytes long. Example for 5 segments => 8 + 5 * 16 = 88 bytes of overhead. Example for 10 segments => 8 + 10 * 16 = 168 bytes of overhead. • In most cases the number of segments is limited (e.g. up to 3-4 segments), but what happens if many segments are needed for a particular service or service scenario ? • A more compact representation of the Segment List is needed ! 110
  • 105. SRv6 uSID (micro-SID) • A new extension of the SRv6 Network Programming model – https://datatracker.ietf.org/doc/draft-filsfils-spring-net-pgm-extension-srv6-usid/ • It allows expressing SRv6 segments with a very compact and efficient representation. – For example, using two bytes for uSID instead of using a normal IPv6 address (16 bytes) for a regular SRv6 segment. • Leverages the SRv6 control and data planes without any change • Provides better scaling and minimum MTU overhead 111
  • 106. SRv6 uSID interop event 112 https://www.youtube.com/watch?v=pVFkmwYIgmo Developed by the ROSE team
  • 107. Other proposals in IETF for SRH compression •Segment Routing Mapped To IPv6 (SRm6) – draft-bonica-spring-sr-mapped-six-01 – draft-bonica-6man-comp-rtg-hdr-22 •Compressed SRv6 Network Programming – draft-li-spring-compressed-srv6-np-02 113
  • 108. Network Transport Evolution Simplify - Optimize - Enable 114 Service Protocol s Transpor t Protocol s IGP/SR BGP-EVPN Unified MPLS SR Enabled Transport Do more with less !! IP
  • 109. Path expressed in the packet Data Dynamic path Explicit path Paths options Dynamic (Headend computation) Explicit (Operator / Controller) Control Plane Routing protocols with extensions (IS-IS,OSPF, BGP) SDN controller Data Plane MPLS (segment labels) IPv6 (+SR header) Segment Routing 115 Segment routing architecture seeks the right balance between distributed intelligence and centralized optimization
  • 110. IPv6 adoption is a reality https://6lab.cisco.com/stats/ 116
  • 112. SRv6 domain and its security (few simple considerations…)
  • 113. SR Domain • The set of trusted nodes participating in the SR solution • May be organized in multiple IGP areas and BGP AS SRv6 Domain AS AS area area 119
  • 114. Domain Blocks • The SR domain has – a classic address block (e.g. B::/4) – a SID block (e.g. A::/4) SRv6 Domain Classic address Block B::/4 SID Block A::/4 120
  • 115. Trust inside the domain • Any source A inside the domain can inject SR traffic using any SID of the domain – via SID list <S1, S2, S3> S1 S2 S3 A Z (A, S1)(Z, S3, S2, S1, SL=3) 121
  • 116. External traffic is not trusted • Any external source A cannot leverage the SID’s of the domain • Any border router drops any external traffic destined to its blocks – A::/4 and B::/4 S1 S2 S3 A Z (A, S1)(Z, S3, S2, S1, SL=3) 122
  • 117. Validating SR Headers • The HMAC TLV can be carried in Segment Routing Header to validate the header – “SR Source Nodes not directly connected to the SR Domain may access specific sets of segments within the SR Domain when secured with the SRH HMAC TLV. The SRH HMAC TLV provides a means of verifying the validity of ingress packets SRH, limiting access to the segments in the SR Domain to only those source nodes with permission.” 123