Como habilito o TCP Composto (CTCP)?

5

Eu gostaria de usar o Compound TCP no Ubuntu.

A página da Wikipedia diz:

  

Além do Windows, o CTCP também foi portado para o Linux. Desde [...] a versão 2.6.17 do kernel, o módulo é incompatível e falha na compilação devido a alterações na API do kernel.

Existe uma implementação mais recente que funcione corretamente?

    
por Dialogos 09.01.2013 / 14:56

2 respostas

5

O TCP composto pela Microsoft é apenas uma implementação de um protocolo de algoritmo de congestionamento. No Linux isso foi descartado como você já encontrou, e parece que o TCP Illinois foi o sucessor direto, mas não usei muito mais.

Algum trabalho foi feito para implementar Illinois desde 2.6.22: artigo do LWN: TCP versão preliminar de Illinois . Também parece ainda disponível nas versões atuais: net/ipv4/tcp_illinois.c na árvore estável pelo linux .

TCP New Reno , outra alternativa baseada em RFC3782 parece ser o mais comumente usado no Linux e completamente integrado ao kernel. Veja também a página de manual tcp(7) :

  tcp_available_congestion_control (String; read-only; since Linux 2.4.20)
          Show  a list of the congestion-control algorithms that are registered.  This
          list is a limiting set for the list in tcp_allowed_congestion_control.  More
          congestion-control algorithms may be available as modules, but not loaded.

Verifique os que estão disponíveis no seu sistema:

cat /proc/sys/net/ipv4/tcp_available_congestion_control

e ativo:

cat /proc/sys/net/ipv4/tcp_congestion_control

Altere o ativo escrevendo para ele (exemplo reno ):

echo reno | sudo tee /proc/sys/net/ipv4/tcp_congestion_control

Resumindo: Você provavelmente já está usando um protocolo de algoritmo de congestionamento TCP muito moderno e muito eficiente usando apenas um kernel recente do Linux.

    
por gertvdijk 18.01.2013 / 00:02
2

Até onde pude ver, ele foi removido do kernel principal (veja git commit ). Segundo uma pesquisa dentro do git nunca mais voltou. Então a entrada na Wikipedia está correta. Você não tem chance de fazê-lo funcionar (até reescrever o código).

    
por qbi 17.01.2013 / 14:34