Articulo de referencia

TCP compuesto

El protocolo TCP compuesto (CTCP) es un algoritmo de Microsoft que se introdujo como parte de la pila TCP de Windows Vista y Windows Server 2008. Está diseñado para ajustar agre...

El protocolo TCP compuesto (CTCP) es un algoritmo de Microsoft que se introdujo como parte de la pila TCP de Windows Vista y Windows Server 2008. Está diseñado para ajustar agresivamente la ventana de congestión del remitente con el fin de optimizar el protocolo TCP para conexiones con productos con gran retardo de ancho de banda, al mismo tiempo que se intenta no perjudicar la imparcialidad (como puede ocurrir con HSTCP ). También está disponible para Linux, así como para Windows XP y Windows Server 2003 a través de una revisión. [1]

Principios de funcionamiento

Al igual que FAST TCP y TCP Vegas , Compound TCP utiliza estimaciones del retraso de cola como medida de la congestión; si el retraso de cola es pequeño, supone que no hay enlaces en su ruta congestionados y aumenta rápidamente su velocidad. A diferencia de ellos, no busca mantener una cantidad constante de paquetes en cola.

El TCP compuesto mantiene dos ventanas de congestión: una ventana AIMD normal y una ventana basada en retardo. El tamaño de la ventana deslizante real utilizada es la suma de estas dos ventanas. La ventana AIMD se incrementa de la misma manera que la aumenta TCP Reno . Si el retraso es pequeño, la ventana basada en el retraso aumenta rápidamente para mejorar la utilización de la red. Una vez que se experimenta la formación de colas, la ventana de retraso disminuye gradualmente para compensar el aumento de la ventana AIMD. El objetivo es mantener su suma aproximadamente constante, en lo que el algoritmo estima que es el producto del ancho de banda por el retraso de la ruta . En particular, cuando se detecta la formación de colas, la ventana basada en el retraso se reduce en el tamaño de cola estimado para evitar el problema de "congestión persistente" informado para FAST y Vegas. Por lo tanto, a diferencia de TCP-Illinois y su precursor TCP Africa, el TCP compuesto puede reducir su ventana en respuesta al retraso. Esto aumenta su equidad con Reno. [ cita requerida ]

Se pueden encontrar descripciones de Compound TCP en un artículo de conferencia, [2] un borrador de Internet, [3] y una patente estadounidense. [4]

Windows 2003 y XP x64

Hay una revisión disponible que agrega compatibilidad con CTCP para Windows XP y Windows Server 2003 de 64 bits. [1]

La siguiente clave de registro se puede configurar en 1 para habilitar o en 0 para deshabilitar:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Servicios\Tcpip\Parámetros\TCPCongestionControl

Windows Vista/2008/7

CTCP está habilitado de forma predeterminada en computadoras que ejecutan versiones beta de Windows Server 2008 y deshabilitado de forma predeterminada en computadoras que ejecutan Windows Vista y 7.

CTCP se puede habilitar con el comando:

Interfaz netsh tcp establecida globalmente congestionprovider=ctcp 

o deshabilitado con el comando:

Interfaz netsh tcp establecida global congestionprovider=none

Para mostrar la configuración actual para el uso de CTCP:

Interfaz netsh tcp mostrar global

El parámetro "Proveedor de control de congestión complementario" tendrá un valor de "ninguno" si CTCP está deshabilitado o "ctcp" si está habilitado.

Windows 8 y posteriores

Desde Windows 8, Windows utiliza el comando Set-NetTCPSetting de PowerShell para modificar el algoritmo de control de congestión. Alrededor de 2018, Microsoft dejó de usar CTCP y comenzó a usar CUBIC en Windows 10 y Xbox, ya que se consideraba que era muy sensible a los retrasos y también funcionaba mal en los centros de datos, donde la variación de los retrasos era un problema.

Linux

CTCP fue portado a Linux por Angelo P. Castellani [ cita requerida ] . Un parche derivado de esto fue desarrollado en Caltech, que incluía TUning By Emulation (TUBE) de CTCP, y solo se lanzó a los investigadores debido a patentes de software . [5] [ se necesita una mejor fuente ] Desde la versión del kernel 2.6.17, el módulo ha sido incompatible y no se compila debido a cambios en la API del kernel.

Véase también

Referencias

  1. ^ ab Hay disponible una revisión que agrega compatibilidad con Compound TCP (CTCP) a las computadoras que ejecutan Windows Server 2003 o Windows XP
  2. ^ Tan, K.; Song, J.; Zhang, Q.; Sridharan, M. (2006). "Un enfoque TCP compuesto para redes de alta velocidad y larga distancia". Actas IEEE INFOCOM 2006. 25.ª Conferencia internacional IEEE sobre comunicaciones informáticas . págs. 1–12. doi :10.1109/INFOCOM.2006.188. ISBN 1-4244-0221-2. Número de identificación del sujeto  1741788.
  3. ^ Tan, Kun; Sridharan, Murari; Bansal, Deepak; Thaler, Dave. "TCP compuesto: un nuevo control de congestión TCP para redes de alta velocidad y larga distancia". Ietf Datatracker .
  4. ^ "Protocolo de control de transmisión compuesto [US7577097B2]". Google Patents . 22 de marzo de 2005.
  5. ^ "TCP compuesto en Linux". Archivado desde el original el 2 de agosto de 2008. Consultado el 4 de enero de 2011 .
  • Borrador de Internet sobre TCP compuesto
  • "Un enfoque TCP compuesto para redes de alta velocidad y larga distancia" Julio de 2005
  • Mejoras de rendimiento en la pila TCP/IP de próxima generación, The Cable Guy
  • El TCP compuesto para redes de alta velocidad y larga distancia, publicación de Microsoft Research
  • Promesas y peligros del protocolo TCP/IP de Vista, artículo publicado en Network Performance Daily
  • Parche Compound TCP de Caltech para Linux
  • Habilitación de CTCP en 2003/XP x64: [1] Archivado el 6 de mayo de 2008 en Wayback Machine . [2] Archivado el 30 de abril de 2008 en Wayback Machine.
  • Informe sobre la evaluación experimental del compuesto TCP Hamilton Institute y Caltech, marzo de 2008.
  • Un estudio basado en simulación de Compound TCP [ enlace muerto ] 14 de julio de 2008
Obtenido de "https://es.wikipedia.org/w/index.php?title=TCP_compuesto&oldid=1144908405"