SDN starter kit based on Ryu controller platform

June 26, 2014 by releases 4 Comments

We are releasing a SDN starter kit software package to promote SDN trial and adoption in smaller proof-of-concept deployments. The applications are built over the Ryu controller platform. The current code base offers simple implementations of the applications / modules like topology visualization, monitoring tap management, server load-balancing. More features will be coming in soon. For support and other questions, visit the SDN starter kit forum.

If you are interested in a trial of a full solution suite that is production ready and based on the modular OpenDaylight platform, please Sign-up.

Installation and Running

  • Download VM based on 64-bit Ubuntu 14.04 VM with pre-installed software that will autostart the controller and its web GUI. Login name and password for the VM is “ubuntu”
  • Alternatively, you can setup from scratch using these commands:
    $ git clone https://github.com/osrg/ryu
    $ cd ryu/ryu/app
    $ git clone https://bitbucket.org/sdnhub/ryu-starter-kit sdnhub_apps
  • It is recommended to install the following packages if you do not already have it in your Python environment:
    $ sudo apt-get install -y libxslt1-dev msgpack-python python-setuptools python-nose python-pip python-dev
    $ sudo pip install ipaddr networkx bitarray netaddr oslo.config routes webob paramiko mock eventlet xml_compare pyflakes pylint pep8
  • You can now run the controller and the applications as follows:
    $ cd ~/ryu
    $ ./ryu/app/sdnhub_apps/run_sdnhub_apps.sh
  • Next you can point your switch (physical or virtual) to this SDN controller and all the apps will start working.

Web-based GUI

This kit has a Javascript-driven GUI. You can access it by visiting http://ip-address-of-controller:8080/. Here are some screen shots of the configuration pages.

starter_kit_topology

starter_kit_stats

starter_kit_tapstarter_kit_loadbalancer

4 comments on “SDN starter kit based on Ryu controller platform

  1. on July 17, 2014
    kiran vemuri says:

    Hello Srini, I just started trying out your controller. there seems to be some issue with the topology display. The complete graph doesnt fit into the display and I tried to move the nodes around but couldn’t do it. Just reporting it.

    Thanks

  2. on July 18, 2014
    Srini says:

    Hi Kiran, I fixed this issue by resizing the max size of the graphic, and pushed an update. Please git pull and rerun. Thanks!

  3. on September 11, 2014
    Kiran Kumar says:

    Hi,
    I’m a newbie to RYU controller and SDN.
    We are working on a master project to develop the application on RYU controller to perform a best path routing in OVS based network using mininet.
    I used the VM image you provided in the website.
    Whie starting the RYU controller as mentioned about I’m getting the following errors. Can you please help me to fix the problem ?
    hub: uncaught exception: Traceback (most recent call last):
    File “/usr/local/lib/python2.7/dist-packages/ryu/lib/hub.py”, line 52, in _lau nch
    func(*args, **kwargs)
    File “/usr/local/lib/python2.7/dist-packages/ryu/controller/controller.py”, li ne 70, in __call__
    self.server_loop()
    File “/usr/local/lib/python2.7/dist-packages/ryu/controller/controller.py”, li ne 93, in server_loop
    datapath_connection_factory)
    File “/usr/local/lib/python2.7/dist-packages/ryu/lib/hub.py”, line 108, in __i nit__
    self.server = eventlet.listen(listen_info)
    File “/usr/lib/python2.7/dist-packages/eventlet/convenience.py”, line 38, in l isten
    sock.bind(addr)
    File “/usr/lib/python2.7/socket.py”, line 224, in meth
    return getattr(self._sock,name)(*args)
    error: [Errno 98] Address already in use
    Thanks & Regards
    Kiran Rokkam

  4. on December 8, 2015
    Shuai Zhao says:

    Hi Srini, I have pulled the update. I am able to see the topology. But it looks like whatever topology I deployed using mininet, I got a full mesh connection from all the OVSs. Is it a mininet issue?

    Best,
    Jack

Leave a Reply