网络协议底层拆解: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 → 链路 → 物理

相关推荐
jaysee-sjc2 小时前
【苍穹外卖】Day10:定时任务与 WebSocket 实时提醒实战
java·开发语言·javascript·数据库·vue.js·websocket·网络协议
未来之窗软件服务3 小时前
诡异的网络IP/域名/ICMP通应用层失败骨干网分层拦截分析-东方仙盟
网络·tcp/ip·智能路由器·dns劫持·仙盟创梦ide·东方仙盟
幻智星科技4 小时前
我砍掉了FPGA里的ARM核项目反而提前交付了
arm开发·网络协议·fpga开发·硬件架构
cyf314 小时前
半小时玩转RDMA:从零跑通高速网络通信
网络协议·rdma·高速通信·rocev2·wireshark抓包·ai 智算网络·入门实战
砺星Leetx13 小时前
工业总线选型与对接实战:PROFINET、EtherCAT、EtherNet/IP、PROFIBUS、Modbus-TCP 与 CC-Link
网络·网络协议·tcp/ip·控制器·国产拧紧系统
科技小登17 小时前
网站和游戏怎么选高防?DDoS防护、高防IP与高防CDN接入方案解析与边界评估
tcp/ip·ddos
treesforest19 小时前
游戏账号安全风险分层方案:IP信号分层与人机复核实践
tcp/ip·安全·游戏·1024程序员节
流浪00121 小时前
计算机网络篇8:传输层——序列化与反序列化,TCP 面向字节流的报文边界由应用层自己切
网络协议·tcp/ip·计算机网络·1024程序员节·序列化反序列化·面向字节流·面向数据包
幻智星科技1 天前
多通道数据采集中collect_end信号的妙用
网络协议·架构·udp·硬件架构
lazy H1 天前
【计算机网络】第 5 篇:TCP 和 UDP 有什么区别?从 Java 后端场景理解两种传输协议
经验分享·后端·网络协议·tcp/ip·计算机网络·1024程序员节