What is the full form of HTTP?
HTTP is an acronym for “Hypertext Transfer Protocol.” It is a protocol used for transmitting data over the World Wide Web (WWW), i.e., Internet since 1990. HTTP has four versions, which are given below:
It has some predefined set of rules and methods to establish, maintain, and execute communication between various terminals, systems, and devices over the Internet. Most of the websites use this protocol to access any webpage over the internet. The URL of website begins with “http://”.
Example: If you want to access website like www.microsoft.com, then you write in the URL like: http://www.microsoft.com.
In HTTP, Hypertext is a text which contains a connection link within it; it means, when we click on a word or text on a webpage that contains a link, it will be redirected to a new webpage of the specified link. This protocol was invented by Tim Berner.
HTTP uses port number 80 for connection. It is used to transfer data in the form of hypertext, audio, video and many more. It does not encrypt and decrypt the page information between the client browser and web server, and send data as a plain-text.
HTTP uses fewer resources, such as CPU and memory because of the low number of connections. In this, errors can be reported without terminating the prior connection. This protocol is used for transporting WWW documents between the client and server. Each HTTP transaction between the client and server consists of request and response in the client server model, where a client maintain a connection to make a request and wait until it receives a response from the server. The task is performed in below three steps:
- First of all, client opens a TCP connection and sends request for a document.
- Then server responds to the client with the document.
- After that the server closes the connection.
HTTP request messages that are sent from the web-client to web-server consists of three parts:
- The request line: The request line further consists of three methods i.e. request type, URL and HTTP version. The URL represents the requested resource. The HTTP represents the version number of HTTP being used. The request line ends with CRLF (Carriage Return Line Feed).
Example: GET /images/logo1.png HTTP/1.1, which requests a resource called
/images/logo1.png from the server
- Request Header: The header present in the HTTP request message is called request header that exchange additional information between the web client and the webserver.
Example: (Accept-Language: en)
- Body: The body represents the message body.
HTTP response messages that are sent from the server to client. The response of the server to a request from the client consists of three parts:
- Status line: The status line further consists of three elements i.e. HTTP version, Status code and reason phrase or status phrase. The status code field represents the three digit integer that indicates the response to the request.
- Response Header: The header represents the HTTP response message is called response header that specifies the server’s configuration and some special information about the request.
- Body: The body represents the message body
Some basic features of HTTP are given below:
- HTTP requires high power to establish communication between the client and server and to transfer the data. HTTP protocol transfers the data between the client and web server without handshaking. In this protocol, we don’t require SSL (System Sockets Layer) certificate for websites. HTTP protocol provides data encryption because it saves cookies and data on the client system.
- HTTP is a stateless protocol, because in this, each transaction is treated independently. HTTP connection is also stateless because the web server and the web client are aware of each other only during a first current connection request. Once the connection is closed, both of them are unaware about each other so that they cannot retain their information between different requests across the web pages.
- HTTP is not a secure connection because HTTP requests are sent to the host server in plain text and does not use any encryption techniques for data sending. In this way, it subjects to man-in-the-middle and eavesdropping attacks, which can let attackers to gain access to website’s accounts, and sensitive and confidential information, such as credit card details etc.