struct_ieee80211_tx_rate_control(9) [centos man page]
STRUCT IEEE80211_TX_(9) Rate control interface STRUCT IEEE80211_TX_(9)NAME
struct_ieee80211_tx_rate_control - rate control information for/from RC algo
SYNOPSIS
struct ieee80211_tx_rate_control {
struct ieee80211_hw * hw;
struct ieee80211_supported_band * sband;
struct ieee80211_bss_conf * bss_conf;
struct sk_buff * skb;
struct ieee80211_tx_rate reported_rate;
bool rts;
bool short_preamble;
u8 max_rate_idx;
u32 rate_idx_mask;
u8 * rate_idx_mcs_mask;
bool bss;
};
MEMBERS
hw
The hardware the algorithm is invoked for.
sband
The band this frame is being transmitted on.
bss_conf
the current BSS configuration
skb
the skb that will be transmitted, the control information in it needs to be filled in
reported_rate
The rate control algorithm can fill this in to indicate which rate should be reported to userspace as the current rate and used for
rate calculations in the mesh network.
rts
whether RTS will be used for this frame because it is longer than the RTS threshold
short_preamble
whether mac80211 will request short-preamble transmission if the selected rate supports it
max_rate_idx
user-requested maximum (legacy) rate (deprecated; this will be removed once drivers get updated to use rate_idx_mask)
rate_idx_mask
user-requested (legacy) rate mask
rate_idx_mcs_mask
user-requested MCS rate mask (NULL if not in use)
bss
whether this frame is sent out in AP or IBSS mode
AUTHOR
Johannes Berg <johannes@sipsolutions.net>
Author.
COPYRIGHT Kernel Hackers Manual 3.10 June 2014 STRUCT IEEE80211_TX_(9)
Check Out this Related Man Page
STRUCT IEEE80211_TX_(9) The basic mac80211 driver inte STRUCT IEEE80211_TX_(9)NAME
struct_ieee80211_tx_rate - rate selection/status
SYNOPSIS
struct ieee80211_tx_rate {
s8 idx;
u16 count:5;
u16 flags:11;
};
MEMBERS
idx
rate index to attempt to send with
count
number of tries in this rate before going to the next rate
flags
rate control flags (enum mac80211_rate_control_flags)
DESCRIPTION
A value of -1 for idx indicates an invalid rate and, if used in an array of retry rates, that no more rates should be tried.
When used for transmit status reporting, the driver should always report the rate along with the flags it used.
struct ieee80211_tx_info contains an array of these structs in the control information, and it will be filled by the rate control algorithm
according to what should be sent. For example, if this array contains, in the format { <idx>, <count> } the information { 3, 2 }, { 2, 2 },
{ 1, 4 }, { -1, 0 }, { -1, 0 } then this means that the frame should be transmitted up to twice at rate 3, up to twice at rate 2, and up to
four times at rate 1 if it doesn't get acknowledged. Say it gets acknowledged by the peer after the fifth attempt, the status information
should then contain { 3, 2 }, { 2, 2 }, { 1, 1 }, { -1, 0 } ... since it was transmitted twice at rate 3, twice at rate 2 and once at rate
1 after which we received an acknowledgement.
AUTHOR
Johannes Berg <johannes@sipsolutions.net>
Author.
COPYRIGHT Kernel Hackers Manual 3.10 June 2014 STRUCT IEEE80211_TX_(9)