⑴ 计算机网络-应用层-远程终端协议TELNET
TELNET是一个简单的远程终端协议,用户用TELNET就可在其所在地通过TCP连接注册(即登录)到远地的另一台主机上(使用主机名或P地址)。TELNET能将用户的击键传到远地主机,同时也能将远地主机的输出通过TCP连接返回到用户屏幕。这种服务是透明的,因为用户感觉到好像键盘和显示器是直接连在远地主机上。因此, TELNET又称为终端仿真协议 。
TELNET使用客户服务器方式。在本地系统运行TELNET客户进程,而在远地主机则运行TELNET服务器进程。和FTP的情况相似, 服务器中的主进程等待新的请求,并产生从属进程来处理每一个连接。
TELNET能够适应许多计算机和操作系统的差异。例如,对于文本中一行的结束,有的系统使用ASCI码的回车(CR),有的系统使用换行LF),还有的系统使用两个字符,回车-换行(CR-LF)。又如,在中断一个程序时,许多系统使用Control--C,但也有系统使用ESC按键。为了适应这种差异,TELNET定义了数据和命令应怎样通过互联网。这些定义就是所谓的 网络虚拟终端NVT (Network Virtual Terminal)。
NVT的意义: 客户软件把用户的击键和命令转换成NVT格式,并送交服务器。服务器软件把收到的数据和命令从NVT格式转换成远地系统所需的格式。向用户返回数据时,服务器把远地系统的格式转换为NVT格式,本地客户再从NVT格式转换到本地系统所需的格式。
NVT的格式定义很简单。所有的通信都使用8位一个字节。在运转时,NVT使用7位ASCI码传送数据,而当高位置1时用作控制命令。ASCⅡ码共有95个可打印字符(如字母、数字、标点符号)和33个控制字符。所有可打印字符在NVT中的意义和在ASCI码中一样。但NVT只使用了ASCII码的控制字符中的几个。此外,NVT还定义了两字符的CRLF为标准的行结束控刷符。当用户键入回车按键时,TELNET的客户就把它转换为CR-LF再进行传输,而TELNET服务器要把CR-LF转换为远地机器的行结束字符。
TELNET的选项协商(Option Negotiation)使TELNET客户和TELNET服务器可商定使用更多的终端功能,协商的双方是平等的。