API Reference Manual
1.47.0
|
Class of service parameters Used to communicate class of service creation options. More...
#include <classification.h>
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. More... | |
odp_aggr_enq_profile_t | aggr_enq_profile |
Event aggregator enqueuing profile. More... | |
Class of service parameters Used to communicate class of service creation options.
Definition at line 657 of file api/spec/classification.h.
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 669 of file api/spec/classification.h.
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.
Definition at line 676 of file api/spec/classification.h.
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 690 of file api/spec/classification.h.
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.
Definition at line 719 of file api/spec/classification.h.
odp_pktin_vector_config_t odp_cls_cos_param::vector |
Packet input vector configuration.
Generating vectors of packets can be enabled either through this configuration or by using event aggregators as destination queue(s). Both options cannot be enabled simultaneously in the same ODP application.
Definition at line 734 of file api/spec/classification.h.
odp_aggr_enq_profile_t odp_cls_cos_param::aggr_enq_profile |
Event aggregator enqueuing profile.
This parameter has an effect only when a packet is enqueued to an aggregator queue by this CoS.
If the profile is not one of the supported types indicated in odp_cls_capability_t::aggr.enq_profile_type, or if the profile type is supported but the profile cannot be supported in this CoS instance (e.g. due to resource constraints), CoS creation will fail.
Definition at line 746 of file api/spec/classification.h.