Projecte OpenWifi amb la implementació d'un xip Wi-Fi obert basat en FPGA i SDR

A la darrera conferència FOSDEM 2020 presentat projecte OpenWifi, desenvolupant la primera implementació oberta de la pila completa de Wi-Fi 802.11a/g/n, la forma del senyal i la modulació en què s'especifica al programari (SDR, Software Defined Radio). OpenWifi permet crear una implementació totalment controlada de tots els components d'un dispositiu sense fil, incloses les capes de baix nivell, que en els adaptadors sense fil convencionals s'implementen a nivell de xips que no són auditables. Codi components de programariI esquemes i descripcions Els blocs de maquinari en llenguatge Verilog per a FPGA es distribueixen sota la llicència AGPLv3.

El component de maquinari del prototip de treball demostrat es basa en el FPGA Xilinx Zynq i el transceptor universal (RF) AD9361. OpenWifi utilitza l'arquitectura SoftMAC, que implica la implementació de la pila sense fil 802.11 principal (high-MAC) al costat del controlador i la presència d'una capa de baix MAC al costat FPGA. La pila sense fil utilitza el subsistema mac80211 proporcionat pel nucli Linux. La interacció amb SDR es realitza mitjançant un controlador especial.

Projecte OpenWifi amb la implementació d'un xip Wi-Fi obert basat en FPGA i SDR

Característiques clau:

  • Compatibilitat total per a 802.11a/g i suport parcial per a 802.11n MCS 0~7 (només de moment PHY rx). Hi ha plans per donar suport a 802.11ax;
  • Ample de banda 20MHz i rang de freqüència de 70 MHz a 6 GHz;
  • Modes de funcionament: Ad-hoc (xarxa de dispositius client), punt d'accés, estació i monitorització;
  • Implementació del protocol de capa d'enllaç al costat FPGA DCF (Funció de Coordinació Distribuïda), mitjançant el mètode CSMA/CA. Proporciona temps de processament de fotogrames (SIFS) al nivell 10us;
  • Paràmetres de prioritat d'accés al canal configurables: durada RTS/CTS, CTS-to-self, SIFS, DIFS, xIFS, slot-time, etc.
  • Tall de temps (Tall de temps) basat en l'adreça MAC;
  • Ample de banda i freqüència canviables fàcilment:
    2MHz per a 802.11ah i 10MHz per a 802.11p;

Projecte OpenWifi amb la implementació d'un xip Wi-Fi obert basat en FPGA i SDR

Actualment, OpenWifi ofereix donar suport Plataformes SDR basades en FPGA
Xilinx ZC706 amb transceptors Analog Devices FMCOMMS2/3/4, així com paquets (FPGA + RF) ADRV9361Z7035 SOM + ADRV1CRR-BOB i ADRV9361Z7035 SOM + ADRV1CRR-FMC. Format per a la càrrega imatge acabada Targetes SD basades en ARM Linux. Hi ha plans per admetre ADRV9364Z7020 SOM + ADRV1CRR-BOB, Xilinx zed + FMCOMMS2/3/4, Xilinx ZCU102 + FMCOMMS2/3/4 i
Xilinx ZCU102 + ADRV9371. El cost dels components implicats en el primer prototip d'OpenWifi era d'uns 1300 euros, però s'està duent a terme la portabilitat a plaques més barates. Per exemple, el cost d'una solució basada en Analog Devices ADRV9364-Z7020 serà de 700 euros, i sobre la base ZYNQ NH7020 - 400 euros.

Provar el rendiment de connectar un client amb un adaptador USB TL-WDN4200 N900 a un punt d'accés basat en OpenWifi ens va permetre aconseguir un rendiment de 30.6 Mbps (TCP) i 38.8 Mbps (UDP) en transferir dades des del punt d'accés al client i 17.0 Mbps (TCP) i 21.5 Mbps (UDP) quan es transmet des del client al punt d'accés. Per a la gestió, es poden utilitzar utilitats estàndard de Linux, com ifconfig i iwconfig, així com una utilitat especialitzada sdrctl, que funciona mitjançant netlink i permet controlar el funcionament de SDR a un nivell baix (manipular registres, canviar la configuració de la franja de temps, etc.). etc.).

Entre altres projectes oberts que experimenten amb la pila Wi-Fi, podem destacar el projecte WimeDesenvolupament compatible amb IEEE 802.11 a/g/p transmissor basat en GNU Radio i un ordinador normal. Les piles sense fil 802.11 obertes de programari també estan desenvolupant projectes Ziria и Sora (Microsoft Research Software Radio).

Projecte OpenWifi amb la implementació d'un xip Wi-Fi obert basat en FPGA i SDR

Font: opennet.ru

Afegeix comentari