ืคืจื•ื™ืงื˜ OpenWifi ืขื ื”ื˜ืžืขืช ืฉื‘ื‘ Wi-Fi ืคืชื•ื— ื”ืžื‘ื•ืกืก ืขืœ FPGA ื•-SDR

ื‘ื›ื ืก FOSDEM 2020 ื”ืื—ืจื•ืŸ ื”ืฆื™ื’ ืคืจื•ื™ืงื˜ openwifi, ืคื™ืชื•ื— ื”ื™ื™ืฉื•ื ื”ืคืชื•ื— ื”ืจืืฉื•ืŸ ืฉืœ ืขืจื™ืžืช ื”-Wi-Fi 802.11a/g/n ื”ืžืœืื”, ืฉืฆื•ืจืช ื”ืื•ืช ื•ื”ืืคื ื•ืŸ ืฉื‘ื• ืžืฆื•ื™ื ื™ื ื‘ืชื•ื›ื ื” (SDR, Software Defined Radio). OpenWifi ืžืืคืฉืจืช ืœื™ืฆื•ืจ ืžื™ืžื•ืฉ ืžื‘ื•ืงืจ ืžืœื ืฉืœ ื›ืœ ืจื›ื™ื‘ื™ ื”ืชืงืŸ ืืœื—ื•ื˜ื™, ื›ื•ืœืœ ืฉื›ื‘ื•ืช ื‘ืจืžื” ื ืžื•ื›ื”, ืืฉืจ ื‘ืžืชืืžื™ื ืืœื—ื•ื˜ื™ื™ื ืงื•ื ื‘ื ืฆื™ื•ื ืœื™ื™ื ืžื™ื•ืฉืžื™ื ื‘ืจืžืช ืฉื‘ื‘ื™ื ืฉืื™ื ื ื ื™ืชื ื™ื ืœื‘ื™ืงื•ืจืช. ืงื•ื“ ืจื›ื™ื‘ื™ ืชื•ื›ื ื”ื• - ื“ื™ืื’ืจืžื•ืช ื•ืชื™ืื•ืจื™ื ื‘ืœื•ืงื™ ื—ื•ืžืจื” ื‘ืฉืคืช Verilog ืขื‘ื•ืจ FPGA ืžื•ืคืฆื™ื ืชื—ืช ืจื™ืฉื™ื•ืŸ AGPLv3.

ืจื›ื™ื‘ ื”ื—ื•ืžืจื” ืฉืœ ืื‘ ื”ื˜ื™ืคื•ืก ื”ืคื•ืขืœ ืฉื”ื•ื“ื’ื ืžื‘ื•ืกืก ืขืœ Xilinx Zynq FPGA ื•ืขืœ ืžืงืœื˜ ื”ืžืฉื“ืจ ื”ืื•ื ื™ื‘ืจืกืœื™ AD9361 (RF). OpenWifi ืžืฉืชืžืฉ ื‘ืืจื›ื™ื˜ืงื˜ื•ืจืช SoftMAC, ืืฉืจ ืžืจืžื–ืช ืขืœ ื”ื˜ืžืขืช ื”ืžื—ืกื ื™ืช ื”ืืœื—ื•ื˜ื™ืช ื”ืจืืฉื™ืช ืฉืœ 802.11 (High-MAC) ื‘ืฆื“ ื”ื“ืจื™ื™ื‘ืจ ื•ื ื•ื›ื—ื•ืช ืฉืœ ืฉื›ื‘ืช MAC ื ืžื•ื›ื” ื‘ืฆื“ FPGA. ื”ืžื—ืกื ื™ืช ื”ืืœื—ื•ื˜ื™ืช ืžืฉืชืžืฉืช ื‘ืชืช-ืžืขืจื›ืช mac80211 ื”ืžืกื•ืคืงืช ืขืœ ื™ื“ื™ ืœื™ื‘ืช ืœื™ื ื•ืงืก. ืื™ื ื˜ืจืืงืฆื™ื” ืขื SDR ืžืชื‘ืฆืขืช ื‘ืืžืฆืขื•ืช ื ื”ื’ ืžื™ื•ื—ื“.

ืคืจื•ื™ืงื˜ OpenWifi ืขื ื”ื˜ืžืขืช ืฉื‘ื‘ Wi-Fi ืคืชื•ื— ื”ืžื‘ื•ืกืก ืขืœ FPGA ื•-SDR

ืชื›ื•ื ื•ืช ืขื™ืงืจื™ื•ืช:

  • ืชืžื™ื›ื” ืžืœืื” ืขื‘ื•ืจ 802.11a/g ื•ืชืžื™ื›ื” ื—ืœืงื™ืช ืขื‘ื•ืจ 802.11n MCS 0~7 (PHY rx ืจืง ืœืขืช ืขืชื”). ื™ืฉ ืชื•ื›ื ื™ื•ืช ืœืชืžื•ืš ื‘-802.11ax;
  • ืจื•ื—ื‘ ืคืก 20 ืžื’ื”-ื”ืจืฅ ื•ื˜ื•ื•ื— ืชื“ืจื™ื ืž-70 ืžื’ื”-ื”ืจืฅ ืœ-6 ื’ื™ื’ื”-ื”ืจืฅ;
  • ืžืฆื‘ื™ ื”ืคืขืœื”: ืื“ ื”ื•ืง (ืจืฉืช ืฉืœ ื”ืชืงื ื™ ืœืงื•ื—), ื ืงื•ื“ืช ื’ื™ืฉื”, ืชื—ื ื” ื•ื ื™ื˜ื•ืจ;
  • ื”ื˜ืžืขืช ืคืจื•ื˜ื•ืงื•ืœ ืฉื›ื‘ืช ื”ืงื™ืฉื•ืจ ื‘ืฆื“ FPGA DCF (Function Coordination Distributed), ื‘ืฉื™ื˜ืช CSMA/CA. ืžืกืคืง ื–ืžืŸ ืขื™ื‘ื•ื“ ืžืกื’ืจืช (SIFS) ื‘ืจืžื” 10us;
  • ืคืจืžื˜ืจื™ ืขื“ื™ืคื•ืช ื’ื™ืฉื” ืœืขืจื•ืฆื™ื ื”ื ื™ืชื ื™ื ืœื”ื’ื“ืจื”: ืžืฉืš RTS/CTS, CTS-to-self, SIFS, DIFS, xIFS, ืžืฉืš ืžืฉื‘ืฆืช ื•ื›ื•'.
  • ื—ื™ืชื•ืš ื–ืžืŸ (ื—ื™ืชื•ืš ื–ืžืŸ) ืžื‘ื•ืกืก ืขืœ ื›ืชื•ื‘ืช MAC;
  • ืจื•ื—ื‘ ืคืก ื•ืชื“ืจ ืฉื ื™ืชืŸ ืœืฉื ื•ืช ื‘ืงืœื•ืช:
    2MHz ืขื‘ื•ืจ 802.11ah ื•-10MHz ืขื‘ื•ืจ 802.11p;

ืคืจื•ื™ืงื˜ OpenWifi ืขื ื”ื˜ืžืขืช ืฉื‘ื‘ Wi-Fi ืคืชื•ื— ื”ืžื‘ื•ืกืก ืขืœ FPGA ื•-SDR

ื ื›ื•ืŸ ืœืขื›ืฉื™ื•, OpenWifi ืžืกืคืง ืœืชืžื•ืš ืคืœื˜ืคื•ืจืžื•ืช SDR ืžื‘ื•ืกืกื•ืช FPGA
Xilinx ZC706 ืขื ืžื›ืฉื™ืจื™ื ืื ืœื•ื’ื™ื™ื FMCOMMS2/3/4 ืžืฉื“ืจื™ื, ื›ืžื• ื’ื ื—ื‘ื™ืœื•ืช (FPGA + RF) ADRV9361Z7035 SOM + ADRV1CRR-BOB ื•-ADRV9361Z7035 SOM + ADRV1CRR-FMC. ื ื•ืฆืจ ืœื˜ืขื™ื ื” ืชืžื•ื ื” ืžื•ื’ืžืจืช ื›ืจื˜ื™ืกื™ SD ืžื‘ื•ืกืกื™ ARM Linux. ื™ืฉ ืชื•ื›ื ื™ื•ืช ืœืชืžื•ืš ื‘-ADRV9364Z7020 SOM + ADRV1CRR-BOB, Xilinx zed + FMCOMMS2/3/4, Xilinx ZCU102 + FMCOMMS2/3/4 ื•
Xilinx ZCU102 + ADRV9371. ืขืœื•ืช ื”ืจื›ื™ื‘ื™ื ื”ืžืขื•ืจื‘ื™ื ื‘ืื‘ ื”ื˜ื™ืคื•ืก ื”ืจืืฉื•ืŸ ืฉืœ OpenWifi ื”ื™ื™ืชื” ื›-1300 ื™ื•ืจื•, ืืš ื”ืžืขื‘ืจ ืœืœื•ื—ื•ืช ื–ื•ืœื™ื ื™ื•ืชืจ ืžืชื‘ืฆืข. ืœื“ื•ื’ืžื”, ืขืœื•ืช ืคืชืจื•ืŸ ื”ืžื‘ื•ืกืก ืขืœ ื”ืชืงื ื™ื ืื ืœื•ื’ื™ื™ื ADRV9364-Z7020 ื™ื”ื™ื” 700 ื™ื•ืจื•, ื•ืขืœ ื‘ืกื™ืก ZYNQ NH7020 - 400 ื™ื•ืจื•.

ื‘ื“ื™ืงืช ื”ื‘ื™ืฆื•ืขื™ื ืฉืœ ื—ื™ื‘ื•ืจ ืœืงื•ื— ืขื ืžืชืื USB TL-WDN4200 N900 ืœื ืงื•ื“ืช ื’ื™ืฉื” ืžื‘ื•ืกืกืช OpenWifi ืืคืฉืจื” ืœื ื• ืœื”ืฉื™ื’ ืชืคื•ืงื” ืฉืœ 30.6Mbps (TCP) ื•-38.8Mbps (UDP) ื‘ืขืช ื”ืขื‘ืจืช ื ืชื•ื ื™ื ืžื ืงื•ื“ืช ื”ื’ื™ืฉื” ืœืœืงื•ื—. 17.0Mbps (TCP) ื•-21.5Mbps (UDP) ื›ืืฉืจ ืžืฉื•ื“ืจื™ื ืžื”ืœืงื•ื— ืœื ืงื•ื“ืช ื”ื’ื™ืฉื”. ืœื ื™ื”ื•ืœ, ื ื™ืชืŸ ืœื”ืฉืชืžืฉ ื‘ื›ืœื™ ืขื–ืจ ืกื˜ื ื“ืจื˜ื™ื™ื ืฉืœ ืœื™ื ื•ืงืก, ื›ื’ื•ืŸ ifconfig ื•- iwconfig, ื•ื›ืŸ ื›ืœื™ ืขื–ืจ ืžื™ื•ื—ื“ sdrctl, ืฉืคื•ืขืœ ื‘ืืžืฆืขื•ืช netlink ื•ืžืืคืฉืจ ืœืš ืœืฉืœื•ื˜ ื‘ืคืขื•ืœืช SDR ื‘ืจืžื” ื ืžื•ื›ื” (ืžื ื™ืคื•ืœืฆื™ื” ืฉืœ ืื•ื’ืจื™ื, ืฉื™ื ื•ื™ ื”ื’ื“ืจื•ืช ืคืจื•ืกืช ื–ืžืŸ, ื•ื›ื•.).

ื‘ื™ืŸ ืฉืืจ ื”ืคืจื•ื™ืงื˜ื™ื ื”ืคืชื•ื—ื™ื ื”ืžืชื ืกื™ื ื‘ืขืจื™ืžืช ื”-Wi-Fi, ืื ื• ื™ื›ื•ืœื™ื ืœืฆื™ื™ืŸ ืืช ื”ืคืจื•ื™ืงื˜ Wimeืคื™ืชื•ื— ืชื•ืื IEEE 802.11 a/g/p ืžืฉื“ืจ ืžื‘ื•ืกืก ืขืœ ืจื“ื™ื• GNU ื•ืžื—ืฉื‘ ืจื’ื™ืœ. ืขืจื™ืžื•ืช ืืœื—ื•ื˜ื™ื•ืช ืฉืœ ืชื•ื›ื ื•ืช ืคืชื•ื—ื•ืช 802.11 ืžืคืชื—ื•ืช ื’ื ืคืจื•ื™ืงื˜ื™ื ื–ื™ืจื™ื” ะธ ืกื•ืจื” (Microsoft Research Software Radio).

ืคืจื•ื™ืงื˜ OpenWifi ืขื ื”ื˜ืžืขืช ืฉื‘ื‘ Wi-Fi ืคืชื•ื— ื”ืžื‘ื•ืกืก ืขืœ FPGA ื•-SDR

ืžืงื•ืจ: OpenNet.ru

ื”ื•ืกืคืช ืชื’ื•ื‘ื”