1 Introduction to Computer Networks University of Ilam By: Dr. Mozafar Bag-Mohammadi Routing.

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

CSE Computer Networks Prof. Aaron Striegel Department of Computer Science & Engineering University of Notre Dame Lecture 12 – February 18, 2010.
Computer Networks with Internet Technology William Stallings
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)
Routing So how does the network layer do its business?
CMPE 150- Introduction to Computer Networks 1 CMPE 150 Fall 2005 Lecture 22 Introduction to Computer Networks.
RD-CSY3021 Comparing Routing Protocols. RD-CSY3021 Criteria used to compare routing protocols includes  Time to convergence  Proprietary/open standards.
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.
Spring 2002CS 4611 Routing Outline Algorithms Scalability.
CSS 432: Subnetting, CIDR, and Global Internet
© Janice Regan, CMPT 128, CMPT 371 Data Communications and Networking Routing in the Internet Internal Routing Protocols.
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.
ROUTING BASICS. Why are Routers Necessary? One of the key components of the technical infrastructure of the network One of the key components of the technical.
SAvPS – úvod Genči 2009 (bsaed on Tanenbaum’s slides.
1 Computer Communication & Networks Lecture 22 Network Layer: Delivery, Forwarding, Routing (contd.)
Dynamic Routing Protocols  Function(s) of Dynamic Routing Protocols: – Dynamically share information between routers (Discover remote networks). – Automatically.
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.
Unicast Routing Protocols  A routing protocol is a combination of rules and procedures that lets routers in the internet inform each other of changes.
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.
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.
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.
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
Routing Algorithms and IP Addressing Routing Algorithms must be ▪ Correctness ▪ Simplicity ▪ Robustness ▪ Stability ▪ Fairness ▪ Optimality.
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.
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.
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:

1 Introduction to Computer Networks University of Ilam By: Dr. Mozafar Bag-Mohammadi Routing

2 Outline Routing process Routing Algorithms Scalability

3 Forwarding vs Routing forwarding: to select an output port based on destination address from the lookup table.  Minimize the lookup time. routing: process by which the routing table is built.  Optimize the calculating paths in case of changing topology.

4 Routing Process Question? How to populate the lookup table? Primary solutions:  Build the lookup table Manually? Is it practical? The answer is no.  Flooding- Broadcast to all node except the one we have received the packet. Waste the bandwidth Not scale well- Broadcast storm.

5 Overview Network as a Graph Problem: Find lowest cost, or shortest, path between two nodes The process is distributed and this makes it complicated, I.e, it may create loop. Factors  static: topology  dynamic: load

6 Distance Vector Each node maintains a set of triples (Destination, Cost, NextHop) Exchange updates with directly connected neighbors  periodically ( on the order of several seconds)  whenever its table changes (called triggered update) Each update is a list of pairs: ( Destination, Cost) Update local table if receive a “better” route  smaller cost  came from next-hop Refresh existing routes; delete if they time out

7 Example Destination Cost NextHop A 1 A C 1 C D 2 C E 2 A F 2 A G 3 A Distance of other nodes from Node B. The cost between two nodes has been assumed 1. All nodes keep a routing table from themselves.

8 The Bellman-Ford Algorithm Bellman-Ford algorithm solve the distance Vector problem in general case. 1. Set: X o = (,,,…, ). 2. Send updates of components of X n to neighbors 3. Calculate: X n+1 = F(X n ) 4. If X n+1  X n then go to (2) 5. Stop

9 Bellman-Ford Algorithm Example: Calculate from R8 R5R5 R3R3 R7R7 R8R8 R6R6 R4R4 R2R2 R1R R3R3 R2R2 R5R5 R7R7 R4R4 R6R6 R8R8 R1R nd step

10 Bellman-Ford Algorithm Result: R8R8 R6R6 R4R4 R2R2 R1R1 R3R3 R5R R7R7 R3R3 R5R5 R7R7 R8R8 R6R6 R4R4 R2R2 R1R rd step

11 Node Failure  F detects that link to G has failed  F sets distance to G to infinity and sends update to 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

12 Routing Loops  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…

13 The count-to-infinity problem

14 Loop- Breaking Heuristics Set infinity to a reasonably small number. For instance, RIP sets to 16 Split horizon: Don’t announce the distance to the node the distance has been gotten from. Split horizon with poison reverse: Instead of not announcing the distance put negative numbers.

15 Link State Strategy  send to all nodes (not just neighbors) information about directly connected links (not entire routing table) Link State Packet (LSP)  id of the node that created the LSP  cost of the link to each directly connected neighbor  sequence number (SEQNO)  time-to-live (TTL) for this packet

16 Reliable flooding  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 stored LSP discard when TTL=0 Link State (cont.)

17 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 ))

18 Shortest Path Routing: Dijkstra Algorithm

19 Metrics Original ARPANET metric  measures number of packets enqueued 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

20 Measuring Line Cost A subnet in which the East and West parts are connected by two lines.

21 How to Make Routing Scale Flat versus Hierarchical Addresses Inefficient use of Hierarchical Address Space  class C with 2 hosts (2/255 = 0.78% efficient)  class B with 256 hosts (256/65535 = 0.39% efficient) Still Too Many Networks  routing tables do not scale  route propagation protocols do not scale

22 Subnetting Add another level to address/routing hierarchy: subnet Subnet masks define variable partition of host part Subnets visible only within site Network numberHost number Class B address Subnet mask ( ) Subnetted address Network numberHost IDSubnet ID

23 Subnet Example Forwarding table at router R1 Subnet # Subnet Mask Next Hop interface interface R2 Subnet mask: Subnet number: H1 R Subnet mask: Subnet number: R2 H Subnet mask: Subnet number: H3 111….1.0xxx….x Net host Subnet

24 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 Can put multiple subnets on one physical network Subnets not visible from the rest of the Internet

25 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

26 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)

27 Collection of Subnetworks

28 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

29 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)

30 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

31 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 Backbone network ( AS 1) 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)

32 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

33 Tunneling

34 Routing for Mobile Hosts 1- finding location of the mobile host 2- hand-off 3- security

35 Routing for Mobile Hosts (2) Packet routing for mobile users.

36 Routing in Ad Hoc Networks Military vehicles on battlefield.  No infrastructure. A fleet of ships at sea.  All moving all the time Emergency works at earthquake.  The infrastructure destroyed. A gathering of people with notebook computers.  In an area lacking

37 Ad Hoc Networks Two nodes are neighbor if they can communicate directly using their radio. danger of asymmetry, limited bandwidth, low battery life every thing is variable:  location,  neighbor-ship,  IP address, topology when you do not have any information about a destination, you must discover a route for it

38 AODV (Ad hoc On-Demand Distance Vector): Route Discovery A wants to know about I. It broadcasts a ROUTE REQUEST  Arrows show possible reverse routes. the request is broadcast until it reaches a node that knows about destination. then it forwarded along reverse path. limited broadcast or ring search

39 Route Maintenance D finds destinations that depend on G (i.e. E, G, I) D finds active neighbors that use G to reach somewhere ( i.e. A, B) D tell them to purge their route that pass through G,.