Slave selection

From DrFTPD
Jump to: navigation, search

Slave selection is what picks which slave should be used for a transfer, it is given a set of slaves as candidates, which is all slaves for uploads or slaves that have a specific slave for downloads.

Default slaveselection

Slaveselection has traditionally worked by simply using the slave with least bandwidth usage, while having over a minimum bandwidth limit, if there was a tie, which usually would happen when there is no bandwidth usage, the slave that hasn't been used in the longest time is picked.

This slaveselection is outdated. You can still get this functionality by using the default slaveselection configuration files. (slaveselection-{down,up,jobdown,jobup})

filterchain slaveselection

In 1.1 and up, configureable slaveselection is available through filter chains. This works by having each filter assign scores to the candidates and the one with the highest score ends up as the winner. This allows multiple factors (filters) to influence the selection of the slave.

Each filter adds or removes a score from a slave, or removes the slave entirely(which is not recommended unless absolutely necesary).

There are many filters available such as minfreespace, bandwidth, matchdir, slavetop, etc. They will be documented below this text at a later time.

Personal tools