rte_port_i..._lb_params(3)

✨ NAME ✨

rte_port_in_action_lb_params β€” okay bestie, this is a struct, and she's the load-balancer parameters baddie πŸ’…

(also hi, this is page rte_port_i..._lb_params(3) from the Library Functions Manual, in case the tab title wasn't giving enough πŸ’–)


🌸 SYNOPSIS 🌸

#include <rte_port_in_action.h>

πŸŽ€ Data Fields

uint32_t port_id [RTE_PORT_IN_ACTION_LB_TABLE_SIZE]

πŸ’œ Detailed Description

Load balance action parameters (per action). That's it, that's the whole personality β€” one parameter, per action, load balanced. Iconic honestly.

Definition at line 152 of file rte_port_in_action.h.


πŸ¦‹ Field Documentation πŸ¦‹

πŸ’« uint32_t port_id[RTE_PORT_IN_ACTION_LB_TABLE_SIZE]

Okay so this field is a table, and what that table is defining is the weight of each pipeline output port. No cap.

The weights are set in 1/RTE_PORT_IN_ACTION_LB_TABLE_SIZE increments. Yes, tiny little increments β€” that's the resolution you're working with, bestie.

So here's the vibe check on how you actually assign a weight 🫢: if you want a given output port to have a weight of N/RTE_PORT_IN_ACTION_LB_TABLE_SIZE, where 0 <= N <= RTE_PORT_IN_ACTION_LB_TABLE_SIZE, then that output port needs to show up in this table exactly N times. Show up once, you get one increment of weight. Show up N times, you get N increments. That's the whole mechanism, it's giving "vote for yourself as many times as you're allowed" πŸ—³οΈβœ¨

lowkey important: N can be 0, which means the port shows up zero times, which means zero weight, which means she's not getting any traffic. Don't say I didn't warn you 😭

Definition at line 159 of file rte_port_in_action.h.


πŸ‘‘ Author

Generated automatically by Doxygen for DPDK from the source code. (Not a human author, just Doxygen doing her little autogenerated thing πŸ’–πŸ€–)


and that's the page!! πŸŽ€ this was DPDK, Version 25.11.3, and yes it's page rte_port_i..._lb_params(3) β€” mwah, go slay your load balancing bestie πŸ’…βœ¨πŸŒˆ

πŸ“¦ where this page comes from