现在的位置: 首页 > 综合 > 正文

Telnet协议概述

2013年09月14日 ⁄ 综合 ⁄ 共 1134字 ⁄ 字号 评论关闭

Telnet协议可以工作在任何主机(例如,任何操作系统)或任何终端之间。RFC854[Postel和Reynolds1983a]定义了该协议的规范,其中还定义了一种通用字符终端叫做网络虚拟终端NVT(NetworkVirtualTerminal)。NVT是虚拟设备,连接的双方,即客户机和服务器,都必须把它们的物理终端和NVT进行相互转换。也就是说,不管客户进程终端是什么类型,操作系统必须把它转换为NVT格式。同时,不管服务器进程的终端是什么类型,操作系统必须能够把NVT格式转换为终端所能够支持的格式。

  NVT是带有键盘和打印机的字符设备。用户击键产生的数据被发送到服务器进程,服务器进程回送的响应则输出到打印机上。默认情况下,用户击键产生的数据是发送到打印机上的,但是我们可以看到这个选项是可以改变的。

NVTASCII
  术语NVTASCII代表7比特的ASCII字符集,网间网协议族都使用NVTASCII。每个7比特的字符都以8比特格式发送,最高位比特为0。行结束符以两个字符CR(回车)和紧接着的LF(换行)这样的序列表示。以/r/n来表示。单独的一个CR也是以两个字符序列来表示,它们是CR和紧接着的NUL(字节0),以/r/0表示。

Telnet命令
  Telnet通信的两个方向都采用带内信令方式。字节0xff(十进制的255)叫做IAC(interpretascommand,意思是“作为命令来解释”)。该字节后面的一个字节才是命令字节。如果要发送数据255,就必须发送两个连续的字节255(在前面一节中我们讲到数据流是NVTASCII,它们都是7bit的格式,这就暗示着255这个数据字节不能在Telnet上传输。其实在Telnet中有一个二进制选项,在RFC856[Postel和Reynolds1983b]中有定义,关于这点我们没有讨论,该选项允许数据以8bit进行传输)。图26-8列出了所有的Telnet命令。由于这些命令中很多命令很少用到,所以对于一些重要的命令,如果在下面章节的例子或叙述中遇到,我们再做解释。

名称 代码(十进制)
E O F 2 3 6 文件结束符  
S U S P 2 3 7 挂起当前进程(作业控制)
A B O RT 2 3 8 异常中止进程
E O R 2 3 9 记录结束符
S E 2 4 0 子选项结束
N O P 2 4 1 无操作
D M 2 4 2 数据标记
B R K 2 4 3 中断
I P 2 4 4 中断进程
A O 2 4 5 异常中止输出
AY T 2 4 6 对方是否还在运行?
E C 2 4 7 转义字符
E L 2 4 8 删除行
G A 2 4 9 继续进行
S B 2 5 0 子选项开始
W I L L 2 5 1 选项协商(图2 6 - 9)
W O N T 2 5 2 选项协商
D O 2 5 3 选项协商
D O N T 2 5 4 选项协商
I A C 2 5 5 数据字节2 5 5

当前一个字节是IAC(255)时的Telnet命令集 

抱歉!评论已关闭.