Multicast on logical systems - problem



  • Hello.

    I’m testing various multicast protocols on MX240 router using logical systems. I’ve enclosed the topology in attachement. The hosts are desktops with linuxes. I use the MGEN software to generate multicast traffic and igmp join messages.

    PIM-DM works as it is supposed to. PIM-SM unfortunately does not, no matter what type of RP is configured in the network. The example below uses a static RP configuration (LR2 is the static RP). When TX starts sending traffic for a destination group address the output of “show pim join extensive” command on the RP is as follows:

    pawel@MX240:LR2> show pim join extensive
    Instance: PIM.master Family: INET
    R = Rendezvous Point Tree, S = Sparse, W = Wildcard

    Group: 227.0.0.1
        Source: *
        RP: 172.16.0.3
        Flags: sparse,rptree,wildcard
        Upstream interface: Local
        Upstream neighbor: Local
        Upstream state: Local RP
        Downstream neighbors:
            Interface: lt-2/2/0.8
                10.0.0.10 State: Join Flags: SRW Timeout: 198

    Group: 227.0.0.1
        Source: 4.4.2.1
        Flags: sparse,spt
        Upstream interface: lt-2/2/0.7
        Upstream neighbor: 10.0.0.5
        Upstream state: Local RP, Join to Source
        Keepalive timeout: 198

    Instance: PIM.master Family: INET6
    R = Rendezvous Point Tree, S = Sparse, W = Wildcard

    And here are the outputs of “show multicast route detail” and “show multicast usage”

    pawel@MX240:LR2> show multicast route detail
    Family: INET

    Group: 227.0.0.1
        Source: 4.4.2.1/32
        Upstream interface: lt-2/2/0.7
        Downstream interface list:
            lt-2/2/0.8
        Session description: Unknown
        Statistics: 54 kBps, 100 pps, 4383 packets
        Next-hop ID: 1048575
        Upstream protocol: PIM

    Family: INET6

    pawel@MX240:LR2> show multicast usage detail
    Group          Sources Packets              Bytes
    227.0.0.1      1      7398                3994920
        Source: 4.4.2.1        /32 Packets: 7398 Bytes: 3994920

    Prefix          /len Groups Packets              Bytes
    4.4.2.1        /32  1      7398                3994920
        Group: 227.0.0.1      Packets: 7398 Bytes: 3994920

    Everything looks fine here. But there is a problem on the LR1 router:

    pawel@MX240:LR1> show pim join extensive
    Instance: PIM.master Family: INET
    R = Rendezvous Point Tree, S = Sparse, W = Wildcard

    Group: 227.0.0.1
        Source: *
        RP: 172.16.0.3
        Flags: sparse,rptree,wildcard
        Upstream interface: lt-2/2/0.9
        Upstream neighbor: 10.0.0.9
        Upstream state: Join to RP
        Downstream neighbors:
            Interface: ge-2/1/9.11
                4.4.3.2 State: Join Flags: SRW  Timeout: Infinity

    Instance: PIM.master Family: INET6
    R = Rendezvous Point Tree, S = Sparse, W = Wildcard

    pawel@MX240:LR1> show multicast route extensive
    Family: INET

    Family: INET6

    pawel@MX240:LR1> show multicast usage

    =====================================================================================

    First thing that can noticed from the “show pim join extensive” output is that there is no SPT-switchover - right after receiving first multicast packet the last hop router should start establishing the SPT between first hop router and itself, but it’s tied to the shared tree all the time through the (*,G) state. Furthermore it seems that it’s not receiving any multicast packets at all, which is confirmed on the RX host - the received packets count doesn’t increase.

    Comparing the input vs output packets on RP reveals that it’s not forwarding multicast packets to LR1:

    pawel@MX240:LR2> show interfaces lt-2/2/0.8 statistics detail
      Logical interface lt-2/2/0.8 (Index 96) (SNMP ifIndex 612) (Generation 4148)
        Flags: SNMP-Traps 0x4000 Encapsulation: ENET2
        Traffic statistics:
        Input  bytes  :                8106
        Output bytes  :                8930
        Input  packets:                  111
        Output packets:                  99
        Local statistics:
        Input  bytes  :                8106
        Output bytes  :                8930
        Input  packets:                  111
        Output packets:                  99
        Transit statistics:
        Input  bytes  :                    0                    0 bps
        Output bytes  :                    0                    0 bps
        Input  packets:                    0                    0 pps
        Output packets:                    0                    0 pps
        Protocol inet, MTU: 1500, Generation: 9760, Route table: 9
          Flags: Sendbcast-pkt-to-re
          Addresses, Flags: Is-Preferred Is-Primary
            Destination: 10.0.0.8/30, Local: 10.0.0.9, Broadcast: 10.0.0.11,
            Generation: 4364

    From what I’ve read RP routers have to be equipped with tunnel services PICs to properly decapsulate received PIM packets and then forward them in native form to routers with attached hosts. The MX240 I’m using is equipped with such hardware:

    pawel@MX240> show configuration chassis
    fpc 0 {
        pic 1 {
            tunnel-services {
                bandwidth 1g;
            }
        }
    }
    fpc 2 {
        pic 2 {
            tunnel-services {
                bandwidth 10g;
            }
        }
    }
    network-services all-ethernet;

    Right now I have no idea what’s wrong. I would be immeasurably grateful if someone could help me solve this problem. Below is the configuration of the logical systems.

    pawel@MX240:LR0> show configuration
    interfaces {
        ge-2/1/9 {
            unit 10 {
                vlan-id 302;
                family inet {
                    address 4.4.2.2/24;
                }
            }
        }
        lt-2/2/0 {
            unit 4 {
                encapsulation ethernet;
                peer-unit 5;
                family inet {
                    address 10.0.0.1/30;
                }
            }
            unit 6 {
                encapsulation ethernet;
                peer-unit 7;
                family inet {
                    address 10.0.0.5/30;
                }
            }
        }
        lo0 {
            unit 1 {
                family inet {
                    address 172.16.0.1/32;
                }
            }
        }
    }
    protocols {
        ospf {
            area 0.0.0.0 {
                interface lo0.1;
                interface lt-2/2/0.4;
                interface lt-2/2/0.6;
                interface ge-2/1/9.10;
            }
        }
        pim {
            rp {
                static {
                    address 172.16.0.3;
                }
            }
            interface all {
                mode sparse;
                version 2;
            }
        }
    }

    pawel@MX240:LR1> show configuration
    interfaces {
        ge-2/1/9 {
            unit 11 {
                vlan-id 303;
                family inet {
                    address 4.4.3.2/24;
                }
            }
        }
        lt-2/2/0 {
            unit 5 {
                encapsulation ethernet;
                peer-unit 4;
                family inet {
                    address 10.0.0.2/30;
                }
            }
            unit 9 {
                encapsulation ethernet;
                peer-unit 8;
                family inet {
                    address 10.0.0.10/30;
                }
            }
        }
        lo0 {
            unit 2 {
                family inet {
                    address 172.16.0.2/32;
                }
            }
        }
    }
    protocols {
        ospf {
            area 0.0.0.0 {
                interface lo0.2;
                interface lt-2/2/0.5;
                interface lt-2/2/0.9;
                interface ge-2/1/9.11;
            }
        }
        pim {
            rp {
                static {
                    address 172.16.0.3;
                }
            }
            interface all {
                mode sparse;
                version 2;
            }
        }
    }

    pawel@MX240:LR2> show configuration
    interfaces {
        lt-2/2/0 {
            unit 7 {
                encapsulation ethernet;
                peer-unit 6;
                family inet {
                    address 10.0.0.6/30;
                }
            }
            unit 8 {
                encapsulation ethernet;
                peer-unit 9;
                family inet {
                    address 10.0.0.9/30;
                }
            }
        }
        lo0 {
            unit 3 {
                family inet {
                    address 172.16.0.3/32;
                }
            }
        }
    }
    protocols {
        ospf {
            area 0.0.0.0 {
                interface lo0.3;
                interface lt-2/2/0.7;
                interface lt-2/2/0.8;
            }
        }
        pim {
            rp {
                local {
                    family inet {
                        address 172.16.0.3;
                    }
                }
            }
            interface all {
                mode sparse;
                version 2;
            }
        }
    }
    topology.png


 

30
Online

38.4k
Users

12.7k
Topics

44.5k
Posts