Skip to content

Releases: frenetic-lang/ocaml-openflow

v0.7.0

08 Dec 16:28
Compare
Choose a tag to compare

Enhancements

  • De-duplicate individual and aggregate stats request type (breaking change) (#177)
  • Implement flowstats translation between abstraction layer and OpenFlow 1.0 (#177)
  • Support opam pin add openflow development workflow (#181)
  • Change VLAN pretty-printing in flowtables (#176)
  • Expand asynchronous config message support for OpenFlow 1.3 (#166)
  • Various cleanup and refactoring of OpenFlow 1.3 messages (breaking change) (#166)

Bugfixes

  • Fix bug in IP mask conversion between abstraction layer and OpenFlow versions (#172, #173)

v0.6.2

27 Aug 14:35
Compare
Choose a tag to compare
  • Make the library compatible with the latest core/async logging API: v111.28.00. (#171)
  • Add Log.string API call. (#171)

v0.6.1

26 Aug 15:36
Compare
Choose a tag to compare
  • Move echo handling to the beginning of the message processing pipeline (#155)
  • Detect idling connections before the handshake is completed (#155)
  • Record activity for all relevant messages (#155)

v0.6.0

14 Aug 18:09
Compare
Choose a tag to compare

Improved serialization and deserialization support for OpenFlow 1.3.4. The SDN_OpenFlow and related modules are now part of the public API, facilitating translation between the abstraction layer and the low-level, versioned OpenFlow representations.

This release is almost entirely due to Thien Duc Nguyen (@fugitifduck), who's been working with the Frenetic project as part of Google Summer of Code 2014.

v0.5.0

14 Jul 15:20
Compare
Choose a tag to compare

Major Enhancements

  • Add support for IP masks in abstraction layer (#127)
  • Add support for connection monitoring in runtime (#139)

Minor Enhancements

  • Add Sexplib support to all types in abstraction layer (#128)

Other Enhancements

  • Expand support for OpenFlow 1.3 message types. For now, this code should not be considered part of the public API as it is likely to change and further expand in the future. (#125, #129)

v0.4.0

17 Jun 15:25
Compare
Choose a tag to compare

Major Enhancements

  • Make pattern field types statically-known, eliminate VInt from the public API (#118)
  • Expose all common pseudoports in abstraction layer (#120)

Minor Enhancements

  • Add packet out to abstraction layer (#119)
  • Extend logging interface to dynamically add output tags (#121)
  • Move pattern type to its own module, implement and test lattice operations (#126)

Bug Fixes

  • Fix controller crash on unexpected disconnect during OpenFlow handshake (#115)
  • Fix copypasta bug involving ipSrc/Dst (#122)

Maintenance

  • Remove unused ClientServer API (#116)
  • Rename Trans module to Stage and make it a child of Async_OpenFlow (#117)
  • Perform proper physical port number validation (#119)
  • Make the library compatible with async.111.13.00 (#124)

v0.3.0

17 Mar 17:32
Compare
Choose a tag to compare

Major Enhancements

  • Replace lwt-based runtime with async-based runtime (#65, #67, #68, #90)
  • Move notion of "pseudoport" into action type in abstraction layer (#100)

Minor Bugfixes

  • Parse and serialize constants and unsigned integers
  • Properly delete all tables and groups in OpenFlow 1.3 (#71, #74)

Minor Enhancements

  • Pretty-print IP and MAC addresses
  • Support the OFPP_TABLE pseudoport
  • Implement to_string for OpenFlow 1.3 messages (#68)
  • Improve to_string for OpenFlow 1.0 (#106)
  • Export more pretty-printing functions for the abstraction layer (#110)

v0.2.0

08 Jan 17:36
Compare
Choose a tag to compare

This release requires an OCaml version of 4.01 or higher to allow for label overlaps.

Major Enhancements

  • Introduce subpackage for lwt runtime support (#44, #45, #54)
  • Add support for OpenFlow 1.0 IP wildcard match fields (#50)
  • Expose VLAN popping in OpenFlow 1.3 by using -1 as a special value (#11, #37)
  • Introduce subpackage for quickcheck instances (#3, #6)

Minor Enhancements

  • Add optional arguments to smart constructor for controlling timeout and removal notification for OpenFlow 1.0 FLOW_MOD message (#55, #56)
  • Add support for OpenFlow 1.0 FLOW_REMOVED message (#52, #57)
  • Add support for OpenFlow 1.0 Queues (#32)
  • Add smart constructor for DELETE_STRICT FLOW_MOD message (#27, #48)

Bug Fixes

  • Do not crash on failed writes to switches (#63)
  • Fix FLOW_REMOVED parsing and marshaling bug (#61, #62)
  • Make pretty-printer and syntax consistent (#22)