diff --git a/conf/frpc_full_example.toml b/conf/frpc_full_example.toml index 5a414137..ffa10ab6 100644 --- a/conf/frpc_full_example.toml +++ b/conf/frpc_full_example.toml @@ -133,7 +133,9 @@ transport.tls.enable = true # transport.tls.disableCustomTLSFirstByte = true # Heartbeat configure, it's not recommended to modify the default value. -# The default value of heartbeatInterval is 10 and heartbeatTimeout is 90. Set negative value +# If tcpMux is enabled (default), heartbeat is disabled and tcp mux keepalive +# interval controls the liveness detection instead. +# The default value of heartbeatInterval is 30 and heartbeatTimeout is 90. Set negative value # to disable it. # transport.heartbeatInterval = 30 # transport.heartbeatTimeout = 90 diff --git a/conf/frps_full_example.toml b/conf/frps_full_example.toml index aba37435..b66d2aa2 100644 --- a/conf/frps_full_example.toml +++ b/conf/frps_full_example.toml @@ -22,7 +22,9 @@ kcpBindPort = 7000 # transport.quic.maxIdleTimeout = 30 # transport.quic.maxIncomingStreams = 100000 -# Heartbeat configure, it's not recommended to modify the default value +# Heartbeat configure, it's not recommended to modify the default value. +# If tcpMux is enabled (default), heartbeat is disabled and tcp mux keepalive +# interval controls the liveness detection instead. # The default value of heartbeatTimeout is 90. Set negative value to disable it. # transport.heartbeatTimeout = 90 diff --git a/pkg/config/v1/client.go b/pkg/config/v1/client.go index bb95b6cd..a6e67bb1 100644 --- a/pkg/config/v1/client.go +++ b/pkg/config/v1/client.go @@ -133,6 +133,8 @@ type ClientTransportConfig struct { // HeartBeatTimeout specifies the maximum allowed heartbeat response delay // before the connection is terminated, in seconds. It is not recommended // to change this value. By default, this value is 90. Set negative value to disable it. + // Note: When TCPMux is enabled (default), heartbeat checks are disabled and + // the TCP mux keepalive interval controls liveness instead. HeartbeatTimeout int64 `json:"heartbeatTimeout,omitempty"` // TLS specifies TLS settings for the connection to the server. TLS TLSClientConfig `json:"tls,omitempty"` diff --git a/pkg/config/v1/server.go b/pkg/config/v1/server.go index a92aac97..90462f40 100644 --- a/pkg/config/v1/server.go +++ b/pkg/config/v1/server.go @@ -172,6 +172,8 @@ type ServerTransportConfig struct { // HeartBeatTimeout specifies the maximum time to wait for a heartbeat // before terminating the connection. It is not recommended to change this // value. By default, this value is 90. Set negative value to disable it. + // Note: When TCPMux is enabled (default), heartbeat checks are disabled and + // the TCP mux keepalive interval controls liveness instead. HeartbeatTimeout int64 `json:"heartbeatTimeout,omitempty"` // QUIC options. QUIC QUICOptions `json:"quic,omitempty"`