当前位置:首页 > 实验五 TCP 的连接及释放过程分析
实验五 TCP 的连接及释放过程分析
【实验目的】
1. 掌握 TCP 连接建立的三次握手工作原理; 2. 理解 TCP 连接释放的四次握手工作原理。
【实验环境】
与因特网连接的计算机,操作系统为Windows,安装有Wireshark、IE 等软件。
【实验内容】
1. 使用 Wireshark 抓包软件分析TCP 协议报文的类型; 2. 分析 TCP 连接建立的工作过程; 3. 分析 TCP 数据传输的工作过程; 4. 分析 TCP 连接释放的工作过程。
【实验步骤】
1. 启动 WireShark 抓包软件;
2. 使用 ping 命令,ping你想浏览的网站,记下该网站的ip地址。
3. 使用浏览器访问一个因特网网站(例如,www.http://www.china-audit.com/),通过Wireshark 捕获通信 内容;
4. 分析与你浏览的网站相对应的TCP 连接建立的三次握手和连接释放的握手过程(在 wireshark里通过ip地址过滤找到对应的TCP数据包)。具体分析步骤如下:
??浏览网页,抓取三次握手的包,分析 TCP包头格式,指出下列4个字段的值。 ??源 IP:192.168.6.52 ??目的 IP: 119.75.217.56 ??源端口:4451 ??目的端口:80
连接建立第一次握手:
若只显示第一次握手的数据包,即显示包含TCP SYN且不包含ACK 标志的数据包, 则显示过滤器的规则应该怎样设置?找出第一次握手的数据包并截取对该数据包的展 开图来替换下图。根据截图在表1的相应位置填写各字段的值。
[答]:过滤器的规则应这样设置:tcp.flags.ack==0 && tcp.flags.syn==1
表1 序号 确认号 第一次连接握手 第二次连接握手 第三次连接握手 第一次请 第一次回 第一次断 第二次断 第三次断 求数据 复数据 开握手 开握手 开握手 0 0 0 1 1 1 1 1 1 327 327 24451 24451 328 24451 328 数据偏移 URG ACK PSH RST SYN FIN 窗口 28 0 0 0 0 1 0 65535 28 0 1 0 0 1 0 65535 20 0 1 0 0 0 0 65535 20 0 1 1 0 0 0 65535 20 0 1 0 0 0 0 40200 20 0 1 0 0 0 1 65535 20 0 1 0 0 0 0 40200 20 0 1 0 0 0 1 40200 图:
连接建立第二次握手:
若只抓取第二次握手的数据包,则显示过滤器的规则应该怎样设置?为什么? 找出第二 次握手的数据包并截取对该数据包的展开图来替换下图,根据截图在表1的相应位置填写各 字段的值。
[答]:过滤器的规则应这样设置:tcp.flags.ack==1&&tcp.flags.syn==1
图:
连接建立第三次握手:
是否可以设定过滤规则只抓取第三次握手的数据包? 若不能,如何确定是第三次
握手的数据包。找出第三次握手的数据包并截取对该数据包的展开图来替换下图,根据 截图在表1的相应位置填写各字段的值。
[答]:不能,因为第三次握手发送的是ack包,也就是仅ACK标记设为1的TCP包,但三次握
手建立后,TCP连接的每个包都会设置ACK位,所以不能。第三次握手的TCP包序列号是1。
三次连接握手完成后说明TCP连接正确建立,客户端要请求服务器传送数据。
客户端第一次请求数据:
找出第一次请求的数据包并截取对该数据包的展开图,根据截图在表1 的相应位置 填写各字段的值。你是如何确定是第一次的请求的数据包? 若服务器相应了客户端的请求,服务器要向客户端传送数据。
[答]:如何找到第一次的请求的数据包:包的序列号为1,且下次序列号不为1(本次截到
底包的下次序号为327),同时确认号为1的TCP就是第一次请求数据的包.
服务器第一次回复数据:
找出第一次回复的数据包并截取对该数据包的展开图,根据截图在表1 的相应位置填 写各字段的值。你是如何确定是第一次的回复的数据包?
[答]:序列号为1,又由于第一次请求包发送了327个数据(第一次请求包的下次序列号为
327),所以确认号为327的就是第一次恢复数据的包.
共分享92篇相关文档