Download presentation
Presentation is loading. Please wait.
Published byLucinda Miller Modified over 6 years ago
1
Rudra Dutta ECE/CSC 570 - Fall 2010, Section 001, 601
The Networking Layer Rudra Dutta ECE/CSC Fall 2010, Section 001, 601
2
Positioning DLC allows communication between connected computers
Cooperation can create connectivity not present in physical topology – networking Lowest layer aware of end-to-end traffic Concerns Forwarding Routing Addressing? Copyright Rudra Dutta, NCSU, Fall, 2010
3
Concepts Inter-networking Addressing Forwarding and Routing
Assume physical (“sub”)network knows how to deliver Addressing Physical network computers already have addresses Do these make sense in broader context? Consider postal - house, subdivision, ... If not, networking layer addresses must be assigned Forwarding and Routing Switching granularity and context Circuits (L1), packets (L3) Hierarchical switching Forwarding Information Base There’s way too much information out there, so Concepts are your best friend Copyright Rudra Dutta, NCSU, Fall, 2010
4
Concepts - Forwarding / Routing
The act of forwarding PDUs Where to forward? Likely to be partially determined by data source/destination Must be embedded in data Likely to be partially determined by network factors Must be stored at node Forwarding will combine these two types of information Routing Path-finding For any and all traffic, determination of path it takes from source to destination At a node, must translate into: Distilling “network factors” above into easy-to-refer information for forwarding - mapping from data to next-hop Copyright Rudra Dutta, NCSU, Fall, 2010
5
Concept - Context Context is needed to switch data
Wire - perfect context (no-brains forwarding) At L3, need context to switch Meta-data makes it unnecessary to maintain context Each PDU carries context information (destination, source, ...) Allows store-and-forward, therefore utilization, but Now need to undertake significant forwarding effort for each packet Context makes it unnecessary to reinvent the wheel First send some “special” traffic packets establishing context Units of traffic following the context establishment forwarded cheaply, but To ensure that we do not drop data, must end up wasting bandwidth The overhead of context maintenance is also present Copyright Rudra Dutta, NCSU, Fall, 2010
6
Concepts - Forwarding Information Base
A “lookup table” for next-hop router Packet arrives with embedded context (full or partial) Context information is extracted and looked up in FIB Packet forwarded to next-hop intermediate node Next-hop FIB Context Forwarding DLC PHY NET A R D Copyright Rudra Dutta, NCSU, Fall, 2010
7
Context-less Forwarding
Copyright Rudra Dutta, NCSU, Fall, 2010
8
Context-ful Forwarding
Copyright Rudra Dutta, NCSU, Fall, 2010
9
Comparison Copyright Rudra Dutta, NCSU, Fall, 2010
10
Routing - Fundamentals
Different concerns Correctness and optimality Robustness, stability, … More complicated “policy” concerns Optimality – who decides? Once design goals have been decided, Algorithm must be designed to attain them Some fundamental approaches to routing exist Routing may be fixed, or fixed alternate May be adaptive, or dynamic Adapting to what? How is information shared? Copyright Rudra Dutta, NCSU, Fall, 2010
11
Space of Routing Choices
Static vs. dynamic or adaptive For a node, next-hop determined by Destination only Source and destination Particular flow of traffic Other characteristics May be bifurcated (split) or non-bifurcated Next-hop may be unique or multiple Deterministically or randomly picked Copyright Rudra Dutta, NCSU, Fall, 2010
12
Flooding Simple – forward to everybody else Generates unbounded copies
Hop count can be introduced to bound Can be more intelligent if packets can be recognized Selective flooding – shortlist of links Highly robust Serves as benchmark Useful as a “phase” in other strategies Copyright Rudra Dutta, NCSU, Fall, 2010
13
Optimality Nice characteristic, works for “distance” or “cost” related routing goals Based on “sink tree” argument Goals that can be expressed additively May not work for complicated policies Copyright Rudra Dutta, NCSU, Fall, 2010
14
“Flow” Routing Source-destination traffic flow is routed
Allows Traffic Engineering Balance load Split for policy purposes Can form “fish network” Other possibilities: split routing Copyright Rudra Dutta, NCSU, Fall, 2010
15
Finding Shortest Paths
An example where a graph-theoretic abstraction is useful Abstract networking into vertices and arcs Weighted arcs – least cost approach Dijkstra’s algorithm Finds least cost path to all vertices from one Based on moving vertices from a set with “tentative” distances to a set with “fixed” distances Desirable computational properties Other algorithms exist Useful for additive measures of path cost “Shortest” is better understood as “least additive cost” Copyright Rudra Dutta, NCSU, Fall, 2010
16
Dijkstra’s Algorithm 7 µ µ µ µ µ µ µ 3 µ µ µ 5 7 µ 6 µ 4 4 3 3 µ µ 4 4
2 7 2 5 5 3 1 3 1 3 2 2 5 1 5 8 1 8 5 7 6 5 5 7 2 7 2 5 5 3 1 4 3 1 4 3 3 2 2 5 1 5 8 1 8 4 4 Copyright Rudra Dutta, NCSU, Fall, 2010
17
How to Find Arc Costs? Must know arc costs to neighbors
Depending on cost metric, may be possible to measure Beyond that, may trust neighbors’ claims Local, do not have full picture of network Cannot run Dijkstra or equivalent Or may attempt to exchange local information Full model of network can be built Either way, routing information must be exchanged Bootstrapping problem - solved by flooding The exchange mechanism is a distributed algorithm, and often becomes known as a “routing method” Actually, a “dynamic routing protocol” More correctly, a “dynamic routing enablement protocol” Copyright Rudra Dutta, NCSU, Fall, 2010
18
Distance Vector (DV) “Routing”
Asynchronous, iterative distributed computation exchange of routing information: (destination, min_distance) exchange info with neighbors only computation step: based on Bellman-Ford method Find for each destination cost of least cost path next node (neighbor) on least cost path (not complete path) Routers do not store or compute the network topology; they only store distance / next hop information Used by many protocols: RIP, BGP, ISO IDRP, Novel IPX Advertise distances to route prefixes (networks, subnets, hosts), not routers Copyright Rudra Dutta, NCSU, Fall, 2010
19
Hey, I can get you there for $8!
Bellman's Equation 7 3 I can get you to for $10 Hey, I can get you there for $8! Copyright Rudra Dutta, NCSU, Fall, 2010
20
Distance-Vector Algorithm (Each Router)
Start with a distance vector consisting of the value "0" for itself "infinity" for every other destination Transmit its distance vector to each of its neighbors when the link to the neighbor first comes up whenever the information changes triggered updates periodically (even if there are no changes) Saves the most recent distance vector from each neighbor Calculates its own distance vector using Bellman's equation Copyright Rudra Dutta, NCSU, Fall, 2010
21
DV Routing Example Copyright Rudra Dutta, NCSU, Fall, 2010
22
DV Routing Example (cont'd)
Copyright Rudra Dutta, NCSU, Fall, 2010
23
DV Routing Example (cont'd)
Copyright Rudra Dutta, NCSU, Fall, 2010
24
DV Routing Example (cont'd)
Copyright Rudra Dutta, NCSU, Fall, 2010
25
DV Routing (cont'd) Events causing recalculation of the distance vector receive from a neighbor a distance vector containing new info when link goes down discard / disregard distance vector from the neighbor on the other end of that link how determine link / neighbor is down? how long does it take to determine this? Copyright Rudra Dutta, NCSU, Fall, 2010
26
Properties and Problems
DV algorithm eventually will converge on shortest paths as long as state of the links / routers remains stable no requirement for updates to be synchronized During convergence, non-shortest paths and loops may develop "good news travels fast, bad news travels slowly" count-to-infinity problem Copyright Rudra Dutta, NCSU, Fall, 2010
27
DV Routing Example -- Link Failure
Copyright Rudra Dutta, NCSU, Fall, 2010
28
The Count-to-Infinity Problem
“Good news” – availability of a link / router “Bad news” – failure of a link / router Copyright Rudra Dutta, NCSU, Fall, 2010
29
Link State Protocols Each router distributes information it has to every other router Information is in the form of LSA’s (myID, neighborID, link cost) Distribution is by controlled flooding Distribute along each link but receiving one Now, each router has complete information OSPF is a prevalent example SPF with LSA to find arc costs Copyright Rudra Dutta, NCSU, Fall, 2010
30
LSA Routing Algorithm Each router does the following
“Meets the (immediately adjacent) neighbors” and learns their IDs Builds an LSA containing IDs and distance to each of its neighbors Transmits the LSA to all other routers How? Most complex and critical piece of link-state routing algorithm Stores the most recent LSA from every other router in the network Not just from its immediate neighbors! Creates a “map” of the network topology from LSAs Computes routes (to store in forwarding table) from its local map of the topology Copyright Rudra Dutta, NCSU, Fall, 2010
31
Generating LSAs A router generates LSAs periodically background refresh rate A router also generates LSAs when its local environment changes it has a new neighbor (router comes online) a link goes down (indicated by absence of "Hello" packets) the cost of a link to an existing neighbor has changed Limiting the overhead (network bandwidth) consumed by routing messages, particularly LSAs set a minimum interval between successive updates Copyright Rudra Dutta, NCSU, Fall, 2010
32
Forwarding LSAs Flooding except to transmitting neighbor
Infinite number of packets Hop-limited would still result in exponential number of packets LSA flooding can use information in LSA Each router stores the most recent copy of LSAs from all routers easy to recognize duplicate LSAs Each router floods an LSA only once an LSA will travel over each link of the network exactly once generally, O (n) packets propagated Actually, could be more (simultaneity) Copyright Rudra Dutta, NCSU, Fall, 2010
33
LSA Forwarding Router A below transmits its LSA across the network shown below, using LSA Flooding. In one flooding “step” an LSA can be transmitted to any and all adjacent neighbors. Over what links is the LSA flooded in step #1? In step #2? Continue answering this question until the final step, whatever that is. Issue of simultaneity becomes clear when doing this example . A B D E F C Copyright Rudra Dutta, NCSU, Fall, 2010
34
Why DV / LSA ? Loop-freeness in LSA “Local” character of DV
But not impossible to attain in DV “Local” character of DV Less overhead, storage But does not scale well Luckily, advantages are in different zones Small scale and simplicity – DV Large scale and optimality – LSA Copyright Rudra Dutta, NCSU, Fall, 2010
35
Hierarchical Routing Divide and conquer
Group destinations into logical localities Break routing into two phases Between groups Groups may not be directly connected Inside a group For both phases, use some other strategy Can be generalized into more levels Application in Ad Hoc routing Copyright Rudra Dutta, NCSU, Fall, 2010
36
Broadcast Routing Destination is “all hosts”, not a single one
Special case of multicasting Flooding is obvious choice for distributing to networks But assumes each networks has “broadcast” semantics Otherwise need to unicast to each host, impractical Multidestination routing Replicate only when necessary Spanning tree of routers Flood on spanning tree routers Copyright Rudra Dutta, NCSU, Fall, 2010
37
Spanning Tree Tree - a connected graph with no cycles
Spanning tree - a subgraph of original graph that is a tree and included every node Must have exactly N-1 links Efficient broadcast Copyright Rudra Dutta, NCSU, Fall, 2010
38
Broadcast – Reverse Path Forwarding
An attempt to obtain the benefits of a spanning tree with no extra information or overhead With tree, when a broadcast packet arrives It is from either from the “parent” Must be forwarded to all “children” Like flooding – all interfaces except the one packet came in over Or from a “child” Must be discarded, to avoid duplication But how to establish parent-child relation without overhead of forming spanning tree? Use sink tree for the source “If this packet originates at A, comes to me through X” Forward if X is my next-hop router to A (to all neighbors except X) Otherwise discard Copyright Rudra Dutta, NCSU, Fall, 2010
39
Multi-level Forwarding
Special case of Generalized Protocol Layering “Links” of one network are really “paths” of a different one “Virtual” or “logical” links Can occur on multiple levels Virtual links may be instantiated by physical layer Optical networks: “lightpaths” Wireless networks: recent approaches using OFDM Or may be instantiated as “virtual” circuits Different networking layers at different levels may have differing routing strategies/goals May be “obviously sub-optimal” when viewed globally Copyright Rudra Dutta, NCSU, Fall, 2010
40
Summary Network layer allows separate physical networks to cooperate
Context may or may not be utilized to minimize forwarding effort Dual concerns of forwarding and routing Various fundamental approaches to routing Real strategies can be designed from combination of these approaches Copyright Rudra Dutta, NCSU, Fall, 2010
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.