Computer Networking: A Top-Down Approach 2

Computer Networking: A Top-Down Approach - Detailed Study Notes


Chapter 5: Network Layer: Control Plane

Approaches to Structuring the Network Control Plane

  • Per-Router Control: Traditional method where each router makes decisions independently.

  • Logically Centralized Control (Software Defined Networking - SDN): Involves a centralized controller that makes decisions for multiple routers.

Key Functions of the Network Layer

Data Plane and Control Plane
  • Forwarding: This function is responsible for moving packets from the router’s input to the appropriate output.

  • Routing: Involves determining the route taken by packets from source to destination.


Control Plane Component Overview

Roadmap for Network Layer Control Plane

  • Network Management and Configuration:

    • SNMP (Simple Network Management Protocol)

    • NETCONF/YANG

  • Routing Protocols:

    • Link State

    • Distance Vector

    • Intra-ISP Routing: OSPF (Open Shortest Path First)

    • Routing Among ISPs: BGP (Border Gateway Protocol)

  • SDN Control Plane

  • ICMP (Internet Control Message Protocol)


Routing Protocol Goals

  • Objective: Determine the optimal paths (good routes) from sending hosts to receiving hosts through the network of routers.

  • Definition of “Good” Paths:

    • Least Cost: Refers to the minimal computational cost.

    • Fastest: Shortest time taken for transmission.

    • Least Congested: Routes with minimal network traffic.

  • Challenges: Routing is considered one of the top networking challenges, with applications varying across different network types (mobile networks, enterprise networks, ISPs, and datacenters).


Graph Representation in Routing

Link Costs

  • Graph Abstraction: In this model, the network is represented as a graph G = (N,E), where:

    • N: Set of routers, e.g., {u, v, w, x, y, z}.

    • E: Set of links between routers with associated costs.

  • Link Costs: Defined by network operators and could vary based on factors such as bandwidth or congestion.


Dijkstra’s Link-State Routing Algorithm

Overview

  • Centralized Approach: All nodes are aware of network topology and link costs through link state broadcasts.

  • Purpose: Computes the least cost paths from one source node to all other nodes, results in a forwarding table for the source.

Algorithm Steps
  1. Initialization: Set of nodes whose least-cost paths are known (initially includes the source).

  2. Cost Estimation:

    • For each adjacent node, set the cost based on direct connection.

    • If a node is not adjacent, set its cost to infinity.

  3. Main Loop:

    • Identify the node with the minimum cost not in the known path set and add it.

    • Update the least cost estimates for adjacent nodes.

  4. Completion: Repeat until all nodes are included in the minimum cost path set.


Application of Dijkstra’s Algorithm: Example

Initialization Step

  • Define the set N' with initial costs (D(v), p(v)) for each destination node based on direct connections.

  • The source node starts with 0 cost, while others start as infinite.

Cost Table Update Example
  • For node adjacency, update costs using the formula: D(v) = min(D(v), D(w) + c_{w,v})

    • Here, v is an adjacent node, D(v) is the currently known least cost, D(w) is the new node's known least cost, and $c_{w,v}$ is the cost from w to v.


Distance Vector Algorithm and Bellman-Ford Equation

Definition

  • Distance Vector Algorithm: Utilizes the Bellman-Ford equation for dynamic programming that defines the cost of the least cost path from node x to node y.
    Dx(y) = minv ig\, ig(c{x,v} + Dv(y)ig)

  • Components:

    • $c_{x,v}$: Direct cost of link from x to v.

    • $D_v(y)$: Estimated least-cost path cost from v to y.

Example of Bellman-Ford Application
  • A node computes the least cost path to a destination based on its neighboring nodes' costs.


ICMP (Internet Control Message Protocol)

Functionality

  • Purpose: Facilitates communication of network-level information between hosts and routers including error reporting and diagnostic functions.

    • Common Message Types:

    • Echo Request/Reply: Used in ping operations.

    • Destination Unreachable: Different codes indicating the specific cause of the error.

  • Message Structure: Contains type and code fields along with the first 8 bytes of the IP datagram that generated the error.

Types and Codes
  • e.g.,

    • Type 0, Code 0: Echo Reply (ping)

    • Type 3, Code 0: Destination Network Unreachable


Traceroute and ICMP Protocol

Working Principle

  • Process: The source sends UDP segments to the destination with increasing TTLs, and records the RTTs via ICMP messages from routers along the path.

  • Stopping Criteria:

    • Receipt of an ICMP message indicating that the port is unreachable or successful arrival of the UDP segment at destination.


Chapter 6: Link Layer and LANs

Link Layer Services

Functions
  • Flow Control: Manages pacing between sending and receiving nodes.

  • Error Detection & Correction: Mechanisms to identify and correct errors typically due to signal issues.

  • Half-Duplex vs. Full-Duplex:

    • Half Duplex: Nodes can send and receive but not simultaneously.

Implementation of the Link Layer

  • Location: Each host has the link layer implemented in its Network Interface Card (NIC).

  • Components: Includes hardware and software that facilitate communication over the link layer.

MAC Addresses
  • Definition: A unique 48-bit address assigned to each hardware interface for local networking purposes.

  • Allocation: Managed by IEEE to ensure uniqueness for all devices.


ARP (Address Resolution Protocol)

Operation

  • Purpose: Resolves IP addresses to their corresponding MAC addresses on a local area network.

    • Maintains an ARP table per IP node (hosts, routers).

ARP Query Procedure
  • Example: A node wishing to send data to another node will broadcast an ARP request if it doesn’t have a destination MAC address in its ARP table.

  • Receives an ARP response containing the corresponding MAC address.

Routing Between Subnets

Addressing Process
  • Focus on both IP and MAC addressing during the data transmission process (e.g., from host A to host B via router).


Chapter 7: Wireless and Mobile Networks

Elements of a Wireless Network

  • Key Components:

    • Wireless Hosts: Devices capable of connecting wirelessly (laptop, smartphone, IoT).

    • Base Stations: Connect to wired networks and relay packets to/from wireless hosts.

Types of Wireless Modes
  • Infrastructure Mode: Involves base stations that connect mobile devices to the network.

  • Ad Hoc Mode: No base stations; nodes directly communicate with each other.


4G and 5G Cellular Networks

Overview

  • 4G: Technologies like LTE allow data transmission rates in hundreds of Mbps, with a global cellular framework.

  • 5G: Introduces significant improvements over 4G, including increased peak bitrate and reduced latency.

Infrastructure Architecture Components
  • Mobile Device (User Equipment): Contains unique identifiers such as IMSI stored on SIM cards.

  • Network Elements: Include entities like Serving Gateway (S-GW), Mobility Management Entity (MME), and PDN Gateway (P-GW).


Conclusion

This study guide encapsulates the comprehensive structure and core concepts of the network and link layers as outlined in Kurose and Ross’s textbook. The material is essential for understanding modern networking principles and protocols crucial for both practical application and academic success in computer networking courses.