KB Article #177597
CONFIGURATION: Ssh.maxChannels server configuration parameter usage
Question
What does the Ssh.maxChannels
server configuration parameter change?
Answer
The SSH protocol sends the requests for services to a remote server over channels. A single SSH connection may contain multiple channels, all run simultaneously over that connection.
Each channel, in turn, represents the processing of a single service (command, transfer, etc). When a new process is invoked in the same connection a channel is opened for that invocation, and all input and output relevant to that process is sent through that channel. The connection is managing the packets of all of the channels that it has open.
However as stated in RFC4254 the channels are flow-controlled. This means that no data may be sent to a channel until a message is received to indicate that window space is available. In other words the channels are sharing the bandwidth of the connection.
How does this affect SecureTransport.
The parameter Ssh.maxChannels
controls the number of channels that can be opened in a single connection. This might increase or decrease (depending on the value) the number of simultaneous transfers over one connection, however most of the current SSH clients do not send files simultaneously over one connection (like FileZilla or WinSCP).
If you are actually using a client that has that option you can control the number of simultaneous transfers over one connection using thе Ssh.maxChannels
server configuration parameter.
A restart of the SSH service is required for the change to take effect.
Тhis is a global setting and the change will affect all transfers over SSH.