[pox-dev] Controller to split traffic by subnet

Alison Chan chan7781 at kettering.edu
Tue May 28 20:07:04 PDT 2013


Oops, wasn't my intention to take this off list. I usually don't remember
to hit Reply All. :)

Alison Chan
(mobile)
On 28 May 2013 23:01, "Murphy McCauley" <murphy.mccauley at gmail.com> wrote:

> On May 28, 2013, at 7:50 AM, Alison Chan wrote:
>
> > Thank you for pointing that out. The flow mods sent later, had the
> > previously set actions in them too.
>
> Right.
>
> > I fixed that by creating a new flow mod object for each one to be
> > sent
>
> Did you fix ALL of them?
>
> BTW, I think it's generally cleaner to create new flow mod objects, but
> the actions are just a sequence.  Meaning it's legal to do something like...
> msg.actions = [of.ofp_output_action(...)]
>
> > and now one subnet works, but the other one doesn't. When I add
> > the commented out line 170, it makes the 10.0.0.0/25 subnet not work
> > again.
>
> Commenting out this line makes this flow only match on the in_port which
> surely isn't what you want.
>
> >
> https://gist.github.com/alis0nc/5639697/3371a3050b2a28e178c5715e1fa357b4578e0acf#file-my_controller-py
>
> So you've got the splitting table and the subnets copied at two places in
> the code.  I'd suggest you refactor a bit (removing one of them), which
> will make this cleaner and also might make the problem apparent...
>
>
> For what it's worth, with a couple minor tweaks, your code works. :)
>
> -- Murphy
>
> (P.S., you dropped the list from the CC, but in general, it's nice to keep
> discussion on the list so that others can benefit)
>
> > On Fri, May 24, 2013 at 5:41 PM, Murphy McCauley
> > <murphy.mccauley at gmail.com> wrote:
> >> Hard to say if this is the problem, but... I think there's something
> funny with your actions.  I think you'd see it if you looked at the action
> lists in the flow_mod messages to s7/s8 using Wireshark.
> >>
> >> -- Murphy
> >>
> >> On May 24, 2013, at 1:23 PM, Alison Chan wrote:
> >>
> >>> https://gist.github.com/alis0nc/5639697#file-my_controller-py
> >>> I've added a match for ARP and made sure of the prerequisite as per
> >>> that other posting. I haven't seen a loop error since. Also, s7 and s8
> >>> don't learn or flood anyway, they're handled in start_switch and the
> >>> l2 learning method is in the 'else' clause.
> >>>
> >>> Pinging to a host on the same 'side' works now, and I've gotten rid of
> >>> all the errors. But one side still can't talk to the other side. Am I
> >>> doing ARM wrong?
> >>>
> >>> On Fri, May 24, 2013 at 1:13 AM, Murphy McCauley
> >>> <murphy.mccauley at gmail.com> wrote:
> >>>> At least one of your problems is the same as was recently discussed
> in this post:
> >>>>
> http://lists.noxrepo.org/pipermail/pox-dev-noxrepo.org/2013-May/000732.html
> >>>>
> >>>> It also looks like your topology has a loop but that sufficient
> measures are not taken to prevent packets from looping.  If your subnet
> splitting was working, this wouldn't be a loop for IP, but still would but
> for non-IP.  This may be why you're getting a BUFFER_UNKNOWN area -- looped
> packets may be exhausting all the buffers.  You need to somehow modify your
> controller to prevent looping. One way might be to change the resend_packet
> to OFPP_ALL to use OFPP_FLOOD instead and then run the
> openflow.spanning_tree component.  You could also just modify it so that S7
> and S8 use single-port output instead of flooding, never use one of the
> alternate paths, and don't do MAC learning.
> >>>>
> >>>> As a sidenote, you might want to take a look at the log module --
> there's no need to tee into a file; the log module can be configured to
> just write a file for you.
> >>>>
> >>>> -- Murphy
> >>>>
> >>>> On May 23, 2013, at 2:55 PM, Alison Chan wrote:
> >>>>
> >>>>> Hello,
> >>>>>
> >>>>> I'm having trouble designing my controller to split traffic by ip
> >>>>> subnet. The relevant controller code, topology setup, and pox log
> file
> >>>>> are in the linked gist:
> >>>>>
> >>>>> https://gist.github.com/alis0nc/5639697
> >>>>>
> >>>>> The topology and port assignnments look right as confirmed by 'net'
> in
> >>>>> mininet. Here is what I'm doing:
> >>>>>
> >>>>> * start mininet by sudo mn --custom ~/mininet/custom/topo-ac.py
> >>>>> --topo=mytopo --controller=remote,ip=127.0.0.1,port=6633 --mac
> >>>>> * set up IP addresses on the nodes as follows:
> >>>>>  * h1: 10.0.0.1
> >>>>>  * h2: 10.0.0.129
> >>>>>  * h3: 10.0.0.2
> >>>>>  * h4: 10.0.0.130
> >>>>> * start PoX by pox/pox.py misc.my_controller 2>&1 | tee -i poxlog.txt
> >>>>> * mininet> h1 ping -c1 h2
> >>>>> * destination host unreachable
> >>>>> * wait about 5 seconds
> >>>>> * the errors start coming and don't stop
> >>>>>
> >>>>> This is really my first OF controller past the tutorial so I
> apologise
> >>>>> if I'm doing something really really stupid... But any assistance
> >>>>> would be appreciated.
> >>>>>
> >>>>> Cheers,
> >>>>> --
> >>>>> Alison Chan
> >>>>> Kettering University (2015): BSCS (Security concentration), BSCE,
> Pre-Law minor
> >>>>> Research Assistant, Department of Computer Science
> >>>>> Secretary, Kettering University Allies, A-Section
> >>>>> +1 909 278 7753
> >>>>> chan7781 at kettering.edu
> >>>>>
> >>>>> ()  ascii ribbon campaign for plain text email
> >>>>> /\  http://www.asciiribbon.org
> >>>>
> >>>
> >>>
> >>>
> >>> --
> >>> Alison Chan
> >>> Kettering University (2015): BSCS (Security concentration), BSCE,
> Pre-Law minor
> >>> Research Assistant, Department of Computer Science
> >>> Secretary, Kettering University Allies, A-Section
> >>> +1 909 278 7753
> >>> chan7781 at kettering.edu
> >>>
> >>> ()  ascii ribbon campaign for plain text email
> >>> /\  http://www.asciiribbon.org
> >>
> >
> >
> >
> > --
> > Alison Chan
> > Kettering University (2015): BSCS (Security concentration), BSCE,
> Pre-Law minor
> > Research Assistant, Department of Computer Science
> > Secretary, Kettering University Allies, A-Section
> > +1 909 278 7753
> > chan7781 at kettering.edu
> >
> > ()  ascii ribbon campaign for plain text email
> > /\  http://www.asciiribbon.org
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.noxrepo.org/pipermail/pox-dev-noxrepo.org/attachments/20130528/4ce47d55/attachment-0002.htm>


More information about the pox-dev mailing list