Opened 14 years ago

Last modified 6 years ago

#2294 closed Feature request

FTP custom BOOST-mode in FileZilla client (like QWIX)

Reported by: gamester17 Owned by:
Priority: normal Component: FileZilla Client
Keywords: Cc: gamester17, Tim Kosse
Component version: Operating system type:
Operating system version:

Description

FTP boost mode in FileZilla Client (like QWIX)

Avalaunch (a homebrew dashboard for modded Xboxes)
has a built-in custom FTP-server that has a very nice
feature called BOOST mode. Boost mode only works if both
the FTP-server and the FTP-client supports it. What boost
mode does is basically send a list (from the client to the
server) of all files from the transfer-list making new
connection/session for each file unessesary, resulting in a
much faster overall transfer speed when transfering many
small files (like example a complete and large website, or
text files, or even loads of MP3 files over a fast connection).
Team-Avalaunch the makers of the Avalaunch dashboard
also make a FTP-client called QWIX which supports this
boost mode.

Team-Avalaunch has made the specifications of this
BOOST mode open source to enable others to implement
support of it into their FTP servers and clients, found here:
http://forums.xbox-scene.com/index.php?showtopic=137059

Team-Ava's website: http://www.teamavalaunch.com

From Avalaunch FAQ (a bit old now as more supports it):
Q: What is Boost Mode?
A: Boost Mode is an improved FTP protocol that is currently
only supported with Avalaunch. It can make transfers push
the limits of your 100Mb connection, and is especially
helpful with transfers that contain a lot of small files."

PS! Some others that supports this boost mode is: SUXX,
UnleashX, C-XBOXtool

Change History (5)

comment:1 Changed 14 years ago by gamester17

The idea behind BOOST mode (in Team-Avalaunch own words):

To being able to transfer small files with high speed, you need to
get rid of the massive negotiation for every file. However,
negotiating everything at start is acceptable. So that's what we'll
do. (We won't go into how we do the caching here, since that's
an entirely different issue).

  1. Boost mode detection; To enable boost mode in both

Avalaunch's file-manager and QWIX (FTP-client), you got to
reply on this command:

client => server : SITE BOOST SUPPORTED
valid reply for yes : 226

  1. Initializing the boost transfer; This is the heavy part. You got to

tell the server which file/directories is coming over - with all sizes.
and it has to be in the same order (of course ) as it's gonna
recieve in. The command is :

SITE BOOST START <UPLOAD/DOWNLOAD> <number of files
and dirs>
e.g. "SITE BOOST START UPLOAD 1000" if you're uploading
1000 files.

Reply with 226 if successful.

  1. File/Dir list; Dir syntax for directory addition (taking restoration

of the Xbox game GTA3 backup for example):

D,<name><cr>
(e.g.) D,F:\Games\Grand Theft Auto III

File syntax is similar, but demands also exact filesize
F,<name>,<size><cr>
F,default.xbe,3072000

(make sure you do the dir-change before the file so that it
changes/makes the dir up front).

---
D,F:\Games\Grand Theft Auto III\anim
F,CSHands.txd,44296
F,cuts.dir,9216
F,cuts.img,43634688
F,gta3.ini,10
.....

  1. The transfer; When all the files/dirs has been listed up in the

command socket, server must reply in this manner:

226 - <nr files/dirs recieved> <port open for file stream><cr>

in this case it answered this for 458 files to port 2048 :
226 - 458 2048

Client simply connects to that socket and the stream of all files in
the order specified the dir/file list.

comment:2 Changed 14 years ago by Tim Kosse

Duplicate of 1223960

comment:3 Changed 14 years ago by gamester17

This is not a duplicate of 1223960, 1223960 is for the server-side
and this (1223961) is for the client-side. Please re-consider, TIA

comment:4 Changed 14 years ago by gamester17

Any chance you reconsider the 'idea' of this to get similar result?

Maybe you could take just the concept and implemented in a
other way which would be acceptable to you? (ie you could
hopefully acheive the same or similar result in a other way).

Please / Thanks in advance

comment:5 Changed 14 years ago by Tim Kosse

I've yet to see a formal specification.

Note: See TracTickets for help on using tickets.