Tags

In Autonomous(IOS) AP, you can configure number of attempts the wireless device makes to send a packet before giving up & dropping the packet. There are two ways of configuring this feature. One method for best effort (priority value 0) traffic & another method for non-best effort (priority value 1-7)

1. Best-effort Traffic (packet retries command)
2. Non-Best-effort Traffic (packet max-retries command )

First we will look at how to configure this for best effort traffic (Priority value 0 traffic). These to be configured under the Radio interfaces (d0 for 2.4GHz or d1 for 5GHz ). You can use the packet retries configuration interface command to specify the maximum number of attempts to send a packet. The default number of retries is 32.

Below example shows how to configure Radio Interface 1 (5GHz) to attempt 16 times before giving up the sending wireless packet. By using “drop-packet” keyword at the end you can enforce not to drop the association, instead just drop the packet when maximum retries reached. Remember that this is only applicable for best effort (priority 0) traffic.

AAP1(config)#int d1
AAP1(config-if)#packet ?
  max-retries  maximum non-best-effort data packet retries before discard pkt
  retries      maximum best-effort data packet retries
  speed        qos user-priority(up) downlink rates for discard-enabled packets
  timeout      up packet aging/discard timeout threshold

AAP1(config-if)#packet retries ?
  <1-128>  number of packet retries before giving up

AAP1(config-if)#packet retries 16 ?
  drop-packet  Don't disassociate station, instead just drop packets when maximum retries is reached

AAP1(config-if)#packet retries 16 drop-packet

Next We will look at how to configure that parameter for non-best-effort traffic (ie priority value 1-7 traffic). You can use “packet max-retries”  interface CLI configuration command to specify the maximum number of attempts per non-best-effort data packet before discarding the packet.  Here is the syntax of the CLI command.

packet max-retries <number 1> <number 2> fail-threshold <number 3> <number 4> priority <value> drop-packet

max-retries <number 1> <number 2>
Specifies the maximum number (0 to 128) of non-best-effort data packet retries before discarding the packet. number 1 retries is used if number 3 fail-threshold has not exceeded and number 2 retries is used if number 3 fail-threshold has been exceeded. number 1 default is 3 and number 2 default is 0

fail-threshold <number 3> <number 4>
Specifies the thresholds for the maximum number of consecutive dropped packets (0 to 1000). number 3 fail-threshold is used to switch max-retries from number 1 to number 2 as described above. If number 4 fail-threshold has exceeded, the client will be disassociated. number 3 default is 100 and number 4 default is 500.

priority <value>
Specifies the QOS user priority (1 to 7). value does not have a default value.

drop-packet
Specifies that priority packets should not be retried and that the packets should be dropped when the maximum number of retries has been reached.

Here is a configuration example for priority value 5 traffic. This will do the following.

1. If consecutive drop packets(of priority 5) is below 25 it will try max 5 times before discarding that packet.
2. If consecutive drop packet (of priority 5) is more than 25 (but less than 100) it will try max 2 times before discarding that packet.
3. If consecutive drop packets (of priority 5) is reached 100 client will be disassociated.

AAP1(config-if)#packet max-retries ?
  <0-128>  # packet retries before dropping pkt if first fail-threshold not reached

AAP1(config-if)#packet max-retries 5 ?
  <0-128>  # packet retries before dropping pkt if 2nd fail-threshold not reached

AAP1(config-if)#packet max-retries 5 2 ?
  fail-threshold  maximum # consecutive dropped packets thresholds

AAP1(config-if)#packet max-retries 5 2 fail-threshold ?
  <0-1000>  # consecutive dropped packets before switching max-retries thresholds

AAP1(config-if)#packet max-retries 5 2 fail-threshold 25 ?
  <0-1000>  number of consecutive dropped packets before disassociating client

AAP1(config-if)#packet max-retries 5 2 fail-threshold 25 100 ?
  priority  qos user-priority

AAP1(config-if)#packet max-retries 5 2 fail-threshold 25 100 priority ?
  <0-7>  qos user-priority number

AAP1(config-if)#packet max-retries 5 2 fail-threshold 25 100 priority 5 ?
  drop-packet  Don't retry pkts, just drop packets when max retries reached

AAP1(config-if)#packet max-retries 5 2 fail-threshold 25 100 priority 5 drop-packet

There are other two configuration parameters available related to “packet max-retry”  interface configuration.

1. packet speed
2. packet timeout

You can use the packet speed configuration interface command to specify down-link data rates and priorities for packets which have been declared discard-eligible in the “packet max-retries” command. This command has following syntax

packet speed [rate1....rateN | default] priority <0-7>

802.11b default data rates (Mbps): 5.5, 11.0
802.11a default data rates (Mbps): 6.0, 12.0, 24.0
802.11g default data rates (Mbps): 5.5, 6.0, 11.0, 12.0, 24.0
Priority default is 6(voice). Currently, only priority 6 is allowed pending future releases.

Here is an configuration example

AAP1(config-if)#packet speed ?
  12.0      Allow 12.0 Mb/s rate
  18.0      Allow 18.0 Mb/s rate
  24.0      Allow 24.0 Mb/s rate
  36.0      Allow 36.0 Mb/s rate
  48.0      Allow 48.0 Mb/s rate
  54.0      Allow 54.0 Mb/s rate
  6.0       Allow 6.0 Mb/s rate
  9.0       Allow 9.0 Mb/s rate
  default   Set default rates
  priority  qos user-priority(first enter rates, followed by priority)

AAP1(config-if)#packet speed default ?
  12.0      Allow 12.0 Mb/s rate
  18.0      Allow 18.0 Mb/s rate
  24.0      Allow 24.0 Mb/s rate
  36.0      Allow 36.0 Mb/s rate
  48.0      Allow 48.0 Mb/s rate
  54.0      Allow 54.0 Mb/s rate
  6.0       Allow 6.0 Mb/s rate
  9.0       Allow 9.0 Mb/s rate
  priority  qos user-priority(first enter rates, followed by priority)

AAP1(config-if)#packet speed default priority ?
  <6-6>  qos user-priority number, currently only support voice priority = 6

AAP1(config-if)#packet speed default priority 6

You can use the “packet timeout” configuration interface command to specify the packet timeout period for a priority. Queued packets whose age has exceeded the timeout threshold will be discarded if they have been declared discard-eligible in the “packet max-retries” command. The timeout default is 35 milliseconds.This command is having following syntax “packet timeout <1-128> priority <0-7>”

AAP1(config-if)#packet timeout ?
  <0-128>  discard up pkt in queue if exceed timeout threshold in msec 

AAP1(config-if)#packet timeout 25 ?
  priority  qos user-priority

AAP1(config-if)#packet timeout 25 p
AAP1(config-if)#packet timeout 25 priority ?
  <0-7>  qos user-priority number

AAP1(config-if)#packet timeout 25 priority 6

Related Posts