Course: SDN: principles, protocols, implementations, v1.0

Duration: 4 days

Course description:

SDN Introduction


Possibile implementations:

Underlay vs. overlay approach

Software vs. hardware

Opensource vs. commercial

Openflow in SDN: controllers: northbound/southbound protocols

Datacenters and SDN

Connectivity switch – hypervisor/server requirements

L2 domains on hypervisors

Connecting L2 domains

Extension from the network

Designs: bridging, xconnect, tunneling – VXLAN/GENEVE…

Extension from the hypervisor

Designs: VXLAN tunneling

CLOS design

Tunnelling issues and approaches

Tunneling and mac learning approaches

Data plane learning

Control plane learning – EVPNs

VTEP address in the case of VPC/MLAG

Tunneling and BUM traffic

Routing between datacenter subnets

Distributed routing requirements – need for anycast router addresses

Asymmetric/symmetric routing issue

Asymmetric approach

Symmetric approach

Routing to the rest of the network

Tenant isolation/connection

Symetric VXLAN EVPN example

Building blocks of various SDN implementations

Southbound: protocols, data models, implementations, tunnelling mechanisms

Openflow and related protocols/imlementations

Openflow protocol

OVSDB protocol



Non openflow usage of openvswitch, labs

Linux veth pair, network namespaces

Using veth pair vs patches

Openflow usage of openvswitch, labs

Default behavior

Example with vlan tagg manipulation

Using remote controller

OVSDB protocol

Overlay tunneling: VXLAN , lab

Mininet introduction, basic lab, custom topologies, using remote controller

Controller: pushing flows to openflow switch, lab

Advanced openflow labs:

Implementing vlans

Implementing routing

Switch created flows

Example of “real” openflow network with ryu based controller


Netconf protocol

Netconf and yang data models

Yang introduction

Yang labs

Yang explorer

Northbound protocols


Introduction, data models, json/xml representation

Postman, introduction and labs

Commercial products overview


Cisco ACI

Non openflow whitebox solutions: Cummulus linux