docs: clarify streaming protocol architecture - not HTTP/HTTPS (#22055)
Co-authored-by: nedi-app[bot] <bot@netdata.cloud>
nedi-app[bot] committed
Mar 27, 2026 at 18:26 UTC
843038704e541d09f58b74ba58e4e40ca76254a9
2 files changed
+15
docs/observability-centralization-points/metrics-centralization-points/configuration.md
+6
@@ -111,6 +111,12 @@ This section assumes you have read the documentation on [how to edit the Netdata
111
api key = 11111111-2222-3333-4444-555555555555
112
```
113
114
+ :::note
115
+
116
+ The `:SSL` suffix enables TLS encryption for Netdata's custom streaming protocol. This is different from HTTPS—Netdata streaming uses its own binary protocol over TCP, and TLS adds encryption on top of that protocol.
117
+
118
+ :::
119
+
120
3. **Restart both nodes**
121
Restart the Netdata Agent on both the parent and child nodes to stream encrypted metrics using TLS/SSL.
122
src/streaming/README.md
+9
@@ -75,6 +75,15 @@ flowchart TB
75
- **Scalability**: Add more Child nodes or additional Parent nodes as your infrastructure grows
76
- **Flexibility**: Configure retention, alerts, and dashboards according to your specific needs
77
78
+### Protocol Architecture
79
+
80
+Netdata streaming uses a **custom binary protocol over TCP**, not HTTP/HTTPS. This is an important distinction:
81
+
82
+- **Custom binary protocol**: Streaming uses Netdata's own protocol designed for efficient metrics transfer, not HTTP
83
+- **TLS encryption**: When you enable `:SSL` in the destination, it adds TLS encryption as a security layer on top of the custom streaming protocol (this is not HTTPS)
84
+- **Port multiplexing**: The same port (19999 by default) handles both web API requests and streaming connections—the server automatically detects which protocol is being used based on the initial handshake
85
+- **Destination requirement**: This is why streaming requires a Netdata server at the destination, not just any HTTP server
86
+
87
## Quick Reference
88
89
| Task | Configuration | Example |