应用层核心(一):从FTP到DNS的进阶指南

在上一篇中,我们完成了传输层 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 端口,被动模式由服务器和客户端协商端口。
  • 工作过程
    1. 服务器打开熟知端口 21,使客户进程能够连接上;
    2. 等待客户进程发出连接请求;
    3. 启动从属进程,处理客户进程发来的请求;
    4. 处理完成后回到等待状态,继续接受其他客户进程发来的请求。

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 协议的工作原理、域名解析流程与核心机制。