In-Depth Notes on Internet Structure and Networking Protocols

Internet Structure

  • Definition: A network composed of networks, where ISPs (Internet Service Providers) vary by tiers.
  • Types of ISPs:
    • Tier 1 ISPs: Backbone providers, interconnect without paying.
    • Tier 2 ISPs: Regional providers, may have to pay Tier 1 ISPs.
    • Tier 3 ISPs: Local carriers linked to Tier 2 ISPs.
  • Network Resilience: Achieved through multihoming, where ISPs offer connections to multiple upstream providers for redundancy.
  • Traceroute Utility: Helps end hosts probe and discover the pathway that packets take to a specific destination.

Packet Loss and Variable Delays

  • Packet Loss Causes:
    • Unreliable transmission links (e.g., radio bit error rates ~10^-6, optical ~10^-15).
    • Buffers (queues) have finite capacities. When full, new incoming packets are discarded.
    • Loss strategies: Previous nodes, source systems may attempt retransmission, or may not.
  • Variable Delays:
    1. Processing Delay: Time taken to check for errors and route the packet (~microseconds).
    2. Queuing Delay: Time packets spend waiting in queues, influenced by network congestion.
    3. Transmission Delay: Time to push all bits of the packet into the link, calculated as \frac{L}{R} where L is packet size and R is link bandwidth.
    4. Propagation Delay: Time for a signal to travel through the cable, calculated with the physical length of the link divided by its propagation speed.

Types of Delay in Packet-Switched Networks

  • Nodal Delay Components:
    • d_{proc} = Processing delay (a few microseconds)
    • d_{queue} = Queuing delay (depends on current load)
    • d{trans} = Transmission delay, d{trans} = \frac{L}{R}
    • d_{prop} = Propagation delay (milliseconds to hundreds of seconds)
    • Total Delay: d{nodal} = d{proc} + d{queue} + d{trans} + d_{prop}

Example Calculation

  • Scenario: Sending a 50,000 byte message from Houston to Mark on Mars at 1Kbps:
    1. Transmission Delay: \frac{50000 \times 8}{1000} = 400 seconds.
    2. Propagation Delay (56 million km): \frac{56 \times 10^6 \text{ km} \times 10^3}{3 \times 10^8 \text{ m/s}} = 186 seconds.
    3. Total Delay: 400 + 186 = 586 seconds.

Protocols and Layering in Networking

  • Protocols: Define rules for communication (e.g., TCP, IP, HTTP), with services that specify functionality offered.
  • Architecture Layers:
    • Application Layer: User-facing applications (e.g., HTTP, DNS).
    • Transport Layer: Reliable (e.g., TCP) or unreliable (e.g., UDP) data transfers.
    • Network Layer: Responsible for routing (e.g., IP).
    • Data Link Layer: Transfers data between adjacent network elements (e.g., Ethernet).

Application Layer Structures

  • Client-Server Model:
    • Constantly running servers with fixed IPs; clients can connect intermittently.
  • Peer-to-Peer (P2P) Model:
    • Distributed system where any client can become a server - self-scaling as new peers join.
  • Hybrid Model:
    • Combines aspects of both, with the server maintaining user information and clients communicating directly.

Summary Points for Networking

  • Internet is a complex blend of protocols and architectures.
  • Understanding packet loss, delays, and the structure of protocols aids in navigating networking concepts.
  • Layering forms the fundamental basis of network modularity and organization, essential in maintaining scalable and manageable systems.