DPDK  23.07.0
Data Fields
rte_tm_node_capabilities Struct Reference

#include <rte_tm.h>

Data Fields

int shaper_private_supported
 
int shaper_private_dual_rate_supported
 
uint64_t shaper_private_rate_min
 
uint64_t shaper_private_rate_max
 
int shaper_private_packet_mode_supported
 
int shaper_private_byte_mode_supported
 
uint32_t shaper_shared_n_max
 
int shaper_shared_packet_mode_supported
 
int shaper_shared_byte_mode_supported
 
uint64_t stats_mask
 
uint32_t sched_n_children_max
 
uint32_t sched_sp_n_priorities_max
 
uint32_t sched_wfq_n_children_per_group_max
 
uint32_t sched_wfq_n_groups_max
 
uint32_t sched_wfq_weight_max
 
int sched_wfq_packet_mode_supported
 
int sched_wfq_byte_mode_supported
 
struct {
   uint32_t   sched_n_children_max
 
   uint32_t   sched_sp_n_priorities_max
 
   uint32_t   sched_wfq_n_children_per_group_max
 
   uint32_t   sched_wfq_n_groups_max
 
   uint32_t   sched_wfq_weight_max
 
   int   sched_wfq_packet_mode_supported
 
   int   sched_wfq_byte_mode_supported
 
nonleaf
 
int cman_wred_packet_mode_supported
 
int cman_wred_byte_mode_supported
 
int cman_head_drop_supported
 
int cman_wred_context_private_supported
 
uint32_t cman_wred_context_shared_n_max
 
struct {
   int   cman_wred_packet_mode_supported
 
   int   cman_wred_byte_mode_supported
 
   int   cman_head_drop_supported
 
   int   cman_wred_context_private_supported
 
   uint32_t   cman_wred_context_shared_n_max
 
leaf
 

Detailed Description

Traffic manager node capabilities

Definition at line 801 of file rte_tm.h.

Field Documentation

◆ shaper_private_supported

int shaper_private_supported

Private shaper support for the current node.

Definition at line 803 of file rte_tm.h.

◆ shaper_private_dual_rate_supported

int shaper_private_dual_rate_supported

Dual rate shaping support for private shaper of current node. Valid only when private shaper is supported by the current node.

Definition at line 808 of file rte_tm.h.

◆ shaper_private_rate_min

uint64_t shaper_private_rate_min

Minimum committed/peak rate (bytes per second) for private shaper of current node. Valid only when private shaper is supported by the current node.

Definition at line 814 of file rte_tm.h.

◆ shaper_private_rate_max

uint64_t shaper_private_rate_max

Maximum committed/peak rate (bytes per second) for private shaper of current node. Valid only when private shaper is supported by the current node.

Definition at line 820 of file rte_tm.h.

◆ shaper_private_packet_mode_supported

int shaper_private_packet_mode_supported

Shaper private packet mode supported. When non-zero, this parameter indicates private shaper of current node can be configured with packet mode. When configured in packet mode, committed/peak rate provided is interpreted in packets per second.

Definition at line 827 of file rte_tm.h.

◆ shaper_private_byte_mode_supported

int shaper_private_byte_mode_supported

Shaper private byte mode supported. When non-zero, this parameter indicates private shaper of current node can be configured with byte mode. When configured in byte mode, committed/peak rate provided is interpreted in bytes per second.

Definition at line 834 of file rte_tm.h.

◆ shaper_shared_n_max

uint32_t shaper_shared_n_max

Maximum number of shared shapers the current node can be part of. The value of zero indicates that shared shapers are not supported by the current node.

Definition at line 840 of file rte_tm.h.

◆ shaper_shared_packet_mode_supported

int shaper_shared_packet_mode_supported

Shaper shared packet mode supported. When non-zero, this parameter indicates that current node can be part of shared shapers which work in packet mode.

Definition at line 846 of file rte_tm.h.

◆ shaper_shared_byte_mode_supported

int shaper_shared_byte_mode_supported

Shaper shared byte mode supported. When non-zero, this parameter indicates that current node can be part of shared shapers which work in byte mode.

Definition at line 852 of file rte_tm.h.

◆ sched_n_children_max

uint32_t sched_n_children_max

Maximum number of children nodes.

Definition at line 859 of file rte_tm.h.

◆ sched_sp_n_priorities_max

uint32_t sched_sp_n_priorities_max

Maximum number of supported priority levels. The value of zero is invalid. The value of 1 indicates that only priority 0 is supported, which essentially means that Strict Priority (SP) algorithm is not supported.

Definition at line 867 of file rte_tm.h.

◆ sched_wfq_n_children_per_group_max

uint32_t sched_wfq_n_children_per_group_max

Maximum number of sibling nodes that can have the same priority at any given time, i.e. maximum size of the WFQ sibling node group. The value of zero is invalid. The value of 1 indicates that WFQ algorithm is not supported. The maximum value is sched_n_children_max.

Definition at line 876 of file rte_tm.h.

◆ sched_wfq_n_groups_max

uint32_t sched_wfq_n_groups_max

Maximum number of priority levels that can have more than one child node at any given time, i.e. maximum number of WFQ sibling node groups that have two or more members. The value of zero states that WFQ algorithm is not supported. The value of 1 indicates that (sched_sp_n_priorities_max - 1) priority levels have at most one child node, so there can be only one priority level with two or more sibling nodes making up a WFQ group. The maximum value is: min(floor(sched_n_children_max / 2), sched_sp_n_priorities_max).

Definition at line 890 of file rte_tm.h.

◆ sched_wfq_weight_max

uint32_t sched_wfq_weight_max

Maximum WFQ weight. The value of 1 indicates that all sibling nodes with same priority have the same WFQ weight, so WFQ is reduced to FQ.

Definition at line 896 of file rte_tm.h.

◆ sched_wfq_packet_mode_supported

int sched_wfq_packet_mode_supported

WFQ packet mode supported. When non-zero, this parameter indicates that current node supports packet mode for WFQ among its children. WFQ weights will be applied against packet count for scheduling children when configured appropriately.

Definition at line 904 of file rte_tm.h.

◆ sched_wfq_byte_mode_supported

int sched_wfq_byte_mode_supported

WFQ byte mode supported. When non-zero, this parameter indicates that current node supports byte mode for WFQ among its children. WFQ weights will be applied against bytes for scheduling children when configured appropriately.

Definition at line 912 of file rte_tm.h.

◆ nonleaf

struct { ... } nonleaf

Items valid only for non-leaf nodes.

◆ cman_wred_packet_mode_supported

int cman_wred_packet_mode_supported

WRED packet mode support for current node.

Definition at line 919 of file rte_tm.h.

◆ cman_wred_byte_mode_supported

int cman_wred_byte_mode_supported

WRED byte mode support for current node.

Definition at line 922 of file rte_tm.h.

◆ cman_head_drop_supported

int cman_head_drop_supported

Head drop algorithm support for current node.

Definition at line 925 of file rte_tm.h.

◆ cman_wred_context_private_supported

int cman_wred_context_private_supported

Private WRED context support for current node.

Definition at line 928 of file rte_tm.h.

◆ cman_wred_context_shared_n_max

uint32_t cman_wred_context_shared_n_max

Maximum number of shared WRED contexts the current node can be part of. The value of zero indicates that shared WRED contexts are not supported by the current node.

Definition at line 935 of file rte_tm.h.

◆ leaf

struct { ... } leaf

Items valid only for leaf nodes.

◆ stats_mask

uint64_t stats_mask

Mask of statistics counter types supported by the current node.

See also
enum rte_tm_stats_type

Definition at line 942 of file rte_tm.h.


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