Skip to main content

Command Palette

Search for a command to run...

Understanding Network Devices

Updated
12 min read

When you open your browser and type google.com, A lot of hardware devices work together behind the scenes to make that happen. Most people have heard words like "router" or "modem," but don't really understand what they do or how they're different.

In this article, we'll break down the essential networking hardware that makes the internet work:

Modem – How your network connects to the internet

Router – How traffic gets directed to the right place

Switch vs Hub – How Local Networks Actually Work

Firewall – Where security lives in your network

Load Balancer – Why scalable systems need it

How all these devices work together in real-world setups

The Big Picture: How the Internet Reaches Your Home or Office

Before diving into individual devices, let's understand the journey of a single packet:

Internet → Modem → Router → Switch → Your Device

Think of it like mail delivery:

Internet = The postal system (global network)

Modem = Your mailbox (connection point to the postal system)

Router = The mail sorter (decides where each letter goes)

Switch = The local delivery person (gets mail to the right room)

Your Device = The person receiving the mail

Each device has a specific job, and they work together to get data from the internet to your computer (and vice versa).

2. What is a Modem and How Does It Connect Your Network to the Internet?

The Basic Problem: Different Languages

Your home network speaks one "language" (usually Ethernet or Wi-Fi signals), but the internet speaks a different "language" (such as cable, DSL, or fiber-optic signals).

A modem (Modulator-Demodulator) is a translator:

Modulation: Converts your digital data into signals that can travel over phone lines, cable, or fiber

Demodulation: Converts incoming signals back into digital data that your network can understand

Real-World Analogy: The Translator

Imagine you're in a foreign country and need to talk to someone who only speaks a different language. The modem is like a translator who:

Takes your words (digital data from your network)

Translates them into the other language (signals for cable/DSL/fiber)

Sends them over the phone line

When a reply comes back, translate it back to your language

What a Modem Actually Does

Connects to your ISP (Internet Service Provider) via cable, DSL, fiber, or satellite

Translates signals between your local network format and the ISP's format

Provides one public IP address (usually) that the internet sees

Does NOT route traffic – it just passes data through

System Design Perspective

In cloud terms, a modem is like a NAT Gateway or Internet Gateway in AWS:

It's the single point of entry/exit to the internet

Everything behind it shares one public IP (usually)

It's the boundary between "your network" and "the internet."

Common mistake: People call their router a "modem" – but they're different! A modem connects you to the internet. A router directs traffic inside your network.

What is a Router and How It Directs Traffic?

The Basic Problem: Which Way Should Data Go?

Once data enters your network (via the modem), it needs to know where to go. You might have:

Multiple computers

Phones on Wi-Fi

Smart TVs

IoT devices

A router is like a traffic director that decides:

"This packet is for Computer A – send it there."

"This packet is for Phone B – send it there"

“This packet is going to the internet – send it to the modem"

Real-World Analogy: The Post Office Sorter

Imagine a post office worker sorting mail:

Mail comes in (from the internet or from devices in your network)

The worker looks at the address (IP address) on each envelope

They check a routing table (like a map) to know which direction to send it

They put it in the right bin (send it to the right device or network)

That's exactly what a router does with data packets.

What a Router Actually Does

Maintains a routing table – knows which devices are on which network segments

Makes routing decisions – decides the best path for each packet

Assigns local IP addresses – usually via DHCP (Dynamic Host Configuration Protocol)

Creates network boundaries – separates your local network from the internet

Can provide Wi-Fi – many home routers also act as wireless access points

Router vs Modem: Key Differences

| Modem | Router |

|-------|--------|

| Connects to ISP | Connects devices to each other |

| Translates signals | Routes traffic |

| One public IP | Many local IPs |

| Layer 1/2 (Physical/Data Link) | Layer 3 (Network) |

In most homes, You have a "router" that's actually a combo device (modem + router + switch + Wi-Fi access point all in one box). But understanding them separately helps you understand what's happening.

System Design Perspective

In cloud infrastructure, routers are like:

Route Tables in AWS VPCs

API Gateways that route requests to different microservices

Service Mesh components that route traffic between services

The concept is the same: "Where should this packet/request go?"

4. Switch vs Hub: How Local Networks Actually Work?

The Basic Problem: Connecting Multiple Devices

You have a router, but you need to connect multiple devices to it. How do you do that?

You could plug everything directly into the router, but:

Routers have limited ports (usually 4-8)

You might have 20+ devices

You need a way to extend your network

Enter switches and hubs (though hubs are mostly obsolete now).

What is a Hub? (The Old Way)

A hub is like a dumb repeater:

It receives a packet on one port

It broadcasts that packet to ALL other ports

Every device connected to the hub sees every packet

Devices ignore packets not meant for them

Problem: This creates a lot of unnecessary traffic and collisions.

Analogy: Imagine a hub like a megaphone in a crowded room. When someone speaks, everyone hears it, even if the message is only for one person.

What is a Switch? (The Modern Way)

A switch is smarter:

- It learns which devices are connected to which ports (by watching MAC addresses)

- When it receives a packet, it only sends it to the port where the destination device is connected

- Other devices don't see the packet at all

Analogy: A switch is like a smart receptionist who knows which office each person is in. When mail arrives, they deliver it directly to the right office instead of announcing it to everyone.

Hub vs Switch: Key Differences

| Hub | Switch |

|-----|--------|

| Broadcasts to all ports | Sends only to destination port |

| Creates collisions | Avoids collisions |

| Layer 1 (Physical) | Layer 2 (Data Link) |

| Cheap but inefficient | Slightly more expensive, much more efficient |

| Mostly obsolete | Standard today |

Real-World Example

Scenario: You have 10 computers connected via a hub vs a switch.

- With a hub: When Computer A sends data to Computer B, all 10 computers see the traffic. This wastes bandwidth and can cause network congestion.

- With a switch: When Computer A sends data to Computer B, only Computer B receives it. The other 8 computers don't even know the communication happened.

System Design Perspective

In software terms:

- Hub = Like broadcasting a message to all microservices, even though only one needs it (inefficient)

- Switch = Like a message queue that routes messages only to the specific service that needs them (efficient)

Modern switches are the standard because they're more efficient, faster, and reduce network congestion.

What is a Firewall and Why Security Lives Here?

The Basic Problem: Not All Traffic Should Be Allowed

Your network is connected to the internet, which means:

Good traffic can come in (like web pages, emails)

Bad traffic can also try to come in (like hackers, malware, attacks)

A firewall is like a security guard that:

Inspects every packet trying to enter or leave your network

Decides whether to allow or block it based on rules

Protects your network from unauthorized access

Real-World Analogy: The Security Gate

Imagine a building with a security guard at the entrance:

Good visitors (like employees with badges) → Allowed in

Suspicious people (like someone trying to break in) → Blocked

Packages are inspected before being allowed in

Rules determine who gets in (time of day, purpose of visit, etc.)

A firewall does the same for network traffic.

What a Firewall Actually Does

Packet filtering: Examines each packet's source, destination, port, and protocol

Stateful inspection: Tracks connections and allows related traffic

Access control: Blocks or allows traffic based on rules (ACLs – Access Control Lists)

Can be hardware or software:

Hardware firewall: A physical device (like a dedicated firewall appliance)

Software firewall: Software running on a router or server (like iptables, Windows Firewall)

Common Firewall Rules

Allow: HTTP (port 80) and HTTPS (port 443) traffic → So you can browse the web

Block: Unauthorized SSH (port 22) attempts → Prevent hackers from accessing your servers

Allow: Outgoing DNS (port 53) → So you can resolve domain names

Block: Incoming traffic on most ports by default → "Deny by default, allow by exception."

System Design Perspective

In cloud and backend systems, firewalls are everywhere:

Security Groups in AWS (virtual firewalls for EC2 instances)

Network ACLs (firewall rules at the subnet level)

WAF (Web Application Firewall) for protecting web applications

API Gateway rate limiting and authentication

The principle is the same: "Should this traffic be allowed? Let me check the rules."

What is a Load Balancer and Why Do Scalable Systems Need It?

6.1 The Basic Problem: One Server Can't Handle Everything

Imagine you have a website that's getting popular:

Day 1: 100 users → One server handles it fine

Day 100: 10,000 users → One server is struggling

Day 1000: 1,000,000 users → One server crashes

Solution: Use multiple servers instead of one. But how do you distribute traffic across them?

A load balancer is like a traffic coordinator that:

Receives all incoming requests

Distributes them across multiple servers

Ensures no single server gets overwhelmed

Can detect if a server is down and stop sending traffic to it

Real-World Analogy: The Restaurant Host

Imagine a busy restaurant with multiple tables and servers:

Customers arrive (incoming requests)

Host greets them (load balancer receives request)

Host checks which server/table is available (load balancer checks server health)

Host seats them at the best available table (load balancer routes to the best server)

If a server is sick, hothe st doesn't seat customers there (the load balancer removes unhealthy servers)

What a Load Balancer Actually Does

Distributes traffic across multiple servers using algorithms like:

Round-robin: Send request 1 to Server A, request 2 to Server B, request 3 to Server A, etc.

Least connections: Send to the server with the fewest active connections

IP hash: Send requests from the same IP to the same server (session affinity)

Health checks: Periodically checks if servers are alive and responding

Removes unhealthy servers: Stops sending traffic to servers that are down

SSL termination: Can handle HTTPS encryption/decryption (so servers don't have to)

Can be hardware or software:

Hardware load balancer: Physical device (like F5 Big-IP)

Software load balancer: Software (like NGINX, HAProxy, AWS ELB)

Load Balancing Algorithms (Quick Overview)

Round-Robin:

Request 1 → Server A

Request 2 → Server B

Request 3 → Server C

Request 4 → Server A (cycle repeats)

Least Connections:

Server A: 5 active connections

Server B: 2 active connections

Server C: 8 active connections

→ New request goes to Server B (least busy)

IP Hash (for session affinity):

User with IP 192.168.1.10 → Always goes to Server A

User with IP 192.168.1.11 → Always goes to Server B

System Design Perspective

Load balancers are essential for scalable systems:

Horizontal scaling: Add more servers instead of making one server bigger

High availability: If one server dies, others keep serving traffic

Performance: Distribute load so no server is overwhelmed

Zero-downtime deployments: Take one server out of rotation, update it, put it back

Real-world examples:

AWS ELB (Elastic Load Balancer): Cloud load balancer

NGINX: Popular software load balancer (also does reverse proxy)

HAProxy: High-performance load balancer

Cloudflare: Load balances at the edge (CDN + load balancing)

Key insight: Load balancers are one of the first things you add when building a production system that needs to scale.

How All These Devices Work Together: Real-World Setup

Now let's see how everything connects in a typical setup.

Home Network Setup

Internet

   ↓

[Modem] ← Connects to ISP, translates signals

   ↓

[Router] ← Routes traffic, assigns local IPs, provides Wi-Fi

   ↓

[Switch] ← Connects multiple wired devices (optional if router has enough ports)

   ↓

[Devices] ← Computers, phones, smart TVs, etc.

[Firewall] ← Usually built into the router (software firewall)

Flow for browsing google.com:

1. Your computer sends a request: "I want google.com"

2. Router (with built-in firewall) checks if the request is allowed → Yes

3. The router routes the request to the modem

4. The modem translates it and sends it to your ISP

5. ISP routes it to the internet → Google's servers

6. Response comes back → Modem → Router → Your computer

Office/Data Center Setup

Internet

   ↓

[Firewall] ← Hardware firewall (first line of defense)

   ↓

[Load Balancer] ← Distributes traffic across multiple servers

   ↓

[Router] ← Routes between different network segments

   ↓

[Switch] ← Connects servers and devices

   ↓

[Servers] ← Web servers, app servers, database servers, etc.

Flow for a web request:

1. User types shivam-goyal. the site in the browser

2. DNS resolves to your load balancer's IP

3. Firewall inspects the request → Allows HTTPS traffic

4. Load Balancer receives request → Routes to Server A (least busy)

5. The router routes the packet to the right network segment

6. Switch delivers packet to Server A

7. Server A processes request → Sends response back

8. Response follows reverse path → Switch → Router → Load Balancer → Firewall → Internet → User

Cloud Infrastructure (Modern Approach)

In cloud systems (AWS, GCP, Azure), these concepts map to:

Internet

   ↓

[WAF / Cloudflare] ← Web Application Firewall (cloud-based)

   ↓

[Load Balancer] ← AWS ELB, GCP Load Balancer, etc.

   ↓

[Security Groups] ← Virtual firewalls (per server/instance)

   ↓

[Route Tables] ← Virtual routers (in VPC)

   ↓

[Virtual Switches] ← Handled by cloud provider (transparent)

   ↓

[EC2 Instances / VMs] ← Your application servers

Key difference: In the cloud, many of these are virtual/software-defined, but the concepts are the same.

Final Thoughts

Understanding networking hardware isn't just for network engineers. As a software engineer, these concepts help you:

Design better systems (know where to put load balancers, firewalls)

Debug issues faster (understand where problems might be)

Communicate with DevOps/Infrastructure teams (speak their language)

Make informed decisions (choose the right cloud services)

The internet might seem like magic, but it's actually a well-designed system of specialized devices working together. Each device has a single responsibility, and together they create a robust, scalable, and secure network.

Next steps:

Try configuring a home router's firewall rules

Set up a simple load balancer with NGINX

Explore AWS VPC and see how these concepts map to cloud services

Read about the OSI Model to understand the "layers" we mentioned

Remember: Good system design is about understanding how pieces fit together. Networking hardware is one of those fundamental pieces.

Happy networking! (pun intended)

Happy Learning! 🚀

Have questions about how browsers work? Drop them in the comments!