- Apr 29, 2016
-
-
Ryan Izard authored
Update MatchUtils and ActionUtils to fully support parsing 32-bit signed and unsigned port numbers in hex and decimal from strings. Also improved and added more keywords for ingress and output ports to support local, table, normal, controller, in_port, all, and flood without care for the openflow version.
-
- Nov 04, 2015
-
-
mindi102680 authored
-
- Aug 15, 2015
-
-
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 :-).
-
- Jun 24, 2015
-
-
Ryan Izard authored
We now have a human-readable OXM deserializer! Still need to add in all the NXM extensions and the OF1.5 0x8001 register class.
-
- Mar 09, 2015
-
-
Ryan Izard authored
Fixed a tough bug in MatchUtils. OFPorts are integers in OF1.3, but those who specify local, controller, etc. as 65534, etc. will not work with OF1.3. This is a temporary fix and should be fixed properly to allow the full range of ports.
-
- Feb 05, 2015
-
-
Ryan Izard authored
SFP supports hard/idle timouts w/drawback of needlessly sending flow_del to switch (which gets silently discarded). This is a good first step but needs to be followed up with a solution to the redundant flow_del msg. Also, patched MatchSerializer to display masks if present and fixed a bug in OFInstructionListSerializer for metadata and goto_table instructions. Added masking support to all SFP match fields. OVS supports some masked fields that are not defined in the OF1.3 spec. Oddly enough, OVS returns a bad-match error message even though the flow gets inserted. I suppose that message is due to the OF protocol not supporting it. OVS should squelch it if it supports it though. In any case, Floodlight is equipped to support all present MatchFields as masked MatchFields in the future. To specify a mask to any field (beside MPLS BOS, which is a boolean), use a CIDR-style '/' after the value and before the mask. All values and masks support decimal or hexadecimal (with leading '0x'), with the exception of all values that are MacAddress or IPAddress types -- they only support hex-string or dotted-decimal, respectively. Lastly, an English typo has been fixed in IStaticFlowEntryPusherService.
-
- Feb 04, 2015
-
-
Ryan Izard authored
Removed some more unnecessary comments. Don't know how hard_timeout and idle_timeout got reverted in the SFP...
-
Ryan Izard authored
-
- Dec 25, 2014
-
-
Ryan Izard authored
-
- Dec 22, 2014
-
-
sanjivininaikar authored
-
- Dec 18, 2014
-
-
Ryan Izard authored
Added MPLS_BOS and TUNNEL_ID support to SFP, since Loxi now supports it. Also changed MatchUtils's fromString() function's header to include the updated syntax for fields.
-
- Dec 17, 2014
-
-
Ryan Izard authored
added MPLS BOS to MatchUtils. Wrote part of a check function to verify SFP flow entries, but left it commented out.
-
- Dec 16, 2014
-
-
sanjivininaikar authored
IPv6 support updated
-
- Dec 15, 2014
-
-
sanjivininaikar authored
Support for IPv6
-
Ryan Izard authored
Tweaked SFP syntax (changed my mind about dl and nw as opposed to eth and ipv4). Added acceptance of hex and decimal input for values. Added previously unimplemented matches/actions in loxi to the SFP. Removed all the FlowReconcileManager stuff from DeviceManagerImpl.
-
- Dec 12, 2014
-
-
Ryan Izard authored
Fixed SFP REST API. Forgot to add new flow's DPID to entry2dpid map, thus flow removal never triggered a flow-del message to the switch. Also, added a serializer for OFFlowMod and for OFFlowModMap. The latter is for the double-map of switch-dpid --> map of flow-name --> OFFlowMod object. The former has been separated, since it a JSON serializer for OFFlowMod might come in handy in the future. A present limitation is that the JSON serializer does not use the same syntax as is used to insert a flow-mod via the SFP REST API. This might be confusing for people if they get different output than what they put in. It's a lot less work to implement the serializer as-is though. The next step will be to match the SFP syntax on a per-field basis in the OFFlowModSerializer class.
-
- Nov 21, 2014
-
-
Ryan Izard authored
-
- Aug 14, 2014
-
-
Ryan Izard authored
Fixed lots of compile errors in unit tests; mostly involved replacing longs with DatapathIds, byte[]s with MacAddresses and Ipv4Addresses, and shorts with OFPorts and VlanVids; some refactoring of flow mod contruction was also done to align with loxi's builders. The static flow puser now supports IP TOS for OF1.0 and for OF1.1+ it supports match/rewrite to either ECN or DSCP bits.
-
- Aug 12, 2014
-
-
Ryan Izard authored
Static Flow Pusher supports all OF1.3 matches and most OF1.3 actions (with the exception of masks). LoadBalancer corrected; OFFlowAdd used instead of OFFlowModify and OFPort.ZERO correct to OFPort.ANY. ActionUtils, MatchUtils, and InstructionUtils added to support static flow pusher. Strings defining flow fields *standardized* for Floodlight in the new utils classes. This means the REST API for the SFP will expect a sligthly different syntax than the current REST API (for master and 0.90). We can change the field names easily though in the utils files. These names are also referenced for the keys the SFP uses to store flow match fields and actions, just to be consistent.
-
- Aug 10, 2014
-
-
Ryan Izard authored
Fixed build.xml. Fixed/implemented workaround for remaining debug counter compile errors to allow compilation with ant. Static Flow Pusher now matches on all OF1.3 match fields; all OF1.3 actions/set-field are in progress now, but basic out-port action works.
-
- Aug 08, 2014
-
-
Ryan Izard authored
Ethernet's untagged VLAN notation updated. Match.Builders created from exising Matches will only remember parent Match's MatchFields if the new builder is not modified (not very useful IMHO). MatchUtils.java added to create a new builder from and existing Match and retain all the MatchFields unless explictly overwritten with the new builder.
-