Hi all,

        I have been tasked to port the NoviFlow experimenters to ODL.

        I have found the extensions in the openflowplugin. There are examples 
for Nicera, which I can use to understand how it work. However, we need to 
define «dynamic» oxm. By «dynamic», I mean the OXM contains a variable length 
depending on the number of same data in it.

        Here is an example:
struct oxm_fields {
uint16_t oxm_class;  /* Match class OFPXMC_EXPERIMENTER 0xffff */

uint oxm_field:7; /* Match field within the class NOVI_MATCH_UDP_PAYLOAD 
0b0000001 */

uint oxm_hasmask:1; /* Set if OXM includes a bitmask in payload (wildcard match 
tables only) */

 uint8_t oxm_length; /* Length of OXM payload */

uint32_t experimenter; /* NoviFlow experimenter ID 0xff000002 */

 uint8_t payload[1-32] /* 1-32 payload bytes to be matched on*/

uint8_t mask [0-32] /* Optional mask present if oxm_hasmask bit is set in the 
header */

}; 


Like in this OXM, the payload and mask size depends on oxm_length for the 
number of items and oxm_hasmask to know if there is a mask (if the mask is 
there the length is split between the payload and the mask).

I did not find an existing example of this kind in the extension (if I missed 
one please let me know). Is it possible to model this in YANG to have this kind 
of message?

Thank You,

Yann Bourdeau, M.Ing.
Senior Software Developer
438-499-4607
[email protected]



_______________________________________________
openflowplugin-dev mailing list
[email protected]
https://lists.opendaylight.org/mailman/listinfo/openflowplugin-dev

Reply via email to