在上一篇中,我们完成了传输层 TCP 协议的三大核心机制学习,而应用层作为 OSI 模型的最高层,直接面向用户提供各类网络服务。应用层协议定义了应用进程间通信的规则与数据格式,支撑了文件传输、网页浏览、邮件收发等互联网核心应用。下面结合思维导图,系统梳理网络应用模型与典型应用层协议,为后续 DNS 协议的学习做好铺垫。
一、网络应用的两种核心模型
应用层协议的设计依赖于网络应用模型,主流模型分为客户端 / 服务器(C/S)模型和 P2P 模型两类,分别适配不同的业务场景。
1. 客户端 / 服务器(C/S)模型
C/S 模型是互联网中最经典的应用模型,采用 "请求 - 响应" 模式,客户端主动发起请求,服务器被动提供服务。
- 服务器端 :
- 提供计算服务的核心设备,需永久性在线提供服务;
- 拥有永久性访问地址 / 域名,客户端可通过固定地址定位服务器;
- 典型应用:Web 服务器、FTP 服务器、邮件服务器。
- 客户端 :
- 请求计算服务的主机,与服务器通信并使用其提供的服务;
- 间歇性接入网络,可能使用动态 IP 地址,无需固定公网地址;
- 不与其他客户端直接通信,所有交互均通过服务器中转;
- 典型应用:浏览器、FTP 客户端、邮件客户端。
- 典型应用场景:Web(HTTP/HTTPS)、文件传输(FTP)、远程登录(TELNET)、电子邮件(SMTP/POP3)。
2. P2P(对等)模型
P2P 模型打破了传统 C/S 模型的 "中心节点依赖",网络中的主机地位平等,既可作为客户端请求服务,也可作为服务器提供服务。
- 核心特点 :
- 不存在永远在线的中心服务器,节点间直接通信,无单点故障风险;
- 每个主机既是服务请求者也是服务提供者,资源分布在所有节点中;
- 节点间可直接通讯,无需通过服务器中转,传输效率高;
- 节点间歇性接入网络,可动态改变 IP 地址,网络可扩展性好、健壮性强;
- 典型应用场景:文件共享(BT 下载)、流媒体直播、分布式计算。
二、文件传输协议(FTP)
FTP 是基于 C/S 模型的文件传输协议,采用 TCP 作为传输层协议,通过控制连接与数据连接分离的方式,实现跨平台的文件传输与管理。
1. 核心特性与端口
- 协议与端口:采用客户端 / 服务器模式,使用 TCP 可靠传输服务;控制连接采用 21 号端口,数据连接主动模式下使用 20 号端口(被动模式由服务器和客户端协商);
- 服务器架构:FTP 服务器包含一个主进程(负责接收新请求)和多个从属进程(负责处理单个请求),支持多客户端同时连接。
2. 核心功能
- 支持不同种类主机系统(软硬件体系差异)之间的文件传输;
- 以用户权限管理的方式,提供用户对远程 FTP 服务器的文件管理能力(上传、下载、删除、重命名等);
- 支持匿名 FTP 访问,以公用账号提供公开文件共享能力。
3. 工作原理与流程
- 两个独立 TCP 连接 :
- 控制连接:用于传输控制命令和响应,在整个会话期间保持打开状态,监听 21 号端口;
- 数据连接:用于传输文件数据,每次数据传输完毕后关闭;主动模式下使用 TCP 20 端口,被动模式由服务器和客户端协商端口。
- 工作过程 :
- 服务器打开熟知端口 21,使客户进程能够连接上;
- 等待客户进程发出连接请求;
- 启动从属进程,处理客户进程发来的请求;
- 处理完成后回到等待状态,继续接受其他客户进程发来的请求。

4. 传输模式
- 文本模式(ASCII 模式):以文本序列传输数据,适合纯文本文件;
- 二进制模式(Binary 模式):以二进制序列传输数据,支持图片、视频、可执行文件等所有类型文件。
三、常见应用层协议速览
下表汇总了主流应用层协议的传输层协议与熟知端口号,是网络通信的基础知识点:
| 应用程序 | 使用协议 | 熟知端口号 |
|---|---|---|
| FTP 数据连接 | TCP | 20 |
| FTP 控制连接 | TCP | 21 |
| TELNET(远程登录) | TCP | 23 |
| SMTP(邮件发送) | TCP | 25 |
| DNS(域名解析) | UDP/TCP | 53 |
| TFTP(简单文件传输) | UDP | 69 |
| HTTP(网页浏览) | TCP | 80 |
| POP3(邮件接收) | TCP | 110 |
| SNMP(网络管理) | UDP | 161 |
应用层模型与 FTP 协议的梳理,为我们打开了应用层协议的学习大门。而 DNS(域名系统)作为互联网的 "地址簿",通过域名与 IP 地址的映射,解决了人类记忆 IP 地址的难题,是所有网络应用的基础。下一篇,我们将深入梳理 DNS 协议的工作原理、域名解析流程与核心机制。