EHome 协议 — 海康设备接入方式
海康设备接入方式 — EHome 协议
文档版本: V1.0
适用范围: 煤矿工业视频监控平台
编写日期: 2026-06-12
1. 概述
EHome(Enhanced Home)是海康威视自主研发的私有设备接入协议,专为跨 NAT/防火墙场景设计。
核心思想: 设备主动注册 → 平台反向连接。设备作为客户端主动向平台发起 TCP 连接,平台无需知道设备 IP 地址,无需在本地网络开放任何入站端口。
典型用途: 井下防爆摄像机通过 4G/5G 路由器接入地面平台、跨运营商公网接入、移动/临时部署场景。
2. 技术原理与架构
2.1 角色定义
| 角色 | 说明 |
|---|---|
| 设备 | 海康前端设备(IPC/NVR/DVR),运行 EHome 客户端模块 |
| 注册服务器 | 平台端接收设备注册请求(默认端口 7661),维护在线设备列表 |
| 信令服务器 | 处理控制命令、状态上报、报警推送(默认端口 7662) |
| 媒体服务器 | 负责音视频流转发(可选,平台拉流或设备推流) |
2.2 架构图
┌─────────────────────────────────────┐
│ EHome 平台 │
│ ┌────────────┐ ┌─────────────┐ │
│ │ 注册服务器 │ │ 信令服务器 │ │
│ │ :7661 │ │ :7662 │ │
│ └─────┬──────┘ └──────┬──────┘ │
│ │ │ │
│ ┌──────▼───────────────▼──────┐ │
│ │ 媒体服务器(可选) │ │
│ │ 用于转发音视频流 │ │
│ └────────────┬───────────────┘ │
└────────────────┼──────────────────┘
│ (公网IP/域名)
│ TCP出站连接
───────────────┼───────────────
NAT / 防火墙 │
───────────────┼───────────────
│
┌─────────┐ 注册+保活 │
│ 设备A │───────────────┘
│ (IPC) │ (发起到平台7661的连接)
└─────────┘
┌─────────┐
│ 设备B │───────────────────── (同样流程)
│ (NVR) │
└─────────┘
说明: 设备只需访问平台公网地址的出站端口(7661/7662),无需在本地开放任何入站端口。
2.3 协议栈分层
+---------------------------------------------------+
| 应用层(控制/媒体/报警) |
+---------------------------------------------------+
| EHome 协议层(消息封装、序列号、校验) |
+---------------------------------------------------+
| TCP / TLS 传输层(可选加密) |
+---------------------------------------------------+
| IP 网络层 |
+---------------------------------------------------+
3. 通信流程
3.1 注册与鉴权
设备 平台
│ │
│ ① 读取配置(平台地址、端口、设备ID、验证码) │
│ ② TCP 连接 → 平台 7661 端口 │
│────────────────────────────────────────────────►│
│ ③ TLS 握手(若启用加密) │
│◄════════════════════════════════════════════════►│
│ ④ REGISTER 请求 │
│ {设备ID、类型、能力集、验证信息} │
│────────────────────────────────────────────────►│
│ ⑤ 返回 REGISTER_ACK │
│ {成功/失败、会话ID、心跳间隔} │
│◄────────────────────────────────────────────────│
│ ⑥ 进入在线状态,开始心跳保活 │
│══════════════════════════════════════════════════│
3.2 心跳保活
- 设备每隔 30~60 秒(可配置)发送心跳包
- 平台连续 N 次未收到心跳(通常 3 次),判定设备离线
- 心跳包可附带状态上报(报警、温度、电压等)
3.3 控制与媒体流建立
场景示例:平台请求实时预览某通道
1. 平台信令服务器向设备发送 PPLAY 命令
→ 包含通道号、流类型(主/辅)、媒体服务器地址
2. 设备回复 ACK,建立与媒体服务器的连接
→ 设备主动推流 或 平台从设备拉流
3. 媒体流正常传输,平台解码显示
4. 停止预览时,平台发送 STOP 命令,设备关闭流
3.4 重连机制
若心跳超时或网络中断,设备以指数退避策略(1s → 2s → 4s → 最大 5min)重新发起注册。
4. 安全机制
| 安全措施 | 说明 |
|---|---|
| 设备身份验证 | 设备序列号 + 验证码(6位数字字母),平台比对预置列表 |
| 传输加密 | 支持 TLS 1.2/1.3 加密通道 |
| 消息校验 | 每个消息包包含 CRC32 或 MD5 摘要 |
| 会话隔离 | 每个设备分配唯一 Session ID,后续命令均携带 |
| 防暴力破解 | 注册失败次数达阈值后,平台临时冻结该设备 IP |
⚠️ 注意: EHome 默认可选加密,强烈建议生产环境启用 TLS,否则信令明文传输存在泄露风险。
5. 适用场景
| 场景 | 说明 |
|---|---|
| 煤矿井下视频监控 | 设备在防爆箱内,网络仅允许出站,无法做端口映射 |
| 跨运营商/公网接入 | 设备位于 4G/5G NAT 后,平台位于公网或 IDC |
| 大规模分布式接入 | 平台同时管理上千台设备,长连接+心跳实时感知在线状态 |
| 移动/临时部署 | 应急救援现场,通过移动网络快速接入,无需网络人员配置防火墙 |
| 海康平台整合 | iVMS-4200、HikCentral 原生支持 EHome |
6. 配置要求
设备端
| 参数 | 说明 |
|---|---|
| 接入协议 | 选择"EHome"模式(或称"主动注册") |
| 中心服务器地址 | 平台公网 IP 或域名 |
| 注册端口 | 缺省 7661 |
| 设备 ID | 设备序列号(出厂自带) |
| 验证码 | 6 位数字字母组合(需与平台一致) |
设备无需配置: 网关、端口映射、UPnP
平台端
| 参数 | 说明 |
|---|---|
| 注册服务器端口 | 7661(开放公网 TCP 入站) |
| 信令服务器端口 | 7662(可选分开部署) |
| 媒体转发端口 | 可自定义,需开放给设备 |
| 设备白名单 | 可限制仅允许特定设备 ID 注册 |
| 验证码策略 | 不勾选"匿名设备注册",强制验证码 |
7. 优缺点
优点
- ✅ 彻底解决 NAT/防火墙穿透 — 设备无需开放入站端口
- ✅ 实时在线状态感知 — 心跳机制让平台秒级感知设备离线
- ✅ 配置简单 — 设备仅需填写平台地址
- ✅ 成熟稳定 — 海康亿万设备验证
- ✅ 支持媒体复用 — P2P 或转发模式均可
缺点
- ❌ 私有协议 — 仅支持海康设备或授权第三方
- ❌ 平台负担较重 — 大量长连接 + 心跳需连接池优化
- ❌ 实时性限制 — 设备状态更新最差有一个心跳间隔(30s)延迟
- ❌ 默认无加密 — 需手动开启 TLS
8. 与 ISUP 的关系
EHome 是海康第一代主动注册协议。ISUP 是其升级替代版(详见 ISUP 专题文档)。
- EHome 适用于旧固件设备或简单跨网段场景
- 新建设备优先推荐 ISUP(安全性更强、隧道效率更高)