这部分回顾Wireshark Lab2,该实验主要目标是了解HTTP协议。

参考资料:

注意事项:

问题描述来自于如下资料:

Wireshark Lab2: HTTP

1. HTTP基本GET/response交互

  • 您的浏览器是否运行HTTP版本1.0或1.1?服务器运行什么版本的HTTP?

    • 浏览器和服务器的HTTP版本都是1.1。
  • 您的浏览器会从接服务器接受哪种语言(如果有的话)?

    • 中文:

      Accept-Language: zh-CN,zh;q=0.9\r\n
  • 您的计算机的IP地址是什么? gaia.cs.umass.edu服务器地址呢?

    • 本机:192…
    • gaia.cs.umass.edu服务器地址:128.119.245.12
  • 服务器返回到浏览器的状态代码是什么?

    • 200
  • 服务器上HTML文件的最近一次修改是什么时候?

    • Last-Modified: Fri, 09 Jul 2021 05:59:02 GMT\r\n
  • 服务器返回多少字节的内容到您的浏览器?

    • 530字节。
  • 通过检查数据包内容窗口中的原始数据,你是否看到有协议头在数据包列表窗口中未显示? 如果是,请举一个例子。

    • 还使用了TCP协议。

2. HTTP条件Get/response交互

  • 检查第一个从您浏览器到服务器的HTTP GET请求的内容。您在HTTP GET中看到了“IF-MODIFIED-SINCE”行吗?

    • 没有“IF-MODIFIED-SINCE”
  • 检查服务器响应的内容。服务器是否显式返回文件的内容? 你是怎么知道的?

    • 显式返回文件的内容,因为返回了如下内容:

      Line-based text data: text/html (10 lines)
          \n
          <html>\n
          \n
          Congratulations again!  Now you've downloaded the file lab2-2.html. <br>\n
          This file's last modification date will not change.  <p>\n
          Thus  if you download this multiple times on your browser, a complete copy <br>\n
          will only be sent once by the server due to the inclusion of the IN-MODIFIED-SINCE<br>\n
          field in your browser's HTTP GET request to the server.\n
          \n
          </html>\n
  • 现在,检查第二个HTTP GET请求的内容。 您在HTTP GET中看到了“IF-MODIFIED-SINCE:”行吗? 如果是,“IF-MODIFIED-SINCE:”头后面包含哪些信息?

    • 看到了, 内容如下:

      If-Modified-Since: Fri, 09 Jul 2021 05:59:02 GMT\r\n
  • 针对第二个HTTP GET,从服务器响应的HTTP状态码和短语是什么?服务器是否明确地返回文件的内容?请解释。

    • 状态码为304,短语是Not Modified,没有直接返回文件内容,因为不包含Line-based text data。

3. 检索长文件

  • 您的浏览器发送多少HTTP GET请求消息?哪个数据包包含了美国权利法案的消息?

    • 一个HTTP GET请求,第124个数据包。

      124	10.624403	192...	128.119.245.12	HTTP	556	GET /wireshark-labs/HTTP-wireshark-file3.html HTTP/1.1 
  • 哪个数据包包含响应HTTP GET请求的状态码和短语?

    • 第133个数据包包含状态码和短语

      133	10.840320	128.119.245.12	192...	HTTP	559	HTTP/1.1 200 OK  (text/html)
  • 响应中的状态码和短语是什么?

    • 200, OK
  • 需要多少包含数据的TCP段来执行单个HTTP响应和权利法案文本?

    • 4个,内容如下:

      [4 Reassembled TCP Segments (4861 bytes): #1407(1452), #1408(1452), #1409(1452), #1410(505)]
          [Frame: 1407, payload: 0-1451 (1452 bytes)]
          [Frame: 1408, payload: 1452-2903 (1452 bytes)]
          [Frame: 1409, payload: 2904-4355 (1452 bytes)]
          [Frame: 1410, payload: 4356-4860 (505 bytes)]
          [Segment count: 4]
          [Reassembled TCP length: 4861]
          [Reassembled TCP Data: 485454502f312e3120323030204f4b0d0a446174653a205361742c203130204a756c2032…]

4. 具有嵌入对象的HTML文档

5. HTTP认证

  • 对于您的浏览器的初始HTTP GET消息,服务器响应(状态码和短语)是什么响应?

    • 状态码为401,响应为Unauthorized。
  • 当您的浏览器第二次发送HTTP GET消息时,HTTP GET消息中包含哪些新字段?

    • 第一次发送HTTP GET:

      Hypertext Transfer Protocol
          GET /wireshark-labs/protected_pages/HTTP-wiresharkfile5.html HTTP/1.1\r\n
          Host: gaia.cs.umass.edu\r\n
          Connection: keep-alive\r\n
          Upgrade-Insecure-Requests: 1\r\n
          User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/90.0.4430.212 Safari/537.36\r\n
          Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9\r\n
          Accept-Encoding: gzip, deflate\r\n
          Accept-Language: zh-CN,zh;q=0.9\r\n
          \r\n
          [Full request URI: http://gaia.cs.umass.edu/wireshark-labs/protected_pages/HTTP-wiresharkfile5.html]
          [HTTP request 1/1]
          [Response in frame: 88]
    • 第二次发送HTTP GET:

      Hypertext Transfer Protocol
          GET /wireshark-labs/protected_pages/HTTP-wiresharkfile5.html HTTP/1.1\r\n
          Host: gaia.cs.umass.edu\r\n
          Connection: keep-alive\r\n
          Cache-Control: max-age=0\r\n
          Authorization: Basic d2lyZXNoYXJrLXN0dWRlbnRzOm5ldHdvcms=\r\n
          Upgrade-Insecure-Requests: 1\r\n
          User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/90.0.4430.212 Safari/537.36\r\n
          Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9\r\n
          Accept-Encoding: gzip, deflate\r\n
          Accept-Language: zh-CN,zh;q=0.9\r\n
          \r\n
          [Full request URI: http://gaia.cs.umass.edu/wireshark-labs/protected_pages/HTTP-wiresharkfile5.html]
          [HTTP request 1/1]
          [Response in frame: 164]
    • 不难看出增加了字段Cache-Control,Authorization。