Aspera Web interprets and handles FASP URLs on behalf of a web browser. FASP URLs follow the guidelines set forth in RFC 1738 - Uniform Resource Locators (URL) as published by IETF. The following is the general syntax of a FASP URL:

<scheme>://<user>:<password>@<host>:<port>/<path>?<parameters>

The following are examples of FASP URLs:

  • fasp://www.example.com/file.ext
  • fasp://www.example.com/directory/
  • fasp://user@www.example.com/home/document.txt
  • fasp://user:secret@www.example.com/home/document.txt
  • fasp://www.example.com:3277/shared/document.txt?policy=fixed
  • fasp://www.example.com:3277/shared/document.txt?targetrate=10000&minrate=1000&v=2

URL schemes that involve the direct use of IP-based protocol, as is the case with FASP, use a common syntax.  These are some of those common Internet Scheme Syntaxes.

user

Values: string

The user be supplied for authentication through SSH. The authentication method may be password or public key, depending on the value of the auth parameter in the query portion of the URL. If an Aspera server requires that a username be qualified with a domain name use the format DOMAIN\\user.

password

Values: string

An optional password. This password will be used directly for password-based anonymous transfers.

host

Values: string

The fully qualified domain name of a network host, or its IP address.

port

Values: integer
Default: 22

The port number to connect to. fasp transfers are initiated using SSH, so this port number should indicate the port on which the remote SSH server is listening.

Parameters

The parameters portion of a fasp URL contains a set of key/value pairs that modify the parameters of a fasp transfer. Key/value pairs are set in the format of key=value. Multiple key/value pairs are separated by an ampersand (&), in the formatkey1=value1&key2=value2.

auth

Values: yes | no
Default: yes

Specifies whether or not the user should be prompted for authentication credentials.

If yes, an authentication dialog window will be displayed, allowing the user to enter their credentials. If a user name and/or password is present in the URL, the respective values will be pre-filled in the authentication dialog window. The transfer will be authenticated using SSH's password method.


If no, the transfer will proceed using a pre-determined user and authentication method. This value is typically used to allow anonymous transfers. The user portion of the URL must be present. The authentication method will be determined by presence or absence of the password portion of the URL. If a password is present, the transfer will be authenticated using SSH's password method, using the values for user and password found in the URL. If a password is not present, the transfer will be authenticated using SSH's public key method. The user will be determined by the value found in the URL, while the public/private key pair will utilize the shared asperaweb identity.

token

Values: <string>
Default: ""

A token used for external authorization. This is typically used when allowing anonymous transfers.

Server-side processing should generate tokens when serving pages with fasp URLs. When a transfer is initiated, the token will be carried and should be inspected by the server to determine whether or not the transfer should be allowed. It is the responsibility of the external application to expire tokens in a manner sufficient to achieve necessary levels of security.

cookie

Values: <string>
Default: ""

An arbitrary key field used to correlate related sessions.
When a transfer is initiated, the cookie will be carried to and recorded on the server-side. This cookie can be used to correlate related, but independent sessions. For example, metadata describing a file upload can be submitted via an HTTP POST method, while data transfer proceeds using fasp. The value of the cookie can be used in both the HTTP session and the fasp session in order to perform needed mappings on the server-side.

v

Values: integer
Default: 1

Version of the fasp protocol to be used to perform the transfer. Set this to '2' to use FASP2 protocol. If not specified it will default to FASP1.

port

Values: <integer>
Default: 33001

The UDP port fasp will use for data transfer.

The default value should be satisfactory for the majority of situations. However, it can be overridden to satisfy any firewall restrictions that may be in place.

pathmtu

Values: <integer> | auto
Default: auto

The datagram size fasp will use when transmitting data.
If auto, fasp will automatically detect the path MTU, and use the result for its datagram size.
The default value should be satisfactory for the majority of situations. However, it can be overridden to satisfy networks with strict maximum transmission unit requirements.

policy

Values: fixed | fair | trickle
Default: fair

Specifies which rate policy the transfer should utilize.

If fixed, the transfer will utilize a fixed rate policy. Under this policy, the transfer will transmit data at a rate equal to the target rate. This may impact the performance of other traffic present on the network, and is not recommended for shared links. However, if the link is provisioned for dedicated use, this policy can be beneficial.

If fair, the transfer will utilize a fair rate policy. Under this policy, the transfer will attempt to transmit data at a rate equal to the target rate. If network conditions do not permit that to be achieved, it will transfer at a rate lower than the target rate, but not less than the minimum rate. This policy is recommended for shared links, as it will not negatively impact other TCP traffic on the network. In order to be perfectly fair, the minimum rate should be set to 0. If, however, delivery times must be guaranteed, the minimum can be set to rate required.

linkcapacity

Values: <integer> | auto
Default: user preference

The link capacity of the user's network, in Kbps.

If auto, fasp will automatically detect the network capacity between the user and the remote server.

If set to an integer, allows the server-side to override any preferences set locally by the user. This is useful when the server-side either has knowledge of the user's network or doesn't trust that the user-local settings are accurate.

The default value is determined by what the user has indicated in system preferences.

targetrate

Values: <integer>
Default: 1500

The target rate of data transmission, in Kbps.

minrate

Values: <integer>
Default: 100

The minimum rate of data transmission, in Kbps.
This value has no effect when the transfer is utilizing the fixed rate policy.

bwcap

Values: <integer>
Default: 1000000

The cap on data transfer rates, in Kbps.

This value specifies a maximum threshold over which the user will not be able to adjust the target rate and minimum rate. Setting a bandwidth cap and leaving rates unlocked allows the maximum amount of flexibility for both the server and the user. The bandwidth cap will protect the server against high data transfer rates, while leaving the rates unlocked allows the user the flexibility to adjust data transmission based on local conditions, up to the cap imposed by the server.

A value of 1000000 (the default), indicates the that no bandwidth cap should be in effect.

lockpolicy

Values: yes | no
Default: no

Specifies whether or not the rate policy should be locked.

If yes, the rate policy will be locked to the value specified by the URL. The user will not be able to change the policy while the transfer is in progress.

If no, the user will have the ability to change the rate policy while the transfer is in progress.

locktargetrate

Values: yes | no
Default: no

Specifies whether or not the target rate should be locked.

If yes, the target rate will be locked to the value specified by the URL. The user will not be able to change the rate while the transfer is in progress.

If no, the user will have the ability to change the target rate while the transfer is in progress.

lockminrate

Values: yes | no
Default: no

Specifies whether or not the minimum rate should be locked.

If yes, the minimum rate will be locked to the value specified by the URL. The user will not be able to change the rate while the transfer is in progress.

If no, the user will have the ability to change the minimum rate while the transfer is in progress.

enc

Values: none | aes128
Default: none

The encryption cipher used to encrypt data during transfer.
If none, data will be left unencrypted during transfer.

If aes128, the data will be encrypted using the AES-128 cipher. This option should be used when transmitting sensitive data.

createpath

Values: yes | no
Default: no

Creates the any destination directories if they don't exist.

When using this option, destination paths should be specified using folder names only. If a file name is specified, it will be created as a directory.

fallback

Values: yes | no
Default: no

Enable HTTP fallback.
Attempts to perform an HTTP transfer if a fasp transfer cannot be performed

httpport

Values: <integer> | no
Default: 80 | 443

HTTP server port

The port at which Aspera HTTP server is running. If the transfer falls back to HTTP, this port is used to connect to the Aspera server. Defaults to port 443 if encryption is turned on, else to port 80. See parameter 'enc'.

protect

Values: yes | no
Default: no
Content protection (Encryption at Rest)

Prompts the user for a password and encrypts the uploaded files with the specified password. The protected file has the extension .aspera-env appended to the file name at the destination. Also prompts the user for decryption password when downloading encrypted files.

Video player

Video

×