问答题
从某协议的TCP连接中捕获的TCP首部的数据信息为(十六进制表示):0d 28 00 15 00 00 00 06 00 00 00 00 70 02 40 00 c0 29 00 00,已知TCP的首部格式如图所示。试回答:
问答题
源端口号和目的端口号各为多少?
【正确答案】
【答案解析】[答案要点]
一个两字节段“0d 28”,表示源端口号,转换为十进制就是3368。第二个两字节段“00 15”表示目标端口,转换为十进制就是2l。
问答题
发送的序列号是多少?确认号又是多少?
【正确答案】
【答案解析】[答案要点]
接下来的4个字节“00 00 00 06”是序列号(Sequence Number),简写为seq,seq=6;下面的4个字节“00 00 00 00”是确认号(Acknowledgment Number),简写为ACK,ACK=0。
问答题
TCP首部的长度是多少?
【正确答案】
【答案解析】[答案要点]
第13字节的前4个比特为TCP首部的长度,这里的值是7,由于首部长度的基本单位为4B,所以首部长度为28B,说明除了基本首部20B,还有8B的选项数据。
问答题
这是一个使用什么协议的TCP连接?该TCP连接的状态是什么?
【正确答案】
【答案解析】[答案要点]
由于目标端口号为21,所以这是一个使用FTP的TCP连接。至于TCP的状态需要看第14字节中ACK、SYN、FIN等的值,这里为000010,说明ACK的值为0,SYN的值为1,FIN的值为0。FIN为0,说明还有数据需要传送,表示处于TCP的连接建立状态;而ACK为0,SYN为1可以肯定此时处于TCP连接建立的第一次握手阶段,因为后面的两个阶段ACK必须为1。