Hyper Text Transfer Protocol (HTTP)

Hyper Text Transfer Protocol is referred to as HTTP. Tim Berner is the inventor. Hyper Text is a specific kind of text that has been particularly programmed using Hyper Text Markup Language (HTML), a standard coding language. The most recent version of HTTP is HTTP/2. The most recent version of HTTP, released in 2022, is HTTP/3.

Hyper Text Transfer Protocol is the name of the protocol that allows hypertext to be transferred between two computers. 

A web browser and a web server can communicate by using the HTTP protocol. It is a collection of guidelines for data movement between computers. On the World Wide Web, information is shared in the form of text, photos, and other multimedia assets. A user indirectly utilises HTTP each time they launch their web browser. It is an application protocol for hypermedia information systems that are dispersed and collaborative. 

Operation of HTTP

Whenever we wish to access a website, we first open a web browser and then type the website's URL (such as www.facebook.com). The Domain Name Server (DNS) is currently receiving this URL. The IP address associated with this URL will then be returned to the web browser by DNS once they have checked entries for it in their database. The browser may now communicate with the server directly by sending requests. 

The connection will be ended after the client receives data from the server. The client and server should need to re-establish their connection whenever we need anything different from the server. 

Hyper Text Transfer Protocol (HTTP)


HTTP Request

The data or information required by Internet browsers to load a webpage is known as an HTTP request. This is referred to as an HTTP Request.

Every HTTP request has certain standard information that is usually included. These are discussed in the section below.
  • HTTP Version 
  • URL
  • HTTP Method
  • HTTP Request Headers
  • HTTP Body

Headers for HTTP Requests

Each HTTP request must include HTTP Request Headers, which are used to hold data in the key-value format. This Request Header is used to give essential details about the client, among other things.

Request Body for HTTP

All that needs to be sent is included in the HTTP Request Body. The data or information to be delivered to various browsers is contained in the HTTP Request. 

HTTP Procedure

All HTTP Verbs are HTTP Methods. Despite the vast array of HTTP methods available, HTTP GET and HTTP POST are the most often used ones. In HTTP instances, these two are typically utilised. The data is received as a webpage when using HTTP GET.

HTTP Reaction

The response that a server receives after a request is made is known as an HTTP response. The HTTP Response contains a number of different information, some of which are mentioned below.
  • HTTP Status Code
  • HTTP Headers
  • HTTP Body

Hyper Text Transfer Protocol (HTTP)


Headers for HTTP Responses

Simply said, HTTP Response headers are similar to HTTP Requests in that they must be sent together with certain crucial files and data to the HTTP Response Body.

Response Body for HTTP

The replies to a request that are successfully received are known as HTTP responses. It usually falls under the category of web requests. The majority of the time, a webpage's HTML data has to be sent.

Status Code for HTTP

The three-digit numbers known as HTTP Status numbers are used to indicate whether an HTTP request has been fulfilled or not. Status codes come in just five different varieties.
  • Informational
  • Successful
  • Re-directional 
  • Client-Error
  • Server-Error

History of HTTP

The original HTTP and related technologies are credited to Tim Berners Lee and his colleagues at CERN. 
  • Version 0.9 of HTTP was the initial release of the protocol, released in 1991. 
  • HTTP version 1.0: RFC 1945, or the Request for Comments, was first made available in 1996. 
  • HTTP version 1.1: RFC 2068 was released in January 1997 along with HTTP version 1.1. Updates and enhancements to the HTTP version 1.1 standard were published in June 1999 under RFC 2616. 
  • HTTP version 2.0: On May 14, 2015, RFC 7540, the HTTP version 2.0 standard, was released. 
  • 3.0 of HTTP: The preceding RFC draft served as the basis for HTTP version 3.0. It is now known as Hyper-Text Transfer Protocol (QUIC), a Google-developed transport layer network protocol.

Characteristics of HTTP

A communication protocol based on IP called HTTP is used to transfer data from a server to a client or the other way around. 
  • The client submits a request to the server, and the server and client are only acquainted for the duration of the bid and response time. 
  • As long as the client and server are compatible, any kind of content may be shared. 
  • Clients and servers are disconnected once data is shared. 
  • It is a protocol for requests and responses that is based on what the client and server need. 
  • This protocol is known as connection-less because, after the connection is ended, neither the client nor the server retains any memory of one another. 
  • The reason it's a stateless protocol is that it allows communication even when neither the client nor the server expects anything from the other. 

Benefits of HTTP

  • There are fewer simultaneous connections, which results in low memory and CPU utilisation.
  • There is less network congestion since there are fewer TCP connections.
  • Latency is decreased since handshaking is completed at the first connection step, eliminating the need for it for ensuing requests.
  • It is possible to report the mistake without cutting the connection.
  • HTTP permits requests and answers to be pipelined via HTTP.

The drawbacks of HTTP

  • For HTTP to establish communication and move data, it needs a lot of electricity.
  • Because HTTP does not employ TLS to encrypt standard HTTP requests and responses, it is less secure than HTTPS.
  • HTTP is too erratic and not mobile phone optimised.
  • Due to its lower level of security, HTTP does not provide a true data exchange.
  • The server must wait for data completion and cannot be accessible for other clients during this period since the client does not terminate the connection until it gets all of the data from the server.

Cookies in HTTP

A tiny bit of information that a server sends to a user's web browser is known as an HTTP cookie (also known as a web cookie or browser cookie). The browser may save the cookie and send it back to the same server on subsequent inquiries. For example, an HTTP cookie is often used to keep track of a user's login status and identify if two requests come from the same browser. It keeps stateful data for the stateless HTTP protocol.

Status code for HTTP

The most common way to indicate whether an HTTP request has been properly completed is via three-digit numbers, also called HTTP status codes. The status code breakdown is shown in the following five blocks:
  • 1x Informative
  • 2xx Achievement
  • 3xx Reorientation
  • 4xx Client Mistake
  • 5xx Error on the Server
The "xx" stands for different integers between 00 and 99. Status codes starting with "2" indicate that the result was successful. For example, the most common response given in response to a client request for a webpage is "200 OK," indicating that the request was fulfilled successfully.

Can DDoS attacks be initiated using HTTP?

Keep in mind that every command issued over HTTP is independent of every other command because it is a "stateless" protocol. As per the original standard, each HTTP request created and closed a TCP connection. HTTP 1.1 and subsequent versions of the protocol allow several HTTP requests to flow across a persistent TCP connection, improving resource efficiency. In the context of DoS or DDoS assaults, large-scale HTTP requests are considered application layer or layer 7 attacks, and they can be used to launch an attack on a target device.

Tags

Post a Comment

0 Comments
* Please Don't Spam Here. All the Comments are Reviewed by Admin.