Tuesday, July 2, 2013

SDN plugin for the BIRD software router

A BGP router for SDN and OpenFlow

I've been playing with the BIRD software router for a couple of weeks to make it pipe out routes that I can play with. The reason for this is so that we can leverage the years of development time spent on the BGP side of things, and then simply translate the routes into flows to make a BGP router. There are already projects using RouteFlow for this, but we can simplify things a lot further - RouteFlow relies on VMs that run Quagga instances, and I feel it would be much better if the software router just talked directly to the OpenFlow controller.

What does it look like?

Every time a route update comes through to BIRD, BIRD pipes it out to a file. We can then get SDN controllers to follow this file and pull out the routes in JSON format and process as they wish to.

What's next?

Make an OpenFlow controller that polls the file and pushes out flows to your OF switch(es). This stuff isn't rocket science - just download and install and see it work for yourself!

https://github.com/samrussell/bird/tree/sam

3 comments:

  1. Why not just speak openflow directly? It seems like you've done almost all the work to make that happen.

    ReplyDelete
    Replies
    1. I want this to be as modular as possible. This application solves the problem we have of "how can I get a BGP daemon to communicate its route table to other modules?"

      This isn't totally ground-breaking - you can easily turn on MRT dumps in Quagga and accomplish the same thing, but the difference is that the same code that I've added to BIRD to print out JSON to a log can easily be modified to listen on a socket and communicate a bit smarter with an SDN controller.

      My next project is to build a stripped-back OpenFlow controller that takes JSON dumps and turns them into flows, but who knows - maybe SDN in a year or two will use a totally different protocol - and this router mod will still be totally relevant as JSON is universal.

      Delete
  2. Who's really gonna know when you walk right into a casino in another country|abroad|overseas} and have a bit of a play? As lengthy as you are not well-known and recognizable you should be|you must be|you should be} fantastic. “In 2018, we'll focus our efforts on operating Jeju Shinhwa World to deliver on our promise to make Jeju Shinhwa World right into a tourism destination beneath the spotlight on Jeju Island that the residents will be pleased with,” Zhihui added. Besides Japan and Vietnam, there are billion-dollar developments underway in Brisbane and Sydney, Australia, nicely as|in addition to} the NagaWorld casino resort growth in Phnom Penh, Cambodia, and resort development near Seoul, Korea, Green stated. “We would count on casinos in Osaka Japan can be one of many higher growth potential given the 바카라사이트 culture, population and the accessibility from other north Asian countries,” stated Kok Tin Gan, a associate in PwC’s Cyber Security & Privacy practice.

    ReplyDelete