isp design using mikrotik chr as an mpls router · for mpls with the mikrotik chr. mtu is handled...

23
ISP Design – Using MikroTik CHR as an MPLS router PRESENTED BY: KEVIN MYERS , NETWORK ARCHITECT www.iparchitechs.com

Upload: others

Post on 10-Apr-2020

34 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: ISP Design Using MikroTik CHR as an MPLS router · for MPLS with the MikroTik CHR. MTU is handled differently in Hyper-V vs. ESXi and ProxMox (KVM). Packets are not assembled into

ISP Design – Using MikroTik CHR as an MPLS router

P R ES E N T E D BY:

KEVIN MYERS , NETWORK ARCHITECT

www.iparchitechs.com

Page 2: ISP Design Using MikroTik CHR as an MPLS router · for MPLS with the MikroTik CHR. MTU is handled differently in Hyper-V vs. ESXi and ProxMox (KVM). Packets are not assembled into

Profile: About Kevin Myers

Background:• 20+ years in Networking• Designed/Built Networks on 6 continents• MikroTik Certified Trainer • MikroTik, Cisco and Microsoft Certified

Community Involvement:

Packet Pushers (Podcast Guest / Blogger)

Group Contributor (RouterOS / WISP Talk and others)

Delegate/Roundtable contributor (NFD14)

MT Forum (Forum Veteran – Member since 2012)

Network Collective (Podcast Guest)

Page 3: ISP Design Using MikroTik CHR as an MPLS router · for MPLS with the MikroTik CHR. MTU is handled differently in Hyper-V vs. ESXi and ProxMox (KVM). Packets are not assembled into

Profile: About IP ArchiTechs

Expert NetworkingWhitebox | ISP | Data Center | Enterprise

Locations in: US | Canada | South America

✓ Global Consulting✓ Managed Networks✓ Monitoring✓ Load Testing✓ Development

Call us at: +1 855-645-7684E-mail: [email protected]: www.iparchitechs.com

Page 4: ISP Design Using MikroTik CHR as an MPLS router · for MPLS with the MikroTik CHR. MTU is handled differently in Hyper-V vs. ESXi and ProxMox (KVM). Packets are not assembled into

Profile: About IP ArchiTechs

Now in Europe!IPA Opened an office in Nis, Serbia in 2018

Page 5: ISP Design Using MikroTik CHR as an MPLS router · for MPLS with the MikroTik CHR. MTU is handled differently in Hyper-V vs. ESXi and ProxMox (KVM). Packets are not assembled into

Design: Why use the CHR as an MPLS router?

Goal of this presentation: When the presentation is finished, hopefully you will have walked away with a few key concepts:

• Performance characteristics of the CHR as an MPLS router

• Best practices when deploying the CHR as an MPLS router

• Benefits of using the CHR vs RouterBoard or CCR as an MPLS router

Page 6: ISP Design Using MikroTik CHR as an MPLS router · for MPLS with the MikroTik CHR. MTU is handled differently in Hyper-V vs. ESXi and ProxMox (KVM). Packets are not assembled into

Design: CHR MPLS – which hypervisor ???

• Which Hypervisor should I use?

Page 7: ISP Design Using MikroTik CHR as an MPLS router · for MPLS with the MikroTik CHR. MTU is handled differently in Hyper-V vs. ESXi and ProxMox (KVM). Packets are not assembled into

Design: CHR MPLS – which hypervisor ???

• Which Hypervisor should I use?

Hyper-V is the only hypervisor currently recommended for MPLS with the MikroTik CHR.

MTU is handled differently in Hyper-V vs. ESXi and ProxMox (KVM). Packets are not assembled into 64k buffers in HyperV. When packets are broken down into 64k buffers, it seems to create MTU issues for the CHR.

Page 8: ISP Design Using MikroTik CHR as an MPLS router · for MPLS with the MikroTik CHR. MTU is handled differently in Hyper-V vs. ESXi and ProxMox (KVM). Packets are not assembled into

Design: CHR MPLS – which hypervisor ???

• Why Not ESXi or ProxMox (KVM)?

ESXi and ProxMox (KVM) both have issues when running the CHR for MPLS.

MTU is handled differently in Hyper-V vs. ESXi and ProxMox (KVM). Packets are assembled into 64k buffers which seems to create MTU issues for the CHR. This affects explicit null the most.

Page 9: ISP Design Using MikroTik CHR as an MPLS router · for MPLS with the MikroTik CHR. MTU is handled differently in Hyper-V vs. ESXi and ProxMox (KVM). Packets are not assembled into

Design: CHR vs. Hardware for MPLS?

vs.

• Which platform is better?

• Throughput capabilities?

• x86 CPU vs. ARM/Tilera?

• MTU/Throughput concerns on different Hypervisors

Page 10: ISP Design Using MikroTik CHR as an MPLS router · for MPLS with the MikroTik CHR. MTU is handled differently in Hyper-V vs. ESXi and ProxMox (KVM). Packets are not assembled into

Design: CHR vs. Tilera/ARM for MPLS?

Platform

CPUMPLS router CPU requirements depend on load and explicit/implicit null

x86Better for heavy computational work. Higher power draw.

TileraOptimized for packet transfer. Designed to be low power draw.

ARMIn between x86 and

Tilera for performance.

ThroughputAt 1530 bytes (L2), and 8970 bytes (L2)

x86More CPU and power is required to move data at the same speed as a CCR

TileraHandles throughput at different frame sizes slightly better than x86

ARMHandles throughput at different frame sizes similar to Tilera

MTU Handling x86x86 hardware and HV can typically support up to 9000 MTU.

TileraSupports up to 10222

ARMSupports up to 9982

Page 11: ISP Design Using MikroTik CHR as an MPLS router · for MPLS with the MikroTik CHR. MTU is handled differently in Hyper-V vs. ESXi and ProxMox (KVM). Packets are not assembled into

Design: CHR MPLS testing - logical lab setup

100.76.1.0/29

VLAN 761100.76.2.0/29

VLAN 762

Vengeance CHR

100.76.3.0/29

VLAN 763

CCR1036 CCR1036 CCR1072

MPLS Core

MPLS PEMPLS PELo0 - 100.127.2.1/32

Lo0 - 100.127.1.1/32 Lo0 - 100.127.1.2/32

Lo0 - 100.127.2.2/32

L2VPN - VPLS

Vlan 777 Vlan 778

Page 12: ISP Design Using MikroTik CHR as an MPLS router · for MPLS with the MikroTik CHR. MTU is handled differently in Hyper-V vs. ESXi and ProxMox (KVM). Packets are not assembled into

Design: CHR MPLS – switch–centric lab setup

Physical

Test Network for

MPLS CHR

HP 1U x86 Server

14 UID 1iLO 4

500W

94%

CHR

Baltic Networks Vengeance HV

MPLS Core

MPLS PE

MPLS PE

Page 13: ISP Design Using MikroTik CHR as an MPLS router · for MPLS with the MikroTik CHR. MTU is handled differently in Hyper-V vs. ESXi and ProxMox (KVM). Packets are not assembled into

Design: CHR testing lab setup

Hypervisor details – VM provisioning recommendations for Hyper V

• 2 vCPUs

• 4096 MB RAM (or more)

• Disable HyperThreading in the BIOS

• Use CPU reservation (100%)

• Disable all un-needed VM components (CD-ROM, SCSI controller, etc)

• Increase MTU to maximum on the VSWITCH/Interfaces

Page 14: ISP Design Using MikroTik CHR as an MPLS router · for MPLS with the MikroTik CHR. MTU is handled differently in Hyper-V vs. ESXi and ProxMox (KVM). Packets are not assembled into

Design: CHR performance on VMWARE ESXi

• Concept of testing• Performance with VPLS

• Performance with Implicit Null vs Explicit Null

• Performance at 1530 MPLS MTU bytes, 9000 MPLS MTU bytes

• Performance considerations

• Dedicate HV to CHR – don’t mix applications

• TSO/LSO – Disable for best performance

• Clock speed – Highest speed possible

Page 15: ISP Design Using MikroTik CHR as an MPLS router · for MPLS with the MikroTik CHR. MTU is handled differently in Hyper-V vs. ESXi and ProxMox (KVM). Packets are not assembled into

Design: Benefits of MPLS on CHR

• VPLS is easier to make highly available than independent routers due to issues with Layer 2 looping. CHR on two HV hosts eliminates looping.

100.76.1.0/29

VLAN 761100.76.2.0/29

VLAN 762

Vengeance CHR

100.76.3.0/29

VLAN 763

CCR1036 CCR1036 CCR1072

MPLS Core

MPLS PEMPLS PELo0 - 100.127.2.1/32

Lo0 - 100.127.1.1/32 Lo0 - 100.127.1.2/32

Lo0 - 100.127.2.2/32

L2VPN - VPLS

Vlan 777 Vlan 778

L2VPN - VPLS

Vlan 778

Loop

Potential

Page 16: ISP Design Using MikroTik CHR as an MPLS router · for MPLS with the MikroTik CHR. MTU is handled differently in Hyper-V vs. ESXi and ProxMox (KVM). Packets are not assembled into

Design: Benefits of MPLS on CHR

• Can deploy multiple MPLS PE routers to isolate clients when needed

100.76.1.0/29

VLAN 761100.76.2.0/29

VLAN 762

Vengeance CHR

100.76.3.0/29

VLAN 763

CCR1036 CCR1036 CCR1072

MPLS Core

MPLS PEMPLS PELo0 - 100.127.2.1/32

Lo0 - 100.127.1.1/32 Lo0 - 100.127.1.2/32

Lo0 - 100.127.2.2/32

L2VPN - VPLS

Vlan 777 Vlan 778

L2VPN - VPLS

Vlan 780 Vlan 779

Multiple VMs

Page 17: ISP Design Using MikroTik CHR as an MPLS router · for MPLS with the MikroTik CHR. MTU is handled differently in Hyper-V vs. ESXi and ProxMox (KVM). Packets are not assembled into

Design: Understanding Explicit vs. Implicit NULL

• Implicit Null will use Penultimate Hop Popping to deliver the packet unlabeled to the last MPLS router before the packet is forwarded into a non-MPLS network

• Explicit Null will keep the packet labeled until it egresses an interface that isn’t MPLS capable and then the label will be stripped

• Explicit null set in MPLS → LDP will result in slightly higher CPU usage

Page 18: ISP Design Using MikroTik CHR as an MPLS router · for MPLS with the MikroTik CHR. MTU is handled differently in Hyper-V vs. ESXi and ProxMox (KVM). Packets are not assembled into

Design: Testing new multi-core bandwidth

• Using the mew multi-core bandwidth test MikroTikrecently introduced for performance testing. (ROS v 6.44)

• It works very well!

Page 19: ISP Design Using MikroTik CHR as an MPLS router · for MPLS with the MikroTik CHR. MTU is handled differently in Hyper-V vs. ESXi and ProxMox (KVM). Packets are not assembled into

Platform Hypervisor CHR

Baltic Vengeance Hyper-V 2016 6.44

Implicit Null - VPLS Throughput: 4.4 Gbps Peak VM CPU: 15% MPLS MTU: 1530

Design: CHR performance on Hyper V (Windows Server 2016)

Page 20: ISP Design Using MikroTik CHR as an MPLS router · for MPLS with the MikroTik CHR. MTU is handled differently in Hyper-V vs. ESXi and ProxMox (KVM). Packets are not assembled into

Platform Hypervisor CHR

Baltic Vengeance Hyper-V 2016 6.44

Explicit Null - VPLS Throughput: 8.3 Gbps Peak VM CPU: 20% MPLS MTU: 1530

Design: CHR performance on Hyper V (Windows Server 2016)

Page 21: ISP Design Using MikroTik CHR as an MPLS router · for MPLS with the MikroTik CHR. MTU is handled differently in Hyper-V vs. ESXi and ProxMox (KVM). Packets are not assembled into

Platform Hypervisor CHR

Baltic Vengeance Hyper-V 2016 6.44

Implicit Null - VPLS Throughput: 9.9 Gbps Peak VM CPU: 7% MPLS MTU: 9000

Design: CHR performance on Hyper V (Windows Server 2016)

Page 22: ISP Design Using MikroTik CHR as an MPLS router · for MPLS with the MikroTik CHR. MTU is handled differently in Hyper-V vs. ESXi and ProxMox (KVM). Packets are not assembled into

Platform Hypervisor CHR

Baltic Vengeance Hyper-V 2016 6.44

Explicit Null - VPLS Throughput: 9.9 Gbps Peak VM CPU: 16% MPLS MTU: 9000

Design: CHR performance on Hyper V (Windows Server 2016)

Page 23: ISP Design Using MikroTik CHR as an MPLS router · for MPLS with the MikroTik CHR. MTU is handled differently in Hyper-V vs. ESXi and ProxMox (KVM). Packets are not assembled into

Design: Questions?

Questions??