版权归原作者所有,如有侵权,请联系我们

[科普中国]-网络虚拟终端

科学百科
原创
科学百科为用户提供权威科普内容,打造知识科普阵地
收藏

定义

用户计算机与远程服务器所使用的计算机和操作系统各不相同,如果不考虑系统间的差异,那么在本地发出的字符及命令,传送到远程主机并被远程系统解释后可能会不准确或出现错误。例如:一些操作系统需要每行文本用ASCII回车控制符(CR)结束,而另一些系统则需要使用ASCII换行符(LF),还有的系统需要用两个字符的回车换行(CR-LF)序列。再比如,多数操作系统为用户提供了一个中止程序运行的快捷键,但在不同的系统中这个快捷键是不同的(一些系统使用Ctrl+C,而另一些系统使用Escape)。

为支持异构性(在不同平台和系统中的互操作性),TELNET协议定义了网络虚拟终端(NVT,network virtual terminal ),即数据和命令序列在Internet上传输的标准表示方式。

网络虚拟终端是客户端一服务器模式的一种实现,把连接的每一端都作为虚拟终端(逻辑I/C设备)对待,逻辑输入设备(或用户的键盘)产生待发送的数据,逻辑输出设备(或显示器)响应接收的数据和远程系统的输出。任一虚拟终端产生的指令,都会被翻译成相应的物理设备指令。

简单地说,为了使远程主机能够正确识别用户输入的信息,而用户屏幕上也能正确显示远程主机输出的信息,网络虚拟终端格式充当了桥粱的作用。1

数据表示网络虚拟终端使用7位标准ASCII码来表示数据,每个7位的字符都以8位(一个字节)的格式发送,最高位固定为1。7位标准ASCII字符集包括95个可打印字符(编码32~126)和33个控制码(编码0—31和127),当用户从本地键入普通字符时,网络虚拟终端将按其原始含义传送,当用户键人组合键时,网络虚拟终端将它转化为特殊的ASCII字符在网络上传送。下表列出了网络虚拟终端中定义的控制字符。

|| ||

除了表中所列控制字符外,网络虚拟终端把两个字符的序列CR—LF定义为标准行结束符。当用户按下相当于行结束的键时,TELNET客户端必须把它映射为CR-LF才能传输,而TELNET服各端则要把CR-LF翻译为远程机器上相应的行结束符。1

工作原理在建立Telnet连接的客户/服务器系统两端,信息的传递各自采用本地的格式。客户端程序将用户的输入转化为统一标准的网络虚拟终端格式,再经网络以TCP数据报的方式传送到远程服务器,服务器程序将网络虚拟终端格式的信息转化为本地服务器操作系统格式。

服务器按照用户请求提供相应服务,最后也以同样的过程将执行结果返回给客户程序,客户程序将其转化为客户端格式,并显示在用户屏幕之上。

经过网络终端网络虚拟终端的屏蔽作用,可以实现异种操作系统问的互操作性,它是在网络的高层再次实现了网络的一致性。与网络虚拟终端相对应,IP协议则在网络的下层实现了物理网络的一致性。2