I am not running other components. As you suggested I once again monitored the control traffic by using wireshark to make sure there is no other component causing the problem.
I made a simple modification in the of_mod being sent once the sw is connected. Instead of action_output(port=of.OFPP_CONTROLLER)) I changed it to action_output(port=3)) to see if the rule for controller port is causing the problem and it turned out that Yes it is. When the rule is set for port=of.OFPP_CONTROLLER the ARP packet is both forwarded to controller and broadcasted in respective order (checked the order by wireshark) But when the rule is set for port=any_sw_data_port everything works as expected and packet is not broadcasted. thanks. -- Mehmet Fatih Aktas On Tue, May 28, 2013 at 5:05 PM, Murphy McCauley <murphy.mccau...@gmail.com>wrote: > Your code appears to work as you intended here (Mininet with OVS built > from the repo somewhere around 1.9.0). > > Are you running other components? For example, if you're running > l2_learning, it will see the packet-in event, assume it was due to a table > miss, and then instruct the switch to resend it. > > It may help to monitor the control traffic. You can easily dump it with > the openflow.debug component and then load it into Wireshark to view with > the OpenFlow dissector. > > -- Murphy > > On May 28, 2013, at 1:30 PM, mehmet fatih Aktaş wrote: > > > Hi, > > > > I programmed the OF controller to send a of_mod message: > > m = of.ofp_flow_mod() > > m.priority = 0x7000 # Pretty high > > m.match.dl_type = ethernet.ARP_TYPE > > m.match.dl_dst = EthAddr("FF:FF:FF:FF:FF:FF") > > m.idle_timeout = 100 > > m.hard_timeout = 0 > > m.actions.append(of.ofp_ > > action_output(port=of.OFPP_CONTROLLER)) > > event.connection.send(m) > > > > once it is connected to a switch. The goal of this is to enforce all the > ARP requested incoming to a connected sw to be directly forwarded to the > controller WITHOUT broadcasting the ARP in any case. > > And when I got the reply for flow_stats for a random sw, it is showing > that of_mod is actually set correctly e.g. > > > > FlowStats rxed from sw_00-00-00-00-00-01 : [{'packet_count': 0, > 'hard_timeout': 0, 'byte_count': 0, 'duration_sec': 0, 'actions': > [{'max_len': 65535, 'type': 'OFPAT_OUTPUT', 'port': 'OFPP_CONTROLLER'}], > 'duration_nsec': 44000000, 'priority': 28672, 'idle_timeout': 100, > 'cookie': 0, 'table_id': 0, 'match': {'dl_type': 'ARP', 'dl_dst': > 'ff:ff:ff:ff:ff:ff', 'get_nw_dst': 'None', 'get_nw_src': 'None'}}] > > > > However, sws continue broadcasting arp reqs even though they forward > them also to the controller. What may be the possible problem causing that, > any idea would be greatly appreciated. > > > > Thanks. > > > > Mehmet Fatih Aktas > > _______________________________________________ > > openflow-discuss mailing list > > openflow-discuss@lists.stanford.edu > > https://mailman.stanford.edu/mailman/listinfo/openflow-discuss > >
_______________________________________________ openflow-discuss mailing list openflow-discuss@lists.stanford.edu https://mailman.stanford.edu/mailman/listinfo/openflow-discuss