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 <[email protected]> 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 >> [email protected] >> >> () 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 [email protected] () ascii ribbon campaign for plain text email /\ http://www.asciiribbon.org
