Tenho um servidor (Lenovo usando Ubuntu) e 2 clientes (ambos Mac). O servidor está conectado a um roteador Wi-Fi pela interface Eth. Os dois clientes estão conectados ao roteador Wi-Fi pela interface WLAN. Todos estão conectados e podem se comunicar.
Agora, estou usando o iperf3 (TCP) para testar a taxa de transferência de download e upload (Mbps) dos clientes. Para fazer isso, o servidor executa o iperf3 em dois terminais
Terminal 1 :
iperf3 -s -p 5001
Terminal 2 :
iperf3 -s -p 5002
Por outro lado, o Cliente 1 (download) executa
iperf3 -c 192.168.1.10 -p 5001 -R
E o Cliente 2 (Upload) é executado
iperf3 -c 192.168.1.10 -p 5002
Ambos os comandos do cliente foram executados ao mesmo tempo. Observa-se que o cliente 2 (upload) não obtém uma parcela justa da largura de banda, mas a taxa de upload às vezes cai para 0 Mbps. Enquanto o cliente 1 (download) possui taxa de dados > 70 Mbps.
Em vez de uplpoad-download, também testei o cenário em que ambos os clientes baixam simultaneamente. Este teste funciona perfeitamente bem (ambos os clientes recebem parcela da largura de banda (cada 30 a 35 Mbps).
Não tenho nenhuma regra de controle de tráfego/regra de QoS em nenhum dos meus roteadores/máquinas.
Pergunta: O que está causando essa injustiça no compartilhamento de largura de banda no TCP?
Eu estava testando em rede sem fio ou Wi-Fi (que é half-duplex). Dois dispositivos não podem transmitir/receber simultaneamente na mesma frequência/canal. Qual é a razão para a partilha desigual de BW