Skip to content

Commit 787548b

Browse files
committed
Updates to FAQ on memory consumption / scaling
Signed-off-by: Alex Ellis (OpenFaaS Ltd) <[email protected]>
1 parent 02fa3ed commit 787548b

File tree

1 file changed

+20
-2
lines changed

1 file changed

+20
-2
lines changed

docs/reference/faq.md

+20-2
Original file line numberDiff line numberDiff line change
@@ -115,12 +115,30 @@ For HTTP tunnels, Rate Error and Duration (RED) metrics are collected for any se
115115

116116
For anything that doesn't fit into that model, a TCP tunnel may be a better option.
117117

118-
Common examples are: RDP, VNC, SSH, TLS, database protocols, legacy medical protocols such as DiCom.
118+
Common examples are: TLS, websockets, RDP, VNC, SSH, database protocols, NATS, or legacy medical protocols such as DiCom.
119119

120-
TCP tunnels can also be used to forward traffic to a reverse proxy like Nginx, Caddy, or Traefik, sitting behind a firewall or NAT by forwarding port 80 and 443.
120+
TCP tunnels can also be used to forward traffic to a reverse proxy like Nginx, Caddy, Traefik or Istio, sitting behind a firewall or NAT by forwarding port 80 and 443.
121121

122122
TCP traffic is forwarded directly between the two hosts without any decryption of bytes. The active connection count and frequency can be monitored along with the amount of throughput.
123123

124+
## How much memory or RAM does a tunnel require?
125+
126+
Each tunnel client and tunnel server run on different machines in their own process. Typically we have observed single-digit RAM consumption for tunnels.
127+
128+
This means that you can scale to hundreds or thousands of tunnels with modest hardware.
129+
130+
## How tunnels can I run?
131+
132+
The best way to scale to huge numbers of tunnels is with [Inlets Uplink](/uplink/).
133+
134+
Providing you have the license entitlement to run them, you can run as many as you require.
135+
136+
If you are hosting tunnel servers within Kubernetes, you can typically run 5000 tunnels per Kubernetes namespace, with inlets uplink you could create as many namespaces as you need.
137+
138+
The typical amount of Pods that can run on a Kubernetes node is 100, and since the system requirements are so low, you could use cheaper, lower specification nodes whilst scaling out.
139+
140+
If your tunnel clients are distributed into different countries or regions, you could deploy inlets uplink into multiple Kubernetes clusters.
141+
124142
## Does inlets use TCP or UDP?
125143

126144
Inlets uses a websocket over TCP, so that it can penetrate HTTP proxies, captive portals, firewalls, and other kinds of NAT. As long as the client can make an outbound connection, a tunnel can be established. The use of HTTPS means that inlets will have similar latency and throughput to a HTTPS server or SSH tunnel.

0 commit comments

Comments
 (0)