Skip to content

IEEE 802.11abg Model

Steven Galgano edited this page Aug 18, 2017 · 9 revisions

Contents


Features

The IEEE 802.11abg radio model provides the following set of features:

  1. Supports flow control.

  2. Supports the following waveform modes and data rates with the appropriate timing:

  3. 802.11b (DSS rates: 1, 2, 5.5 and 11 Mbps)

  4. 802.11a/g (OFDM rates: 6, 9, 12, 18, 24, 36, 48 and 54 Mbps)

  5. 802.11b/g (DSS and OFDM rates)

  6. Supports only the DCF channel access function. PCF and beacon transmissions are not supported.

  7. Supports both unicast and broadcast transmissions. Unicast transmissions include the ability to emulate control message (RTS/CTS) behavior as well as retries without actually transmitting the control messages or the re-transmission of the data message. The emulation of unicast does not replicate exponential growth of the contention window as a result of detected failures.

  8. Supports Wi-Fi multimedia (WMM) capabilities. The initial implementation supports the ability to classify four different traffic classes (Background, Best Effort, Video and Voice) where the higher priority classes (voice and video) are serviced first.

  9. Supports user defined Packet Completion Rate curves as a function of SINR.

  10. Default curves are provided for each of the supported 802.11 modulation and data rate combinations. Default curves are based on theoretical equations for determining Bit Error Rate (BER) in an Additive White Gaussian Noise (AWGN) channel.

  11. The IEEE 802.11abg radio model does adjust the interference on a per packet basis based on detected collisions and as such supports negative SINR values as can be seen in the default curves


Packet Completion Rate

The IEEE 802.11abg Packet Completion Rate is specified as curves defined via XML. The curve definitions are comprised of a series SINR values along with their corresponding probability of reception. A curve definition must contain a minimum of two points with one SINR representing POR = 0 and one SINR representing POR = 100. Linear interpolation is preformed when an exact SINR match is not found.

Specifying a packet size (<table> attribute pktsize) in the curve file will adjust the POR based on received packet size. Specifying a pktsize of 0 disregards received packet size when computing the POR.

The POR is obtained using the following calculation when a non-zero pktsize is specified:

POR = POR0^(S1/S0)

Where,

POR0 is the POR value determined from the PCR curve for the given SINR value
S0 is the packet size specified in the curve file (pktsize)
S1 is the received packet size

The emulator provides the following default PCR curve definition.

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pcr SYSTEM "file:///usr/share/emane/dtd/ieee80211pcr.dtd">
<pcr>
  <table pktsize="128">

    <!-- 1Mpbs -->
    <datarate index="1">
      <row sinr="-9.0"  por="0.0"/>
      <row sinr="-8.0"  por="1.4"/>
      <row sinr="-7.0"  por="21.0"/>
      <row sinr="-6.0"  por="63.5"/>
      <row sinr="-5.0"  por="90.7"/>
      <row sinr="-4.0"  por="98.6"/>
      <row sinr="-3.0"  por="99.9"/>
      <row sinr="-2.0"  por="100.0"/>
    </datarate>

    <!-- 2Mpbs -->
    <datarate index="2">
      <row sinr="-6.0"  por="0"/>
      <row sinr="-5.0"  por="1.4"/>
      <row sinr="-4.0"  por="20.6"/>
      <row sinr="-3.0"  por="63.1"/>
      <row sinr="-2.0"  por="90.5"/>
      <row sinr="-1.0"  por="98.5"/>
	    <row sinr="0.0"   por="99.9"/>
      <row sinr="1.0"   por="100.0"/>
    </datarate>

    <!-- 5.5Mpbs -->
    <datarate index="3">
      <row sinr="-2.0"  por="0.0"/>
      <row sinr="-1.0"  por="0.2"/>
      <row sinr="0.0"   por="9.1"/>
      <row sinr="1.0"   por="46.2"/>
      <row sinr="2.0"   por="82.8"/>
      <row sinr="3.0"   por="96.7"/>
      <row sinr="4.0"   por="99.6"/>
      <row sinr="5.0"   por="100.0"/>
    </datarate>

    <!-- 11Mpbs -->
    <datarate index="4">
      <row sinr="1.0"   por="0.0"/>
      <row sinr="2.0"   por="0.2"/>
      <row sinr="3.0"   por="8.9"/>
      <row sinr="4.0"   por="45.8"/>
      <row sinr="5.0"   por="82.5"/>
      <row sinr="6.0"   por="96.7"/>
      <row sinr="7.0"   por="99.6"/>
      <row sinr="8.0"   por="100.0"/>
    </datarate>

    <!-- 6Mpbs -->
    <datarate index="5">
      <row sinr="-2.0"  por="0.0"/>
      <row sinr="-1.0"  por="5.5"/>
      <row sinr="0.0"   por="39.8"/>
      <row sinr="1.0"   por="79.0"/>
      <row sinr="2.0"   por="96.0"/>
      <row sinr="3.0"   por="99.5"/>
      <row sinr="4.0"   por="100.0"/>
    </datarate>

    <!-- 9Mpbs -->
    <datarate index="6">
      <row sinr="-1.0"  por="0.0"/>
      <row sinr="0.0"   por="0.3"/>
      <row sinr="1.0"   por="10.5"/>
      <row sinr="2.0"   por="50.3"/>
      <row sinr="3.0"   por="84.9"/>
      <row sinr="4.0"   por="97.5"/>
      <row sinr="5.0"   por="99.7"/>
      <row sinr="6.0"   por="100.0"/>
    </datarate>

    <!-- 12Mpbs -->
    <datarate index="7">
      <row sinr="3.0"   por="0.0"/>
      <row sinr="4.0"   por="14.3"/>
      <row sinr="5.0"   por="55.2"/>
      <row sinr="6.0"   por="87.5"/>
      <row sinr="7.0"   por="97.8"/>
      <row sinr="8.0"   por="99.8"/>
      <row sinr="9.0"   por="100.0"/>
    </datarate>

    <!-- 18Mpbs -->
    <datarate index="8">
      <row sinr="4.0"   por="0.0"/>
      <row sinr="5.0"   por="1.7"/>
      <row sinr="6.0"   por="21.5"/>
      <row sinr="7.0"   por="65.0"/>
      <row sinr="8.0"   por="91.2"/>
      <row sinr="9.0"   por="98.7"/>
      <row sinr="10.0"  por="99.9"/>
      <row sinr="11.0"  por="100.0"/>
    </datarate>

    <!-- 24Mpbs -->
    <datarate index="9">
      <row sinr="9.0"   por="0.0"/>
      <row sinr="10.0"  por="2.2"/>
      <row sinr="11.0"  por="23.8"/>
      <row sinr="12.0"  por="64.4"/>
      <row sinr="13.0"  por="90.4"/>
      <row sinr="14.0"  por="98.4"/>
      <row sinr="15.0"  por="99.8"/>
      <row sinr="16.0"  por="100.0"/>
    </datarate>

    <!-- 36Mpbs -->
    <datarate index="10">
      <row sinr="10.0"  por="0.0"/>
      <row sinr="11.0"  por="0.1"/>
      <row sinr="12.0"  por="4.6"/>
      <row sinr="13.0"  por="32.4"/>
      <row sinr="14.0"  por="72.8"/>
      <row sinr="15.0"  por="93.4"/>
      <row sinr="16.0"  por="99.0"/>
      <row sinr="17.0"  por="99.9"/>
      <row sinr="18.0"  por="100.0"/>
    </datarate>

    <!-- 48Mpbs -->
    <datarate index="11">
      <row sinr="16.0"  por="0.0"/>
      <row sinr="17.0"  por="1.3"/>
      <row sinr="18.0"  por="15.8"/>
      <row sinr="19.0"  por="53.5"/>
      <row sinr="20.0"  por="84.9"/>
      <row sinr="21.0"  por="96.8"/>
      <row sinr="22.0"  por="99.6"/>
      <row sinr="23.0"  por="100.0"/>
    </datarate>

    <!-- 54Mpbs -->
    <datarate index="12">
      <row sinr="17.0"  por="0.0"/>
      <row sinr="18.0"  por="0.2"/>
      <row sinr="19.0"  por="5.7"/>
      <row sinr="20.0"  por="32.4"/>
      <row sinr="21.0"  por="71.3"/>
      <row sinr="22.0"  por="92.4"/>
      <row sinr="23.0"  por="99.9"/>
      <row sinr="24.0"  por="100.0"/>
    </datarate>
  </table> 
</pcr>

The above definition produces the following PCR curves for IEEE 802.11b (DSS):

The above definition produces the following PCR curves for IEEE 802.11ag (OFDM):


Configuration Parameters

The following configuration parameters are available to tailor layer functionality:

aifs0

Defines the arbitration inter frame spacing time for category 0 and contributes to the calculation of channel access overhead when transmitting category 0 packets. If WMM is disabled, aifs0 is used for all traffic.

Type: float
Running-State Modifiable: no
Occurrence Range: [1,1]
Value Range: [0.000000,0.000255]
Default Value(s): 0.000002

aifs1

Defines the arbitration inter frame spacing time for category 1 and contributes to the calculation of channel access overhead when transmitting category 1 packets.

Type: float
Running-State Modifiable: no
Occurrence Range: [1,1]
Value Range: [0.000000,0.000255]
Default Value(s): 0.000002

aifs2

Defines the arbitration inter frame spacing time for category 2 and contributes to the calculation of channel access overhead when transmitting category 2 packets.

Type: float
Running-State Modifiable: no
Occurrence Range: [1,1]
Value Range: [0.000000,0.000255]
Default Value(s): 0.000002

aifs3

Defines the arbitration inter frame spacing time for category 3 and contributes to the calculation of channel access overhead when transmitting category 3 packets.

Type: float
Running-State Modifiable: no
Occurrence Range: [1,1]
Value Range: [0.000000,0.000255]
Default Value(s): 0.000001

channelactivityestimationtimer

Defines the channel activity estimation timer in seconds. The timer determines the lag associated with the statistical model used to estimate number of transmitting common and hidden neighbors based on channel activity.

Type: float
Running-State Modifiable: no
Occurrence Range: [1,1]
Value Range: [0.001000,1.000000]
Default Value(s): 0.100000

cwmax0

Defines the maximum contention window size in slots for category 0.

Type: uint16
Running-State Modifiable: yes
Occurrence Range: [1,1]
Value Range: [1,65535]
Default Value(s): 1024

cwmax1

Defines the maximum contention window size in slots for category 1.

Type: uint16
Running-State Modifiable: yes
Occurrence Range: [1,1]
Value Range: [1,65535]
Default Value(s): 1024

cwmax2

Defines the maximum contention window size in slots for category 2.

Type: uint16
Running-State Modifiable: yes
Occurrence Range: [1,1]
Value Range: [1,65535]
Default Value(s): 64

cwmax3

Defines the maximum contention window size in slots for category 3.

Type: uint16
Running-State Modifiable: yes
Occurrence Range: [1,1]
Value Range: [1,65535]
Default Value(s): 16

cwmin0

Defines the minimum contention window size in slots for category 0.

Type: uint16
Running-State Modifiable: yes
Occurrence Range: [1,1]
Value Range: [1,65535]
Default Value(s): 32

cwmin1

Defines the minimum contention window size in slots for category 1.

Type: uint16
Running-State Modifiable: yes
Occurrence Range: [1,1]
Value Range: [1,65535]
Default Value(s): 32

cwmin2

Defines the minimum contention window size in slots for category 2.

Type: uint16
Running-State Modifiable: yes
Occurrence Range: [1,1]
Value Range: [1,65535]
Default Value(s): 16

cwmin3

Defines the minimum contention window size in slots for category 3.

Type: uint16
Running-State Modifiable: yes
Occurrence Range: [1,1]
Value Range: [1,65535]
Default Value(s): 8

distance

Defines the max propagation distance in meters used to compute slot size.

Where,

slotTime = fixedSlotTime + propagationTime
fixedSlotTime = 9
propagationTime = distance/300

Type: uint32
Running-State Modifiable: no
Occurrence Range: [1,1]
Value Range: [0,4294967295]
Default Value(s): 1000

enablepromiscuousmode

Defines whether promiscuous mode is enabled or not. If promiscuous mode is enabled, all received packets (intended for the given node or not) that pass the probability of reception check are sent upstream to the transport.

Type: bool
Running-State Modifiable: yes
Occurrence Range: [1,1]
Value Range: [no,yes]
Default Value(s): no

flowcontrolenable

Defines whether flow control is enabled. Flow control only works with the virtual transport and the setting must match the setting within the virtual transport configuration.

Type: bool
Running-State Modifiable: no
Occurrence Range: [1,1]
Value Range: [no,yes]
Default Value(s): no

flowcontroltokens

Defines the maximum number of flow control tokens (packet transmission units) that can be processed from the virtual transport without being refreshed. The number of available tokens at any given time is coordinated with the virtual transport and when the token count reaches zero, no further packets are transmitted causing application socket queues to backup.

Type: uint16
Running-State Modifiable: no
Occurrence Range: [1,1]
Value Range: [1,65535]
Default Value(s): 10

mode

Defines the 802.11abg mode of operation. 0|2 = 802.11b (DSS), 1 = 802.11a/g (OFDM), and 3 = 802.11b/g (mixed mode).

Type: uint8
Running-State Modifiable: no
Occurrence Range: [1,1]
Value Range: [0,3]
Default Value(s): 0

msdu0

MSDU category 0

Type: uint16
Running-State Modifiable: no
Occurrence Range: [1,1]
Value Range: [0,65535]
Default Value(s): 65535

msdu1

MSDU category 1

Type: uint16
Running-State Modifiable: no
Occurrence Range: [1,1]
Value Range: [0,65535]
Default Value(s): 65535

msdu2

MSDU category 2

Type: uint16
Running-State Modifiable: no
Occurrence Range: [1,1]
Value Range: [0,65535]
Default Value(s): 65535

msdu3

MSDU category 3

Type: uint16
Running-State Modifiable: no
Occurrence Range: [1,1]
Value Range: [0,65535]
Default Value(s): 65535

multicastrate

Defines the data rate to be used when transmitting broadcast/multicast packets. The index (1 through 12) to rate (Mbps) mapping is as follows: [1 2 5.5 11 6 9 12 18 24 36 48 54]. DSS rates [1 2 5.5 11] Mbps are valid when mode is set to 802.11b or 802.11b/g. OFDM rates [6 9 12 18 24 36 48 54] Mbps are valid when mode is set to 802.11a/g or 802.11b/g.

Type: uint8
Running-State Modifiable: yes
Occurrence Range: [1,1]
Value Range: [1,12]
Default Value(s): 1

neighbormetricdeletetime

Defines the time in seconds of no RF receptions from a given neighbor before it is removed from the neighbor table.

Type: float
Running-State Modifiable: no
Occurrence Range: [1,1]
Value Range: [1.000000,3660.000000]
Default Value(s): 60.000000

neighbortimeout

Defines the neighbor timeout in seconds for the neighbor estimation algorithm.

Type: float
Running-State Modifiable: no
Occurrence Range: [1,1]
Value Range: [0.000000,3600.000000]
Default Value(s): 30.000000

pcrcurveuri

Defines the URI of the Packet Completion Rate (PCR) curve file. The PCR curve file contains probability of reception curves as a function of Signal to Interference plus Noise Ratio (SINR) for each data rate.

Type: string
Running-State Modifiable: no
Value Required: yes
Occurrence Range: [1,1]

queuesize0

Defines the queue size for category 0.

Type: uint8
Running-State Modifiable: no
Occurrence Range: [1,1]
Value Range: [0,255]
Default Value(s): 255

queuesize1

Defines the queue size for category 1.

Type: uint8
Running-State Modifiable: no
Occurrence Range: [1,1]
Value Range: [0,255]
Default Value(s): 255

queuesize2

Defines the queue size for category 2.

Type: uint8
Running-State Modifiable: no
Occurrence Range: [1,1]
Value Range: [0,255]
Default Value(s): 255

queuesize3

Defines the queue size for category 3.

Type: uint8
Running-State Modifiable: no
Occurrence Range: [1,1]
Value Range: [0,255]
Default Value(s): 255

radiometricenable

Defines if radio metrics will be reported up via the Radio to Router Interface (R2RI).

Type: bool
Running-State Modifiable: no
Occurrence Range: [1,1]
Value Range: [no,yes]
Default Value(s): no

radiometricreportinterval

Defines the metric report interval in seconds in support of the R2RI feature.

Type: float
Running-State Modifiable: no
Occurrence Range: [1,1]
Value Range: [0.100000,60.000000]
Default Value(s): 1.000000

retrylimit0

Defines the maximum number of retries attempted for category 0.

Type: uint8
Running-State Modifiable: no
Occurrence Range: [1,1]
Value Range: [0,255]
Default Value(s): 2

retrylimit1

Defines the maximum number of retries attempted for category 1.

Type: uint8
Running-State Modifiable: no
Occurrence Range: [1,1]
Value Range: [0,255]
Default Value(s): 2

retrylimit2

Defines the maximum number of retries attempted for category 2.

Type: uint8
Running-State Modifiable: no
Occurrence Range: [1,1]
Value Range: [0,255]
Default Value(s): 2

retrylimit3

Defines the maximum number of retries attempted for category 3.

Type: uint8
Running-State Modifiable: no
Occurrence Range: [1,1]
Value Range: [0,255]
Default Value(s): 2

rtsthreshold

Defines a threshold in bytes for when RTS/CTS is used as part of the carrier sensing channel access protocol when transmitting unicast packets.

Type: uint16
Running-State Modifiable: no
Occurrence Range: [1,1]
Value Range: [0,65535]
Default Value(s): 255

txop0

Defines the transmit opportunity time for category 0.

Type: float
Running-State Modifiable: no
Occurrence Range: [1,1]
Value Range: [0.000000,1.000000]
Default Value(s): 0.000000

txop1

Defines the transmit opportunity time for category 1.

Type: float
Running-State Modifiable: no
Occurrence Range: [1,1]
Value Range: [0.000000,1.000000]
Default Value(s): 0.000000

txop2

Defines the transmit opportunity time for category 2.

Type: float
Running-State Modifiable: no
Occurrence Range: [1,1]
Value Range: [0.000000,1.000000]
Default Value(s): 0.000000

txop3

Defines the transmit opportunity time for category 3.

Type: float
Running-State Modifiable: no
Occurrence Range: [1,1]
Value Range: [0.000000,1.000000]
Default Value(s): 0.000000

unicastrate

Defines the data rate to be used when transmitting unicast packets. The index (1 through 12) to rate (Mbps) mapping is as follows: [1 2 5.5 11 6 9 12 18 24 36 48 54]. DSS rates [1 2 5.5 11] Mbps are valid when mode is set to 802.11b or 802.11b/g. OFDM rates [6 9 12 18 24 36 48 54] Mbps are valid when mode is set to 802.11a/g or 802.11b/g.

Type: uint8
Running-State Modifiable: yes
Occurrence Range: [1,1]
Value Range: [1,12]
Default Value(s): 4

wmmenable

Defines if wireless multimedia mode (WMM) is enabled.

Type: bool
Running-State Modifiable: no
Occurrence Range: [1,1]
Value Range: [no,yes]
Default Value(s): no


Example XML

IEEE 802.11abg configuration is specified using two files:

  1. NEM definition file
  2. MAC definition file

The NEM definition file groups the mac definition file along with emulator physical layer configuration and the transport definition file.

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE nem SYSTEM "file:///usr/share/emane/dtd/nem.dtd">
<nem>
  <transport definition="transvirtual.xml"/>
  <mac definition="ieee80211abgmac.xml"/>
  <phy>
    <param name="fixedantennagain"         value="0.0"/>
    <param name="fixedantennagainenable"   value="on"/>
    <param name="bandwidth"                value="20M"/>
    <param name="noisemode"                value="none"/>
    <param name="propagationmodel"         value="precomputed"/>
    <param name="systemnoisefigure"        value="4.0"/>
    <param name="subid"                    value="2"/>
    <param name="txpower"                  value="0.0"/>
    <param name="subid"                    value="1"/>
  </phy>
</nem>

The mac definition file specifies the model DLL the emulator will load and the desired model configuration.

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mac SYSTEM "file:///usr/share/emane/dtd/mac.dtd">
<mac library="ieee80211abgmaclayer">
  <param name="mode"                  value="0"/>
  <param name="enablepromiscuousmode" value="off"/>
  <param name="distance"              value="1000"/>
  <param name="unicastrate"           value="4"/>
  <param name="multicastrate"         value="1"/>
  <param name="rtsthreshold"          value="0"/>
  <param name="pcrcurveuri"
         value="file:///usr/share/emane/xml/models/mac/ieee80211abg/ieee80211pcr.xml"/>
  <param name="flowcontrolenable"     value="off"/>
  <param name="flowcontroltokens"     value="10"/>
</mac>

Statistics

The below statistics can be accessed using emanesh.

Name Type Clearable Description
avgDownstreamProcessingDelay0 float yes Average downstream processing delay
avgDownstreamProcessingDelay1 float yes Average downstream processing delay
avgDownstreamProcessingDelay2 float yes Average downstream processing delay
avgDownstreamProcessingDelay3 float yes Average downstream processing delay
avgProcessAPIQueueDepth double yes Average API queue depth for a processUpstreamPacket, processUpstreamControl, processDownstreamPacket, processDownstreamControl, processEvent and processTimedEvent.
avgProcessAPIQueueWait double yes Average API queue wait for a processUpstreamPacket, processUpstreamControl, processDownstreamPacket, processDownstreamControl, processEvent and processTimedEvent in microseconds.
avgTimedEventLatency double yes
avgTimedEventLatencyRatio double yes Average ratio of the delta between the scheduled timer expiration and the actual firing over the requested duration. An average ratio approaching 1 indicates that timer latencies are large in comparison to the requested durations.
avgUpstreamProcessingDelay0 float yes Average upstream processing delay
avgUpstreamProcessingDelay1 float yes Average upstream processing delay
avgUpstreamProcessingDelay2 float yes Average upstream processing delay
avgUpstreamProcessingDelay3 float yes Average upstream processing delay
numBroadcastBytesTooLarge0 uint32 yes
numBroadcastBytesTooLarge1 uint32 yes
numBroadcastBytesTooLarge2 uint32 yes
numBroadcastBytesTooLarge3 uint32 yes
numBroadcastBytesUnsupported uint32 yes
numBroadcastPacketsTooLarge0 uint32 yes
numBroadcastPacketsTooLarge1 uint32 yes
numBroadcastPacketsTooLarge2 uint32 yes
numBroadcastPacketsTooLarge3 uint32 yes
numBroadcastPacketsUnsupported uint32 yes
numDownstreamBroadcastDataDiscardDueToTxop uint32 yes
numDownstreamBytesBroadcastGenerated0 uint64 yes Number of layer generated downstream broadcast bytes
numDownstreamBytesBroadcastGenerated1 uint64 yes Number of layer generated downstream broadcast bytes
numDownstreamBytesBroadcastGenerated2 uint64 yes Number of layer generated downstream broadcast bytes
numDownstreamBytesBroadcastGenerated3 uint64 yes Number of layer generated downstream broadcast bytes
numDownstreamBytesBroadcastRx0 uint64 yes Number of downstream broadcast bytes received
numDownstreamBytesBroadcastRx1 uint64 yes Number of downstream broadcast bytes received
numDownstreamBytesBroadcastRx2 uint64 yes Number of downstream broadcast bytes received
numDownstreamBytesBroadcastRx3 uint64 yes Number of downstream broadcast bytes received
numDownstreamBytesBroadcastTx0 uint64 yes Number of downstream broadcast bytes transmitted
numDownstreamBytesBroadcastTx1 uint64 yes Number of downstream broadcast bytes transmitted
numDownstreamBytesBroadcastTx2 uint64 yes Number of downstream broadcast bytes transmitted
numDownstreamBytesBroadcastTx3 uint64 yes Number of downstream broadcast bytes transmitted
numDownstreamBytesUnicastGenerated0 uint64 yes Number of layer generated downstream unicast bytes
numDownstreamBytesUnicastGenerated1 uint64 yes Number of layer generated downstream unicast bytes
numDownstreamBytesUnicastGenerated2 uint64 yes Number of layer generated downstream unicast bytes
numDownstreamBytesUnicastGenerated3 uint64 yes Number of layer generated downstream unicast bytes
numDownstreamBytesUnicastRx0 uint64 yes Number of downstream unicast bytes received
numDownstreamBytesUnicastRx1 uint64 yes Number of downstream unicast bytes received
numDownstreamBytesUnicastRx2 uint64 yes Number of downstream unicast bytes received
numDownstreamBytesUnicastRx3 uint64 yes Number of downstream unicast bytes received
numDownstreamBytesUnicastTx0 uint64 yes Number of downstream unicast bytes transmitted
numDownstreamBytesUnicastTx1 uint64 yes Number of downstream unicast bytes transmitted
numDownstreamBytesUnicastTx2 uint64 yes Number of downstream unicast bytes transmitted
numDownstreamBytesUnicastTx3 uint64 yes Number of downstream unicast bytes transmitted
numDownstreamPacketsBroadcastDrop0 uint64 yes Number of downstream broadcast packets dropped
numDownstreamPacketsBroadcastDrop1 uint64 yes Number of downstream broadcast packets dropped
numDownstreamPacketsBroadcastDrop2 uint64 yes Number of downstream broadcast packets dropped
numDownstreamPacketsBroadcastDrop3 uint64 yes Number of downstream broadcast packets dropped
numDownstreamPacketsBroadcastGenerated0 uint64 yes Number of layer generated downstream broadcast packets
numDownstreamPacketsBroadcastGenerated1 uint64 yes Number of layer generated downstream broadcast packets
numDownstreamPacketsBroadcastGenerated2 uint64 yes Number of layer generated downstream broadcast packets
numDownstreamPacketsBroadcastGenerated3 uint64 yes Number of layer generated downstream broadcast packets
numDownstreamPacketsBroadcastRx0 uint64 yes Number of downstream broadcast packets received
numDownstreamPacketsBroadcastRx1 uint64 yes Number of downstream broadcast packets received
numDownstreamPacketsBroadcastRx2 uint64 yes Number of downstream broadcast packets received
numDownstreamPacketsBroadcastRx3 uint64 yes Number of downstream broadcast packets received
numDownstreamPacketsBroadcastTx0 uint64 yes Number of downstream broadcast packets transmitted
numDownstreamPacketsBroadcastTx1 uint64 yes Number of downstream broadcast packets transmitted
numDownstreamPacketsBroadcastTx2 uint64 yes Number of downstream broadcast packets transmitted
numDownstreamPacketsBroadcastTx3 uint64 yes Number of downstream broadcast packets transmitted
numDownstreamPacketsUnicastDrop0 uint64 yes Number of downstream unicast packets dropped
numDownstreamPacketsUnicastDrop1 uint64 yes Number of downstream unicast packets dropped
numDownstreamPacketsUnicastDrop2 uint64 yes Number of downstream unicast packets dropped
numDownstreamPacketsUnicastDrop3 uint64 yes Number of downstream unicast packets dropped
numDownstreamPacketsUnicastGenerated0 uint64 yes Number of layer generated downstream unicast packets
numDownstreamPacketsUnicastGenerated1 uint64 yes Number of layer generated downstream unicast packets
numDownstreamPacketsUnicastGenerated2 uint64 yes Number of layer generated downstream unicast packets
numDownstreamPacketsUnicastGenerated3 uint64 yes Number of layer generated downstream unicast packets
numDownstreamPacketsUnicastRx0 uint64 yes Number of downstream unicast packets received
numDownstreamPacketsUnicastRx1 uint64 yes Number of downstream unicast packets received
numDownstreamPacketsUnicastRx2 uint64 yes Number of downstream unicast packets received
numDownstreamPacketsUnicastRx3 uint64 yes Number of downstream unicast packets received
numDownstreamPacketsUnicastTx0 uint64 yes Number of downstream unicast packets transmitted
numDownstreamPacketsUnicastTx1 uint64 yes Number of downstream unicast packets transmitted
numDownstreamPacketsUnicastTx2 uint64 yes Number of downstream unicast packets transmitted
numDownstreamPacketsUnicastTx3 uint64 yes Number of downstream unicast packets transmitted
numDownstreamUnicastDataDiscardDueToRetries uint32 yes
numDownstreamUnicastDataDiscardDueToTxop uint32 yes
numDownstreamUnicastRtsCtsDataDiscardDueToRetries uint32 yes
numHighWaterMark0 uint32 yes
numHighWaterMark1 uint32 yes
numHighWaterMark2 uint32 yes
numHighWaterMark3 uint32 yes
numHighWaterMax0 uint32 yes
numHighWaterMax1 uint32 yes
numHighWaterMax2 uint32 yes
numHighWaterMax3 uint32 yes
numOneHopNbrHighWaterMark uint32 yes
numRxOneHopNbrListEvents uint32 yes
numRxOneHopNbrListInvalidEvents uint32 yes
numTwoHopNbrHighWaterMark uint32 yes
numTxOneHopNbrListEvents uint32 yes
numUnicastBytesTooLarge0 uint32 yes
numUnicastBytesTooLarge1 uint32 yes
numUnicastBytesTooLarge2 uint32 yes
numUnicastBytesTooLarge3 uint32 yes
numUnicastBytesUnsupported uint32 yes
numUnicastPacketsTooLarge0 uint32 yes
numUnicastPacketsTooLarge1 uint32 yes
numUnicastPacketsTooLarge2 uint32 yes
numUnicastPacketsTooLarge3 uint32 yes
numUnicastPacketsUnsupported uint32 yes
numUpstreamBroadcastDataDiscardDueToClobberRxDuringTx uint32 yes
numUpstreamBroadcastDataDiscardDueToClobberRxHiddenBusy uint32 yes
numUpstreamBroadcastDataDiscardDueToSinr uint32 yes
numUpstreamBroadcastDataNoiseHiddenRx uint32 yes
numUpstreamBroadcastDataNoiseRxCommon uint32 yes
numUpstreamBytesBroadcastRx0 uint64 yes Number of upstream broadcast bytes received
numUpstreamBytesBroadcastRx1 uint64 yes Number of upstream broadcast bytes received
numUpstreamBytesBroadcastRx2 uint64 yes Number of upstream broadcast bytes received
numUpstreamBytesBroadcastRx3 uint64 yes Number of upstream broadcast bytes received
numUpstreamBytesBroadcastTx0 uint64 yes Number of updtream broadcast bytes transmitted
numUpstreamBytesBroadcastTx1 uint64 yes Number of updtream broadcast bytes transmitted
numUpstreamBytesBroadcastTx2 uint64 yes Number of updtream broadcast bytes transmitted
numUpstreamBytesBroadcastTx3 uint64 yes Number of updtream broadcast bytes transmitted
numUpstreamBytesUnicastRx0 uint64 yes Number upstream unicast bytes received
numUpstreamBytesUnicastRx1 uint64 yes Number upstream unicast bytes received
numUpstreamBytesUnicastRx2 uint64 yes Number upstream unicast bytes received
numUpstreamBytesUnicastRx3 uint64 yes Number upstream unicast bytes received
numUpstreamBytesUnicastTx0 uint64 yes Number of upstream unicast bytes transmitted
numUpstreamBytesUnicastTx1 uint64 yes Number of upstream unicast bytes transmitted
numUpstreamBytesUnicastTx2 uint64 yes Number of upstream unicast bytes transmitted
numUpstreamBytesUnicastTx3 uint64 yes Number of upstream unicast bytes transmitted
numUpstreamPacketsBroadcastDrop0 uint64 yes Number of upstream broadcast packets dropped
numUpstreamPacketsBroadcastDrop1 uint64 yes Number of upstream broadcast packets dropped
numUpstreamPacketsBroadcastDrop2 uint64 yes Number of upstream broadcast packets dropped
numUpstreamPacketsBroadcastDrop3 uint64 yes Number of upstream broadcast packets dropped
numUpstreamPacketsBroadcastRx0 uint64 yes Number of upstream broadcast packets received
numUpstreamPacketsBroadcastRx1 uint64 yes Number of upstream broadcast packets received
numUpstreamPacketsBroadcastRx2 uint64 yes Number of upstream broadcast packets received
numUpstreamPacketsBroadcastRx3 uint64 yes Number of upstream broadcast packets received
numUpstreamPacketsBroadcastTx0 uint64 yes Number of upstream broadcast packets transmitted
numUpstreamPacketsBroadcastTx1 uint64 yes Number of upstream broadcast packets transmitted
numUpstreamPacketsBroadcastTx2 uint64 yes Number of upstream broadcast packets transmitted
numUpstreamPacketsBroadcastTx3 uint64 yes Number of upstream broadcast packets transmitted
numUpstreamPacketsUnicastDrop0 uint64 yes Number of upstream unicast packets dropped
numUpstreamPacketsUnicastDrop1 uint64 yes Number of upstream unicast packets dropped
numUpstreamPacketsUnicastDrop2 uint64 yes Number of upstream unicast packets dropped
numUpstreamPacketsUnicastDrop3 uint64 yes Number of upstream unicast packets dropped
numUpstreamPacketsUnicastRx0 uint64 yes Number upstream unicast packets received
numUpstreamPacketsUnicastRx1 uint64 yes Number upstream unicast packets received
numUpstreamPacketsUnicastRx2 uint64 yes Number upstream unicast packets received
numUpstreamPacketsUnicastRx3 uint64 yes Number upstream unicast packets received
numUpstreamPacketsUnicastTx0 uint64 yes Number of upstream unicast packets transmitted
numUpstreamPacketsUnicastTx1 uint64 yes Number of upstream unicast packets transmitted
numUpstreamPacketsUnicastTx2 uint64 yes Number of upstream unicast packets transmitted
numUpstreamPacketsUnicastTx3 uint64 yes Number of upstream unicast packets transmitted
numUpstreamUnicastDataDiscardDueToClobberRxDuringTx uint32 yes
numUpstreamUnicastDataDiscardDueToClobberRxHiddenBusy uint32 yes
numUpstreamUnicastDataDiscardDueToSinr uint32 yes
numUpstreamUnicastDataNoiseHiddenRx uint32 yes
numUpstreamUnicastDataNoiseRxCommon uint32 yes
numUpstreamUnicastRtsCtsDataRxFromPhy uint32 yes
numUpstreamUnicastRtsCtsRxFromPhy uint32 yes
processedConfiguration uint64 yes
processedDownstreamControl uint64 yes
processedDownstreamPackets uint64 yes
processedEvents uint64 yes
processedTimedEvents uint64 yes
processedUpstreamControl uint64 yes
processedUpstreamPackets uint64 yes

Statistic Tables

The below statistics can be accessed using emanesh.

Name Clearable Description
BroadcastPacketAcceptTable0 yes Broadcast packets accepted
BroadcastPacketAcceptTable1 yes Broadcast packets accepted
BroadcastPacketAcceptTable2 yes Broadcast packets accepted
BroadcastPacketAcceptTable3 yes Broadcast packets accepted
BroadcastPacketDropTable0 yes Broadcast packets dropped by reason code
BroadcastPacketDropTable1 yes Broadcast packets dropped by reason code
BroadcastPacketDropTable2 yes Broadcast packets dropped by reason code
BroadcastPacketDropTable3 yes Broadcast packets dropped by reason code
EventReceptionTable yes Received event counts
NeighborMetricTable no Neighbor Metric Table
NeighborStatusTable no Neighbor Status Table
OneHopNeighborTable no Current One Hop Neighbors
TwoHopNeighborTable no Current Two Hop Neighbors
UnicastPacketAcceptTable0 yes Unicast packets accepted
UnicastPacketAcceptTable1 yes Unicast packets accepted
UnicastPacketAcceptTable2 yes Unicast packets accepted
UnicastPacketAcceptTable3 yes Unicast packets accepted
UnicastPacketDropTable0 yes Unicast packets dropped by reason code
UnicastPacketDropTable1 yes Unicast packets dropped by reason code
UnicastPacketDropTable2 yes Unicast packets dropped by reason code
UnicastPacketDropTable3 yes Unicast packets dropped by reason code