telnet协议内容提取

选项协商是Telnet协议最复杂的部分,总共有39个选项用于配置本地和远程主机间的工作模式。当一方要执行某个选项时需向另一端发出请求,若对方接受该选项,则选项在两端同时起作用,否则两端保持原来的模式。Telnet的命令格式如表2.1、表2.2所示。IACTelnet协议中的保留码,双方用IAC确定收到的字节是数据还是命令,Telnet协议的命令是至少包含两个字符(IAC和命令码)的字节序列,选项协商则有3个字节,第三个字节为协商的选项。当协商的选项存在子选项时,要进行子选项协商,命令格式如表2.2所示。

 

2.1 Telnet选项协商命令格式

IAC

命令码

选项码

2.2 Telnet子选项协商命令格式

IAC

SB

选项码

参数

IAC

SE

 

         

 

算法思想是将子选项协商和选项协商的内容剔除掉,剩下的内容便是传输的内容。具体的实现算法为取存储数组text的第i个字符,i的初始值为0,先判断texti】是否为‘\0’,如果为‘\0’则将提取的内容拿去检测,如果不是则判断是否为IAC,如果不是IAC则将此字符存储起来,如果是则判断下一个字符是否为SB,如果为SB即开始子选项协商,需要不断的循环查找IACSE字符串,直到找到退出查找,如果不是SB则判断是否为WILLWONTDODONT,如果不是则存储此字符,如果是则丢弃下一个字符,因为下一个字符将是协商内容的字符,这样便可以完成telnet协议分析和内容的提取。



 

         

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值