Software Links
Getting Started
- Doc Structure
- A Globus Primer
- Globus Is Modular!
- Quickstart
- Installing GT
- Platform Notes
- Migrating from GT2
- Migrating from GT3
Reference
- PDF version
- Best Practices
- Coding Guidelines
- API docs
- Public Interfaces
- Resource Properties
- Samples
- Glossary
- Performance Studies
Common Runtime
Security
Data Mgt
Information Svcs
Execution Mgt
Name
rft — Submit and monitor a 3rd party GridFTP transfer
Synopsis
rft
Tool description
Submits a transfer to the Reliable File Transfer Service and prints out the status of the transfer on the console.
Command syntax and options
rft [-h <host-ip of the container defaults to localhost> -r <port, defaults to 8080> -l <lifetime for the resource default 60mins> -m <security mechanism. 'msg' for secure message or 'conv' for secure conversation and 'trans' for transport. Defaults to secure transport.> -p <protection type, 'sig' signature and 'enc' encryption, defaults to signature > -z <authorization mechanism can be self or host. default self> -file <file to write EPR of created Reliable File Transfer Resource]> -f <path to the file that contains list of transfers>
This is a sample transfer file that the command-line client will be able to parse. It can also be found in $GLOBUS_LOCATION/share/globus_wsrf_rft_client/ along with other samples for directory transfers and deletes (lines starting with # are comments):
This option when it is set to true means to perform transfer in binary form, if it is set to false transfer is done in ASCII. Default is binary. true #Block size in bytes that is transferred. Default is 16000 bytes. 16000 #TCP Buffer size in bytes #Specifies the size (in bytes) of the TCP buffer to be used by the underlying ftp data channels. This is critical to good performance over the WAN. Use the bandwidth-delay product as your buffer size. 16000 #Notpt (No thirdPartyTransfer): turns third-party transfers off is this option is set to false (on if set to true). Site firewall and/or software configuration may prevent a connection between the two servers (a third party transfer). If this is the case, RFT will "relay" the data. It will do a GET from the source and a PUT to the destination. This obviously causes a performance penalty, but will allow you to complete a transfer you otherwise could not do. false #Number of parallel streams: Specifies the number of parallel data connections that should be used. 1 #Data Channel Authentication (DCAU): Turns off data channel authentication for FTP transfers is set to false.(the default is true to authenticate the data channel). true # Concurrency of the request: Number of files that you want to transfer at any given point. Default is set to one. 1 #Grid Subject name of the source gridftp server. This is used for Authorization purposes. If the source gridftp server is running with host credentials you can specify "null" here. By default host authorization is performed /DC=org/DC=doegrids/OU=People/CN=Ravi Madduri 134710 #Grid Subject name of the destination gridftp server. This is used for Authorization purposes. If the destination gridftp server is running with host credentials you can specify "null" here. By default Host authorization is done. /DC=org/DC=doegrids/OU=People/CN=Ravi Madduri 134710 #Transfer all or none of the transfers: This option if set to true will make RFT to clean up ( delete ) all the transfers that have been done already if one of the transfers fails. Used in GRAM when staging. false #Maximum number of retries: This is number of times RFT retries a transfer failed with a non-fatal error. 10 #Source/Dest URL Pairs: gsiftp urls of source followed by destination. If directory is to be recursively transferred the source gsiftp url and destination gsiftp url should end with "/". Currently RFT supports Directory - Directory, File - Directory, File - File transfers. There can be more URL pairs and all of them use the same options as above for performing the transfer. gsiftp://localhost:5678/tmp/rftTest.tmp gsiftp://localhost:5678/tmp/rftTest_Done.tmp
Limitations
This command line client is very simple and does not do any intelligent parsing of various command line options or of the options in the sample transfer file. It works fine if used in the way documented here. For more information on all these options please refer to the documentation of globus-url-copy. Also, please note that the maximum number of transfers the command-line client can process before running out of memory is ~21K with the default JVM heap size, which was 64M in our tests. Please look at Performance Reports for more details.