文档
TMS 矿场安全连接与压缩文档
配置 TMS 矿场安全连接、TMS2 与 TMS3 协议、端口映射、加密流量压缩、监控、容量测试和回滚方案。
TMS 文档
TMS 是 TCMinerProxy 的可选本地安全客户端,通常部署在矿场局域网内。矿机先连接本地 TMS,TMS 再通过 TMS2、TMS3 或 TMS3(Zstd) 协议连接 TCMinerProxy 服务端,从而减少公网连接数、压缩传输体积,并让矿机流量走受控链路。
TCMinerProxy 服务端安装、后台安全和普通代理端口配置请阅读 TCMinerProxy 文档。本页只说明 TMS 本地客户端和 TMS 协议端口的配置边界。
适用场景
- 矿场本地矿机数量多,希望减少公网出口连接数。
- 公网带宽成本高,希望压缩矿机数据体积。
- 希望矿机只连接本地地址,公网只暴露 TMS 到 TCMinerProxy 的链路。
- 需要使用 TMS3 或 TMS3(Zstd) 的高压缩能力。
- 需要在矿场本地统一观察进口连接、出口连接、断开日志和资源占用。
如果矿机数量少、网络稳定、带宽充足,也可以不部署 TMS,让矿机直接连接 TCMinerProxy 代理端口。
接入拓扑
矿机 -> 本地 TMS -> TMS2/TMS3/TMS3(Zstd) 加密压缩链路 -> TCMinerProxy 代理端口 -> 上游矿池
TMS 不替代 TCMinerProxy 服务端。服务端仍然负责代理端口、目标矿池、费率钱包、统计、安全和运维;TMS 负责本地接入和压缩传输。
功能使用分类
| 章节 | 适用内容 |
|---|---|
| 安装教程 | 安装 TMS3 Linux 和 Windows 版本,选择架构,并理解安装后的默认访问方式。 |
| 部署与配对 | 首次启动、推送地址、跳过配置、服务端前置条件和配对流程。 |
| 端口映射 | 创建本地监听端口、绑定远程 TMS 地址、配置币种、协议、密码和负载均衡。 |
| 压缩设置 | 选择 TMS2/TMS3/TMS3(Zstd),设置超级压缩、压缩级别和连接压缩数量。 |
| 监控与运维 | 查看 CPU、内存、网络、连接图表、端口状态、筛选和安全设置。 |
| 故障排查 | 排查矿机接入、服务端配对、拒绝率升高、端口冲突、安全路径错误和回滚。 |
协议选择
| 协议 | 说明 |
|---|---|
| TMS2 | TMS 压缩 TLS 协议,可减少公网连接数并压缩部分数据体积。 |
| TMS3 | 分组压缩协议,压缩率更高,但 CPU 压力更大。 |
| TMS3(Zstd) | 基于 Zstd 的 TMS3 变体,通常 CPU 压力低于 TMS3。 |
使用 TMS3 或 TMS3(Zstd) 时,服务端端口、本地 TMS 端口、币种、密码、超级压缩和压缩级别需要保持一致。配置不一致时,矿机可能无法连接、拒绝率升高或数据无法正常统计。
服务端配置
在 TCMinerProxy 中创建 TMS 协议端口:
- 进入
矿池代理。 - 点击
创建新代理。 - 监听协议选择 TMS2、TMS3 或 TMS3(Zstd)。
- 选择代理币种、监听端口、主矿池地址和目标矿池协议。
- 如使用 TMS3 或 TMS3(Zstd),在高级参数中确认压缩级别和超级压缩开关。
- 保存端口并确认端口状态正常。
TMS3 压缩级别通常在 4 到 11 之间。级别越高通常压缩越明显,但 CPU 压力也越大。开启超级压缩后,公网传输体积会进一步降低,但可能轻微增加拒绝率;如果关闭,服务端和本地 TMS 客户端都需要同步关闭。
客户端配置
首次打开 TMS 时,可以填写服务端推送地址自动拉取配置;如果不需要推送地址,也可以跳过并手动添加远程地址。
手动添加端口时需要配置:
| 配置项 | 说明 |
|---|---|
| 本地监听端口 | 矿机在局域网内连接 TMS 的端口。 |
| 币种 | 必须与服务端 TMS 协议端口币种一致。 |
| 远程地址 | TCMinerProxy 服务端 TMS 协议端口地址,格式通常为 地址:端口。 |
| 远程协议 | TMS2、TMS3 或 TMS3(Zstd),必须与服务端监听协议一致。 |
| 密码 | 如服务端设置密码,本地必须填写一致;未设置则留空。 |
| 超级压缩 | 使用 TMS3 时需要与服务端保持一致。 |
| 压缩级别 | 根据服务器和本地设备 CPU 能力选择。 |
配置完成后,将矿机挖矿地址改为本地 TMS 的监听地址。
连接压缩数量
TMS3 会把进入本地端口的矿机连接按端口压缩为较少的出口连接。连接压缩数量越低,公网出口连接数越少,压缩效果通常越明显,但 CPU、延迟和拒绝率也需要重点观察。
建议从保守值开始:
- 千台以下矿机可先测试
1到2。 - 大多数场景可先测试
1到6。 - 每个币种、每个端口都应独立观察出口连接数和拒绝率。
示例:如果连接压缩数量设置为 1,本地 TMS 同时接入 BTC 1000 台、LTC 1000 台,出口连接会按端口划分,通常会形成 BTC 1 条出口连接、LTC 1 条出口连接。
压测与上线
- 在服务端创建测试 TMS 协议端口。
- 在本地 TMS 添加对应端口。
- 接入 1 到 5 台测试矿机。
- 同时观察 TMS 进口/出口连接数、TCMinerProxy 端口状态、上游矿池 worker 和拒绝率。
- 调整压缩级别、超级压缩和连接压缩数量。
- 逐批增加矿机数量。
- 到达目标规模后备份 TMS 客户端配置和 TCMinerProxy 端口配置。
TMS3 对 CPU 更敏感。小币种或特殊矿机出现异常时,优先降低压缩级别或关闭超级压缩测试。
运维检查
- TMS 程序是否运行。
- 本地监听端口是否可被矿机访问。
- 进口连接数是否接近矿机数量。
- 出口连接数是否符合连接压缩设置。
- 服务端端口在线数、算力和拒绝率是否正常。
- 断开日志中是矿机主动断开、TMS 断开、服务端断开还是上游矿池断开。
- CPU、内存和网络流量是否在可接受范围内。
回滚与旁路
上线 TMS 前建议准备旁路方案:
- 保留矿机直接连接 TCMinerProxy 代理端口的地址。
- 记录当前 TMS 客户端版本和端口配置。
- 保留 TCMinerProxy 端口 JSON 备份。
- 调整压缩参数前先记录原值。
- 出现大面积异常时,先切回低压缩配置或关闭超级压缩,再考虑让矿机直接连接服务端。
常见故障
矿机连不上 TMS
- 检查矿机填写的是 TMS 本地监听地址。
- 检查矿场局域网、防火墙和端口占用。
- 检查本地 TMS 端口是否已经创建并运行。
TMS 连不上服务端
- 检查远程地址和端口是否正确。
- 检查服务端 TMS 协议端口是否运行。
- 确认本地远程协议与服务端监听协议一致。
- 检查密码是否一致,未设置密码时两端都应留空。
有连接但拒绝率升高
- 降低 TMS3 压缩级别。
- 关闭超级压缩并同步修改服务端和客户端。
- 降低单台 TMS 承载的矿机数量。
- 检查上游矿池延迟和服务端 CPU。
出口连接数不符合预期
- 确认连接压缩数量设置。
- 确认不同币种和不同端口会分别形成出口连接。
- 检查是否有多个本地端口或多个远程地址。
相关资源
- 下载 TMS 安全客户端
- TMS GitHub:https://github.com/MinerProxyPro/TMS
- TCMinerProxy 服务端文档:TCMinerProxy 文档
