- 一个TCP首部数据为:0x 0D 28 00 15 50 5F A9 06 00 00 00 00 70 02 40 00 C0 29 00 00 (注:共20个字节,0x代表数据为16进制),分析数据,试求:这两个字节,总共16bit,
a)源端口和目的端口(2分)
源端口是3368目的端口是21
b)序列号和确认号(16进制)(2分)
序号50 5F A9 06
确认号00 00 00 00
c)应用层的协议类型(2分)
文件传输协议(File Transfer Protocol):向FTP站点发送连接请求
d)指出该报文段是处于TCP会话的哪个阶段(建立连接/数据传输/释放连接),并说明理由。(2分) (共8分)
建立连接: 三次握手(ThreeWay-Handshake)的第一步
TCP数据为:SEQ=50 5f a9 06,ACKNUM=00 00 00 00,SYN=1,ACK=0。
SYN:(Synchronize sequence numbers)用来建立连接,在连接请求中,SYN=1,ACK=0,连接响应时,SYN=1,ACK=1。即,SYN和ACK来区分Connection Request和Connection Accepted。
“70 02”,转换为二进制“0111 0000 0000 0010”
第一个4bit“0111”,是TCP头长,十进制为7,表示28个字节
接着的6bit现在TCP协议没有用上,都为0
最后的6bit“00 0010”是六个重要的标志
字段 | 值(16进制) | 含义 | ||||||||||||||||||||||||||||||||||||||||||||||||
源端口 | 0D 28 | 源端口是3368 | ||||||||||||||||||||||||||||||||||||||||||||||||
目的端口 | 00 15 | 目的端口是21 | ||||||||||||||||||||||||||||||||||||||||||||||||
序号 Sequence Number | 50 5F A9 06 | TCP报文段的序号SEQ=1348446470 | ||||||||||||||||||||||||||||||||||||||||||||||||
确认号 Acknowledgment Number | 00 00 00 00 | TCP报文段的确认号0 | ||||||||||||||||||||||||||||||||||||||||||||||||
数据偏移 | 7 | TCP报文段首部长度 4*7=28字节 | ||||||||||||||||||||||||||||||||||||||||||||||||
保留 | (000000)2进制 | 保留为今后使用 | ||||||||||||||||||||||||||||||||||||||||||||||||
URG(紧急比特) | 0 | 紧急指针无效 | ||||||||||||||||||||||||||||||||||||||||||||||||
ACK(确认比特) | 0 | 确认比特无效 | ||||||||||||||||||||||||||||||||||||||||||||||||
PSH(推送比特) | 0 | 推送比特无效 | ||||||||||||||||||||||||||||||||||||||||||||||||
RST(复位比特) | 0 | 复位比特无效 | ||||||||||||||||||||||||||||||||||||||||||||||||
SYN(同步比特) | 1 | 同步比特有效,此TCP报文段为同步报文段 | ||||||||||||||||||||||||||||||||||||||||||||||||
FIN(终止比特) | 0 | 终止比特无效 | ||||||||||||||||||||||||||||||||||||||||||||||||
窗口 | 40 00 | 设置发送端的发送窗口为16384 字节 | ||||||||||||||||||||||||||||||||||||||||||||||||
校验和 | C0 29 | TCP报文段的校验和 | ||||||||||||||||||||||||||||||||||||||||||||||||
紧急指针 | 00 00 | 因为URG=0,紧急指针无效
a)源端口和目的端口(2分) 源端口是3368目的端口是21 b)序列号和确认号(16进制)(2分) 序号50 5F A9 06 确认号00 00 00 00 c)应用层的协议类型(2分) 文件传输协议(File Transfer Protocol):向FTP站点发送连接请求 d)指出该报文段是处于TCP会话的哪个阶段(建立连接/数据传输/释放连接),并说明理由。(2分) (共8分) 建立连接: 三次握手(ThreeWay-Handshake)的第一步 TCP数据为:SEQ=50 5f a9 06,ACKNUM=00 00 00 00,SYN=1,ACK=0。 SYN:(Synchronize sequence numbers)用来建立连接,在连接请求中,SYN=1,ACK=0,连接响应时,SYN=1,ACK=1。即,SYN和ACK来区分Connection Request和Connection Accepted。
“70 02”,转换为二进制“0111 0000 0000 0010” 第一个4bit“0111”,是TCP头长,十进制为7,表示28个字节 接着的6bit现在TCP协议没有用上,都为0 最后的6bit“00 0010”是六个重要的标志
|