RFC 959: FTP: File transfer with separate channels
RFC 959 describes FTP with separate control and data connections and stateful sessions. Separate channels made FTP flexible but make life hard for firewalls and NAT. The lack of transport encryption limits safe use today.
Read the full post