TELNET operates in three modes as explained below.
TELNET Half-duplex mode
As the name implies, in half-duplex mode only one telnet device can transmit at a time. One TELNET device will not transmit new data until the previous one has been received by the other TELNET device. A special Go Ahead command is used to inform the other device that it can start transmission now. In half-duplex mode, the client waits for the Go Ahead command from the server before accepting further input from the user. Half-duplex telnet is rarely used.
TELNET Character mode
In telnet Character mode, only one character is transmitted at a time. The server will acknowledge the receipt of character by echoing it back to the TELNET client. The TELNET client will send back a TCP ACK packet to the TELNET server to inform the receipt of echo from server. For each character, an IP datagram packet is generated. This may cause high volume of network traffic and connectivity delays. Refer following image to see what a character echo is. Actual user name is jajish, but seen as jjaajjiisshh in assembled captured packets. One additional character is the echo back from TELNET server.
TELNET "Line-at-a-time" mode
Telnet "Line-at-a-time" mode is derived from TELNET Character mode. In Telnet "Line-at-a-time" mode, text is echoed locally and the completed lines are sent to TELNET server. Either SUPRESS GO AHEAD or ECHO is disabled in Telnet "Line-at-a-time" mode.
TELNET Line mode
In TELNET Line mode, data is transmitted one full line at a time. TELNET client and server negotiate to run in TELNET line mode.