【发布时间】:2017-09-19 03:53:09
【问题描述】:
问题
假设您在 Web 浏览器中单击一个链接以获取一个网页。 相关 URL 的 IP 地址未缓存在您的本地主机中,因此 DNS 查找是获取 IP 地址所必需的。假设n个DNS 在您的主机从 DNS 接收 IP 地址之前访问服务器;这 连续访问会产生 RTT1 的 RTT,. . ., RTTn.进一步假设 与链接关联的网页只包含一个对象,由一个 少量的 HTML 文本。令 RTT0 表示本地主机之间的 RTT 以及包含该对象的服务器。假设传输时间为零 对象,从客户点击链接到点击链接经过了多少时间 客户端收到对象了吗?
我的尝试
当客户端从服务器请求任何 HTTP 服务时,会发生以下场景
- 从 DNS 客户端到 DNS 服务器的 DNS 请求以获取所请求服务器的 IP 地址。
- 收到 IP 地址后,启动 TCP 连接
- 发起 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