计算机网络-6-4-远程终端协议TELNET
远程终端协议TELNET
TELNET是一个简单的远程终端协议[RFC 845],它是互联网的正式标准,用户使用TELNET就可以在其所在地通过TCP连接注册(登录)到远地的另一台主机上(使用主机名或者IP地址),TELNET能将用户的击键传到远程主机上,同时也能将远程主机的输出通过TCP连接返回到用户屏幕上。这种服务是透明的,因为用户感觉到好像键盘和显示器是直接连接在远程主机上。因此,TELNET又称之为终端仿真协议。
TELNET也使用了客户服务器方式,在本地系统运行TELNET客户进程,而在远处的主机上运行TELNET服务器进程。和FTP的情况类似,服务器中的主进程等待新的请求,并产生从属进程来处理每一个连接。
TELNET能够适用许多计算机和操作系统的差异。不同的操作系统命令并不是一样的,为了适应这些差异,TELNET定义了数据和命令应怎样通过互联网。这些定义就是所谓的网络虚拟终端NVT(Network Virtual Terminal),如图6-7:
客户软件把用户的击键和命令转化成NVT格式,并送交给服务器。服务器软件把收到的数据和命令从NVT格式转换为远地系统所需要的格式。向用户返回数据时,服务器把远地系统的格式转换为NVT格式,本地客户再从NVT格式转换到本地系统所需的格式。
NVT的格式定义很简单。所有的通信都是8位一个字节。在运转时候,NVT使用7位ASCII码传送数据,而当最高位1时用作控制命令。ASCII码共有95个可打印字符和33个控制字符。所有打印字符在NVT中的意义和在ASCII中的意义一样,但NVT只使用了ASCII中的控制字符的一部分,除此之外,NVT还定义了两字符的CR-LF为标准的行结束符。
TELNET的选项协商(Option Negotiation)使用了TELNET客户和TELNET服务器可商定使用更多的功能,协商的双方是平等的。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构