Page tree

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Device CLI connection timeout and inter-connection delay

By default, Unimus uses 10 second timeouts for SSH / Telnet connections.
This means that if your device takes longer than this than 10 second to establish an SSH an SSH / Telnet session, Unimus will not connect to it (fail the connection attempt). This timeout is controlled by the unimus.core.connect-timeout setting.

During device Discovery (more info here), Unimus will establish multiple consecutive sessions to a device to test credentials (unless credential binding is used). Unimus waits 500 ms between session establishments by default. Especially for older / slower devices, or for purposes of slowing down device logins due to load on a central AAA system, it can be beneficial to increase this inter-connection delay. This delay is controlled by the unimus.core.inter-connection-delay setting.

Finally, during device login in certain cases Unimus needs to validate the device prompt - to be sure that the login to the device was successful. In cases this is needed, Unimus has a set duration for each of these checks. This duration should normally NOT be changed by the user - please only change this setting if asked to by our support. This is controlled by the unimus.core.login-prompt-validation-limit setting.

Data retrieval from the CLI

For device CLI communication / interaction, Unimus has timeouts depend on the format of output from the device. Many devices output in 'paged' format - output is separated into multiple pages, each ending in a " – More – " or similar message and requires some key to be sent to continue. Unimus fully supports this for all devices on our Supported vendors/devices list.

For devices that use paging, Unimus uses a 20 second timeout on each command it issues to the device.
after sending a command to wait for a device to respond with pagination or a prompt. Each page has its own 20 second timeout. For example, if the device takes longer than 20 seconds to respond finish outputting a response or offer pagination to a 'show version' command on Cisco IOS, Unimus will consider this a timeout. For backups, this however works differently.
Many devices output backups in 'paged' format.
Each page therefore has its own 20 second timeoutThis is controlled by the unimus.core.cli-expect-timeout setting.

For devices that do not output backups using paging, Unimus uses a 75 second timeout.
So for devices without paging, they need to output their backup contents the full output for a command and return a prompt in under 75 seconds, or Unimus considers the backup operation failed. This is controlled by the unimus.core.max-backup-timeout setting. Please note some of our drivers for devices we support apply a multiplier to this value. This timeout should normally NOT be changed by the user - please only change this setting if asked to by our support.

All of these values can be adjusted. Please note some device drivers use a multiplier for these values, please check the Driver timeout multipliers article for more information.

On Linux (Debian/Ubuntu):

Edit the contents of /etc/default/unimus. All settings in this file should be on the same line.

Add these settings into the file:

Code Block
languagetext
-Dunimus.core.connect-timeout=20000 -Dunimus.core.inter-connection-delay=1000 -Dunimus.core.cli-expect-timeout=30000

Insert proper values behind each configuration argument (in milliseconds).

Restart Unimus to apply the new timeouts.

On Windows:

For portable:
Create a file named Unimus.l4j.ini in the same directory as the Unimus executable.
Change Unimus in the above file name to exactly match the name of the Unimus executable.

...

Code Block
languagetext
-Dunimus.core.connect-timeout=20000
-Dunimus.core.cliinter-expectconnection-timeoutdelay=300001000
-Dunimus.core.maxcli-backupexpect-timeout=12000030000

Please make sure to place each argument into its own line.
Insert proper values behind each configuration argument (in milliseconds).

Restart Unimus to apply the new timeouts.

On Linux (Debian/Ubuntu):

Edit the contents of /etc/default/unimus.

Add this into the file:

Code Block
languagetext
-Dunimus.core.connect-timeout=20000 -Dunimus.core.cli-expect-timeout=30000 -Dunimus.core.max-backup-timeout=120000

Insert proper values behind each configuration argument (in milliseconds).

Restart Unimus to apply the new timeouts.