TCP抓包 HTTP分析 wireshark

实验一 捕获 TCP 数据包

1你的客户端电脑传送文件到 192.168.1.70 的 IP 地址和端口是什么?从192.168.1.70 接收文件的 IP 地址和端口是什么?
TCP抓包 HTTP分析 wireshark_第1张图片

你的客户端电脑传送文件:192.18.43.150 8003
从192.18.43.150 接收文件:110.42.197.24 52615

2用来初始化客户端电脑和 192.168.1.70的 TCP连接的TCP SYN 报文段的序号是什么?在报文段中,哪个地方表明这是一个SYN报文段?

序号是:Seq=0
可见初始化这个报文段的序号是0,Flags字段中SYN位为1,表明了这是一个SYN报文段。
在这里插入图片描述

“21”,“4.287052000”,“192.168.43.150”,“110.42.197.24”,“TCP”,“66”,“52615 > mcreport [SYN] Seq=0 Win=64240 Len=0 MSS=1460 WS=256 SACK_PERM=1”

3回复 SYN 报文段时,由 192.168.1.70 发送的SYNACK报文段的序号是什
么?在SYNACK 报文段中的 ACKnowledgement 域的值是什么?192.168.1.70 是如何确定这个值的?表明这个段是SYNACK的标志位或者符号是什么?
在这里插入图片描述

SYNACK 序号是0,ACK 值为1,其等于SYN 报文段中Seq值加1,标志位是Flags = 0x12。

“24”,“4.323871000”,“110.42.197.24”,“192.168.43.150”,“TCP”,“66”,“mcreport > 52615 [SYN, ACK] Seq=0 Ack=1 Win=64240 Len=0 MSS=1360 SACK_PERM=1 WS=128”
TCP抓包 HTTP分析 wireshark_第2张图片

4包含 HTTP POST 命令的 TCP 段的序号是多少?注意,要找到 POST 命令,你需要在 Wireshark 窗口的底部发掘这个数据包内容域,找到一个在其 DATA 域中有标识POST 的段。

包含POST命令的TCP报文段的序号是1

TCP抓包 HTTP分析 wireshark_第3张图片

5仔细思考一下作为 TCP 连接的第一个报文段的包含 HTTP POST 的 TCP 报文段。TCP 连接(包括包含 HTTP POST 的报文段)的开头 6 个报文段的序号是多少?每个报文段都在什么时间发送?每个报文段接收到 ACK 的时间是多少?
TCP抓包 HTTP分析 wireshark_第4张图片
六个是:
每个:TCP segmentTCP抓包 HTTP分析 wireshark_第5张图片

6开始的 6 个 TCP 报文段的长度各自是多少?

第一个

Len=951 长度为Len+20=971
第二个

Len=12240 长度为Len+20=12260

第三个

Len=1360 长度为Len+20=1380

第四个

Len=5440 长度为Len+20=5460

第五个

Len=2720 长度为Len+20=2740

第六个

Len=2720 长度为Len+20=2740

7在整个跟踪过程中,在接收端广告(advertise)的可用缓存空间的最小值是多少?接收端有没有因缓存空间不足而限制发送端的发送?

可以看出,接收窗口大小最小是66560,而发送窗口大小一直是260,所以没有限制。
TCP抓包 HTTP分析 wireshark_第6张图片

8在跟踪文件中,有重传的报文段么?回答这个问题,你需要检查哪个地方?
有。
检查客户机发出报文段的sequence number字段即可,如果有重复的sequence number,则证明发生了相同数据的重传。
TCP抓包 HTTP分析 wireshark_第7张图片

9接收方在一个 ACK 中,通常确认多少数据?你能辨别出这样一种情形吗:即接收方对收到的报文段,每隔一个确认一次?

接收方在一个ACK 中通常确认1 -2个报文段数据。利用Flow Graph 功能,查看相应的发送和ack情况,其中一部分统计如下:可以看出在这次跟踪过程中通常是每个ACK确认一个报文段。
TCP抓包 HTTP分析 wireshark_第8张图片

10这个 TCP 连接的吞吐量(每单位时间传输的字节数)是多少?解释你是如何计算这个数值的?

在上传整个文件的过层中,第一个报文段的序号是1,时间是4.287683000s,最后一个报文段的序号是52597,时间是8.392043000s,这个过程的平均吞吐量为:
52597/(8.392043000-4.287683000)=12814.90923Bps
第一个报文段:
TCP抓包 HTTP分析 wireshark_第9张图片

最后一个报文段:
TCP抓包 HTTP分析 wireshark_第10张图片
TCP抓包 HTTP分析 wireshark_第11张图片

11 TCP 拥塞控制
用Time-Sequence-Graph(Stevens)中的画图工具观察从客户端发送到
192.168.1.70 服务器的TCP段的序列号-时间图。你怎样判断TCP的慢启动(slowstart)开始和结束?拥塞避免在什么地方开始起作用的?注意在实际的跟踪中,不是所有的都像教材那样简单漂亮的形式。同时还要注意在Time-Sequence-Graph(Stevens)中纵坐标所代表的变量与教材中是否不同。总结这次实验中所得到的 TCP 数据与我们在教材中所学的理想情况有什么不同?

TCP 段的序列号-时间图
TCP抓包 HTTP分析 wireshark_第12张图片

对于慢启动过程的特征是发送端的Congestion window 值指数增长。上面的图像中,开头一段发送的报文段数量为1,2,4,6,可以判断前三轮为慢启动;第四轮及以后的发送过程中,发送的数量稳定在一个较稳定的程度,可以大致判断拥塞避免在此时起作用。

不同之处:发送过程整体较为稳定,没有出现数据的重传现象。基本是每一个ACK确认一个报文段,而不是2个3个居多。发送速度较快,没有发现明显的拥塞控制和报文段中的窗口大小变化情况。

可能的原因有3个:发送的txt文件较小;网络较差,重传率高。

实验二 HTTP抓包分析

6. 基本 HTTP 的 GET/response 交互
(1)你的浏览器所运行的是 http 协议的 1.0 版本还是 1.1?服务器用的是什么版本的 http 协议?
TCP抓包 HTTP分析 wireshark_第13张图片

浏览器所运行的是 HTTP1.1
TCP抓包 HTTP分析 wireshark_第14张图片

服务器用的是HTTP1.1

2)你的浏览器可以支持多少种语言(如果有)?

中文,支持zh-CN,zh

3)你自己的 IP 地址是多少?服务器呢?
自己的:192.18.43.150
服务器的:110.42.197.24
TCP抓包 HTTP分析 wireshark_第15张图片

4)从服务器传回浏览器的状态代码是什么?
HTTP/1.1 200 OK\r\n
在这里插入图片描述

5)你所看到的 html 文件在服务器上最后的修改时间是什么?
Date: Tue, 28 Dec 2021 05:45:02 GMT\r\n
TCP抓包 HTTP分析 wireshark_第16张图片

  1. 传回浏览器的内容的大小是多少 bytes?
    76113字节的内容被返回到浏览器。
    TCP抓包 HTTP分析 wireshark_第17张图片

7. 有条件的 HTTP 的 GET/response 交互

  1. 在 packet-content 窗口中观察第一个从浏览器向服务器发出的 http GET 请求的数据包,是否看到一行显示“ IF-MODIFIED-SINCE” ?
    没有。因为这是浏览器第一次请求该页面。

  2. 观察从服务器传回的 response 数据包,服务器是否很清楚的传回了该 html 文件的内容?你如何知道的?
    返回了文件内容,因为返回状态码为200。并返回了html文件。
    TCP抓包 HTTP分析 wireshark_第18张图片
    TCP抓包 HTTP分析 wireshark_第19张图片

  3. 观察第二个从浏览器向服务器发出的 http GET 请求的数据包,是否看到一行显示 IF-MODIFIED-SINCE” ?如果有,在“ IF-MODIFIED-SINCE” 报头后显示的是什么?
    有这行字段。信息为上次请求该文件的时间。(如果找不到就抓包的时候多刷新几次)
    TCP抓包 HTTP分析 wireshark_第20张图片

  4. 从服务器传回的对第二个 http GET 的 response 的状态代码是什么?服务器是否很清楚的传回了该 html 文件的内容?你如何知道的?
    状态码是304,短语是Not Modified,并没有明确返回文件内容,因为该网页内容在上次访问之后未被修改过,且本地中有上次访问的缓存。
    TCP抓包 HTTP分析 wireshark_第21张图片

8. 获取较长的 HTML 文件
(1)浏览器向服务器发送了多少个 http GET 请求的数据包?
1个。
在这里插入图片描述

(2)该 http response 数据包需要多少个含有数据的 TCP 段来传送?
传输这一个HTTP响应需要5个TCP数据段。
TCP抓包 HTTP分析 wireshark_第22张图片

(3) 与 http GET 对应的 response 数据包的状态代码是什么?
状态码200,短语OK。
在这里插入图片描述

9. 获取有嵌入对象的 HTML 文件
(1) 浏览器向服务器发送了多少个 http GET 请求的数据包?这些数据包发送的目的网 址是什么?
发送了4个 http GET 请求的数据包。
TCP抓包 HTTP分析 wireshark_第23张图片

目的地址为:

110.42.197.24
TCP抓包 HTTP分析 wireshark_第24张图片

(2) 浏览器是从两个服务器上连续下载这两个图片还是并行下载的?请做相应解释。
不是并发下载的,有先后顺序。

你可能感兴趣的:(计算机网络,tcp/ip,http,wireshark)