Using the OpenDaylight BGP Speaker

Post on 03-Jan-2017

223 views 0 download

Transcript of Using the OpenDaylight BGP Speaker

Using the OpenDaylight BGP Speaker Giles Heron, Cisco

•  Overview  

•  BGP-­‐LS/PCE-­‐P  

•  IPv4  and  IPv6    

•  Adver8sing  BGP  routes  

•  Flowspec  

•  BMP  

Agenda

Overview

BGP/PCEP  Overview

OSPF  

OSPF  

BGP  

Core  

Edge  

Route  Reflector  

Core  

Edge  

Route  Reflector  

Edge  Edge  

BGP  

Link-­‐State,  IPv4,  IPv6  and  Flowspec  routes  

MPLS  LSPs  via  PCEP  

Edge  

BGP  

PCE-­‐P  

OSPF  

OSPF  

PCE-­‐P  

OSPF  

BGP  

OSPF  

BGP  

OSPF  

OSPF  

OSPF  

BGP  

App  

PCE-­‐P  

RESTCONF  

BGP  

Topology  

•  LinkState  Routes:  intra-­‐domain  routes  •  From  ISIS  or  OSPF  and  adver8sed  via  BGP-­‐LS  •  Used  to  create  linkstate  topology  

•  IPv4/IPv6  Routes:  routes  across  domains  •  “Internet  routes”  •  Can  both  learn  routes  and  adver8se  them  

•  FlowSpec  Routes:  packet  filters  •  Like  OpenFlow  rules  but  can  leverage  BGP  RR  infrastructure  •  Ac8ons  encoded  as  BGP  communi8es  

Routes

Routes  –  the  BGP  RIB  (or  RIBs!)

•  LinkState  

•  IPv4  

•  IPv6  

•  PCE-­‐P  

Topologies

BGP  

RR   BGP   BGP  

OSPF  

OSPF  

OSPF  OSPF  

OSPF  

OSPF  

BGP-­‐LS  

1.  Modify  41-­‐bgp-­‐example.xml  

2.  Use  RESTCONF  •  hUp://localhost:8181/restconf/config/network-­‐topology:network-­‐topology/

topology/topology-­‐netconf/node/controller-­‐config/yang-­‐ext:mount/config:modules  

Steps:  1.  (op8onally)  modify  port  to  listen  on  (if  179  then  need  to  run  as  root!)  2.  Configure  RIB  3.  Configure  Peers  

Configuring  BGP

Network:  OSPF  or  IS-­‐IS  (IGP)  Routes:  distributed  from  IGP  into  BGP-­‐LS  RIB:  Learned  from  BGP-­‐LS  speaker  Topology:  Lists  of  nodes  (routers)  and  links  

   

 RESTCONF  URL:  

 http://localhost:8181/        restconf/operational/        network-­‐topology:network-­‐topology/topology/        example-­‐linkstate-­‐topology  

BGP-­‐LS  Topology

OSPF  

OSPF  

OSPF  OSPF  

OSPF  

OSPF  

BGP-­‐LS  

App  

BGP-­‐LS  

Topo  Bldr  

RESTCONF  

•  List  of  all  PCCs  (Path  Computa8on  Clients)  

•  For  each  PCC,  list  of  LSPs  for  which  it  is  the  head-­‐end  device.  

•  Topology:  Created  by  PCE-­‐P  plugin  

 RESTCONF  URL:  

 http://localhost:8181/      restconf/operational/      network-­‐topology:network-­‐topology/      topology/pcep-­‐topology  

PCE-­‐P  Topology

MPLS  

MPLS  

MPLS  MPLS  

MPLS  

MPLS  

BGP-­‐LS  

PCE-­‐P  

PCE-­‐P  

PCE-­‐P  

App  

PCE-­‐P  

RESTCONF  

Node    LSPs              x      ..,..,..              y      ..,..,..              z      ..,..,..  

LSPs  

•  PCE  creates  MPLS-­‐TE  Label  Switched  Paths  on  PCC  

•  Can  modify  LSP  a`er  setup  or  delete  LSP  

PCE-­‐P  LSPs  (dynamic)

RESTCONF  URL:    http://localhost:8181/  

 restconf/operations/    network-­‐topology:network-­‐topology/    topology/pcep-­‐topology:add-­‐lsp        (update-­‐lsp  /  remove-­‐lsp)  

MPLS  

MPLS  

MPLS  MPLS  

MPLS  

MPLS  

BGP-­‐LS  

PCE-­‐P  

PCE-­‐P  

PCE-­‐P  

App  

PCE-­‐P  

RESTCONF  

Node    LSPs              x      ..,..,..              y      ..,..,..              z      ..,..,..  

LSPs  

•  PCC  delegates  locally  configured  MPLS-­‐TE  LSP  to  PCE  for  path  selec8on:  

 

•  Use  update-­‐lsp  RPC  to  set  path  

PCE-­‐P  LSPs  (delegated)

interface  tunnel-­‐te1    ipv4  unnumbered  Loopback0    signalled-­‐name  foo  !    destination  192.168.100.4    path-­‐option  1  dynamic  pce    pce      delegation  

MPLS  

MPLS  

MPLS  MPLS  

MPLS  

MPLS  

BGP-­‐LS  

PCE-­‐P  

PCE-­‐P  

PCE-­‐P  

App  

PCE-­‐P  

RESTCONF  

Node    LSPs              x      ..,..,..              y      ..,..,..              z      ..,..,..  

LSPs  

Demo BGP-LS/PCE-P

Network:  BGP  sessions  between  ASes  Routes:  IPv4  unicast  BGP  routes  RIB:  Learned  from  Route  Reflector  Topology:  List  of  BGP  next-­‐hops  

   (and  prefixes  per  next-­‐hop)    RESTCONF  URL:  

 http://localhost:8181/        restconf/operational/        network-­‐topology:network-­‐topology/topology/        example-­‐ipv4-­‐topology  

IPv4  (BGP)  Topology

BGP  

RR   BGP   BGP  

App  

BGP  

Topo  Bldr  

RESTCONF  

•  IPv4/IPv6  Routes:  inter-­‐domain  routes  

•  FlowSpec  Routes:  packet  filters  

•  APP  RIB  is  config  (main  RIB  is  opera8onal)  •  APP  RIB  is  an  iBGP  peer  of  the  main  RIB  •  So  need  eBGP  to  real  peers  (for  now!)  

AdverJsing  BGP  Routes  (ApplicaJon  RIB)

OSPF  

OSPF  

OSPF  OSPF  

OSPF  

BGP  

OSPF  BGP  OSPF  

App  

BGP  

RESTCONF  

App  RIB  BGP  RIB  

Demo Advertising IPv4 Routes

RFC5575  -­‐  Similar  to  OpenFlow  but  uses  BGP  to  distribute  match/ac8on  rules  

SeKng  “Flows”  (FlowSpec)

Matches:  •  Source  /  Des8na8on  IP  prefix  •  IP  Protocol  •  Source  /  Des8na8on  TCP/UDP  port  •  ICMP  Type  /  Code  •  TCP  Flags  •  Packet  Length  •  DSCP  Field  •  Fragment  (DF,  IsF,  FF,  LF)  

AcJons:  •  Rate  limit  •  Traffic  sampling  •  Redirec8on  •  Traffic  marking  (DSCP)  •  And  more...  (op8onal)  

•  dra`-­‐ied-­‐grow-­‐bmp-­‐11  

•  Enables  access  to  peer’s  adj-­‐rib-­‐in  and  effec8ve-­‐rib-­‐in  •  Means  you  get  a  shedload  of  prefixes!  

BMP  (BGP  Monitoring  Protocol)

BGP  

RR   BGP   BGP  

App  

BMP  

RESTCONF  

BMP  

Demo BMP

Thank you

20