Лоиҳаи 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 (баланд-MAC) дар тарафи ронанда ва мавҷудияти қабати пасти MAC дар тарафи FPGA мебошад. Стеки бесим зерсистемаи mac80211-ро истифода мебарад, ки ядрои Linux пешниҳод кардааст. Ҳамкорӣ бо SDR тавассути драйвери махсус сурат мегирад.

Лоиҳаи OpenWifi бо татбиқи чипи кушодаи Wi-Fi дар асоси FPGA ва SDR

Хусусиятҳои асосии:

  • Дастгирии пурра барои 802.11a/g ва дастгирии қисман барои 802.11n MCS 0~7 (танҳо PHY rx ҳоло). Нақшаҳо барои дастгирии 802.11ax вуҷуд доранд;
  • Маҷрои 20 МГс ва диапазони басомад аз 70 МГс то 6 ГГц;
  • Реҷаҳои корӣ: Яккора (шабакаи дастгоҳҳои муштарӣ), нуқтаи дастрасӣ, истгоҳ ва мониторинг;
  • Амалисозии протоколи қабати пайванд дар тарафи FPGA DCF (Функсияи ҳамоҳангсозии тақсимшуда), бо истифода аз усули 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) ҳангоми интиқол аз муштарӣ ба нуқтаи дастрасӣ. Барои идора, утилитаҳои стандартии Linux-ро метавон истифода бурд, ба монанди ifconfig ва iwconfig, инчунин як утилитаи махсуси sdrctl, ки тавассути netlink кор мекунад ва ба шумо имкон медиҳад, ки кори SDR-ро дар сатҳи паст идора кунед (тағйир додани регистрҳо, тағир додани танзимоти буридани вақт, ғайра).

Дар байни дигар лоиҳаҳои кушода, ки бо стек Wi-Fi озмоиш мекунанд, мо метавонем лоиҳаро қайд кунем ВимТаҳияи IEEE 802.11 a/g/p мувофиқ аст интиқолдиҳанда дар асоси GNU Radio ва компютери муқаррарӣ. Нармафзори кушодаи 802.11 стекҳои бесими низ лоиҳаҳоро таҳия мекунанд Зирия и Сора (Microsoft Research Software Radio).

Лоиҳаи OpenWifi бо татбиқи чипи кушодаи Wi-Fi дар асоси FPGA ва SDR

Манбаъ: opennet.ru

Илова Эзоҳ