我正在使用 Wireshark 查看我的客户端计算机和网络服务器之间的所有数据包交换。
我刚刚连接到一个服务器,它给了我一个 403 错误(仅作为示例)。我理解的数据包是 2 个 HTTP 数据包。但有 5 个数据包是 TCP 数据包。
(xxx.xx.xx IP 地址代表网络服务器,为了在下面的代码中更清楚)
这些 TCP 数据包到底是什么?每个数据包的用途是什么?
多谢
以下是按时间顺序排列的数据包:
Number Time Source Destination Protocol Info
1 0.000 192.168.0.3 xxx.xx.x.x TCP 50250 > http [SYN]...
2 0.0261 xxx.xx.x.x 192.168.0.3 TCP http > 50250 [SYN]...
3 0.0265 192.168.0.3 xxx.xx.x.x TCP 50250 > http [ACK]...
4 0.0267 192.168.0.3 xxx.xx.x.x HTTP GET/ HTTP/1.1
5 0.0547 xxx.xx.x.x 192.168.0.3 TCP http > 50250 [ACK]...
6 0.0588 xxx.xx.x.x 192.168.0.3 HTTP HTTP/1.1 403 Forbidden
7 0.0589 192.168.0.3 xxx.xx.x.x TCP 50250 > http [ACK]...
答案1
前 3 个是你的标准TCPIP 三次握手。
接下来是客户的HTTP GET 请求
接下来的两个是服务器确认请求,并返回HTTP 403 响应代码- 服务器配置为由于某种原因阻止访问请求的 URL。
接下来是客户端确认服务器的响应。
答案2
前三个 TCP 段是 TCP 在主机之间用于协商和建立连接的“三次握手”。同步-->,<--同步确认,-->确认
其它 TCP 段是发送确认的主机收到的 TCP 段的标准 TCP 确认。
以下是 TCP/IP 圣经的链接:
http://www.amazon.com/TCP-IP-Illustrated-Volume-Set/dp/0201776316