基于TCP协议,面向连接的一种服务。
1 使用Telnet协议远程登录的工作过程
(1)本地与远程主机建立连接。该过程实际上是建立一个TCP连接,用户必须知道远程主机的IP地址或域名;
(2)将本地终端上输入的用户名和口令以及输入的任何命令或字符以NVT格式传送到远程主机。该过程实际上是从本地主机向远程主机发送一个IP数据包;
(3)将远程主机输出的NVT格式的数据转化为本地所接受的格式送回本地终端,包括输入命令回显和命令执行结果;
(4)最后,本地终端对远程主机进行撤销连接。该过程是撤销一个TCP连接。
2 使用Telnet协议远程登录的交互过程
2.1 本地主机上的Telnet客户程序主要完成以下功能:
(1)建立与远程服务器的TCP连接。
(2)从键盘上接收本地输入的字符。
(3)将输入的字符串变成标准格式并传送给远程服务器。
(4)从远程服务器接收输出的信息。
(5)将该信息显示在本地主机屏幕上。
2.2 远程主机上的“服务”程序一接到本地主机的请求,将完成以下功能:
(1)通知本地主机,远程主机已经准备好了。
(2)等候本地主机输入命令。
(3)对本地主机的命令作出反应(如显示目录内容,或执行某个程序等)。
(4)把执行命令的结果送回本地计算机显示。
(5)重新等候本地主机的命令。
2.3 Telnet协议OSI模型的交互过程分析
第一层Frame;
第二层是Ethernet II(链路层)主要由源和目标主机的网卡(Mac)地址组成;
第三层(网络层)是IP协议报头,主要包括源和目标的IP地址等;
第四层(传输层)是TCP协议报头,主要包括源和目标的端口号、包序列号等;
第五层(应用层)是Telnet数据;主界面的下部是此数据包的具体内容,以16进制显示。
连接后首先进行选项协商,然后传输数据。
3 Telnet协议基本内容
Telnet是位于OSI模型的第7层—应用层上的一种协议,是一个通过创建虚拟终端提供连接到远程主机终端仿真的TCP/IP协议。这一协议需要通过用户名和口令进行认证,是Internet远程登录服务的标准协议。应用Telnet协议能够把本地用户所使用的计算机变成远程主机系统的一个终端。它提供了三种基本服务:
(1)Telnet定义一个网络虚拟终端为远程系统提供一个标准接口,客户机程序不必详细了解远程系统,他们只需构造使用标准接口的程序。
(2)Telnet包括一个允许客户机和服务器协商选项的机制,而且它还提供一组标准选项。
(3)Telnet对称处理连接的两端,即Telnet不强迫客户机从键盘输入,也不强迫客户机在屏幕上显示输出。
4 Telnet协议之NVT(网络虚拟终端)
为了适应系统见之间的异构环境,Telnet协议定义了数据和命令在Internet上的传输方式,此定义被称作网络虚拟终端NVT。
NVT的应用过程如下:对于发送的数据,客户机软件把来自用户终端的按键和命令序列转换为NVT格式,并发送到服务器,服务器软件将收到的数据和命令,从NVT格式转换为远地系统需要的格式;对于返回的数据,远地服务器将数据从远地机器的格式转换为NVT格式,而本地客户机将接收到的NVT格式数据再转换为本地的格式。
5 Telnet协议数据流向
6 Telnet协议的协商方式
Telnet协议的协商方式,它对于每个选项的处理都是对称的,即任意一端都可以发出协商申请,任何一端都可以接受或拒绝这个申请。有些新的选项当不了解时,可能会转到效率较低但可工作的方式下运行,所有这些设计都是为了增强适应异构性。