Repolode
sipcapture

sipcapture/homer

开源的 SIP/VoIP 与 RTC 抓包监控服务,通过 HEP 接收数据并存入 DuckDB/Parquet 数据湖。

Star
2,031
Fork
295
未关闭 Issue
1
最近提交
昨天

这是什么?

Homer 是面向 SIP、VoIP 及实时通信流量的电信可观测性服务。它通过 UDP、TCP、TLS、HTTP 或 HTTPS 接收抓包代理发来的 HEP(Homer Encapsulation Protocol)数据包,以 Parquet 文件组成的 DuckLake 数据湖存储,目录元数据可放在 SQLite 或对象存储中,并通过 REST API、内置 Web 界面和 Arrow FlightSQL 接口对外提供查询。

项目使用 Go 编写,以单一二进制文件发布,附带命令行搜索、交互式 DuckLake SQL 终端、目录备份恢复以及配置向导等子命令。它既可以把所有模块放在一个进程中运行,也可以拆分为 writer、node、coordinator 角色以便横向扩展。

可选模块包括用于 SIP QoS 报告的 VQRTCP 采集器和 SIPREC 信令录制服务。服务还提供 MCP 接口,便于大语言模型和智能体工具调用。

核心功能

  • 01支持通过 UDP、TCP、TLS、HTTP 和 HTTPS 接收 HEP 数据包
  • 02数据以 Parquet 文件形式存入本地或对象存储上的 DuckLake 数据湖
  • 03提供 REST API、内置 Web 界面和 Arrow FlightSQL 查询接口
  • 04命令行搜索支持呼叫流图、CSV、JSON 及 pcap 导出
  • 05可选启用 VQRTCP SIP QoS 采集与 SIPREC 信令录制
  • 06支持 MCP 协议,便于大语言模型和智能体集成

适用场景

  • 通过呼叫流图排查 VoIP 网络中的 SIP 呼叫故障
  • 监控会话边界控制器上报的 SIP 与 RTP 质量数据
  • 录制并分析媒体网关产生的 SIPREC 会话
  • 通过 SQL 或 FlightSQL 连接 Grafana 查询抓包数据

快速上手

  1. 1

    从发布页面下载发布版本,并为你的操作系统和架构安装 homer 软件包

  2. 2

    在本地构建项目

    make
  3. 3

    使用配置文件运行服务器

    ./homer --config-path /etc/homer/homer.json

使用前须知

  • 采用 AGPL-3.0 许可证,这是一种 copyleft 许可证,网络部署修改后的版本时需要公开源代码。
  • 运行前需要编写 JSON 配置文件,设置 ingest、storage、node 和 coordinator 模块。
  • README 仅列出对 Linux 和 macOS(x64 与 ARM64)的支持。

收录于专题

标签

常见问题

homer 是什么?
开源的 SIP/VoIP 与 RTC 抓包监控服务,通过 HEP 接收数据并存入 DuckDB/Parquet 数据湖。 Homer 是面向 SIP、VoIP 及实时通信流量的电信可观测性服务。它通过 UDP、TCP、TLS、HTTP 或 HTTPS 接收抓包代理发来的 HEP(Homer Encapsulation Protocol)数据包,以 Parquet 文件组成的 DuckLake 数据湖存储,目录元数据可放在 SQLite 或对象存储中,并通过 REST API、内置 Web 界面和 Arrow FlightSQL 接口对外提供查询。
homer 可以免费使用吗?用的什么许可证?
homer 以 Other 许可证开源。用于商业产品前,请先确认许可证条款。
homer 还在维护吗?
活跃维护中。homer 最近一次提交是在 2026年11月6日。
homer 适合用来做什么?
通过呼叫流图排查 VoIP 网络中的 SIP 呼叫故障 监控会话边界控制器上报的 SIP 与 RTP 质量数据 录制并分析媒体网关产生的 SIPREC 会话 通过 SQL 或 FlightSQL 连接 Grafana 查询抓包数据
homer 怎么安装和运行?
从发布页面下载发布版本,并为你的操作系统和架构安装 homer 软件包 在本地构建项目: make 使用配置文件运行服务器: ./homer --config-path /etc/homer/homer.json
在哪里获取 homer?
源代码和安装说明在 GitHub 上:https://github.com/sipcapture/homer

概要由 AI 根据项目 README 生成;GitHub 数据每日更新。

相关项目