【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 地址的转换过程发挥着不同的重要作用。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
MOOC PAT练习是指在在线课程平台上进行的编程能力考试。它提供了一系列编程题目,旨在帮助学生提高解决问题的能力和编程技能。下面是对此练习的回答: MOOC PAT练习是一种非常有益的学习资源。它可以帮助学生在虚拟的环境解决实际问题,并通过编程来提高解决问题的能力。通过这种方式,学生可以更好地理解和掌握编程语言和算法知识。 MOOC PAT练习不仅可以提升学生的编程能力,还可以培养学生的创新思维和团队合作精神。在解决编程题目时,学生需要思考合适的算法和数据结构,同时还需要灵活运用编程语言来实现自己的想法。这样的练习可以锻炼学生的分析问题和解决问题的能力,培养其创新和合作意识。 通过MOOC PAT练习,学生可以接触到各种各样的编程题目,涵盖了不同的难度级别和主题领域。这对于学生来说是一个很好的学习机会,可以不断地挑战自己、提高自己。此外,该练习还提供了评测功能,学生可以实时了解自己的答题情况,并获得相应的反馈和建议,这有助于他们更好地调整学习进度和方向。 总结来说,MOOC PAT练习是一个非常有价值的学习资源,它可以提升学生的编程能力、培养创新和合作意识,并且通过不断挑战和实践来提高自己。对于想要学习编程的人来说,参加MOOC PAT练习是一个不错的选择。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值