Skip to content
Snippets Groups Projects
  1. Jul 11, 2016
    • rsharo's avatar
      Unit test cleanup and bugfix. · e17f923a
      rsharo authored
      ForwardingTest.testForwardDeleteFlowsByDescriptorMultiple() passed in Eclipse, but failed when run by "ant test".
      Changed Forwarding.deleteFlowsByDescriptor() to use List<> instead of Set<> to simplify the unit test.
      Tests now pass in every configuration I'm able to run them (eclipse single test, eclipse test class, eclipse all tests, ant all tests).
      
      Also general code and comment cleanup.
      e17f923a
  2. Jul 06, 2016
  3. Jul 04, 2016
  4. Jul 01, 2016
  5. Jun 30, 2016
  6. Jun 29, 2016
    • brobertson3's avatar
      Most of the changes for the Firewall to update the flowtables on switches · ce9f6813
      brobertson3 authored
      Updated Firewall.java so that addRule and deleteRule and enableFirewall announce that a rule is being changed in the firewall. Then the IRoutingDecisionChangedListener shall alert Forwarding to update the flowtable accordingly.  None of this is tested and the TopologyManager needs to be fixed.  I might even want to move the change out of TopologyManager altogether since RoutingDecisionChange doesn't concern it.
      ce9f6813
  7. Jun 21, 2016
  8. Jun 20, 2016
  9. May 31, 2016
  10. May 18, 2016
  11. May 10, 2016
    • Randy Sharo's avatar
      Initial design work on flow-deletes triggered by changes in firewall rules. · f6686b38
      Randy Sharo authored
      TODO:
         * RoutingDecisionsChanged event
            * Define Listener class
            * Add Listener registration/messaging (probably going into IRoutingService)
            * Add code to fire event when firewall rules change.
            * Add code to fire event when firewall enable/disable happens.
            * Add code to handle RoutingDecisionsChanged in Forwarding
         * Unit tests
         * Functional tests
      f6686b38
  12. Apr 29, 2016
  13. Apr 28, 2016
    • Ryan Izard's avatar
      Handle link and port down events in Forwarding. Remove flows ingress and... · 13c6e012
      Ryan Izard authored
      Handle link and port down events in Forwarding. Remove flows ingress and egress a failed port or link to eliminate stale entries. This is done in Forwarding instead of the Link Discovery Manager, since some user modules might not want their flows removed and wish for them to persist until the link comes back up.
      13c6e012
  14. Apr 26, 2016
  15. Apr 06, 2016
  16. Jan 21, 2016
  17. Jan 10, 2016
  18. Dec 04, 2015
  19. Oct 12, 2015
  20. Oct 08, 2015
  21. Oct 07, 2015
    • Ryan Izard's avatar
      Added ability to disable ARP flows in Forwarding. Many hardware switches... · 2e5d773a
      Ryan Izard authored
      Added ability to disable ARP flows in Forwarding. Many hardware switches cannot handle ARP flows. ARP flows on by default; turn off/on via 'flood-arp' in floodlightdefault.properties. Also, finished integrating new topology service/routing into Forwarding. This required a few more null checks to handle cases where packet-ins are received while the controller is starting/still discovering the topology/links.
      2e5d773a
  22. Oct 05, 2015
    • Ryan Izard's avatar
      Integrated new topology code and updated unit tests to a passing state. I'd be... · a3447938
      Ryan Izard authored
      Integrated new topology code and updated unit tests to a passing state. I'd be more comfortable adding more unit tests to the topology. Also made some changes to the link discovery manager's latency subsystem. We start with a baseline latency based on the switch's features reply turnaround time. This should be relatively quick -- just like an echo. Next step for latency is to keep a rolling list of past latencies for more defined topology updates based on latency updates. We don't want to update latencies too frequently, since tiny changes (or outliers) shouldn't require a complete topology recomputation.
      a3447938
  23. Aug 20, 2015
    • Ryan Izard's avatar
      A new and improved device manager (woohoo). We support IPv6 now and have fixed... · 90dd1aee
      Ryan Izard authored
      A new and improved device manager (woohoo). We support IPv6 now and have fixed some bugs. Other changes have been made to prefer 'empty/zero' objects instead of null, which made using the device manger less type safe and more error prone. Unit tests for IPv6 packets will come next, so IPv6 support should be considered experimental for this commit (although in theory it should be fine if IPv4 is).
      90dd1aee
  24. Aug 15, 2015
    • Ryan Izard's avatar
      Lots of goodies here. Apologies for the largish commit. Most files are just... · 774b1ff0
      Ryan Izard authored
      Lots of goodies here. Apologies for the largish commit. Most files are just removing warnings that were introduced after updating JSON libraries a short time ago. IOFSwitch now can return specific list of tables supported. This is useful for the OFHandshakeHandler for one, which not inserts table miss flows up to the table ID indicated in floodlightdefault.properties, but only in the table IDs that actually exist. Up next, Forwarding has some preliminary, isolated support for IPv6. Still need to integrate support into the device service, which is more complex. Forwarding also supports routing through OF switches of multiple OFVersions. This was a very subtle bug that was fixed by modifying MatchUtils to create a Match clone to a specific OFVersion. This utility function is used to generate a Match compatible with the OpenFlow version of the switch. Believe it or not, Loxi actually allows you to insert a Match of OFVersion.OF_X into an OFFlowMod of OFVersion.OF_Y. The switch, of course, doesn't have a clue how to interpret it and either reports an error, or actually resets the OF channel, in the case of a couple hardware switches tested on. Good news is this is fixed now :-).
      774b1ff0
  25. May 26, 2015
  26. May 01, 2015
  27. Apr 13, 2015
  28. Apr 03, 2015
  29. Mar 26, 2015
    • Ryan Izard's avatar
      Forwarding's doDropFlow() changed to not base Match on OFPacketIn, which it... · d8a6f21b
      Ryan Izard authored
      Forwarding's doDropFlow() changed to not base Match on OFPacketIn, which it shouldn't in the first place. We need to first deserialize the packet and use its header attributes. TODO: How much is too much to match on? Sometimes we want a very specific match by default. Other times, we don't. The former creates a larger flow table, while the latter might inadvertently match packets that we don't intend to. Perhaps this should be a user-configurable option? Such as net.floodlightcontroller.Forwarding.matchLayer=L2, L3, or L4?
      d8a6f21b
  30. Feb 20, 2015
    • Ryan Izard's avatar
      Don't use the Match from the Firewall in Forwarding if a rule allowed the... · f3eeca0a
      Ryan Izard authored
      Don't use the Match from the Firewall in Forwarding if a rule allowed the packet. If a packet has been allowed, that means the Forwarding module can send it where it needs to go matching on its header files (which have already been given the OK by the Firewall). If a Firewall rule is very general, e.g. allow all packets through switch 1, then the first packet that traverses the switch will cause Forwarding to insert a general from from port A to port B with no specific hheader field matches (since they weren't specified in the Firewall rule).
      f3eeca0a
  31. Feb 04, 2015
  32. Dec 21, 2014
  33. Nov 21, 2014
  34. Nov 07, 2014
Loading