The script configures the Mininet to simulate a leaf and spine network of switches using hybrid OpenFlow. The script creates the ECMP forwarding rules that the switches would normally learn via BGP/OSPF. Since the switches have fully populated forwarding tables, packet_in events are never sent to the controller.
The script stores the topology as a JSON file that can be imported into an SDN controller. This again corresponds to the reality with ECMP fabrics. The cabling plan is highly structured and known a priori. The automation system doesn’t need to discover the topology, just verify that it is correct. It’s not surprising that OpenDaylight doesn’t work well with this setup, it doesn’t currently support hybrid OpenFlow forwarding and expects to see OpenFlow packet_in events to drive activities like topology discovery. Peter > On Apr 19, 2015, at 12:45 AM, Lavanya M.K <mk.lava...@gmail.com> wrote: > > Hello Peter, > > I am using the leafandspine.py script to set up ECMP on Mininet. The > controller used is OpenDayLight. When i run the script, the topology is > incorrect in OpenDayLight GUI. Some of the links are missing. The flow rules > are installed correctly on the switches, but the topology information gets > messed up in the controller. Any idea why the script would work in such a way? > The switch no longer forwards any packet to the controller for routing. Would > this mean that the controller is unable to get the topology information from > switch? I presumed that the default rule for sending packets to controller is > only for data packet and not control packets. Kindly correct me if i am wrong. > > OpenDayLight version used is Hydrogen. > > Thanks, > Lavanya > > On Wed, Mar 18, 2015 at 4:12 PM, Peter Phaal <peter.ph...@inmon.com > <mailto:peter.ph...@inmon.com>> wrote: > OpenDaylight deletes all the rules when OVS connects. You have to find a way > to prevent OpenDaylight from deleting rules. > > >> On Mar 18, 2015, at 3:41 PM, Lavanya M.K <mk.lava...@gmail.com >> <mailto:mk.lava...@gmail.com>> wrote: >> >> Thanks Peter for the suggestion. >> I tried the script, but what i am noticing is that the flow rules that the >> script adds gets deleted very quickly. I tried adding idle_timeout=0 >> hard_timeout=0 to the flowrules to ensure that it never gets deleted. But >> its not of use. How do i make a permanent flow entry in the flow table? >> >> This is an example of flow rule additions from the leafandspine.py script: >> >> call(['ovs-vsctl', 'set', 'bridge', switch, >> 'protocols=OpenFlow10,OpenFlow13']) >> call(['ovs-ofctl', '-O', 'OpenFlow13', 'add-flow', switch, 'table=0 >> priority=100 idle_timeout=0 hard_timeout=0 actions=goto_table:1 ']) >> >> Thanks, >> Lavanya >> >> >> On Sun, Mar 15, 2015 at 9:17 AM, Peter Phaal <peter.ph...@inmon.com >> <mailto:peter.ph...@inmon.com>> wrote: >> The leafandspine.py script described in the following article provides an >> example that you could modify for your OpenDaylight setup. >> >> http://blog.sflow.com/2014/04/mininet-integrated-hybrid-openflow.htm >> <http://blog.sflow.com/2014/04/mininet-integrated-hybrid-openflow.htm> >> >> You need to find a way to prevent the controller from flushing openflow >> rules on startup for this approach to work. There are efforts to support >> hybrid openflow in OpenDaylight >> >> http://blog.sflow.com/2014/09/hp-proposes-hybrid-openflow-discussion.html >> <http://blog.sflow.com/2014/09/hp-proposes-hybrid-openflow-discussion.html> >> >> Peter Phaal >> InMon Corp. >> >> > On Mar 14, 2015, at 11:42 PM, Lavanya M.K <mk.lava...@gmail.com >> > <mailto:mk.lava...@gmail.com>> wrote: >> > >> > Hi All, >> > >> > I want to have static ECMP configuration in openvswitches used in a fat >> > tree topology DCN(simulated in Mininet). The first packet should not be >> > sent to the controller. Can i do this by ovs commands to install flow >> > rules into group table? >> > The controller version i am using is OpenDayLight Hydrogen, which does not >> > support writing into group table. >> > >> > Thanks, >> > Lavanya >> > _______________________________________________ >> > discuss mailing list >> > discuss@openvswitch.org <mailto:discuss@openvswitch.org> >> > http://openvswitch.org/mailman/listinfo/discuss >> > <http://openvswitch.org/mailman/listinfo/discuss> >> > >
_______________________________________________ discuss mailing list discuss@openvswitch.org http://openvswitch.org/mailman/listinfo/discuss