【MOOC 作业】第2章 应用层

不是标答也不是参考答案

仅从个人理解出发去做题


1、(20分) 什么是持久性连接?什么是非持久性连接?持久性连接与非持久性连接区别如何?

  • 持久性连接:每个请求/响应对都经同一个 TCP 连接发送。
  • 非持久性连接:每个请求/响应对经一个单独的 TCP 连接发送。

两者的区别:

  • 非持久性连接给 Web 服务器带来更大的负担,而持久性连接不会。
  • 非持久性连接必须经受 2RTT 的时延,而持久性连接可能在一个 RTT 中获得所有引用对象。

主要是从非持久性连接的缺点来回答两者的区别。

2、(20分) 请说明 Web 缓存技术的工作原理?

① 客户的 HTTP 请求报文都被发送到 Web 缓存器。

② Web 缓存器查询本地是否有所请求的对象:

情况一:若有且没有超时,则 Web 缓存器将请求对象发送给客户;

情况二:若没有,则 Web 缓存器将请求转发给 Web 初始服务器;收到 Web 初始服务器发送来的对象后,Web 缓存器在本地缓存该对象,再发送给客户;

情况三:若有且超时,则 Web 缓存器向 Web 初始服务器发送条件 GET 请求报文:

情况三(a):若对象没有被修改,则 Web 初始服务器响应报文中包含 304 Not Modified,且实体部分为空;

收到 Web 初始服务器的响应报文后,Web 缓存器直接将本地存储的对象发送给客户。

情况三(b):若对象被修改,则 Web 初始服务器响应报文中包含 200 OK,且实体部分为该对象;

收到 Web 初始服务器的响应报文后,Web 缓存器在本地缓存该对象,再发送给客户。

3、(20分) 电子邮件发送过程中用的什么协议?请叙述下发送过程是什么样子的?

使用的是 SMTP 协议。

发送过程:

  1. 发送方使用用户代理编写邮件 (含接收方的邮箱地址),编写完毕后点击发送;
  2. 用户代理将邮件发送到发送方的邮件服务器,邮件被放入发送队列中;
  3. 邮件服务器取出发送队列中的邮件,将其发送给接收方的邮件服务器;
  4. 接收方的邮件服务器将邮件放入接收方的邮箱中;
  5. 接收方在空闲时,使用用户代理来查看邮件。

4、(20分) 假定你在浏览器中点击一个超链接获得 Web 页面。假设相关得 URL 的 IP 地址没有缓存在本地主机上,因此必须进行 DNS 查询从而获得 IP 地址。如果主机从 DNS 得到 IP 地址前,已经访问了 n 个DNS服务器,相继产生得 RTT 依次为 T1,T2,T3….TN,进一步假定与链路相关的 Web 页面只包含一个对象,即少量的 HTML 文件。另 RTT0 表示本地主机与包含对象的服务器之间的 RTT 值。假定该对象传输时间为 0,则从客户机点击超链接到它接收到该对象需要多长时间?

Step1:获得服务器的 IP 地址。

T=\sum_{i=1}^{N}t_{i}

Step2:建立与服务器的 TCP 连接,以及一次请求/响应。

T=2RTT_{0} 

总时间:

T=\sum_{i=1}^{N}t_{i}+2RTT_{0}

第三次握手用于确认服务器的初始序号,但是又由于允许携带数据,因此可以同时请求 HTML 文件,所以第二步中的动作常常写在一起。

5、(20分) 域名系统的主要功能是什么?域名系统中的本地域名服务器、根域名服务器、顶级域名服务器有何区别?

主要功能:将主机名映射到 IP 地址。

主要区别:

  • 根域名服务器提供顶级域名服务器的 IP 地址
  • 顶级域名服务器提供权威域名服务器的 IP 地址
  • 本地域名服务器起着用户代理的作用

本地域名服务器、根域名服务器和顶级域名服务器之间的区别在于其管理的域名范围不同,对于实现 DNS 系统中的从主机名到 IP 地址的转换过程发挥着不同的重要作用。

猜你喜欢

转载自blog.csdn.net/m0_64140451/article/details/131370648