Details
-
Improvement
-
Status: Resolved
-
Medium
-
Resolution: Done
-
None
-
None
Description
IPConversionUtil provides utility methods for various tasks involved in transforming modeled objects between representations (OFJ, OFP, binary) and to extract information from them.
These are hot paths, as they are involved in essentially every path which talks to a switch or to an application, and their performance is critical to overall solution performance.
While the utilities are in an acceptable shape, there are various improvements that can be made like:
- elimination of duplicate and dead code
- reduction of memory allocation
- invariant propagation
- constant objects for low-cardinality uses
Attachments
| # | Subject | Branch | Project | Status | CR | V |
|---|---|---|---|---|---|---|
| 80536,2 | Remove Ipv{4,6}Address-based splitToParts() methods | master | openflowplugin | Status: MERGED | +2 | +1 |
| 80537,2 | Optimize IpConversionUtil.extractIpv4Address() | master | openflowplugin | Status: MERGED | +2 | +1 |
| 80538,2 | Optimize splitter usage | master | openflowplugin | Status: MERGED | +2 | +1 |
| 80539,4 | Optimize IpConversionUtil.createArbitraryBitMask() | master | openflowplugin | Status: MERGED | +2 | +1 |
| 80540,5 | Remove duplicate IpConversionUtil.isArbitraryBitMask() | master | openflowplugin | Status: MERGED | +2 | +1 |
| 80541,6 | Optimize IpConversionUtil.isArbitraryBitMask() string splitting | master | openflowplugin | Status: MERGED | +2 | +1 |
| 80543,8 | Add IpConversionUtil.hasIpv4Prefix() | master | openflowplugin | Status: MERGED | +2 | +1 |
| 80544,7 | Optimize IpConversionUtil.extractIpv4AddressMask() | master | openflowplugin | Status: MERGED | +2 | +1 |
| 80545,6 | Pre-construct prefix masks | master | openflowplugin | Status: MERGED | +2 | +1 |
| 81055,1 | Remove Ipv{4,6}Address-based splitToParts() methods | stable/neon | openflowplugin | Status: MERGED | +2 | +1 |
| 81056,1 | Optimize IpConversionUtil.extractIpv4Address() | stable/neon | openflowplugin | Status: MERGED | +2 | +1 |
| 81080,4 | Optimize splitter usage | stable/neon | openflowplugin | Status: MERGED | +2 | +1 |
| 81081,4 | Optimize IpConversionUtil.createArbitraryBitMask() | stable/neon | openflowplugin | Status: MERGED | +2 | +1 |
| 81082,4 | Remove duplicate IpConversionUtil.isArbitraryBitMask() | stable/neon | openflowplugin | Status: MERGED | +2 | +1 |
| 81083,4 | Optimize IpConversionUtil.isArbitraryBitMask() string splitting | stable/neon | openflowplugin | Status: MERGED | +2 | +1 |
| 81084,4 | Optimize IpConversionUtil.extractIpv4AddressMask() | stable/neon | openflowplugin | Status: MERGED | +2 | +1 |
| 81085,4 | Pre-construct prefix masks | stable/neon | openflowplugin | Status: MERGED | +2 | +1 |
| 81866,2 | Add IpConversionUtil.hasIpv4Prefix() | stable/neon | openflowplugin | Status: MERGED | +2 | +1 |