Evaluation of virtualization and traffic filtering methods for container networks

Similar documents
UDP Encapsulation in Linux netdev0.1 Conference February 16, Tom Herbert

Dockercon 2017 Networking Workshop

Cloud Networking (VITMMA02) Network Virtualization: Overlay Networks OpenStack Neutron Networking

Networking Approaches in. a Container World. Flavio Castelli Engineering Manager

Feasibility of ILA as Network Virtualization Overlay in multi-tenant, multi-domain Cloud

Project Calico v3.2. Overview. Architecture and Key Components. Project Calico provides network security for containers and virtual machine workloads.

Project Calico v3.1. Overview. Architecture and Key Components

Provisioning Overlay Networks

ENG. WORKSHOP: PRES. Linux Networking Greatness (part II). Roopa Prabhu/Director Engineering Linux Software/Cumulus Networks.

VXLAN Overview: Cisco Nexus 9000 Series Switches

Wolfram Richter Red Hat. OpenShift Container Netzwerk aus Sicht der Workload

Solution Guide. Infrastructure as a Service: EVPN and VXLAN. Modified: Copyright 2016, Juniper Networks, Inc.

Cloud Data Center Architecture Guide

Contents. EVPN overview 1

Data Center Configuration. 1. Configuring VXLAN

Disclaimer This presentation may contain product features that are currently under development. This overview of new technology represents no commitme

Container System Overview

Docker Networking Deep Dive online meetup

VNS3 3.5 Container System Add-Ons

Traffic Load Balancing in EVPN/VXLAN Networks. Tech Note

Provisioning Overlay Networks

Accelerating Contrail vrouter

Extreme Networks How to Build Scalable and Resilient Fabric Networks

MP-BGP VxLAN, ACI & Demo. Brian Kvisgaard System Engineer, CCIE SP #41039 November 2017

Multi-site Datacenter Network Infrastructures

Attilla de Groot Attilla de Groot Sr. Systems Engineer, HCIE #3494 Cumulus Networks

PVS Deployment in the Cloud. Last Updated: June 17, 2016

Virtual Security Gateway Overview

Zero to Microservices in 5 minutes using Docker Containers. Mathew Lodge Weaveworks

Agenda Introduce NSX-T: Architecture Switching Routing Firewall Disclaimer This presentation may contain product features that are currently under dev

IP Fabric Reference Architecture

Accelerating vrouter Contrail

DPDK Tunneling Offload RONY EFRAIM & YONGSEOK KOH MELLANOX

Dan Williams Networking Services, Red Hat

Toward an ebpf-based clone of iptables

Disclaimer This presentation may contain product features that are currently under development. This overview of new technology represents no commitme

SR for SD-WAN over hybrid networks

Configuring VXLAN EVPN Multi-Site

Cloud e Datacenter Networking

BROCADE CLOUD-OPTIMIZED NETWORKING: THE BLUEPRINT FOR THE SOFTWARE-DEFINED NETWORK

Huawei CloudEngine Series. VXLAN Technology White Paper. Issue 06 Date HUAWEI TECHNOLOGIES CO., LTD.

Locator ID Separation Protocol (LISP) Overview

Cloud e Datacenter Networking

OPEN CONTRAIL ARCHITECTURE GEORGIA TECH SDN EVENT

Unicast Forwarding. Unicast. Unicast Forwarding Flows Overview. Intra Subnet Forwarding (Bridging) Unicast, on page 1

MPLS, THE BASICS CSE 6067, UIU. Multiprotocol Label Switching

QuickSpecs. Overview. HPE Ethernet 10Gb 2-port 535 Adapter. HPE Ethernet 10Gb 2-port 535 Adapter. 1. Product description. 2.

Introduction to Segment Routing

vswitch Acceleration with Hardware Offloading CHEN ZHIHUI JUNE 2018

Oracle Cloud Infrastructure Virtual Cloud Network Overview and Deployment Guide ORACLE WHITEPAPER JANUARY 2018 VERSION 1.0

Disclaimer This presentation may contain product features that are currently under development. This overview of new technology represents no commitme

H3C S6520XE-HI Switch Series

Higher scalability to address more Layer 2 segments: up to 16 million VXLAN segments.

BIG-IP TMOS : Tunneling and IPsec. Version 13.0

Cisco ACI Multi-Pod/Multi-Site Deployment Options Max Ardica Principal Engineer BRKACI-2003

VXLAN EVPN Automation with ODL NIC. Presented by: Shreyans Desai, Serro Yrineu Rodrigues, Lumina Networks

E : Internet Routing

An Analysis and Empirical Study of Container Networks

Containers Do Not Need Network Stacks

Linux Clusters Institute: OpenStack Neutron

Docker Networking: From One to Many. Don Mills

Evolution of Network Overlays in Data Center Clouds

Optimizing your virtual switch for VXLAN. Ron Fuller, VCP-NV, CCIE#5851 (R&S/Storage) Staff Systems Engineer NSBU

On the cost of tunnel endpoint processing in overlay virtual networks

HPE FlexFabric 5940 Switch Series

Configuring VXLAN EVPN Multi-Site

Disclaimer This presentation may contain product features that are currently under development. This overview of new technology represents no commitme

Cloud & container monitoring , Lars Michelsen Check_MK Conference #4

Kubernetes - Networking. Konstantinos Tsakalozos

Internet Technology. 15. Things we didn t get to talk about. Paul Krzyzanowski. Rutgers University. Spring Paul Krzyzanowski

Neutron: peeking behind the curtains

Disclaimer This presentation may contain product features that are currently under development. This overview of new technology represents no commitme

Implementing VXLAN. Prerequisites for implementing VXLANs. Information about Implementing VXLAN

ERSPAN in Linux. A short history and review. Presenters: William Tu and Greg Rose

ovn-architecture(7) Open vswitch Manual ovn-architecture(7)

Building NFV Solutions with OpenStack and Cisco ACI

Parallel to NSX Edge Using VXLAN Overlays with Avi Vantage for both North-South and East-West Load Balancing Using Transit-Net

Data Center Virtualization: VirtualWire

Cloud Native Networking

QuickSpecs. HP Z 10GbE Dual Port Module. Models

DELL EMC TECHNICAL SOLUTION BRIEF

Table of Contents HOL-PRT-1305

LISP Locator/ID Separation Protocol

OpenStack and OVN What s New with OVS 2.7 OpenStack Summit -- Boston 2017

VXLAN Cisco and/or its affiliates. All rights reserved. Cisco Public

MX ALS DATACENTER EDGE

Singapore. Service Proxy, Container Networking & K8s. Acknowledgement: Pierre Pfister, Jerome John DiGiglio, Ray

LARGE SCALE IP ROUTING LECTURE BY SEBASTIAN GRAF

Azure Compute. Azure Virtual Machines

Cloud Networking From Theory to Practice. Ivan Pepelnjak NIL Data Communications

Internet Engineering Task Force (IETF) Request for Comments: N. Bitar Nokia R. Shekhar. Juniper. J. Uttaro AT&T W. Henderickx Nokia March 2018

Exploring Alternative Routes Using Multipath TCP

Comparing TCP performance of tunneled and non-tunneled traffic using OpenVPN. Berry Hoekstra Damir Musulin OS3 Supervisor: Jan Just Keijser Nikhef

Demand-Based Control Planes for Switching Fabrics

Cisco ACI Multi-Site Architecture

ECE 435 Network Engineering Lecture 23

Enabling DPDK Accelerated OVS in ODL and Accelerating SFC

Cisco VTS. Enabling the Software Defined Data Center. Jim Triestman CSE Datacenter USSP Cisco Virtual Topology System

Introduction to External Connectivity

Simplify Container Networking With ican. Huawei Cloud Network Lab

Transcription:

Evaluation of virtualization and traffic filtering methods for container networks Łukasz Makowski Cees de Laat Paola Grosso makowski@uva.nl delaat@uva.nl pgrosso@uva.nl

Our goal: Improving on scientific workloads Digital data sharing Supporting multi-organisation collaboration 2

Containers - quick recap Why to use? Lightweight (when comparing to a VM) Makes application more portable Fast startup App Deps Container engine Linux host App Deps Guest OS VM Hypervisor Linux host Container stack VM stack 3

Containers - virtual networks Why do containers need virtual networks? Service may consist of groups of containers Each group can have tens, hundreds of them Imagine containers are spread across different hosts Different networks data-centers cloud providers... It s simply useful to provide a flat network not bound up with the underlay infrastructure 4

Research scope ILA and EVPN: Addressing Solution complexity Usability Cilium: Performance Traffic policies BGP Traffic filtering Distributed KV store ILA VXLAN VXLAN 5

ILA (Identifier-Locator Addressing) Data-plane: does not use any encapsulation Overloads IPv6 address to convey two attributes: Locator (where the destination is) Identifier (which container are we specifically trying to contact) Control-plane: not specified (i.e. Do-It-Yourself) aaaa:0000:0000:0000:2000:0000:0000:0001 WHERE WHAT Container 2000::1 aaaa::/64 Container host 6

ILA (Identifier-Locator Addressing): SIR prefix Mobility requirement: Locator is by definition not mobile. How the container keep its address? Solution: Locator is not exposed to the endpoints (swap it with a virtual prefix: SIR) 7

EVPN (Ethernet-VPN) Data-plane: VXLAN (other options possible!) to encapsulate packets Control-plane: MP-BGP (multiprotocol BGP) Original Ethernet frame http://www.brocade.com/content/html/en/deployment-guide/brocade-vcs-gateway-vmware-dp/guid-5a5f6c 36-E03C-4CA6-9833-1907DD928842.html 8

ILA: test environment Container1 dead:beef::1 SIR prefix: dead:beef::/64 dead:beef::2 Contai -ner2 ILA kernel module aaaa::/64 Container host1 2001:1111::1/64 Routable IPv6 network ILA kernel module bbbb::/64 Container host2 2001:2222::2/64 #egress route dead:beef::0:0:0:2 encap ila bbbb:0:0:0 csum-mode no-action \ via 2001:2222::2/64 #ingress route aaaa:0:0:0 encap ila dead:beef:0:0 csum-mode no-action \ via dead:beef::0:0:1/64 *Examples use simplified Identifier addresses 9

ILA: test environment Ingress ILA route conflicted with kernel generated routes in the local routing table Container needs to fill its NDP table (create NDP proxy or create static entries) After the ILA translation, TCP header checksum is incorrect* In our environment we ended up disabling network device offloading to make the packets through First 4 bits of Identifier are reserved bits (used for scoping) Container1 veth0 veth1 Translate & route dead:beef::1 dead:beef::f eth0 Container host1 aaaa::/64 ILA packet *Could be circumvented with ILA s checksum-neutral adjustment mode

ILA: Results Feasible to be used as a virtual IPv6 container network Quite some caveats in regard to data-plane operations We did not get to the stage to think about developing a proper control-plane. All the setup was half-manual

EVPN: test environment gobgp MP-BGP session MP-BGP session Route server Network plugin Network plugin 192.168.1.1 VXLAN tunnel 192.168.1.2 Container1 Container2 Container host1 11.0.0.1 Routable network Container host2 12.0.0.1 http://murat1985.github.io/kubernetes/cni/2016/05/15/bagpipe-gobgp.html 12

EVPN: Results Feasible as a container network to create virtual L2 networks The main challenge we see is the programmatic integration with container orchestration systems Setup was straightforward: bridging container veth interfaces to VXLAN adapter

Cilium foreword: ebpf (extended Berkeley Packet Filter) Small, limited programs, executed in-the kernel space Can be used to manipulate and filter packets Allow to take shortcuts in the regular linux kernel networking stack http://cilium.readthedocs.io/en/latest/architecture/ 14

Cilium Data-plane: VXLAN (or Geneve) to encapsulate packets Control-plane: distributed KV store (e.g. Consul) Special ingredients: ebpf container orchestrator plugins traffic policies http://cilium.readthedocs.io/en/latest/architecture/ 15

Overlay filtering topology: Docker Swarm + netfilter iperf3 -s iperf3 -c <container1> -t 60 Docker Swarm overlay Container1 Contaiiner2 Physical server1 10Gbps Physical server2 Hit by a vast majority of traffic iptables -t filter -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT iptables -t filter -A FORWARD -m tcp -p tcp --dport 5201 -j ACCEPT iptables -t filter -P FORWARD DROP 16

Overlay filtering topology: Cilium + ebpf iperf3 -s iperf3 -c <container1> -t 60 Cilium overlay Container1 Container2 Physical server1 10Gbps Physical server2 "endpointselector": {"matchlabels":{"id":"service1"}}, "ingress": [{ "fromendpoints": [ {"matchlabels":{"id":"service1"}} ], "toports": [{ "ports": [{"protocol": "tcp", "port" : "5201"}] }] }] 17

Overlay filtering topology: Results Docker Swarm (no filtering) Cilium (no filtering) Docker Swarm + filtering Cilium + filtering Cilium was more performant than Docker Swarm (7.22 Gbps vs 8.22 Gbps) There was no significant difference after the traffic filters has been applied (7.20 Gbps, 8.24 Gbps) Both networks required manual tuning to achieve high speeds (MTU increasing, enabling GRO, GSO, TSO) 18

Overall conclusions ILA offers an alternative to encapsulation based world However, it comes at a price of complicated setup and addressing limitations EVPN is more flexible in regard to addressing and set-up It also has the potential to satisfy more use-cases Cilium with its broad use of ebpf outperforms the classical kernel-based network Single-flow filtering did not have notable performance impact in tested scenarios 19

Demo at SURF booth (#857) PoC ILA implementation with extended Berkley Packet Filter (ebpf) 20

Future work Extend tests on Cilium s performance Implement multi-tenancy scenarios for the test-topologies 21