You are previewing Interdomain Multicast Routing: Practical Juniper Networks and Cisco Systems Solutions.
O'Reilly logo
Interdomain Multicast Routing: Practical Juniper Networks and Cisco Systems Solutions

Book Description

Increasing numbers of ISPs have begun implementing multicast infrastructure. Soon the Internet will provide multicast connectivity between any two points on the Internet the way it provides for unicast traffic today. Long-evolving protocols are reaching maturity, and enterprise networks and ISPs around the world are ramping up their multicast infrastructure. Now, more than ever, network engineers must be ready to deal with new applications that capitalize on the simultaneous, efficient delivery of data and imagery to multiple recipients.

Interdomain Multicast Routing is the key to unlocking the complexities of this growing technology. Starting with a summary of the technology and its relevant protocols, this book shows readers the big picture before revealing a detailed analysis of important protocols and the way they work with one another. Throughout, the authors focus on both Cisco Systems and Juniper Networks technology--the two leading vendors of routers and routing technology. Real-life examples are used to clearly illustrate key concepts. Specific topics covered in Interdomain Multicast Routing include:

  • Background and in-depth analyses of multicast routing using PIM-SM and MSDP

  • Comparison of Any-Source and Source-Specific multicast delivery models

  • Explanation of how MBGP and M-ISIS can be used side by side to build a dedicated multicast environment

  • A detailed breakdown of the differences between IGMP versions 1, 2, and 3

  • A step-by-step guide to understanding the MSDP RPF-peer selection rules

  • Lists of packet formats for IGMP, PIM, and MSDP

  • A complete glossary that clarifies important terms and acronyms and provides their definitions

Practical and thorough in coverage, Interdomain Multicast Routing is an important addition to any network engineer's bookshelf.



0201746123B04022002

Table of Contents

  1. Copyright
    1. Dedication
  2. Foreword
  3. Preface
    1. Acknowledgments
  4. 1. Interdomain Multicast Fundamentals
    1. 1.1. What Is Multicast?
    2. 1.2. Internetworking Basics
    3. 1.3. Multicast Basics
      1. 1.3.1. Reverse Path Forwarding
      2. 1.3.2. Populating the RPF Table
    4. 1.4. Interdomain Multicast Routing
    5. 1.5. Where Is Multicast?
    6. 1.6. Multicast on the LAN
      1. 1.6.1. IGMP
      2. 1.6.2. IGMP Proxying
      3. 1.6.3. Layer 3 to Layer 2 Mapping
      4. 1.6.4. Layer 2 Switches
    7. 1.7. ASM versus SSM
    8. 1.8. Addressing Issues
    9. 1.9. Applications
    10. 1.10. Multicast Performance in Routers
      1. 1.10.1. RP Load
    11. 1.11. Disclaimers and Fine Print
    12. 1.12. Why Multicast?
      1. 1.12.1. Multicast Lacks the “Killer App”
      2. 1.12.2. The Content versus Audience Chicken-and-Egg Scenario
      3. 1.12.3. The “How Do We Charge for It?” Syndrome
      4. 1.12.4. Multicast Protocols Are Complex and May Break the Unicast Network
      5. 1.12.5. Cannibalization of Unicast Bandwidth Revenues
      6. 1.12.6. End-to-End Connectivity Required
      7. 1.12.7. Lack of Successful Models
      8. 1.12.8. Not Ready for Prime-Time Television
      9. 1.12.9. Susceptibility to DoS
      10. 1.12.10. Unfriendly Last Mile Technologies, Less Friendly Firewalls
      11. 1.12.11. The Need for Multicast
      12. 1.12.12. Final Outlook
  5. 2. IMR Overview
    1. 2.1. Receiving Multicast Traffic: IGMP from the Perspective of the Host
    2. 2.2. Detecting Multicast Receivers: IGMP from the Perspective of the Router
    3. 2.3. Generating Multicast Traffic
    4. 2.4. Detecting Multicast Sources
    5. 2.5. Routing Multicast Traffic within a Domain Using PIM-SM
      1. 2.5.1. Phase 1: Building the RPT That Delivers Packets from the RP to Interested Listeners
        1. 2.5.1.1. Phase 1 on the Example Network
      2. 2.5.2. Phase 2: Building the Distribution Tree that Delivers Packets from the Source to the RP
        1. 2.5.2.1. Phase 2 on the Example Network
      3. 2.5.3. Phase 3: Building the SPT that Delivers Packets Directly from the Source to the Interested Listeners
        1. 2.5.3.1. Phase 3 on the Example Network
    6. 2.6. Routing Multicast Traffic across Multiple Domains with MSDP
      1. 2.6.1. MSDP in the Example Network
    7. 2.7. Populating a Routing Table Dedicated to RPF Checks with MBGP
      1. 2.7.1. MBGP in the Example Network
  6. 3. Multicast Routing Protocols
    1. 3.1. Dense Protocols
      1. 3.1.1. DVMRP
      2. 3.1.2. PIM-DM
    2. 3.2. Sparse Protocols
    3. 3.3. Sparse-Dense Mode
  7. 4. Protocol Independent Multicast-Sparse Mode (PIM-SM)
    1. 4.1. Specifications
    2. 4.2. PIM Versions
      1. 4.2.1. Version 1
      2. 4.2.2. Version 2
    3. 4.3. Group-to-RP Mapping
      1. 4.3.1. Static Group-to-RP Mapping
      2. 4.3.2. Dynamic Group-to-RP Mapping: Cisco Systems Auto-RP
      3. 4.3.3. Dynamic Group-to-RP Mapping: PIM Bootstrap
    4. 4.4. Anycast RP
    5. 4.5. PIM Register Message Processing
    6. 4.6. Distribution Tree Construction and Teardown
      1. 4.6.1. Scenario 1: Source Comes Online First, Then a Receiver Joins
      2. 4.6.2. Scenario 2: Second Receiver Joins after SPT Is Set Up for Another Receiver
      3. 4.6.3. Scenario 3: Receiver Ends Group Membership
      4. 4.6.4. Scenario 4: Conference Model
    7. 4.7. Designated Routers and Hello Messages
    8. 4.8. PIM Assert Messages
    9. 4.9. Multicast Scoping
  8. 5. Multicast Source Discovery Protocol (MSDP)
    1. 5.1. Introduction
      1. 5.1.1. MSDP Operation
    2. 5.2. MSDP Peering Sessions
    3. 5.3. The MSDP SA Message
    4. 5.4. Determining the RPF Peer
      1. 5.4.1. The Current Versions RPF-Peer Rules
        1. 5.4.1.1. RPF-Peer Rule #1: If the originating RP is a peer, it is the RPF peer
        2. 5.4.1.2. RPF-Peer Rule #2: If the BGP next hop toward the originating RP is a peer, it is the RPF peer
        3. 5.4.1.3. RPF-Peer Rule #3: If the BGP peer that advertised the route toward the originating RP is a peer, it is the RPF peer
        4. 5.4.1.4. RPF-Peer Rule #4: Of all the MSDP peers in the AS path toward the originating RP, the one with the highest IP address is the RPF peer
        5. 5.4.1.5. RPF-Peer Rule #5: If a static RPF peer is configured for the originating RP, it is the RPF peer
      2. 5.4.2. RPF Rules from Draft Version 2
      3. 5.4.3. Avoiding Pitfalls
    5. 5.5. Mesh Groups
    6. 5.6. MSDP Policy
    7. 5.7. SA Storms, Ramen, and MSDP Rate Limiting
    8. 5.8. Outlook for MSDP
  9. 6. Source-Specific Multicast (SSM)
    1. 6.1. Introduction
      1. 6.1.1. Overview of SSM Operation
      2. 6.1.2. SSM Addresses
      3. 6.1.3. RPF in SSM
      4. 6.1.4. Advantages and Disadvantages of SSM
    2. 6.2. IGMPv3 in SSM
      1. 6.2.1. IGMP Version Compatibility
    3. 6.3. PIM-SM in SSM
  10. 7. Multiprotocol Extensions for BGP (MBGP)
    1. 7.1. Overview
      1. 7.1.1. Other Ways to Populate the Multicast RPF Table
        1. 7.1.1.1. Static Routes
        2. 7.1.1.2. DVMRP
        3. 7.1.1.3. Link-State Protocols
      2. 7.1.2. Juniper Networks and Cisco Systems Conventions
        1. 7.1.2.1. Juniper Networks Conventions
        2. 7.1.2.2. Cisco Systems Conventions
      3. 7.1.3. Recursive Lookup for BGP Next Hops
    2. 7.2. BGP and Related Terminology
    3. 7.3. BGP Internals—Foundation for Understanding MBGP
      1. 7.3.1. NLRI
      2. 7.3.2. BGP Route Selection
    4. 7.4. Extending BGP: MBGP
    5. 7.5. MBGP Internals
      1. 7.5.1. BGP Capabilities Negotiation
        1. 7.5.1.1. How Capability Negotiation Is Used for MBGP
          1. Example of Using Capability Negotiation for MBGP
      2. 7.5.2. New Path Attributes in MBGP
        1. 7.5.2.1. Multiprotocol Reachable NLRI
        2. 7.5.2.2. Multiprotocol Unreachable NLRI
    6. 7.6. Using MGBP for Multicast Routing
      1. 7.6.1. Manipulation of Path Attributes
  11. 8. Multitopology Routing in Intermediate System to Intermediate System (M-ISIS)
    1. 8.1. Overview of IS-IS
      1. 8.1.1. IS-IS Background
      2. 8.1.2. ISO Addresses
      3. 8.1.3. IS-IS Areas and Levels
      4. 8.1.4. Type Length Values (TLVs)
    2. 8.2. Specifics of IS-IS
      1. 8.2.1. IS-IS Packets
      2. 8.2.2. IS-IS Neighbor State Machine on Point- to-Point Links
      3. 8.2.3. IS-IS on Multiaccess Networks
      4. 8.2.4. Exchanging Link-State Information with Neighbors
      5. 8.2.5. Interarea Leaking
      6. 8.2.6. Extending TLVs
    3. 8.3. Overview of M-ISIS
    4. 8.4. Specifics of M-ISIS
      1. 8.4.1. Forming Adjacencies
      2. 8.4.2. M-ISIS TLVs
    5. 8.5. Examples of Using M-ISIS
  12. 9. Configuring and Verifying Multicast Routing on Juniper Networks Routers
    1. 9.1. Configuring IGMP and PIM
      1. 9.1.1. Enabling Interfaces for IGMP and PIM
      2. 9.1.2. SSM Group Range
      3. 9.1.3. The Tunnel PIC and the pe and pd Interfaces
      4. 9.1.4. Configuring Static Group-to-RP Mapping
      5. 9.1.5. Configuring the PIM Bootstrap Mechanism
      6. 9.1.6. Configuring Auto-RP
      7. 9.1.7. Configuring Anycast RP
      8. 9.1.8. Monitoring PIM Join State and Multicast Forwarding
        1. 9.1.8.1. Scenario 1: RPT is Set Up, No Active Sources
        2. 9.1.8.2. Scenario 2: A Source Is Active, a Host Joins the Group Later
    2. 9.2. Configuring MSDP
    3. 9.3. Configuring a Dedicated RPF Table
      1. 9.3.1. Configuring MBGP
      2. 9.3.2. Configuring M-ISIS
      3. 9.3.3. Configuring OSPF to Place Routes in inet.2
      4. 9.3.4. Configuring DVMRP to Provide RPF Information to PIM
  13. 10. Configuring and Verifying Multicast Routing on Cisco Systems Routers
    1. 10.1. Configuring PIM and IGMP
      1. 10.1.1. Enabling Interfaces for IGMP and PIM
      2. 10.1.2. SSM Group Range
      3. 10.1.3. Configuring Static RP
      4. 10.1.4. Configuring the PIM-SM Bootstrap Mechanism
      5. 10.1.5. Configuring Auto-RP
      6. 10.1.6. Configuring Anycast RP
      7. 10.1.7. Monitoring PIM Join State and Multicast Forwarding
    2. 10.2. Configuring MSDP
    3. 10.3. Configuring a Dedicated RPF Table
      1. 10.3.1. Configuring MBGP
      2. 10.3.2. Configuring DVMRP to Provide RPF Information to PIM
  14. 11. Case Study: Service Provider Native Deployment
    1. 11.1. Network Architecture
      1. 11.1.1. PIM-SM
        1. 11.1.1.1. RP Placement
      2. 11.1.2. IGP
      3. 11.1.3. MBGP
      4. 11.1.4. MSDP
    2. 11.2. ISP Router Configurations
      1. 11.2.1. ISP RP Configuration: Juniper Networks
      2. 11.2.2. ISP RP Configuration: Cisco Systems
      3. 11.2.3. ISP Non-RP Configuration: Juniper Networks
      4. 11.2.4. ISP Non-RP Configuration: Cisco Systems
    3. 11.3. Customer Router Configurations
      1. 11.3.1. Customer Without RP Configuration: Juniper Networks
      2. 11.3.2. Customer Without RP Configuration: Cisco Systems
      3. 11.3.3. Customer RP Configuration: Juniper Networks
      4. 11.3.4. Customer RP Configuration: Cisco Systems
    4. 11.4. SSM-Only Domain
      1. 11.4.1. SSM-Only Configuration: Juniper Networks
      2. 11.4.2. SSM-Only Configuration: Cisco Systems
  15. 12. Management Tools for Multicast Networks
    1. 12.1. SNMP MIBs
      1. 12.1.1. Multicast Routing MIB (ipMRouteStdMIB)
      2. 12.1.2. IGMP MIB (igmpStdMIB)
      3. 12.1.3. PIM MIB (pimMIB)
      4. 12.1.4. MSDP MIB (msdpMIB)
    2. 12.2. The mtrace Facility
    3. 12.3. The MSDP Traceroute Facility
  16. 13. Other Related Topics
    1. 13.1. Border Gateway Multicast Protocol (BGMP)
    2. 13.2. Multicast Address Set Claim Protocol (MASC)
    3. 13.3. Bi-Directional PIM (Bi-Dir PIM)
    4. 13.4. Multicast Data Packets and Real-Time Transport Protocol (RTP)
  17. A. IGMP Packet Formats
    1. A.1. IGMP Version 3 Packet Formats
      1. 4. Message Formats
        1. 4.1. Membership Query Message
          1. 4.1.1. Max Resp Code
          2. 4.1.2. Checksum
          3. 4.1.3. Group Address
          4. 4.1.4. Resv (Reserved)
          5. 4.1.5. S Flag (Suppress Router-Side Processing)
          6. 4.1.6. QRV (Querier's Robustness Variable)
          7. 4.1.7. QQIC (Querier's Query Interval Code)
          8. 4.1.8. Number of Sources (N)
          9. 4.1.9. Source Address [i]
          10. 4.1.10. Additional Data
          11. 4.1.11. Query Variants
          12. 4.1.12. IP Destination Addresses for Queries
        2. 4.2. Version 3 Membership Report Message
          1. 4.2.1. Reserved
          2. 4.2.2. Checksum
          3. 4.2.3. Number of Group Records (M)
          4. 4.2.4. Group Record
          5. 4.2.5. Record Type
          6. 4.2.6. Aux Data Len
          7. 4.2.7. Number of Sources (N)
          8. 4.2.8. Multicast Address
          9. 4.2.9. Source Address [i]
          10. 4.2.10. Auxiliary Data
          11. 4.2.11. Additional Data
          12. 4.2.12. Group Record Types
          13. 4.2.13. IP Destination Addresses for Reports
          14. 4.2.14. Notation for Group Records
          15. 4.2.15. Membership Report Size
    2. A.2. IGMP Version 2 Packet Formats
      1. 2. Introduction
        1. 2.1. Type
        2. 2.2. Max Response Time
        3. 2.3. Checksum
        4. 2.4. Group Address
        5. 2.5. Other Fields
    3. A.3. IGMP Version 1 Packet Formats
      1. Appendix I. Internet Group Management Protocol (IGMP)
  18. B. PIM Packet Formats
    1. B.1. PIM Version 2 Packet Formats
      1. 4.9. PIM Packet Formats
        1. 4.9.1. Encoded Source and Group Address Formats
        2. 4.9.2. Hello Message Format
        3. 4.9.3. Register Message Format
        4. 4.9.4. Register-Stop Message Format
        5. 4.9.5. Join/Prune Message Format
          1. 4.9.5.1. Group Set Source List Rules
          2. 4.9.5.2. Group Set Fragmentation
        6. 4.9.6. Assert Message Format
    2. B.2. PIM Version 1 Packet Formats
      1. 4. Packet Types
        1. 4.1. PIM-Join/Prune, PIM-Assert and PIM-Mode Messages
          1. 4.1.1. Source Address Format
        2. 4.2. RP-Reachability Message
  19. C. MSDP Packet Formats
    1. C.1. MSDP Packet Formats
      1. 16. Packet Formats
        1. 16.1. MSDP TLV format
        2. 16.2. Defined TLVs
          1. 16.2.1. IPv4 Source-Active TLV
          2. 16.2.2. IPv4 Source-Active Request TLV
          3. 16.2.3. IPv4 Source-Active Response TLV
          4. 16.2.4. KeepAlive TLV
          5. 16.2.5. Notification TLV
  20. Glossary
  21. Bibliography
  22. About the Authors
    1. Brian M. Edwards
    2. Leonard A. Giuliano
    3. Brian R. Wright