Essa é uma pergunta difícil de responder porque depende de muitos outros fatores. Tentar obter uma resposta muito específica seria difícil e ainda mais difícil, pelo menos para mim, tentar explicar.
Supondo que o link de ponta a ponta é estável o suficiente para a escala da janela no máximo, poderíamos dizer que precisamos de um ACK por cada tamanho máximo de janela. Um tamanho de janela max típico é 64KB, pelo menos eu acho que é o padrão para o Windows ... ele é definido por uma chave de registro.
Sabendo disso, agora precisamos saber qual é o tempo de ida e volta porque você só receberá um tamanho máximo de janela de dados por cada RTT; Uma maneira de os dados chegarem até você e uma maneira de reconhecê-los. Agora vamos jogar como se estivéssemos tentando calcular o upstream necessário para um soquete TCP através de um satélite.
RTT = ~ 500ms
Tamanho máximo da janela = 64 KB
(64KB * 8) /. 5 = O download máximo seria de 1Mbps. Os tempos 8, é claro, transformam nosso valor de byte em bits.
BTW muitas vezes você vê o tamanho da janela referido como buffer e você vê o cálculo do throughput TCP dado como (RxBuffer / RTT = Througput). Agora precisamos calcular o upstream. Espero que com todas as coisas acima da resposta seja óbvia, precisamos de dois ACKs por segundo para voltar ao remetente. Esses ACKs são, 20Bs + 20Bs * 8 (cabeçalho IP + TCP), 320bps por peça. Portanto, para uma conexão com os 500ms de RTT e um RxBuffer máximo de 64KB, não devemos esperar mais que 1Mbps de download e 640bps de upload.
Espero que você esteja no caminho certo. Lendo de volta, confundi-me ...