Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Getting Started

This tutorial is an introduction to how SDN-IP runs in practice. We'll go through starting up a simple emulated network, and we'll see how SDN-IP controls this network to move data from place to place.

...

Hopefully you've already gone through them, so you already have the ONOS tutorial VM available. If not, check out the Setup your environment <LINK> section of the ONOS tutorial to get the VM ready.

Starting the tutorial

When you start the VM, you'll be presented with a login screen. (If you're already logged into another tutorial, please log out by clicking the bottom-left icon, clicking "Logout", then click "Logout" again).

...

You'll be deposited on a desktop with a bunch of icons that will be used for the tutorial. Before we get started, double-click on the "Reset" icon. This will pop up a terminal and reset ONOS to make sure there is no state left over from any other tutorials.

The network topology

We've prepared a simple emulated Mininet topology, which contains some OpenFlow switches to make up the SDN network. Connected around the edges of the SDN network are emulated routers. The routers run a piece of software called Quagga, which is an open-source routing suite. Note that it is not mandatory to use Quagga: any software/hardware capable of speaking BGP will do. In our case we run the BGP part of Quagga on them, to simulate external BGP routers belonging to other administrative domains. The goal of SDN-IP is to be able to talk BGP with these routers in order to exchange traffic between the different external ASs.

...

  • The node labelled "bgp" is our internal BGP Speaker. It sits inside our SDN network and its job is to peer with all the External BGP Routers, learn BGP routes from them, and relay those routes to the SDN-IP application running on ONOS.
  • The other four nodes, labelled r1 through r4, are the External BGP Routers. They are the border routers that reside in other networks that want to exchange traffic with us.
  • Behind each router is a host. These are labelled h1 through h4 in Mininet. ONOS can't see these hosts, because they reside in other networks that are not controlled by ONOS. 

Start up the network

Double-click the "SDN-IP Mininet" icon on the desktop to start up the network. 

...

Code Block
onos> devices
id=of:00000000000000a1, available=true, role=MASTER, type=SWITCH, mfr=Nicira, Inc., hw=Open vSwitch, sw=2.3.0, serial=None, protocol=OF_10
id=of:00000000000000a2, available=true, role=MASTER, type=SWITCH, mfr=Nicira, Inc., hw=Open vSwitch, sw=2.3.0, serial=None, protocol=OF_10
id=of:00000000000000a3, available=true, role=MASTER, type=SWITCH, mfr=Nicira, Inc., hw=Open vSwitch, sw=2.3.0, serial=None, protocol=OF_10
id=of:00000000000000a4, available=true, role=MASTER, type=SWITCH, mfr=Nicira, Inc., hw=Open vSwitch, sw=2.3.0, serial=None, protocol=OF_10
id=of:00000000000000a5, available=true, role=MASTER, type=SWITCH, mfr=Nicira, Inc., hw=Open vSwitch, sw=2.3.0, serial=None, protocol=OF_10
id=of:00000000000000a6, available=true, role=MASTER, type=SWITCH, mfr=Nicira, Inc., hw=Open vSwitch, sw=2.3.0, serial=None, protocol=OF_10

Running SDN-IP for the first time

If you try and ping between any two hosts right now, you'll notice nothing is working.

...

Code Block
onos> summary
node=127.0.0.1, version=1.0.0.SNAPSHOT
nodes=1, devices=6, links=14, hosts=5, clusters=1, paths=46, flows=0, intents=0

Install the application

First we need to install some helper applications that SDN-IP relies on. These features let ONOS read in various configuration files and respond to ARP requests on behalf of the hosts.

...

You can try pinging between some of the other hosts such as h1, h2 and h3. We can't ping h4 yet, but we'll address that in the next section.

Advertising a new route

Now that we've got the system up and running, let's see what happens when there's a change in the BGP routes. We're going to make one of the external routers advertise a new route, which will allow us to talk to a new host. Right now r4 is not advertising any routes, so we can't talk to h4. Let's verify this by trying to ping h4.

...

Great! Now we can ping to h4 which is in the network we just received through BGP. This shows that whenever the routes learned through BGP are updated, SDN-IP reacts to the updates and programs the data plane accordingly. 

Exploring further

Thanks for completing the SDN-IP tutorial! Now that you've had a glimpse of how SDN-IP works, feel free to poke around and explore the system further. If you're looking to run SDN-IP in your own network, head over to the user guide <LINK> to learn more about configuring and deploying the application.

...