Incrementa los TCB disponibles en tu sistema

Gestión empresarialSoftwareSoftware colaborativoWorkspace

Aumenta el número de TCB disponibles para poder mantener abiertas más conexiones de red en tu equipo

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.