Network Layer, Part 2 Routing. Terminology

Similar documents
ICS 351: Today's plan. distance-vector routing game link-state routing OSPF

Module 8. Routing. Version 2 ECE, IIT Kharagpur

Why dynamic route? (1)

CSCE 463/612 Networks and Distributed Processing Spring 2018

Chapter 22 Network Layer: Delivery, Forwarding, and Routing 22.1

Routing Protocols. Autonomous System (AS)

CS 455 Internet Architecture, Page 3 ffl By 1985, the ARPANET was heavily used and congested; the National Science Foundation (NSF) initiated the NSFN

BTEC Level 3 Extended Diploma

BGP. Daniel Zappala. CS 460 Computer Networking Brigham Young University

COM-208: Computer Networks - Homework 6

CS 43: Computer Networks. 24: Internet Routing November 19, 2018

Link State Routing & Inter-Domain Routing

ICS 351: Today's plan. OSPF BGP Routing in general

CS 43: Computer Networks Internet Routing. Kevin Webb Swarthmore College November 16, 2017

CSCD 433/533 Advanced Networks Spring 2016

Routing. Advanced Computer Networks: Routing 1

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

Top-Down Network Design

! Distance vector routing! Link state routing.! Path vector routing! BGP: Border Gateway Protocol! Route aggregation

Routing Protocols. Technology Description BGP CHAPTER

Routing Protocol. Seiya Tsubone. Apr The University of Tokyo. Seiya Tsubone (The University of Tokyo) Routing Protocol Apr. 25.

Basic Idea. Routing. Example. Routing by the Network

Exercise Sheet 4. Exercise 1 (Routers, Layer-3-Switches, Gateways)

Routing by the Network

Routing(2) Inter-domain Routing

Internet Architecture and Experimentation

Antonio Cianfrani. Routing Protocols

CS 640: Introduction to Computer Networks. Intra-domain routing. Inter-domain Routing: Hierarchy. Aditya Akella

Routing Basics. What is Routing? Routing Components. Path Determination CHAPTER

Routing in the Internet

Unit 3: Dynamic Routing

Inter-domain Routing. Outline. Border Gateway Protocol

Chapter 4: Advanced Internetworking. Networking CS 3470, Section 1

Interplay Between Routing, Forwarding

Department of Computer and IT Engineering University of Kurdistan. Computer Networks II Border Gateway protocol (BGP) By: Dr. Alireza Abdollahpouri

Introduction to OSPF

Routing(2) Inter-domain Routing

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

ROUTING PROTOCOLS. Mario Baldi Routing - 1. see page 2

Routing Overview for Firepower Threat Defense

Solution of Exercise Sheet 4. Exercise 1 (Routers, Layer-3-Switches, Gateways)

Fairness Example: high priority for nearby stations Optimality Efficiency overhead

Important Lessons From Last Lecture Computer Networking. Outline. Routing Review. Routing hierarchy. Internet structure. External BGP (E-BGP)

Routing. Directly Connected IP Networks. Data link layer routing. ifconfig command

Course Routing Classification Properties Routing Protocols 1/39

Lecture 4. The Network Layer (cont d)

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

Chapter 7: Routing Dynamically. Routing & Switching

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

Top-Down Network Design, Ch. 7: Selecting Switching and Routing Protocols. Top-Down Network Design. Selecting Switching and Routing Protocols

Network layer: Overview. Network layer functions Routing IP Forwarding

BLM6196 COMPUTER NETWORKS AND COMMUNICATION PROTOCOLS

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

Planning for Information Network

Introduction. Communication

Inter-Autonomous-System Routing: Border Gateway Protocol

Open Shortest Path First (OSPF)

IP Routing. Bharat S. Chaudhari International Institute of Information Technology Pune, India

Routing(2) Inter-domain Routing

CSc 450/550 Computer Networks Internet Routing

Inter-Domain Routing: BGP

Network Protocols. Routing. TDC375 Autumn 03/04 John Kristoff - DePaul University 1

Lecture 19: Network Layer Routing in the Internet

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

Internet Routing Protocols Tuba Saltürk

BSCI. Section 5. Intermediate System-to- Intermediate System (IS-IS)

Routing in Switched Data Networks

Internet Routing : Fundamentals of Computer Networks Bill Nace

Routing. Jens A Andersson Communication Systems

OSPF Sham-Link Support for MPLS VPN

ITEC310 Computer Networks II

Quality of Service (QoS) Routing. A Quick Review of NP-Completeness

Outline Computer Networking. Inter and Intra-Domain Routing. Internet s Area Hierarchy Routing hierarchy. Internet structure

Overview. Information About Layer 3 Unicast Routing. Send document comments to CHAPTER

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

Routing. Directly Connected IP Networks. Data link layer routing. ifconfig command

COMPARATIVE ANALYSIS OF ROUTING PROTOCOLS

Youki Kadobayashi NAIST

COMPSCI 314: IP routing

Routing, Routing Algorithms & Protocols

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

Inter-Autonomous-System Routing: Border Gateway Protocol

Lab 4: Routing using OSPF

Table of Contents 1 Static Routing Configuration RIP Configuration 2-1

Routing Unicast routing protocols

CSCD 330 Network Programming Spring 2018

CSCD 330 Network Programming Spring 2017

Chapter 7 Routing Protocols

IP Routing Tecnologie e Protocolli per Internet II rev 1

C13b: Routing Problem and Algorithms

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

Internet Routing. Shortest-Path Routing. Intra-Domain Routing and Traffic Engineering. Two-Tiered Internet Routing System

CHAPTER 9: PACKET SWITCHING N/W & CONGESTION CONTROL

Introduction to Dynamic Routing Protocols

Overview 4.2: Routing

Dynamics of Hot-Potato Routing in IP Networks

CSCI Topics: Internet Programming Fall 2008

ETSF05/ETSF10 Internet Protocols. Routing on the Internet

ICMP, ARP, RARP, IGMP

Network Protocols. Routing. TDC375 Winter 2002 John Kristoff - DePaul University 1

Transcription:

Network Layer, Part Routing These slides are created by Dr. Huang of George Mason University. Students registered in Dr. Huang s courses at GMU can make a single machine readable copy and print a single copy of each slide for their own reference as long as the slide contains the copyright statement, and the GMU facilities are not used to produce the paper copies. Permission for any other use, either in machine-readable or printed form, must be obtained form the author in writing. CS 656 Terminology User machines, (e.g., your PCs) are usually called hosts by the internet community or end systems in the OSI reference model User machines access the (switching-based) network by connecting to switching devices, called routers in the Internet, switches in ATM networks, or intermediate systems in the OSI reference model CS 656

The interconnection of network nodes, that is, the topology of the network, can be described by a graph: Host Router (a) Network topology with hosts (b) After omitting hosts Since only routers are involved in routing activities, we omit hosts in this talk. CS 656 3 The Routing Problem Given a pair of source s and destination d, find a path P to reach d from s. Typically, P is a shortest s-to-d path. What constitutes shortest depends on the definition of distance: One can count the number of hops to reach d from s. Or we can use more sophisticated metrics, such as delays, monetary costs, reciprocal of bandwidth, and so forth CS 656 4

Routing Method I: Distance Vector Routing Each router maintains a vector of distances to others. Initially, each router knows only the existence of itself (it does not know the rest of the network.) An entry (Y,p,c) in the vector of router X means that X can reach Y via port p with cost c. CS 656 5 Example: A B C E D Initial distance vectors at the five routers: A - B - C - D - E - CS 656 6 3

Every router periodically sends its distance vector to its neighboring routers. Assuming that router A sends its vector first, we have the following distance vectors: A A A A - C - B - D - E - Next C sends its vector, we have A A A A - B - C - C E - C D - CS 656 7 Processing Incoming Vectors Assume that a router X receives via port q the vector of its neighbor Z. X will process each entry in the vector one by one. Let (Y,p,c) be an entry in Z s vector. Case : Y is not found in X s vector q p cost = c X Z Y X creates an entry (Y,q,c+) in its vector CS 656 8 4

Case : An entry (Y,p,c ), where p is not q, already exists in X q p cost = c X Z Y p cost = c If c >c+, then X replaces (Y,p,c ) with (Y,q,c+); otherwise, do nothing. Case 3: an entry (Y,q,c ) is already in X s q p cost = c X Z Y Replace (Y,q,c ) with (Y,q,c+) CS 656 9 Continuing the Example Next, D sends its vector. A A A A - B - C - C E - C D - We have A - C D A B - C A C - D A C D - A C D E - CS 656 5

After E sends its vector (to A and D), we have A A A C B - C - D - C D E A - C D E A C D E - Next, B sends vector (to A and C), we have A - B C D E A B - C A B C - D A C D - E A C D E - CS 656 Assuming that A sends its vector again, we have A - B C D E A B - C D E A B C - D A B C D - E A B C D E - Routing tables/vectors are completed after D sends its vector again; see next page. CS 656 6

Complete Routing Tables A - B C D E A B - C D E A B C - D E A B C D - E A B C D E - A B C E D CS 656 3 Exercise The distance vector of Router X is: (A,3,5) (B,,) (C,,) (W,,4) (X,-,) (Y,,) X receives via port a vector (A,3,) (B,,4) (C,-,) (W,,4), (X,4,) (Z,,) Give the vector of X after processing the arriving vector. CS 656 4 7

Handling Link Failures When router X notices the failure of port p, it changes in its vector all the entries (Y,p,c) to (Y,p, ). Assuming that A-D link has failed, we have A - B C D E A B - C D E A B C - D E A B C D - E A B C D E - A will learn a new path to get to C after B sends its vector CS 656 5 Discussion Distance vector routing can be considered as a distributed implementation of a shortest-path computation algorithm, the Bellman-Ford Algorithm. Examples of distance vector routing protocol include the RIP (Routing Information Protocol) and RIP II of the Internet. they have been in use since the beginning the Internet. CS 656 6 8

Problems with Distance Vector Routing Slow convergence after a change in network topology (failures of links, additions of new links/routers, etc.), it may take more than minutes for routing tables to stabilize Transient routing loops CS 656 7 Transient Routing Loops Consider again the handling the failure of the A-D link From page 4, we have A - B C D E A B - C D E A B C - D E A B C D - E A B C D E - Assume that C sends its vector before others. Let us focus on the entries regarding A at C and D. CS 656 8 9

Example Consider a packet from D to A. A B (A,,) C E D (A,,3) The packet gets trapped in a loop between D and C. CS 656 9 Exercise Consider two neighboring routers X and Y X Y Vector of X: (A,3,)(B,,)(C,,4)(X,-,)(Y,,) Y: (A,,7)(B,,3)(C,,3)(X,,)(Y,-,) Identify a routing loop. CS 656

Routing Method II: Link State Routing Using a special-purpose broadcast algorithm, every router periodically broadcasts to all other routers a list of its local links. such a broadcast message is termed a link state advertisement (LSA) the broadcast method, discussed later, is called flooding CS 656 Example: A B C E D the LSA from A contains links A-B, A-D, and A-E the LSA from B contains links A-B and B-C the LSA from C contains links B-C and C-D the LSA from D contains links C-D, A-D, and D-E the LSA from E contains links A-E and D-E CS 656

Through LSAs from other routers, every router maintains a complete map of the entire network. Using a shortest-path algorithm, each router X computes the shortest paths from X to all other routers. For instance, the Dijkstra s open shortest path first algorithm with complexity O(N ). When detecting failure/recovery/addition of its local links, a router immediately broadcasts a new LSA. In response, all routers re-compute shortest paths CS 656 3 Flooding The source (router) of an LSA sends the LSA to all its neighboring nodes. When a node receives the LSA the first time, it updates its local network map accordingly and forwards the LSA via all interfaces except the one on which the LSA arrives. The node discards subsequent duplicates of the LSA. All LSA forwarding steps are reliable, using a stop-and-wait protocol. CS 656 4

Flooding in Operation A B C E D CS 656 5 Discussion Link state routing protocols: OSPF (Open Shortest Path First) for the Internet IS-IS (Intermediate System to Intermediate System) from ISO PNNI (Private Network to Network Interface) for ATM networks Major Advantage fast convergence after network changes CS 656 6 3

Disadvantages Limitations in scalability due to the maintenance of the entire network map at every router the periodic broadcast from every router shortest path computations at every router Complexity it takes pages to describe OSPF; RIP needs only CS 656 7 Routing Method III: Path Vector Routing Each router maintains a vector of complete paths to all other routers. Example: A CS 656 8 B E C D 4

Initial path vectors at the five routers: A ( ) B ( ) C ( ) D ( ) E ( ) Router A sends its vector first; we have A (A) A (A) A (A) A ( ) C ( ) B ( ) D ( ) E ( ) Next, router C sends its vector; we have A (A) A (A) A (A) A ( ) B ( ) C ( ) C (C) E ( ) C (C) D ( ) CS 656 9 Then, D sends its vector: A ( ) A (A) A (A) A (D, A) A (A) C (D, C) B ( ) C (D, C) C ( ) C (C) D (D) C (C) D (D) D (D) D ( ) E ( ) After E sends its vector, we have A ( ) A (A) A (A) A (A) A (D, A) C (D, C) B ( ) C (C) C (D, C) C ( ) D (D) C (C) D ( ) D (D) D (D) E ( E) E (E) E ( ) CS 656 3 5

After B sends its vector, we have A ( ) B (B) A (A) A (D, A) A (A) A (A) C (D, C) B ( ) B (B) C (C) C (D, C) D (D) C (C) C ( ) D ( ) D (D) D (D) E (E) E ( ) E (E) Assuming that A sends its vector again, A ( ) A (A) A (A) A (A) B (B) B ( ) A (D, A) B (A, B) B (A, B) C (D, C) C (C) B (B) C (C) C (D, C) D (D) D (A, D) C ( ) D ( ) D (D) E (E) E (A, E) D (D) E (E) E ( ) CS 656 3 Discussion Path vector routing is designed for use by the BGP (Border Gateway Protocol) of the Internet. One major advantage is its prevention of routing loops (by inspecting paths). Path vector routing also enables policy routing, the selection of paths based on nontechnical issues. CS 656 3 6

Policy Routing A router belonging to ISP (Internet Service Provider) A may want to reject a path that uses routers belonging to its rival ISP B, even if the path is the shortest. A router of FBI must reject paths that involve routers controlled by a hostile country. Such filtering is achieved by scanning a path before accepting it. CS 656 33 IP Routing Tables IP routing protocols do not deal with destination addresses; they deal with destination network IDs. in distance vector routing, each vector entry is of the form (netid, interface, cost). CS 656 34 7

The routing table of a router comprises a list of network-id to interface mappings. When a packet arrives at a router, the destination network ID is used to look up the routing table to determine via which interface to forward the packet. CS 656 35 Routing Table Example (.65.55,) (96.45.3,) (6.3,) (..,) Host.65.55 Router ATM Switch 6.3 96.45.3.. CS 656 36 8

Internet Routing Hierarchy The Internet is divided into Autonomous Systems (AS). Each AS comprises the routers and networks governed by a single administration authority. Routing occurs at two levels Intra-AS routing, also called internal gateway routing Inter-AS routing, also called external gateway routing CS 656 37 Two-Level Routing of the Internet The AS of a Backbone ISP GMU AS site-unix Your Home PC The AS of Your ISP Other AS Gateway Router Regular Router CS 656 38 9

If the destination of a given packet is inside the source AS, then the packet is routed by intra-as routing protocols for example, RIP and OSPF If the destination is outside the source AS, then the packet is routed through a sequence of intermediate ASes to reach the destination AS, using inter-as routing protocols such as BGP Inside each AS, intra-as routing is used CS 656 39