Building Network Automation Solutions
6 week online course starting in September 2017

BGP-LS Deep Dive

After explaining why you’d want to use BGP-LS and PCEP in your network, Julian Lucek did a quick deep dive into the intricacies of BGP-LS, including printouts relating BGP-LS updates to IS-IS topology database.

This part of the PCEP/BGP-LS webinar is already public, to watch the rest of it fill in a short form on the webinar description page.


  1. I love link-state protcols. I love BGP. But somebody please explain to me why we have to carry LS-information inside BGP ?

    I like simple. I like section 2.12 if rfc1925. A few months ago Ivan made a post about "lego blocks". How technology should not all be inter-woven. It should be made separate independent blocks, which can be combined freely by the user.

    BGP-LS is the opposite. It makes things more complex. Link-state protocols, and also BGP, are not simple concepts. (Try explain a linkstate protocol to your mother). Building good implementations is even harder. Simplicity helps. Complexity makes everything harder.

    The easy and simple solution would have been to just throw all the info into a TCP-connection between a router and the controller. Done. The functionality will look very similar to BGP-LS. But simpler. Can be done independent of BGP. No need to mess with new attributes, etc. Why not take the simple route ?

    Look at BGP Monitoring Protocol. Very similar. You dump a bunch of routing information to a controller. That could have been done over BGP. But the BGP-guys themselves decided that that was overly complex. So they made BMP. Just open a TCP connection, uni-directional, and dump the routing information in a simple format. No need to mess up BGP even more.

    So why ?
    Why can't you just dump the LSDB over a TCP connection ?
    Why do it over BGP ?
    Is there any real benefit ?
    Why ?

  2. BGP-LS isn't really that complicated. BMP in mirror mode is very simple on the router end, but the monitoring mode still packs normal BGP updates into a BMP header. The receiver end still has to process and figure out what to do with the data, BGP-LS is no different. Sure you have the BGP state machine and other things to deal with but the reality is BGP-LS is fairly widely implemented already.

    A better and more modern solution is just have a RESTCONF based subscription to the router and get topology data (and lots of other things) through that. There is a specific draft on accessing YANG-based data via an async subscription, making it very flexible. OpenDaylight for instance allows you to do this today, you subscribe to a specific asynchronous topology stream to get topology and updates. However the first BGP-LS draft was a long long time ago at this point.


You don't have to log in to post a comment, but please do provide your real name/URL. Anonymous comments might get deleted.