TCP、UDP Http Https

TCP、UDP、HTTP、HTTPS 是互联网通信的四大基石。要理解它们,最简单的方式是将它们看作一个物流系统:

  • TCP/UDP 是运输层(决定用卡车还是飞机运货,是否要签收)。
  • HTTP/HTTPS 是应用层(决定货物怎么打包、清单怎么写、是否要加密箱)。
它们的关系层级如下:

1传输层双雄:TCP vs UDP

这两个协议负责端到端的数据传输,决定了数据"怎么运"。

特性 TCP (Transmission Control Protocol) UDP (User Datagram Protocol)
连接性 面向连接。发送前必须"三次握手"建立连接。 无连接。想发就发,不需要事先打招呼。
可靠性 高可靠。保证数据不丢失、不重复、按顺序到达。丢了会自动重传。 不可靠。发出去就不管了,丢了就丢了,不重传,不保序。
速度 较慢。因为要建立连接、确认应答、拥塞控制,开销大。 极快。头部开销小(仅8字节),无确认机制,延迟极低。
数据形式 字节流。像水流一样,没有边界,接收方需自己处理粘包。 数据报。一个个独立的包,有明确的边界。
生活类比 打电话或寄挂号信。 "喂,听得见吗?"(握手) "收到请回复。"(确认) "没收到?我再发一遍。"(重传) 大喇叭广播或寄明信片。 对着人群喊话,不管谁听到。 或者把明信片扔进邮筒,丢了也不管。
典型场景 网页浏览、文件下载、电子邮件、数据库连接。 (要求数据绝对准确) 视频直播、在线游戏、语音通话 (VoIP)、DNS查询。 (要求实时性,偶尔丢帧没关系)

2. 应用层双子:HTTP vs HTTPS

这两个协议运行在TCP之上(注:最新的 HTTP/3 开始基于 UDP),负责定义数据的内容格式和交互规则。

特性 HTTP (HyperText Transfer Protocol) HTTPS (HTTP Secure)
安全性 明文传输。数据在网络上"裸奔",容易被窃听、篡改(如中间人攻击)。 加密传输。基于 SSL/TLS 协议加密,数据被封装在安全隧道中,防窃听、防篡改。
端口 默认 80 端口。 默认 443 端口。
证书 不需要证书。 需要向 CA 机构申请 SSL/TLS 数字证书(验证服务器身份)。
性能 理论上稍快(少了解密过程),但在 HTTP/2 和 HTTP/3 时代,差距已微乎其微。 早期因握手和加密稍慢,但现在硬件加速普及,性能与 HTTP 几乎无异,且 HTTP/2 强制要求 HTTPS。
SEO 影响 现代浏览器(Chrome等)会标记为"不安全",搜索引擎排名会降低。 搜索引擎优先收录,浏览器显示"安全锁"标志。
生活类比 普通明信片。 邮递员、路人谁都能看懂上面写了什么。 防弹保险箱快递。 只有持有钥匙的收件人才能打开,途中谁也打不开。
典型场景 内部测试、非敏感信息的旧系统。 所有现代网站、支付、登录、隐私数据传输。

3四者的核心关系与工作流程

经典流程 (HTTP/1.1 & HTTP/2)

当你访问 https://www.example.com 时:

  • 1DNS 解析 (通常用 UDP):将域名解析为 IP 地址。
  • 2建立连接 (TCP):浏览器与服务器进行"三次握手",建立可靠的 TCP 通道。
  • 3安全握手 (TLS/SSL):在 TCP 通道上,双方交换证书、协商密钥,建立加密隧道(这就是 HTTPS 的 "S")。
  • 4 发送请求 (HTTP):浏览器在加密隧道内,按照 HTTP 协议格式发送 GET / 请求。
  • 5返回响应 (HTTP):服务器返回 HTML 数据。
  • 6断开连接 (TCP):数据传输完毕,进行"四次挥手"断开连接(或保持长连接)。

公式:

  • HTTP = 应用层规则 (怎么说话)
  • HTTPS = HTTP + SSL/TLS (加密的说话方式)
  • HTTP/HTTPS 通常跑在 TCP 上 (可靠的电话线)
  • HTTP/3 (最新标准) 跑在 UDP 上 (为了更快的速度,解决了 TCP 的队头阻塞问题)

2026 年视角下的新趋势:HTTP/3 与 QUIC

在 2026 年的今天,你必须知道 HTTP/3 已经非常普及,它打破了"HTTP 必须基于 TCP"的传统认知:

传统 (HTTP/1.1, HTTP/2): 基于 TCP。

缺点:TCP 有一个"队头阻塞"问题。如果一个数据包丢了,后续所有数据包都要等它重传成功才能处理,导致网页加载卡顿。

现代 (HTTP/3): 基于 UDP (具体协议叫 QUIC)。

原理:利用 UDP 的高速特性,自己在应用层实现了可靠传输和多路复用。

优势:即使某个数据包丢了,只影响那一个请求,不影响其他资源加载;且在网络切换(如 WiFi 切 4G)时连接不断开。

现状:YouTube、Google、Facebook 以及大量电商网站已默认启用 HTTP/3。

总结对比表

维度 TCP UDP HTTP HTTPS
层级 传输层 传输层 应用层 应用层
核心目标 可靠、有序 快速、实时 传输超文本 安全传输超文本
是否加密 否 (本身不加密) 否 (明文) 是 (SSL/TLS)
依赖关系 底层基础 底层基础 通常基于 TCP 基于 TCP + SSL
最新演变 稳定成熟 稳定成熟 逐渐被 HTTP/2/3 取代 主流标准 (HTTP/2/3 over TLS)
一句话 靠谱的快递员 飞快的无人机 普通的送货单 加密的保险箱送货单

开发建议:

  • 选 TCP 还是 UDP? 只要不是做直播、游戏或实时音视频,无脑选 TCP。
  • 选 HTTP 还是 HTTPS? 永远选 HTTPS。现在 Let's Encrypt 等免费证书随处可见,HTTP 已被视为不安全且不专业。
  • 关注 HTTP/3:如果你的服务对全球弱网环境下的加载速度有极致要求,考虑开启 HTTP/3 (QUIC) 支持。
相关推荐
tzy2332 小时前
HTTPS 认证过程
网络协议·http·https
IT WorryFree3 小时前
通过Zabbix监控14条不同线路的出口IP,并与预设值对比,不一致时通过飞书告警
tcp/ip·飞书·zabbix
跨境海王哥3 小时前
怎么检查一个IP是否干净?IP质量分数检测及如何判断风险?
网络·网络协议·tcp/ip
nainaire3 小时前
仿muduo库的Tcp服务器以及其应用层Http协议支持
服务器·网络·c++·tcp/ip·http
m0_555762903 小时前
STM32H743 USB FS 内部 IP DMA 问题分析
stm32·嵌入式硬件·tcp/ip
老兵发新帖3 小时前
查看fail2ban停止的IP和历史记录
chrome·网络协议·tcp/ip
森叶3 小时前
深入理解 Hash:它不是一个函数,而是一种思想
人工智能·http·架构
Ivy_belief3 小时前
Qt网络编程实战:从零掌握 QUdpSocket 及 UDP 通信
网络·qt·udp
jaysee-sjc4 小时前
十六、Java 网络编程全解析:UDP/TCP 通信 + BS/CS 架构
java·开发语言·网络·tcp/ip·算法·架构·udp