内网 IP 摄像机实时推拉流服务器带宽消耗分析

内网 IP 摄像机实时推拉流服务器带宽消耗分析

处于内网环境的摄像机没有公网 IP,OBS 无法直接拉流。两种主流中转方案 ------媒体服务器中转FRP 内网穿透------ 到底谁更省带宽?本文用实测数据给你算清楚。

### 文章目录

  • [内网 IP 摄像机实时推拉流服务器带宽消耗分析](#文章目录 内网 IP 摄像机实时推拉流服务器带宽消耗分析 @[TOC] 一、问题背景 二、带宽消耗原理 方案 A:媒体服务器中转 方案 B:FRP 内网穿透 三、具体数字对比 场景 1:只有 1 个 OBS 拉流 场景 2:3 个客户端同时拉流(OBS + 手机预览 + 网页观看) 场景 3:服务器转码(摄像机推 1080P,OBS 拉 720P) 四、多维度综合对比 五、实际成本估算 六、选型建议 七、总结)
  • [@TOC](#文章目录 内网 IP 摄像机实时推拉流服务器带宽消耗分析 @[TOC] 一、问题背景 二、带宽消耗原理 方案 A:媒体服务器中转 方案 B:FRP 内网穿透 三、具体数字对比 场景 1:只有 1 个 OBS 拉流 场景 2:3 个客户端同时拉流(OBS + 手机预览 + 网页观看) 场景 3:服务器转码(摄像机推 1080P,OBS 拉 720P) 四、多维度综合对比 五、实际成本估算 六、选型建议 七、总结)
  • [一、问题背景](#文章目录 内网 IP 摄像机实时推拉流服务器带宽消耗分析 @[TOC] 一、问题背景 二、带宽消耗原理 方案 A:媒体服务器中转 方案 B:FRP 内网穿透 三、具体数字对比 场景 1:只有 1 个 OBS 拉流 场景 2:3 个客户端同时拉流(OBS + 手机预览 + 网页观看) 场景 3:服务器转码(摄像机推 1080P,OBS 拉 720P) 四、多维度综合对比 五、实际成本估算 六、选型建议 七、总结)
  • [二、带宽消耗原理](#文章目录 内网 IP 摄像机实时推拉流服务器带宽消耗分析 @[TOC] 一、问题背景 二、带宽消耗原理 方案 A:媒体服务器中转 方案 B:FRP 内网穿透 三、具体数字对比 场景 1:只有 1 个 OBS 拉流 场景 2:3 个客户端同时拉流(OBS + 手机预览 + 网页观看) 场景 3:服务器转码(摄像机推 1080P,OBS 拉 720P) 四、多维度综合对比 五、实际成本估算 六、选型建议 七、总结)
  • [方案 A:媒体服务器中转](#文章目录 内网 IP 摄像机实时推拉流服务器带宽消耗分析 @[TOC] 一、问题背景 二、带宽消耗原理 方案 A:媒体服务器中转 方案 B:FRP 内网穿透 三、具体数字对比 场景 1:只有 1 个 OBS 拉流 场景 2:3 个客户端同时拉流(OBS + 手机预览 + 网页观看) 场景 3:服务器转码(摄像机推 1080P,OBS 拉 720P) 四、多维度综合对比 五、实际成本估算 六、选型建议 七、总结)
  • [方案 B:FRP 内网穿透](#文章目录 内网 IP 摄像机实时推拉流服务器带宽消耗分析 @[TOC] 一、问题背景 二、带宽消耗原理 方案 A:媒体服务器中转 方案 B:FRP 内网穿透 三、具体数字对比 场景 1:只有 1 个 OBS 拉流 场景 2:3 个客户端同时拉流(OBS + 手机预览 + 网页观看) 场景 3:服务器转码(摄像机推 1080P,OBS 拉 720P) 四、多维度综合对比 五、实际成本估算 六、选型建议 七、总结)
  • [三、具体数字对比](#文章目录 内网 IP 摄像机实时推拉流服务器带宽消耗分析 @[TOC] 一、问题背景 二、带宽消耗原理 方案 A:媒体服务器中转 方案 B:FRP 内网穿透 三、具体数字对比 场景 1:只有 1 个 OBS 拉流 场景 2:3 个客户端同时拉流(OBS + 手机预览 + 网页观看) 场景 3:服务器转码(摄像机推 1080P,OBS 拉 720P) 四、多维度综合对比 五、实际成本估算 六、选型建议 七、总结)
  • [场景 1:只有 1 个 OBS 拉流](#文章目录 内网 IP 摄像机实时推拉流服务器带宽消耗分析 @[TOC] 一、问题背景 二、带宽消耗原理 方案 A:媒体服务器中转 方案 B:FRP 内网穿透 三、具体数字对比 场景 1:只有 1 个 OBS 拉流 场景 2:3 个客户端同时拉流(OBS + 手机预览 + 网页观看) 场景 3:服务器转码(摄像机推 1080P,OBS 拉 720P) 四、多维度综合对比 五、实际成本估算 六、选型建议 七、总结)
  • [场景 2:3 个客户端同时拉流(OBS + 手机预览 + 网页观看)](#文章目录 内网 IP 摄像机实时推拉流服务器带宽消耗分析 @[TOC] 一、问题背景 二、带宽消耗原理 方案 A:媒体服务器中转 方案 B:FRP 内网穿透 三、具体数字对比 场景 1:只有 1 个 OBS 拉流 场景 2:3 个客户端同时拉流(OBS + 手机预览 + 网页观看) 场景 3:服务器转码(摄像机推 1080P,OBS 拉 720P) 四、多维度综合对比 五、实际成本估算 六、选型建议 七、总结)
  • [场景 3:服务器转码(摄像机推 1080P,OBS 拉 720P)](#文章目录 内网 IP 摄像机实时推拉流服务器带宽消耗分析 @[TOC] 一、问题背景 二、带宽消耗原理 方案 A:媒体服务器中转 方案 B:FRP 内网穿透 三、具体数字对比 场景 1:只有 1 个 OBS 拉流 场景 2:3 个客户端同时拉流(OBS + 手机预览 + 网页观看) 场景 3:服务器转码(摄像机推 1080P,OBS 拉 720P) 四、多维度综合对比 五、实际成本估算 六、选型建议 七、总结)
  • [四、多维度综合对比](#文章目录 内网 IP 摄像机实时推拉流服务器带宽消耗分析 @[TOC] 一、问题背景 二、带宽消耗原理 方案 A:媒体服务器中转 方案 B:FRP 内网穿透 三、具体数字对比 场景 1:只有 1 个 OBS 拉流 场景 2:3 个客户端同时拉流(OBS + 手机预览 + 网页观看) 场景 3:服务器转码(摄像机推 1080P,OBS 拉 720P) 四、多维度综合对比 五、实际成本估算 六、选型建议 七、总结)
  • [五、实际成本估算](#文章目录 内网 IP 摄像机实时推拉流服务器带宽消耗分析 @[TOC] 一、问题背景 二、带宽消耗原理 方案 A:媒体服务器中转 方案 B:FRP 内网穿透 三、具体数字对比 场景 1:只有 1 个 OBS 拉流 场景 2:3 个客户端同时拉流(OBS + 手机预览 + 网页观看) 场景 3:服务器转码(摄像机推 1080P,OBS 拉 720P) 四、多维度综合对比 五、实际成本估算 六、选型建议 七、总结)
  • [六、选型建议](#文章目录 内网 IP 摄像机实时推拉流服务器带宽消耗分析 @[TOC] 一、问题背景 二、带宽消耗原理 方案 A:媒体服务器中转 方案 B:FRP 内网穿透 三、具体数字对比 场景 1:只有 1 个 OBS 拉流 场景 2:3 个客户端同时拉流(OBS + 手机预览 + 网页观看) 场景 3:服务器转码(摄像机推 1080P,OBS 拉 720P) 四、多维度综合对比 五、实际成本估算 六、选型建议 七、总结)
  • [七、总结](#文章目录 内网 IP 摄像机实时推拉流服务器带宽消耗分析 @[TOC] 一、问题背景 二、带宽消耗原理 方案 A:媒体服务器中转 方案 B:FRP 内网穿透 三、具体数字对比 场景 1:只有 1 个 OBS 拉流 场景 2:3 个客户端同时拉流(OBS + 手机预览 + 网页观看) 场景 3:服务器转码(摄像机推 1080P,OBS 拉 720P) 四、多维度综合对比 五、实际成本估算 六、选型建议 七、总结)

一、问题背景

处于内网环境的摄像机(如 4G 物联网卡、WiFi 内网、企业内网等),拿到的是内网 IP(10.x.x.x/ 192.168.x.x 段),经过 NAT 后才能上网。这意味着:

  • 摄像机可以主动向外推流

  • 但外部设备无法主动连接摄像机

OBS Studio 获取网络视频源的方式是主动拉流(输入 RTSP/RTMP 地址),所以它找不到藏在 NAT 后面的摄像机。

要解决这个问题,业界有两种主流方案:

方案 核心思路 代表工具
方案 A:媒体服务器中转 摄像机主动推流到公网服务器,服务器再分发给 OBS SRS、ZLMediaKit、Nginx-RTMP
方案 B:FRP 内网穿透 把摄像机的 RTSP 端口映射到公网服务器,OBS 通过映射地址拉流 frp、ngrok、nps

下面从带宽消耗原理、具体数字、多维度对比、实际成本四个层面展开分析。


二、带宽消耗原理

方案 A:媒体服务器中转

关键特征:

  • 摄像机只推 1 路到服务器,上行压力固定不变

  • 服务器负责协议解析 + 流复制 + 分发,可以同时给 N 个客户端拉流

  • 服务器入站带宽 = 码率 × 1(固定)

  • 服务器出站带宽 = 码率 × N(N = 同时拉流的客户端数)

方案 B:FRP 内网穿透

关键特征:

  • FRP 工作在 TCP 层 ,是纯端口转发,不理解视频协议,不做流复制

  • 每多一个客户端连接,FRP 就多建立一条到摄像机的 TCP 隧道,摄像机就要多发一路流

  • 服务器入站带宽 = 码率 × M(M = 同时连接数)

  • 服务器出站带宽 = 码率 × M

  • 摄像机上行带宽 = 码率 × M(压力随连接数线性增长)


三、具体数字对比

统一假设条件:摄像机推流码率 = 2 Mbps(1080P) ,云服务器按出站带宽 / 流量计费(国内云厂商入站通常免费)。

场景 1:只有 1 个 OBS 拉流

指标 方案 A 媒体服务器 方案 B FRP
服务器入站 2 Mbps 2 Mbps
服务器出站(计费) 2 Mbps 2 Mbps
服务器总吞吐 4 Mbps 4 Mbps
摄像机上行 2 Mbps 2 Mbps
结论 相同 相同

单客户端场景下,两者带宽消耗基本一致,差异可忽略。

场景 2:3 个客户端同时拉流(OBS + 手机预览 + 网页观看)

指标 方案 A 媒体服务器 方案 B FRP
服务器入站 2 Mbps(固定) 6 Mbps(2×3)
服务器出站(计费) 6 Mbps(2×3) 6 Mbps(2×3)
服务器总吞吐 8 Mbps 12 Mbps
摄像机上行 2 Mbps(不变) 6 Mbps(×3)
结论 摄像机无压力 内网出口带宽可能拥塞

核心差异在这里: 方案 A 摄像机始终只推 1 路,方案 B 每多一个客户端摄像机就多发一路。内网出口带宽通常有限(如 4G Cat.1 实际上行仅 1~3 Mbps),2 个客户端同时拉流就可能爆掉。

场景 3:服务器转码(摄像机推 1080P,OBS 拉 720P)

指标 方案 A 媒体服务器 方案 B FRP
服务器入站 2 Mbps(1080P) 2 Mbps(1080P)
服务器出站(计费) 1 Mbps(转码 720P) 2 Mbps(无法转码)
节省出站带宽 50% 0%
结论 可转码降码率省带宽 纯透传,无法处理

四、多维度综合对比

对比维度 方案 A 媒体服务器 方案 B FRP
单客户端带宽 相同 相同
多客户端扩展性 好(摄像机压力不变) 差(摄像机压力线性增长)
转码 / 降码率 支持(SRS / ZLMediaKit 均可) 不支持
协议转换 RTMP↔RTSP↔HLS↔WebRTC 不支持(原样转发)
录制 / 截图 支持(MP4 录制、HLS 切片) 不支持
鉴权 / 防盗链 支持(Token、Referer) 不支持(端口暴露即公开)
延迟 1~3 秒(协议转换有缓冲) 更低(纯 TCP 转发,<1 秒)
服务器 CPU 占用 较高(协议解析 / 转码) 很低(纯转发)
配置复杂度 中等(需部署媒体服务器) 简单(FRP 配置几行)
弱网适应性 好(SRT 推流 + 重传缓冲) 一般(TCP 转发,弱网卡顿)

五、实际成本估算

以腾讯云 / 阿里云轻量服务器为例,按流量计费(入站免费,出站约 0.8 元 / GB):

场景 方案 A 月流量费 方案 B 月流量费
1 个 OBS,720P@1.5Mbps,每天推 8 小时 出站 ≈ 162GB ≈ 130 元 同左 ≈ 130 元
3 个客户端,同上 出站 ≈ 486GB ≈ 389 元 出站 ≈ 486GB ≈ 389 元(但摄像机上行扛不住)
转码 720P→360P 输出 出站 ≈ 81GB ≈ 65 元 无法转码,仍 162GB

如果是按固定带宽计费,单客户端 2 Mbps 出站,约 3050 元 / 月(轻量服务器套餐通常含 35 Mbps 带宽)。


六、选型建议

你的情况 推荐方案
只有 1 个 OBS 拉流,不需要其他功能 两者均可,FRP 配置更简单
需要多个客户端同时观看 方案 A(摄像机上行扛不住方案 B)
需要转码 / 录制 / 协议转换 方案 A
追求最低延迟 方案 B(但差距不大,都在秒级)
内网出口带宽紧张 方案 A(摄像机只推 1 路,服务器可转码降码率)
已有公网服务器,想最快验证 方案 B(FRP 5 分钟配好)
长期生产环境使用 方案 A(功能完整、稳定、可扩展)

七、总结

  • 单客户端场景:两种方案带宽消耗几乎相同,FRP 胜在配置简单

  • 多客户端场景:媒体服务器优势明显,摄像机上行压力不随客户端数增长

  • 有转码 / 录制需求:只能选媒体服务器,FRP 是纯透传无法处理

  • 内网出口带宽有限:优先选媒体服务器,可通过转码降低出站码率,节省服务器带宽成本

一句话建议: 短期验证用 FRP,长期生产用 ZLMediaKit 或 SRS。尤其是内网出口带宽本来就紧张的场景,媒体服务器的转码能力能帮你把服务器出站带宽成本砍掉一半。


如果需要 ZLMediaKit / SRS 的一键部署命令和 OBS 拉流配置步骤,可以在评论区留言,下期安排。