© Janice Regan, CMPT 128, 2007-2012 0 CMPT 371 Data Communications and Networking BGP, Flooding, Multicast routing.

Slides:



Advertisements
Similar presentations
Border Gateway Protocol Ankit Agarwal Dashang Trivedi Kirti Tiwari.
Advertisements

Network Layer4-1 Hierarchical Routing scale: with 200 million destinations: r can’t store all dest’s in routing tables! r routing table exchange would.
Lecture 9 Overview. Hierarchical Routing scale – with 200 million destinations – can’t store all dests in routing tables! – routing table exchange would.
Path Vector Routing NETE0514 Presented by Dr.Apichan Kanjanavapastit.
Routing: Cores, Peers and Algorithms
Computer Networks with Internet Technology William Stallings
1 Interdomain Routing Protocols. 2 Autonomous Systems An autonomous system (AS) is a region of the Internet that is administered by a single entity and.
Chapter 4: Network Layer 4. 1 Introduction 4.2 Virtual circuit and datagram networks 4.3 What’s inside a router 4.4 IP: Internet Protocol –Datagram format.
Dynamic routing Routing Algorithm (Dijkstra / Bellman-Ford) – idealization –All routers are identical –Network is flat. Not true in Practice Hierarchical.
1 6/14/ :27 CS575Internetworking & Routers1 Rivier College CS575: Advanced LANs Chapter 13: Internetworking & Routers.
1 ELEN 602 Lecture 20 More on Routing RIP, OSPF, BGP.
Routing So how does the network layer do its business?
Computer Networking Lecture 10: Inter-Domain Routing
Unicast Routing Protocols: RIP, OSPF, and BGP
Routing.
© Janice Regan, CMPT 128, CMPT 371 Data Communications and Networking Routing in the Internet Internal Routing Protocols.
ROUTING ON THE INTERNET COSC Aug-15. Routing Protocols  routers receive and forward packets  make decisions based on knowledge of topology.
1 CMPT 471 Networking II BGP. © Janice Regan, External Gateway Protocol  An EGP is designed to control the passage of information between autonomous.
TCP/IP Protocol Suite 1 Chapter 14 Upon completion you will be able to: Unicast Routing Protocols: RIP, OSPF, and BGP Distinguish between intra and interdomain.
Dr. John P. Abraham Professor University of Texas Pan American Internet Routing and Routing Protocols.
Open Shortest Path First (OSPF) -Sheela Anand -Kalyani Ravi -Saroja Gadde.
Chapter 22 Network Layer: Delivery, Forwarding, and Routing
1 Computer Communication & Networks Lecture 22 Network Layer: Delivery, Forwarding, Routing (contd.)
Unicast Routing Protocols  A routing protocol is a combination of rules and procedures that lets routers in the internet inform each other of changes.
Network Layer introduction 4.2 virtual circuit and datagram networks 4.3 what’s inside a router 4.4 IP: Internet Protocol  datagram format  IPv4.
Routing protocols Basic Routing Routing Information Protocol (RIP) Open Shortest Path First (OSPF)
CS 3830 Day 29 Introduction 1-1. Announcements r Quiz 4 this Friday r Signup to demo prog4 (all group members must be present) r Written homework on chapter.
BGP Border Gateway Protocol By Amir and David. What Is BGP ? Exterior gateway protocols are designed to route between autonomous systems. AS’s : A set.
TCP/IP Protocol Suite 1 Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display. Chapter 11 Unicast Routing Protocols.
Border Gateway Protocol
1 Internet Routing. 2 Terminology Forwarding –Refers to datagram transfer –Performed by host or router –Uses routing table Routing –Refers to propagation.
Border Gateway Protocol (BGP) W.lilakiatsakun. BGP Basics (1) BGP is the protocol which is used to make core routing decisions on the Internet It involves.
#1 EETS 8316/NTU CC725-N/TC/ Routing - Circuit Switching  Telephone switching was hierarchical with only one route possible —Added redundant routes.
Network Layer4-1 Intra-AS Routing r Also known as Interior Gateway Protocols (IGP) r Most common Intra-AS routing protocols: m RIP: Routing Information.
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.
Chapter 16 Exterior Routing Protocols and Multicasting 1 Chapter 16 Exterior Routing Protocols And Multicasting.
Routing Networks and Protocols Prepared by: TGK First Prepared on: Last Modified on: Quality checked by: Copyright 2009 Asia Pacific Institute of Information.
ICS 156: Networking Lab Magda El Zarki Professor, ICS UC, Irvine.
Chapter 14 1 Unicast Routing Protocols There isn’t a person anywhere that isn’t capable of doing more than he thinks he can. - Henry Ford.
Internet Protocols. ICMP ICMP – Internet Control Message Protocol Each ICMP message is encapsulated in an IP packet – Treated like any other datagram,
An internet is a combination of networks connected by routers. When a datagram goes from a source to a destination, it will probably pass through many.
Teknik Routing Pertemuan 10 Matakuliah: H0524/Jaringan Komputer Tahun: 2009.
4: Network Layer4b-1 OSPF (Open Shortest Path First) r “open”: publicly available r Uses Link State algorithm m LS packet dissemination m Topology map.
Routing in the Inernet Outcomes: –What are routing protocols used for Intra-ASs Routing in the Internet? –The Working Principle of RIP and OSPF –What is.
Transport Layer3-1 Network Layer Every man dies. Not every man really lives.
Routing Protocols Brandon Wagner.
Computer Networks22-1 Network Layer Delivery, Forwarding, and Routing.
1 Border Gateway Protocol (BGP) and BGP Security Jeff Gribschaw Sai Thwin ECE 4112 Final Project April 28, 2005.
Routing Protocols COSC 541 Data Commun. System & Networks Yue Dou.
1 Chapter 4: Internetworking (IP Routing) Dr. Rocky K. C. Chang 16 March 2004.
1 Chapter 14-16a Internet Routing Review. Chapter 14-16: Internet Routing Review 2 Introduction Motivation: Router performance is critical to overall.
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.
BGP Basics BGP uses TCP (port 179) BGP Established unicast-based connection to each of its BGP- speaking peers. BGP allowing the TCP layer to handle such.
Fundamentals of Computer Networks ECE 478/578
Inter-domain Routing Outline Border Gateway Protocol.
Distance Vector Routing
ROUTING ON THE INTERNET COSC Jun-16. Routing Protocols  routers receive and forward packets  make decisions based on knowledge of topology.
1 CMPT 471 Networking II OSPF © Janice Regan,
Dynamic routing Routing Algorithm (Dijkstra / Bellman-Ford) – idealization All routers are identical Network is flat. Not true in Practice Hierarchical.
BGP 1. BGP Overview 2. Multihoming 3. Configuring BGP.
CMPT 371 Data Communications and Networking Routing in the Internet
(How the routers’ tables are filled in)
Border Gateway Protocol
Dynamic routing Routing Algorithm (Dijkstra / Bellman-Ford) – idealization All routers are identical Network is flat. Not true in Practice Hierarchical.
ICMP ICMP – Internet Control Message Protocol
Dynamic routing Routing Algorithm (Dijkstra / Bellman-Ford) – idealization All routers are identical Network is flat. Not true in Practice Hierarchical.
Department of Computer and IT Engineering University of Kurdistan
BGP Instability Jennifer Rexford
Computer Networks Protocols
Dynamic routing Routing Algorithm (Dijkstra / Bellman-Ford) – idealization All routers are identical Network is flat. Not true in Practice Hierarchical.
Presentation transcript:

© Janice Regan, CMPT 128, CMPT 371 Data Communications and Networking BGP, Flooding, Multicast routing

Janice Regan © Oct Some ASs A1A1 A2A2 A4A4 A3A3 C2 C1 B2 C4 B6 B1 B3 B5 B4 C5 AS A AS B AS C C3 IRP B IRP C IRP A Gateway router

Janice Regan © Oct ERP : Approach?  Link-state and distance-vector not effective for exterior router protocol  Link state requires flooding of link state information, for a large net this is not practical  Distance-vector requires all routers share common distance metric, different ASs may use different metrics  ASs may have different priorities such as restrictions that prohibit use of certain other AS, Distance-vector gives no information about ASs visited on route (policy routing)

Janice Regan © Oct Path Vector Approach  No path cost information used  Each block of information lists all ASs visited on a route  Allows the receiver to know the source for each path and whether the path originates in the local AS (coming from IRP or ERP)  Can be used to check for loops (any node appearing more than once)  Enables router to perform policy routing based on Avoiding transiting a particular AS link speed, capacity, tendency to become congested, overall quality of operation, security minimizing number of transit ASs

Janice Regan © Oct Border Gateway Protocol  BGP is the preferred ERP for or use with TCP/IP internets  BGP messages are sent over reliable TCP connections between gateway routers, a BGP session includes all messages sent through one of these TCP connections.  4 message types: Open, Update, Keep Alive, Notification  Gateway routers running BGP are know as BGP peers  peers may be in different ASs, eBGP or external BGP session  Peers may be in the same AS, iBGP or internal BGP session

Janice Regan © Oct Some ASs A1A1 A2A2 A4A4 A3 C2 C1 B2 C4 B6 B1 B3 B5 B4 C5 AS A AS B AS C C3 IRP B IRP C IRP A Gateway router

eBGP and iBGP  Consider the previous slide  eBGP could be used to transfer path information between gateway routers A3 and C5 and between routers C2 and B3.  AS B has more than one gateway router  AS B uses iBGP to transfer information between gateway routers in AS B Janice Regan © Oct

7 Border Gateway Protocol  Procedures that are part of BGP  Neighbor acquisition: Determine if a router physically connected to this router is willing to be a neighbor and Initiate neighbor relationship, negotiating parameters  Neighbor reachability: maintain neighbor relationship  Network reachability: build/maintain routing database

Janice Regan © Oct BGP: neighbor acquisition  Open TCP connection between a pair of connected (neighbor) routers  Each of the pair of routers sends an Open message  Includes proposed hold time, senders AS #, identifier  Identifier is an IP address uniquely identifying the sender  Each of the pair of routers receives the others Open message, If it wishes to be a neighbor it will respond to the Open message with a Keep Alive message (like an ACK) and  Select the minimum of local/received hold time, to give time between subsequent Keep Alive and/or Update messages

Janice Regan © Oct BGP: reachability  If no Keep Alive or Update message is received during the agreed upon hold time the connection is terminated.  If a neighbor wishes to continue the neighbor relationship but has no routing update to send it will send a Keep Alive message once per hold interval  Each BGP router maintains a database of reachable networks. When a change is made to this database, that is when new or updated routing information is available the router will send an Update Message  Update includes, a list of routes being withdrawn and information about new routes to be added  Each update message may contain multiple paths to add but includes one set of path information for all these paths

Janice Regan © Oct Routing Information: Paths  Each path consists of a list of ASs visited and a list of networks (CIDR network address/prefix) reachable through the gateway routers in each of the ASs visited.  When a BGP peer learns of a new path it will create an entry in its routing table for that path. Once it learns that path it can use the path.  A BGP peer may choose to advertise a path. An advertised route can be used by your neighbors to reach all the networks in the path  Advertised networks may be aggregated and advertised as one network (may be one network in the routing table)

Janice Regan © Oct  Customers of provider with AS T, have been allocated addresses that form AS X and Y AS: T / /23 AS: X /24 AS: Y /24 Example: AS path construction A B C D E To AS Z

Janice Regan © Oct Announcing paths  Want to send information about the path to AS T and the path through AS T to routers outside AS T to build a path from outside AS T to AS T  Consider a AS Z connected to T by a point to point connection from router C to router X in AS Z ( a neighbor of T)  Simplest way to advertise the networks reached in and through T is to announce three paths (1 to each AS) Path 1: “T,” reaches /23 Path 2: “T,X, “ reaches /24 Path 3: “T,Y,” reaches /24

Janice Regan © Oct BGP routing  Each BGP peer has it own import policy  Can choose to accept a new route or ignore it  If it accepts the route it can choose if it will advertise that route (make itself an intermediate step on a route from an external source to an external receiver)  Each time a BGP peer chooses to accept and advertise a new route it will append its own locally accessible networks to the path.  Before appending it will check that those networks are not already a part of the path. If they are a circular route has been detected and the route must be dropped.

Broadcast and multicast routing  We will consider 3 approaches  Uncontrolled Flooding  Sequence number Controlled Flooding  Reverse Path Forwarding  Spanning Tree broadcast Janice Regan © Oct

Janice Regan © Oct Uncontrolled Flooding  Requires no information about the network  A packet that is being sent from A to B is  Sent to all the nearest neighbors of A  Each neighbor receives the packet, then transmits the packet to all it’s own nearest neighbors, except the one it received the packet from  The packet takes all possible paths through network to B  Multiple copies of the packet will arrive at B, the first copy of the packet will arrive along the minimum cost path through the network.

Janice Regan © Oct Flooding: Example  HOP 1: The source station broadcasts the packet to all adjacent nodes. I I J L K E FH G B D C A

Janice Regan © Oct Flooding: Example  HOP 2: The receiving stations broadcast the packet to all their own nearest neighbors. The receiving stations do not broadcast back to the station they received the message from. I J L K E FH G B D C A

Janice Regan © Oct Flooding: Example  HOP 2: follow the packets I I J L K E FH G B D C A

Janice Regan © Oct Flooding: Example  HOP 3: The receiving stations for hop 2 broadcast the packets to all their own adjacent nodes (except the one they received it from) I I J L K E FH G B D C A

Janice Regan © Oct Flooding: Example  HOP 3: follow the packets I J L K E FH G B D C A

Janice Regan © Oct Flooding: Example  HOP 4: The stations receiving the packets broadcast in hop 3 broadcast the packets to all their own nearest neighbors ( not including the station they received the message from). I J L K E FH G B D C A

Janice Regan © Oct Advantages of flooding  Because packets follow every possible path, the message will get there despite link failures, so long as one path remains active (good for emergency messages)  Because packets follow every possible path at least one packet will arrive over the minimum cost route (good for establishing a virtual circuit path)  All nodes directly connected to the source will receive the message (good for getting information to all nodes)

Janice Regan © Oct Disadvantages and a simple fix  The biggest disadvantage of flooding in the volume of traffic created  If there are multiple paths to a particular node it will receive and rebroadcast the packet again and again  This creates a broadcast-storm, an increasing number of packets that continue to multiply as they travel through the network  The simplest way to prevent this is to place a short lifetime on the packet so it can only rebroadcast a few times (few time = diameter of network A better solution is sequence number controlled flooding. Each broadcast (flooded) packet is given an identifier (source id …) and a broadcast sequence number. Each node will rebroadcast a packet with a particular ID and broadcast sequence number only once

Janice Regan © Oct Sequence number controlled Flooding  HOP 1: The source station broadcasts the packet to all adjacent nodes. I I J L K E FH G B D C A

Janice Regan © Oct  HOP 1: Follow the packets I I J L K E FH G B D C A Sequence number controlled Flooding

Janice Regan © Oct  HOP 2: The receiving stations for hop 1 broadcast the packets to all their own adjacent nodes (except the one they received it from) I I J L K E FH G B D C A

Janice Regan © Oct  HOP 2: Follow the packets I J L K E FH G B D C A

Janice Regan © Oct B  HOP 3: The stations receiving the packets broadcast in hop 2 broadcast the packets to all their own nearest neighbors ( not including the station they received the message from). Nodes throw copies of the packet away and do not forward copies I J L K E FH G D C E F A

Janice Regan © Oct B  HOP 3: The stations receiving the packets broadcast in hop 2 broadcast the packets to all their own nearest neighbors ( not including the station they received the message from). Nodes throw copies of the packet away and do not forward copies I J L K E FH G D C E F A

Janice Regan © Oct  HOP 3: Follow the packets I J L K E FH G B D C B E F E F A

Janice Regan © Oct  HOP 4: The stations receiving the packets broadcast in hop 3 broadcast the packets to all their own nearest neighbors ( not including the station they received the message from). Nodes throw copies of the packet away and do not forward copies I J L K E FH G B D C B E F E F A

Janice Regan © Oct OSPF Flooding protocol  A message(LSA) contains a database record. A database record contains information about one link between two routers in the graph discussed earlier. (one link is in one direction)  Each message contains a time stamp or message number  These message numbers are used by the receiving node to determine age of the record  Send means transmit through all attached interfaces except the one on which the incoming message arrived

Janice Regan © Oct OSPF Flooding protocol  Receive message: Find the corresponding record in the local database if it exists  If the record is not yet in the local database add the record. Send the message  If the record’s message number is larger than the message number in the data base, replace the message in the database with the new record. Send the message.  If the records message number is the same as the message number in the database do nothing  If the records message number is smaller than the message number in the database, send the record in the database back through the interface on which the message arrived