CSCE 463/612 Networks and Distributed Processing Spring 2018

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

Chapter 4: Network Layer, partb

Chapter 4: outline. Network Layer 4-1

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

Chapter 4: Network Layer

Chapter IV: Network Layer

Computer Networking Introduction

Chapter 4 Network Layer

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

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

Internet Protocol: Routing Algorithms. Srinidhi Varadarajan

DATA COMMUNICATOIN NETWORKING

Chapter 5 Network Layer: The Control Plane

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

CSc 450/550 Computer Networks Internet Routing

Network layer: Overview. Network layer functions Routing IP Forwarding

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

CSCI Topics: Internet Programming Fall 2008

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

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

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

CSC 4900 Computer Networks: Routing Protocols

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

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

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

DATA COMMUNICATOIN NETWORKING

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

Lecture 4. The Network Layer (cont d)

Network Layer: Routing

Routing in the Internet

Chapter 4: Network Layer

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

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

Topics for This Week

Chapter 4: Network Layer

CSCD 330 Network Programming Spring 2018

COMP211 Chapter 5 Network Layer: The Control Plane

CSCD 330 Network Programming Spring 2017

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

Chapter 4 Network Layer. Network Layer 4-1

Routing. Outline. Algorithms Scalability

CSC 4900 Computer Networks: Routing Algorithms

Lecture 19: Network Layer Routing in the Internet

Routing. Jens A Andersson Communication Systems

EE 122: Intra-domain routing

Computer Networks. Instructor: Niklas Carlsson

Interplay between routing, forwarding

Shortest Paths Algorithms and the Internet: The Distributed Bellman Ford Lecturer: Prof. Chiara Petrioli

Network layer: Overview. Network layer functions Routing IP Forwarding

Master Course Computer Networks IN2097

Chapter 4: Network Layer: Part II

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

CSC 8560 Computer Networks: Control Plane

UNIT III THE NETWORK LAYER

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

Routing Unicast routing protocols

Dynamic Routing. The Protocols

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

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

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

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

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

CS118 Discussion 1A, Week 7. Zengwen Yuan Dodd Hall 78, Friday 10:00 11:50 a.m.

Interplay Between Routing, Forwarding

CSCE 463/612 Networks and Distributed Processing Spring 2018

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

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

Why dynamic route? (1)

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

Network service model. Network service model. Network Layer (part 1) Virtual circuits. By the end of this lecture, you should be able to.

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

Inter-AS routing and BGP. Network Layer 4-1

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

Master Course Computer Networks IN2097

CSC 401 Data and Computer Communications Networks

CS118 Discussion Week 7. Taqi

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

Internet Routing : Fundamentals of Computer Networks Bill Nace

Network Layer: Routing

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

Network Layer: Control Plane 5-2

Internet Routing Protocols Tuba Saltürk

Announcement. Project 2 extended to 2/20 midnight Project 3 available this weekend Homework 3 available today, will put it online

Chapter 4: Network Layer

Routing Algorithm Classification. A Link-State Routing Algorithm

Basic Idea. Routing. Example. Routing by the Network

Routing by the Network

ETSF05/ETSF10 Internet Protocols Routing on the Internet

Top-Down Network Design

Module 3 Network Layer CS755! 3-1!

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

Department of Computer Science Southern Illinois University Carbondale

Chapter 4: Network Layer

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

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

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

CS321: Computer Networks Unicast Routing

ETSF05/ETSF10 Internet Protocols. Routing on the Internet

Chapter 7 Routing Protocols

TDC 363 Introduction to LANs

Transcription:

CSCE 463/612 Networks and Distributed Processing Spring 2018 Network Layer IV Dmitri Loguinov Texas A&M University April 12, 2018 Original slides copyright 1996-2004 J.F Kurose and K.W. Ross 1

Chapter 4: Roadmap 4.1 Introduction 4.2 Virtual circuit and datagram networks 4.3 What s inside a router 4.4 IP: Internet Protocol 4.5 Routing algorithms Link state Distance Vector Hierarchical routing 4.6 Routing in the Internet 4.7 Broadcast and multicast routing 2

Distance Vector Algorithm Two metrics known to each node x Estimate D x (y) of least cost from x to y Link cost c(x,v) to reach x s immediate neighbors Each node maintains a distance vector: Node x periodically asks its neighbors for their distance vectors Thus, x has access to the following for each neighbor v 3

Distance Vector Algorithm (cont d) Basic idea (Bellman-Ford): When a node x receives new DV estimate from neighbor v, it updates its own DV using the Bellman- Ford equation: D x (y) min{d x (y), c(x,v) + D v (y)}, y V Centralized Bellman Ford requires O( V E ) time Dijkstra s algorithm was O( V log V ) Convergence of decentralized version depends on topology, link weights, update delays, and timing of events Bellman Ford allows negative weights 4

Distance Vector Algorithm (cont d) Iterative, asynchronous Each iteration caused by: Local link cost change DV update message from neighbor Distributed: Each node notifies neighbors only when its DV changes Neighbors then notify their neighbors if necessary Each node: wait for (change in local link cost or msg from neighbor) recompute estimates if DV to any dest has changed, notify neighbors 5

node x table cost to x y z x 0 2 7 y z node y table cost to x y z from x y 2 0 1 z node z table cost to x y z from from x y z 7 1 0 from from from x y z x y z x y z cost to x y z 0 2 3 2 0 1 7 1 0 cost to x y z 0 2 7 2 0 1 7 1 0 cost to x y z 0 2 7 2 0 1 3 1 0 from from from x y z x y z x y z cost to x y z 0 2 3 2 0 1 3 1 0 cost to x y z 0 2 3 2 0 1 3 1 0 cost to x y z 0 2 3 2 0 1 3 1 0 time x 2 y 7 1 z 6

Distance Vector: Link Cost Changes Link cost changes: Node detects local link cost change Recalculates distance vector, updates routing info if needed x 1 4 y 50 1 z If DV changes, notifies neighbors good news travels fast Node y detects link-cost change, updates its distance to x, and informs its neighbors Node z receives y s message and updates its table; computes a new least-cost to x and sends its DV to x and y Finally, node y receives z s vector and updates its distance table; y s least costs do not change and hence y does not send any messages after that 7

Distance Vector: Link Cost Changes Link cost changes: Good news travels fast Bad news travels slow count to infinity problem! 46 iterations before algorithm stabilizes 60 x 4 y 50 1 z Poisoned reverse ( split horizon ): If z routes through y to get to x: z tells y that its (z s) distance to x is infinite (so y won t route to x via z) Will this completely solve count to infinity problem? 8

Comparison of LS and DV Algorithms Message complexity LS: with n nodes, E links, O(nE) msgs sent DV: exchange between neighbors only Depends on convergence time Time to Convergence LS: O(nlogn) algorithm + delay to send O(nE) msgs Oscillations (cost = congestion) DV: convergence time varies May have routing loops Count-to-infinity problem Robustness: what happens if router malfunctions? LS: DV: Node can advertise incorrect link cost Affects only a small portion of the graph DV node can advertise incorrect path cost Each node s table used by others Errors propagate thru network 9

Chapter 4: Roadmap 4.1 Introduction 4.2 Virtual circuit and datagram networks 4.3 What s inside a router 4.4 IP: Internet Protocol 4.5 Routing algorithms Link state Distance Vector Hierarchical routing 4.6 Routing in the Internet 4.7 Broadcast and multicast routing 10

Hierarchical Routing Problems in practice: Memory: can t store paths to all destinations in a routing table (several billion links) CPU time: can t overload routers with such huge computational expense Message overhead: routing table exchanges would overload links Competitiveness: ISPs not willing to share their topology with others Solution: administrative autonomy Internet = network of networks Network admins control routing in their own networks, export reachable subnets to outside world 11

Hierarchical Routing Aggregate routers into regions called AS (Autonomous Systems) Routers in the same AS run the same algorithm Accomlished via intra-as routing protocols ISPs gain flexibility Routers in different ASes can run different intra-as protocols that cannot directly speak to each other, which is OK Texas A&M owns AS3794 with two subnets: 128.194/16 and 165.91/16 Gateway routers Direct links to routers in other ASes Exchange routing view of each AS using an inter- AS protocol Summary of subnets to which this AS is willing to route inter intra inter intra intra inter 12

Interconnected ASes Intra-AS routing algorithm Inter-AS routing algorithm 3c 3a 3b AS3 1a gateways 1c 1b 1d AS1 2a 2c AS2 2b Forwarding table Terminology: exit router = border router = gateway Intra-AS sets entries for all internal dests E.g., 1a plots shortest path to 1b using link-state alg Inter-AS accepts external dests from neighbor ASes E.g., 1b learns 128.194/16 is reachable via AS2 Inter-AS broadcasts pairs (subnet, exit router) E.g., 1b notifies all routers in AS1 that it can reach 128.194/16 13

Example: Choosing Among Multiple ASes Now suppose AS1 learns from the inter-as protocol that 128.194/16 is reachable from AS3 and from AS2 To configure forwarding table, routers in AS1 must determine towards which exit (1c or 1b) they must forward packets This is also the job of inter-as routing protocol! Usually based on ISP policy, SLAs, prior traffic engineering Hot potato routing: send packet towards closest of two exit points (other options discussed later) 14

Chapter 4: Roadmap 4.1 Introduction 4.2 Virtual circuit and datagram networks 4.3 What s inside a router 4.4 IP: Internet Protocol 4.5 Routing algorithms 4.6 Routing in the Internet RIP OSPF BGP 4.7 Broadcast and multicast routing 15

Intra-AS Routing Common intra-as routing protocols: RIP: Routing Information Protocol (DV) OSPF: Open Shortest Path First (LS) IGRP: Interior Gateway Routing Protocol (Cisco proprietary, DV, now obsolete); EIGRP (Extended IGRP) IS-IS (Intermediate System to Intermediate System, LS, independent of the network layer) For Inter-AS, there is now just one option BGP (Border Gateway Protocol) All ISPs must support it 16

Chapter 4: Roadmap 4.1 Introduction 4.2 Virtual circuit and datagram networks 4.3 What s inside a router 4.4 IP: Internet Protocol 4.5 Routing algorithms 4.6 Routing in the Internet RIP OSPF BGP 4.7 Broadcast and multicast routing 17

RIP (Routing Information Protocol) Included in BSD-UNIX distribution in 1982 Distance vector algorithm Distance metric: # of hops (max = 15) Distance vectors: exchanged among neighbors every 30 sec using advertisement messages Each message: lists of up to 25 destination nets within AS z u A C B D v y w x destination hops from A subnet u 1 v 2 w 2 x 3 y 3 z 2 18

RIP: Example w x y A D B z Destination Network C Next Router Number of hops to dest w A 2 y B 2 z B 7 x -- 1..... Routing table in D 19

RIP: Example Dest Next hops w - - x - - z C 4.... Advertisement from A to D based on this table w x y A D B z Destination Network C Next Router Number of hops to dest. w A 2 y B 2 z B A 7 5 x -- 1..... Routing table in D 20

RIP: Link Failure and Recovery If no advertisement heard after 180 sec neighbor/link declared dead Routes via neighbor invalidated New advertisements sent to neighbors Neighbors in turn send out new advertisements (if tables changed) Link-failure info propagates to entire network That s why it is important to assign high priority to packets from routing protocols at ISP routers QoS only applies to specialized packets generated by ISP RIP uses poisoned reverse to prevent loops (infinite distance = 16 hops) 21

RIP Table Processing Note: named, smtpd, etc. are Unix deamons (services) RIP routing tables managed by an applicationlevel process called routed (daemon) Advertisements sent in UDP packets (port 520) routed routed Transport (UDP) network forwarding (IP) table link physical forwarding table Transport (UDP) network (IP) link physical 22

Chapter 4: Roadmap 4.1 Introduction 4.2 Virtual circuit and datagram networks 4.3 What s inside a router 4.4 IP: Internet Protocol 4.5 Routing algorithms 4.6 Routing in the Internet RIP OSPF BGP 4.7 Broadcast and multicast routing 23

OSPF (Open Shortest Path First) Open : protocol specifications publicly available v1 (1989), v2 (1998), and v3 (2008) Uses Link State (LS) algorithm LS packet dissemination Topology map at each node Route computation using Dijkstra s algorithm Advertisements disseminated to entire AS (via flooding) Carried in OSPF messages directly over IP (rather than TCP or UDP) using protocol number 89 Layer 3.5 similar to ICMP Handles own error detection/correction 24

OSPF Advanced Features (Not in RIP) Security: all OSPF messages authenticated to prevent malicious intrusion Multiple same-cost paths allowed (only one path in RIP) Integrated uni- and multicast support: Multicast OSPF (MOSPF) uses same topology database as OSPF Hierarchical OSPF in large domains 25

Hierarchical OSPF 26

Hierarchical OSPF Two-level hierarchy: local area, backbone Link-state advertisements only in area Each node has a detailed topology for the area it belongs to and shortest paths to all destinations therein Area border routers: summarize distances to networks in their own area, advertise to other area border routers Backbone routers: run OSPF routing limited to the backbone Boundary routers: connect to other AS s 27