Multicast
  • เป็นการส่งแพคเกตจากต้นทางหนึ่งไปยังกลุ่มปลายทางพิเศษ โดยที่กลุ่มปลายทางพิเศษนั้นเป็นการแทนถึงกลุ่มของโฮสต์ใดๆ ที่ต้องการ

    PIM (Protocol Independent Modules)
    เป็นเราติ้งโปรโตคอลที่ใช้ในการฟอร์เวิร์ด มัลติคาสท์ ทราฟฟิก และทำการ Maintain โทโปโลยีของ Multicast Tree

    IGMP Snooping หากว่า Traffic ที่เป็น Multicast นั้น จำเป็นที่จะต้องเดินทางผ่าน Switch Layer 2 ซึ่งไม่มีความสามารถในการพิจารณา Packet แล้วนั้น มันจำเป็นที่จะต้องใช้ IGMP Snooping และ CGMP (Cisco Proprietary) ในการที่จะ Relay ข้อมูลเกี่ยวกับ Frame และ MAC Address ให้กับ Switch Layer 2 เนื่องจากโดยธรรมชาติแล้ว Switch Layer 2 จะทำการ Flood Packet Multicast ออกไปยังทุกๆ Port ของ VLAN โดยอัตโนมัติ โดยที่ไม่มีการพิจารณา Packet ใดๆ ดังนั้น มันจึงต้องมี CGMP ที่จะทำการ Relay Packet ของ IGMP Snooping ไปยัง Switch Layer 2 ให้ทำการ ADD ข้อมูลลงไปใน CAM Table ของตนเพื่อรับรู้ว่า Packet นั้นๆ เป็นของ Multicast Network ใด
    Cr: MUT

    L2 Multicast
    • xconnect by interface vlan or sub int with L2 3400 series not work
    • vpls with interwork not work
      [li]pass PE is work only xconnect on phy int and PC connected with PE if used sw L2 3400 series not work[/li]
      [li]sw L2 pure configured igmp snooping is work[/li]
      [li]xconnect used sub int with L2 7600 series is work[/li][/list]

      Multicast “MPLS” VPNs/L3 Multicast
      http://blog.ipexpert.com/2010/06/07/multicast-mpls-vpns


      VLC Setup for Multicast Test
      peakdrive.com/?p=440

      image

      Multicast Tutorial
      http://www.garr.it/eventiGARR/emc_training/tutorials/mcast_tutorial.pdf

      http://www.cisco.com/application/vnd.ms-powerpoint/en/us/guest/tech/tk363/c1506/ccmigration_09186a00801a2537.ppt


      Test mVPN Configuration Template
      Core Multicast
      • SSM mode
      • Default MDT : 239.11.1.1
      VRF Multicast
      • Static RP
      • RP address 10.239.1.1
      PE Configuration
      ip multicast-routing
      ip multicast multipath
      !
      interface lo0
      ip address 10.5.0.73 255.255.255.255
      ip pim sparse-mode
      !
      !enable pim on all core facing interfaces
      interface x/y
      description Core-facing-Interface
      ip pim sparse-mode
      !
      !enable SSM
      ip pim ssm range 39
      access-list 39 permit 239.0.0.0 0.255.255.255
      !
      !Configure multicast VRF ทำแค่บนตัวที่ต่อกับตัว Decoder
      !Default MDT Configure
      ip vrf IPTV-M
      rd aaa:bbb
      route-target export aaa:bbb
      route-target import aaa:bbb
      mdt default 239.11.1.1 -> สร้าง GRE Tunnel Multicast ต้องมี เป็น mandatory
      !
      ip multicast-routing vrf IPTV-M
      !
      interface x/y.z
      description test IPTV
      encapsulation dot1Q z
      ip vrf forwarding IPTV-M
      ip pim sparse-mode
      ip address 10.239.7.1 255.255.255.252
      !
      router bgp aaa
      address-family ipv4 mdt -> ไม่ใส่ pim neighbor ไม่ขึ้น
        neighbor 10.5.0.252 activate
        neighbor VPN-RR send-community both
      !
      ip pim vrf IPTV-M rp-address 10.239.1.1


      P Configuration
      ! Core-CRS
      !
      multicast-routing address-family ipv4
      multipath
      interface all enable
      ssm range 39
      !
      ipv4 access-list 39
      10 permit 239 .0.0.0 0.255.255.255


      RR Configuration
      router bgp aaa
      address-family ipv4 mdt
        neighbor VPN-RR-CLIENT activate
        neighbor VPN-RR-CLIENT send community both
        neighbor VPN-RR-CLIENT route-reflector-client
        neighbor 10.5.0.73 peer-group VPN-RR-CLIENT

      [center]Credit: P'Suwanna@Cisco[/center]
      L2 Configuration
      ip igmp snooping


      Verify MVPN on PE
      • [li]show ip pim vrf IPTV-M neighbor -> จะเห็นทุก PE ที่ configured multicast[/li]
        [li]ip igmp join-group 239.255.1.1 -> บน vrf int ทดสอบเป็น Client โดย router[/li]
        [li]ping ip vrf IPTV-M 239.255.1.1[/li]
        [li][/li]
        [li]show ip mroute[/li]
        [li]show ip pim interface[/li]
        [li]show ip pim neighbors[/li]
        [li]show ip pim rp[/li]
        [li]show ip rpf[/li]


      Testing Source Specific Multicast
      http://blog.ipexpert.com/2011/02/09/testing-source-specific-multicast


      Implementing Multicast Routing on Cisco IOS XR Software
      http://www.cisco.com/en/US/docs/ios_xr_sw/iosxr_r3.8/multicast/configuration/guide/mc38mcst.html


      Default MDT and Data MDT Concept
      https://learningnetwork.cisco.com/docs/DOC-3671


      On  ME-3600X must change sdm to application
      #sdm prefer applications (on EXEC mode)
      show ip mfib count : you can look at mfib count to check the number of packet received and forwarded and the number of drops to check if we can we are forwarding the number of packets received and they are not being dropped this would mean that the multicast stream is a healthy stream. If result is NA you can see by:
      show ip mrib route 239.70.10.10 verbose
      (192.168.10.84,239.70.10.10) RPF nbr: 10.5.0.60 Flags: K DDE
        Tunnel1 Flags: A      Next-hop: 239.232.0.2  // Flags are same for both mfib and mrib outputs is healthy multicast stream.
        Vlan1914 Flags: F NS
      show ip mfib 239.70.10.10 verbose
      (192.168.10.84,239.70.10.10) Flags: K HW DDE
        SW Forwarding: 0/0/0/0, Other: 0/0/0
        HW Forwarding:  446523184/1891/1360/20107, Other: NA/NA/NA
        Tunnel1, MDT/239.232.0.2 Flags: RA A MA
        Vlan1914 Flags: RF F NS


      ip igmp static-group configures a static connected member for a specific group. Traffic to that group will be fast-switched to the interface where this command is configured rather than process switched. This command is usually used to forward mcast traffic down an interface.

      ip igmp join-group causes the router to send an IGMP membership report on the interface where it is configured. The mcast packets will therefore be received and process switched by the router hence more CPU intensive. This command is usually used for test purposes only.

      high CPU 7600 because interface vrf multicast have rp-address is incorrect.

      me360x-universalk9-mz.151-2.EY4.bin can't support multicast vpn. I used another version, The ip pim vrf neighbor is up but when I downgraded to this version not up.

      Multicast Uses:
    • Any applications with multiple receivers
    • One-to-many
    • Many-to-many
    Live video distributionCollaborative groupwarePeriodic data delivery - "push" technology
    • Stock quotes, sports scores, magazines, newspapers, adverts
    Inter-Data Center L2 Underlay
    • VXLAN, etc. for BUM
    Server/Website replicationReducing network/resource overhead
    • More than multiple point-to-point flows
    Resource discoveryDistributed interactive simulation (DIS)
    • War games
    • Virtual reality B-)
  • 1 Comment sorted by
  • Multicast Considerations:
    Multicast Is UDP-Based
    • Best effort delivery: Drops are to be expected; multicast applications should not expect reliable delivery of data and should be designed accordingly; reliable multicast is still an area for much research; expect to see more developments in this area; PGM, FEC, QoS

    • No congestion avoidance: Lack of TCP windowing and "slow-start" mechanisms can result in network congestion; if possible, multicast applications should attempt to detect and avoid congestion conditions

    • Duplicates: Some multicast protocol mechanisms (e.g., asserts, registers, and SPT transitions) result in the occasional generation of duplicate packets; multicast applications should be designed to expect occasional duplicate packets

    • Out of order delivery: Some protocol mechanisms may also result in out of order delivery of packets

    Unicast:
    • A unique packet addressed to each destination IP Address.

    Multicast:
    • Same packet addressed to "Group" destination address...
    • ..replicated at each node along the tree.

    Multicast Addressing:
    • Source Address Can Never Be Class D Multicast Group Address - (Class A, B, C) - Always the unique unicast origin address of the packet - same as unicast

    • Destination - 224.0.0.0 - 239.255.255.255 (Class D) - Multicast Group Address Range

    Class D Group addresses - 224/4:
    • Multicast Group addresses are NOT in the unicast route table.
    • A separate multicast route table is maintained for active multicast trees.
    • Multicast trees are initiated by receivers signaling their request to join a group.
    • Sources do not need to join, they just send!
    • Multicast routing protocols build the trees:
    • Hop-by-hop, from the receivers (tree leaves) to the source (tree root).
    • Tree path follows the unicast route table backward to the source using source address.
    • i.e. Multicast relies on a dependable unicast infrastructure!

    Core Tree Types:
    • Default MDT
    • Connects all PEs
    • Bidirectional
    • Always present
    • Multi-Directional
    • Inclusive PMSI
    • MI-PMSI

    Data MDT
    • Connects subset of PEs
    • Unidirectional
    • On-demand
    • Selective PMSI
    • S-PMSI

    Partitioned MDT
    • Connects subset of PEs
    • Uni- or Bidirectional
    • On-demand
    • Multidirectional
    • Selective PMSI
    • MS-PMSI
    MDT = Multicast Distribution Tree
    PMSI = Provider Multicast Service Interface

    image
    4 Core Tree Type Constructions: PIM, mLDP, P2MP TE, and IR
    Core Tree Type Construction - PIM

    image
    Core Tree Type Construction - mLDP
    • Full mesh of P2MP mLDP trees = Default MDT or
    • 1 MP2MP mLDP tree = Default MDT
    • 1 P2MP mLDP tree = Data MDT

    Core Tree Type Construction - P2MP TE
    • Full mesh of P2MP TE tunnels = Default MDT
    • 1 P2MP TE tunnel = Data MDT

    Core Tree Type Construction - IR
    • Full mesh of IR LSP sets = Default MDT
    • 1 IR LSP set = Data MDT

    Encapsulation:
    • mcast IP | GRE | mcast IP
    • MPLS Label Stack | mcast IP

    image
    Core Tree - PIM
    • PIM/IP Multicast as we know it
    • Pretty complex, but well-known
    (*,G) and (S,G) / PIM Sparse Mode, PIM SSM, PIM BiDir
    • PIM for core tree
    • Used for Default Model / Rosen
    • Replication of mcast on the core routers

    packetpushers.net/using-next-generation-mvpn-optimize-mpls-core-part-1

    CCDE – Next Generation Multicast – NG-MVPN
    lostintransit.se/2015/04/10/next-generation-multicast-ng-mvpn

    Introduction to Next-Gen MVPN
    learningnetwork.cisco.com/community/learning_center/ccie-sp-training-videos
    B-)