What are the two main functions of the network layer?
How does the network layer handle transport layer segments?
Encapsulates segments into datagrams on sending side; extracts and delivers segments to transport layer on receiving side
What is the data plane?
Per-router functions (forwarding) that handle packet transfer between input/output links. Implemented in hardware for speed
What is the control plane?
Network-wide logic (routing) to determine paths. Traditionally in-route but separated in SDN (remote controller)
How does a router use its forwarding table?
Matches header fields (destination IP) to table entries to determine the output link
What’s the difference between forwarding and routing?
How are forwarding tables configured traditionally?
Each route runs a routing algorithm and exchanges route messages with neighbours to populate tables
How does SDN differ from traditional approach?
A remote controller computes and distributes forwarding tables to router via messages
What are the four key components of a router?
What’s the goal of a routing algorithm?
Find the least-cost path from sender to receiver
Centralised (LS) vs Decentralised (DV) Algorithms
Static vs Dynamic Algorithms
Load-sensitive vs Load-insensitive Algorithms
How is a network modelled as a graph?
How is path cost calculated?
Sum of link costs
Forwarding vs Routing
Forwarding is where (local), Routing is how (global)