Skip to main contentSkip to user menuSkip to navigation

Networking Protocols Guide

Not Started
Loading...

Networking Protocols

Essential network protocols for system design and communication

11
Network Protocols
Application Layer
Web
Port 80

HTTP

Hypertext Transfer Protocol for web communication

Reliability:medium
Speed:high

Best Use Case:

Web applications and RESTful APIs

Advantages:

  • +Simple and widely supported
  • +Stateless protocol
  • +Human-readable format

Disadvantages:

  • -No built-in security
  • -No persistent connections (HTTP/1.0)
  • -Overhead for small requests

System Design Applications:

Microservices communicationAPI gatewaysLoad balancer health checksContent delivery

Common Examples:

Web browsingREST API callsFile downloadsForm submissions

Alternatives:

HTTPSHTTP/2HTTP/3WebSocket
Application Layer
Web
Port 443

HTTPS

HTTP over TLS/SSL for secure web communication

Reliability:high
Speed:medium

Best Use Case:

Secure web applications and sensitive data transfer

Advantages:

  • +End-to-end encryption
  • +Authentication and integrity
  • +SEO benefits

Disadvantages:

  • -Performance overhead
  • -Certificate management complexity
  • -Additional latency for handshake

System Design Applications:

Secure API communicationPayment processingUser authenticationData privacy compliance

Common Examples:

E-commerce websitesBanking applicationsSocial media platformsAPI authentication

Alternatives:

HTTP/2 over TLSHTTP/3 (QUIC)mTLS
Application Layer
Real-time
Port 0.18058690744920994

WebSocket

Full-duplex communication protocol over TCP

Reliability:high
Speed:high

Best Use Case:

Real-time bidirectional communication

Advantages:

  • +Full-duplex communication
  • +Low latency
  • +Persistent connections

Disadvantages:

  • -Complex connection management
  • -Firewall and proxy issues
  • -Resource intensive for servers

System Design Applications:

Real-time notificationsLive data feedsCollaborative applicationsGaming backends

Common Examples:

Chat applicationsLive gamingReal-time dashboardsCollaborative editing

Alternatives:

Server-Sent EventsgRPC streamingSocket.IO
Application Layer
RPC
Port Various

gRPC

High-performance RPC framework using HTTP/2

Reliability:high
Speed:high

Best Use Case:

High-performance microservices communication

Advantages:

  • +High performance with HTTP/2
  • +Strong typing with Protocol Buffers
  • +Streaming support

Disadvantages:

  • -Limited browser support
  • -Binary format (not human-readable)
  • -Learning curve

System Design Applications:

Service mesh communicationHigh-throughput APIsReal-time streamingInternal microservices

Common Examples:

Microservices communicationMobile app backendsIoT device communicationInternal service APIs

Alternatives:

RESTGraphQLApache ThriftJSON-RPC
Application Layer
Infrastructure
Port 53

DNS

Domain Name System for translating domain names to IP addresses

Reliability:high
Speed:medium

Best Use Case:

Domain name resolution and service discovery

Advantages:

  • +Hierarchical and distributed
  • +Caching for performance
  • +Load balancing capabilities

Disadvantages:

  • -Security vulnerabilities (DNS poisoning)
  • -Propagation delays
  • -Single point of failure if misconfigured

System Design Applications:

Service discoveryLoad balancingFailover mechanismsGeographic routing

Common Examples:

Website domain resolutionEmail server lookupService discoveryLoad balancing

Alternatives:

mDNSService mesh discoveryConsuletcd
Transport Layer
Connection-oriented
Port Various

TCP

Transmission Control Protocol for reliable data delivery

Reliability:high
Speed:medium

Best Use Case:

Reliable data transmission requiring guaranteed delivery

Advantages:

  • +Guaranteed delivery
  • +Ordered data transmission
  • +Error detection and correction

Disadvantages:

  • -Higher latency due to handshake
  • -Connection overhead
  • -Head-of-line blocking

System Design Applications:

Database connectionsAPI communicationsFile transfersPersistent connections

Common Examples:

Web browsing (HTTP)Email (SMTP)File transfer (FTP)Database connections

Alternatives:

UDPQUICSCTP
Transport Layer
Connectionless
Port Various

UDP

User Datagram Protocol for fast, connectionless communication

Reliability:low
Speed:high

Best Use Case:

Fast communication where some data loss is acceptable

Advantages:

  • +Low latency
  • +No connection overhead
  • +Multicast support

Disadvantages:

  • -No guaranteed delivery
  • -No ordering guarantees
  • -No error recovery

System Design Applications:

Real-time communicationsMetrics collectionService discoveryMedia streaming

Common Examples:

Video streamingOnline gamingDNS queriesDHCP

Alternatives:

TCPQUICReliable UDP implementations
Network Layer
Routing
Port N/A

IP (IPv4/IPv6)

Internet Protocol for packet routing across networks

Reliability:medium
Speed:high

Best Use Case:

Routing packets across different networks

Advantages:

  • +Universal addressing
  • +Scalable routing
  • +Network independence

Disadvantages:

  • -No guaranteed delivery
  • -Address exhaustion (IPv4)
  • -No built-in security

System Design Applications:

Load balancer routingCDN distributionMulti-region deploymentNetwork segmentation

Common Examples:

Internet routingVPN connectionsNetwork addressingPacket forwarding

Alternatives:

IPv6MPLSOverlay networks
Application Layer
Messaging
Port 5672

AMQP

Advanced Message Queuing Protocol for reliable messaging

Reliability:high
Speed:medium

Best Use Case:

Enterprise messaging and reliable message delivery

Advantages:

  • +Reliable message delivery
  • +Rich routing capabilities
  • +Transaction support

Disadvantages:

  • -Complex protocol
  • -Higher overhead
  • -Learning curve

System Design Applications:

Microservices messagingEvent sourcingTask queuesDistributed systems communication

Common Examples:

RabbitMQApache QpidEnterprise messagingEvent-driven architectures

Alternatives:

MQTTApache KafkaRedis Pub/SubNATS
Application Layer
IoT
Port 1883

MQTT

Message Queuing Telemetry Transport for IoT devices

Reliability:medium
Speed:high

Best Use Case:

IoT device communication and telemetry

Advantages:

  • +Lightweight protocol
  • +Low bandwidth usage
  • +Quality of Service levels

Disadvantages:

  • -Limited security (basic version)
  • -No message ordering guarantees
  • -Broker dependency

System Design Applications:

IoT data collectionReal-time monitoringDevice controlTelemetry systems

Common Examples:

IoT sensor dataSmart home devicesIndustrial monitoringMobile push notifications

Alternatives:

CoAPAMQPWebSocketHTTP
Application Layer
Database
Port Various (3306, 5432, 1433)

SQL Protocol

Various protocols for SQL database communication

Reliability:high
Speed:medium

Best Use Case:

Relational database communication

Advantages:

  • +Standardized query language
  • +ACID compliance
  • +Rich query capabilities

Disadvantages:

  • -Connection overhead
  • -Not suitable for high-frequency operations
  • -Protocol-specific implementations

System Design Applications:

Application databasesData warehousingOLTP systemsReporting systems

Common Examples:

MySQL ProtocolPostgreSQL ProtocolSQL Server TDSOracle TNS

Alternatives:

NoSQL protocolsgRPCREST APIsGraphQL

OSI Layer Distribution

8
Application Layer
2
Transport Layer
1
Network Layer

Protocol Selection Guide: Choose protocols based on your reliability, speed, and scalability requirements. Consider the trade-offs between performance and features. Application layer protocols provide more features but with higher overhead.