CSE 30264 Computer Networks Prof. Aaron Striegel Department of Computer Science & Engineering University of Notre Dame Lecture 12 – February 18, 2010.

Slides:



Advertisements
Similar presentations
CSCI-1680 Network Layer: Intra-domain Routing Based partly on lecture notes by David Mazières, Phil Levis, John Jannotti Rodrigo Fonseca.
Advertisements

COS 461 Fall 1997 Routing COS 461 Fall 1997 Typical Structure.
Courtesy: Nick McKeown, Stanford
CSE Computer Networks Prof. Aaron Striegel Department of Computer Science & Engineering University of Notre Dame Lecture 11 – February 16, 2010.
Dynamic routing Routing Algorithm (Dijkstra / Bellman-Ford) – idealization –All routers are identical –Network is flat. Not true in Practice Hierarchical.
Spring 2003CS 4611 Routing Outline Algorithms Scalability.
1 Routing Distance Vector Routing Link State Routing Hierarchical Routing Routing for Mobile Hosts Subnetting Classless Inter-Domain Routing (Supernet)
CMPE 150- Introduction to Computer Networks 1 CMPE 150 Fall 2005 Lecture 22 Introduction to Computer Networks.
1 ELEN 602 Lecture 19 Routing. 2 Overview Forwarding vs Routing –forwarding: to select an output port based on destination address and routing table –routing:
Routing.
COS 420 Day 17. Agenda Finished Grading Individualized Projects Very large disparity in student grading No two students had same ranking for other students.
Subnetting and CIDR Textbook Ch 3.2.5
Spring 2002CS 4611 Routing Outline Algorithms Scalability.
1 ECE453 – Introduction to Computer Networks Lecture 10 – Network Layer (Routing II)
CSS 432: Subnetting, CIDR, and Global Internet
CS 6401 Efficient Addressing Outline Addressing Subnetting Supernetting.
Inter-domain Routing Outline Border Gateway Protocol.
Dr. John P. Abraham Professor University of Texas Pan American Internet Routing and Routing Protocols.
1 Computer Communication & Networks Lecture 22 Network Layer: Delivery, Forwarding, Routing (contd.)
13-Sep-154/598N: Computer Networks Address Translation Map IP addresses into physical addresses –destination host –next hop router Techniques –encode physical.
1 Routing Outline Algorithms Scalability. 2 Overview Forwarding vs Routing –forwarding: to select an output port based on destination address and routing.
Routing/Routed Protocols. Remember: A Routed Protocol – defines logical addressing. Most notable example on the test – IP A Routing Protocol – fills the.
Spring 2008CS 3321 Intradomain Routing Outline Algorithms Scalability.
Introduction to BGP.
1 Introduction to Computer Networks Ilam University By: Dr. Mozafar Bag-Mohammadi Routing.
Univ. of TehranIntroduction to Computer Network1 An Introduction Computer Networks An Introduction to Computer Networks University of Tehran Dept. of EE.
Routing protocols Basic Routing Routing Information Protocol (RIP) Open Shortest Path First (OSPF)
Efficient Addressing Outline Addressing Subnetting Supernetting CS 640.
1 Routing Distance Vector Routing Link State Routing Hierarchical Routing Routing for Mobile Hosts.
1 Routing Outline Algorithms Scalability. 2 Overview Forwarding vs Routing –forwarding: to select an output port based on destination address and routing.
1 Introduction to Computer Networks University of Ilam By: Dr. Mozafar Bag-Mohammadi Routing.
Interior Gateway Protocol. Introduction An IGP (Interior Gateway Protocol) is a protocol for exchanging routing information between gateways (hosts with.
14-Oct-154/598N: Computer Networks Internet Structure - Past NSFNET backbone Stanford BARRNET regional Berkeley PARC NCAR UA UNM Westnet regional UNL KU.
1 Internet Routing. 2 Terminology Forwarding –Refers to datagram transfer –Performed by host or router –Uses routing table Routing –Refers to propagation.
CSS 432: Routing 1 CSS432 Routing Textbook Ch3.3 Professor: Munehiro Fukuda.
TCOM 509 – Internet Protocols (TCP/IP) Lecture 06_a Routing Protocols: RIP, OSPF, BGP Instructor: Dr. Li-Chuan Chen Date: 10/06/2003 Based in part upon.
Lecture 17 November 8Intra-domain routing November 13Internet routing 1 November 15Internet routing 2 November 20End-to-end protocols 1 November 22End-to-end.
1 Introduction to Computer Networks University of Ilam By: Dr. Mozafar Bag-Mohammadi Routing.
Spring 2006CS 3321 Intradomain Routing Outline Algorithms Scalability.
Routing and Routing Protocols
1 Computer Communication & Networks Lecture 21 Network Layer: Delivery, Forwarding, Routing Waleed.
23-Dec-154/598N: Computer Networks Overview 4.2: Routing Forwarding vs Routing –forwarding: to select an output port based on destination address and routing.
Dynamic Routing Protocols II OSPF
Spring 2010CS 3321 Interdomain Routing. Spring 2010CS 3322 How to Make Routing Scale Flat versus Hierarchical Addresses Inefficient use of Hierarchical.
Spring 2000CS 4611 Routing Outline Algorithms Scalability.
1 Forwarding vs. Routing Forwarding vs Routing –forwarding: To select an output port based on destination address and routing table –routing: Process by.
Spring 2006CS 3321 Interdomain Routing. Spring 2006CS 3322 How to Make Routing Scale Flat versus Hierarchical Addresses Inefficient use of Hierarchical.
1 Chapter 4: Internetworking (IP Routing) Dr. Rocky K. C. Chang 16 March 2004.
Chapter 25 Internet Routing. Static Routing manually configured routes that do not change Used by hosts whose routing table contains one static route.
Spring Routing: Part I Section 4.2 Outline Algorithms Scalability.
Spring 2008CPE Computer Networks1 Routing: Part II Outline Algorithms Scalability Reading: Section 4.3.
Inter-domain Routing Outline Border Gateway Protocol.
CS 6401 Intra-domain Routing Outline Introduction to Routing Distance Vector Algorithm.
1 CS716 Advanced Computer Networks By Dr. Amir Qayyum.
1 CS716 Advanced Computer Networks By Dr. Amir Qayyum.
CSS432 Subnetting and CIDR Textbook Ch3. 2
TRANSPORT LAYER BY, Parthasarathy.g.
Dynamic Routing Protocols II OSPF
Routing BY, P.B.SHANMATHI.
Routing and Switching Fabrics
Dynamic routing Routing Algorithm (Dijkstra / Bellman-Ford) – idealization All routers are identical Network is flat. Not true in Practice Hierarchical.
Each mobile node has a home network, home address and home agent
Intradomain Routing Outline Introduction to Routing
Inter-domain Routing Outline Homework #3 solutions
Introduction to Computer Networks
2. Fragmentation and Reassembly
Advanced Computer Networks
Routing Outline Algorithms Scalability Spring 2003 CS 332.
Routing and Switching Fabrics
Presentation transcript:

CSE Computer Networks Prof. Aaron Striegel Department of Computer Science & Engineering University of Notre Dame Lecture 12 – February 18, 2010

Today’s Lecture Routing –Distance Vector –Link State Global Routing Spring 2010CSE Physical Data Network Transport Application

Spring 2009CSE Routing (Revisited) Outline Distance Vector Link State

Spring 2009CSE Overview Forwarding vs Routing –Forwarding: to select an output port based on destination address and routing table –Routing: process by which routing table is built Network as a Graph Problem: Find lowest cost path between two nodes –How much do you know? Distance vector: Just my neighbors and who they can reach Link state: Everything on my network

Spring 2009CSE Distance Vector Each node maintains a set of triples –(Destination, Cost, NextHop) DestinationCostNext Hop A0Local B2E C7B D2E.. Exchange the vector (the table) of my current routing information

Routing Revisited Spring 2010CSE A F E B C D

Time t=0, Start Time Spring 2010CSE A F E B C D Perspective of A A’s Routing Table A C=0 NH: * Assume know our neighbors and link cost B C=3 NH: B E C=1 NH: E F C=6 NH: F

Symmetry Spring 2010CSE A B 3 A B 3 3 Cost in either direction is the same

A sends to its neighbors Spring 2010CSE A C=0 NH: Me B C=3 NH: B E C=1 NH: E F C=6 NH: F Routing Table Vector of reachability B,3 E,1 F,1 Send this to our neighbors A F E B

E broadcasts to its neighbors Spring 2010CSE A F E B C D A,1 B,1 D,1 F,2 Distance Vector Vector = Here is my best cost to get to these locations if you come through me

Gather round…. Send our distance vector –Cost to reach nodes through us –Two ways Cost in the vector Let external node put in cost When we receive a DV –Are any routes better than our own? –Could we take the cost of using that link and navigate via that node? Spring 2010CSE

What happens at A? Spring 2010CSE A F E B C D Perspective of A A’s Routing Table A C=0 NH: * B C=3 NH: B E C=1 NH: E F C=6 NH: F A,1 B,1 D,1 F,2 DV from E That’s us, duh Compare new vs. current 3 vs. 1+1 via E Inf vs. 1+1 via E 6 vs. 1+2 via E

What happens at A? Spring 2010CSE A F E B C D Perspective of A A’s Routing Table A C=0 NH: * B C=3 NH: B E C=1 NH: E F C=6 NH: F A C=0 NH: * B C=2 NH: E E C=1 NH: E F C=3 NH: E D C=E NH: E

Convergence –Stop when no more changes –Non-convergence bad We’ll see that in a moment How? –Only send on change of local table –Stop seeing bcast, stop Spring 2010CSE

Spring 2009CSE Routing Loops Example 1 –F detects that link to G has failed –F sets distance to G to infinity and sends update t o A –A sets distance to G to infinity since it uses F to reach G –A receives periodic update from C with 2-hop path to G –A sets distance to G to 3 and sends update to F –F decides it can reach G in 4 hops via A Example 2 –link from A to E fails –A advertises distance of infinity to E –B and C advertise a distance of 2 to E –B decides it can reach E in 3 hops; advertises this to A –A decides it can read E in 4 hops; advertises this to C –C decides that it can reach E in 5 hops… Count to Infinity Problem

Spring 2010CSE Loop- Breaking Heuristics Set infinity to 16 Split horizon Split horizon with poison reverse

Is DV used? Yes –RIP – Routing Information Protocol –BGP – Border Gateway Protocol* Sort of, BGP is kind of a hybrid –Various mobile routing protocols Spring 2010CSE

Spring 2009CSE Routing Information Protocol (RIP) Distributed along with BSD Unix Straightforward implementation of DV Updates sent every 30 seconds Link costs constant at 1 (16 = infinity)

Spring 2009CSE Link State Strategy –Two-fold Exchange HELLO msgs with neighbors Broadcast changes to all of neighbor state Link State Packet (LSP) –ID of the node that created the LSP –Cost of link –Sequence number –TTL

Spring 2009CSE Link State (cont) Changes  Reliably flood –store most recent LSP from each node –forward LSP to all nodes but one that sent it –generate new LSP periodically increment SEQNO –start SEQNO at 0 when reboot –decrement TTL of each LSP discard when TTL=0

Spring 2010CSE Flooding

Spring 2009CSE Route Calculation Dijkstra’s shortest-path algorithm Let –N denotes set of nodes in the graph –l (i, j) denotes non-negative cost (weight) for edge (i, j) –s denotes this node –M denotes the set of nodes incorporated so far –C(n) denotes cost of the path from s to node n M = {s} for each n in N - {s} C(n) = l(s, n) while (N != M) M = M union {w} such that C(w) is the minimum for all w in (N - M) for each n in (N - M) C(n) = MIN(C(n), C (w) + l(w, n ))

Link State Example Spring 2010CSE A F E B C D Assume that A gets updates from everyone else via reliably flooded updates, i.e. A knows the topology of the graph

Link State Example Spring 2010CSE A F,* E,* B,* C,* D,* Step 0: Set everyone’s weight to infinity Add ourselves as the lowest cost node

Link State Example Spring 2010CSE A F,* E,* B,* C,* D,* Lowest cost total reachable cost  E Who has the lowest total reachable cost from our covered net?

E wins, add it to our covered graph Spring 2010CSE A F,* E,1 B,* C,* D,* Lowest cost total reachable cost  B or D tied at 2 Who has the lowest total reachable cost from our covered net?

B wins, add it to our covered graph Spring 2010CSE A F,* E,1 B,2 C,* D,* Lowest cost total reachable cost  D at 2 Who has the lowest total reachable cost from our covered net?

D wins, add it to our covered graph Spring 2010CSE A F,* E,1 B,2 C,* D, Lowest cost total reachable cost  F with a cost of 3 Who has the lowest total reachable cost from our covered net?

F wins, add it to our covered graph Spring 2010CSE A F,3 E,1 B,2 C,* D, Lowest cost total reachable cost  C with a cost of 6 Who has the lowest total reachable cost from our covered net?

C wins, all done Spring 2010CSE A F,3 E,1 B,2 C,6 D,

What does it mean? Spring 2010CSE A F,3 E,1 B,2 C,6 D, TargetNext Hop BE CE DE EE FE

Spring 2009CSE OSPF Open Shortest Path First Protocol Authentication Additional hierarchy Load balancing Quintessential link state protocol

Spring 2009CSE Metrics Original ARPANET metric –measures number of packets queued on each link –took neither latency or bandwidth into consideration New ARPANET metric –stamp each incoming packet with its arrival time ( AT ) –record departure time ( DT ) –when link-level ACK arrives, compute Delay = (DT - AT) + Transmit + Latency –if timeout, reset DT to departure time for retransmission –link cost = average delay over some time period Revised ARPANET metric –compressed dynamic range –replaced Delay with link utilization Practice –static metrics (e.g., 1/bandwidth) Why might variable weights be bad?

Spring 2009CSE Global Internet Outline Subnetting Supernetting

Spring 2009CSE How to Make Routing Scale Flat versus Hierarchical Addresses Inefficient use of Hierarchical Address Space –Class C with 2 hosts (2/254 = 0.78% efficient) –Class B with 256 hosts (256/65534 = 0.39% efficient) Too many networks –Routing tables do not scale –Route propagation protocols do not scale Current routers – IPv4 – core  160k entries

Spring 2009CSE Internet Structure Recent Past NSFNET backbone Stanford BARRNET regional Berkeley PARC NCAR UA UNM Westnet regional UNL KU ISU MidNet regional ■ ■ ■

Spring 2010CSE Internet Structure Today Backbone service provider Peering point Peering point Large corporation Small corporation “Consumer” ISP “Consumer” ISP “Consumer” ISP

Abilene – aka Internet 2 Spring 2010CSE

Spring 2009CSE Subnetting Add another level to address/routing hierarchy: subnet Subnet masks define variable partition of host part Subnets visible only within site

Spring 2009CSE Forwarding Algorithm D = destination IP address for each entry (SubnetNum, SubnetMask, NextHop) D1 = SubnetMask & D if D1 = SubnetNum if NextHop is an interface deliver datagram directly to D else deliver datagram to NextHop Use a default router if nothing matches Not necessary for all 1s in subnet mask to be contiguous –More likely than not, it will be Can put multiple subnets on one physical network Subnets not visible from the rest of the Internet

Spring 2009CSE Supernetting Assign block of contiguous network numbers to nearby networks Called CIDR: Classless Inter-Domain Routing Represent blocks with a single pair (first_network_address, count) Restrict block sizes to powers of 2 Use a bit mask (CIDR mask) to identify block size All routers must understand CIDR addressing

Spring 2010CSE CIDR Border gateway (advertises path to ) Regional network Corporation X ( ) Corporation Y ( ) Instead of advertising two networks upstream, just advertise one

Spring 2009CSE Route Propagation Know a smarter router –hosts know local router –local routers know site routers –site routers know core router –core routers know everything Autonomous System (AS) –corresponds to an administrative domain –examples: University, company, backbone network –assign each AS a 16-bit number Two-level route propagation hierarchy –interior gateway protocol (each AS selects its own) –exterior gateway protocol (Internet-wide standard)

Spring 2009CSE Inter-Domain/Intra-Domain Edge router Core router

Spring 2009CSE Popular Interior Gateway Protocols RIP: Route Information Protocol –developed for XNS –distributed with Unix –distance-vector algorithm –based on hop-count OSPF: Open Shortest Path First –recent Internet standard –uses link-state algorithm –supports load balancing –supports authentication

Spring 2009CSE EGP: Exterior Gateway Protocol Overview –designed for tree-structured Internet –concerned with reachability, not optimal routes Protocol messages –Neighbor acquisition: one router requests that another be its peer; peers exchange reachability information –Neighbor reachability: one router periodically tests if the another is still reachable; exchange HELLO/ACK messages; uses a k-out-of-n rule –Routing updates: peers periodically exchange their routing tables (distance-vector)

Spring 2009CSE BGP-4: Border Gateway Protocol AS Types –Stub AS: has a single connection to one other AS carries local traffic only –Multihomed AS: has connections to more than one AS refuses to carry transit traffic –Transit AS: has connections to more than one AS carries both transit and local traffic Each AS has: –one or more border routers –one BGP speaker that advertises: local networks other reachable networks (transit AS only) gives path information

Spring 2009CSE Multi-Backbone Internet Backbone service provider Peering point Peering point Large corporation Small corporation “Consumer” ISP “Consumer” ISP “Consumer” ISP

Spring 2009CSE BGP Example Speaker for AS2 advertises reachability to P and Q –network , , , and , can be reached directly from AS2 Speaker for backbone advertises –networks , , , and can be reached along the path (AS1, AS2). Speaker can cancel previously advertised paths Regional provider A (AS 2) Regional provider B (AS 3) Customer P (AS 4) Customer Q (AS 5) Customer R (AS 6) Customer S (AS 7) Backbone network (AS 1)

Spring 2009CSE IP Version 6 Features –128-bit addresses (classless) –multicast –real-time service –authentication and security –autoconfiguration –end-to-end fragmentation –protocol extensions Header –40-byte “base” header –extension headers (fixed order, mostly fixed length) fragmentation source routing authentication and security other options

Spring 2009CSE Addresses 125-m-n-o-pponm3 SubscriberIDProviderIDRegistryID010InterfaceIDSubnetID