这个典型的http请求会发生什么?

我正在使用Wireshark来查看我的客户端计算机和Web服务器之间的所有数据包交换。

我只是连接到一个服务器,给我一个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.xx TCP 50250 > http [SYN]... 2 0.0261 xxx.xx.xx 192.168.0.3 TCP http > 50250 [SYN]... 3 0.0265 192.168.0.3 xxx.xx.xx TCP 50250 > http [ACK]... 4 0.0267 192.168.0.3 xxx.xx.xx HTTP GET/ HTTP/1.1 5 0.0547 xxx.xx.xx 192.168.0.3 TCP http > 50250 [ACK]... 6 0.0588 xxx.xx.xx 192.168.0.3 HTTP HTTP/1.1 403 Forbidden 7 0.0589 192.168.0.3 xxx.xx.xx TCP 50250 > http [ACK]... 

前3个是您的标准TCPIP 3次握手 。

接下来是客户端的HTTP GET请求

接下来的两个是确认请求的服务器,并返回一个HTTP 403响应代码 – 服务器被configuration为阻止访问由于某种原因而请求的URL。

接下来是客户端确认服务器的响应。

前三个TCP段是TCP在主机之间使用的“三次握手”,以忽略和build立连接。 SYN – >,< – SYN ACK , – > ACK

其他TCP段是发送确认的主机收到的TCP段的标准TCP确认。

这是一个链接到TCP / IP圣经:

http://www.amazon.com/TCP-IP-Illustrated-Volume-Set/dp/0201776316