常见应用层协议里,哪些协议用UDP,哪些用TCP,各自作用又是什么?

2025-09-22 09:13:00 RAIZ
网工工作中经常会遇到很多应用协议,比如https、DNS、FTP等。知道这些协议,但是否有深究这些协议是通过TCP还是UDP传输的吗?阿祥后面会一一介绍,整理出来,希望能帮助大家了解这些协议。
在整理这些协议前,我们先来了解网络协议中TCP和UDP的区别以及它们各自的作用,方便对网络协议有更深的了解。
TCP 和 UDP 各自的作用

TCP 就像一个谨慎可靠的送货员。它确保每一个数据包都准确无误、按顺序地到达目的地。通过三次握手建立连接、数据包确认、超时重传、流量控制和拥塞控制等机制,TCP为应用程序提供了一条可靠的、有序的字节流通道。这非常适合那些对数据完整性和准确性要求高的应用,比如网页浏览(HTTP/S)、文件传输(FTP)、电子邮件(SMTP/POP3)等。
睿智创新RAIZ,一体化IT服务提供商
UDP 则像一个追求效率的投递手。它不建立连接,直接将数据报发送出去,不保证它们一定能到达、按序到达或不重复。这种方式开销小、延迟低、传输效率高。它非常适合那些对实时性要求高,可以容忍少量数据丢失的应用,比如在线视频/语音通话、实时游戏、域名解析(DNS)、动态主机配置(DHCP)等。
睿智创新RAIZ,一体化IT服务提供商
为什么TCP和UDP都需要?

既然TCP如此可靠,为什么还需要UDP呢?反过来,UDP如此高效,为什么TCP不学学呢?
这恰恰体现了计算机网络设计中的权衡思想。不同的应用场景有不同的核心需求:
追求可靠 vs. 追求实时:发送一份重要文件时,你希望一个字节都不错(TCP)。而在视频通话时,偶尔丢几帧画面远比卡顿等待重传要能接受(UDP)。
连接开销 vs. 简单快速:TCP建立和维护连接需要额外的时间和资源。对于DNS查询这种“一问一答”式的简单交互,如果每次都要握手,效率就太低了。
网络资源占用:TCP的拥塞控制机制会在网络不好时主动降低发送速率。而UDP没有这种限制,适合音视频广播等需要恒定速率发送数据的场景。
因此,TCP和UDP是互补关系,而非替代关系。它们共同满足了互联网应用多样化的需求。
常见UDP设计和传统TCP设计的可靠传输协议详解
应用协议整理

了解了TCP和UDP两种协议的原理和适用的场景,我们这下就好整理对应的应用协议了,如下表:
使用TCP传输的应用协议
作用
HTTP/HTTPS
用于浏览网页。HTTP 传输明文,HTTPS 在 HTTP 基础上通过 SSL/TLS 提供加密。
FTP
用于在客户端和服务器之间进行文件传输,包括上传和下载。
SMTP
用于发送电子邮件
POP3/IMAP
都用于从邮件服务器接收邮件。POP3 通常下载到本地并删除服务器副本,IMAP 则在服务器上管理邮件,支持多设备同步。
SSH
提供安全的加密远程登录和命令执行服务,常用于系统管理。
Telnet
提供明文远程登录服务,因不安全已较少使用,多被 SSH 取代。
TCP和UDP都可能有
作用
DNS
域名系统,将人类可读的域名(如 www.example.com)解析为机器可读的 IP 地址。多数查询使用 UDP,区域传输等使用 TCP。
使用UDP传输的应用协议
作用
DHCP
动态主机配置协议,为网络中的设备自动分配 IP 地址、子网掩码、默认网关等网络配置参数。
SNMP
简单网络管理协议,用于监控和管理网络设备(如路由器、交换机、服务器)的状态和性能。
TFTP
简单文件传输协议,提供轻量化的文件传输功能,常用于网络设备升级或无盘工作站启动等场景。
RTP/RTCP
实时传输协议 用于传输实时音视频数据(如视频会议、流媒体),其伴生协议 RTCP 负责监控传输质量。


我要咨询