Popular Network Protocols


TCP Protocol Overview

TCP, or Transmission Control Protocol, is indeed a fundamental protocol for many networked applications, including distributed systems and HTTP. It operates at the transport layer of the Internet Protocol Suite and is known for its reliability and robustness.

TCP is a connection-oriented protocol that establishes a connection between the sender and receiver before data transmission begins. This connection ensures that data is sent and received reliably, in the correct order, and without errors.

Reliable:
Ordered:
Error-Checked:

UDP Protocol Overview

UDP, or User Datagram Protocol, is a lightweight and faster alternative to TCP. Unlike TCP, UDP is connectionless, which means it doesn’t establish a formal connection between sender and receiver before transmitting data. Let’s explore some of the characteristics of UDP based on the points you've provided:

In a stock exchange application, data needs to be sent quickly, even if some data packets are lost in transit. Similarly, for video streaming or online gaming, minor data losses may not significantly impact the user experience, so speed is prioritized over reliability.

Common Use Cases

UDP is commonly used in scenarios where speed is critical, and a small amount of data loss is tolerable:


What is HTTP/HTTPS?

proxy1


How HTTP/HTTPS Works?


Why HTTP/HTTPS is Used?


Where HTTP/HTTPS is Used?


HTTP Methods and Status Codes

HTTP Methods
Method Description
GET Used to request data from a specified resource. It’s a read-only operation and does not modify the resource.
POST Used to send data to the server, usually to create or update a resource. Commonly used in form submissions.
PUT Used to update an existing resource or create a new resource if it doesn’t exist.
DELETE Used to delete a specified resource.
PATCH Used for partial updates to a resource.
HEAD Same as GET, but the server only returns headers without the body content.
OPTIONS Used to describe the communication options for the target resource. It returns allowed HTTP methods for that resource.

HTTP Status Codes
Status Code Class Description
100 1xx Informational Continue - The server has received the request headers and the client can proceed to send the body.
101 1xx Informational Switching Protocols - The server agrees to switch protocols as requested by the client.
200 2xx Success OK - The request was successful, and the server returned the requested data.
201 2xx Success Created - The request was successful, and a new resource was created.
204 2xx Success No Content - The request was successful, but there is no content to send in the response.
301 3xx Redirection Moved Permanently - The requested resource has been permanently moved to a new URL.
302 3xx Redirection Found - The requested resource has been temporarily moved to a new URL.
304 3xx Redirection Not Modified - The requested resource has not been modified since the last request.
400 4xx Client Error Bad Request - The server could not understand the request due to invalid syntax.
401 4xx Client Error Unauthorized - The request requires user authentication.
403 4xx Client Error Forbidden - The server understood the request, but it refuses to authorize it.
404 4xx Client Error Not Found - The requested resource could not be found on the server.
500 5xx Server Error Internal Server Error - The server encountered an error while processing the request.
502 5xx Server Error Bad Gateway - The server, while acting as a gateway, received an invalid response from the upstream server.
503 5xx Server Error Service Unavailable - The server is currently unable to handle the request due to temporary overload or maintenance.

SSL/TLS


SSL/TLS Handshake Process (In-Depth)

proxy1