3 To use the NONE option you must have the NoneEnabled switch set on the server and
4 you *must* have *both* NoneEnabled and NoneSwitch set to yes on the client. The NONE
5 feature works with ALL ssh subsystems (as far as we can tell) *AS LONG AS* a tty is not
6 spawned. If a user uses the -T switch to prevent a tty being created the NONE cipher will
9 The performance increase will only be as good as the network and TCP stack tuning
10 on the reciever side of the connection allows. As a rule of thumb a user will need
11 at least 10Mb/s connection with a 100ms RTT to see a doubling of performance. The
12 HPN-SSH home page describes this in greater detail.
14 http://www.psc.edu/networking/projects/hpn-ssh
18 If HPN is disabled the receive buffer size will be set to the
19 OpenSSH default of 64K.
21 If an HPN system connects to a nonHPN system the receive buffer will
22 be set to the HPNBufferSize value. The default is 2MB but user adjustable.
24 If an HPN to HPN connection is established a number of different things might
25 happen based on the user options and conditions.
27 Conditions: HPNBufferSize NOT Set, TCPRcvBufPoll enabled, TCPRcvBuf NOT Set
28 HPN Buffer Size = up to 64MB
29 This is the default state. The HPN buffer size will grow to a maximum of 64MB
30 as the TCP receive buffer grows. The maximum HPN Buffer size of 64MB is
31 geared towards 10GigE transcontinental connections.
33 Conditions: HPNBufferSize NOT Set, TCPRcvBufPoll disabled, TCPRcvBuf NOT Set
34 HPN Buffer Size = TCP receive buffer value.
35 Users on non-autotuning systesm should disable TCPRcvBufPoll in the
36 ssh_cofig and sshd_config
38 Conditions: HPNBufferSize SET, TCPRcvBufPoll disabled, TCPRcvBuf NOT Set
39 HPN Buffer Size = minmum of TCP receive buffer and HPNBufferSize.
40 This would be the system defined TCP receive buffer (RWIN).
42 Conditions: HPNBufferSize SET, TCPRcvBufPoll disabled, TCPRcvBuf SET
43 HPN Buffer Size = minmum of TCPRcvBuf and HPNBufferSize.
44 Generally there is no need to set both.
46 Conditions: HPNBufferSize SET, TCPRcvBufPoll enabled, TCPRcvBuf NOT Set
47 HPN Buffer Size = grows to HPNBufferSize
48 The buffer will grow up to the maximum size specified here.
50 Conditions: HPNBufferSize SET, TCPRcvBufPoll enabled, TCPRcvBuf SET
51 HPN Buffer Size = minmum of TCPRcvBuf and HPNBufferSize.
52 Generally there is no need to set both of these, especially on autotuning
53 systems. However, if the users wishes to override the autotuning this would be
56 Conditions: HPNBufferSize NOT Set, TCPRcvBufPoll enabled, TCPRcvBuf SET
57 HPN Buffer Size = TCPRcvBuf.
58 This will override autotuning and set the TCP recieve buffer to the user defined
62 HPN Specific Configuration options
64 TcpRcvBuf=[int]KB client
65 set the TCP socket receive buffer to n Kilobytes. It can be set up to the
66 maximum socket size allowed by the system. This is useful in situations where
67 the tcp receive window is set low but the maximum buffer size is set
68 higher (as is typical). This works on a per TCP connection basis. You can also
69 use this to artifically limit the transfer rate of the connection. In these
70 cases the throughput will be no more than n/RTT. The minimum buffer size is 1KB.
71 Default is the current system wide tcp receive buffer size.
73 TcpRcvBufPoll=[yes/no] client/server
74 enable of disable the polling of the tcp receive buffer through the life
75 of the connection. You would want to make sure that this option is enabled
76 for systems making use of autotuning kernels (linux 2.4.24+, 2.6, MS Vista)
79 NoneEnabled=[yes/no] client/server
80 enable or disable the use of the None cipher. Care must always be used
81 when enabling this as it will allow users to send data in the clear. However,
82 it is important to note that authentication information remains encrypted
83 even if this option is enabled. Set to no by default.
85 NoneSwitch=[yes/no] client
86 Switch the encryption cipher being used to the None cipher after
87 authentication takes place. NoneEnabled must be enabled on both the client
88 and server side of the connection. When the connection switches to the NONE
89 cipher a warning is sent to STDERR. The connection attempt will fail with an
90 error if a client requests a NoneSwitch from the server that does not explicitly
91 have NoneEnabled set to yes. Note: The NONE cipher cannot be used in
92 interactive (shell) sessions and it will fail silently. Set to no by default.
94 HPNDisabled=[yes/no] client/server
95 In some situations, such as transfers on a local area network, the impact
96 of the HPN code produces a net decrease in performance. In these cases it is
97 helpful to disable the HPN functionality. By default HPNDisabled is set to no.
99 HPNBufferSize=[int]KB client/server
100 This is the default buffer size the HPN functionality uses when interacting
101 with nonHPN SSH installations. Conceptually this is similar to the TcpRcvBuf
102 option as applied to the internal SSH flow control. This value can range from
103 1KB to 64MB (1-65536). Use of oversized or undersized buffers can cause performance
104 problems depending on the length of the network path. The default size of this buffer
108 Credits: This patch was conceived, designed, and led by Chris Rapier (rapier@psc.edu)
109 The majority of the actual coding for versions up to HPN12v1 was performed
110 by Michael Stevens (mstevens@andrew.cmu.edu). This work was financed, in part,
111 by Cisco System, Inc., and the National Science Foundation.