计算机网络 · 第 6 章

第 6 章 应用层与常见协议

DNS 解析过程;HTTP 方法与状态码、URL 组成;SMTP/POP3/IMAP 收发邮件;FTP 双连接;DHCP 四步取址。

6.1 DNS:把域名翻译成 IP

DNS 域名解析流程图
图 6-1 DNS 解析:主机对本地 DNS 是递归,本地 DNS 对各级服务器是迭代

人用人看得懂的名字,机器用 IP——中间靠 DNS 翻译。

DNS(域名系统)的作用:把域名(如 www.example.com)解析成 IP 地址。 没有它,你上网就得记住一串串数字。查询用的是 UDP 的 53 端口(快、一问一答)。

域名的层次结构
  • 从右往左读:www.example.com. → 根域 → 顶级域 com → 二级域 example → 主机 www。
  • 常见顶级域:.com(商业)、.org(组织)、.edu(教育)、.gov(政府)、.cn(中国)。
一次域名解析的完整过程
  1. 先查本机缓存和 hosts 文件——命中就直接用;
  2. 没有就找本地 DNS 服务器(通常是运营商/公共 DNS);
  3. 本地 DNS 没有缓存时,替你去问:根域名服务器 → 顶级域服务器 → 权威域名服务器,逐级问到答案;
  4. 结果返回给你,并按 TTL 缓存一段时间。
课堂练习(3 题)
  1. DNS 的主要功能是什么?默认使用哪个传输层协议和端口? 答:把域名解析为 IP 地址;用 UDP,端口 53。
  2. www.edu.cn 中"cn"和"edu"分别代表什么? 答:cn 是国家顶级域名(中国),edu 是类别域(教育机构)。
  3. 域名解析时先查什么? 答:先查本机 DNS 缓存(含 hosts 文件),未命中才请求本地 DNS 服务器。

6.2 HTTP 与 URL:网页是怎么到你面前的

URL 组成、HTTP 方法与状态码是选择题常客。

URL(统一资源定位符)的组成:

协议://主机名:端口/路径?查询参数#锚点
https://www.example.com:443/news/list?page=2&tag=net

协议:https      主机:www.example.com      端口:443(https 默认)
路径:/news/list  查询参数:page=2&tag=net

HTTP 是超文本传输协议,无状态(每次请求互不记挂,所以要用 Cookie/Session 补记忆)。 默认端口 80;HTTPS = HTTP + TLS 加密,默认端口 443。

请求方法用途状态码含义
GET获取资源(参数在 URL 里)1xx信息提示
POST提交数据(表单、上传,参数在请求体里)2xx200 成功、201 已创建
PUT更新/上传资源3xx301 永久重定向、302 临时重定向
DELETE删除资源4xx404 未找到、403 禁止访问
HEAD只要响应头,不要正文5xx500 服务器内部错误
HTML 常识
  • HTML = 超文本标记语言,靠标签(<div>、<a> 等)描述网页结构,不是编程语言。
  • 浏览器拿到 HTML 后解析渲染;CSS 管样式、JavaScript 管行为。
课堂练习(3 题)
  1. 访问 https://a.b.com/index.html,其中"https"和"a.b.com"分别是什么? 答:协议名(https)和主机名(域名 a.b.com)。
  2. HTTP 状态码 404 和 500 分别代表什么? 答:404 = 请求的资源不存在;500 = 服务器内部错误。
  3. GET 和 POST 的主要区别? 答:GET 参数附在 URL 上、用于获取资源、一般幂等;POST 数据在请求体中、用于提交数据。

6.3 电子邮件:发信和收信是两个协议

考试最爱问"发邮件用哪个、收邮件用哪个"。

环节协议端口说明
发送SMTP25把邮件从客户端送到服务器,再从服务器送到对方服务器
接收(下载)POP3110把服务器上的邮件下载到本地(通常下载后服务器上删除)
接收(同步)IMAP143邮件留在服务器上,多设备同步状态
记忆诀窍
  • SMTP 只管"往外送",POP3/IMAP 只管"往回收"。
  • 邮件传输能否带附件/图片?能——靠 MIME 扩展编码(把二进制编码成文本传输)。
课堂练习(2 题)
  1. 用 Outlook 给别人发邮件、和收别人发来的邮件,分别用到哪些协议? 答:发信用 SMTP;收信用 POP3 或 IMAP。
  2. POP3 和 IMAP 的主要差别是什么? 答:POP3 把邮件下载到本地(默认服务器端删除),IMAP 把邮件留在服务器、多端同步。

6.4 FTP、DHCP 与其它的名字

"哪个协议干什么"的归属题,全在这一节。

协议功能端口/要点
FTP文件传输21 控制连接 + 20 数据连接,双连接是它的特色
DHCP自动分配 IP 地址等配置67(服务器)/ 68(客户端);UDP;"插上网线自动就有 IP"靠它
Telnet远程登录(明文,不安全)23
SSH加密的远程登录22;Telnet 的安全替代品
SNMP网络管理(监控路由器/交换机状态)161/162,UDP
NTP网络时间同步123,UDP
DHCP 取址四步(记首字母 DORA)
  1. Discover——客户端广播:"谁是 DHCP 服务器?"
  2. Offer——服务器应答:"这个地址给你行不行?"
  3. Request——客户端广播:"我要这个地址。"
  4. Ack——服务器确认:"成交,配置也一起给你。"

FTP 为什么开两条连接?控制连接全程保持(发命令),数据连接每传一次文件临时建立(传内容)—— 命令和文件分开走,所以叫"带外控制"。

课堂练习(3 题)
  1. 电脑接上校园网就能自动获得 IP,用的是哪个协议? 答:DHCP。
  2. FTP 使用哪两个端口?分别传什么? 答:21 端口是控制连接(传命令),20 端口是数据连接(传文件内容)。
  3. Telnet 与 SSH 选哪个更安全,为什么? 答:SSH,因为它对传输内容加密;Telnet 是明文传输,密码可被窃听。