BGP Router Startup Message Flow



Similar documents
BGP overview BGP operations BGP messages BGP decision algorithm BGP states

APNIC elearning: BGP Attributes

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

Routing Protocol - BGP

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

BGP Best Path Selection Algorithm

Border Gateway Protocol BGP4 (2)

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

basic BGP in Huawei CLI

E : Internet Routing

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

Border Gateway Protocol (BGP)

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

Understanding Route Aggregation in BGP

Using the Border Gateway Protocol for Interdomain Routing

BGP Attributes and Path Selection

APNIC elearning: BGP Basics. Contact: erou03_v1.0

Load balancing and traffic control in BGP

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

Lecture 18: Border Gateway Protocol"

Exterior Gateway Protocols (BGP)

How To Understand Bg

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

Configuring BGP. Cisco s BGP Implementation

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

Internet inter-as routing: BGP

BGP4 Case Studies/Tutorial

Monitoring and Troubleshooting BGP Neighbor Sessions

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

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

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

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

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

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

CS 457 Lecture 19 Global Internet - BGP. Fall 2011

Border Gateway Protocol (BGP-4)

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

BGP Advanced Routing in SonicOS

Internet inter-as routing: BGP

A Study of the interaction of BGP/OSPF in Zebra/ZebOS/Quagga

MPLS VPN Route Target Rewrite

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

Internet Firewall CSIS Packet Filtering. Internet Firewall. Examples. Spring 2011 CSIS net15 1. Routers can implement packet filtering

Understanding Route Redistribution & Filtering

Route Discovery Protocols

CS551 External v.s. Internal BGP

Gateway of last resort is to network

Application Note. Failover through BGP route health injection

- Border Gateway Protocol -

The ISP Column. An Introduction to BGP the Protocol

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

Multihomed BGP Configurations

BGP Link Bandwidth. Finding Feature Information. Contents

Datagram-based network layer: forwarding; routing. Additional function of VCbased network layer: call setup.

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

Advanced Networking Routing: RIP, OSPF, Hierarchical routing, BGP

HP Networking BGP and MPLS technology training

JNCIA Juniper Networks Certified Internet Associate

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

IP Routing Tecnologie e Protocolli per Internet II rev 1

Routing Protocols. Interconnected ASes. Hierarchical Routing. Hierarchical Routing

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

Understanding Virtual Router and Virtual Systems

Inter-domain Routing. Outline. Border Gateway Protocol

Chapter 1 INTRODUCTION

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

Advanced BGP Policy. Advanced Topics

BGP: Frequently Asked Questions

Border Gateway Protocol Best Practices

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

Introduction to TCP/IP

Can Forwarding Loops Appear when Activating ibgp Multipath Load Sharing?

Configuring BGP Services

Basic Configuration Examples for BGP

Internet Routing Protocols Lecture 04 BGP Continued

6.263 Data Communication Networks

GregSowell.com. Mikrotik Routing

BGP route propagation. Internet AS relationships, Routing policy on Internet paths. Example of commercial relationship. Transit vs.

IP Routing. CS 552 Richard Martin (with slides from S. Savage and S. Agarwal)

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

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

Load balancing and traffic control in BGP

Understanding and Optimizing BGP Peering Relationships with Advanced Route and Traffic Analytics

Interdomain Routing. Outline

BGP1 Multihoming and Traffic Engineering

BGP Filtering with RouterOS

Border Gateway Protocol, Route Manipulation, and IP Multicast

Border Gateway Protocol (BGP) Conformance and Performance Testing

ECSE-6600: Internet Protocols Exam 2

Masterkurs Rechnernetze IN2097

Week 4 / Paper 1. Open issues in Interdomain Routing: a survey

Increasing Path Diversity using Route Reflector

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

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

Transcription:

LEG: Brief BGP Router Startup Message Flow This sequence diagram was generated with EventStudio System Designer (http://www.eventhelix.com/eventstudio). The Border Gateway Protocol (BGP) is an inter-autonomous system routing protocol. An autonomous system is a group of networks under common administrative control and routing policies. This sequence diagram describes the sequence of messages exchanged when a new BGP router is made operational. The steps involved are: 1. Establish TCP connections 2. Exchange BGP Open messages. 3. Start periodic exchange of Keepalive messages. 4. Exchange routing information with the BGP Update message. BGP Router 1 enters the network Idle Connect TCP SYN TCP SYN+ACK The neighbor peering state starts as Idle. BGP Router 1 comes up and establishes a TCP connection with BGP Router 2. TCP connection is being setup with the neighbor. BGP identifier: 192.168.0.15 The BGP routers exchange the messages with important parameters and and the autonoumous system number of the router. Open Sent TCP conection has been established with the neighbor and a message has been sent to the peer. BGP identifier: 192.168.0.33 Open Confirm Established The peering state now moves to "Open Confirm" as the message has been received from the neighbor. The BGP routers initiate the exchange of periodic health messages. Keep alive messages have been exchanged with the neighbor. The BGP peering state now moves to "Established" state. In this state, the routers will now exchange routing information using the messages. After the initial handshake, the routers exchange the BGP Update messages. The attributes exchanged during BGP Update coupled with router specific configuration govern the route selection. Important factors are:

- Router level configuration of the weights. - Local preference settings on the routers. - Metric suggestions from the advertising router. (Multi-exist discriminator) - Origin of the route (EGP, IGP or Unknown-Origin) - AS_Path: Autonomous System (AS) Path of the advertised route (i.e. the list of Autonomous Systems in the route advertisement path.) - Next Hop: IP Address used to reach the advertising EBGP router. - Community: No-Export: Routes learnt with this commuity setting cannot be advertised to other AS. No-Advertise: Routes learnt with this attribute cannot be advertised to IGPs. Internet: Routes can be advertised to any BGP router in the Internet. Total path attribute length: 72 bytes, ORIGIN: IGP (4 bytes), Flags: 0x80 (Optional, Non -transitive, Complete), AS _PATH: {500, 500} 65211 (13 bytes), NEXT _HOP: 192.168.0.15 (7 bytes), AGGREGATOR: AS: 65210 origin: 192.168.0.10 (9 bytes), COMMUNITIES: 65215:1 790:4 340:250 (15 bytes), ORIGINATOR _ID: 192.168.0.15 (7 bytes), CLUSTER _LIST: 192.168.0.250 (7 bytes), NLRI prefix: 192.168.4.0 (192.168.4.0) BGP Router 1 advertises routers to BGP Router 2. Rules for updating the IP Routing table are listed below. - If the path specifies a next hop that is inaccessible, drop the update. - Prefer the path with the largest weight. - If the weights are the same, prefer the path with the largest local preference. - If the local preferences are the same, prefer the path that was originated by BGP running on this router. - If no route was originated by this router, prefer the route that has the shortest AS_path. - If all paths have the same AS_path length, prefer the path based on the origin (IGP is preferred over EGP, and EGP is preferred over Origin-Unknown). - If the origin codes are the same, prefer the path with the lowest MED attribute (Metric suggestion from the advertising router). - If the paths have the same MED, prefer the external path over the internal path. - If the paths are still the same, prefer the path through the closest IGP neighbor. - Prefer the path with the lowest IP address, as specified by the BGP router ID. Total path attribute length: 39 bytes, ORIGIN: EGP (4 bytes), Flags: 0xc0 (Optional, Transitive, Complete), AS _PATH: empty (3 bytes), NEXT _HOP: 192.168.0.33 (7 bytes), COMMUNITIES: 65033:500 65033:600 (11 bytes), NLRI prefix: 10.0.0.0 (10.0.0.0) BGP Router 2 advertises routers to BGP Router 1.

LEG: Detailed BGP Router Startup (Message Details) We have looked at the message flow when a new BGP router starts up. We will now look at the same flow with full message details. BGP Router 1 enters the network Idle Connect TCP SYN TCP SYN+ACK The neighbor peering state starts as Idle. BGP Router 1 comes up and establishes a TCP connection with BGP Router 2. TCP connection is being setup with the neighbor. BGP identifier: 192.168.0.15 Open Sent The BGP routers exchange the messages with important parameters and and the autonoumous system number of the router. TCP conection has been established with the neighbor and a message has been sent to the peer. OPEN Message Length: 29 bytes Type: OPEN Message (1) Version: 4 My AS: 65033 Hold time: 180 BGP identifier: 192.168.0.15 Optional parameters length: 0 bytes BGP identifier: 192.168.0.33 Open Confirm The peering state now moves to "Open Confirm" as the message has been received from the neighbor. OPEN Message Length: 29 bytes Type: OPEN Message (1) Version: 4 My AS: 65033 Hold time: 180 BGP identifier: 192.168.0.33 Optional parameters length: 0 bytes The BGP routers initiate the exchange of periodic health messages. KEEPALIVE Message

Length: 19 bytes Type: KEEPALIVE Message (4) BGP Router 1 BGP Router 2 Established Keep alive messages have been exchanged with the neighbor. The BGP peering state now moves to "Established" state. In this state, the routers will now exchange routing information using the messages. KEEPALIVE Message Length: 19 bytes Type: KEEPALIVE Message (4) After the initial handshake, the routers exchange the BGP Update messages. The attributes exchanged during BGP Update coupled with router specific configuration govern the route selection. Important factors are: - Router level configuration of the weights. - Local preference settings on the routers. - Metric suggestions from the advertising router. (Multi-exist discriminator) - Origin of the route (EGP, IGP or Unknown-Origin) - AS_Path: Autonomous System (AS) Path of the advertised route (i.e. the list of Autonomous Systems in the route advertisement path.) - Next Hop: IP Address used to reach the advertising EBGP router. - Community: No-Export: Routes learnt with this commuity setting cannot be advertised to other AS. No-Advertise: Routes learnt with this attribute cannot be advertised to IGPs. Internet: Routes can be advertised to any BGP router in the Internet. Total path attribute length: 72 bytes, ORIGIN: IGP (4 bytes), Flags: 0x80 (Optional, Non -transitive, Complete), AS _PATH: {500, 500} 65211 (13 bytes), NEXT _HOP: 192.168.0.15 (7 bytes), AGGREGATOR: AS: 65210 origin: 192.168.0.10 (9 bytes), COMMUNITIES: 65215:1 790:4 340:250 (15 bytes), ORIGINATOR _ID: 192.168.0.15 (7 bytes), CLUSTER _LIST: 192.168.0.250 (7 bytes), NLRI prefix: 192.168.4.0 (192.168.4.0) BGP Router 1 advertises routers to BGP Router 2. UPDATE Message Length: 98 bytes Type: UPDATE Message (2) Unfeasible routes length: 0 bytes Total path attribute length: 72 bytes Path attributes ORIGIN: INCOMPLETE (4 bytes) Type code: ORIGIN (1) Length: 1 byte Origin: INCOMPLETE (2) AS_PATH: {500, 500} 65211 (13 bytes) Type code: AS_PATH (2) Length: 10 bytes AS path: {500, 500} 65211 AS path segment: {500, 500} Path segment type: AS_SET (1) Path segment length: 2 ASs Path segment value: 500 500 AS path segment: 65211 Path segment type: AS_SEQUENCE (2) Path segment length: 1 AS Path segment value: 65211

NEXT_HOP: 192.168.0.15 (7 bytes) Type code: NEXT_HOP (3) Next hop: 192.168.0.15 (192.168.0.15) LOCAL_PREF: 100 (7 bytes) Type code: LOCAL_PREF (5) Local preference: 100 ATOMIC_AGGREGATE (3 bytes) Type code: ATOMIC_AGGREGATE (6) Length: 0 bytes AGGREGATOR: AS: 65210 origin: 192.168.0.10 (9 bytes) Flags: 0xc0 (Optional, Transitive, Complete) Type code: AGGREGATOR (7) Length: 6 bytes Aggregator AS: 65210 Aggregator origin: 192.168.0.10 (192.168.0.10) COMMUNITIES: 65215:1 790:4 340:250 (15 bytes) Flags: 0xc0 (Optional, Transitive, Complete) Type code: COMMUNITIES (8) Length: 12 bytes Communities: 65215:1 790:4 340:250 Community: 65215:1 Community AS: 65215 Community value: 1 Community: 790:4 Community AS: 790 Community value: 4 Community: 340:250 Community AS: 340 Community value: 250 ORIGINATOR_ID: 192.168.0.15 (7 bytes) Flags: 0x80 (Optional, Non-transitive, Complete) Type code: ORIGINATOR_ID (9) Originator identifier: 192.168.0.15 (192.168.0.15) CLUSTER_LIST: 192.168.0.250 (7 bytes) Flags: 0x80 (Optional, Non-transitive, Complete) Type code: CLUSTER_LIST (10) Cluster list: 192.168.0.250 Cluster List: C0A800FA Network layer reachability information: 3 bytes 172.16.0.0/16 NLRI prefix length: 16 NLRI prefix: 172.16.0.0 (172.16.0.0) Rules for updating the IP Routing table are listed below. - If the path specifies a next hop that is inaccessible, drop the update. - Prefer the path with the largest weight. - If the weights are the same, prefer the path with the largest local preference. - If the local preferences are the same, prefer the path that was originated by BGP running on this router. - If no route was originated by this router, prefer the route that has the shortest AS_path. - If all paths have the same AS_path length, prefer the path based on the origin (IGP is preferred over EGP, and EGP is preferred over Origin-Unknown). - If the origin codes are the same, prefer the path with the lowest MED attribute (Metric suggestion from the advertising router). - If the paths have the same MED, prefer the external path over the internal path. - If the paths are still the same, prefer the path through the closest IGP neighbor. - Prefer the path with the lowest IP address, as specified by the BGP router ID.

Total path attribute length: 39 bytes, ORIGIN: EGP (4 bytes), Flags: 0xc0 (Optional, Transitive, Complete), AS _PATH: empty (3 bytes), NEXT _HOP: 192.168.0.33 (7 bytes), COMMUNITIES: 65033:500 65033:600 (11 bytes), NLRI prefix: 10.0.0.0 (10.0.0.0) BGP Router 2 advertises routers to BGP Router 1. UPDATE Message Length: 64 bytes Type: UPDATE Message (2) Unfeasible routes length: 0 bytes Total path attribute length: 39 bytes Path attributes ORIGIN: EGP (4 bytes) Type code: ORIGIN (1) Length: 1 byte Origin: EGP (1) AS_PATH: empty (3 bytes) Type code: AS_PATH (2) Length: 0 bytes AS path: empty NEXT_HOP: 192.168.0.33 (7 bytes) Type code: NEXT_HOP (3) Next hop: 192.168.0.33 (192.168.0.33) MULTI_EXIT_DISC: 0 (7 bytes) Flags: 0x80 (Optional, Non-transitive, Complete) Type code: MULTI_EXIT_DISC (4) Multiple exit discriminator: 0 LOCAL_PREF: 100 (7 bytes) Type code: LOCAL_PREF (5) Local preference: 100 COMMUNITIES: 65033:500 65033:600 (11 bytes) Flags: 0xc0 (Optional, Transitive, Complete) Type code: COMMUNITIES (8) Length: 8 bytes Communities: 65033:500 65033:600 Community: 65033:500 Community AS: 65033 Community value: 500 Community: 65033:600 Community AS: 65033 Community value: 600 Network layer reachability information: 2 bytes 10.0.0.0/8 NLRI prefix length: 8 NLRI prefix: 10.0.0.0 (10.0.0.0) KEEPALIVE Message Length: 19 bytes Type: KEEPALIVE Message (4)