Virtual Network over TRILL

Design, implementation and demonstration

William Dauchy - Gandi.net

Kernel Recipes 2013

Conventional data center

Main goal

  • provide large scale multi-tenancy

Large scale multi-tenancy

Multiples users using same resources

requirements

  • Seamless VM mobility
  • Easy management
  • Layer 2 core scaling
  • Fault resiliance
  • VLAN scalability

Layer 2 - switching benefits

  • Management simplified + Plug & play
  • Seamless Virtual Machine mobility
  • Auto learning + determistic failover

Layer 2 - switching limitation

  • A large number of tenants implies
    • a huge number of MAC address in switch table (TCAM overflow)
    • ARP storm at nodes
  • STP to ensure a loop free topology
    • blocking redundant paths
    • Core-computes required, recomputes when topology changes
  • Number of VLANs is limited to 4096

TRILL based data center

What is TRILL

  • New device: RBridge
    • Control plane
    • Data plane
  • Encapsulate native frames in a transport header
  • Providing a hop count and nickname
  • Route the encapsulated frames using IS-IS
  • Decapsulate native frames before delivery

IETF standard

  • RFC 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

Design and implementation

Control plane

unicast building

Control plane

unicast building - first iteration

Control plane

unicast building - second iteration

Control plane

unicast building - third iteration

Control plane

unicast building - final result

Control plane

Control plane

multicast building - first iteration

Control plane

multicast building - final iteration

Data plane

Data plane

Data plane

Data plane

Data plane

Implementation - Sending

Implementation - Receiving

Layer 2 - switching limitation

  • A large number of tenants implies
    • a huge number of MAC address in switch table
    • ARP storm at nodes
  • STP to ensure a loop free topology
    • blocking redundant paths
    • Core-computes required, recomputes when topology changes
  • Number of VLANs is limited to 4096

TRILL + VNI = VNT

Virtual Network over TRILL

VNT frame format

VNI life

VNI topology building

VNI topology building

VNI topology building

Implementation with VNI - sending

Implementation with VNI - receiving

Linux big picture

Demonstration

screencast

screencast

(live explanation to understand what's going on)

Ph.D. Study

Ahmed Amamou - ahmed@gandi.net

"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

gandi.net


Gandi Hosting - gandi.net/hosting

William Dauchy - william@gandi.net

slides pres.gandi.net/kr2013