What is HTTP?

HTTP, or Hypertext Transfer Protocol, is a system that allows web browsers and servers to communicate by exchanging requests and responses to load web pages.

What is HTTP?

HTTP, or Hypertext Transfer Protocol, serves as the backbone of the World Wide Web. It leverages hypertext links to facilitate web page loading. Designed to transfer data between network devices, HTTP operates on top of various network protocol stack layers. A typical HTTP operation involves a client issuing a request to a server, which reciprocates with a response.

What is an HTTP method?

Also referred to as an HTTP verb, an HTTP method describes the action the HTTP request expects the server to execute. For instance, the common HTTP methods ‘GET’ and ‘POST’ serve different purposes. ‘GET’ requests information, often website data, while a ‘POST’ request suggests the client submits information to the web server.

What does an HTTP response contain?

Web clients, i.e., browsers, receive HTTP responses from web servers in response to HTTP requests. These responses relay crucial details based on the HTTP request.

A characteristic HTTP response contains:

  • URL
  • HTTP version number
  • HTTP status code
  • HTTP method
  • HTTP request headers
  • An optional HTTP body

Let’s take a closer look at the contents of an HTTP response.

What is an HTTP status code?

HTTP status codes are three-digit codes signifying whether an HTTP request was successful. Status codes are classified into five categories:

  • 1xx – Informational
  • 2xx – Success
  • 3xx – Redirection
  • 4xx – Client Error
  • 5xx – Server Error

Status codes commencing with ‘2’ represent success. For instance, the commonly seen ‘200 OK’ status code points to a successfully completed request. 

A response starting with ‘4’ or ‘5’ indicates an error preventing the webpage from displaying. An introductory ‘4’ hints a client-side error (for example, ‘404 NOT FOUND’ is usually due to a URL typo), while a leading ‘5’ represents a server-side error. 

Status codes can also begin with ‘1’ or ‘3’, indicating an informational response and redirect, respectively.

What are HTTP request headers?

HTTP headers consist of text information stored in key-value pairs. Included in every HTTP request, these headers communicate essential data such as the client’s browser type and the requested data.

What is in an HTTP request body?

The body of the request contains the information the request transfers. On a typical occasion, the HTTP request body accommodates any data submitted to the web server, such as form data.

What are HTTP response headers?

Similar to HTTP requests, HTTP responses come with headers signifying important info such as the language and the format of the response body’s data.

What is in an HTTP response body?

Typically, successful ‘GET’ HTTP responses have a body consisting of the requested info. This is typically HTML data that browsers convert into a web page.

Can HTTP trigger DDoS attacks?

HTTP is a “stateless” protocol, meaning it executes each command independently. Traditionally, each HTTP request would open and close a TCP connection. However, in the more recent iterations of the HTTP protocol (HTTP 1.1 and later), a persistent connection lets multiple HTTP requests move across a persistent TCP connection, enhancing resource usage. 

In the context of DoS or DDoS attacks, large quantities of HTTP requests can be used to launch an attack on a target device. These are known as application layer or layer 7 attacks.