2019-09-21
假设你在浏览某网页时点击了一个超链接,URL为“https://www.kicker.com.cn/index.html”,且该URL对应的IP地址在你的计算机上没有缓存;文件index.html引用了8个小图像。域名解析过程中,无等待的一次DNS解析请求与响应时间记为RTTd,HTTP请求传输Web对象过程的一次往返时间记为RTTh。请回答下列问题:
1)你的浏览器解析到URL对应的IP地址的最短时间是多少?最长时间是多少?
2)若浏览器没有配置并行TCP连接,则基于HTTP1.0获取URL链接Web页完整内容(包括引用的图像,下同)需要多长时间(不包括域名解析时间,下同)?
3) 若浏览器配置5个并行TCP连接,则基于HTTP1.0获取URL链接Web页完整内容需要多长时间?
4) 若浏览器没有配置并行TCP连接,则基于非流水模式的HTTP1.1获取URL链接Web页完整内容需要多长时间?基于流水模式的HTTP1.1获取URL链接Web页完整内容需要多长时间?
我的答案
答:
1)浏览器解析到URL对应的IP地址的最短时间是:
在主机没有缓存的情况下,本地DNS服务器有该域名的IP地址缓存,则最短时间为 RTTd。
最长时间是:
在主机没有缓存,且使用递归查询的情况下,本地local DNS 服务器就会将该DNS请求发给Root DNS服务器,
然后Root DNS服务器将DNS请求发给顶级域名服务器TLD,然后顶级域名服务器TLD将该DNS请求发给权威域名服务器,
权威域名服务器找到DNS请求的IP地址后按原路一层一层返回请求,最长时间为 (4+1)RTTd = 5*RTTd。
2)若浏览器没有配置并行TCP连接,则基于HTTP1.0(使用非持久连接,一次TCP连接最多允许传输一个对象,共1个html内容+8个图像,共打开9次tcp连接,也就多了9次RTT的时间。)
获取URL链接Web页完整内容需要多长时间(不包括域名解析时间)为:
2 *( 一次建立TCP连接的时间+(html内容的传输时间+8次的小图像传输所需时间))
= 2*(RTTh+RTTh+8*RTTh) = 18*RTTh。
3)若浏览器配置5个并行TCP连接,则基于HTTP1.0(使用非持久连接,每个TCP连接最多允许传输一个对象)
获取URL链接Web页完整内容需要的时间为:
( 建立TCP连接RTTh+获得html文件内容RTTh)+ 2轮 * 获取8个图像地址信息RTTH = 2RTTh + 2*2个RTTh = 6RTTh。
4)
若浏览器没有配置并行TCP连接,则基于非流水模式的HTTP1.1获取URL链接Web页完整内容需要时间为:
1RTTh(TCP持久连接)+ 1RTTh(1次html内容获取)+ 8RTTh(8个图像传输时间) = 10RTTh。
基于流水模式的HTTP1.1获取URL链接Web页完整内容需要时间为:
1RTTh(TCP持久连接)+ 1RTTh (1次html内容获取)+ 1RTTh(8个图像传输时间)= 3RTTh。
——————————————————————————————————————————————————————
得分指导:
评分标准:
1) 本小题满分12分,只要认真完成作业(无论对错),就可以得到基本分:4分;
2) 正确解答每个小问,参考答案中标记给分,共12分。
3)若给出结果不正确,但分析过程正确或部分正确可酌情给分。
参考答案:
1)浏览器解析到URL对应的IP地址的最短时间是:RTTd;(2分)最长时间是:5RTTd。(2分)
2)若浏览器没有配置并行TCP连接,则基于HTTP1.0获取URL链接Web页完整内容需要的时间:18RTTh。(2分)
3) 若浏览器配置5个并行TCP连接,则基于HTTP1.0获取URL链接Web页完整内容需要的时间:6RTTh。(2分)
4) 若浏览器没有配置并行TCP连接,则基于非流水模式的HTTP1.1获取URL链接Web页完整内容需要的时间:10RTTh;(2分)基于流水模式的HTTP1.1获取URL链接Web页完整内容需要的时间:3RTTh。(2分)