MPLS
MPLS
MPLS
Introduction to MPLS
Prague
MUM Czech Republic 2009
© MikroTik 2009
Q : W h y h a v e n 't y o u h e a r d
a b o u t M P LS b e fo re ?
A: Probably because of the
availability and/or price range
© MikroTik 2009
Q : W h y s h o u ld y o u c a r e
a b ou t M PLS n ow ?
A: Probably because of the
availability and/or price range...
Switching
Protocols: MPLS, ATM, Frame Relay
© MikroTik 2009
Concept of Switching
© MikroTik 2009
Switching
Switching is a network communications method
that groups all transmitted data (no matter of
content, type, or structure) into suitably-sized
blocks
Each block is then transmitted over the network
independently of each other
Network is capable of allocating transmission
resources as needed, in this way optimizing
utilization of link capacity and robustness of
communication
© MikroTik 2009
MPLS
MPLS stands for Multi Protocol Label Switching
MPLS is a packet forwarding method based on
labels attached to the packet and a label
forwarding table with minimal lookup overhead
With MPLS the packet forwarding decision is no
longer based on IP header and routing table
Efficiency of forwarding process is the main
benefit of MPLS
© MikroTik 2009
MPLS Header
Also called Layer2.5 (because it is placed
between OSI Layer2 and Layer3)
Header can consist of one or several 32bit shims:
Label (20 bits)
EXP (3 bits) – Class of Service
End of stack flag(1 bit) – is it last label?
TTL (8 bits)
L2 MPLS L3
© MikroTik 2009 8
MPLS LDP
MPLS labels are assigned and distributed by
the Label Distribution Protocol (LDP)
LDP requirements:
IP connectivity – properly configured IP routing
(static,OSPF,RIP) between all hosts
“loopback” IP address that isn't attached to any real
network interface (recommended)
Homogeneous MPLS cloud – all devices inside the
MPLS cloud must have MPLS support
© MikroTik 2009
MPLS Basics
LER – Label Edge Router
LSR – Label Switch Router
Packets are classified and
labelled
labeled at
at ingress
ingress LER
LER LSRs forward packets
using label swapping
LER
IP packet LER
LSR LSR
Label is removed at
egress LER
MPLS Backbone
© MikroTik 2009 10
MPLS Benefits
Increased scalability of the network
Increased forwarding performance of the network
Increased amount of possible VPN solutions that
an ISP can offer to clients
Traffic engineering
Quality of Service
Redundancy and failover
© MikroTik 2009 11
BGP Scalability with MPLS
Traditionally you have
E Routed backbone to run BGP on all core
routers
BGP
C
C
C E
CE1 CE3
PE1 PE3
CE2 CE4
PE2
© MikroTik 2009 14
Current Layer2 VPNs
Customer based VPN Additional
administration
expenses
Big Overhead
GW
GW
Site 2
CE
Site 1
(Ethernet+GRE+IP)
CE
GW
Each new site requires configuration of
Site 3
EoIP tunnels to every existing site
ISP is not involved
© MikroTik 2009
MPLS VPLS
Provider based VPN service
Bandwidth
improvements
GW
GW Smaller Overhead
Site 1
(Ethernet+2 labels)
CE CE
Site 2
Can ask provider for
PE
PE
guaranteed VPLS
ISP bandwidth
PE
CE
Each new site only requires correct PE
GW
configuration
Site 3 All the work is done by the ISP
ISP is ready to sell new type of service
© MikroTik 2009
Layer3 VPNs
VPN A
VPN scalability Site1
VPN B
Each VPN has unique Site1
routing table (VRF table)
BGP peering
Customer IP address
freedom (overlapping
private IPs)
Can be set over existing MPLS cloud
BGP network
VPN A VPN B
Site2 Site2
VPN A
Site3
© MikroTik 2009
VRF Table
Means 'Virtual Routing and Forwarding Table'
VRF tables are similar to policy routing, except:
Each VRF table is independent - main routing table
will not be used if VRF table fails to resolve route
BGP can be used to distribute routes between
different VRF tables in the router
© MikroTik 2009
IP Routing Limitation
After two IP traffic flows for the same
destination are merged, it is impossible to split
them and reroute over different paths
Overloaded link from Router C to Router E
E
A C F
D
40Mbps traffic from A to F
B 40Mbps traffic from B to F
© MikroTik 2009
Traffic Engineering
TE tunnels can be used to shift the traffic load
onto less utilized links
E
A C F
B TE Tunnel1 50Mbps
TE Tunnel2 50Mbps
© MikroTik 2009
Customers Bandwidth Protection
Customers do not care how it is offered by the
provider
With TE it is easy to deliver guaranteed
bandwidth from point A to point B
Main bandwidth
Provider's network
Backup bandwidth
© MikroTik 2009
Bandwidth Optimization
Separate tunnels for voice, video, or data
Backup tunnels over the third link
Voice Tunnel
Data Tunnel
Backup Voice Tunnel
Backup Data Tunnel
© MikroTik 2009
MPLS on RouterOS
Supported features
Static label binding for Ipv4
LDP for Ipv4
Virtual Private Lan Service
LDP based VPLS
MP-BGP based autodiscovery and signaling
RSVP TE Tunnels
OSPF extension for TE tunnels
Explicit path and CSPF path selection
Forwarding VPN traffic on TE tunnels
OSPF as CE-PE
© MikroTik 2009
MPLS on RotuerOS
Not yet supported
Ipv6
LDP features
Downstream on demand
Ordered label distribution protocol
RIP and iBGP as CE-PE protocols
TE features
Fast reroute
link/node protection
Full feature list at
http://wiki.mikrotik.com/wiki/MPLS
© MikroTik 2009
From EoIP to VPLS
lo:10.1.1.1 lo:10.1.1.2 lo:10.1.1.3
e1 R1 e2 e1 R2 e2 e1 R3 e2
EoIP
# on R1
/mpls ldp interface
add interface=ether2
# on R2
/mpls ldp interface
add interface=ether2
add interface=ether2
# on R3
/mpls ldp interface
add interface=ether1
© MikroTik 2009
From EoIP to VPLS
Configure VPLS
# on R1
/interface vpls add name=R1toR2 remote-peer=10.1.1.3 \
vpls-id=10:10
/interface bridge port add bridge=vpn interface=R1toR2
# on R3
/interface vpls add name=R2toR1 remote-peer=10.1.1.1 \
vpls-id=10:10
/interface bridge port add bridge=vpn interface=R2toR1
© MikroTik 2009
Speed tests
Label switching on RB1000
64 byte pps 512 byte pps Almost 2x faster
Bridging 414 000 359 000
MPLS 410 000 358 000
than IP forwarding
Routing 236 000 229 700 The same speed
as bridging
60% faster than MPLS network
EoIP tunnel over
routed network Site 1
VPLS
Site 2
© MikroTik 2009
Useful links
http://wiki.mikrotik.com/wiki/MPLS
General
http://wiki.mikrotik.com/wiki/MPLS_Overview
http://wiki.mikrotik.com/wiki/EXP_bit_behaviour
http://wiki.mikrotik.com/wiki/MPLS_TE_Tunnels
L2VPNs
http://wiki.mikrotik.com/wiki/MPLSVPLS
http://wiki.mikrotik.com/wiki/BGP_based_VPLS
http://wiki.mikrotik.com/wiki/Cisco_VPLS
L3VPNs
http://wiki.mikrotik.com/wiki/Virtual_Routing_and_Forwarding
http://wiki.mikrotik.com/wiki/A_complete_Layer-3_MPLS_VPN_example
© MikroTik 2009