Understand TCP socket programing by developing a simplified FTP client that works with any standard FTP server. You must create your own socket, and cannot use any existing FTP library. You must use Python.
The client should be designed to start by typing the command:
myftp server-name
where "server-name" is the name or IP address of the server. Next, display a prompt for entering the FTP user name, followed by a prompt for entering the password.
After a successful login, the following commands should be available in the FTP client promt:
Command Function
myftp> cd remote-path Change to the "remote-path" directory in the remote server.
myftp> get remote-file Download the file named "remote-file" from the remote server to the local machine with the same file name.
myftp> put local-file Upload the file named "local-file" from the local machine to the remote server with the same file name.
myftp> delete remote-file Delete the file named "remote-file" from the remote server.
myftp> quit Quit the FTP client.
All the above commands (including entering the user name and password) when executed should return a Success/Failure status. All the path names and file names should be considered relative to the current directory (unless absolute path name is given). After a successful file transfer, a success message should be displayed with the number of bytes transferred
Please run the Windows/Linux built-in command line FTP client to see the expected result of each command. You may test your client by connecting it to any standard FTP server, or Filelilla server (https;//filezilla- project.org/download.php?type=server) running on a Windows machine.