API Reference Manual  1.45.0
odp_cls_cos_param Struct Reference

Class of service parameters Used to communicate class of service creation options. More...

#include <classification.h>

Collaboration diagram for odp_cls_cos_param:
[legend]

Data Fields

odp_cos_action_t action
 Action to take. More...
 
odp_bool_t stats_enable
 Enable statistics. More...
 
uint32_t num_queue
 Number of queues to be linked to this CoS. More...
 
union {
   odp_queue_t   queue
 Mapping used when num_queue = 1, hashing is disabled in this case and application has to configure this queue and packets are delivered to this queue.
 
   struct {
      odp_queue_param_t   queue_param
 Queue parameters.
 
      odp_pktin_hash_proto_t   hash_proto
 Protocol header fields which are included in packet input hash calculation.
 
   } 
 Mapping used when num_queue > 1, hashing is enabled in this case and queues are created by the implementation.
 
}; 
 Variant mapping for queue hash configuration.
 
odp_pool_t pool
 Pool associated with CoS. More...
 
odp_red_param_t red
 Random Early Detection configuration.
 
odp_bp_param_t bp
 Back Pressure configuration.
 
odp_pktin_vector_config_t vector
 Packet input vector configuration.
 

Detailed Description

Class of service parameters Used to communicate class of service creation options.

Examples
odp_bench_pktio_sp.c, and odp_classifier.c.

Definition at line 615 of file api/spec/classification.h.

Field Documentation

◆ action

odp_cos_action_t odp_cls_cos_param::action

Action to take.

When action is ODP_COS_ACTION_DROP, all the other parameters are ignored. If action is ODP_COS_ACTION_ENQUEUE, then queue must be set, or num_queue must be greater than one.

The final match in the CoS chain defines the action for a packet. I.e. packet is dropped only when the CoS of the last matching rule has drop action. Actions in the previous CoSes in the chain are ignored.

Default is ODP_COS_ACTION_ENQUEUE.

Definition at line 627 of file api/spec/classification.h.

◆ stats_enable

odp_bool_t odp_cls_cos_param::stats_enable

Enable statistics.

If true, counters are incremented when packets are classified to the CoS. Default is false.

See also
odp_cls_cos_stats()

Definition at line 634 of file api/spec/classification.h.

◆ num_queue

uint32_t odp_cls_cos_param::num_queue

Number of queues to be linked to this CoS.

If the number is greater than 1 then hashing is enabled. If number is equal to 1 then hashing is disabled. When hashing is enabled the queues are created by the implementation and application need not configure any queue to the class of service. When hashing is disabled application has to configure the queue to the class of service. Depending on the implementation this number might be rounded-off to nearest supported value (e.g power of 2)

Default value is 1.

Definition at line 648 of file api/spec/classification.h.

◆ pool

odp_pool_t odp_cls_cos_param::pool

Pool associated with CoS.

May be set to ODP_POOL_INVALID, in which case the default pool of the originating packet input is used (see odp_pktio_open()). If there is no originating packet input (e.g. with lookaside IPsec), then this parameter must be set to a valid pool.

Default is ODP_POOL_INVALID.

Examples
odp_classifier.c.

Definition at line 677 of file api/spec/classification.h.


The documentation for this struct was generated from the following file: