Cenário: COP como servidor, SOLDIER como cliente, Ethernet 100Mbps com perda de pacotes variável. Mensagens de 500 bytes.
Protocolo | 0% | 0,1% | 1% | 3% | 10% |
---|---|---|---|---|---|
TCPM | 90596 | 78846 | 57876 | 23396 | 878 |
SCTP | 60773 | 56834 | 57030 | 46438 | 852 |
Perdas em %, vazões em kbps (1kbps = 1000 bits/s).
Em perdas moderadas (1% a 3%), o SCTP conseguiu manter uma vazão maior que TCP, possivelmente beneficiado pelo fato do teste remeter continuamente pacotes nas duas direções, o que permitiu ao mais elaborado SACK do SCTP atuar com presteza.
No teste de latência, a inexistência de tráfego contínuo nos dois sentidos impediu o SACK de atuar.
Protocolo | 0% | 0,1% | 1% | 3% | 10% |
---|---|---|---|---|---|
TCPM | 281,0 | 483,9 | 5190,0 | 14418,5 | 67097,0 |
SCTP | 318,5 | 1920,0 | 24662,0 | 82718,0 | 671100,5 |
Perdas em %, latência em µs
Dentre todos os testes, este foi o pior resultado do SCTP, por uma combinação de fatores:
No primeiro teste, que forneceu os dados para a dissertação e para o gráfico acima, ajustar o RTO mínimo padrão não ajudou muito: o tráfego começava rápido mas acabava estolando e convergindo para uma taxa muito baixa.
Num segundo teste, feito depois da dissertação concluída, o ajuste do RTO mínimo resolveu o problema, e o SCTP apresentou performance semelhante ao TCPM em redes com perdas. Isto enfraquece a hipótese do controle de congestionamento do TCP ser mais avançado que o do SCTP.
Assim, permanece ainda a dúvida se o controle de congestionamento do SCTP tem alguma instabilidade (que mudaria seu comportamento "conforme a fase da lua") ou foi cometido algum erro à época do primeiro teste.
Se o controle de congestionamento do SCTP não tiver nenhum bug, ainda assim a implementação LK-SCTP deveria considerar baixar os parâmetros ajustáveis de RTO para patamares bem mais baixos, pois a maioria do usuários não tenta fazer qualquer tuning do sistema, e ao experimentar baixa performance do SCTP, colocará automaticamente a culpa no protocolo ou na implementação.