计算机网络——应用层

第六层_应用层

6.1 网络应用模型

6.1.1 C/S 模型

6.1.2 P2P 模型

6.2 域名系统(DNS)

6.2.1 DNS 概述

DNS(Domain Name System)的基本概念不过多做解释,值得注意的是,主机最开始得知 DNS 服务器的地址一般通过 DHCP 协议进行动态配置。

DNS 的基本特点如图所示:

6.2.2 DNS 层次域名空间

DNS 域名具有层次书写的规则 ,如下图所示:
注意: 没有一级域名,口头上说的一级域名通常是顶级域名

这种层次划分方式也方便了进行管理,其划分与管理 规则如下图所示:

关于顶级域名的分类 如下图所示:

6.2.3 DNS 域名服务器,域名解析过程

四种域名服务器相互配合完成域名解析,四种域名服务器 介绍如下图所示:

本地域名服务器就是 DHCP 默认会分配的 DNS 服务器地址。

而对于域名解析过程,通常主机会先向本地域名服务器发起请求。若没有命中缓存,本地域名服务器则会向其他域名服务器发送请求。

有两种查询方式,即 递归查询迭代查询

  • 主机向本地域名服务器的查询都采用递归查询
  • 本地域名服务器向其它域名服务器的查询能采用递归查询或迭代查询

如图所示:

用两道真题来熟悉:

6.3 FTP 协议

文件传输协议(File Transfer Protocol,FTP)是互联网上使用最广泛的文件传输协议。FTP 采用客户 / 服务器工作模式 ,基于 TCP 提供可靠的传输服务。适用于在异构网络中的任意两台计算机之间可靠地传送文件。

服务器进程 由两部分组成:一个主进程 ,负责接收新请求;另外有若干从属进程,分别处理单个客户的请求。其工作步骤如下:

  1. 打开熟知端口 21(控制端口),供客户进程连接。
  2. 等待客户进程发起连接请求。
  3. 启动从属进程处理该请求,处理完毕后从属进程终止。
  4. 主进程返回等待状态,继续接收其他客户请求。主进程与从属进程并发执行。

FTP 在工作时使用两个并行的 TCP 连接:控制连接(服务器端口 21)数据连接(服务器端口 20) 。采用两个独立端口有助于协议的清晰实现。其控制信息属于带外传送 (就是控制信息不用数据连接传送)。

其中,数据连接 支持两种传输模式:主动模式(PORT)和被动模式(PASV):

  1. 主动模式(PORT)
    客户端首先连接服务器的 21 号端口,并完成登录。需要传输数据时,客户端随机选择一个本地端口,并通过 PORT 命令将该端口号告知服务器。随后,服务器通过 20 号端口主动连接到客户端指定的端口以传输数据。
    如图所示:
  2. 被动模式(PASV)
    客户端登录后发送 PASV 命令。服务器收到后,在本地随机开放一个端口,并通过控制连接将该端口号返回给客户端。客户端再主动连接到该端口以传输数据。

    两种模式的区别在于:是服务器主动连接客户端(主动模式)还是服务器被动响应客户端的连接(被动模式),由客户端决定。

最后通过登出即可,如图所示:

关于 FTP 的一些拓展如下图所示:

6.4 电子邮件

本小节内容总览如下图所示:

SMTP :简单邮件传输协议(Simple Mail Transfer Protocol)------ 用于实现发邮件。
POP3 :邮局协议(Post Office Protocol v3)------ 用于实现接收邮件。
MIME:多用途因特网邮件扩展(Multipurpose Internet Mail Extensions)------ 不是协议,只是格式规范(描述邮件内容长什么样,如何编码)。

现代浏览器向邮件服务器发送邮件常用 http / https,作为 1980s 诞生的 SMTP 与 POP3 协议虽然有了更优的替代品,但仍然被广泛使用。

电子邮件系统主要有三大组成结构:

  1. 用户代理
  2. 邮件服务器
  3. 电子邮件协议

如图所示:

电子邮件格式 主要由 信封 + 内容 组成,而内容主要由 首部 + 主体组成。

如图所示:

MIME:

而由于 SMTP 的局限性,导致邮件内容仅支持纯英文。为了解决这个问题,MIME 应运而生,其内容如图所示:

注意:MIME 不是协议,只是规范(描述邮件内容长什么样子,怎么编码)。

SMTP 与 POP3:

整个邮件的传输过程如下图所示:

注意:SMTP 用于发送邮件,而 POP3 用于收取邮件

6.5 万维网WWW

本小节内容总览如下图所示:

关于访问一个网站的步骤,如图所示:

值得注意的是采用的三种 http 协议的工作方式,有很多细小的坑,如图所示:
非持续连接:

持续连接,非流水线:

持续连接,流水线:

6.6 超文本传输协议 HTTP

那几个月天天看,我已经很熟悉了,HTTP 报文格式如下:

以一个真题来熟悉:

附言

计网收官!!

相关推荐
无足鸟ICT12 分钟前
【RHCA+】查看变量
linux·运维·服务器
Kina_C22 分钟前
Linux DNS 服务器-从高速缓存到辅助 DNS 部署指南
linux·运维·服务器·dns
EasyGBS34 分钟前
ONVIF设备接入国标GB28181视频平台EasyGBS:不用国标也能一键拉流!
服务器·php·音视频
suaizai_34 分钟前
TypeScript 7 正式发布!Vue 暂被 “拒之门外“ !!!
linux·运维·ubuntu
小小代码狗1 小时前
SQLi-Labs 基础注入实战教程(Less-1 ~ Less-5and Less-9)
服务器·python·php
慕伏白2 小时前
【慕伏白】Linux 系统如何根据端口号关闭进程
linux·运维·服务器
letisgo52 小时前
VMware Workstation + Ubuntu 26.04 LTS 小白运维部署手册
linux·运维·ubuntu
蓝创工坊Blue Foundry2 小时前
图片文字提取到 Excel:批量任务如何先定义要交付的字段
运维·服务器·开发语言·数据库·自动化·ocr·excel
晚风吹长发2 小时前
Docker使用——Docker容器及相关命令
linux·运维·服务器·docker·容器·架构
ShiXZ2132 小时前
Docker Compose 安装与配置指南
运维·docker·容器