An FTP server to have what function, take vsftpd for example, VSFTPD in addition to implement basic FTP command, also support control connection, parameter can be configured, breakpoint continued transmission and so on.
Most of the configuration and features of VSFTPD can be seen in its configuration file under Linux performing man 5 vsftpd.conf.
If you implement an FTP server, the following functions are implemented:
1. Standard FTP commands
Basic FTP File Transfer Protocol, you can refer to the RFC
A simplified Chinese version is included here:Https://github.com/zilandy/zFTP doc
2. Parameter configuration
Change the execution parameters by configuration file similar to vsftpd.conf
3. Idle Disconnect
The client is unresponsive, idle time is disconnected, and the resource is left to other users
such as: idle_session_timeout=600
4. Limit of connections
Total number of connections max_clients=50
Number of individual IP connections max_per_ip=5
5. Speed limit
Limitations of upload download speed
Local_max_rate=100 (KB)
6. Continuation of the breakpoint
The client also needs to configure the breakpoint to continue
Write an FTP server (1)--Requirements analysis