Incrementa los TCB disponibles en tu sistema

1- Número máximo de TCB

El número total de conexiones de red que un sistema con Windows puede mantener abiertas, no sólo al navegar por Internet sino teniendo en cuenta los programas de comunicaciones que utilices, viene determinado por los TCB (TCP Control Blocks) que hay disponibles. Cada conexión entrante o saliente precisa un TCB, un bloque de parámetros alojado en memoria en el que se almacena toda la información sobre dicha conexión.

Esto implica que no es posible crear nuevas conexiones si no hay TCB disponibles, cuya cantidad viene determinada por dos factores: el número de TCB que crea el sistema; y el tiempo que se tarda en liberar un TCB una vez que la conexión asociada se ha cerrado.

Por fortuna, el número máximo de TCB que crea el sistema puede modificarse en caso de que utilices muchas aplicaciones que precisan acceso a la red. Para llevar a cabo esta acción, haz clic en Inicio, escribe regedit en Ejecutar y pulsa Aceptar. A continuación, tendrás que localizar la clave Parameters de la rama HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip, donde observarás un gran número de parámetros.

Siguiendo la ruta Nuevo y Valor de DWORD, deberás crear un parámetro con el nombre MaxFreeTcbs. A continuación, asigna al nuevo parámetro un valor comprendido entre 2000 y aproximadamente 65000.

En este sentido, conviene destacar que el número de TCB que crea el sistema viene determinado por la cantidad de memoria que haya instalada en el ordenador, estando los valores típicos entre 1000 y 2000. Si no te importa consumir más memoria a cambio de tener la posibilidad de abrir más conexiones, prueba a ir incrementando este valor paulatinamente y observa cómo varía el comportamiento del sistema.

2- TCB disponibles

Cuando se cierra una conexión de red, Windows no libera de inmediato los TCB, sino que los mantiene activos durante un cierto periodo de tiempo antes de reutilizarlos. Durante ese tiempo, la conexión que utilizaba el TCB podría reabrirse a instancias del cliente o del servidor de manera más rápida que si hubiese que crear un nuevo TCB y establecer todos sus parámetros. Por defecto, el tiempo de vida de los TCB tras cerrarse la conexión es de 240 segundos (cuatro minutos).

Si reduces este tiempo conseguirás que los TCB que ya no son útiles se liberen antes y, en consecuencia, habrá más disponibles para iniciar nuevas conexiones. Ese tiempo, no obstante, no debe ser muy pequeño, puesto que entonces afectaría negativamente a la velocidad con que se reanudan las conexiones cerradas momentáneamente, obligando a volver a crear un nuevo TCB.

Para cambiar el tiempo de reutilización de los TCB debes abrir nuevamente el Editor del registro (escribiendo regedit en Ejecutar y pulsando Aceptar) y localizar la clave Parameters en la rama HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip. El parámetro TcpTimedWaitDelay es uno de los que parece en el panel de la derecha, conteniendo el valor 0xffffffff, que indica que el tiempo es el establecido por defecto por el sistema.

Para modificarlo, haz doble clic sobre ese parámetro e introduce el nuevo valor, expresado en segundos. El valor 30 puede ser el más adecuado para mejorar la disponibilidad de TCB sin afectar a la reutilización. Como es habitual, estos cambios suelen requerir que se reinicie el sistema para que tengan efecto.

3- Acceso a los TCB

Los TCB se almacenan en memoria en una estructura de datos conocida como ‘tabla hash’, mediante la que se facilita una búsqueda rápida; técnicamente se dice que en tiempo constante del TCB que corresponde a cada conexión, lo que significa que es casi instantánea.

El tamaño de esta tabla ha de estar en consonancia con el número máximo de TCB que puede crear el sistema, por lo que si se incrementa este último factor también es preciso aumentar las dimensiones de la tabla.

Para llevar a cabo esta acción, deberás abrir el Editor del registro (escribiendo regedit en Ejecutar y pulsando Aceptar) y localizar la clave Parameters de la rama HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip. Siguiendo la ruta Nuevo y Valor de DWORD, crearás un nuevo parámetro y le darás el nombre MaxHashTableSize. Por último, deberás asignarle un valor siempre superior al de MaxFreeTcbs que sea múltiplo de dos. Valores como 8192, 16384, 32768 o 65536 son los más adecuados.

Deberás tener en cuenta que al incrementar el número de bloques de control TCP y el tamaño de la tabla que los almacena, la memoria libre del sistema se reducirá proporcionalmente. Más importancia si cabe tendrá este factor en el caso de que tu ordenador no disponga de demasiada memoria, ya que podría verse afectado su rendimiento general.

Rubén G. López

Recent Posts

Google paga 5.000 millones de dólares para resolver una demanda colectiva

Los usuarios denunciaban que la compañía los había rastreado incluso cuando usaban el modo privado…

4 meses ago

Las pymes valencianas pueden optar a ayudas de 5,5 millones de euros por proyectos de I+D

El Instituto Valenciano de Competitividad Empresarial financiará aquellas iniciativas que puedan solucionar incertidumbres científicas o…

4 meses ago

La guerra entre Israel y Gaza no acobarda a los inversores extranjeros de startups

Solo en el cuarto trimestre las empresas emergentes del país han levantado 1.500 millones de…

4 meses ago

Navarra ya cuenta con más de 80 startups

La región tiene 13 scaleups y destaca por sus empresas emergentes de salud y agrotech.

4 meses ago

Las startups valencianas progresaron adecuadamente en 2023

Valencia ha atraído en el primer semestre del año 30 millones de euros de inversión…

4 meses ago

El New York Times acusa a Open AI y Microsoft de infringir sus derechos de autor

El diario estadounidense demanda a las dos compañías tecnológicas por haber usado sus contenidos para…

4 meses ago