GlobalNOC / FlowSpaceFirewall

FlowSpace Firewall Application a floodlight based controller allowing multiple controllers to talk to a single switch, but can not interact with each others flow space (hence FlowSpace Firewall)
http://globalnoc.iu.edu/sdn/fsfw.html
Apache License 2.0
14 stars 14 forks source link

Adding a new port to a connected switch has issues with slices in managed tag mode #119

Closed gth828r closed 9 years ago

gth828r commented 9 years ago

I accidentally discovered this problem when I was running some test cases that worked without managed tag mode, but then I switched over to managed tag mode. The relevant pieces of my setup procedure were as follows:

If you are curious, you can see the last two steps in the script at https://gist.github.com/gth828r/f92081f20c2b5d2cf1fe

This approach worked just fine when I wasn't using managed tag mode, but when I did use managed tag mode, I consistently hit https://github.com/GlobalNOC/FlowSpaceFirewall/blob/master/src/main/java/edu/iu/grnoc/flowspace_firewall/VLANSlicer.java#L267 because the portId was being reported as zero.

I specifically saw this when my controller was sending a packet-out to the ALL port for an arp request packet.

Doing a:

sudo service fsfw reload

fixes the issue.

gth828r commented 9 years ago

This situation is probably rare in practice, but I can see it happening depending on how different vendors implement OF differently. For example, some of our HP switches have only reported a port when it had link. If that is the case, then if a port lost link while it was part of a slice with managed tag mode enabled, then when the port came back up, it might cause an issue.

ajragusa commented 9 years ago

Ok we will try and get this in 1.0.5

ajragusa commented 9 years ago

Ok, pull request #128 should solve this case