Introduction xxi Chapter 1 Inter-Domain Routing Concepts 1 Early Inter-Domain Routing: The Exterior Gateway Protocol (EGP) 1 Origins of EGP 2 Operation of EGP 3 EGP Topology Issues 3 EGP Functions 5 Neighbor Acquisition Protocol 6 Neighbor Reachability Protocol 8 Network Reachability Protocol 10 Shortcomings of EGP 15 The Advent of BGP 16 BGP Basics 17 Autonomous System Types 21 External and Internal BGP 22 Multihoming 29 Transit AS Multihoming 30 Stub AS Multihoming 31 Multihoming and Routing Policies 36 Multihoming Issues: Load Sharing and Load Balancing 36 Multihoming Issues: Traffic Control 37 Multihoming Issues: Provider-Assigned Addressing 40 Classless Inter-Domain Routing 41 A Summarization Summary 41 Classless Routing 43 Summarization: The Good, the Bad, and the Asymmetric 47 CIDR: Reducing Class B Address Space Depletion 50 CIDR: Reducing Routing Table Explosion 50 Managing and Assigning IPv4 Address Blocks 54 CIDR Issues: Multihoming and Provider-Assigned Addresses 56 CIDR Issues: Address Portability 58 CIDR Issues: Provider-Independent Addresses 59 CIDR Issues: Traffic Engineering 60 CIDR Approaches Its Limits 62 IPv6 Comes of Age 66 Routing Table Explosion, Again 66 Looking Ahead 68 Review Questions 69 Chapter 2 Introduction to BGP 71 Who Needs BGP? 71 Connecting to Untrusted Domains 71 Connecting to Multiple External Neighbors 74 Setting Routing Policy 79 BGP Hazards 82 Operation of BGP 84 BGP Message Types 85 Open Message 85 Keepalive Message 86 Update Message 86 Notification Message 87 BGP Finite State Machine 87 Idle State 88 Connect State 89 Active State 89 OpenSent State 89 OpenConfirm State 90 Established State 90 Path Attributes 90 ORIGIN Attribute 92 AS_PATH Attribute 92 NEXT_HOP Attribute 97 Weight 100 BGP Decision Process 100 BGP Message Formats 103 Open Message 104 Update Message 105 Keepalive Message 108 Notification Message 108 Configuring and Troubleshooting BGP Peering 110 Case Study: EBGP Peering 110 Case Study: EBGP Peering over IPv6 114 Case Study: IBGP Peering 118 Case Study: Connected Check and EBGP Multihop 127 Case Study: Managing and Securing BGP Connections 136 Looking Ahead 142 Review Questions 143 Configuration Exercises 144 Troubleshooting Exercises 145 Chapter 3 BGP and NLRI 155 Configuring and Troubleshooting NLRI in BGP 155 Injecting Prefixes with the network Statement 156 Using the network mask Statement 160 Injecting Prefixes with Redistribution 162 NLRI and IBGP 167 Managing Prefixes in an IBGP Topology 168 IBGP and IGP Synchronization 179 Advertising BGP NLRI into the Local AS 182 Redistributing BGP NLRI into the IGP 182 Case Study: Distributing NLRI in a Stub AS with IBGP 184 Distributing NLRI in a Stub AS with Static Routes 193 Advertising a Default Route to a Neighboring AS 196 Advertising Aggregate Routes with BGP 198 Case Study: Aggregation Using Static Routes 199 Aggregation Using the aggregate-address Statement 201 ATOMIC_AGGREGATE and AGGREGATOR Attributes 207 Using AS_SET with Aggregates 210 Looking Ahead 218 Review Questions 218 Configuration Exercises 219 Troubleshooting Exercises 223 Chapter 4 BGP and Routing Policies 237 Policy and the BGP Database 238 IOS BGP Implementation 249 InQ and OutQ 249 IOS BGP Processes 251 NHT, Event, and the Open Processes 256 Table Versions 258 Managing Policy Changes 267 Clearing BGP Sessions 268 Soft Reconfiguraton 269 Route Refresh 274 Route Filtering Techniques 279 Filtering Routes by NLRI 280 Case Study: Using Distribute Lists 280 Route Filtering with Extended ACLs 292 Case Study: Using Prefix Lists 293 Filtering Routes by AS_PATH 304 Regular Expressions 304 Literals and Metacharacters 305 Delineation: Matching the Start and End of Lines 306 Bracketing: Matching a Set of Characters 306 Negating: Matching Everything Except a Set of Characters 306 Wildcard: Matching Any Single Character 307 Alternation: Matching One of a Set of Characters 307 Optional Characters: Matching a Character That May or May Not Be There 307 Repetition: Matching a Number of Repeating Characters 307 Boundaries: Delineating Literals 308 Putting It All Together: A Complex Example 308 Case Study: Using AS-Path Filters 309 Case Study: Setting Policy with Route Maps 314 Filter Processing 322 Influencing the BGP Decision Process 323 Case Study: Administrative Weights 325 Case Study: Using the LOCAL_PREF Attribute 334 Case Study: Using the MULTI_EXIT_DISC Attribute 343 Case Study: Prepending the AS_PATH 366 Case Study: Administrative Distances and Backdoor Routes 372 Controlling Complex Route Maps 379 Continue Clauses 380 Policy Lists 383 Looking Ahead 386 Review Questions 386 Configuration Exercises 388 Troubleshooting Exercises 392 Chapter 5 Scaling BGP 401 Scaling the Configuration 402 Peer Groups 403 Peer Templates 413 Session Templates 414 Policy Templates 419 Communities 425 Well-Known Communities 426 Arbitrary Communities 434 Using the AA:NN Format 443 Expanded Community Lists 445 Adding and Deleting Communities 460 Extended Community Lists 472 Scaling BGP Functions 478 Route Flap Dampening 479 Outbound Route Filters (ORF) 486 Next-Hop Tracking 496 Fast External Fallover 509 Bidirectional Forwarding Detection (BFD) 512 BGP Prefix Independent Convergence (PIC) 523 ADD-PATHS Capability 528 Graceful Restart 538 Maximum Prefixes 540 Tuning BGP CPU 552 Tuning BGP Memory 556 BGP Transport Optimization 563 Optimizing TCP 563 Optimizing BGP Update Generation 568 Optimizing TCP ACK Message Receipt 568 Scaling the BGP Network 569 Private AS Numbers 569 4-Byte AS Numbers 574 IBGP and the N-Squared Problem 575 Confederations 576 Route Reflectors 592 Looking Ahead 606 Review Questions 607 Configuration Exercises 608 Troubleshooting Exercises 612 Chapter 6 Multiprotocol BGP 615 Multiprotocol Extensions to BGP 616 MBGP Support for the IPv6 Address Family 618 Configuring MBGP for IPv6 619 IPv4 and IPv6 Prefixes over an IPv4 TCP Session 620 Upgrading IPv4 BGP Configurations to the Address Family Format 629 IPv4 and IPv6 over an IPv6 TCP Connection 631 Dual Stack MBGP Connection 642 Multihop Dual Stack MBGP Connection 647 Mixed IPv4 and IPv6 Sessions 650 Multiprotocol IBGP 654 Case Study: Multiprotocol Policy Configuration 666 Looking Ahead 705 Review Questions 705 Configuration Exercises 706 Question 1: 707 Troubleshooting Exercises 709 Chapter 7 Introduction to IP Multicast Routing 713 Requirements for IP Multicast 716 IPv4 Multicast Addresses 717 IPv6 Multicast Addresses 721 Group Membership Concepts 724 Joining and Leaving a Group 726 Join Latency 726 Leave Latency 727 Group Maintenance 728 Multiple Routers on a Network 728 Internet Group Management Protocol (IGMP) 729 IGMPv2 Host Functions 730 IGMPv2 Router Functions 731 IGMPv1 733 IGMPv3 735 IGMP Message Format 736 Multicast Listener Discovery (MLD) 742 IGMP/MLD Snooping 745 Cisco Group Management Protocol (CGMP) 749 Multicast Routing Issues 753 Multicast Forwarding 754 Multicast Routing 756 Sparse Versus Dense Topologies 757 Implicit Joins Versus Explicit Joins 758 Source-Based Trees Versus Shared Trees 760 Source-Specific Multicast (SSM) 761 Multicast Scoping 763 TTL Scoping 763 Administrative Scoping 765 Looking Ahead 766 Recommended Reading 766 Review Questions 766 Configuration Exercises 768 Chapter 8 Protocol Independent Multicast 771 Introduction to Protocol Independent Multicast (PIM) 771 Operation of Protocol Independent Multicast-Dense Mode (PIM-DM) 773 PIM-DM Basics 773 Prune Overrides 779 Unicast Route Changes 782 PIM-DM Designated Routers 782 PIM Forwarder Election 782 Operation of Protocol Independent Multicast-Sparse Mode (PIM-SM) 785 PIM-SM Basics 786 Finding the Rendezvous Point 787 Bootstrap Protocol 787 Auto-RP Protocol 789 Embedded RP Addresses 790 PIM-SM and Shared Trees 793 Source Registration 796 PIM-SM and Shortest Path Trees 803 PIMv2 Message Formats 808 PIMv2 Message Header Format 809 PIMv2 Hello Message Format 810 PIMv2 Register Message Format 811 PIMv2 Register Stop Message Format 812 PIMv2 Join/Prune Message Format 812 PIMv2 Bootstrap Message Format 814 PIMv2 Assert Message Format 815 PIMv2 Graft Message Format 816 PIMv2 Graft-Ack Message Format 816 Candidate-RP-Advertisement Message Forma.
Routing TCP/IP : CCIE Professional Development, Volume 2