Como posso definir a taxa de bits correta para meu adaptador de rede sem fio Qualcomm Atheros AR93xx?

0

Como pergunta, eu comprei apenas Qualcomm Atheros AR93xx Wireless Network Adapter , especificamente TP-LINK TL-WDN4800 N900 - que deve atingir 450 Mbps.

Estou rodando no kernel Linux scv 4.10.0-40-generic #44~16.04.1-Ubuntu SMP Thu Nov 9 15:37:44 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux e quando tento encontrar as taxas de bits disponíveis:

ema@scv:~$ sudo iwlist wlp2s0 bitrate
wlp2s0    unknown bit-rate information.
          Current Bit Rate=54 Mb/s

Eu tentei configurá-lo manualmente para 300 Mbps via sudo iwconfig wlp2s0 rate 300M , mas ele realmente não classifica nenhum efeito desejado.

Estou conectando a uma Netgear N600 e o modo da rede de 5 GHz está definido para 300 Mbps; este dispositivo é ~ 3m longe do meu pc e o sinal é bom eu acho (apenas 3 pontos de acesso 5GHz no canal 36):

wlp2s0    IEEE 802.11  ESSID:"M4yb3_n0tX"  
          Mode:Managed  Frequency:5.18 GHz  Access Point: 84:1B:5E:36:9C:22   
          Bit Rate=54 Mb/s   Tx-Power=18 dBm   
          Retry short limit:7   RTS thr:off   Fragment thr:off
          Power Management:off
          Link Quality=57/70  Signal level=-53 dBm  
          Rx invalid nwid:0  Rx invalid crypt:0  Rx invalid frag:0
          Tx excessive retries:1  Invalid misc:133   Missed beacon:0

Meu sudo lspci -vv -s 02:00.0 produz (desculpas por saída longa):

02:00.0 Network controller: Qualcomm Atheros AR93xx Wireless Network Adapter (rev 01)
    Subsystem: Qualcomm Atheros AR93xx Wireless Network Adapter
    Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR+ FastB2B- DisINTx-
    Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
    Latency: 0, Cache Line Size: 32 bytes
    Interrupt: pin A routed to IRQ 16
    Region 0: Memory at f7b00000 (64-bit, non-prefetchable) [size=128K]
    Expansion ROM at f7b20000 [disabled] [size=64K]
    Capabilities: [40] Power Management version 3
        Flags: PMEClk- DSI- D1+ D2- AuxCurrent=375mA PME(D0+,D1+,D2-,D3hot+,D3cold-)
        Status: D0 NoSoftRst- PME-Enable- DSel=0 DScale=0 PME-
    Capabilities: [50] MSI: Enable- Count=1/4 Maskable+ 64bit+
        Address: 0000000000000000  Data: 0000
        Masking: 00000000  Pending: 00000000
    Capabilities: [70] Express (v2) Endpoint, MSI 00
        DevCap: MaxPayload 128 bytes, PhantFunc 0, Latency L0s <1us, L1 <8us
            ExtTag- AttnBtn- AttnInd- PwrInd- RBE+ FLReset-
        DevCtl: Report errors: Correctable- Non-Fatal- Fatal- Unsupported-
            RlxdOrd- ExtTag- PhantFunc- AuxPwr- NoSnoop-
            MaxPayload 128 bytes, MaxReadReq 512 bytes
        DevSta: CorrErr- UncorrErr- FatalErr- UnsuppReq- AuxPwr- TransPend-
        LnkCap: Port #0, Speed 2.5GT/s, Width x1, ASPM L0s L1, Exit Latency L0s <2us, L1 <64us
            ClockPM- Surprise- LLActRep- BwNot- ASPMOptComp-
        LnkCtl: ASPM Disabled; RCB 64 bytes Disabled- CommClk+
            ExtSynch- ClockPM- AutWidDis- BWInt- AutBWInt-
        LnkSta: Speed 2.5GT/s, Width x1, TrErr- Train- SlotClk+ DLActive- BWMgmt- ABWMgmt-
        DevCap2: Completion Timeout: Not Supported, TimeoutDis+, LTR-, OBFF Not Supported
        DevCtl2: Completion Timeout: 50us to 50ms, TimeoutDis-, LTR-, OBFF Disabled
        LnkCtl2: Target Link Speed: 2.5GT/s, EnterCompliance- SpeedDis-
             Transmit Margin: Normal Operating Range, EnterModifiedCompliance- ComplianceSOS-
             Compliance De-emphasis: -6dB
        LnkSta2: Current De-emphasis Level: -6dB, EqualizationComplete-, EqualizationPhase1-
             EqualizationPhase2-, EqualizationPhase3-, LinkEqualizationRequest-
    Capabilities: [100 v1] Advanced Error Reporting
        UESta:  DLP- SDES- TLP- FCP- CmpltTO- CmpltAbrt- UnxCmplt- RxOF- MalfTLP- ECRC- UnsupReq- ACSViol-
        UEMsk:  DLP- SDES- TLP- FCP- CmpltTO- CmpltAbrt- UnxCmplt- RxOF- MalfTLP- ECRC- UnsupReq- ACSViol-
        UESvrt: DLP+ SDES+ TLP- FCP+ CmpltTO- CmpltAbrt- UnxCmplt- RxOF+ MalfTLP+ ECRC- UnsupReq- ACSViol-
        CESta:  RxErr- BadTLP- BadDLLP- Rollover- Timeout- NonFatalErr-
        CEMsk:  RxErr- BadTLP- BadDLLP- Rollover- Timeout- NonFatalErr+
        AERCap: First Error Pointer: 00, GenCap- CGenEn- ChkCap- ChkEn-
    Capabilities: [140 v1] Virtual Channel
        Caps:   LPEVC=0 RefClk=100ns PATEntryBits=1
        Arb:    Fixed- WRR32- WRR64- WRR128-
        Ctrl:   ArbSelect=Fixed
        Status: InProgress-
        VC0:    Caps:   PATOffset=00 MaxTimeSlots=1 RejSnoopTrans-
            Arb:    Fixed- WRR32- WRR64- WRR128- TWRR128- WRR256-
            Ctrl:   Enable+ ID=0 ArbSelect=Fixed TC/VC=01
            Status: NegoPending- InProgress-
    Capabilities: [300 v1] Device Serial Number 00-00-00-00-00-00-00-00
    Kernel driver in use: ath9k
    Kernel modules: ath9k

O que devo fazer em seguida? Gostaria de alcançar 300 Mbps, você acha que isso será possível?

Eu testei transferindo arquivos para um PC vinculado no mesmo roteador via Ethernet (1000 Mbps ), e a melhor velocidade de upload (Wireless para Ethernet) é em torno de 24 Mbps, enquanto que a melhor velocidade de download (Ethernet para Wireless) é de cerca de 32 Mbps (é importante notar que quando conecto ambos os PCs Ethernet a Ethernet alcanço 1000 Mbps sem qualquer suor). O roteador precisa mudar?

Qualquer sugestão é bem vinda!

    
por Emanuele 25.11.2017 / 21:23

2 respostas

0

A resposta para a pergunta é muito simples: não se pode confiar em drivers e firmware (de NIC e ponto de acesso) para fazer a coisa certa .

Aparentemente com kernels Linux (relativamente) recentes, um não pode configurar o bitrate , mas tem que confiar no driver / firmware do card para acertar.

Acabei de atualizar o firmware da minha ponto de acesso e agora esta é a saída de iwconfig wlp2s0 :

wlp2s0    IEEE 802.11  ESSID:"M4yb3_n0tX"  
          Mode:Managed  Frequency:5.18 GHz  Access Point: 84:1B:5E:36:9C:22   
          Bit Rate=216 Mb/s   Tx-Power=18 dBm   
          Retry short limit:7   RTS thr:off   Fragment thr:off
          Power Management:off
          Link Quality=56/70  Signal level=-54 dBm  
          Rx invalid nwid:0  Rx invalid crypt:0  Rx invalid frag:0
          Tx excessive retries:0  Invalid misc:112   Missed beacon:0

Por favor, note que taxa de bits é 216 Mbps. As medições do mundo real são agora: velocidade de upload 67 Mbps, velocidade de download 140 Mbps. Definitivamente uma melhoria, ainda muito longe dos 1000 Mbps de Ethernet com fio ...

Atualização: agora que estou usando a conexão de 5GHz, o Bit Rate oscila entre 216 Mb / s a 300 Mb / s, dependendo do horário em que me conecto durante o dia (acho que tem a ver com outras possíveis interferências redes vizinhas).

    
por 26.11.2017 / 09:16
0

Talvez minha resposta esteja fora do tópico, mas eu acho que você tem o mesmo problema que o meu: O adaptador de rede sem fio Atheros AR93xx tem uma baixa taxa de transmissão (upload) no linux.

De acordo com o # 69 do erro do Ubuntu # 1670041 :

The low throughput with transmit TCP streams on ath10k should be fixed with this mac80211 commit:

mac80211: Adjust TSQ pacing shift

https://git.kernel.org/linus/36148c2bbfbe50c50206b6f61d072203c80161e0

Apparently v4.16-rc5 was the first release to have that commit.

Atualizar o seu kernel Linux para uma versão mais recente pode resolver isso (Linux 4.17.14 no meu caso).

    
por 15.08.2018 / 17:03