On Apr 21, 2014, at 3:50 PM, Murphy McCauley <murphy.mccau...@gmail.com> wrote:
> A more straightforward approach is to actually have the controller machine 
> exist on the data network.  This is always the case when doing "in-band 
> control".  If your switches are, for example, Open vSwitch, the most 
> straightforward way is using the "local" interface of the OVS instance.  This 
> interface is usually down by default, but you can up it.  This connects the 
> switch machine's local networking stack (which can obviously reach the 
> controller because this is how the switch reaches the controller!) to the 
> data network.  Obviously, you'll need to install appropriate table entries to 
> allow communication between the controller machine (via the local port) and 
> the host (via whatever port it's connected to).

or you can just add a second interface to your controller, placing it on the 
data-plane. :-)  this keeps the simplicity and isolation of out-of-band 
networking, while giving our controller and hosts easy communication.

I usually do this by creating a "controller host" in Mininet where I run my 
controller (in your case, it would be POX). however, I don't put that host in a 
separate namespace, which means that its loopback interface is in the same 
namespace as all the switches (and gets used as the "control-plane" in 
mininet). the regular eth-pair device gets attached to the switch 
("data-plane"). see, for example: 
https://github.com/brownsys/pane-demo-vm/blob/master/demos/PaneDemo.py#L56

in the physical testbed, we just use two NIC cards.


Andrew

Reply via email to