Routing Algorithms. CS158a Chris Pollett Apr 4, 2007.

Similar documents
Routing. 4. Mar INF-3190: Switching and Routing

Routing in packet-switching networks

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

Chapter 12. Routing and Routing Protocols 12-1

5.2 Routing Algorithms

Computer Networks 1 (Mạng Máy Tính 1) Lectured by: Dr. Phạm Trần Vũ

Fairness Example: high priority for nearby stations Optimality Efficiency overhead

ECE 333: Introduction to Communication Networks Fall 2001

Data and Computer Communications. Chapter 12 Routing in Switched Networks

William Stallings Data and Computer Communications 7 th Edition. Chapter 12 Routing

Lecture 4 Wide Area Networks - Routing

BLM6196 COMPUTER NETWORKS AND COMMUNICATION PROTOCOLS

C13b: Routing Problem and Algorithms

Routing in Switched Data Networks

William Stallings Data and Computer Communications. Chapter 10 Packet Switching

Chapter 5 (Week 9) The Network Layer ANDREW S. TANENBAUM COMPUTER NETWORKS FOURTH EDITION PP BLM431 Computer Networks Dr.

CEN445 Network Protocols and Algorithms. Chapter 2. Routing Algorithms. Dr. Ridha Ouni

We will discuss about three different static routing algorithms 1. Shortest Path Routing 2. Flooding 3. Flow Based Routing

Module 8. Routing. Version 2 ECE, IIT Kharagpur

Routing. Advanced Computer Networks: Routing 1

Routing Strategies. Fixed Routing. Fixed Flooding Random Adaptive

Alternate Routing Diagram

ECE 435 Network Engineering Lecture 11

COM-208: Computer Networks - Homework 6

Routing, Routing Algorithms & Protocols

Intra-domain Routing

Finish Network Layer Start Transport Layer. CS158a Chris Pollett Apr 25, 2007.

CSE 461 Routing. Routing. Focus: Distance-vector and link-state Shortest path routing Key properties of schemes

ICMP, ARP, RARP, IGMP

Telecommunication Protocols Laboratory Course. Lecture 3

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

ECE 435 Network Engineering Lecture 11

CHAPTER 9: PACKET SWITCHING N/W & CONGESTION CONTROL

Routing. Information Networks p.1/35

ETSF05/ETSF10 Internet Protocols. Routing on the Internet

ETSF05/ETSF10 Internet Protocols Routing on the Internet

How Routing Algorithms Work

The Network Layer. Network Layer Design Objectives

This Lecture. BUS Computer Facilities Network Management. Switching Network. Simple Switching Network

Routing, Routers, Switching Fabrics

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

CSC 4900 Computer Networks: Routing Algorithms

II. Principles of Computer Communications Network and Transport Layer

CSCE 463/612 Networks and Distributed Processing Spring 2018

Chapter 4: Network Layer, partb

Redes de Computadores. Shortest Paths in Networks

Layer 3: Network Layer. 9. Mar INF-3190: Switching and Routing

Routing in Switched Networks

Computer Networks. Wenzhong Li. Nanjing University

Chapter 4: Network Layer

CS 457 Networking and the Internet. What is Routing. Forwarding versus Routing 9/27/16. Fall 2016 Indrajit Ray. A famous quotation from RFC 791

Lecture (08, 09) Routing in Switched Networks

Lecture 4. The Network Layer (cont d)

EITF25 Internet Routing. Jens A Andersson

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

Interplay between routing, forwarding

Routing Algorithms McGraw-Hill The McGraw-Hill Companies, Inc., 2001

UNIT 2 ROUTING ALGORITHMS

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

Chapter 4 Network Layer. Network Layer 4-1

EE 122: Intra-domain routing

DATA COMMUNICATOIN NETWORKING

Computer Networks. Routing Algorithms

Computer Networks. Routing

Youki Kadobayashi NAIST

Routing in a network

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

CSEP 561 Routing. David Wetherall

Role of Genetic Algorithm in Routing for Large Network

Routing Algorithms. Daniel Zappala. CS 460 Computer Networking Brigham Young University

Distance Vector Routing

Unit 3: Dynamic Routing

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

06/02/ Local & Metropolitan Area Networks. Overview. Routing algorithm ACOE322. Lecture 6 Routing

Lecture 13: Link-state Routing. CSE 123: Computer Networks Alex C. Snoeren

Routing Algorithms : Fundamentals of Computer Networks Bill Nace

ITEC310 Computer Networks II

CSC 401 Data and Computer Communications Networks

Data Communication Networks Final

CMPE 150: Introduction to Computer Networks

Internet Architecture. Network Layer Overview. Fundamental Network Layer Function. Protocol Layering and Data. Computer Networks 9/23/2009

BTEC Level 3 Extended Diploma

ICS 351: Today's plan. netmask exercises network and subnetwork design dynamic routing RIP distance-vector routing

Review: Routing in Packet Networks Shortest Path Algorithms: Dijkstra s & Bellman-Ford. Routing: Issues

6.02 Fall 2014! Lecture #21. Failures in routing Routing loops Counting to infinity

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

Internetworking. different kinds of network technologies that can be interconnected by routers and other networking devices to create an internetwork

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

COMP/ELEC 429/556 Introduction to Computer Networks

IP Forwarding Computer Networking. Graph Model. Routes from Node A. Lecture 11: Intra-Domain Routing

Homework 3 Discussion

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

Network Layer, Part 2 Routing. Terminology

In this edition of HowStuffWorks, we'll find out precisely what information is used by routers in determining where to send a packet.

CS 5114 Network Programming Languages Control Plane. Nate Foster Cornell University Spring 2013

Outline. Routing. Introduction to Wide Area Routing. Classification of Routing Algorithms. Introduction. Broadcasting and Multicasting

CS4450. Computer Networks: Architecture and Protocols. Lecture 11 Rou+ng: Deep Dive. Spring 2018 Rachit Agarwal

Network layer: Overview. Network layer functions Routing IP Forwarding

EEC-684/584 Computer Networks

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

Transcription:

Routing Algorithms CS158a Chris Pollett Apr 4, 2007.

Outline Routing Algorithms Adaptive/non-adaptive algorithms The Optimality Principle Shortest Path Routing Flooding Distance Vector Routing

Routing Algorithms A routing algorithm is that part of the network layer responsible for deciding which output line an incoming packet should be transmitted on. If datagrams are being used this decision is made again for each packet coming from the same host. For virtual circuits you have session routing. There are two processes going on inside a router: (1) look up outgoing lines in a table and figure out which line to send them on. (forwarding) (2) update the routing table. Routing algorithms are responsible for (2).

Desirable Properties of Routing Algorithms Correctness -- should get packets eventually to the correct destination Simplicity -- this usually implies faster Robustness -- should be able to handle new routers coming online, as well as, handle other going off or malfunctioning. Stability -- under constant conditions should converge to some equilibrium. Fairness and Optimality -- these are hard to simultaneously satisfy. For example, in the situation below it might occur that to optimize flow we would not allow traffic between X and X, a situation which is not fair.

Adaptive/nonadaptive algorithms Nonadaptive Algorithms -- do not base their routing decisions on measurements or estimates of the current traffic and topology. All decisions are made in advance and off-line. They are downloaded to the router when it is booted. This is sometimes called static routing. Adaptive Algorithms -- change their routing decisions to reflect changes in topology and traffic. Usually, routers in such an algorithm use local information gleaned by looking at data from adjacent routers.

The Optimality Principle A sink tree for B This principle states that if router J is on the optimal path from I to K, then the optimal path from J to K lies on the same route. The proof is that, if not, we could find a better route from I to K by using the same path from I, J, but following the better path from J to K. It follows from the optimality principle that the optimal routes from all sources to a given destination form a tree rooted at the destination. This is called a sink tree. The distance is measure as number of hops.

Shortest Path Routing We will measure shortest paths in terms of number of hops (not geographic distance). Dijkstra s algorithm (1959) can be used to find the shortest path between two points in a graph. Each node is initially labeled with its distance from the source along the best known path. Node for which no path is known are labeled initially with INFINITY. Nodes are also labeled temporary or permanent. Initially, the start node is labeled permanent. We also have an active node which is initially the start node. In a round, we update the distances to each of the nodes adjacent to the active node, we then search the graph for the temporary node of least distance, mark it permanent and set it as active. Then iterate until no change.

Flooding This is another static algorithm. Every incoming packet is sent out on every outgoing route except the one it arrived on. To prevent the algorithm from generating an infinite number of packets, a hop counter can be used. Ideally, would like the hop counter to be initialized to the distance from source to the destination. You can fake this by using the diameter of the subnet Another way to dam flooding is to have sequence numbers in the header. If a sequence number is seen twice by a router it is discarded In selective flooding, the router don t send out on every line, only those in the approximate direction of the destination.

Distance Vector Routing This is our first dynamic routing algorithm. It also goes by the names Bellman-Ford, Ford-Fulkerson, or RIP. Each router maintains a table containing one entry for each router in the subnet of the form (router, outgoing line)

More on Distance Vector Routing This entry contains the preferred outgoing line and an estimate of the time or distance to the destination. Each router is assumed to know the distance to its neighbors. (1 hop) To update its table, each router gets its neighbors tables and then recomputes its distances to destinations.