Ask Your Question

ODL-Lithium-SR2: FLOW_MOD messages

asked 2015-12-03 02:46:43 -0700

citar88 gravatar image

updated 2015-12-03 02:57:41 -0700


I have a Mininet Topology on a VM and the OpedDaylight controller (Lithium-SR2) on another VM. VMs can communicate via a private network (each VM has its private IP address). The Mininet network is connected to the OpedDaylight controller (as a RemoteController) on port 6633. The connection works and hosts can communicate ("ping" works fine).

I'm trying to find out the controller behaviour: my network has only 2 hosts and 5 switches as you can see here: image description

I captured the OpenFlow (1.0) traffic with "tcpdump" tool and I would like to see (in Wireshark) FLOWMOD messages to know which switch is on the path between hosts... but there aren't FLOWMOD messages!

A "ping" command in Mininet generates ARP and ICMP traffic. When a host sends a ARPREPLY with its MAC address, the switch which receives this message has to send a PACKETIN to the controller, which has to respond with a FLOW_MOD message (but there isn't).

Does OpenDaylight support topologies with loops? Does anyone have the same problem?


edit retag flag offensive close merge delete

2 answers

Sort by ยป oldest newest most voted

answered 2015-12-04 01:09:06 -0700

kevin5476 gravatar image

Try to upgrade Wireshark to 2.0 version and use filter "openflow_v4" expression

edit flag offensive delete publish link more


Hi Kevin, I had Wireshark 1.12.8 and I was able to see OpenFlow1.0 packets ("openflow_v1" filter) while the "openflow_v4" filter is for OpenFlow1.3, but my switches send messages to the controller using OpenFlow 1.0. However I have installed Wireshark 2.0 and I have the same situation:

citar88 ( 2015-12-04 07:33:48 -0700 )edit

OpenFlow1.3 packets ("openflow_v4") are initial HELLO from the controller; switches reply with OpenFlow1.0 messages and from this moment all the OpenFlow conversation is in OpenFlow1.0.

citar88 ( 2015-12-04 07:36:22 -0700 )edit

answered 2015-12-21 01:10:09 -0700

citar88 gravatar image

I found the problem: ODL works in Proactive mode as default, so I wasn't able to see Flow_Mod messages with attached MAC addresses after ARP traffic. I set ODL in Reactive mode modifying some configuration files which are located in the [ODL-folder]/etc/opendaylight/karaf/ directory of the Controller folder:

  • 54-arphandler.xml: by default, the property <is-proactive-flood-mode> is setted to true, so ODL works in Proactive mode. If you want Hybrid mode set that property to false and <is-hybrid-mode> to true. If both properties are setted to false ODL works in Reactive mode.
  • 58-l2switchmain.xml: set the property <is-install-dropall-flow> to false. In this way switches send packets that don't have a match (in the switch flow table) to the controller without dropping.

Now I can see Flow_Mod messages with attached MAC addresses and check which switch is choosen by ODL to build the path between hosts.

edit flag offensive delete publish link more
Login/Signup to Answer


Asked: 2015-12-03 02:46:43 -0700

Seen: 132 times

Last updated: Dec 21 '15