O'Reilly logo

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required


Book Description

Border Gateway Protocol (BGP) is the routing protocol used to exchange routing information across the Internet. It makes it possible for ISPs to connect to each other and for end-users to connect to more than one ISP. BGP is the only protocol that is designed to deal with a network of the Internet's size, and the only protocol that can deal well with having multiple connections to unrelated routing domains.This book is a guide to all aspects of BGP: the protocol, its configuration and operation in an Internet environment, and how to troubleshooting it. The book also describes how to secure BGP, and how BGP can be used as a tool in combating Distributed Denial of Service (DDoS) attacks. Although the examples throughout this book are for Cisco routers, the techniques discussed can be applied to any BGP-capable router.The topics include:

  • Requesting an AS number and IP addresses
  • Route filtering by remote ISPs and how to avoid this
  • Configuring the initial BGP setup
  • Balancing the available incoming or outgoing traffic over the available connections
  • Securing and troubleshooting BGP
  • BGP in larger networks: interaction with internal routing protocols, scalability issues
  • BGP in Internet Service Provider networks
The book is filled with numerous configuration examples with more complex case studies at the end of the book to strengthen your understanding. BGP is for anyone interested in creating reliable connectivity to the Internet.

Table of Contents

  1. Preface
    1. Intended Audience
    2. What’s in This Book?
    3. How to Read This Book
    4. Conventions Used in This Book
    5. How to Contact Us
    6. Acknowledgments
  2. 1. The Internet, Routing, and BGP
    1. Topology of the Internet
      1. The NSFNET Backbone
      2. Commercial Backbones and NAPs
      3. The Rest of the World
      4. Transit and Peering
      5. Classification of ISPs
    2. TCP/IP Design Philosophy
      1. The IP Protocol
      2. The Routing Table
    3. Routing Protocols
    4. Multihoming
  3. 2. IP Addressing and the BGP Protocol
    1. IP Addresses
      1. Subnetting and VLSM
      2. CIDR: Classless Inter-Domain Routing
    2. Interdomain Routing History
    3. The BGP Protocol
      1. Open Message
      2. Update Message
      3. Notification and Keepalive Messages
      4. BGP States
      5. Propagation of BGP Routes
      6. How BGP Selects Routes
        1. The route-selection algorithm
        2. BGP tie-breaking rules
    4. Multiprotocol BGP
      1. Routing Multicast
      2. IPv6
      3. MBGP and MPLS VPNs
    5. Interior Routing Protocols
      1. RIP
      2. IGRP and EIGRP
      3. OSPF
      4. IS-IS
      5. Interaction Between Routing Protocols
  4. 3. Physical Design Considerations
    1. Availability
        1. Single points of failure
        2. Common sense
        3. Testing
    2. Selecting ISPs
    3. Bandwidth
      1. Minimum Bandwidth Required
      2. Burst Bandwidth and Queuing Delays
      3. Calculating Bandwidth, Step by Step
    4. Router Hardware
      1. Host-Based Routers
      2. Multilayer Switches
      3. Memory and the Routing Table
      4. Performance
      5. Anticipating Growth
    5. Failure Risks
      1. Water
      2. Power Failure
    6. Building a Wide Area Network
      1. The Likelihood of Concurrent Fiber Cuts
    7. Network Topology Design
      1. A Design Model
      2. The Topology
  5. 4. IP Address Space and AS Numbers
    1. The Different Types of Address Space
      1. Provider-Independent Address Space
      2. Your Own Provider Aggregatable Block
      3. Address Space From an ISP
    2. Requesting Address Space
    3. Renumbering IP Addresses
    4. The AS Number
    5. Routing Registries
    6. Routing Policy Specification Language
  6. 5. Getting Started with BGP
    1. Enabling BGP
      1. How to Announce an Address Block
      2. Configuring the Router
    2. Monitoring BGP
    3. Clearing BGP Sessions
      1. Soft Reconfiguration Inbound
      2. Route Refresh
    4. Filtering Routes
      1. Filter Lists
      2. Distribute Lists
      3. Prefix Lists
    5. Internal BGP
      1. Enabling iBGP
      2. Default Routes
      3. Next Hop Processing
      4. Synchronizing with the IGP
    6. The Internal Network
      1. Cisco’s Hot Standby Routing Protocol
      2. Full BR2 Configuration
      3. RPSL Routing Policy
    7. Minimizing the Impact of Link Failures
    8. eBGP Multihop
  7. 6. Traffic Engineering
    1. Knowing Which Route Is Best
      1. Finding High- and Low-Quality Routes
      2. Is the Highest-Bandwidth Route Best?
    2. Route Maps
    3. Setting the Local Preference
    4. Manipulating Inbound AS Paths
    5. Inbound Communities
      1. RPSL Routing Policy
    6. BGP Load Balancing
    7. Traffic Engineering for Incoming Traffic
    8. Setting the MED
      1. Prepending Outbound AS Paths
      2. The Effect of AS Path Prepending
      3. Setting Outbound Communities
        1. Well-known communities
        2. Common community actions
      4. Influencing the Local Preference in Upstream ASes
      5. Prepending the AS Path
    9. Announcing More Specific Routes
    10. Queuing, Traffic Shaping, and Policing
      1. TCP Congestion Control
        1. Slow start
        2. Congestion avoidance
        3. Fast retransmit and fast recovery
      2. TCP Under Packet Loss and Delay Conditions
      3. Queuing
        1. First in, first out
        2. Weighted fair queuing
        3. Random early detect
        4. Priority queuing
        5. Custom queuing
      4. Traffic Shaping and Rate Limiting
  8. 7. Security and Integrity of the Network
    1. Passwords and Security
      1. Telnet Versus SSH
    2. Software
      1. Software Lifecycle
      2. Cisco IOS Versions
    3. Protecting BGP
      1. Avoiding Black Holes
    4. Denial-of-Service Attacks
      1. Identifying Attacking Packets
      2. Tracking Down and Stopping the Source
      3. Filtering DoS Traffic
      4. Rate-Limiting DoS Traffic
      5. Deflecting DoS Traffic Using BGP
  9. 8. Day-to-Day Operation of the Network
    1. The Network Operations Center
      1. The NOC and the Help Desk
      2. Contacting the NOC
    2. NOC Hardware Facilities
    3. SNMP Management
      1. Network-Management Suites
      2. Product-Specific Management Software
      3. Generic SNMP Tools
      4. MRTG
      5. BGP-4 Management Information Base
    4. Router Names
    5. General IP Network Management
      1. Logging
      2. Version Control
      3. The Network Time Protocol
      4. Scheduled Reloads
  10. 9. When Things Start to Go Down: Troubleshooting
    1. Keeping a Clear Head
    2. Managing the Troubleshooting Process
    3. Dealing with Service Providers
    4. Physical and Datalink Layer Problems
      1. Broken Cable or Circuit
        1. Link status and keepalives
        2. Last input and loops
        3. Line encoding and framing
      2. Power and Equipment Failure
      3. Poor Network Performance
        1. Too much traffic
        2. High CPU load
        3. Ethernet collisions, broadcasts, and loops
        4. Too many errors
        5. CRC errors on ATM
        6. Ethernet errors because of duplex or speed mismatch
    5. Routing and Reachability Problems
      1. BGP Session Is Down
      2. BGP Session Is Unstable
      3. Address Blocks Aren’t Announced
      4. Filters Further Upstream
      5. Outgoing Traffic Not Going Out
    6. Black Holes
      1. Is the Black Hole Incoming or Outgoing?
      2. Transit from Nontransit AS
      3. Traffic Is Filtered
      4. Broken Upstream AS
      5. Announcing Your Routes—With a Vengeance
    7. DNS Problems
  11. 10. BGP in Larger Networks
    1. Peer Groups
    2. Using Loopback Addresses for iBGP
    3. iBGP Scaling
      1. Route Reflectors
      2. Confederations
    4. Dampening Route Flaps
    5. OSPF as the IGP
      1. Redistributing Routing Information
        1. Redistributing static and connected into OSPF
        2. Redistributing BGP into OSPF
        3. Redistributing OSPF into BGP
        4. Redistributing BGP into OSPF into BGP
        5. Redistributing static and connected routes into BGP
    6. Traffic Engineering in the Internal Network
    7. Network Partitions
      1. IP Tunnels and Path MTU Discovery
  12. 11. Providing Transit Services
    1. Route Filters
    2. Communities
      1. Setting the Local Preference
      2. Fine-Grained Path Prepending
      3. Setting Communities on Incoming Routes
      4. Community Overview In Routing Registry
    3. Anti-DoS Measures
      1. A Community for Black-Holing
      2. Preemptive Anti-DoS Measures
    4. Customers with Backup Connections
      1. Simple Backups
      2. More Complex Backups: BGP
    5. Providing IPv6 and Multicast
      1. IPv6 Multihoming
      2. Multicast
  13. 12. Interconnecting with Other Networks
    1. Peering
    2. Internet Exchanges, NAPs, and MAEs
    3. Connecting to an Internet Exchange
      1. The Business of Peering
      2. Where Does the Traffic Go?
      3. The Politics of Peering
      4. Multilateral Peering
      5. Connecting to the Exchange
    4. Connecting to More Exchange Points
    5. Rejecting Unwanted Traffic
    6. IX Subnet Problems
    7. Talking to Other Network Operators
    8. Exchange Point Future
  14. A. Cisco Configuration Basics
    1. IP Configuration Essentials
      1. Source Routing and Directed Broadcasts
      2. Antispoofing Filters
      3. CIDR and VLSM
  15. B. Binary Logic, Netmasks, and Prefixes
  16. C. Notes on the IPv4 Address Space
  17. Glossary
  18. Index
  19. About the Author
  20. Colophon
  21. Copyright