【问题标题】:how much time elapses from when the client clicks on the link until the client receives the object?从客户点击链接到客户收到对象经过了多少时间?
【发布时间】:2017-09-19 03:53:09
【问题描述】:

问题

假设您在 Web 浏览器中单击一个链接以获取一个网页。 相关 URL 的 IP 地址未缓存在您的本地主机中,因此 DNS 查找是获取 IP 地址所必需的。假设n个DNS 在您的主机从 DNS 接收 IP 地址之前访问服务器;这 连续访问会产生 RTT1 的 RTT,. . ., RTTn.进一步假设 与链接关联的网页只包含一个对象,由一个 少量的 HTML 文本。令 RTT0 表示本地主机之间的 RTT 以及包含该对象的服务器。假设传输时间为零 对象,从客户点击链接到点击链接经过了多少时间 客户端收到对象了吗?

我的尝试

当客户端从服务器请求任何 HTTP 服务时,会发生以下场景

  1. 从 DNS 客户端到 DNS 服务器的 DNS 请求以获取所请求服务器的 IP 地址。
  2. 收到 IP 地址后,启动 TCP 连接
  3. 发起 TCP 连接后,Cient 将使用 DNS 回复后获得的 IP 地址向 HTTP Server 请求 HTTP CLient 请求。

我会根据上面的场景来计算时间。

为了到达 DNS 服务器以获取 IP 地址,我们需要 RTT1 + RTT2 +....+ RTTn 。 .

计算 TCP 连接所用的时间

RTT0+RTT0=2RTT0

计算请求对象和接收回复所需的时间-:

RTT0+RTT0=2RTT0

经过的总时间必须是

RTT1 + RTT2 +....+ RTTn +2RTT0+2RTT0=RTT1 + RTT2 +....+ RTTn 。 +4RTT0

但答案是-:

获取IP地址的总时间为 RTT1 + RTT2 +....+ RTTn 。 一旦知道了 IP 地址,RTTO 就会开始建立 TCP 连接和另一个 RTTO 经过请求和接收小对象。总响应时间为 2RTT0 + RTT1 + RTT2 +... RTTn

我哪里错了?

请帮忙!

【问题讨论】:

    标签: networking tcp dns


    【解决方案1】:

    您只需要 1 个 RTT 即可建立 TCP 连接。然后再一个 RTT 来获取该对象。

    【讨论】:

      【解决方案2】:

      如果它是一个非持久连接,那么您需要一个 RTT 用于 TCP 连接,然后另一个用于 HTML 网页请求,然后另一个用于 TCP 连接(非持久),最后是对象。 4RTT

      【讨论】:

        猜你喜欢
        • 2015-02-08
        • 2019-04-16
        • 1970-01-01
        • 1970-01-01
        • 2015-11-28
        • 2013-04-28
        • 2018-02-03
        • 2015-09-04
        • 1970-01-01
        相关资源
        最近更新 更多