kernel recipes 2013 - virtual network over trill (vnt) : design, implementation in linux kernel and...

41
VIRTUAL NETWORK OVER TRILL DESIGN, IMPLEMENTATION AND DEMONSTRATION - Gandi.net William Dauchy Kernel Recipes 2013

Upload: anne-nicolas

Post on 24-May-2015

1.189 views

Category:

Technology


4 download

DESCRIPTION

IaaS Providers need next-generation virtualized networks, providing large-scale multi-tenancy services and meeting new requirements in terms of efficiency and availability. The main limitation of current network architectures mainly comes from inadequate design standards. In this presentation, we present a TRILL based multi-tenant network architecture for virtualized data center networks. This architecture allows the best of both layers (bridging and routing), thus building a large-scale layer-2 network while ensuring scalability, efficiency, fault-tolerance and simplified management. This enables also the creation of large numbers of logical networks within a virtualized data center. The kernel part of our solution is currently developped in the Linux kernel.

TRANSCRIPT

Page 1: Kernel Recipes 2013 - Virtual Network over TRILL (VNT) : Design, implementation in Linux kernel and demonstration

VIRTUAL NETWORK OVERTRILL

DESIGN, IMPLEMENTATION AND DEMONSTRATION - Gandi.netWilliam Dauchy

Kernel Recipes 2013

Page 2: Kernel Recipes 2013 - Virtual Network over TRILL (VNT) : Design, implementation in Linux kernel and demonstration

CONVENTIONAL DATA CENTER

Page 3: Kernel Recipes 2013 - Virtual Network over TRILL (VNT) : Design, implementation in Linux kernel and demonstration

MAIN GOALprovide large scale multi-tenancy

Page 4: Kernel Recipes 2013 - Virtual Network over TRILL (VNT) : Design, implementation in Linux kernel and demonstration

LARGE SCALE MULTI-TENANCYMultiples users using same resources

Page 5: Kernel Recipes 2013 - Virtual Network over TRILL (VNT) : Design, implementation in Linux kernel and demonstration

REQUIREMENTSSeamless VM mobilityEasy managementLayer 2 core scalingFault resilianceVLAN scalability

Page 6: Kernel Recipes 2013 - Virtual Network over TRILL (VNT) : Design, implementation in Linux kernel and demonstration

LAYER 2 - SWITCHING BENEFITSManagement simplified + Plug & playSeamless Virtual Machine mobilityAuto learning + determistic failover

Page 7: Kernel Recipes 2013 - Virtual Network over TRILL (VNT) : Design, implementation in Linux kernel and demonstration

LAYER 2 - SWITCHING LIMITATIONA large number of tenants implies

a huge number of MAC address in switch table (TCAMoverflow)ARP storm at nodes

STP to ensure a loop free topologyblocking redundant pathsCore-computes required, recomputes when topologychanges

Number of VLANs is limited to 4096

Page 8: Kernel Recipes 2013 - Virtual Network over TRILL (VNT) : Design, implementation in Linux kernel and demonstration
Page 9: Kernel Recipes 2013 - Virtual Network over TRILL (VNT) : Design, implementation in Linux kernel and demonstration

TRILL BASED DATA CENTER

Page 10: Kernel Recipes 2013 - Virtual Network over TRILL (VNT) : Design, implementation in Linux kernel and demonstration

WHAT IS TRILLNew device: RBridge

Control planeData plane

Encapsulate native frames in a transport headerProviding a hop count and nicknameRoute the encapsulated frames using IS-ISDecapsulate native frames before delivery

Page 11: Kernel Recipes 2013 - Virtual Network over TRILL (VNT) : Design, implementation in Linux kernel and demonstration

IETF STANDARDRFC 5556 Transparent Interconnection of Lots of Links (TRILL): Problem and Applicability Statement

RFC 6325 Routing Bridges (RBridges): Base Protocol Specification

RFC 6326 Transparent Interconnection of Lots of Links (TRILL) Use of IS-IS

RFC 6327 Routing Bridges (RBridges): Adjacency

RFC 6439 Routing Bridges (RBridges): Appointed Forwarders

RFC 6361 PPP Transparent Interconnection of Lots of Links (TRILL) Protocol Control Protocol

Page 12: Kernel Recipes 2013 - Virtual Network over TRILL (VNT) : Design, implementation in Linux kernel and demonstration

DESIGN AND IMPLEMENTATION

Page 13: Kernel Recipes 2013 - Virtual Network over TRILL (VNT) : Design, implementation in Linux kernel and demonstration

CONTROL PLANEunicast building

Page 14: Kernel Recipes 2013 - Virtual Network over TRILL (VNT) : Design, implementation in Linux kernel and demonstration

CONTROL PLANEunicast building - first iteration

Page 15: Kernel Recipes 2013 - Virtual Network over TRILL (VNT) : Design, implementation in Linux kernel and demonstration

CONTROL PLANEunicast building - second iteration

Page 16: Kernel Recipes 2013 - Virtual Network over TRILL (VNT) : Design, implementation in Linux kernel and demonstration

CONTROL PLANEunicast building - third iteration

Page 17: Kernel Recipes 2013 - Virtual Network over TRILL (VNT) : Design, implementation in Linux kernel and demonstration

CONTROL PLANEunicast building - final result

Page 18: Kernel Recipes 2013 - Virtual Network over TRILL (VNT) : Design, implementation in Linux kernel and demonstration

CONTROL PLANE

Page 19: Kernel Recipes 2013 - Virtual Network over TRILL (VNT) : Design, implementation in Linux kernel and demonstration

CONTROL PLANEmulticast building - first iteration

Page 20: Kernel Recipes 2013 - Virtual Network over TRILL (VNT) : Design, implementation in Linux kernel and demonstration

CONTROL PLANEmulticast building - final iteration

Page 21: Kernel Recipes 2013 - Virtual Network over TRILL (VNT) : Design, implementation in Linux kernel and demonstration

DATA PLANE

Page 22: Kernel Recipes 2013 - Virtual Network over TRILL (VNT) : Design, implementation in Linux kernel and demonstration

DATA PLANE

Page 23: Kernel Recipes 2013 - Virtual Network over TRILL (VNT) : Design, implementation in Linux kernel and demonstration

DATA PLANE

Page 24: Kernel Recipes 2013 - Virtual Network over TRILL (VNT) : Design, implementation in Linux kernel and demonstration

DATA PLANE

Page 25: Kernel Recipes 2013 - Virtual Network over TRILL (VNT) : Design, implementation in Linux kernel and demonstration

DATA PLANE

Page 26: Kernel Recipes 2013 - Virtual Network over TRILL (VNT) : Design, implementation in Linux kernel and demonstration

IMPLEMENTATION - SENDING

Page 27: Kernel Recipes 2013 - Virtual Network over TRILL (VNT) : Design, implementation in Linux kernel and demonstration

IMPLEMENTATION - RECEIVING

Page 28: Kernel Recipes 2013 - Virtual Network over TRILL (VNT) : Design, implementation in Linux kernel and demonstration

LAYER 2 - SWITCHING LIMITATIONA large number of tenants implies

a huge number of MAC address in switch tableARP storm at nodes

STP to ensure a loop free topologyblocking redundant pathsCore-computes required, recomputes when topologychanges

Number of VLANs is limited to 4096

Page 29: Kernel Recipes 2013 - Virtual Network over TRILL (VNT) : Design, implementation in Linux kernel and demonstration

TRILL + VNI = VNTVirtual Network over TRILL

Page 30: Kernel Recipes 2013 - Virtual Network over TRILL (VNT) : Design, implementation in Linux kernel and demonstration

VNT FRAME FORMAT

Page 31: Kernel Recipes 2013 - Virtual Network over TRILL (VNT) : Design, implementation in Linux kernel and demonstration

VNI LIFE

Page 32: Kernel Recipes 2013 - Virtual Network over TRILL (VNT) : Design, implementation in Linux kernel and demonstration

VNI TOPOLOGY BUILDING

Page 33: Kernel Recipes 2013 - Virtual Network over TRILL (VNT) : Design, implementation in Linux kernel and demonstration

VNI TOPOLOGY BUILDING

Page 34: Kernel Recipes 2013 - Virtual Network over TRILL (VNT) : Design, implementation in Linux kernel and demonstration

VNI TOPOLOGY BUILDING

Page 35: Kernel Recipes 2013 - Virtual Network over TRILL (VNT) : Design, implementation in Linux kernel and demonstration

IMPLEMENTATION WITH VNI - SENDING

Page 36: Kernel Recipes 2013 - Virtual Network over TRILL (VNT) : Design, implementation in Linux kernel and demonstration

IMPLEMENTATION WITH VNI - RECEIVING

Page 37: Kernel Recipes 2013 - Virtual Network over TRILL (VNT) : Design, implementation in Linux kernel and demonstration

LINUX BIG PICTURE

Page 38: Kernel Recipes 2013 - Virtual Network over TRILL (VNT) : Design, implementation in Linux kernel and demonstration

DEMONSTRATION

Page 39: Kernel Recipes 2013 - Virtual Network over TRILL (VNT) : Design, implementation in Linux kernel and demonstration

SCREENCASTscreencast

(live explanation to understand what's going on)

Page 40: Kernel Recipes 2013 - Virtual Network over TRILL (VNT) : Design, implementation in Linux kernel and demonstration

PH.D. STUDYAhmed Amamou - [email protected]

"Network isolation for Virtualized Datacenters"

University Pierre & Marie Curie - GANDI SAS

project still in development and cleaning

TRILL sources: github.com/Gandi/ktrill

VNT: still two research projects working on it - drafts

Page 41: Kernel Recipes 2013 - Virtual Network over TRILL (VNT) : Design, implementation in Linux kernel and demonstration

GANDI.NETGandi Hosting - gandi.net/hosting

William Dauchy - [email protected]

slides pres.gandi.net/kr2013