Base of Difference | FTP | HTTP | SMTP |
Full Form | FTP full form is File Transfer Protocol | Full form of HTTP is Hyper Text Transfer Protocol | Full form of SMTP is Simple Mail Transfer Protocol |
Basic definition | It is a underlying protocol which is used to transfer files over a communication network. It establishes two TCP connections:-
(1)Control Connection to authenticate the user
(2)Data Connection to transfer the files. | HTTP is the backbone of the World Wide Web (WWW). It defines the format of messages through which Web Browsers (like Firefox, Chrome) and Web Servers communicate, whilst also defining how a web browser should respond to a particular web browser request. | SMTP is what is used by Email servers all over the globe to communicate with each other so that the assignment you submitted at 11:59 pm reaches your professor’s inbox within the deadline. |
Port Number | 20 and 21 | 80 | 25 |
Type of band transfer | Out of Band | In Band | In Band |
State | Maintains State (FTP is Out-of-band, as it uses a separate channel to send data (Data connection), as to send control information (Control connection)). | Stateless (A Stateless protocol implies that the HTTP Web Server does not maintain which request had originated from which user. Hence, to give customized service to the user, HTTP uses Cookies.) | As SMTP is much older than HTTP, it restricts all its messages to be in 7-bit ASCII format. Whereas HTTP has no such restriction. |
Type of Transfer | This will used to transfer directly between computers. | This will used to transfer files between the Web server and Web client | This will be used to transfers mails via Mail Servers |
Protocol Type | - | Pull Protocol (Mainly) | Push Protocol (Primarily) |
Type of TCP connection | Persistent for
Control connection and Non-persistent for Data Connection. | Can use both Persistent and Non-persistent | Persistent |
Number of TCP connections | 2 (Data Connection and Control Connection) | 1 | 1 |