Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley

Similar documents
Intra-AS Routing. Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley.

Interplay between routing, forwarding

CMPE 150/L : Introduction to Computer Networks. Chen Qian Computer Engineering UCSC Baskin Engineering Lecture 14

Network Layer: Routing

Chapter 4: Network Layer

Computer Networks. Instructor: Niklas Carlsson

Network Layer: Control Plane 5-2

Chapter IV: Network Layer

CS 457 Networking and the Internet. Shortest-Path Problem. Dijkstra s Shortest-Path Algorithm 9/29/16. Fall 2016

Chapter 4: Network Layer: Part II

Chapter 4 Network Layer

Computer Networking Introduction

Agenda. distance-vector (what you invented last Friday) hierarchical routing routing in the Internet. v DNS assignment Q&A v Routing Algorithms

Chapter 5 Network Layer: The Control Plane

Last time. Transitioning to IPv6. Routing. Tunneling. Gateways. Graph abstraction. Link-state routing. Distance-vector routing. Dijkstra's Algorithm

Chapter 4: outline. Network Layer 4-1

Chapter 4: Network Layer

Chapter 4: Network Layer, partb

Chapter 4: Network Layer. Lecture 12 Internet Routing Protocols. Chapter goals: understand principles behind network layer services:

11/13/2017 Network Layer (SSL) Network-layer functions. Recall the two network-layer functions:

Internet rou)ng. V. Arun CS491G: Computer Networking Lab University of MassachuseFs Amherst

CSCE 463/612 Networks and Distributed Processing Spring 2018

Chapter 4: outline. 4.5 routing algorithms link state distance vector hierarchical routing. 4.6 routing in the Internet RIP OSPF BGP

Chapter 4 Network Layer

Chapter 5: Network Layer Control Plane. understand principles behind network control plane : traditional routing algorithms

CS 3516: Advanced Computer Networks

Chapter 4 Network Layer. Network Layer 4-1

CSc 450/550 Computer Networks Internet Routing

Topics for This Week

CSCD 330 Network Programming Spring 2018

CS 3516: Advanced Computer Networks

CSCD 330 Network Programming Spring 2017

Initial motivation: 32-bit address space soon to be completely allocated. Additional motivation:

Internet Protocol: Routing Algorithms. Srinidhi Varadarajan

Announcements. CS 5565 Network Architecture and Protocols. Project 2B. Project 2B. Project 2B: Under the hood. Routing Algorithms

Chapter IV: Network Layer

Course on Computer Communication and Networks. Lecture 7 Network Layer, Chapter 4 (6/e) - Part B (7/e Ch5)

DATA COMMUNICATOIN NETWORKING

Routing Algorithm Classification. A Link-State Routing Algorithm

CSC 401 Data and Computer Communications Networks

CSC 4900 Computer Networks: Routing Protocols

Hierarchical Routing. Our routing study thus far - idealization all routers identical network flat not true in practice

Inter-AS routing. Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley

Routing in the Internet

Network Routing. Packet Routing, Routing Algorithms, Routers, Router Architecture

Computer Networking. Rou1ng Algorithms. Rou1ng Algorithms. Interplay between rou1ng, forwarding. routing algorithm

CSC 4900 Computer Networks: Routing Algorithms

CS555, Spring /5/2005. April 12, 2005 No classes attend Senior Design Projects conference. Chapter 4 roadmap. Internet AS Hierarchy

Lecture 4. The Network Layer (cont d)

Chapter 4: Network Layer. TDTS06 Computer networks. Subnets. Subnets. Subnets. IP Addressing: introduction

Network layer: Overview. Network layer functions Routing IP Forwarding

Chapter 4: Network Layer

EC441 Fall 2018 Introduction to Computer Networking Chapter 5: Network Layer Control Plane

Chapter 4 Network Layer

CSC 8560 Computer Networks: Control Plane

CMPE 150/L : Introduction to Computer Networks. Chen Qian Computer Engineering UCSC Baskin Engineering Lecture 13

Link-State Routing OSPF

Chapter 4: Network Layer. Chapter 4 Network Layer. Chapter 4: Network Layer. Network Layer. Chapter goals:

DATA COMMUNICATOIN NETWORKING

Computer Networking. Intra-Domain Routing. RIP (Routing Information Protocol) & OSPF (Open Shortest Path First)

Lecture 9. Network Layer (cont d) Network Layer 1-1

ELEC / COMP 177 Fall Some slides from Kurose and Ross, Computer Networking, 5 th Edition

Link State Rou.ng Reading: Sec.ons 4.2 and 4.3.4

Chapter 4: outline. 4.5 routing algorithms link state distance vector hierarchical routing. 4.6 routing in the Internet RIP OSPF BGP

Network Layer: Routing

Routing Unicast routing protocols

Network Layer: Routing. Routing. Routing protocol. Graph abstraction for routing algorithms: graph nodes are routers graph edges are physical links

Initial motivation: 32-bit address space soon to be completely allocated. Additional motivation:

Routing. Jens A Andersson Communication Systems

Module 3 Network Layer CS755! 3-1!

Announcements. CS 5565 Network Architecture and Protocols. Project 2B. Project 2B. Project 2B: Under the hood. Routing Algorithms

EE 122: Intra-domain routing

Lecture 5 The Network Layer part II. Antonio Cianfrani DIET Department Networking Group netlab.uniroma1.it

Overview. Problem: Find lowest cost path between two nodes Factors static: topology dynamic: load

Routing. Outline. Algorithms Scalability

Lecture 4 The Network Layer. Antonio Cianfrani DIET Department Networking Group netlab.uniroma1.it

Announcements. CS 5565 Network Architecture and Protocols. Count-To-Infinity. Poisoned Reverse. Distance Vector: Link Cost Changes.

Network layer: Overview. Network layer functions Routing IP Forwarding

CSCI Topics: Internet Programming Fall 2008

Network layer. Network Layer 4-1. application transport network data link physical. network data link physical. network data link physical

CS 43: Computer Networks Internet Routing. Kevin Webb Swarthmore College November 14, 2013

5.1 introduction 5.5 The SDN control 5.2 routing protocols plane. Control Message 5.3 intra-as routing in Protocol the Internet

Lecture 19: Network Layer Routing in the Internet

Basic Idea. Routing. Example. Routing by the Network

Protocoles et Interconnexions

Routing by the Network

CMPE 80N: Introduction to Networking and the Internet. Katia Obraczka Computer Engineering UCSC Baskin Engineering Lecture 20

CS118 Discussion Week 7. Taqi

Graph abstraction: costs. Graph abstraction 10/26/2018. Interplay between routing and forwarding

CSCE 463/612 Networks and Distributed Processing Spring 2017

ETSF05/ETSF10 Internet Protocols. Routing on the Internet

COMP/ELEC 429/556 Introduction to Computer Networks

ETSF05/ETSF10 Internet Protocols Routing on the Internet

Data Communications & Networks. Session 7 Main Theme Networks: Part II Circuit Switching, Packet Switching, The Network Layer

Overview 4.2: Routing

4.5.2 The Distance-Vector (DV) Routing Algorithm

Module 8. Routing. Version 2 ECE, IIT Kharagpur

Dynamic Routing. The Protocols

Lecture 12. Introduction to IP Routing. Why introduction? Routing

CompSci 356: Computer Network Architectures. Lecture 13: Dynamic routing protocols: Link State Chapter 3.3.3, Xiaowei Yang

Transcription:

Intra- AS Rou-ng h0p://kcd.com/85/ Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesle Some materials copright 1996-2012 J.F Kurose and K.W. Ross, All Rights Reserved

Chapter 4: outline 4.1 Introduc-on 4.2 Virtual circuit and datagram networks 4.3 What's inside a router 4.4 IP: Internet Protocol Datagram format IPv4 addressing Network Address Transla-on (NAT) DHCP ICMP IPv6 IPsec 4.5 Rou-ng algorithms Distance vector Link state Hierarchical rou-ng 4.6 Rou-ng in the Internet RIP OSPF BGP 4.7 Broadcast and mul-cast rou-ng 2

Autonomous Sstem (AS) Autonomous Sstem (AS) Dis-nct region of admin control Routers/links managed b a single ins-tu-on Each AS can decide how to route within their AS Toda: Intra- AS rou-ng Net -me: Inter- AS rou-ng 3

Nodes: Network as a graph Hosts, switches, routers, networks Edges: Network links Ma have an associated cost Basic problems: Learning the topolog Finding lowest cost path 4

Distributed algorithm Rou-ng protocols Running on man devices No central authorit Must deal with changing topolog Classes of rou-ng algorithms: Distance vector rou-ng Link state rou-ng Path vector (hierarchical) rou-ng Toda's lecture: Intra- AS rou-ng Rou-ng within an AS, an interior gatewa protocol 5

Distance vector rou-ng Each node maintains state Cost of direct link to each of our neighbors Least cost route known to all des-na-ons Routers send periodic updates Send neighbor our arra When ou receive an update from our neighbor Update arra entries if new info provides shorter route Converges quickl (if no topolog changes) 6

node table from cost to 0 2 7 D () = min{c(,) + D (), c(,) + D ()} = min{2+0, 7+1} = 2 from 0 cost to 2 2 0 1 7 1 0 3 D () = min{c(,) + D (), c(,) + D ()} = min{2+1, 7+0} = 3 node table from cost to 2 0 1 2 7 1 node table from cost to 7 1 0 -me 7

node table from node table from cost to 0 2 7 cost to 2 0 1 D () = min{c(,) + D (), c(,) + D ()} = min{2+0, 7+1} = 2 from from 0 cost to 2 2 0 1 7 1 0 cost to 0 2 7 2 0 1 7 1 0 3 from from cost to 0 2 3 2 0 1 3 1 0 cost to 0 2 3 2 0 1 3 1 0 D () = min{c(,) + D (), c(,) + D ()} = min{2+1, 7+0} = 3 2 7 1 node table from cost to 7 1 0 from cost to 0 2 7 2 0 1 3 1 0 from cost to 0 2 3 2 0 1 3 1 0 -me 8

Distance vector updates Periodic updates Automa-call send update ever so ogen Lets other nodes know ou are alive Triggered updates Wait for (change in local link cost or update from neighbor) Recompute estimates If distance to an destination has changed, notif neighbors 9

Link cost change What if link added or cost reduced? Update propagates from point of change Network with longest path of N hops: N echanges, everone knows of new/improved link "Good news travels fast" Link cost = number of hops Node A iniball not reachable and then becomes reachable. 10

Link cost change What if link deleted or cost increased? Problem: Neighbor has a path somewhere, but ou don't know if it goes through ou Count to infinit problem "Bad news travels slow" Link cost = number of hops Node A iniball reachable and then becomes unreachable. 11

Various was to "fi": Count- to- infinit Use a small values for infinit, e.g. 16 Limits network sie to 15 hops Split horion with poisoned reverse Track where ou learned the route e.g. (E, 2, A), I learned a cost 2 route to E from A When B updates A, sends (E, ) Onl works for two node rou-ng loops Holddown -mer Start a -mer when a network becomes unreachable Don't update un-l -mer epires 12

RIP Rou-ng Informa-on Protocol (RIP) Distance- vector protocol Used in original ARPANET, in BSD All links costs 1 Adver-se ever 30 seconds Small networks, < 16 hops Runs over UDP u A C B D v w From router A to des-na-on subnets: subnet hops u 1 v 2 w 2 3 3 2 13

RIP: eample w A D B C rou-ng table in router D des6na6on subnet net router # hops to dest w A 2 B 2 B 7 - - 1..... 14

RIP: eample A- to- D adver-sement net hops dest w - 1-1 C 4.... w A D B C rou-ng table in router D des6na6on subnet net router # hops to dest w A 2 B 2 A B 7 5 - - 1..... 15

RIP: link failure, recover No adver-sement in 180 sec - > declared dead Routes via neighbor invalidated New adver-sements sent to neighbors Neighbors in turn send out new adver-sements (if tables changed) Failure info quickl (?) propagates to en-re net Poison reverse used to prevent ping- pong loops (infinite distance = 16 hops) 16

Link state rou-ng Link state rou-ng Each router tracks its immediate links Whether up or down Cost of link Each router broadcasts link state Informa-on disseminated to all nodes Routers have global state from which to compute path e.g. Open Shortest Path First (OSPF) 17

1. Learning about our neighbors Beaconing Find out about our neighbors when ou boot Send periodic "hello" messages to each other Detect a failure ager several missed "hellos" "hello" "good da fine sir" Beacon frequenc is tradeoff: Detec-on speed Bandwidth and CPU overhead Likelihood of false detec-on 18

2. Sepng link costs Assign a link cost for each outbound link Manual configura-on Automa-c Inverse of link bandwidth 1- Gbps cost 1 100- Mbps cost 10 Measure latenc b sending an ECHO packet 19

3. Building link state packets Package info into a Link State Packet (LSP) Iden-t of sender List of neighbors Sequence number of packet Age of packet 20

Flooding 4. Distribu-ng link state Send our LSP out on all links Net node sends LSP onward using its links Ecept for link it arrived on a) LSP arrives at node X b) X floods LSP to A and C c) A and C flood LSP to B (but not X) d) flooding complete 21

4. Distribu-ng link state Making flooding reliable Use acknowledgments and retransmissions between routers Use sequence numbers Discard info from packets older than our current info Time- to- live TTL keeps LSP from being endlessl forwarded When to distribute? Periodic -mer On detected change 22

5. Compu-ng routes Router has accumulated full set of LSPs Construct en-re network graph Shortest path from A to B? Dijkstra's algorithm Net topolog known to all nodes All nodes have same info Computes least cost paths from some source node to all other nodes Gives forwarding table for that node Itera-ve: ager k itera-ons, know least cost path to k dest's NotaBon: v c(,): Link cost from node to ; if not direct neighbors v D(v): Current value of cost of path from source to des-na-on v v p(v): Predecessor node along path from source to v v N': Set of nodes whose least cost path defini-vel known 23

Dijkstra's algorithm 1 Ini$alia$on: 2 N' = {u} 3 for all nodes v 4 if v adjacent to u 5 then D(v) = c(u,v) 6 else D(v) = 7 8 Loop 9 find w not in N' such that D(w) is a minimum 10 add w to N' 11 update D(v) for all v adjacent to w and not in N' : 12 D(v) = min( D(v), D(w) + c(w,v) ) 13 /* new cost to v is either old cost to v or known 14 shortest path cost to w plus cost from w to v */ 15 un$l all nodes in N' 24

Dijkstra's algorithm: eample D(v) p(v) D(w) p(w) D() p() D() p() D() p() Step N' 0 u 7,u 3,u 5,u 1 uw 6,w 5,u 11,w 2 uw 6,w 11,w 14, 3 uwv 10,v 14, 4 uwv 12, 5 uwv 9 Notes: v Construct shortest path tree b tracing predecessor nodes v Ties can eist (can be broken arbitraril) u 5 3 w v 4 8 7 3 7 4 2 25

Step 0 1 2 3 4 5 N' u u u uv uvw uvw D(v),p(v) 2,u 2,u 2,u D(w),p(w) 5,u 4, 3, 3, D(),p() 1,u D(),p() 2, D(),p() 4, 4, 4, u w v 2 2 1 3 1 1 2 5 3 5 Dijkstra's algorithm: another eample 26

Dijkstra's algorithm: another eample Step 0 1 2 3 4 5 N' u u u uv uvw uvw D(v),p(v) 2,u 2,u 2,u D(w),p(w) 5,u 4, 3, 3, D(),p() 1,u D(),p() 2, D(),p() 4, 4, 4, Resul-ng shortest- path tree from u: Resul-ng forwarding table in u: v w des-na-on link u v w (u,v) (u,) (u,) (u,) (u,) 27

Dijkstra's algorithm: discussion Algorithm compleit: n nodes v Each itera-on: need to check all nodes, w, not in N v n(n+1)/2 comparisons: O(n 2 ) v More efficient implementa-ons possible: O(nlogn) OscillaBons possible: v e.g. If link cost equals amount of carried traffic: D A 1 1+e 0 0 0 e B C 1 1 e Ini-all D A 2+e 0 0 1+e 1 C B Given these costs, find new rou-ng. Resul-ng in new costs 0 D A 0 2+e 1 0 0 C 1+e B Given these costs, find new rou-ng. Resul-ng in new costs D A 2+e 0 0 1+e 1 C B Given these costs, find new rou-ng. Resul-ng in new costs 0 28

Detec-on dela Transient disrup-ons Failures are not detected immediatel Router ma forward packet into a "blackhole" Chance depends on frequenc of "hello" messages 3 2 1 1 2 4! 5 1 4 3 29

Transient disrup-ons Inconsistent link- state Some routers know about a failure, others don't Shortest path no longer consistent Can causes transient forwarding loops 3 2 1 1 2 5 4 1 3 2 1 1 2 4 1 4 3 4 3 30

OSPF (Open Shortest Path First) Open: publicl available Uses link state algorithm LS packet dissemina-on Topolog map at each node Route computa-on: Dijkstra's algorithm OSPF adver-sements: One entr per neighbor Flooded to en-re AS Carried in OSPF messages directl over IP IS- IS rou-ng protocol Nearl iden-cal to OSPF 31

OSPF advanced features (not in RIP) Securit: All OSPF messages authen-cated To prevent malicious a0acks Mul-ple same- cost paths allowed Onl one path allowed in RIP Mul-ple link cost metrics for different TOS e.g. Satellite link cost set low for best effort ToS; high for real -me ToS Integrated uni- and mul-cast support: Mul-cast OSPF (MOSPF) uses same topolog data base as OSPF Hierarchical OSPF in large domains 32

Hierarchical OSPF boundar router backbone router area border routers backbone area 3 area 1 area 2 internal routers 33

Two- level hierarch: local area, backbone Link- state adver-sements onl in area Each node has detailed area topolog; onl knows direc-on (shortest path) to nets in other areas Area border routers: Summarie distances to nets in own area, adver-se to other area border routers Backbone routers: Run OSPF rou-ng limited to backbone Boundar routers: Connect to other AS's Hierarchical OSPF 34

Sources of dela: Convergence dela Time to detect failure Time to flood link- state info Shortest path computa-on Crea-ng the forwarding table Before convergence: Lost packets due to blackholes, TTL epir Looping packets Out of order packets Bad for Voice over IP, gaming, video 35

Reducing convergence dela Detect failures faster Increase beacon frequenc Link- laer technologies that can detect failures Faster flooding Flood immediatel on a change LSP sent with high- priorit Faster computa-on Faster processors in routers Faster algorithms e.g. Incremental Dijkstra's Faster forwarding table update e.g. Data structures suppor-ng incremental updates 36

Distance vector vs. Link state Distance vector Knowledge of neighbors' distance to des-na-ons Router has O(# neighbors * # nodes) Link state Knowledge of ever router's links (en-re network graph) Router has O(# edges) Messages onl between neighbors Messages between all nodes Trust a peer's rou-ng computa-on Bellman- Ford algorithm Advantages: Less info has to be stored Lower computa-on overhead Trust a peer's info Do rou-ng ourself Dijkstra's algorithm Advantages: Fast to react to changes h0p://www.merit.edu/mail.archives/nanog/1997-04/msg00444.html 37

Summar Intra- AS rou-ng, two major tpes: Distance vector Router onl know about its neighbors RIP protocol Original protocol on the ARPANET Link state Limited to networks < 16 hops Full state of network known b each router OSPF protocol More advanced features: securit, mul-ple paths, mul-ple cost metrics, rou-ng areas 38