Durante a conferência FOSDEM 2020, foi revelado o primeiro desenvolvimento de código aberto de OpenWifi "Wi-Fi 802.11 a / g / n" Modulação e forma de onda full stack que são definidas pela programação (SDR, Software Defined Radio) e FPGA.
O interessante sobre o projeto wi-fi aberto é a de que permite que você crie uma implementação totalmente compatível com Linux e que controla todos os componentes de um dispositivo sem fio, incluindo as camadas de baixo nível em adaptadores sem fio convencionais implementados no nível de chips inacessíveis para auditoria. O código dos componentes de software, bem como os circuitos e descrições dos blocos de hardware na linguagem Verilog para FPGAs, são distribuídos sob a licença AGPLv3.
wi-fi aberto usa a arquitetura SoftMAC, o que implica na implementação da pilha 802.11 sem fio principal no lado do controlador e na presença de uma camada MAC baixa no lado do FPGA. O subsistema mac80211 fornecido pelo kernel Linux é usado como pilha sem fio, enquanto a interação com SDR é feita por meio de um controlador especial.
O componente de hardware do protótipo funcional demonstrado é baseado no Xilinx Zynq FPGA e no Transceptor Universal (RF) AD9361.
Das principais características por OpenWifi
- Suporte total para 802.11a / ge suporte parcial para 802.11n MCS 0 ~ 7 (até agora apenas PHY rx). Planos suportam 802.11ax
- Largura de banda de 20 MHz e faixa de frequência de 70 MHz a 6 GHz
- Modos de operação: Ad-hoc (rede de dispositivo cliente), ponto de acesso, estação e monitoramento
- A implementação FPGA do protocolo DCF (Distributed Coordination Function) usando o método CSMA / CA. Fornece tempo de processamento de quadros (SIFS) em 10us
- Parâmetros configuráveis de prioridade de acesso ao canal: RTS / CTS, CTS para si mesmo, SIFS, DIFS, xIFS, tempo de slot, etc.
- Por intervalo de tempo com base em endereços MAC
- Largura de banda e frequência facilmente modificáveis: 2 MHz para 802.11ah e 10 MHz para 802.11p
- OpenWifi atualmente suporta plataformas Xilinx ZC706 FPGA SDR com Analog Devices FMCOMMS2 / 3/4 transceivers, bem como ADRV9361Z7035 SOM + ADRV1CRR-BOB e ADRV9361Z7035 SOM + ADRVCR (FPGA + RF).
Para a administração, utilitários linux padrão como ifconfig e iwconfig podem ser usadosbem como um utilitário sdrctl especializado que funciona através do netlink e permite que você gerencie SDR em um nível baixo (manipule registradores, altere configurações de segmentação de tempo, etc.).
Entre outros projetos abertos de experimentação com a pilha de Wi-Fi, podemos citar o projeto Wime, que desenvolve um transmissor compatível com IEEE 802.11 a / g / p baseado em GNU Radio e um PC normal.
Além do software 802.11 sem fio aberto, também estão sendo desenvolvidos pela Ziria e Sora (Microsoft Research Software Radio).
Durante os testes de desempenho, a partir dos dados obtidos ao conectar um cliente com um adaptador USB TL-WDN4200 N900 a um ponto de acesso baseado em OpenWifi, permitido atingir uma taxa de transferência de 30.6 Mbps (TCP) e 38.8 Mbps (UDP) ao transmitir dados de um ponto de acesso para um cliente e 17.0 Mbps (TCP) e 21.5 Mbps (UDP) ao transmitir de um cliente para um ponto de acesso.
Aqui está uma demonstração de um telefone conectado ao ponto de acesso executando o OpenWifi.
Os componentes envolvidos no primeiro protótipo do OpenWifi custa cerca de 1300 euros, mas estão sendo transferidos para placas mais baratas. Por exemplo, o custo de uma solução baseada em Analog Devices ADRV9364-Z7020 será de 700 euros e baseada no ZYNQ NH7020 que tem um custo de cerca de 400 euros.
Descarregar
Por fim, para os interessados em saber mais sobre o projeto ou baixar a imagem preparada do OpenWifi pode conseguir indo para o seguinte link.
Aqui você pode encontrar informações sobre o uso e instalação da imagem em um cartão SD (a imagem é baseada em uma versão ARM do Linux).
Dos componentes que atualmente suportam o pacote, existem: ADRV9364Z7020 SOM + ADRV1CRR-BOB, Xilinx zed + FMCOMMS2 / 3/4, Xilinx ZCU102 + FMCOMMS2 / 3/4 e Xilinx ZCU102 + ADRV9371.
fonte: https://fosdem.org