@@ -101,25 +101,40 @@ HTTP/3.0 之前是基于 TCP 协议的,而 HTTP/3.0 将弃用 TCP,改用 **
101
101
- < https://zh.wikipedia.org/zh/HTTP/3 >
102
102
- < https://datatracker.ietf.org/doc/rfc9114/ >
103
103
104
- ### 使用 TCP 的协议有哪些?使用 UDP 的协议有哪些?
105
-
106
- ** 运行于 TCP 协议之上的协议** :
107
-
108
- 1 . ** HTTP 协议(HTTP/3.0 之前)** :超文本传输协议(HTTP,HyperText Transfer Protocol)是一种用于传输超文本和多媒体内容的协议,主要是为 Web 浏览器与 Web 服务器之间的通信而设计的。当我们使用浏览器浏览网页的时候,我们网页就是通过 HTTP 请求进行加载的。
109
- 2 . ** HTTPS 协议** :更安全的超文本传输协议(HTTPS,Hypertext Transfer Protocol Secure),身披 SSL 外衣的 HTTP 协议
110
- 3 . ** FTP 协议** :文件传输协议 FTP(File Transfer Protocol)是一种用于在计算机之间传输文件的协议,可以屏蔽操作系统和文件存储方式。注意 ⚠️:FTP 是一种不安全的协议,因为它在传输过程中不会对数据进行加密。建议在传输敏感数据时使用更安全的协议,如 SFTP。
111
- 4 . ** SMTP 协议** :简单邮件传输协议(SMTP,Simple Mail Transfer Protocol)的缩写,是一种用于发送电子邮件的协议。注意 ⚠️:SMTP 协议只负责邮件的发送,而不是接收。要从邮件服务器接收邮件,需要使用 POP3 或 IMAP 协议。
112
- 5 . ** POP3/IMAP 协议** :两者都是负责邮件接收的协议。IMAP 协议是比 POP3 更新的协议,它在功能和性能上都更加强大。IMAP 支持邮件搜索、标记、分类、归档等高级功能,而且可以在多个设备之间同步邮件状态。几乎所有现代电子邮件客户端和服务器都支持 IMAP。
113
- 6 . ** Telnet 协议** :用于通过一个终端登陆到其他服务器。Telnet 协议的最大缺点之一是所有数据(包括用户名和密码)均以明文形式发送,这有潜在的安全风险。这就是为什么如今很少使用 Telnet,而是使用一种称为 SSH 的非常安全的网络传输协议的主要原因。
114
- 7 . ** SSH 协议** : SSH( Secure Shell)是目前较可靠,专为远程登录会话和其他网络服务提供安全性的协议。利用 SSH 协议可以有效防止远程管理过程中的信息泄露问题。SSH 建立在可靠的传输协议 TCP 之上。
115
- 8 . ……
116
-
117
- ** 运行于 UDP 协议之上的协议** :
118
-
119
- 1 . ** HTTP 协议(HTTP/3.0 )** : HTTP/3.0 弃用 TCP,改用基于 UDP 的 QUIC 协议 。
120
- 2 . ** DHCP 协议** :动态主机配置协议,动态配置 IP 地址
121
- 3 . ** DNS** :域名系统(DNS,Domain Name System)将人类可读的域名 (例如,www.baidu.com) 转换为机器可读的 IP 地址 (例如,220.181.38.148)。 我们可以将其理解为专为互联网设计的电话薄。实际上,DNS 同时支持 UDP 和 TCP 协议。
122
- 4 . ……
104
+ ### 你知道哪些基于 TCP/UDP 的协议?
105
+
106
+ TCP (传输控制协议) 和 UDP (用户数据报协议) 是互联网传输层的两大核心协议,它们为各种应用层协议提供了基础的通信服务。以下是一些常见的、分别构建在 TCP 和 UDP 之上的应用层协议:
107
+
108
+ ** 运行于 TCP 协议之上的协议 (强调可靠、有序传输):**
109
+
110
+ | 中文全称 (缩写) | 英文全称 | 主要用途 | 说明与特性 |
111
+ | -------------------------- | ---------------------------------- | ---------------------------- | --------------------------------------------------------------------------------------------------------------------------- |
112
+ | 超文本传输协议 (HTTP) | HyperText Transfer Protocol | 传输网页、超文本、多媒体内容 | ** HTTP/1.x 和 HTTP/2 基于 TCP** 。早期版本不加密,是 Web 通信的基础。 |
113
+ | 安全超文本传输协议 (HTTPS) | HyperText Transfer Protocol Secure | 加密的网页传输 | 在 HTTP 和 TCP 之间增加了 SSL/TLS 加密层,确保数据传输的机密性和完整性。 |
114
+ | 文件传输协议 (FTP) | File Transfer Protocol | 文件传输 | 传统的 FTP ** 明文传输** ,不安全。推荐使用其安全版本 ** SFTP (SSH File Transfer Protocol)** 或 ** FTPS (FTP over SSL/TLS)** 。 |
115
+ | 简单邮件传输协议 (SMTP) | Simple Mail Transfer Protocol | ** 发送** 电子邮件 | 负责将邮件从客户端发送到服务器,或在邮件服务器之间传递。可通过 ** STARTTLS** 升级到加密传输。 |
116
+ | 邮局协议第 3 版 (POP3) | Post Office Protocol version 3 | ** 接收** 电子邮件 | 通常将邮件从服务器** 下载到本地设备后删除服务器副本** (可配置保留)。** POP3S** 是其 SSL/TLS 加密版本。 |
117
+ | 互联网消息访问协议 (IMAP) | Internet Message Access Protocol | ** 接收和管理** 电子邮件 | 邮件保留在服务器,支持多设备同步邮件状态、文件夹管理、在线搜索等。** IMAPS** 是其 SSL/TLS 加密版本。现代邮件服务首选。 |
118
+ | 远程终端协议 (Telnet) | Teletype Network | 远程终端登录 | ** 明文传输** 所有数据 (包括密码),安全性极差,基本已被 SSH 完全替代。 |
119
+ | 安全外壳协议 (SSH) | Secure Shell | 安全远程管理、加密数据传输 | 提供了加密的远程登录和命令执行,以及安全的文件传输 (SFTP) 等功能,是 Telnet 的安全替代品。 |
120
+
121
+ ** 运行于 UDP 协议之上的协议 (强调快速、低开销传输):**
122
+
123
+ | 中文全称 (缩写) | 英文全称 | 主要用途 | 说明与特性 |
124
+ | ----------------------- | ------------------------------------- | -------------------------- | ------------------------------------------------------------------------------------------------------------ |
125
+ | 超文本传输协议 (HTTP/3) | HyperText Transfer Protocol version 3 | 新一代网页传输 | 基于 ** QUIC** 协议 (QUIC 本身构建于 UDP 之上),旨在减少延迟、解决 TCP 队头阻塞问题,支持 0-RTT 连接建立。 |
126
+ | 动态主机配置协议 (DHCP) | Dynamic Host Configuration Protocol | 动态分配 IP 地址及网络配置 | 客户端从服务器自动获取 IP 地址、子网掩码、网关、DNS 服务器等信息。 |
127
+ | 域名系统 (DNS) | Domain Name System | 域名到 IP 地址的解析 | ** 通常使用 UDP** 进行快速查询。当响应数据包过大或进行区域传送 (AXFR) 时,会** 切换到 TCP** 以保证数据完整性。 |
128
+ | 实时传输协议 (RTP) | Real-time Transport Protocol | 实时音视频数据流传输 | 常用于 VoIP、视频会议、直播等。追求低延迟,允许少量丢包。通常与 RTCP 配合使用。 |
129
+ | RTP 控制协议 (RTCP) | RTP Control Protocol | RTP 流的质量监控和控制信息 | 配合 RTP 工作,提供丢包、延迟、抖动等统计信息,辅助流量控制和拥塞管理。 |
130
+ | 简单文件传输协议 (TFTP) | Trivial File Transfer Protocol | 简化的文件传输 | 功能简单,常用于局域网内无盘工作站启动、网络设备固件升级等小文件传输场景。 |
131
+ | 简单网络管理协议 (SNMP) | Simple Network Management Protocol | 网络设备的监控与管理 | 允许网络管理员查询和修改网络设备的状态信息。 |
132
+ | 网络时间协议 (NTP) | Network Time Protocol | 同步计算机时钟 | 用于在网络中的计算机之间同步时间,确保时间的一致性。 |
133
+
134
+ ** 总结一下:**
135
+
136
+ - ** TCP** 更适合那些对数据** 可靠性、完整性和顺序性** 要求高的应用,如网页浏览 (HTTP/HTTPS)、文件传输 (FTP/SFTP)、邮件收发 (SMTP/POP3/IMAP)。
137
+ - ** UDP** 则更适用于那些对** 实时性要求高、能容忍少量数据丢失** 的应用,如域名解析 (DNS)、实时音视频 (RTP)、在线游戏、网络管理 (SNMP) 等。
123
138
124
139
### TCP 三次握手和四次挥手(非常重要)
125
140
0 commit comments