Prescriptive Topology Daemon Dinesh G Dutt, Pradosh Mohapatra - - PowerPoint PPT Presentation

prescriptive topology daemon
SMART_READER_LITE
LIVE PREVIEW

Prescriptive Topology Daemon Dinesh G Dutt, Pradosh Mohapatra - - PowerPoint PPT Presentation

Prescriptive Topology Daemon Dinesh G Dutt, Pradosh Mohapatra Cumulus Networks Problem statement Data centers follow regular topologies Modular design that is repeated as the network grows Clusters or pods interconnected by another


slide-1
SLIDE 1

Prescriptive Topology Daemon

Dinesh G Dutt, Pradosh Mohapatra Cumulus Networks

slide-2
SLIDE 2

Problem statement

§ Data centers follow regular topologies § Modular design that is repeated as the network grows

§ Clusters or pods interconnected by another

layer

§ Cable management can be a nightmare as the network grows § Verification of physical connections on link-up is a significant operational simplification

§ Some operators do a build time check

2

slide-3
SLIDE 3

Prescriptive Topology Manager

§ Verify connectivity is as per operator specified cabling plan § Take defined actions on topology check dynamically

§ For example, routing adjacency is brought

up only if physical connectivity check passes

§ Example:

§ T1, port1 is connected to M1, port1 § T1, port2 is connected to M2, port1 § … § M1, port 3 is connected to S1, port1 § M1, port 4 is connected to S2, port1

§ …

3 S2 M2 M1 T2 T1

M4

M3 T4 T3 S1

slide-4
SLIDE 4

In a nutshell

§ Network topology specified via DOT language

§ Well understood graph modeling

language

§ Wide range of supported tools § Open source

§ Network topology is pushed out to all nodes § Each node determines its relevant information § Use LLDP to verify connectivity

4

slide-5
SLIDE 5

Picture

5 S2 M2 M1 T2 T1

M4

M3 T4 T3 S1 topology.dot ... Configuration Management Tool (e.g. Chef)

  • 1. +++ /etc/ptm.d/topology.dot
  • 2. service ptmd reconfig
slide-6
SLIDE 6

Implementation

§ Written and tested on Linux (wheezy release of debian) § ptmd is the prescriptive topology module daemon

§ Communicates with LLDPD daemon (based on https://github.com/vincentbernat/lldpd) § Daemon executes a set of scripts on topology pass and topology fail

§ /etc/ptm.d/if-topo-pass, /etc/ptm.d/if-topo-fail § Example: add/del interfaces from routing protocol – works with suites such as bird, quagga, mstpd

§ Quagga (ver 0.99.21) modified to receive notifications from ptmd for faster, simpler integration

§ Can be added to any protocol suite

§ ptmd is about 1500 lines of commented C code

6

slide-7
SLIDE 7

Core implementation details

7

port_t + admin_nbr + oper_nbr + oper_state

LLDPD

topology.dot

port_table

port_t + admin_nbr + oper_nbr + oper_state

Clients Clients Clients

slide-8
SLIDE 8

ptmctl

8

slide-9
SLIDE 9

ptmviz – topology visualization

9

dot -Tps prescribed.dot -o prescribed.ps dot -Tps physical.dot -o physical.ps Generate the DOT file corresponding to the observed physical network topology.

slide-10
SLIDE 10

ptmviz – topology visualization

10

dot -Tps prescribed.dot -o prescribed.ps dot -Tps physical.dot -o physical.ps Generate the DOT file corresponding to the observed physical network topology.

slide-11
SLIDE 11

Quagga integration

11

  • New command to enable PTM oper-state based routing protocol bring-up
  • Quagga acts as a PTM client listens to oper-state notifications