Pregunta:
He configurado un Cisco 2911 con una tarjeta HWIC-1T como servidor terminal usando la siguiente configuración. Puedo hacer telnet al puerto 2003 de la dirección de loopback y establecer una conexión en serie a una computadora portátil conectada a la tarjeta HWIC-1T.
interface serial 0/0/0
physical-layer async
no ip address
encapsulation slip
line 0/0/0
no exec
transport input telnet
transport output none
El flujo de caracteres que va desde la conexión en serie a la sesión de telnet funciona perfectamente. Sin embargo, el flujo de caracteres que va de la sesión de telnet a la conexión en serie a la computadora portátil se retrasa un carácter la mayor parte del tiempo.
Lo que significa que si escribo "1234" en la ventana de telnet, veré sólo "123" salir de la ventana de serie. El último carácter no se pierde, solo se almacena en el búfer del enrutador hasta que presione la tecla siguiente. A veces, el enrutador almacenará en búfer dos caracteres y, a veces, si escribo dos caracteres juntos en una sesión rápida, ambos se mostrarán correctamente.
Sé que el enrutador está haciendo el almacenamiento en búfer porque ejecuté Wireshark y vi que el paquete TCP con el último carácter ingresaba al enrutador y no se mostraba de inmediato.
¿Qué estoy haciendo mal? ¡Gracias por adelantado!
Respuesta:
Desactive el algoritmo de Nagle , ya que puede introducir un retraso en las conexiones telnet. En general, Nagle es algo bueno ™, pero recuerdo que lo hacía en conexiones telnet. (¿Telnet? ¿Terminal Server? … Estoy teniendo flashbacks.) Algo así como no service nagle
en la configuración global (si recuerdo correctamente).
actualizar
Esto resulta que no resuelve la pregunta del OP; pero sigue siendo útil mantenerlo aquí. Estoy editando mi respuesta para que las personas que votaron a favor tengan la posibilidad de deshacer su voto a favor.