在下是个菜鸟,初步接触telnet协议,在百度查看协议内容时,发现里面有一些话,可能是由于英文翻译成中文的原因,读起来非常拗口,而且看不懂。所以在此求教!
笔者知道在使用“WILL”,“WONT”,“DO”,“DONT”这种选项协商对话的时候,如果没有其他机制,会出现一种死循环,比如
A:IAC WILL 32
B:IAC DO 32
(接下来A以为B是发的请求,而不是应答,所以……)
A:IAC WILL 32
……
所以telnet协议有一些规则来防止死循环,以下引用两种(百度上面搜索到telnet协议基本都有以下原话):
“a. 任何一方仅可以要求对选项状态的变化:例如,一方不可以发出请求,仅仅说明它
在什么样的选项状态下。
b. 如果一方接收到好象是请求的信息,请求进入一个已经进入的状态,此信息将被看
作是一个确认消息。这种非响应从本质上防止了不可终止的对话的循环。如果要求发送一个要求改变状态的请求,即使状态并未改变。”
求问:
Q1:规则ab到底是什么意思?请举例解释一下,同上AB对话的那种格式。
Q2:选项可不可以理解成是状态机,就像在WINDOWS下对一些选项打勾,只是增加申请打勾的这种功能?
谢谢大家!