计算机网络基础篇——应用层
一、应用层核心概念
-
互联网组成结构
- 边缘部分:由所有连接在互联网上的主机组成,用户直接使用(如手机、电脑)
- 核心部分:由网络和路由器组成,为边缘部分提供连通性和交换服务
-
通信方式分类
类型 特点 典型应用 客户-服务器(C/S) 客户端主动请求,服务器被动响应 网页浏览(HTTP)、文件下载(FTP) 对等连接(P2P) 节点平等互传资源 BT下载、在线视频直播 -
应用层协议特点
- 每个协议解决特定应用问题(如HTTP传输网页,FTP传输文件)
- 通常基于客户-服务器模式,通过进程间通信实现
二、核心协议详解
1. HTTP协议(万维网基础)
-
工作原理
- 浏览器解析URL并请求DNS解析域名
- 建立TCP连接(默认端口80)
- 发送HTTP请求(如
GET /index.html
) - 服务器返回响应(状态码+内容)
- 连接释放(HTTP/1.0)或复用(HTTP/1.1)
-
版本演进
版本 关键改进 缺点 HTTP/1.0 短连接(每次请求新建连接) 性能开销大 HTTP/1.1 长连接(Keep-Alive)、管道化 队头阻塞问题 HTTP/2 多路复用、二进制分帧 需TLS加密
2. DNS协议(域名系统)
-
层次结构
根域名服务器 → 顶级域(.com/.cn) → 权威域名服务器
-
解析过程
- 本地缓存查询
- 递归查询本地DNS服务器
- 迭代查询根/顶级域/权威服务器
-
特点
- 使用UDP协议(端口53)
- 缓存机制减少查询延迟
3. FTP协议(文件传输)
-
工作模式
模式 数据连接方向 控制连接 主动模式 服务器→客户端 客户端发起 被动模式 客户端→服务器 服务器发起 -
特点
- 使用TCP(端口21控制,20数据)
- 支持断点续传、权限管理
三、应用层与运输层交互
-
协议依赖关系
应用层协议 运输层协议 原因 HTTP/HTTPS TCP 需可靠传输网页数据 DNS UDP 查询报文短且实时性高 FTP TCP 文件传输需可靠性 -
端口号分配
- 知名端口(0-1023):如HTTP(80)、FTP(21)
- 注册端口(1024-49151):如MySQL(3306)
- 动态端口(49152-65535):客户端临时使用
四、其他重要协议
-
SMTP(邮件发送)
- 使用TCP端口25
- 仅支持ASCII文本,需MIME协议传输附件
-
TELNET(远程登录)
- 明文传输,现多被SSH替代
- 使用TCP端口23
五、典型应用场景对比
场景 | 首选协议 | 替代方案 | 关键需求 |
---|---|---|---|
网页浏览 | HTTP/HTTPS | QUIC | 低延迟、安全性 |
大文件传输 | FTP | SFTP/SCP | 可靠性、断点续传 |
域名解析 | DNS | / | 快速响应 |
邮件发送 | SMTP | / | 投递可靠性 |
该总结严格遵循《计算机网络》第七版,作者谢希仁的教材章节结构,重点标注了:
- 协议交互流程(如HTTP请求-响应模型)
- 关键数值(如DNS默认端口53)
- 典型问题(如HTTP无状态性通过Cookie解决)
建议配合教材中的协议报文格式图(如HTTP请求头)进行对照学习。