Please note: This project is no longer active. The website is kept online for historic purposes only.
If you´re looking for a Linux driver for your Atheros WLAN device, you should continue here .

Introduction

This page is intended for describing various tests levels that will help validation DFS & TPC features and their associated regulatory constraints. Before doing all tests, you need to operate on a regulated frequency and tell the madwifi driver that you are operating in a country requiring DFS.

To do so, we added the following line to /etc/modprobe.d/ath_pci

options ath_pci autocreate=none countrycode=250

In order to know what happens in various stage, the following commands will enable appropriate debugging information:

athdebug +doth +dothpulses

All those tests are currently done using madwifi driver in the madwifi-dfs branch.

Hardware tests

Those tests requires a spectrum analyser. TBD.

Software pulse detection

Those tests requires the ability to generate software pulses. TBD.

Software ETSI/FCC compliance

Those tests requires the ability to generate software radar detected events. We described here tests required by ETSI. All tests requires at least 3 nodes : node A & B are either STA/AP or IBSS/IBSS and node C is a monitoring node.

Channel Availability Check

This test is described in section 5.3.7.2.1.1 of ETSI document

Channel Availability Check with no radar

In this test, no radar event is generated. We check that nothing is transmitted during the Channel Availability Check period. Steps:

  • Start node C on channel 100
    wlanconfig mon0 create wlandev wifi0 wlanmode monitor
    iwconfig mon0 channel 100
    ifconfig mon0 up
    
  • Start node A on channel 100 at time t0
    wlanconfig wlan0 create wlandev wifi0 wlanmode adhoc
    iwconfig wlan0 channel 100 essid test
    date
    ifconfig wlan0 up
    
  • Stop node A and node C at time t0 + Channel Availability Check + 60 s
    ifconfig mon0 down
    ifconfig wlan0 down
    

Expected results : Logs on node C should show no data between t0 and t0 + Channel Availability Check

Channel Availability Check with radar at beginning

In this test, one radar event is generated at the beginning (ie within 2 sec after t0). We check that nothing is transmitted during the Channel Availability Check period. Steps:

  • Start node C on channel 100
    wlanconfig mon0 create wlandev wifi0 wlanmode monitor
    iwconfig mon0 channel 100
    ifconfig mon0 up
    
  • Start node A on channel 100 at time t0
    wlanconfig wlan0 create wlandev wifi0 wlanmode adhoc
    iwconfig wlan0 channel 100 essid test
    date
    ifconfig wlan0 up
    sleep 1
    iwpriv wlan0 doth_radar
    
  • Stop node A and node C at time t0 + Channel Availability Check + 60 s
    ifconfig mon0 down
    ifconfig wlan0 down
    

Expected results : Logs on node C should show no data between t0 and t0 + Channel Availability Check Time. Moreover, the operating channel should be changed to another one.

Channel Availability Check with radar at end

In this test, one radar event is generated at the end (ie within 2 sec before t0 + Channel Availability Check Time). We check that nothing is transmitted during the Channel Availability Check period. Steps:

  • Start node C on channel 100
    wlanconfig mon0 create wlandev wifi0 wlanmode monitor
    iwconfig mon0 channel 100
    ifconfig mon0 up
    
  • Start node A on channel 100 at time t0
    wlanconfig wlan0 create wlandev wifi0 wlanmode adhoc
    iwconfig wlan0 channel 100 essid test
    date
    ifconfig wlan0 up
    sleep 58
    iwpriv wlan0 doth_radar
    
  • Stop node A and node C at time t0 + Channel Availability Check + 60 s
    ifconfig mon0 down
    ifconfig wlan0 down
    

Expected results : Logs on node C should show no data between t0 and t0 + Channel Availability Check Time. Moreover, the operating channel should be changed to another one.

In-Service Monitoring / Channel Shutdown / Non-Occupancy period

In this test, one radar event is generated after Channel Availability Check Time, at time t0. We check that nothing is transmitted during the Channel Availability Check period. Steps:

  • Start node C on channel 100
    wlanconfig mon0 create wlandev wifi0 wlanmode monitor
    iwconfig mon0 channel 100
    ifconfig mon0 up
    
  • Start node A on channel 100 at time t0
    wlanconfig wlan0 create wlandev wifi0 wlanmode adhoc
    iwconfig wlan0 channel 100 essid test
    ifconfig wlan0 up
    sleep 100
    iwpriv wlan0 doth_radar
    date
    
  • Stop node A and node C at time t0 + Non-Occupancy period + 60 s
    ifconfig mon0 down
    ifconfig wlan0 down
    

Expected results : Logs on node C should be used to measured Channel Move Time and Channel Closing Transmission Time. Channel Move Time is defined as the last time data was transmitted (ie, when the device switch to another channel). Channel Closing Transmission Time is defined as the aggregated transmission time during Channel Move Time. Those values needs to be within the limit defined in standards (see below : Parameters). Moreover, after Channel Move Time, no data show be transmitted.

Software 802.11h compliance

Those tests requires the ability to generate software radar detected events. TBD.

Parameters

ETSI Parameters

  • Channel Availability Check Time : 60 s
  • Channel Move Time : 10 s
  • Channel Closing Transmission Time : 260 ms
  • Non-Occupancy Period : 30 min
  • ETSI 301 893 v1.3.1 :