Computer Networks

From BloomWiki
Revision as of 13:32, 23 April 2026 by Wordpad (talk | contribs) (BloomWiki: Computer Networks)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

How to read this page: This article maps the topic from beginner to expert across six levels � Remembering, Understanding, Applying, Analyzing, Evaluating, and Creating. Scan the headings to see the full scope, then read from wherever your knowledge starts to feel uncertain. Learn more about how BloomWiki works ?

Computer Networks are the digital infrastructure that allows computers to exchange data with each other. From the local Wi-Fi in your home to the global expanse of the Internet, networks rely on a set of standardized rules called **protocols** to ensure that information is sent, received, and understood. By connecting billions of devices, networks have transformed how we communicate, work, and access information. Understanding networking involves exploring how data is "packaged" into packets, how it is "routed" across the globe in milliseconds, and how the "layers" of communication work together to create a seamless digital experience.

Remembering

  • Computer Network — A group of two or more computers linked together.
  • The Internet — The global system of interconnected computer networks.
  • Protocol — A set of rules that governs how data is transmitted over a network (e.g., HTTP, TCP, IP).
  • IP Address — A unique numerical label assigned to each device connected to a network.
  • Packet — A small unit of data transmitted over a network.
  • Router — A device that forwards data packets between computer networks.
  • Switch — A device that connects devices within a single local area network (LAN).
  • DNS (Domain Name System) — The "phonebook" of the Internet; translates human names (google.com) into IP addresses.
  • TCP (Transmission Control Protocol) — Ensures reliable, ordered, and error-checked delivery of data.
  • UDP (User Datagram Protocol) — A faster, "fire-and-forget" protocol used for streaming and gaming.
  • Bandwidth — The maximum rate of data transfer across a network path.
  • Latency — The time it takes for a packet to travel from source to destination ("Lag").
  • LAN (Local Area Network) — A network confined to a small geographic area (e.g., a home or office).
  • WAN (Wide Area Network) — A network that covers a large geographic area (e.g., the Internet).
  • VPN (Virtual Private Network) — An encrypted "tunnel" through a public network that provides privacy and security.

Understanding

Networking is understood through the **OSI Model** or the **TCP/IP Model**, which breaks communication into layers.

    • The TCP/IP Layers (The Modern Standard)**:

1. **Application Layer (HTTP/SMTP)**: What you see—your browser, email, or Slack. 2. **Transport Layer (TCP/UDP)**: Ensures the data gets there. TCP "handshakes" with the receiver to make sure no packets were lost. 3. **Internet Layer (IP)**: The "addressing" layer. Like a postal system, it puts the source and destination addresses on every packet. 4. **Network Access Layer (Ethernet/Wi-Fi)**: The physical wires or radio waves that actually move the electricity/light.

    • How the Internet Works (The Journey of a Click)**:

When you type "bloomwiki.org": 1. Your computer asks a **DNS Server** for the IP address. 2. Your browser creates an **HTTP Request**. 3. TCP breaks that request into **Packets**. 4. Routers across the world look at the IP address and pass the packets along the most efficient path. 5. The destination server reassembles the packets and sends the data back.

    • Reliability vs. Speed**:
  • **TCP**: Used for websites and files. If a packet is lost, it is resent. (Reliable but slower).
  • **UDP**: Used for Zoom calls or online games. If a packet is lost, it is ignored (you just see a small glitch). (Fast but "lossy").

Applying

Modeling the 'Exponential Backoff' Algorithm: <syntaxhighlight lang="python"> import random import time

def simulate_collision_retry(attempt):

   """
   When two computers talk at once (collision), 
   they wait a random time before trying again.
   The wait time doubles with each failure.
   """
   max_wait = (2 ** attempt) - 1
   wait_time = random.randint(0, max_wait)
   return wait_time
  1. If 3 collisions occur

for i in range(1, 4):

   wait = simulate_collision_retry(i)
   print(f"Collision {i}: Waiting for {wait} units of time...")
  1. This simple math is what prevents 'network storms'
  2. where everyone keeps talking over each other.

</syntaxhighlight>

Core Network Technologies
IPv6 → The new addressing system (replacing IPv4) that allows for 340 undecillion addresses (enough for every atom on Earth).
SSL/TLS → The encryption that turns http into http**s**, protecting your data from "sniffers."
CDN (Content Delivery Network) → Storing copies of a website on servers all over the world so users can download it from the closest one.
BGP (Border Gateway Protocol) → The "postal master" protocol that manages the routing tables of the entire Internet.

Analyzing

TCP vs. UDP
Feature TCP UDP
Reliability Guaranteed Best Effort
Ordering Sequential (1,2,3) Random (3,1,2)
Connection Handshake required Connectionless
Usage Web, Email, File Transfer VoIP, Gaming, Streaming
Speed Slower (Overhead) Faster (Minimal)
    • Network Topology**: The "shape" of the network. A **Star** topology (all devices connected to a central switch) is common in homes. A **Mesh** topology (where every device can talk to every other device) is the structure of the Internet, making it "decentralized" and highly resistant to failure. If one router goes down, the data just finds a different path.

Evaluating

Evaluating network performance: (1) **Throughput**: How many bits per second are actually being moved? (2) **Jitter**: Is the latency stable, or does it vary wildly (bad for video calls)? (3) **Packet Loss**: What percentage of data is being dropped? (4) **Security**: Is the network vulnerable to "Man-in-the-Middle" attacks or DDoS (Distributed Denial of Service) attacks?

Creating

Future Frontiers: (1) **Quantum Networking**: Using entanglement to create unhackable communication links. (2) **Satellite Megaconstellations**: Using thousands of low-earth orbit satellites (like Starlink) to provide global high-speed coverage. (3) **5G and Beyond (6G)**: Massive increases in speed and capacity to enable the "Internet of Things" (IoT). (4) **The Decentralized Web (Web3)**: Moving away from centralized servers toward peer-to-peer protocols (like IPFS) to prevent censorship.