Notes on SDN and ICMP for CS 326E Elements of Networking

Software Defined Networking (SDN) is a way to manage computer networks by separating how data is controlled from how data flows through the network. This makes it easier to manage and program the traffic in networks.

Traditional Routing Limitations
  • In traditional networks, each router creates its own path for the data to travel, which can make it hard to manage traffic.

  • It's challenging for operators to decide the best paths or balance load properly.

  • Traditional methods don't allow easy splitting of traffic across multiple routes.

Benefits of Software Defined Networking
  • SDN makes it easier to manage how data flows, reducing the risk of mistakes in router settings.

  • It enables networks that can be programmed, allowing for more innovation since the components are not tightly linked.

  • This flexibility can lead to quicker advancements in technology.

SDN Architecture Components
  1. Data Plane Switches:

    • Use simple, inexpensive hardware for basic data forwarding.

    • Communicate with the main controller using the OpenFlow protocol.

  2. SDN Controller (Network Operating System):

    • Keeps track of the network's information and interacts with both the switches and the applications.

    • Works as a distributed system for better performance and reliability.

  3. Network-Control Applications:

    • These are "smart" applications that use services from the SDN controller to manage the network.

    • They can be made separately from the hardware used.

Interaction between Control and Data Plane in SDN
  • When something happens in the network (like a link going down), the SDN controller can quickly notice and change the data routes as needed.

  • It reacts to events and finds new paths to redirect traffic efficiently.

Introduction to ICMP (Internet Control Message Protocol)
  • ICMP is mainly used to troubleshoot networking problems.

  • It checks if a destination (like a host or network) is reachable and sends messages inside IP packets.

Ping Command:
  • This command sends requests to check if a host is up and waits for replies, providing round-trip times and information about packet loss.

Traceroute Command:
  • This command shows the path packets take to reach a destination by sending out packets with gradual increases in Time to Live (TTL) values.

  • It asks each router on the way to respond, mapping the route back to the source.

How Traceroute Works:
  • Traceroute uses uncommon port numbers to prompt router responses either when the TTL counts down to zero or when there’s no service at that port in the destination.

Key Points about ICMP and Traceroute
  • ICMP messages are essential for diagnosing network problems and work at the network layer.

  • Traceroute helps visualize the entire route from source to destination, enhancing understanding of network routing.