Podcast
Questions and Answers
What does the cost of a link in a network represent?
What does the cost of a link in a network represent?
- The metric defined by the network operator (correct)
- The time required to transmit data
- The energy consumed during transmission
- The expense associated with maintaining the link
Which of the following statements is true regarding link cost?
Which of the following statements is true regarding link cost?
- Link costs are irrelevant to network routing
- Link costs are static and do not change
- Link costs are always equal for all routers
- Link costs can be inversely related to bandwidth (correct)
How are routers represented in the graph abstraction?
How are routers represented in the graph abstraction?
- As nodes in a network (correct)
- As a series of direct links
- As weighted edges only
- As distances between endpoints
What type of routing algorithm uses complete topology and link cost information?
What type of routing algorithm uses complete topology and link cost information?
What distinguishes dynamic routing from static routing?
What distinguishes dynamic routing from static routing?
Which of the following links has a cost of infinity?
Which of the following links has a cost of infinity?
Which set describes the links in the network graph?
Which set describes the links in the network graph?
What is the potential cost related to in a network?
What is the potential cost related to in a network?
What is the main goal of routing protocols?
What is the main goal of routing protocols?
Which of the following routing protocols operates within a single ISP?
Which of the following routing protocols operates within a single ISP?
What is a primary feature of Software-Defined Networking (SDN)?
What is a primary feature of Software-Defined Networking (SDN)?
What distinguishes link state routing from distance vector routing?
What distinguishes link state routing from distance vector routing?
What is the purpose of the Internet Control Message Protocol (ICMP)?
What is the purpose of the Internet Control Message Protocol (ICMP)?
Which of the following is NOT a component of network management protocols?
Which of the following is NOT a component of network management protocols?
What is a significant advantage of centralized control in network functionality?
What is a significant advantage of centralized control in network functionality?
Which type of network routing does BGP specialize in?
Which type of network routing does BGP specialize in?
What is the fundamental function of the forwarding process in a router?
What is the fundamental function of the forwarding process in a router?
In the context of routing, what does a 'good path' typically refer to?
In the context of routing, what does a 'good path' typically refer to?
What does the term 'data plane' refer to in networking?
What does the term 'data plane' refer to in networking?
Which of the following is an example of a distance vector routing protocol?
Which of the following is an example of a distance vector routing protocol?
Which of the following statements is true regarding the control plane?
Which of the following statements is true regarding the control plane?
What role do SDN controllers play in network management?
What role do SDN controllers play in network management?
What is the initial state of the distance values D(v) for all nodes v not directly adjacent to the source node u in Dijkstra's algorithm?
What is the initial state of the distance values D(v) for all nodes v not directly adjacent to the source node u in Dijkstra's algorithm?
What does the set N' represent during the execution of Dijkstra's algorithm?
What does the set N' represent during the execution of Dijkstra's algorithm?
In Dijkstra's algorithm, what information does D(v) hold at any point during execution?
In Dijkstra's algorithm, what information does D(v) hold at any point during execution?
Which of the following statements is true regarding the link-state routing protocols compared to distance-vector protocols?
Which of the following statements is true regarding the link-state routing protocols compared to distance-vector protocols?
How does Dijkstra's algorithm begin its execution?
How does Dijkstra's algorithm begin its execution?
What is the calculation performed on D(v) when a node w is added to set N'?
What is the calculation performed on D(v) when a node w is added to set N'?
What is the time complexity of Dijkstra's algorithm with n nodes when using a simple implementation?
What is the time complexity of Dijkstra's algorithm with n nodes when using a simple implementation?
What is the probable effect of oscillations in Dijkstra’s algorithm?
What is the probable effect of oscillations in Dijkstra’s algorithm?
Which of the following characters the 'distance vector' algorithms?
Which of the following characters the 'distance vector' algorithms?
In the context of routing protocols, what does OSPF stand for?
In the context of routing protocols, what does OSPF stand for?
In Dijkstra’s algorithm, how is the predecessor node p(v) updated as new nodes are validated?
In Dijkstra’s algorithm, how is the predecessor node p(v) updated as new nodes are validated?
What might cause the message complexity in link-state routing protocols to be O(n^2)?
What might cause the message complexity in link-state routing protocols to be O(n^2)?
What is the general criterion for selecting the next node to add to the set N' in Dijkstra's algorithm?
What is the general criterion for selecting the next node to add to the set N' in Dijkstra's algorithm?
Flashcards
Network Graph Abstraction
Network Graph Abstraction
A simplified representation of a computer network, where routers are represented as nodes and connections between routers are represented as edges with associated costs.
Link Cost
Link Cost
The cost of transmitting data between two routers on a direct link. It can be determined by factors such as bandwidth, congestion, or operator-defined values.
Global Routing Algorithm
Global Routing Algorithm
A routing algorithm that utilizes complete information about the network topology and link costs. All routers have the same information to determine routes.
Static Routing
Static Routing
Signup and view all the flashcards
Dynamic Routing
Dynamic Routing
Signup and view all the flashcards
Link State Algorithm
Link State Algorithm
Signup and view all the flashcards
Route Change Speed
Route Change Speed
Signup and view all the flashcards
Hybrid Routing
Hybrid Routing
Signup and view all the flashcards
Network Layer Control Plane
Network Layer Control Plane
Signup and view all the flashcards
Per-Router Control Plane
Per-Router Control Plane
Signup and view all the flashcards
Software-Defined Networking (SDN) Control Plane
Software-Defined Networking (SDN) Control Plane
Signup and view all the flashcards
Routing Protocols
Routing Protocols
Signup and view all the flashcards
Link State Routing
Link State Routing
Signup and view all the flashcards
Distance Vector Routing
Distance Vector Routing
Signup and view all the flashcards
OSPF (Open Shortest Path First)
OSPF (Open Shortest Path First)
Signup and view all the flashcards
BGP (Border Gateway Protocol)
BGP (Border Gateway Protocol)
Signup and view all the flashcards
Network Management Protocols
Network Management Protocols
Signup and view all the flashcards
SNMP (Simple Network Management Protocol)
SNMP (Simple Network Management Protocol)
Signup and view all the flashcards
NETCONF/YANG
NETCONF/YANG
Signup and view all the flashcards
ICMP (Internet Control Message Protocol)
ICMP (Internet Control Message Protocol)
Signup and view all the flashcards
Forwarding
Forwarding
Signup and view all the flashcards
Routing
Routing
Signup and view all the flashcards
Packet Header Modification
Packet Header Modification
Signup and view all the flashcards
Sequencing
Sequencing
Signup and view all the flashcards
Dijkstra's Algorithm
Dijkstra's Algorithm
Signup and view all the flashcards
Distance Estimate (D(v))
Distance Estimate (D(v))
Signup and view all the flashcards
Predecessor Node (p(v))
Predecessor Node (p(v))
Signup and view all the flashcards
Set of Known Nodes (N')
Set of Known Nodes (N')
Signup and view all the flashcards
Link State Broadcast
Link State Broadcast
Signup and view all the flashcards
Algorithm Complexity
Algorithm Complexity
Signup and view all the flashcards
Message Complexity
Message Complexity
Signup and view all the flashcards
Route Oscillations
Route Oscillations
Signup and view all the flashcards
Centralized Routing
Centralized Routing
Signup and view all the flashcards
Decentralized Routing
Decentralized Routing
Signup and view all the flashcards
Study Notes
Network Layer Control Plane
- PowerPoint slides freely available to faculty, students, and readers.
- Animations can be added, modified, and deleted.
- If using the slides, mention their source.
- If posting slides online, acknowledge the source and copyright.
- Revision history is available in the slide notes.
Network Layer Control Plane: Goals
- Understand the principles behind the network control plane.
- Understand traditional routing algorithms.
- Understand SDN controllers.
- Understand network management and configuration.
- Understand instantiation and implementation in the Internet.
- Including OSPF, BGP, OpenFlow, ODL, and ONOS controllers.
- Understand Internet Control Message Protocol (ICMP)
- Understand SNMP, YANG/NETCONF.
Network Layer: "Control Plane" Roadmap
- Introduction
- Routing protocols (link state, distance vector)
- Intra-ISP routing (OSPF)
- Routing among ISPs (BGP)
- SDN control plane
- Internet Control Message Protocol (ICMP)
- Network management and configuration (SNMP, NETCONF/YANG)
Network-Layer Functions
- Forwarding: moving packets from a router's input to an appropriate output.
- Routing: determining the route a packet takes from source to destination.
- Two approaches to structuring network control plane:
- Per-router control (traditional)
- Logically centralized control (software defined networking)
Per-Router Control Plane
- Individual routing algorithm components within each router interact to manage forwarding tables.
Software-Defined Networking (SDN) Control Plane
- A remote controller computes and installs forwarding tables in routers.
Routing Protocols
- Goal: to determine "good" paths (routes) between sending and receiving hosts.
- Path: sequence of routers a packet traverses.
- Criteria for "good" paths: least cost, fastest, least congested.
Graph Abstraction: Link Costs
- Graph G = (N, E)
- N: set of routers (nodes).
- E: set of links (edges) connecting pairs of routers.
- Cab: cost of a direct link connecting nodes a and b.
- Costs can be defined by network operators and may reflect bandwidth or congestion.
Routing Algorithm Classification
- Static routing: routes change slowly over time
- Global information (all routers have complete topology and link cost information)
- Link-state algorithms: used in static routing
- Decentralized routing: iterative process of computation and exchange of information among neighbors
- Distance vector algorithms: routers initially only know link costs to attached neighbors.
Dijkstra's Link-State Routing Algorithm
- Centralized approach
- Network topology and link costs known to all nodes.
- "Link state broadcast" informs all nodes of the network topology.
- Computes least cost paths.
- Iterative process, after each iteration the algorithm knows the least cost path to a certain number of destinations.
- Forwarding table calculation
- Notation:
- Cxy: cost of the direct links between nodes x and y. Is ∞ if there is no direct connection.
- D(v): estimated cost of the least cost path from the source to the destination v.
- p(v): predecessor node along the path from the source to v.
- N': set of nodes whose least-cost path is definitively known.
Dijkstra's Algorithm: Example
- Illustrative examples showing the steps of Dijkstra's algorithm.
- Includes tables with the algorithm's intermediate results.
- Shows how the algorithm progresses from initialization to determining least cost paths, producing forwarding tables.
Distance Vector Algorithm
- Based on Bellman-Ford equation (dynamic programming)
- Each node periodically sends its distance vector to its neighbors
- When a node receives a new distance vector from a neighbor, it updates its estimated distance vectors using the Bellman-Ford equation.
- Under minor, natural conditions, the estimated distances converge towards the actual least costs
Distance Vector Algorithm: Key Idea
- Nodes exchange distance vectors
- Nodes update their distance vectors based on new information from neighbors.
Distance Vector Algorithm: Example
- Illustrates the algorithm's operation through iterations of receiving, computing, and disseminating distance vectors.
Distance Vector Algorithm: Iteration
- Nodes receive distance vectors (DV) from neighbors.
- Nodes compute their new local DV
- Nodes send their new DV to neighbors.
Distance Vector Example: Computation
- Sample computations using the distance vector algorithm to calculate distances to various destinations.
- Illustrates updates from different neighbors at different times.
Distance Vector State Information Diffusion
- Illustrates how updated information spreads throughout the network using distance vector.
Distance Vector: Link Cost Changes
- Nodes detect local link cost changes and update routing tables.
- Updated routing tables are communicated to neighbors if changes occur.
Distance Vector: Link Cost Changes (Bad News Travels Slow)
- Illustrates the count-to-infinity problem, where bad news (link cost increase) takes a long time to propagate through the network.
Comparison of LS and DV Algorithms
- Message complexity:
- LS: O(n²)
- DV: exchange between neighbors, convergence varies
- Speed of convergence:
- LS: O(n²)
- DV: convergence varies
- Robustness: what happens if a router malfunctions or is compromised
- LS: router can advertise incorrect link cost; each router computes only its own table.
- DV: router can advertise incorrect path cost (e.g., black holing); each router's DV is used by others, errors propagate.
Network Layer: "Control Plane" Roadmap
- Introduction
- Routing protocols (intra-ISP routing: OSPF, routing among ISPs: BGP)
- SDN control plane
- Internet Control Message Protocol (ICMP)
- Network management and configuration (SNMP, NETCONF/YANG)
Making Routing Scalable
-
Need to deal with billions of destinations.
-
Large routing tables cannot be stored in each router.
-
Need to deal with routing table exchange.
Internet Approach to Scalable Routing
-
Aggregate routers into regions (ASes).
-
Intra-AS Routing: routing within a single AS (e.g., OSPF)
-
Inter-AS Routing: routing between ASes (e.g., BGP)
-
Gateways perform inter-domain routing and intra-domain routing.
Interconnected ASes
- Intra-AS routing manages routing within a single AS.
- Inter-AS routing manages routing between ASes.
- Forwarding tables are configured by both intra-AS and inter-AS routing.
Inter-AS Routing: A Role in Intradomain Forwarding
- Addresses the need to decide which gateway router a packet should be forwarded to if destined for outside the AS.
Intra-AS Routing: Routing within an AS
- RIP, EIGRP, and OSPF, are commonly used intra-AS routing protocols
OSPF (Open Shortest Path First) Routing
- Publicly available protocol.
- Classic link-state routing
- Floods link-state advertisements between routers.
- Uses Dijkstra's algorithm and full topology information
- Security: authentication of messages
Hierarchical OSPF
- Two-level hierarchy: local area, backbone.
- Area border routers summarize distances for destinations in their own areas.
- Backbone routers flood link-state information.
- Each router has a detailed topology for its area; general direction to reach other destinations is detailed.
Network Layer: "Control Plane" Roadmap
- Introduction
- Routing protocols
- Intra-ISP routing: OSPF
- Routing among ISPs: BGP
- SDN control plane
- Internet Control Message Protocol
- Network management, configuration (SNMP, NETCONF/YANG)
BGP (Border Gateway Protocol)
- Internet inter-AS routing protocol
- Used for exchanging routing information between ASes
- Allows networks to advertise reachability information and determine routes.
- Propagates reachability information within an AS.
- Advertises reachability information to neighboring networks.
eBGP, iBGP Connections
- Gateway routers use both eBGP and iBGP protocols.
BGP Basics
- BGP uses TCP connections between routers.
- Routers advertise paths to different destination network prefixes.
- AS3 gateway advertises path AS3.X to AS2 gateway.
BGP Protocol Messages
- BGP messages exchanged over TCP connections
- Includes messages such as OPEN, UPDATE, KEEPALIVE, NOTIFICATION
- These messages are used for initializing, maintaining, and ending the connections between BGP routers, which exchange routing information.
Path Attributes and BGP Routes
- BGP routes include attributes such as prefix (destination advertisement) and AS-PATH
- AS-PATH: list of ASes (autonomous systems) that the advertisement has traversed.
- NEXT-HOP: specifies internal AS router used to reach the destination AS.
BGP Path Advertisement
- AS2 receives path advertisement for AS3.X via eBGP.
- AS2 accepts the path and propagates it internally via iBGP.
- AS2 advertises the path to a neighboring AS via eBGP.
BGP Path Advertisement: Multiple Paths
- Router can obtain multiple paths to the same destination.
- Policies are used to choose preferred routes based on shortest AS-PATH, closest NEXT-HOP router, and additional criteria
BGP: Populating Forwarding Tables
- Routers learn about paths to destinations via BGP messages.
- Routers use intra-domain routing (e.g. OSPF) to reach the next hop router on the path.
Hot Potato Routing
- Routers forward traffic to the next hop based on intra-domain routing cost (i.e, local policy).
BGP: Achieving Policy via Advertisements
- ISPs use BGP to control routing among customer networks.
- Policies are used to prevent unwanted traffic transit between ISPs
BGP Route Selection
- Router considers multiple routes to a destination based on local preferences, shortest AS-PATH, closest NEXT-HOP, and additional criteria.
Why Different Intra-, Inter-AS Routing?
- Policy: administrative control over traffic flow.
- Scale: hierarchical routing is more scalable.
- Performance: intra-AS routing is more focused on performance.
Network Layer: "Control Plane" Roadmap
- Introduction
- Routing protocols
- Intra-ISP routing: OSPF
- Routing among ISPs: BGP
- SDN control plane
- Internet Control Message Protocol
- Network management and configuration (SNMP, NETCONF/YANG)
Software Defined Networking (SDN)
- Historically, network layers have used distributed (per-router) control approaches.
- Recent advances use a logically centralized control plane in modern SDN designs.
- Data and control planes are separated and use APIs for communication
- Simpler and more manageable for network management.
Software Defined Networking (SDN): Data Plane Switches
- Fast switches using commodity hardware.
- Utilize flow tables installed by the controller.
- Implementing generalized data-plane forwarding in hardware.
Software Defined Networking (SDN): SDN Controller
-
Maintains network state information.
-
Interacts with network control applications
-
Interacts with switches via southbound APIs
-
Implemented as a distributed system.
Software Defined Networking (SDN): Network Control Apps
- "Brains" of control.
- Implement control functions using lower-level services.
- Often provided through an API.
OpenFlow Protocol
- Protocol to control SDN layer.
- Operates between controller and switch using TCP connections.
- Conveys messages using a structured format.
OpenFlow: Controller-to-Switch Messages
- Controller queries and manages the switch's features and configurations.
- Allows for adding, deleting, and modifying flow entries in the Openflow hardware tables.
OpenFlow: Switch-to-Controller Messages
- Switches send packet-in messages to the controller.
- Switches inform the controller about port status changes.
SDN: Control/Data Plane Interaction Example
- Illustrates how the SDN controller responds to network changes (e.g., a link failure) by reconfiguring the network's forwarding tables.
Google ORION SDN Control Plane
- Overview of a Google network control plane that aims to unify control planes in various domains.
- Google’s approach to SDN control plane design.
- Handles routing, traffic engineering, and other network tasks.
OpenDaylight (ODL) Controller
- Implementation details of one possible SDN control plane.
ONOS Controller
- Implementation details of another possible SDN control plane.
SDN: Selected Challenges
- Hardening the control plane.
- Robustness to failures.
- Meeting mission-specific requirements for networks and protocols.
- Internet scaling capabilities.
SDN and the Future of Traditional Network Protocols
- The future of network protocols is uncertain due to SDN
- The future uses of SDN and its effect on existing protocols are uncertain.
Network Layer: Summary
- Summary of the different network control plane approaches to manage networks.
ICMP (Internet Control Message Protocol)
- Protocol for error reporting.
- Hosts and routers exchange network-level information.
- ICMP messages carried within IP datagrams.
Traceroute and ICMP
- Tool used to trace the routes taken by packets.
- Uses ICMP messages.
- Uses several tests to determine the path being taken.
Network Layer: "Control Plane" Roadmap
- Introduction
- Routing Protocols
- Intra-ISP Routing: OSPF
- Inter-AS Routing: BGP
- SDN Control Plane
- Internet Control Message Protocol
- Network Management, Configuration (SNMP, NETCONF/YANG)
What is Network Management?
- Complex systems requiring monitoring and configuration (networks, control systems, etc.).
- Coordination and deployment of hardware/software/human elements.
- Meeting real-time operational performance.
- Quality of service requirements at a reasonable cost.
Components of Network Management
- Managing Server (typically containing applications related to network management).
- Managing Controllers (responsible for managing network/device data).
- Managed devices (network equipment).
- Protocols such as SNMP, CLI, NETCONF that convey network management information.
Network Operator Approaches to Management
- Command-line interfaces (CLIs)
- SNMP/MIB
- NETCONF/YANG
SNMP Protocol
- Uses a request/response mode to convey management information between managing servers and managed devices.
- Uses trap mode in cases where immediate notification of events is necessary
SNMP Protocol: message types
- Types of messages such as GetRequest, GetNextRequest, GetBulkRequest, SetRequest, Responses, Traps
SNMP Protocol: message formats
- Different PDUs (Protocol Data Units) for various SNMP messages.
SNMP: Management Information Base (MIB)
- Data definition language for managed network devices and their information.
- Defines different types of information available via SNMP.
NETCONF Overview
- Active management and configuration of network devices.
- Exchange of data with managed devices using XML-encoded messages.
NETCONF Initialization, Exchange, and Closing
- Shows the steps involved in setup, data exchange, and ending the session between the managing server and device.
Selected NETCONF Operations
- Describes different NETCONF based operations.
Sample NETCONF RPC Message
- A sample XML formatted NETCONF message.
- Shows the content for configuration change request.
YANG Data Modeling Language
- Used to define the structure and semantics for network data to ensure that the configuration data being used is unambiguous and well-formed.
- Generates XML descriptions of device capabilities.
Network Layer: Summary
- Summary of concepts related to network layer and control planes.
Studying That Suits You
Use AI to generate personalized quizzes and flashcards to suit your learning preferences.
Related Documents
Description
Test your knowledge of link costs, routing algorithms, and network graph representations with this quiz. Dive into the distinctions between dynamic and static routing, and explore the theoretical aspects of networking. Ideal for students and professionals in networking courses.