Hi,
On 2016年09月22日 17:08, Poonam Ghosh wrote: > Hello, > > We have been referring the RYU source code to understand the OF Specific > instructions primarily OFV1.1, OFV1.2, OFV1.3,OFV1.4 and OFV1.5. > Currently while simulating the tests with Instruction > OFPIT_STAT_TRIGGER(Specification EXT-335) we got couple of Open points to > understand more on the implementation part which needs more clarity to > understand. > > As part of the Specification details for the EXT-335 we understand that "This > Instruction is primarily required to send out Openflow Extensible stats (as > part of flexible encoding) to Controller based on certain thresholds which > are user defined". Please correct my understanding for the same? > > So this is how the Instruction looks with the bitmap Flags shown below: > > enum ofp_stat_trigger_flags { > OFPSTF_PERIODIC = 1 << 0, /* Trigger for all multiples of thresholds. */ > OFPSTF_ONLY_FIRST = 1 << 1, /* Trigger on only first reach threshold. */ > }; > /* Instruction structure for OFPIT_STAT_TRIGGER */ > struct ofp_instruction_stat_trigger { > uint16_t type; /* *OFPIT_STAT_TRIGGER* */ > uint16_t len; > uint32_t flags; > struct ofp_stats thresholds; > }; > OFP_ASSERT(sizeof(struct ofp_instruction_stat_trigger) == 16); > > Based on the above understanding and the current RYU implementation it is > unclear of how the Flags and thresholds are derived and based on what? > Because if we really see the RYU python scripts for VERSION1.5 we see the > hardcoded values for duration, idle_time , flow_count, packet_count, and > byte_count as part of the OXS fields filling. What do you exactly mean "hardcoded"? "OFPStats" class can compose the arbitrary flow stats fields which are defined in OpneFlow 1.5. And the API is similar to OFPMatch. http://ryu.readthedocs.io/en/latest/ofproto_v1_5_ref.html#ryu.ofproto.ofproto_v1_5_parser.OFPStats > For our understanding we are not clear on how can we decide on the above > Fields of when the Instruction trigger needs to set the*PERIODIC FLAG* or > *ONLY_FIRST* flag as part of the FLOW_STATS REPLY To controller. For example, if you want to send the OFPIT_STAT_TRIGGER instruction with the PERIODIC flag and packet_count=100 in the stats field: instructions = [ parser.OFPInstructionStatTrigger( flags=ofproto.OFPSTF_PERIODIC, thresholds=parser.OFPStats(packet_count=100), ) ] BTW, unfortunately we haven't found the switch implementation which fully supports OpenFlow 1.5 including EXT-335. Do you know or have any implementation for supporting OpenFlow 1.5? Thanks, Iwase > > Much appreciate your response for the same. > > Thanks & Regards > Poonam Ghosh > Technical Architect, TCS > > =====-----=====-----===== > Notice: The information contained in this e-mail > message and/or attachments to it may contain > confidential or privileged information. If you are > not the intended recipient, any dissemination, use, > review, distribution, printing or copying of the > information contained in this e-mail message > and/or attachments to it are strictly prohibited. If > you have received this communication in error, > please notify us by reply e-mail or telephone and > immediately and permanently delete the message > and any attachments. Thank you > > > > ------------------------------------------------------------------------------ > > > > _______________________________________________ > Ryu-devel mailing list > Ryu-devel@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/ryu-devel > ------------------------------------------------------------------------------ _______________________________________________ Ryu-devel mailing list Ryu-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/ryu-devel