Improving transfer performance by disallowing fixed transfers and high minimum rates

IN THIS ARTICLE:

Instructions for configuring server to improve transfer performance via...

Overview

Bandwidth policies can play a major role in the performance of Aspera transfers. In particular, the transfer policy and minimum rate can have a significant impact if not configured appropriately, as they do not take into account network conditions or available bandwidth (for more details on transfer policies, see this article [Transfer policies explained]).

If you are experiencing transfer failures, high packet loss, or otherwise poor transfer performance, you should check these policy settings and consider preventing your users from being able to change them.

Details

Fixed transfers try to keep their rate of transfer steady at a specified level, while minimum rates force transfers to run no slower than a specified level. These policies prevent transfers from adapting to the network and could cause flooding and packet loss if there isn't enough bandwidth to support the rate forced by the policy. Even Vlinks (aggregate bandwidth caps) are not respected by these policies. It is therefore recommended to avoid using a fixed policy or high minimum rate entirely, and in the majority of cases you shouldn't have the need for them.

You can configure your server to disallow transfers with a fixed policy, and to prevent users from setting high minimum rates. This is done by:

  • allowing only transfers with transfer policies less aggressive than fixed
  • setting the default minimum rate to 0
  • capping the minimum rate at a low value

Use the following instructions to achieve this on a global level, or on a per group/per user level.

Instructions

You can configure settings on your server for both incoming (uploads) and outgoing (downloads) transfers. The particular settings are the following:

  • Default minimum rate - The default setting on transfers. Set this to a low value (0 is recommended).
  • Minimum rate cap - The highest level a user can set the minimum rate to. Set this to a low value (1000 is recommended as it allows a minimum rate greater than 0 but isn't big enough to cause problems).
  • Transfer policy - The default bandwidth policy that transfers use. Set this to a policy less than fixed (fair is recommended).

Additionally, setting the lock flag for both transfer policy and minimum rate guarantee that users cannot change these settings from the client interface during a transfer. All of these can be set on the command line, through the GUI of your product or through Console.

Via command line

On the command line you can use the program asconfigurator which makes changes to the configuration file aspera.conf for you.

Global level

The following commands set the incoming and outgoing transfer policies on a global level to fair, and set the lock flags on these settings:

asconfigurator -x 'set_node_data;transfer_out_bandwidth_flow_policy_allowed,fair'
asconfigurator -x 'set_node_data;transfer_in_bandwidth_flow_policy_allowed,fair'
asconfigurator -x 'set_node_data;transfer_out_bandwidth_flow_policy_lock,true'
asconfigurator -x 'set_node_data;transfer_in_bandwidth_flow_policy_lock,true'

 The following commands set the incoming and outgoing minimum rate caps to 1000, the default minimum rate to 0, and the lock flags on these settings:

asconfigurator -x "set_node_data;transfer_in_bandwidth_flow_min_rate_cap,1000"
asconfigurator -x "set_node_data;transfer_out_bandwidth_flow_min_rate_cap,1000"
asconfigurator -x "set_node_data;transfer_in_bandwidth_flow_min_rate_default,0"
asconfigurator -x "set_node_data;transfer_out_bandwidth_flow_min_rate_default,0"
asconfigurator -x "set_node_data;transfer_in_bandwidth_flow_min_rate_lock,true"
asconfigurator -x "set_node_data;transfer_out_bandwidth_flow_min_rate_lock,true"

Group level

The following commands set the incoming and outgoing transfer policies on for a particular user group to fair, and set the lock flags on these settings:

asconfigurator -x 'set_group_data;group_name,groupname;transfer_out_bandwidth_flow_policy_allowed,fair'
asconfigurator -x 'set_group_data;group_name,groupname;transfer_in_bandwidth_flow_policy_allowed,fair'
asconfigurator -x 'set_group_data;group_name,groupname;transfer_out_bandwidth_flow_policy_lock,true'
asconfigurator -x 'set_group_data;group_name,groupname;transfer_in_bandwidth_flow_policy_lock,true'

 The following commands set the incoming and outgoing minimum rate caps to 1000, the default minimum rate to 0, and the lock flags on these settings:

asconfigurator -x "set_group_data;group_name,groupname;transfer_in_bandwidth_flow_min_rate_cap,1000"
asconfigurator -x "set_group_data;group_name,groupname;transfer_out_bandwidth_flow_min_rate_cap,1000"
asconfigurator -x "set_group_data;group_name,groupname;transfer_in_bandwidth_flow_min_rate_default,0"
asconfigurator -x "set_group_data;group_name,groupname;transfer_out_bandwidth_flow_min_rate_default,0"
asconfigurator -x "set_group_data;group_name,groupname;transfer_in_bandwidth_flow_min_rate_lock,true"
asconfigurator -x "set_group_data;group_name,groupname;transfer_out_bandwidth_flow_min_rate_lock,true"

User level

In the following commands, replace username with the username for whom you're applying the bandwidth settings. The following commands set the incoming and outgoing transfer policies on for a particular user to fair, and set the lock flags on these settings:

asconfigurator -x 'set_user_data;user_name,username;transfer_out_bandwidth_flow_policy_allowed,fair'
asconfigurator -x 'set_user_data;user_name,username;transfer_in_bandwidth_flow_policy_allowed,fair'
asconfigurator -x 'set_user_data;user_name,username;transfer_out_bandwidth_flow_policy_lock,true'
asconfigurator -x 'set_user_data;user_name,username;transfer_in_bandwidth_flow_policy_lock,true'

 The following commands set the incoming and outgoing minimum rate caps to 1000, the default minimum rate to 0, and the lock flags on these settings:

asconfigurator -x "set_user_data;user_name,username;transfer_in_bandwidth_flow_min_rate_cap,1000"
asconfigurator -x "set_user_data;user_name,username;transfer_out_bandwidth_flow_min_rate_cap,1000"
asconfigurator -x "set_user_data;user_name,username;transfer_in_bandwidth_flow_min_rate_default,0"
asconfigurator -x "set_user_data;user_name,username;transfer_out_bandwidth_flow_min_rate_default,0"
asconfigurator -x "set_user_data;user_name,username;transfer_in_bandwidth_flow_min_rate_lock,true"
asconfigurator -x "set_user_data;user_name,username;transfer_out_bandwidth_flow_min_rate_lock,true"

For more on how to use asconfigurator, see this article.

Via GUI

1. Click on the Configuration button on the top right corner. On the left panel, select the Global, Groups or Users setting depending on what level you want to configure the bandwidth policies for. After selecting the level, click the Bandwidth tab in the right panel.

2. To set the incoming and outgoing transfer policy, locate Incoming Bandwidth Policy Allowed and Outgoing Bandwidth Policy Allowed respectively. Select the Override check box and set your desired setting.

To lock this transfer policy, locate Incoming Bandwidth Policy Lock and Outgoing Bandwidth Policy Lock, select the Override checkbox and set it to true.

3. To set the minimum rate default value, locate Incoming Minimum Rate Default and Outgoing Minimum Rate Default, select the Override check box and set the value to 0.

To set the minimum rate cap value, locate Incoming Minimum Rate Cap and Outgoing Minimum Rate Cap, select the Override check box and set it to a low value like 1000.

If you want to lock these settings during a transfer, locate Incoming Minimum Rate Lock and Outgoing Minimum Rate Lock, select Override and set it to true.

transfer-policy-gui.jpg

Via Console

If you have Aspera Console, you can also configure bandwidth settings on the Console interface.

1. In order to set the default bandwidth settings across all nodes, go to Configuration in the main navigation menu and choose the Defaults tab.

2. Scroll down to Transfer Defaults to set the Minimum Rate to 0 and the Bandwidth Policy to fair.

tr_def_console.jpg

 

3. You can also set bandwidth policies on an individual node basis. To do so, click Nodes in the main navigation menu. Look for the node you would like to configure and select edit on the row for that node. Once on the Node Maintenance page, click the Configuration tab and expand the Bandwidth section.

4. To set the incoming and outgoing transfer policy, locate Incoming Bandwidth Policy Allowed and Outgoing Bandwidth Policy Allowed respectively. Select the Override check box and set your desired setting.

To lock this transfer policy, locate Incoming Bandwidth Policy Lock and Outgoing Bandwidth Policy Lock, select the Override checkbox and set it to true.

5. To set the minimum rate default value, locate Incoming Minimum Rate Default and Outgoing Minimum Rate Default, select the Override check box and set the value to 0.

To set the minimum rate cap value, locate Incoming Minimum Rate Cap and Outgoing Minimum Rate Cap, select the Override check box and set it to a low value like 1000.

If you want to lock these settings during a transfer, locate Incoming Minimum Rate Lock and Outgoing Minimum Rate Lock, select Override and set it to true.

console_bandwidthpolicies.jpg

Have more questions? Submit a request

0 Comments

Article is closed for comments.
Powered by Zendesk