OpenWifi ืคึผืจื•ื™ืขืงื˜ ืžื™ื˜ ื“ื™ ื™ืžืคึผืœืึทืžืขื ื˜ื™ื™ืฉืึทืŸ ืคื•ืŸ ืึทืŸ ืึธืคึฟืŸ Wi-Fi ืฉืคึผืึธืŸ ื‘ืื–ื™ืจื˜ ืื•ื™ืฃ FPGA ืื•ืŸ SDR

ื‘ื™ื™ ื“ื™ ืœืขืฆื˜ืข FOSDEM 2020 ื–ื™ืฆื•ื ื’ ื“ืขืจืœืื ื’ื˜ ืคึผืจื•ื™ืขืงื˜ ืึธืคึผืขื ื•ื•ื™ืคื™, ื“ืขื•ื•ืขืœืึธืคึผื™ื ื’ ื“ืขืจ ืขืจืฉื˜ืขืจ ืขืคืขื ืขืŸ ื™ืžืคึผืœืึทืžืขื ื˜ื™ื™ืฉืึทืŸ ืคื•ืŸ ื“ื™ ืคื•ืœ Wi-Fi 802.11a/g/n ืึธื ืœื™ื™ื’ืŸ, ื“ื™ ืกื™ื’ื ืึทืœ ืคืึธืจืขื ืื•ืŸ ืžืึทื“ื–ืฉืึทืœื™ื™ืฉืึทืŸ ืื™ืŸ ื•ื•ืึธืก ืื™ื– ืกืคึผืขืกื™ืคื™ืขื“ ืื™ืŸ ื•ื•ื™ื™ื›ื•ื•ืืจื’ (SDR, Software Defined Radio). OpenWifi ืึทืœืึทื•ื– ืื™ืจ ืฆื• ืฉืึทืคึฟืŸ ืึท ื’ืึธืจ ืงืึทื ื˜ืจืึธื•ืœื“ ื™ืžืคึผืœืึทืžืขื ื˜ื™ื™ืฉืึทืŸ ืคื•ืŸ ืึทืœืข ืงืึทืžืคึผืึธื•ื ืึทื ืฅ ืคื•ืŸ ืึท ื•ื•ื™ื™ืจืœื™ืก ืžื™ื˜ืœ, ืึทืจื™ื™ึทื ื’ืขืจืขื›ื ื˜ ื ื™ื“ืขืจื™ืง-ืžื“ืจื’ื” ืœื™ื™ึทืขืจืก, ื•ื•ืึธืก ืื™ืŸ ืงืึทื ื•ื•ืขื ืฉืึทื ืึทืœ ื•ื•ื™ื™ืจืœื™ืก ืึทื“ืึทืคึผื˜ืขืจื– ื–ืขื ืขืŸ ื™ืžืคึผืœืึทืžืขื ืึทื“ ืื•ื™ืฃ ื“ื™ ืžื“ืจื’ื” ืคื•ืŸ ื˜ืฉื™ืคึผืก ื•ื•ืึธืก ื–ืขื ืขืŸ ื ื™ืฉื˜ ืึทื“ื™ื˜ืึทื‘ืึทืœ. ืงืึธื“ ื•ื•ื™ื™ื›ื•ื•ืืจื’ ืงืึทืžืคึผืึธื•ื ืึทื ืฅืื•ืŸ ื“ื™ืึทื’ืจืึทืžืข ืื•ืŸ ื“ื™ืกืงืจื™ืคึผืฉืึทื ื– ื™ื™ึทื–ื ื•ื•ืึทืจื’ ื‘ืœืึทืงืก ืื™ืŸ ื•ื•ืขืจื™ืœืึธื’ ืฉืคึผืจืึทืš ืคึฟืึทืจ FPGA ื–ืขื ืขืŸ ืคื•ื ืื ื“ืขืจื’ืขื˜ื™ื™ืœื˜ ืื•ื ื˜ืขืจ ื“ื™ AGPLv3 ื“ืขืจืœื•ื™ื‘ืขื ื™ืฉ.

ื“ื™ ื™ื™ึทื–ื ื•ื•ืึทืจื’ ืงืึธืžืคึผืึธื ืขื ื˜ ืคื•ืŸ ื“ื™ ื“ืขืžืึทื ืกื˜ืจื™ื™ื˜ื™ื“ ืึทืจื‘ืขื˜ ืคึผืจืึธื•ื˜ืึทื˜ื™ื™ืคึผ ืื™ื– ื‘ืื–ื™ืจื˜ ืื•ื™ืฃ ื“ื™ Xilinx Zynq FPGA ืื•ืŸ ื“ื™ AD9361 ื•ื ื™ื•ื•ืขืจืกืึทืœ ื˜ืจืึทื ืกืกืขื™ื•ื•ืขืจ (ืจืฃ). OpenWifi ื ื™ืฆื˜ ื“ื™ SoftMAC ืึทืจืงืึทื˜ืขืงื˜ืฉืขืจ, ื•ื•ืึธืก ื™ืžืคึผืœื™ื™ื– ื“ื™ ื™ืžืคึผืœืึทืžืขื ื˜ื™ื™ืฉืึทืŸ ืคื•ืŸ ื“ื™ ื”ื•ื™ืคึผื˜ 802.11 ื•ื•ื™ื™ืจืœื™ืก ืกื˜ืึทืง (ื”ื•ื™ืš-MAC) ืื•ื™ืฃ ื“ื™ ืฉืึธืคืขืจ ื–ื™ื™ึทื˜ ืื•ืŸ ื“ื™ ื‘ื™ื™ึทื–ื™ื™ึทืŸ ืคื•ืŸ ืึท ื ื™ื“ืขืจื™ืง MAC ืฉื™ื›ื˜ืข ืื•ื™ืฃ ื“ื™ FPGA ื–ื™ื™ึทื˜. ื“ื™ ื•ื•ื™ื™ืจืœื™ืก ืึธื ืœื™ื™ื’ืŸ ื ื™ืฆื˜ ื“ื™ mac80211 ืกืึทื‘ืกื™ืกื˜ืขื ืฆื•ื’ืขืฉื˜ืขืœื˜ ื“ื•ืจืš ื“ื™ ืœื™ื ื•ืงืก ืงืขืจืŸ. ื™ื ื˜ืขืจืึทืงืฉืึทืŸ ืžื™ื˜ SDR ืื™ื– ื“ื•ืจื›ื’ืขืงืึธื›ื˜ ื“ื•ืจืš ืึท ืกืคึผืขืฆื™ืขืœ ืฉืึธืคืขืจ.

OpenWifi ืคึผืจื•ื™ืขืงื˜ ืžื™ื˜ ื“ื™ ื™ืžืคึผืœืึทืžืขื ื˜ื™ื™ืฉืึทืŸ ืคื•ืŸ ืึทืŸ ืึธืคึฟืŸ Wi-Fi ืฉืคึผืึธืŸ ื‘ืื–ื™ืจื˜ ืื•ื™ืฃ FPGA ืื•ืŸ SDR

ืฉืœื™ืกืœ ืคึฟืขื™ึดืงื™ื™ื˜ืŸ:

  • ื’ืึทื ืฅ ืฉื˜ื™ืฆืŸ ืคึฟืึทืจ 802.11 ืึท / ื’ ืื•ืŸ ืคึผืึทืจื˜ื™ื™ื™ืฉ ืฉื˜ื™ืฆืŸ ืคึฟืึทืจ 802.11n MCS 0 ~ 7 (PHY ืจืงืก ื‘ืœื•ื™ื– ืคึฟืึทืจ ืื™ืฆื˜). ืขืก ื–ืขื ืขืŸ ืคึผืœืึทื ื– ืฆื• ืฉื˜ื™ืฆืŸ 802.11ax;
  • ื‘ืึทื ื“ื•ื•ื™ื“ื˜ 20 ืžื”ื– ืื•ืŸ ืึธืคื˜ืงื™ื™ึทื˜ ืงื™ื™ื˜ ืคื•ืŸ 70 ืžื”ื– ืฆื• 6 ื’ื”ื–;
  • ืึทืคึผืขืจื™ื™ื˜ื™ื ื’ ืžืึธื“ืขืก: ืึทื“ ื”ืึธืง (ื ืขืฅ ืคื•ืŸ ืงืœื™ืขื ื˜ ื“ืขื•ื•ื™ืกืขืก), ืึทืงืกืขืก ืคื•ื ื˜, ืกื˜ืึทื ืฆื™ืข ืื•ืŸ ืžืึธื ื™ื˜ืึธืจื™ื ื’;
  • ื™ืžืคึผืœืึทืžืขื ื˜ื™ื™ืฉืึทืŸ ืคื•ืŸ ื“ื™ ืœื™ื ืง ืฉื™ื›ื˜ืข ืคึผืจืึธื˜ืึธืงืึธืœ ืื•ื™ืฃ ื“ื™ FPGA ื–ื™ื™ึทื˜ DCF (ื“ื™ืกื˜ืจื™ื‘ื™ื•ื˜ื™ื“ ืงืึธืึธืจื“ื™ื ืึทื˜ื™ืึธืŸ ืคึฟื•ื ืงืฆื™ืข), ื ื™ืฆืŸ ื“ื™ CSMA / CA ืื•ืคึฟืŸ. ื’ื™ื˜ ืจืึทื ืคึผืจืึทืกืขืกื™ื ื’ ืฆื™ื™ื˜ (SIFS) ืื™ืŸ ืžื“ืจื’ื” 10ื•ืก;
  • ืงืึทื ืคื™ื’ื™ืขืจืึทื‘ืึทืœ ืงืึทื ืึทืœ ืึทืงืกืขืก ื‘ื™ืœื›ืขืจืงื™ื™ึทื˜ ืคึผืึทืจืึทืžืขื˜ืขืจืก: RTS / CTS ื’ืขื“ื•ื™ืขืจ, CTS-to-self, SIFS, DIFS, xIFS, ืฉืคึผืขืœื˜ืœ ืฆื™ื™ื˜, ืขื˜ืง.
  • ืฆื™ื™ื˜ ืกืœื™ื™ืกื™ื ื’ (ืฆื™ื™ื˜ ืกืœื™ื™ืกื™ื ื’) ื‘ืื–ื™ืจื˜ ืื•ื™ืฃ MAC ืึทื“ืจืขืก;
  • ืœื™ื™ื›ื˜ ื˜ืฉื™ื™ื ื“ื–ืฉืึทื‘ืึทืœ ื‘ืึทื ื“ื•ื•ื™ื“ื˜ ืื•ืŸ ืึธืคื˜ืงื™ื™ึทื˜:
    2MHz ืคึฟืึทืจ 802.11ืึทื” ืื•ืŸ 10MHz ืคึฟืึทืจ 802.11p;

OpenWifi ืคึผืจื•ื™ืขืงื˜ ืžื™ื˜ ื“ื™ ื™ืžืคึผืœืึทืžืขื ื˜ื™ื™ืฉืึทืŸ ืคื•ืŸ ืึทืŸ ืึธืคึฟืŸ Wi-Fi ืฉืคึผืึธืŸ ื‘ืื–ื™ืจื˜ ืื•ื™ืฃ FPGA ืื•ืŸ SDR

ื“ืขืจื•ื•ื™ื™ึทืœ, OpenWifi ื’ื™ื˜ ืฉื˜ื™ืฆืŸ FPGA-ื‘ืื–ื™ืจื˜ SDR ืคึผืœืึทื˜ืคืึธืจืžืก
Xilinx ZC706 ืžื™ื˜ ืึทื ืึทืœืึธื’ ื“ืขื•ื•ื™ืกืขืก FMCOMMS2/3/4 ื˜ืจืึทื ืกืกืขื™ื•ื•ืขืจืก, ื•ื•ื™ ื’ืขื–ื•ื ื˜ ื•ื•ื™ ื‘ืึทื ื“ืึทืœื– (FPGA + RF) ADRV9361Z7035 SOM + ADRV1CRR-BOB ืื•ืŸ ADRV9361Z7035 SOM + ADRV1CRR-FMC. ื’ืขื’ืจื™ื ื“ืขื˜ ืคึฟืึทืจ ืœืึธื•ื“ื™ื ื’ ืคืึทืจื˜ื™ืง ื‘ื™ืœื“ ARM ืœื™ื ื•ืงืก ื‘ืื–ื™ืจื˜ ืกื“ ืงืึทืจื“ืก. ืขืก ื–ืขื ืขืŸ ืคึผืœืึทื ื– ืฆื• ืฉื˜ื™ืฆืŸ 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 ืขื•ืจืึธืก.

ื˜ืขืกื˜ื™ื ื’ ื“ื™ ืคืึธืจืฉื˜ืขืœื•ื ื’ ืคื•ืŸ ืงืึทื ืขืงื˜ื™ื ื’ ืึท ืงืœื™ืขื ื˜ ืžื™ื˜ ืึท TL-WDN4200 N900 ื•ืกื‘ ืึทื“ืึทืคึผื˜ืขืจ ืฆื• ืึทืŸ OpenWifi-ื‘ืื–ื™ืจื˜ ืึทืงืกืขืก ืคื•ื ื˜ ืขืจืœื•ื™ื‘ื˜ ืื•ื ื“ื– ืฆื• ื“ืขืจื’ืจื™ื™ื›ืŸ ืึท ื˜ืจื•ืคึผื•ื˜ ืคื•ืŸ 30.6Mbps (TCP) ืื•ืŸ 38.8Mbps (UDP) ื•ื•ืขืŸ ื˜ืจืึทื ืกืคืขืจื™ื ื’ ื“ืึทื˜ืŸ ืคื•ืŸ ื“ื™ ืึทืงืกืขืก ืคื•ื ื˜ ืฆื• ื“ืขื ืงืœื™ืขื ื˜ ืื•ืŸ 17.0Mbps (TCP) ืื•ืŸ 21.5Mbps (UDP) ื•ื•ืขืŸ ื˜ืจืึทื ืกืžื™ื˜ื˜ืขื“ ืคื•ืŸ ื“ืขื ืงืœื™ืขื ื˜ ืฆื• ื“ื™ ืึทืงืกืขืก ืคื•ื ื˜. ืคึฟืึทืจ ืคืึทืจื•ื•ืึทืœื˜ื•ื ื’, ื ืึธืจืžืึทืœ ืœื™ื ื•ืงืก ื™ื•ื˜ื™ืœืึทื˜ื™ื– ืงืขื ืขืŸ ื–ื™ื™ืŸ ื’ืขื•ื•ื™ื™ื ื˜, ืึทื–ืึท ื•ื•ื™ ifconfig ืื•ืŸ iwconfig, ื•ื•ื™ ื’ืขื–ื•ื ื˜ ื•ื•ื™ ืึท ืกืคึผืขืฉืึทืœื™ื™ื–ื“ ื ื•ืฆืŸ sdrctl, ื•ื•ืึธืก ืึทืจื‘ืขื˜ ื“ื•ืจืš ื ืขื˜ืœื™ื ืง ืื•ืŸ ืึทืœืึทื•ื– ืื™ืจ ืฆื• ืงืึธื ื˜ืจืึธืœื™ืจืŸ ื“ื™ ืึธืคึผืขืจืึทืฆื™ืข ืคื•ืŸ โ€‹โ€‹SDR ืื•ื™ืฃ ืึท ื ื™ื“ืขืจื™ืง ืžื“ืจื’ื” (ืžืึทื ื™ืคึผื•ืœื™ืจืŸ ืจืขื“ื–ืฉื™ืกื˜ืขืจื–, ื˜ื•ื™ืฉืŸ ืฆื™ื™ื˜ ืจืขืคื˜ืœ ืกืขื˜ื˜ื™ื ื’ืก, ื•ื›ื•').

ืฆื•ื•ื™ืฉืŸ ืื ื“ืขืจืข ืขืคืขื ืขืŸ ืคึผืจืึทื“ื–ืฉืขืงืก ื•ื•ืึธืก ืขืงืกืคึผืขืจื™ืžืขื ื˜ ืžื™ื˜ ื“ื™ Wi-Fi ืึธื ืœื™ื™ื’ืŸ, ืžื™ืจ ืงืขื ืขืŸ ื˜ืึธืŸ ื“ื™ ืคึผืจื•ื™ืขืงื˜ ื•ื•ื™ืžืขื“ืขื•ื•ืขืœืึธืคึผื™ื ื’ IEEE 802.11 ืึท / ื’ / ืคึผ ื’ืขื”ืึธืจื›ื™ืง ื˜ืจืึทื ืกืžื™ื˜ืขืจ ื‘ืื–ื™ืจื˜ ืื•ื™ืฃ GNU Radio ืื•ืŸ ืึท ืจืขื’ื•ืœืขืจ ืคึผื™ืกื™. ื•ื•ื™ื™ื›ื•ื•ืืจื’ ืขืคืขื ืขืŸ 802.11 ื•ื•ื™ื™ืจืœื™ืก ืกื˜ืึทืงืก ื–ืขื ืขืŸ ืื•ื™ืš ื“ืขื•ื•ืขืœืึธืคึผื™ื ื’ ืคึผืจืึทื“ื–ืฉืขืงืก ื–ื™ืจื™ืข ะธ ืกืึธืจืึท (Microsoft Research Software Radio).

OpenWifi ืคึผืจื•ื™ืขืงื˜ ืžื™ื˜ ื“ื™ ื™ืžืคึผืœืึทืžืขื ื˜ื™ื™ืฉืึทืŸ ืคื•ืŸ ืึทืŸ ืึธืคึฟืŸ Wi-Fi ืฉืคึผืึธืŸ ื‘ืื–ื™ืจื˜ ืื•ื™ืฃ FPGA ืื•ืŸ SDR

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

ืœื™ื™ื’ืŸ ืึท ื‘ืึทืžืขืจืงื•ื ื’