OpenWifi-projektet med implementering af en åben Wi-Fi-chip baseret på FPGA og SDR

På den forgangne konference FOSDEM 2020 præsenteret projekt OpenWifi, der udvikler den første åbne implementering af et fuldt Wi-Fi 802.11a/g/n-stak, hvor signalformen og moduleringen defineres softwaremæssigt (SDR, Software Defined Radio). OpenWifi gør det muligt at skabe en fuldt kontrolleret implementering af alle komponenter i en trådløs enhed, inklusive de lavniveau lag, der i almindelige trådløse adaptere realiseres på niveauer, der ikke kan auditeres. Koden programkomponenter, samt schemas og beskrivelser af hardwareblokke på Verilog-sprog til FPGA udgives under AGPLv3-licensen.

Den hardwarekomponent, der blev præsenteret i den fungerende prototype, er baseret på FPGA Xilinx Zynq og en universel sender/modtager (RF) AD9361. OpenWifi anvender SoftMAC-arkitekturen, hvilket indebærer implementeringen af den primære trådløse stak 802.11 (high-MAC) på driverens side og tilstedeværelsen af et low-MAC lag på FPGA-siden. Den trådløse stak bruger mac80211-subsystemet, der leveres af Linux-kernen. Interaktionen med SDR foregår gennem en speciel driver.

OpenWifi-projektet med implementering af en åben Wi-Fi-chip baseret på FPGA og SDR

Hovedfunktioner:

  • Fuld support for 802.11a/g og delvis support for 802.11n MCS 0~7 (indtil videre kun PHY rx). Planlagt support for 802.11ax;
  • Båndbredde på 20MHz og frekvensområde fra 70 MHz til 6 GHz;
  • Driftsformer: Ad-hoc (netværk af klientenheder), adgangspunkt, station og overvågning;
  • Implementering af kanallagsprotokollen på FPGA-siden DCF (Distributed Coordination Function), der anvender CSMA/CA-metoden. Behandlingstiden for en ramme (SIFS) er på niveau med 10us;
  • Justérbare parametre for adgangsprioritet til kanalen: varighed af RTS/CTS, CTS-to-self, SIFS, DIFS, xIFS, slot-time osv.
  • Tidskvantisering (Time slicing) baseret på MAC-adressen;
  • Let ændret båndbredde og frekvens:
    2MHz for 802.11ah og 10MHz for 802.11p;

OpenWifi-projektet med implementering af en åben Wi-Fi-chip baseret på FPGA og SDR

I øjeblikket er der support for understøttelse af SDR-platforme baseret på FPGA
Xilinx ZC706 med sender/mottagere fra Analog Devices FMCOMMS2/3/4, samt forbindelser (FPGA + RF) ADRV9361Z7035 SOM + ADRV1CRR-BOB og ADRV9361Z7035 SOM + ADRV1CRR-FMC. En færdig billede af SD-kort til ARM Linux. Planlagt at støtte forbindelser ADRV9364Z7020 SOM + ADRV1CRR-BOB, Xilinx zed + FMCOMMS2/3/4, Xilinx ZCU102 + FMCOMMS2/3/4 og
Xilinx ZCU102 + ADRV9371. Omkostningerne ved de komponenter, der blev brugt i den første prototype af OpenWifi, var omkring 1300 euro, men der arbejdes på at portere til billigere kort. For eksempel vil omkostningerne ved en løsning bygget på Analog Devices ADRV9364-Z7020 være 700 euro, og baseret på ZYNQ NH7020 — 400 euro.

Test af performance på klientforbindelsen med USB-adapteren TL-WDN4200 N900 til adgangspunktet baseret på OpenWifi opnåede en båndbredde på 30,6 Mbps (TCP) og 38,8 Mbps (UDP) ved dataoverførsel fra adgangspunktet til klienten og 17,0 Mbps (TCP) og 21,5 Mbps (UDP) ved overførsel fra klienten til adgangspunktet. Standard Linux-værktøjer som ifconfig og iwconfig kan bruges til styring, samt det specialiserede værktøj sdrctl, der arbejder via netlink og muliggør styring af SDR på lavt niveau (manipulere registre, ændre tidskvantiseringsindstillinger osv.).

Afspil video

Andre åbne projekter, der eksperimenterer med Wi-Fi-stakken, inkluderer projektet Wime, som udvikler en kompatibel transceiver til IEEE 802.11 a/g/p transmitter baseret på GNU Radio og en almindelig PC. Programmerbare åbne trådløse 802.11-stakke udvikler også projekter som Ziria og Sora (Microsoft Research Software Radio).

OpenWifi-projektet med implementering af en åben Wi-Fi-chip baseret på FPGA og SDR

Kilde: opennet.ru

Køb pålidelig webhosting med DDoS-beskyttelse, VPS VDS-servere 🔥 Køb pålidelig webhosting med DDoS-beskyttelse, VPS VDS-servere | ProHoster