over an open network such as the Internet, its use for this purpose has waned significantly in favor of SSH. The usage of Telnet for remote management has declined rapidly, especially on the public Internet, in favor of the Secure Shell (SSH) protocol. SSH provides much of the functionality of telnet, with the addition of strong encryption to prevent sensitive data such as passwords from being intercepted, and public key authentication, to ensure that the remote computer is actually who it claims to be. Modern day uses Telnet may be used in debugging network services such as SMTP, IRC, HTTP, FTP or POP3, to issue commands to a server and examine the responses. For example, Telnet client applications can establish an interactive TCP session to a port other than the Telnet server port. For example, a command line telnet client could make an HTTP request to a web server on TCP port 80 as follows: $ telnet www.example.com 80 GET /path/to/file.html HTTP/1.1 Host: www.example.com Connection: closeThe older protocol is used these days only in rare cases to access decades-old legacy equipment that does not support more modern protocols. For example, a large number of industrial and scientific devices only have Telnet available as a communication option. Some are built with only a standard RS-232 port and use a serial server hardware appliance to provide the translation between the TCP/Telnet data and the RS-232 serial data. In such cases, SSH is not an option unless the interface appliance can be configured for SSH (or is replaced with one supporting SSH). Telnet is commonly used by amateur radio operators for providing public information. Although recommended against, security researchers estimated that 7,096,465 devices connected to the Internet continue to use Telnet, however, much less are often estimated because most estimates only scan for TCP port 23. Technical details The technical details of Telnet are defined by a variety of specifications including RFC 854. USASCII control codes Telnet commands Telnet commands consist of at least two bytes. The first byte is the IAC escape character (typically byte 255) followed by the byte code for a given command: Interpret As Command All data octets except 0xff are transmitted over Telnet as is. (0xff, or 255 in decimal, is the IAC byte (Interpret As Command) which signals that the next byte is a telnet command. The command to insert 0xff into the stream is 0xff, so