Discussion:
[ath9k-devel] ATH9K PCI Question
C. McPherson
2013-03-15 17:54:33 UTC
Permalink
Hello:
I am using the Ubiquity SR71 PCI in my lab using monitor mode and frame
injection. I noticed that when I inject control frames RTS/CTS, ACKs the
card is also sending out retry frames. I was wondering if there is a way
I can turn that off that in ath9k software? In other words I want to
inject 1 CTS frame, and on my wireshark machine I just want to see that
CTS frame I injected, no retry frames.


Thanks in advance
Clyde
Adrian Chadd
2013-03-15 20:28:48 UTC
Permalink
You need to ensure that:

* you don't request an ACK if you don't want one;
* you set the hardware retry count to 1



Adrian
Post by C. McPherson
I am using the Ubiquity SR71 PCI in my lab using monitor mode and frame
injection. I noticed that when I inject control frames RTS/CTS, ACKs the
card is also sending out retry frames. I was wondering if there is a way
I can turn that off that in ath9k software? In other words I want to
inject 1 CTS frame, and on my wireshark machine I just want to see that
CTS frame I injected, no retry frames.
Thanks in advance
Clyde
_______________________________________________
ath9k-devel mailing list
https://lists.ath9k.org/mailman/listinfo/ath9k-devel
C. McPherson
2013-03-16 17:06:27 UTC
Permalink
Okay, thank you for the information.

-Clyde
Post by Adrian Chadd
* you don't request an ACK if you don't want one;
* you set the hardware retry count to 1
Adrian
Post by C. McPherson
I am using the Ubiquity SR71 PCI in my lab using monitor mode and frame
injection. I noticed that when I inject control frames RTS/CTS, ACKs the
card is also sending out retry frames. I was wondering if there is a way
I can turn that off that in ath9k software? In other words I want to
inject 1 CTS frame, and on my wireshark machine I just want to see that
CTS frame I injected, no retry frames.
Thanks in advance
Clyde
_______________________________________________
ath9k-devel mailing list
https://lists.ath9k.org/mailman/listinfo/ath9k-devel
C. McPherson
2013-03-19 17:17:48 UTC
Permalink
That did not work. I did change ieee80211_monitor_start_xmit() in
mac80211 tx.c where it sets the info->flags from:

info->flags = IEEE80211_TX_CTL_REQ_TX_STATUS |
IEEE80211_TX_CTL_INJECTED;

to the following:
info->flags = IEEE80211_TX_CTL_REQ_TX_STATUS | IEEE80211_TX_CTL_NO_ACK
IEEE80211_TX_CTL_INJECTED;

and that got rid of the retries. When injecting. This is because the
setting of the IEEE80211_TX_CTL_NO_ACK flag in
ieee80211_monitor_start_xmit(), allows the ath9k ath_tx_fill_desc() to
check the flags and set ATH9K_TXDESC_NOACK properly.

-Clyde
Post by C. McPherson
Okay, thank you for the information.
-Clyde
Post by Adrian Chadd
* you don't request an ACK if you don't want one;
* you set the hardware retry count to 1
Adrian
Post by C. McPherson
I am using the Ubiquity SR71 PCI in my lab using monitor mode and frame
injection. I noticed that when I inject control frames RTS/CTS, ACKs the
card is also sending out retry frames. I was wondering if there is a way
I can turn that off that in ath9k software? In other words I want to
inject 1 CTS frame, and on my wireshark machine I just want to see that
CTS frame I injected, no retry frames.
Thanks in advance
Clyde
_______________________________________________
ath9k-devel mailing list
https://lists.ath9k.org/mailman/listinfo/ath9k-devel
_______________________________________________
ath9k-devel mailing list
https://lists.ath9k.org/mailman/listinfo/ath9k-devel
Paul
2016-07-03 05:05:13 UTC
Permalink
C. McPherson <ccmcphe <at>
Post by C. McPherson
That did not work. I did change
ieee80211_monitor_start_xmit() in
Post by C. McPherson
mac80211 tx.c where it sets the
info->flags =
IEEE80211_TX_CTL_REQ_TX_STATUS |
Post by C. McPherson
IEEE80211_TX_CTL_INJECTED;
info->flags =
IEEE80211_TX_CTL_REQ_TX_STATUS |
IEEE80211_TX_CTL_NO_ACK
Post by C. McPherson
IEEE80211_TX_CTL_INJECTED;
and that got rid of the retries.
When injecting. This is because the
Post by C. McPherson
setting of the
IEEE80211_TX_CTL_NO_ACK flag in
Post by C. McPherson
ieee80211_monitor_start_xmit(),
allows the ath9k ath_tx_fill_desc()
to
Post by C. McPherson
check the flags and set
ATH9K_TXDESC_NOACK properly.
Post by C. McPherson
-Clyde
Post by C. McPherson
Okay, thank you for the
information.
Post by C. McPherson
Post by C. McPherson
-Clyde
On 03/15/2013 04:28 PM, Adrian
Post by Adrian Chadd
* you don't request an ACK if
you don't want one;
Post by C. McPherson
Post by C. McPherson
Post by Adrian Chadd
* you set the hardware retry
count to 1
Post by C. McPherson
Post by C. McPherson
Post by Adrian Chadd
Adrian
On 15 March 2013 10:54, C.
McPherson <ccmcphe <at> verizon.net>
Post by C. McPherson
Post by C. McPherson
Post by Adrian Chadd
Post by C. McPherson
I am using the Ubiquity SR71
PCI in my lab using monitor mode and
frame
Post by C. McPherson
Post by C. McPherson
Post by Adrian Chadd
Post by C. McPherson
injection. I noticed that when
I inject control frames RTS/CTS, ACKs
the
Post by C. McPherson
Post by C. McPherson
Post by Adrian Chadd
Post by C. McPherson
card is also sending out retry
frames. I was wondering if there is a
way
Post by C. McPherson
Post by C. McPherson
Post by Adrian Chadd
Post by C. McPherson
I can turn that off that in
ath9k software? In other words I want
to
Post by C. McPherson
Post by C. McPherson
Post by Adrian Chadd
Post by C. McPherson
inject 1 CTS frame, and on my
wireshark machine I just want to see
that
Post by C. McPherson
Post by C. McPherson
Post by Adrian Chadd
Post by C. McPherson
CTS frame I injected, no retry
frames.
Post by C. McPherson
Post by C. McPherson
Post by Adrian Chadd
Post by C. McPherson
Thanks in advance
Clyde
_____________________________________
__________
Post by C. McPherson
Post by C. McPherson
Post by Adrian Chadd
Post by C. McPherson
ath9k-devel mailing list
ath9k-devel <at>
lists.ath9k.org
https://lists.ath9k.org/mailman/listi
nfo/ath9k-devel
_____________________________________
__________
Post by C. McPherson
Post by C. McPherson
ath9k-devel mailing list
ath9k-devel <at> lists.ath9k.org
https://lists.ath9k.org/mailman/listi
nfo/ath9k-devel
Hi,

I realise this is quite an old
thread, but I have this exact issue
of retry packets when injecting. I'd
just like to know if this requires
the driver to be patched or if it is
something that can be passed in while
injecting the packet?

I found an example packet injector
script that mentioned building the
radio tap header with 2 extra bytes
(0x80,0x00) on the end to turn ack
off. I tried this, but the retries
still come through.

If anyone could lend a bit if
assistance or more detail on how to
implement this without patching the
driver it would be greatly
appreciated.

Regards
Paul

Loading...