rte_mtr_capabilities(3)
π NAME π
so this page is rte_mtr_capabilities, straight out of the DPDK Library Functions Manual β she's a struct, she's iconic, and she's about to tell you literally everything your NIC can do with traffic meters β¨
πΈ SYNOPSIS πΈ
#include <rte_mtr.h>
π Data Fields π
uint32_t n_maxuint32_t n_shared_maxint identicalint shared_identicaluint32_t shared_n_flows_per_mtr_maxuint32_t chaining_n_mtrs_per_flow_maxint chaining_use_prev_mtr_color_supportedint chaining_use_prev_mtr_color_enforceduint32_t meter_srtcm_rfc2697_n_maxuint32_t meter_trtcm_rfc2698_n_maxuint32_t meter_trtcm_rfc4115_n_maxuint64_t meter_rate_maxuint64_t meter_policy_n_maxint color_aware_srtcm_rfc2697_supportedint color_aware_trtcm_rfc2698_supportedint color_aware_trtcm_rfc4115_supportedint srtcm_rfc2697_byte_mode_supportedint srtcm_rfc2697_packet_mode_supportedint trtcm_rfc2698_byte_mode_supportedint trtcm_rfc2698_packet_mode_supportedint trtcm_rfc4115_byte_mode_supportedint trtcm_rfc4115_packet_mode_supporteduint64_t stats_maskuint64_t input_color_proto_maskint separate_input_color_table_per_port
π¦ Detailed Description π¦
MTR capabilities, bestie. that's the whole vibe. it's the struct that tells you what metering stuff the hardware is actually willing to do π
Definition at line 356 of file rte_mtr.h.
π Field Documentation π
okay this is the part where we go field by field, no skips, no shortcuts, we're doing the full tour π«Ά
β uint32_t n_max
the maximum number of MTR objects. that's it. that's the ceiling.
Definition at line 358 of file rte_mtr.h.
β uint32_t n_shared_max
the maximum number of MTR objects that can be shared by multiple flows. if this is zero, shared MTR objects are just not a thing on this hardware. and the max value is n_max, obviously π
Definition at line 364 of file rte_mtr.h.
β int identical
when it's non-zero, this flag means all the MTR objects that cannot be shared by multiple flows have an identical capability set. like, they're all twins, no cap.
Definition at line 369 of file rte_mtr.h.
β int shared_identical
same energy as above but for the shareable ones: when non-zero, this flag means all the MTR objects that can be shared by multiple flows have an identical capability set.
Definition at line 374 of file rte_mtr.h.
β uint32_t shared_n_flows_per_mtr_max
the maximum number of flows that can share the same MTR object. lowkey important: the value of 0 is invalid. and 1 means shared MTR objects are not supported. so don't come in with a zero and expect it to slay π
Definition at line 380 of file rte_mtr.h.
β uint32_t chaining_n_mtrs_per_flow_max
the maximum number of MTR objects that can be part of the same flow. again: 0 is invalid, and 1 means MTR object chaining is not supported. the maximum value is n_max.
Definition at line 386 of file rte_mtr.h.
β int chaining_use_prev_mtr_color_supported
when non-zero, it means the packet color identified by one MTR object can be used as the packet input color by any subsequent MTR object from the same flow. when zero, the color determined by one MTR object is always ignored by any subsequent MTR object from the same flow. this is only valid when MTR chaining is supported, i.e. when chaining_n_mtrs_per_flow_max is greater than 1. and when it's non-zero, it also means color aware mode is supported by at least one metering algorithm π
Definition at line 398 of file rte_mtr.h.
β int chaining_use_prev_mtr_color_enforced
when non-zero, the packet color identified by one MTR object is always used as the packet input color by any subsequent MTR object that's part of the same flow. when zero, whether the color determined by one MTR object is ignored or used as the input color by a subsequent MTR object from the same flow is individually configurable for each MTR object. only valid when chaining_use_prev_mtr_color_supported is non-zero π
Definition at line 409 of file rte_mtr.h.
β uint32_t meter_srtcm_rfc2697_n_max
maximum number of MTR objects that can have their meter configured to run the srTCM RFC 2697 algorithm. 0 means this metering algorithm is not supported. the maximum value is n_max.
Definition at line 415 of file rte_mtr.h.
β uint32_t meter_trtcm_rfc2698_n_max
maximum number of MTR objects that can have their meter configured to run the trTCM RFC 2698 algorithm. 0 means it's not supported. the maximum value is n_max.
Definition at line 421 of file rte_mtr.h.
β uint32_t meter_trtcm_rfc4115_n_max
maximum number of MTR objects that can have their meter configured to run the trTCM RFC 4115 algorithm. 0 means not supported. the maximum value is n_max.
Definition at line 427 of file rte_mtr.h.
β uint64_t meter_rate_max
maximum traffic rate that a single MTR object can meter. so for srTCM RFC 2697 this is the maximum CIR rate, for trTCM RFC 2698 it's the maximum PIR rate, and for trTCM RFC 4115 it's the maximum value for the sum of PIR and EIR rates. iykyk π₯
Definition at line 434 of file rte_mtr.h.
β uint64_t meter_policy_n_max
maximum number of policy objects that can have. the value of 0 is invalid, policy must be supported for meter, and the maximum value is n_max. periodt.
Definition at line 441 of file rte_mtr.h.
β int color_aware_srtcm_rfc2697_supported
when non-zero, it means color aware mode is supported for the srTCM RFC 2697 metering algorithm π
Definition at line 447 of file rte_mtr.h.
β int color_aware_trtcm_rfc2698_supported
when non-zero, it means color aware mode is supported for the trTCM RFC 2698 metering algorithm π
Definition at line 453 of file rte_mtr.h.
β int color_aware_trtcm_rfc4115_supported
when non-zero, it means color aware mode is supported for the trTCM RFC 4115 metering algorithm π
Definition at line 459 of file rte_mtr.h.
β int srtcm_rfc2697_byte_mode_supported
srTCM rfc2697 byte mode supported. when non-zero, it means byte mode is supported for the srTCM RFC 2697 metering algorithm.
Definition at line 466 of file rte_mtr.h.
β int srtcm_rfc2697_packet_mode_supported
srTCM rfc2697 packet mode supported. when non-zero, it means packet mode is supported for the srTCM RFC 2697 metering algorithm.
Definition at line 473 of file rte_mtr.h.
β int trtcm_rfc2698_byte_mode_supported
trTCM rfc2698 byte mode supported. when non-zero, it means byte mode is supported for the trTCM RFC 2698 metering algorithm.
Definition at line 480 of file rte_mtr.h.
β int trtcm_rfc2698_packet_mode_supported
trTCM rfc2698 packet mode supported. when non-zero, it means packet mode is supported for the trTCM RFC 2698 metering algorithm.
Definition at line 487 of file rte_mtr.h.
β int trtcm_rfc4115_byte_mode_supported
trTCM rfc4115 byte mode supported. when non-zero, it means byte mode is supported for the trTCM RFC 4115 metering algorithm.
Definition at line 494 of file rte_mtr.h.
β int trtcm_rfc4115_packet_mode_supported
trTCM rfc4115 packet mode supported. when non-zero, it means packet mode is supported for the trTCM RFC 4115 metering algorithm.
Definition at line 501 of file rte_mtr.h.
β uint64_t stats_mask
the set of supported statistics counter types π
see also: enum rte_mtr_stats_type
Definition at line 506 of file rte_mtr.h.
β uint64_t input_color_proto_mask
the set of supported input color protocol π
see also: enum rte_mtr_color_in_protocol
Definition at line 511 of file rte_mtr.h.
β int separate_input_color_table_per_port
when non-zero, it means the driver supports a separate input color table for the given ethdev port. chef's kiss π
Definition at line 516 of file rte_mtr.h.
π§ Author π§
generated automatically by Doxygen for DPDK from the source code. not me writing it by hand, she was born this way β¨
ok that's the whole page bestie, every single field, every line number, nothing skipped π
and fr fr, this was rte_mtr_capabilities(3) from DPDK Version 26.03.0 β stay hydrated, go check your stats_mask, and slay π«Άπ
π¦ where this page comes from
- nixos 26.05: dpdk 26.03
- nixpkgs unstable: dpdk 26.03
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms