SP

Networks Chapter 4

Computer Networking: A Top-Down Approach by Jim Kurose and Keith Ross

Chapter 4: Network Layer: Data Plane

Use of Slides
  • Slides are freely available for modification and adaptation, encouraging customization for teaching.

  • Mention the source when used in class and note copyright if posted online to respect intellectual property.

Network Layer Goals

The network layer serves as an essential component of computer networking, focusing on several key principles:

  • Service Models: Various service models address how data is transferred across the network and the reliability of those transfers.

  • Forwarding vs. Routing: Understanding the difference between forwarding (the decision-making process that occurs at each router) and routing (the overall path selection process for sending packets from source to destination).

  • Router Functionality: Exploring how routers manage the flow of data packets across the network and their roles in determining optimal paths.

  • Addressing: The method of assigning addresses to devices within the network, allowing for packet delivery.

  • Generalized Forwarding: Methods that allow for more dynamic and flexible forwarding of packets based on various header fields.

  • Internet Architecture and Protocols: An overview of how the internet is structured and the protocols that govern data transmission.

  • Implementation in the Internet: Practical aspects of how these concepts are manifested within real-world networks.

Key Protocols:

  • IP Protocol: The primary protocol responsible for addressing and routing packets across the internet.

  • NAT (Network Address Translation): A technique that allows multiple devices on a local network to share a single public IP address for internet access.

  • Middleboxes: Special-purpose devices that perform functions such as firewalls and proxies, impacting the flow and safety of data.

Data Plane Roadmap

An overview of various components integral to data transmission:

  • Data Plane: This involves the actual movement of packets based on the forwarding decisions.

  • Control Plane: Manages network-wide decision making, influencing end-to-end packet delivery.

Key Topics:
  • Generalized Forwarding and Software Defined Networking (SDN): Innovations in network management that allow for greater flexibility in how data is processed and routed.

  • Match + Action Paradigm: A framework within SDN that specifies how packets should be treated based on their attributes.

  • Inside a Router: Key components include input ports for receiving data, switching mechanisms for directing traffic, and output ports for sending data out.

  • Buffer Management and Scheduling: Techniques to manage the packets during transmission including queues and storage.

  • IP: Covers datagram format, addressing schemes, NAT, and the transition from IPv4 to IPv6.

Network Layer Services and Protocols

Core functions of the network layer include:

  • Transport Segment Encapsulation: Encapsulating transport layer segments into datagrams at the sender's end.

  • Delivery of Segments: Ensuring segments reach the designated transport layer protocol at the receiver's end, accurately processing them.

  • Router Responsibilities: Routers examine the IP datagram header fields to determine how to forward datagrams from their input to output ports.

  • Data Representation: Discussing how data is represented during transmission across different networks.

Key Network Layer Functions

Forwarding:
  • Action: Moving packets from input link to output link, akin to navigating a trip across a network.

Routing:
  • Action: Utilizing algorithms to determine the most effective path from the source to the destination, impacting efficiency and speed.

Data Plane and Control Plane

Data Plane:
  • The data plane focuses on immediate packet forwarding functions that occur within individual routers.

Control Plane:
  • This plane encompasses network-wide logic that manages routing decisions for the successful delivery of data packets across complex networks.

Control Plane Implementation Approaches:
  • Traditional Routing Algorithms: Standard methods of determining routing paths using established criteria.

  • Software-Defined Networking (SDN): Offers a modern approach, allowing for a programmable network that adjusts dynamically based on current conditions.

Software-Defined Networking (SDN)

  • Control Plane: In an SDN environment, a remote controller installs forwarding tables into routers, establishing an abstract layer that facilitates communication between devices and applications.

  • This layer is crucial for adapting network behavior in real time, optimizing performance and resource allocation.

Network Service Model Examples

Providing various services based on performance needs:

  • Services for Individual Datagrams: Features like guaranteed delivery enhance reliability.

  • Delivery with Specific Timing Constraints: Requirements such as <40 msec delay reflect real-time data needs.

  • Services for Flows of Datagrams: Includes ensuring in-order delivery, guaranteed minimum bandwidth for streams, and controlled spacing between packets.

Network Layer Service Model

Exploring different service models and their guarantees:

  • Best Effort: A model lacking guarantees, primarily for general traffic.

  • Quality of Service: Differentiation in service levels (Intserv, Diffserv), impacting network prioritization.

Key Parameters Affecting Delivery:
  • Factors such as bandwidth availability, loss probability rates, order of arrival of packets, and timing constraints are vital to understand for efficient network management.

Reflections on Best-Effort Service

  • Simple best-effort service has led to broad deployment, proving effective for most applications.

  • Adequate bandwidth provisioning often results in acceptable performance outcomes for real-time applications.

  • Replicated services provide enhanced availability and can improve performance in case of failures.

Router Architecture Overview

Examining the components of a router:

  • High-Speed Switching Fabric: Determines how quickly packets can be moved.

  • Routing Processor: Responsible for maintaining routing information and processing data.

  • Input and Output Ports: Serve as the gateways for data ingress and egress.

  • Data plane functions process packets in nanoseconds, while control plane activities operate over milliseconds, underlining their respective roles in efficiency and timing.

Input Port Functions

Key responsibilities include:

  • Line Termination: Handling interfaces for data entry.

  • Bit-Level Reception: Processing incoming bits into packets.

  • Packet Forwarding: Utilizing header values through forwarding tables to direct data accurately.

  • Queuing: Essential to manage overflow scenarios ensuring no data loss during high traffic.

Routing Table Entries and Forwarding

  • Destination-Based Forwarding: Fundamental method for directing packets based on the destination IP address.

  • Generalized Forwarding: Expanding the forwarding mechanism to utilize various header fields, improving flexibility.

  • Wildcard matching allows for diverse and adaptable routing decisions.

Longest Prefix Matching

  • Essential technique in routing table management, enabling the identification of the longest matching prefix for effective routing decisions.

  • Ternary Content Addressable Memories (TCAM) are often deployed for efficient implementation of this matching strategy.

Switching Fabrics

Understanding types of switching fabrics:

  • Memory-Based: Flexible but potentially slower.

  • Bus-Based: Centralizes communication but can become a bottleneck.

  • Interconnection Networks: Allows for relatively faster packet distribution.

  • Switching rates are crucial for performance evaluations, impacting input/output line rates.

Buffer Management and Queueing

  • Buffering is critical during periods when datagram arrival rates exceed transmission capabilities.

Techniques for Packet Dropping and Congestion Control:
  • Tail Drop: Dropping incoming packets as buffers fill.

  • Priority-Based Dropping: Allowing critical packets to bypass congestion while dropping less important ones.

Packet Scheduling Techniques

Various methods for deciding packet transmission priority:

  • First-Come, First-Served (FCFS): Straightforward method treating all packets equally.

  • Priority Scheduling: Allocating bandwidth based on packet importance.

  • Round Robin (RR): Ensures equitable bandwidth distribution among users.

  • Weighted Fair Queuing (WFQ): Allocating resources based on defined weights, promoting fairness in service provisioning.

Network Neutrality

  • Definition and implications of network neutrality with respect to ISP resource management and user access.

  • Overview of legal frameworks governing network neutrality, such as the US FCC rules, addressing issues of equal treatment of data traffic.

Hierarchical Addressing

  • Importance of efficient advertisement of routing information through address aggregation to reduce overhead.

  • ISPs allocate IP address blocks organized into a structured hierarchy, simplifying the management of address spaces.

DHCP: Dynamic Host Configuration Protocol

  • Protocol designed to dynamically assign IP addresses from a network server to network devices.

  • Workflow:

    • Broadcast Discover Message: The client sends out a request.

    • Server Responds with Offer: A DHCP server offers an IP address.

    • Client Requests: The client selects the offer and requests to use it.

    • Server Acknowledges Assignment: The server confirms the assignment of the IP address.

IPv6 Implementation and Transition

  • Motivation behind the transition from IPv4 to IPv6 driven by significant address space exhaustion in IPv4.

  • Key differences in the datagram format and handling between IPv4 and IPv6, including structured addressing enhancements and removal of checksums to streamline processing.

Summary of Generalized Forwarding

  • An overview of the match + action abstraction, detailing how packet forwarding priorities operate within both SDN and traditional routing technologies.

Additional Notes

  • The network layer overview includes critical infrastructure components such as middleboxes and specific operational functions.

  • Highlighting the necessity of protocols in both static configurations and dynamic networking conditions, ensuring robust communication across diverse environments.