The following list of RFCs are relevant for FTP:
- RFC 959: File Transfer Protocol
- RFC 1123: Internet Host Requirements
- RFC 1579: Firewall-Friendly FTP
- RFC 1635: How to Use Anonymous FTP
- RFC 2228: FTP Security Extensions
- RFC 2389: Feature negotiation mechanism for the File Transfer Protocol
- RFC 2428: FTP Extensions for IPv6 and NATs
- RFC 2577: FTP Security Considerations
- RFC 2640: Internationalization of the File Transfer Protocol
- RFC 3659: Extensions to FTP
- RFC 4217: Securing FTP with TLS
- RFC 5797: FTP Command and Extension Registry
- RFC 6384: An FTP Application Layer Gateway (ALG) for IPv6-to-IPv4 Translation
- RFC 7151: File Transfer Protocol HOST Command for Virtual Hosts
In addition to full-fledged RFCs, there are some proposed IETF Drafts which are in various stages of implementation and adoption:
- draft-bryan-ftp-range: File Transfer Protocol RANG Command for Octet Ranges
- draft-ietf-ftpext2-hash: File Transfer Protocol HASH Command for Cryptographic Hashes
There are some additional resources which provide good overall descriptions of FTP; useful as references, and for sending to others:
- Dan J. Bernstein's FTP protocol description
- Active vs Passive FTP