O (s) algoritmo (s) de controle de congestionamento do TCP parecem distribuir a largura de banda disponível de forma justa entre os fluxos TCP individuais.
Existe alguma maneira de permitir (ou mais precisamente, impor) o compartilhamento de largura de banda aceitável em um por host em vez de uma base por fluxo em um roteador? Não deve haver uma maneira (fácil) de um usuário obter um compartilhamento de largura de banda desproporcional usando vários fluxos TCP simultâneos (como alguns gerenciadores de downloads e a maioria dos clientes P2P).
Atualmente, estou executando um roteador DD-WRT para compartilhar uma linha DSL residencial e, atualmente, é possível (inadvertida ou maliciosamente) sobrecarregar a maior parte da largura de banda usando várias conexões simultâneas, o que afeta gravemente as conversas VoIP. Eu já joguei um pouco com as configurações de QoS, mas não tenho certeza de como habilitar o compartilhamento de largura de banda em uma base por IP (por serviço não é uma opção, já que a maioria dos fluxos são HTTP).
Atualização: Estou assumindo o comportamento de controle de congestionamento TCP ou TCP de todos os fluxos, caso contrário, não haveria realmente nenhuma maneira de controlar o tráfego de entrada.
Atualmente, o controle de congestionamento é por fluxo e um único usuário com vários fluxos fará com que os fluxos de cada usuário diminuam, e eles eventualmente estabilizarão em 1 / n vezes a largura de banda total para n fluxos.
Agora não é possível modificar o algoritmo de fila de entrada e de descarte de pacotes de forma que haja um "contador de pacotes" de entrada por usuário e os pacotes sejam descartados por usuário em vez de aleatoriamente? Dessa forma, se apenas alguns usuários estiverem realmente causando o congestionamento, apenas seus fluxos terão que ser acelerados, em vez de todos os fluxos.