Kuliah 5 ROUTING.

Slides:



Advertisements
Similar presentations
Data and Computer Communications
Advertisements

Network Layer – Routing 2 Dr. Sanjay P. Ahuja, Ph.D. Fidelity National Financial Distinguished Professor of CIS School of Computing, UNF.
Computer Networking A Top-Down Approach Chapter 4.7.
COS 461 Fall 1997 Routing COS 461 Fall 1997 Typical Structure.
UNIT-IV Computer Network Network Layer. Network Layer Prepared by - ROHIT KOSHTA In the seven-layer OSI model of computer networking, the network layer.
Network Routing Algorithms
Computer Networks with Internet Technology William Stallings
Courtesy: Nick McKeown, Stanford
CSE331: Introduction to Networks and Security Lecture 9 Fall 2002.
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.
Slide Set 15: IP Multicast. In this set What is multicasting ? Issues related to IP Multicast Section 4.4.
Network Layer Introduction:
Chapter 10 Introduction to Wide Area Networks Data Communications and Computer Networks: A Business User’s Approach.
1 Computer Networks Routing Algorithms. 2 IP Packet Delivery Two Processes are required to accomplish IP packet delivery: –Routing discovering and selecting.
MULTICASTING Network Security.
CMPE 150- Introduction to Computer Networks 1 CMPE 150 Fall 2005 Lecture 21 Introduction to Computer Networks.
EECC694 - Shaaban #1 lec #7 Spring The OSI Reference Model Network Layer.
Routing Algorithms (Ch5 of Computer Network by A. Tanenbaum)
Routing and Routing Protocols Dynamic Routing Overview.
SAvPS – úvod Genči 2009 (bsaed on Tanenbaum’s slides.
Distance Vector Routing Protocols W.lilakiatsakun.
Packet-Switching Networks Routing in Packet Networks.
CSC 600 Internetworking with TCP/IP Unit 8: IP Multicasting (Ch. 17) Dr. Cheer-Sun Yang Spring 2001.
Network and Communications Ju Wang Chapter 5 Routing Algorithm Adopted from Choi’s notes Virginia Commonwealth University.
Network Layer4-1 Chapter 4: Network Layer r 4. 1 Introduction r 4.2 Virtual circuit and datagram networks r 4.3 What’s inside a router r 4.4 IP: Internet.
Chapter 22 Network Layer: Delivery, Forwarding, and Routing Part 5 Multicasting protocol.
Chi-Cheng Lin, Winona State University CS 313 Introduction to Computer Networking & Telecommunication Chapter 5 Network Layer.
Static versus Dynamic Routes Static Route Uses a protocol route that a network administrators enters into the router Static Route Uses a protocol route.
CSCI 465 D ata Communications and Networks Lecture 15 Martin van Bommel CSCI 465 Data Communications & Networks 1.
Data Communications and Networking Chapter 11 Routing in Switched Networks References: Book Chapters 12.1, 12.3 Data and Computer Communications, 8th edition.
1 Computer Communication & Networks Lecture 21 Network Layer: Delivery, Forwarding, Routing Waleed.
TELE202 Lecture 6 Routing in WAN 1 Lecturer Dr Z. Huang Overview ¥Last Lecture »Packet switching in Wide Area Networks »Source: chapter 10 ¥This Lecture.
Routing Networks and Protocols Prepared by: TGK First Prepared on: Last Modified on: Quality checked by: Copyright 2009 Asia Pacific Institute of Information.
THE NETWORK LAYER.
Stainov - DataComMET CS TC5353 THE NETWORK LAYER 5.2 ROUTING ALGORITHMS - adaptive Distance Vector Routing (Bellman-Ford, Ford-Fulkenson). It was used.
Routing Algorithms and IP Addressing Routing Algorithms must be ▪ Correctness ▪ Simplicity ▪ Robustness ▪ Stability ▪ Fairness ▪ Optimality.
Computer Networks22-1 Network Layer Delivery, Forwarding, and Routing.
Spring 2000CS 4611 Routing Outline Algorithms Scalability.
Spring Routing: Part I Section 4.2 Outline Algorithms Scalability.
Network-Layer Routing Routing tasks are methods of finding the paths for packet from their sources to their destinations. Routers are responsible mainly.
Distance Vector Routing
CS 6401 Intra-domain Routing Outline Introduction to Routing Distance Vector Algorithm.
Distance Vector and Link State Routing Pragyaditya Das.
4. Interconnecting Networks: Routers. © Tallal Elshabrawy 2 Bridges Vs Routers BRIDGES DO WELL IN SMALL (FEW HUNDRED HOSTS) WHILE ROUTERS USED IN LARGE.
Chapter 5 Network Layer.
Chapter 7 Packet-Switching Networks Shortest Path Routing.
+ Dynamic Routing Protocols 2 nd semester
The Network Layer UNIT-4 snistforum.com. Network Layer Design Issues Store-and-Forward Packet Switching Services Provided to the Transport Layer Implementation.
1 Computer Networks Chapter 5. Network layer The network layer is concerned with getting packets from the source all the way to the destination. Getting.
William Stallings Data and Computer Communications
Network Layer COMPUTER NETWORKS Networking Standards (Network LAYER)
Multicast Outline Multicast Introduction and Motivation DVRMP.
Routing and Switching Fabrics
Link-State Routing Protocols
THE NETWORK LAYER.
Chapter 5 The Network Layer.
Intra-Domain Routing Jacob Strauss September 14, 2006.
Routing in Packet Networks Shortest Path Routing
Link-State Routing Protocols
Intradomain Routing Outline Introduction to Routing
Chapter 7 Packet-Switching Networks
The Network Layer Network Layer Design Issues:
PRESENTATION COMPUTER NETWORKS
Communication Networks NETW 501
Link-State Routing Protocols
Delivery, Forwarding, and Routing
Network Layer (contd.) Routing
Routing and Switching Fabrics
Data Communication: Routing algorithms
Presentation transcript:

Kuliah 5 ROUTING

Routing Algorithm Routing algorithm: determine the route and maintain the routing table Desired properties for a routing algorithm: 1. correctness 2. simplicity 3. robustness with respect to failures and changing conditions 4. stability of the routing decisions 5. fairness of the resource allocation 6. optimality of the packet travel times

Source of Routing Table Information Manual Table created by hand Useful in small networks Useful if routes never change Automatic routing Software creates/updates table Needed in large networks Changes routes when failures occur

Source of Routing Table Information Static (nonadaptive) Routing The routing table is not changed according to network conditions. Adaptive Routing centralized routing : one node calculates the routing table isolated routing : do not exchange information with other node distributed routing : node exchanges information and makes routing decisions by itself

The Optimality Principle The optimality principle states that if router J is on the optimal path from router I to router K, then the routes from I to J and from J to K are also optimal. As a direct consequence of the optimality principle, we can see that the set of optimal routes from all sources to a given destination form a tree rooted at the destination. Such a tree is called a sink tree.

The Optimality Principle A sink tree for router B

Shortest Path Routing To compute the shortest path from A to D: Dijkstra’s algorithm

Shortest Path Routing To compute the shortest path from A to D

Shortest Path Routing To compute the shortest path from A to D

Shortest Path Routing To compute the shortest path from A to D

Shortest Path Routing To compute the shortest path from A to D

Shortest Path Routing To compute the shortest path from A to D

Flooding flooding P Transmit a copy of each packet it receives on every one of its transmission links advantages: robust, simple, broadcasting, discovery disadvantages: use too much resource To curb the flooding: 1. hop count 2. time stamp A variation of flooding that is slightly more practical is selective flooding. In this algorithm the routers do not send every incoming packet out on every line, only on those lines that are going approximately in the right direction.

... Distance Vector Routing Distance vector routing algorithms operate by having each router maintain a table (i.e., a vector) giving the best known distance to each destination and which line to use to get there. These tables are updated by exchanging information with the neighbors. E.g.: Routing table for Router A Destination cost(delay, distance, …) via B ... 10 B C 12 B D

Distance Vector Routing Once every T msec each router sends to each neighbor a list of its estimate delays to each destination. It also receives a similar list from each neighbor.

Distance Vector Routing

Distance Vector Routing The count-to-infinity problem Then A comes up. The good news spreads quickly. A is down

Distance Vector Routing Then A comes down. The bad news travels slowly. The count-to-infinity problem A is up

Distance Vector Routing Split Horizon 1 2 3 4 inf 2 3 4 inf inf 3 4 inf inf inf 4 inf inf inf inf inf=infinity

Link State Routing Distance vector routing was used in the ARPANET until 1979, when it was replaced by link state routing. Two primary reasons caused its demise. First, since the delay metric was queue length, it did not take line bandwidth into account when choosing routes. Second, the algorithm often took too long to converge, even with tricks like split horizon. For these reasons, it was replaced by an entirely new algorithm now called link state routing.

Link State Routing The idea behind link state routing is simple and can be stated as five parts. Each router must: 1. Discover its neighbors and learn their network addresses. 2. Measure the delay or cost to each of its neighbors. 3. Construct a packet telling all it has just learned. 4. Send this packet to all other routers. 5. Compute the shortest path to every other router.

Link State Routing Distance vector routing differs significantly from the link state routing. With link state algorithms, routers share only the identity of their neighbors, but they flood this information through the entire network. Distance vector algorithms adopt an opposite approach. Routers periodically share knowledge of the entire network, but only with their neighbors.

Link State Routing Learning about the Neighbors When a router is booted, its first task is to learn who its neighbor are. It accomplishes this goal be sending a special HELLO packet on each point-to-point line. The router on the other end is expected to send back a reply telling who it is. When two or more routers are connected by a LAN, the situation is slighted more complicated. One way to model the LAN is to consider it as a node itself.

Link State Routing Learning about the Neighbors An artificial node

Link State Routing Measuring Line Cost The link state routing algorithm requires each router to know, or at least have a reasonable estimate, of the delay to each of its neighbors. The most direct way to determine this delay is to send a special ECHO packet over the line that the other side is required to send back immediately. By measuring the round-trip time and dividing it by two, the sending router can get a reasonable estimate of the delay.

Link State Routing Building Link State Packets Building the link state packets is easy. The hard part is determining when to build them. 1. Periodically; 2. When some significant event occurs, such as a line or neighbor going down or coming back up.

Link State Routing Distributing the Link State Packets The fundamental idea is to use flooding to distribute the link state packets. To keep the flood in check, each packet contains a sequence number that is incremented for each new packet sent. Routers keep track of all the (source router, sequence) pairs they see. When a new link state packet comes in, it is checked against the list of packets already seen. 1. If new: forward on all lines except the one it arrived on 2. If duplicate or old packet: discard

Link State Routing Distributing the Link State Packets Problems: If the sequence numbers wrap around, confusion will reign. The solution here is to use a 32-bit sequence number. With one link state packet per second, it would take 137 years to wrap around. If a router crashes, it will lose track of its sequence number. If a sequence number is ever corrupted and 65540 is received instead of 4 (a 1-bit error), packets 5 through 65540 will be rejected as obsolete. The solution to all these problems is to include the age of each packet after the sequence number and decrement it once per second. When the age hits zero, the information from that router is discarded. The age field is also decremented by each router during the initial flooding process, to make sure no packet can get lost and live for an indefinite period of time.

Hierarchical Routing From U.S. send a packet to if.its.ac.id 1. first send to domain id (Indonesia) 2. then to subdomain MONE (ac) 3. then to subsubdomain its 4. then to host if Advantage: simple, efficient, and saving routing table space In a 1000 users network, each routing table needs 999 entries. If it is divided into 10 domains, then each table only needs 99+9=108 entries.

Hierarchical Routing

Hierarchical Routing Unfortunately, the gain in routing table space are not free. There is a penalty to be paid, and this penalty is in the form of increased path length. For example, the best route from 1A to 5C is via region 2, but with hierarchical routing all traffic to region 5 goes via region 3, because that is better for most destinations in region 5. When a single network becomes very large, an interesting question is: How many levels should the hierarchy have? Answer: the optimal number of levels for an N router subnet is lnN, requiring a total of e lnN entries per router.

Broadcast Routing Simple broadcasting method : simply send a distinct packet to each destination. Waste bandwidth and require the source to have a complete list of all destinations. Flooding : it generates too many packets and consumes too much bandwidth. Multidestination Routing: The router generates a new copy of the packet for each output line to be used and includes in each packet only those destinations that are to use the line. In effect, the destination set is partitioned among the output lines. Reverse Path Forwarding :

Broadcast Routing Reverse Path Forwarding When a broadcast packet arrives at a router, the router checks to see if the packet arrived on the line that is normally used for sending packets to the source of the broadcast. If so, forward it.

Multicast Routing To do multicasting, group management is required. Some way is needed to create and destroy groups, and for processes to join and leaves groups. It is important that routers know which of their hosts belong to which groups. Either hosts must inform their routers about changes in group membership, or routers must query their hosts periodically. Either way, routers learn about which of their hosts are in which groups. Routers tell their neighbors, so the information propagates through the subnet.

Multicast Routing To do multicast routing, each router computes a spanning tree covering all other routers in the subnet. A multicast tree for group 1

Multicast Routing Various ways of pruning the spanning tree are possible. The simplest one can be used if link state routing is used, and each router is aware of the complete subnet topology, including which hosts belong to which groups. Then the spanning tree can be pruned by starting at the end of each path and working toward the root, removing all routers that do not belong to the group in question.