网络协议底层拆解:IP、TCP/UDP 与 HTTP 作用及结构全解析

目录

IP、TCP/UDP、HTTP 协议作用与结构详解

下面用清晰、不啰嗦、结合结构的方式,一次性讲清:

IP 协议、TCP 协议、UDP 协议、HTTP 协议各自的作用,以及它们在结构上的定位。


一、整体结构位置(先看懂它们在哪)

TCP/IP 五层模型从上到下:

  1. 应用层 → HTTP
  2. 传输层 → TCP、UDP
  3. 网络层 → IP
  4. 数据链路层
  5. 物理层

一句话关系

HTTP 靠 TCP 可靠传输,TCP/UDP 靠 IP 寻址发送,IP 靠底层链路实际传送。

传统 HTTP 选 TCP(HTTP 完全可以跑在 TCP 上),是因为「可靠性优先」:HTTP 是文本协议,丢一个字节、乱序都会导致整个报文解析失败,TCP 帮 HTTP 解决了「怎么把数据完整送到」的问题,让 HTTP 可以只专注「业务格式」。


二、IP 协议(网络层)

作用

负责主机之间的寻址与路由,把数据包从一台电脑送到另一台电脑。

从结构看它做了什么

IP 报文头部包含:

  • 源 IP 地址
  • 目的 IP 地址
  • 协议号(标记上层是 TCP 还是 UDP)
  • 分片信息

结构决定功能

IP 只关心「发到哪」,不关心:

  • 丢没丢
  • 乱没乱序
  • 到没到

所以 IP 是不可靠、无连接的尽力交付协议


三、UDP 协议(传输层)

作用

在 IP 的基础上,增加端口号,实现进程到进程的交付。

从结构看它做了什么

UDP 头部非常简单:

  • 源端口
  • 目的端口
  • 长度
  • 校验和

结构决定功能

  • 无连接
  • 不可靠
  • 速度快、开销小
  • 不重传、不排序、不握手

适合场景:视频通话、直播、DNS、游戏。


四、TCP 协议(传输层)

作用

在 IP 基础上,实现可靠、有序、面向连接的传输。

从结构看它做了什么

TCP 头部比 UDP 复杂得多:

  • 源端口 / 目的端口
  • 序号 (Seq)
  • 确认号 (Ack)
  • 窗口大小(流量控制)
  • 标志位 (SYN、ACK、FIN、RST 等)
  • 校验和

结构决定功能

  • 三次握手建立连接
  • 序号 + 确认号 → 保证有序、不丢失
  • 窗口 → 控制发送速度
  • 重传机制
  • 四次挥手断开

TCP 是可靠传输的基石。


五、HTTP 协议(应用层)

作用

定义浏览器 / 客户端与服务器之间如何交流数据,规定请求和响应的格式。

从结构看它做了什么

HTTP 是纯文本协议,结构非常直观:

请求结构
plaintext 复制代码
GET /index.html HTTP/1.1
Host: www.baidu.com
User-Agent: ...
(空行)
响应结构
plaintext 复制代码
HTTP/1.1 200 OK
Content-Type: text/html
(空行)
<html>...</html>

结构决定功能

  • 基于请求-响应模型
  • 无状态(不记住之前请求)
  • 明文传输(HTTPS 才加密)
  • 靠 TCP 保证可靠传输

HTTP 不关心网络怎么传,只关心业务数据格式。


六、一句话总结(最关键)

  • IP:负责找主机(地址 + 路由)
  • UDP:负责找进程(端口),快但不可靠
  • TCP:负责可靠传输(有序、不丢、重传)
  • HTTP:负责应用对话格式(网页、接口数据)

层级关系

HTTP → TCP → IP → 链路 → 物理

相关推荐
extrao18 小时前
🚀 Kea DHCP4 自动分配系统完整搭建
网络协议
不做菜鸟的网工3 天前
BGP特性
网络协议
MrSYJ3 天前
TCP协议理解
后端·tcp/ip
明月_清风5 天前
开发者网络概念全扫盲:一篇搞定
后端·网络协议
刘马想放假5 天前
Modbus 全栈技术解析:TCP、RTU、ASCII、RTU over TCP
数据结构·网络协议
王二端茶倒水6 天前
一套可落地的无线运营方案,不能只管 AP,还要管用户、计费和运维
网络协议
162723816086 天前
EtherCAT 分布式时钟(DC)原理与配置实战:把多轴真正"对齐到同一时刻"
网络协议
王二端茶倒水7 天前
宽带无线项目,怎么从一次性交付变成长期运营收入?
网络协议
用户2530171996278 天前
第6篇:从技术到产品 — Ghost Proxifier 的设计哲学
网络协议