TELNET
The main task of the Internet and its TCP/IP protocol suite is to provide services for users. For example, users want to be able to run different application programs at a remote site and create results that can be transferred to their local sites. One way to satisfy these demands is to create different client-server application programs for each desired service. Programs such as file transfer programs (FTP and TFTP), e-mail (SMTP), and so on are already available. But it would be impossible to write a specific client-server program for each demand.
The better solution is a general-purpose client-server program that lets a user access any application program on a remote computer; in other words, allows the user to log on to remote computer. After logging on, a user can use the services available on the remote computer and transfer the results back to the local computer.
We discuss a popular client-server application program called TELNET. TELNET is an abbreviation for Terminal Network. TELNET enables the establishment of a connection to a remote system in such a way that the local terminal appears to be a terminal at the remote system.
When a user logs into a local time-sharing system, it is called local login. As a user types at a terminal or at a workstation running a terminal emulator, the keystrokes are accepted by the terminal driver. The terminal driver passes the character to the operating system. The operating system, in turn, interprets the combination of characters and invokes the desired application program or utility.

The mechanism, however, is not as simple as it seems because the operating system may assign special meanings to special characters, for example, in UNIX some combinations of characters have special meanings such as the combination of the control character with the character `z', which means suspend; the combination of control character with the character `c', which means abort; and so on. Whereas these special situations do not create any problem in local login because the terminal emulator and the terminal driver know the exact meaning of each character or combination of characters, they may create problems in remote login. Which process should interpret special characters, the client or the server?
When a user wants to access an application program or utility located on a remote machine, he or she performs remote login. Here the TELNET client and server programs come into use. The user sends the keystrokes to the terminal driver where the local operating system accepts the characters but does not interpret them. The characters are sent to the TELNET client, which transforms the characters to a universal character set called network virtual terminal characters and delivers them to the local TCP/IP stack.
The commands or text, in Network Virtual Terminal form, travel through the Internet and arrive at the TCP/IP stack at the remote machine. Here the characters are delivered to the operating system and passed to the TELNET server, which changes the characters to the corresponding characters understandable by the remote computer. However, the characters cannot be passed directly to the operating system

because the remote operating system is not designed to receive characters from a terminal driver. The solution is to add a piece of software called a pseudo terminal driver, which pretends that the characters are coming from a terminal. The operating system then passes the characters to the appropriate application program.
BACK |