假设你在浏览某网页时点击了一个超链接,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地址时,所需的时间时间最短,为RTTd。
最长时间
当本地域名解析器中不包含并且需要从根域名服务器解析时所需的时间最长,解析路径如下:客户端-本地域名服务器、本地域名服务器-根域名服务器、本地域名服务器-com.cn、cn-com、本地域名服务器-权威域名服务器,因此所需的时间为5RTTd。
2)需要html文件本身,外加8个小图像连接。时间包括发起建立TCP连接一个RTTh,HTTP请求传输Web对象过程的一次往返时间RTTh。一共2*9 = 18 RTTh
3)一开始建立TCP连接,获得index.html文件2个RTTh。然后由图像地址信息,在2轮并行处理下完成8个图像的加载工作。2*2个RTTh。2 + 4 = 6 RTTh。
4)无流水情况下,客户端只有收到前一个响应后才发送新的请求,每个被引用的对象耗时一个RTT。
有流水情况下,客户端只要遇到一个引用就尽快发出请求。
无流水: 2 + 8 = 10 RTTh。有流水: 2 + 1 = 3 RTTh。