Routing Protocol - BGP



Similar documents
BGP Terminology, Concepts, and Operation. Chapter , Cisco Systems, Inc. All rights reserved. Cisco Public

Using the Border Gateway Protocol for Interdomain Routing

BGP4 Case Studies/Tutorial

How To Understand Bg

BSCI Module 6 BGP. Configuring Basic BGP. BSCI Module 6

Chapter 6: Implementing a Border Gateway Protocol Solution for ISP Connectivity

APNIC elearning: BGP Attributes

Border Gateway Protocol (BGP)

Configuring BGP. Cisco s BGP Implementation

APNIC elearning: BGP Basics. Contact: erou03_v1.0

BGP Router Startup Message Flow

Gateway of last resort is to network

BGP overview BGP operations BGP messages BGP decision algorithm BGP states

BGP Basics. BGP Uses TCP 179 ibgp - BGP Peers in the same AS ebgp - BGP Peers in different AS's Private BGP ASN. BGP Router Processes

DD2491 p Inter-domain routing and BGP part I Olof Hagsand KTH/CSC

- Border Gateway Protocol -

CS551 External v.s. Internal BGP

BGP Best Path Selection Algorithm

IP Routing Tecnologie e Protocolli per Internet II rev 1

Chapter 49 Border Gateway Protocol version 4 (BGP-4)

Internet inter-as routing: BGP

BGP Attributes and Path Selection

Inter-domain Routing Basics. Border Gateway Protocol. Inter-domain Routing Basics. Inter-domain Routing Basics. Exterior routing protocols created to:

BGP Advanced Routing in SonicOS

BGP-4 Case Studies. Nenad Krajnovic.

Border Gateway Protocol BGP4 (2)

Module 7. Routing and Congestion Control. Version 2 CSE IIT, Kharagpur

Multihomed BGP Configurations

E : Internet Routing

How To Set Up Bgg On A Network With A Network On A Pb Or Pb On A Pc Or Ipa On A Bg On Pc Or Pv On A Ipa (Netb) On A Router On A 2

> Border Gateway Protocol (BGP-4) Technical Configuration Guide. Ethernet Routing Switch. Engineering

basic BGP in Huawei CLI

--BGP 4 White Paper Ver BGP-4 in Vanguard Routers

no aggregate-address address mask [as-set] [summary-only] [suppress-map map-name] [advertise-map map-name] [attribute-map map-name]

netkit lab bgp: prefix-filtering Università degli Studi Roma Tre Dipartimento di Informatica e Automazione Computer Networks Research Group

Internet inter-as routing: BGP

Exterior Gateway Protocols (BGP)

BGP Link Bandwidth. Finding Feature Information. Prerequisites for BGP Link Bandwidth

Examination. IP routning på Internet och andra sammansatta nät, DD2491 IP routing in the Internet and other complex networks, DD2491

Fireware How To Dynamic Routing

Routing in Small Networks. Internet Routing Overview. Agenda. Routing in Large Networks

BGP Link Bandwidth. Finding Feature Information. Contents

Configuring and Testing Border Gateway Protocol (BGP) on Basis of Cisco Hardware and Linux Gentoo with Quagga Package (Zebra)

Understanding Route Aggregation in BGP

HP Networking BGP and MPLS technology training

Lecture 18: Border Gateway Protocol"

Today s Agenda. Note: it takes years to really master BGP Many slides stolen from Prof. Zhi-Li Zhang at Minnesota and from Avi Freedman s slides

Configuring BGP. The Cisco BGP Implementation

Border Gateway Protocol Best Practices

Transitioning to BGP. ISP Workshops. Last updated 24 April 2013

Load balancing and traffic control in BGP

MPLS VPN Route Target Rewrite

Module 12 Multihoming to the Same ISP

Based on Computer Networking, 4 th Edition by Kurose and Ross

Simple Multihoming. ISP/IXP Workshops

Exam Name: BGP + MPLS Exam Exam Type Cisco Case Studies: 3 Exam Code: Total Questions: 401

Understanding Virtual Router and Virtual Systems

Administra0via. STP lab due Wednesday (in BE 301a!), 5/15 BGP quiz Thursday (remember required reading), 5/16

Advanced BGP Policy. Advanced Topics

Border Gateway Protocol (BGP-4)

Border Gateway Protocol, Route Manipulation, and IP Multicast

The ISP Column. An Introduction to BGP the Protocol

Inter-Autonomous Systems for MPLS VPNs

MPLS VPN. Agenda. MP-BGP VPN Overview MPLS VPN Architecture MPLS VPN Basic VPNs MPLS VPN Complex VPNs MPLS VPN Configuration (Cisco) L86 - MPLS VPN

Introduction to BGP. Cisco ISP Workshops. 2003, Cisco Systems, Inc. All rights reserved.

ITRI CCL. IP Routing Primer. Paul C. Huang, Ph.D. ITRI / CCL / N300. CCL/N300; Paul Huang 1999/6/2 1

JNCIA Juniper Networks Certified Internet Associate

IPv6 over MPLS VPN. Contents. Prerequisites. Document ID: Requirements

Bell Aliant. Business Internet Border Gateway Protocol Policy and Features Guidelines

Cisco Router Configuration Tutorial

GregSowell.com. Mikrotik Routing

Interdomain Routing. Outline

Route Discovery Protocols

Simple Multihoming. ISP Workshops. Last updated 30 th March 2015

BGP Operations and Security. Training Course

Textbook Required: Cisco Networking Academy Program CCNP: Building Scalable Internetworks v5.0 Lab Manual.

Inter-domain Routing. Outline. Border Gateway Protocol

This feature was introduced. This feature was integrated in Cisco IOS Release 12.2(11)T.

Configuring Route Maps and Policy-Based Routing

BGP Multihoming. Why Multihome? Why Multihome? Why Multihome? Why Multihome? Why Multihome? Redundancy. Reliability

BGP: Frequently Asked Questions

Active measurements: networks. Prof. Anja Feldmann, Ph.D. Dr. Nikolaos Chatzis Georgios Smaragdakis, Ph.D.

BGP Multihoming Techniques

Understanding Route Redistribution & Filtering

MPLS VPN over mgre. Finding Feature Information. Prerequisites for MPLS VPN over mgre

BGP Multihoming Techniques

Tutorial: Options for Blackhole and Discard Routing. Joseph M. Soricelli Wayne Gustavus NANOG 32, Reston, Virginia

BGP Routing. Course Description. Students Will Learn. Target Audience. Hands-On

Edge-1#show ip route Routing entry for /24. Known via "bgp 65001", distance 200, metric 0. Tag 65300, type internal

MPLS. Cisco MPLS. Cisco Router Challenge 227. MPLS Introduction. The most up-to-date version of this test is at:

Load balancing and traffic control in BGP

BGP. 1. Internet Routing

BGP as an IGP for Carrier/Enterprise Networks

Example: Advertised Distance (AD) Example: Feasible Distance (FD) Example: Successor and Feasible Successor Example: Successor and Feasible Successor

Border Gateway Protocol (BGP) Conformance and Performance Testing

CS 457 Lecture 19 Global Internet - BGP. Fall 2011

Analyzing Capabilities of Commercial and Open-Source Routers to Implement Atomic BGP

Configuring BGP Services

Transcription:

Routing Protocol - BGP

BGP Enterprise Network BGP ISP AS 3000 AS 2000 BGP is using between Autonomous Systems

BGP(cont.) RFC 1771(BGPv4) Support CIDR Transfer the AS information to reach destination Using TCP(Port 179) Incremental Update keepalive

Why BGP Suitable to large network Policy based routing Path for IN/OUT traffic Filtering

Autonomous System(AS) The group of routers and networks under same routing administration The need of AS Maintain independence of routing policy Localize the errors or faults of specific network

Autonomous System(AS) Interior Gateway Protocol Used inside AS RIP, OSPF, IS-IS, IGRP, etc Exterior Gateway Protocol Used between ASs EGP, BGP The scope of AS number 1-65535(64512-65535 for private)

AS connection Single-Homed AS Static IGP BGP AS100 AS200 A ISP Customer

MultiHomed Nontransit AS AS300 AS connection Customer 2 AS200 AS100 ISP Customer 1

MultiHomed Transit AS AS300 AS connection Customer 2 AS200 AS100 ISP Customer 1

Policy-based routing AS200 AS100 AS400 AS300 AS500

Path-vector routing IGP announce networks and describe the cost to reach those networks. BGP announces pathways and the networks that are reachable at the end of the pathway. BGP describes the pathway by using attributes which are similar to metrics. The adminsitrator define routing policies.

BGP Database Neighbor table List of BGP neighbors BGP forwarding table List of all networks learned from each neighbor IP routing table List of best path to destination networks

BGP Message Open Version number AS number Holdtime Router ID Keepalive Update Notification When error is detected

ebgp Peering EBGP (External BGP) EBGP has peering relationship between routers in different ASs EBGP is normally running on the same subnet Must be connected directly Exceptions : use multi-hop AS100 AS200 AS300 A EBGP neighbors EBGP neighbors

ibgp Peering I IBGP (Internal BGP) IBGP has peering inside same AS Don t have to be connected directly AS400 AS100 AS200 IBGP IBGP AS300 IBGP neighbors A IBGP IBGP

IBGP split horizon rule BGP AS100 A BGP ospf ospf No IBGP update BGP ospf AS300 BGP ospf IBGP By default, routes learned via IBGP are never propagated to other IBGP peers

BGP & IGP synchrnization AS100 AS200 R4 EBGP IBGP IBGP A R1 R2 IBGP AS300 10.0.0.0/24 R3 A R5 EBGP

Path Attributes Make routing policy with adjusting Path Attribute Types Well-known mandatory Origin, as-path, next-hop Well-known discretionary : may not in update message Local-pref Optional transitive Aggregator, community Optional non-transitive Multi-exit-disc, originator_id, cluster_list

Path Attributes(cont.) ORIGIN(1) AS_PATH(2) NEXT_HOP(3) MULTI_EXIT_DISC(4) LOCAL_PREF(5) ATOMIC_AGGREGATE(6) AGGREGATOR(7) COMMUNITY(8) ORIGINATOR_ID(9) Cluster List(10) WEIGHT(CISCO ONLY)

origin The source(origin) of a speicifi routing update. IGP BGP Incomplete Priority IGBP > EBGP > Incomplete

AS_Path The lists of AS which go through to get reach to destination Used for Loop detection Apply routing policy to each AS path

AS_Path (cont.) AS100 AS200 130.13.0.0/16 140.14.0.0/16 Network as-path 130.13.0.0/16 200 100 140.14.0.0/16 200 150.15.0.0/16 160.16.0.0/16 400 170.17.0.0/16 500 AS400 AS300 150.15.0.0/16 Network as-path 130.13.0.0/16 100 140.14.0.0/16 150.15.0.0/16 300 160.16.0.0/16 300 400 170.17.0.0/16 300 500 Network as-path 130.13.0.0/16 300 200 100 140.14.0.0/16 300 200 150.15.0.0/16 300 160.16.0.0/16 300 400 170.17.0.0/16 AS500 160.16.0.0/16 170.17.0.0/16

AS_Path Filtering AS200 130.13.1.6/30 130.13.1.5/30 AS100 RTA 150.15.X.X AS300 How to block 150.15.x.x via AS200 originating from AS300 on RTA?

AS_Path Filtering(cont.) RTA# router bgp 100 neighbor 130.13.1.6 remote-as 200 neighbor 130.13.1.6 filter-list 10 in ip as-path access-list 10 deny 300 ip as-path access-list 10 permit.*

Next hop behavior BGP is an AS-by-AS routing protocol, not router-by-router routing protocol In BGP, the next hop means the IP address to reach the next AS

Next_Hop EBGP Next-Hop AS200 140.14.1.1 140.14.1.2 AS100 140.14.0.0/16 130.13.0.0/16 R1 R2 AS300 150.15.0.0/16 Network Next-hop 140.14.0.0/16 140.14.1.1 150.15.0.0/16 140.14.1.1

Next_Hop (cont.) IBGP Next-Hop AS200 140.14.0.0/16 140.14.1.1 140.14.1.2 R1 R2 Network Next-hop 140.14.0.0/16 140.14.1.1 150.15.0.0/16 140.14.1.1 B 130.13.1.1 AS100 130.13.0.0/16 130.13.1.2 R3 AS300 150.15.0.0/16 Network Next-hop 140.14.0.0/16 140.14.1.1 150.15.0.0/16 140.14.1.1

BGP Command Next-hop-self Router(config-router)# Neighbor {ip-address peer-group-name} next-hop-self Forces all updates for this neighbor to be advertised with this router as the next hop The ip address used for the next-hop-self will be the same as the source IP address of the BGP packet.

Multi_Exit_Discriminator AS200 Network Metric 130.13.0.0 200 >130.13.0.0 120 130.13.0.0 MED 120 130.13.0.0 MED 200 AS100 130.13.0.0

Local_Preference AS200 AS400 160.16.0.0/16 local-pref local-pref 500 700 AS300 AS100 network local-pref 160.16.0.0/16 500 >160.16.0.0/16 700

Weight AS200 AS400 160.16.0.0 AS300 RTB RTD RTC 203.250.14.1 203.250.15.2 AS100 RTA Network Weight 160.16.0.0 20000 >160.16.0.0 45000 RTA# router bgp 100 neighbor 203.250.14.1 remote-as 200 neighbor 203.250.14.1 weight 20000 neighbor 203.250.15.2 remote-as 300 neighbor 203.250.15.2 weight 45000

IBGP Mesh Solution A router running IBGP doesn t relay routing updates from another IBGP router This characteristic require full IBGP mesh between IBGP routers Problems : If there exists n peers, then [n(n-1)/2] session is needed Solutions Route Reflector Confederation

Route Reflector(RR) Terminology Route Reflector(RR) Rout Reflector Client Cluster : RR + Clients Cluster ID Configuration On RR : make neighbor relationship with clients On clients : make neighbor relationship with only RR

Route Reflector(cont.) Cluster RTB(RR) AS200 203.250.14.1 203.250.15.2 AS100 RTA RTC RTB# router bgp 100 neighbor 203.250.15.2 remote-as 100 neighbor 203.250.15.2 route-reflector-client neighbor 203.250.14.1 remote-as 100 neighbor 203.250.14.1 route-reflector-client

NON-Route Reflector Cluster RTB(RR) AS100 AS200 203.250.14.1 203.250.15.2 RTA RTC RTD NON route reflector client When the non-rrc send update information to RR, the RR send it only to RRC When RRC sends update information to RR, RR send it to other RRC and non-rrc When RR gets the update information through EBGP, RR sends it to all routers.

Confederation Make sub(mini) AS inside public AS It appears just one public AS outside the AS IBGP peering inside sub AS Pseudo EBGP peering between sub ASs Advantages can minimize the number of IBGP sessions dramatically

Confederation sub-as 65200 RTB sub-as 65100 RTA RTC AS 100 sub-as 65300 RTB# router bgp 65200 bgp confederation identifier 100 bgp confederation peers 65100 65300 neighbor 203.250.14.1 remote-as 65100 neighbor 203.250.15.2 remote-as 65300

BGP Decision Process route with a reachable next hop route with largest weight route with largest local preference route locally originated route with shortest as-path

BGP Decision Process(cont.) Route with lowest origin type - igp>egp>incomplete Route with lowest MED EBGP, next Confederation External, next IBGP Route with nearest IGP neighbor Route with the lowest BGP router ID

Neighboring negotiation Idle Searching routing table to see if a route exists to reach the neighbor Connect Opensent Sent open message Active When no response for 5sec, go back to idle Openconfirm established

Neighboring negotiation

BGP Operation Establish TCP connection Negotiate parameter(ex: version number) between peers Exchange entire routing table at initial phase Exchange incremental updates after initial phase Send keepalives to confirm connectivity between peers

BGP Operation(cont.) Get path information about destination prefix from internal and external BGP peers Register the best route in the routing table Can use routing policy when select the best route

BGP Command Enable BGP routing protocol Router(config)# router bgp autonomous-system Activate the BGP session Router(config-router)# neighbor ip-address remote-as autonomous-system

BGP Command(cont.) Declare network to advertise Router(config-router)# network network-number Reset BGP connection to update BGP information, but be cautious Router# clear ip bgp { * address }

BGP Command(cont.) Disable synchronization Router(config-router)# no synchronization

BGP Configuration Example 19.0.0.0 15.0.0.0 15.1.1.0 AS 100 AS 200 A B 15.1.1.1 15.1.1.2 Router A router bgp 100 network 19.0.0.0 neighbor 15.1.1.2 remote-as 200 Router B router bgp 200 network 15.0.0.0 neighbor 15.1.1.1 remote-as 100

Source IP address Neighboring process Receive BGP pkt Compare the source address of the packet with the list of neighbor statements Match: neighboring is established No match: the packet is ignored The source IP address of BGP must be listed in the neighbor statement of the other routers

IBGP peering: source address AS200 L0 2.2.2.2 10.1.1.2 R2 10.2.2.2 10.1.1.1 10.2.2.4 L0 1.1.1.1 R1 R4 L0 4.4.4.4 10.3..3.1 10.4.4.4 10.3.3.2 R3 L0 3.3.3.3 10.4.4.3 To Establish the IBGP sesseion between R1 and R4 R1: ip address in the neighbor statement? R4: ip address in the neighbor statement?

BGP Command override source IP addr for BGP pkt Router(config-router)# Neighbor {ip-address peer-group-name} update-source Interface-type interface-number Loopback interface is usually used Normally used only with IBGP neighbors

AS200 EBGP-multihop 10.2.3.1 10.2.3.2 AS100 L0 1.1.1.1 L0 2.2.2.2 R1 10.2.2.1 10.2.2.2 R2 Need to use loopback address for neighbor Static route for loopback address Ebgp-multihop Router(config-router)# Neighbor {ip-address peer-group-name} ebgp-multihop 2

Monitoring BGP show ip bgp show ip bgp neighbor show ip bgp paths show ip bgp summary show ip route

BGP peering Command Show ip bgp summary

Show ip BGP command Command Show ip bgp

Router# BGP session establishment Debug ip bgp events

BGP idle and established states Idle The router cannot find the address of the neighbor in the routing table. Check for an IGP problem. Established The proper state for BGP In the Show ip bgp summary, the state column is blank or number.

BGP active state troubleshooting Active The router sent out an open packet and is waiting for a response. This state may cycle between active and idle. Reasons maybe : Neighbor peering with the wrong ip address Neighbor does not have neighbor statement for this router Neighbor does not have a route to the source ip address of the BGP open packet generated by this router