Chapter 16: Intro to IP Multicast

Chapter 16: Introduction to IP Multicast

  • All hosts that are connected to a LAN must use a standard method to calculate a L2 multicast address from the L3 multicast address and assign it to their NICs.
  • IGMP provides communication b/w hosts and a router connected to the same subnet. CGMP = IGMP snooping helps switches learn which hosts have requested to receive the traffic for a specific multicast application. (switches learn which ports would like to receive Mcast traffic using CGMP)
  • Some Multicast routing protocols (allows routers to forward multicast traffic from MCast servers to hosts. Distance Vector Multicast Routing Protocol (DVMRP), Multicast OSPF (MOSPF), and PIM-DM and PIM-SM.
  • Multicast is UDP-based (unreliable). Some multicast protocol mechanisms occasionally generate duplicate packets and deliver packets out of order.
  • The first 4 bits of the first octet for a class D address are always 1110.
  • Range: 224.0.0.0 to 239.255.255.255 ( no need for masks), only one requirement, first 4 bits have to be 1110.
  • Permanent multicast groups: 224.0.0.0 – 224.0.1.255
    • for non-routing purposes: 224.0.0.0 224.0.0.255 (e.g. 224.0.0.1 [all multicast capable hosts on a local network] and 224.0.0.3 [all multicast-capable routers on local network]). 224.0.0.4 (DVMRP routers)
    • for when packets need to be routed: 224.0.1.39 (RP announce) – 224.0.1.40 (RP discovery) (used by Auto-RP).
  • Used with Source-Specific Multicast (SSM), 232.0.0.0 – 232.255.255.255
    • purpose of these applications, to allow a host to select a source for the multicast group. Helps make Mcast routing efficient, allows a host to select a better-quality source and helps network admins minimize DoS attacks. ONLY IGMPv3 capable hosts can use this feature.
  • GLOP: 233.0.0.0 – 233.255.255.255
    • can be used by anyone who owns a registered ASN to create 256 global multicast addresses. Uses the value 233 in first octet and the ASN in the second and third octet. E.g: ASN 5663 would convert to: 0001011000011111. First eight bits equal to 22 and last 8 bits equal to 31, will become, 233.22.31.0 to 233.22.31.255
  • Private: 239.0.0.0 – 239.255.255.255
  • Multicast addresses for “transient” group: remaining multicast addresses are transient groups. Enterprise is expected to release this after use.
  • Mapping IP Multicast addresses to MAC addresses:
    • e.g 228.10.24.5, replace the first 4 bits 1110 à 01-00-5E (first 6 hex of 12 hex)
    • replace next 5 bits of binary IP with 0 ALWAYS
    • 01-00-5E-0 (becomes now)
    • the last 23 bits of binary IP in the last 23 bit space of the multicast MAC address.
    • A-18-05
    • 0x01-00-5E-0A-18-05
    • possibility of duplicate addresses is there!!
  • Three different tools, namely CGMP, IGMP snooping and RGMP allow switches to optimize their multicast forwarding logic by answering the question of which hosts to forward traffic to in a broadcast domain.
  • IGMP:
    • IGMP messages are sent in IP datagrams with IP protocol number2, IP TTL set to 1.
    • IGMP packets pass only over a LAN and not forwarded by routers due to TTL.
    • 2 Goals: to inform mcast router that a host wants to receive packets from a specific group and to inform local multicast routers that a host wants to leave a mcast group.
    • IGMP, b/w hosts and router.
    • IGMP v2 packet:
      • Type (8 bit) has four message types: Membership query, version 1 membership report (for backward compatibility), Version 2 Membership report, Leave Group.
      • Max response time: default 100 (10 seconds) default. Allows for tuning response time for the Host Membership Report.
      • checksum
      • Group Address: set to 0.0.0.0 in general query and to group address in Group specific query.
    • REASONS for v2: better “Leave” mechanism to shorten the leave latency. Group-specific query messages permit router to send a query for a specific group instead of all groups. Provides MRT field. Querier election process: provides the method for selecting the preferred router for sending Query messages when multiple routers are connected to the same subnet.
      • IGMP v2 router sends IGMPv2 quey message every 125 seconds.
    • Multicast hosts must listen to the well-known 224.0.0.1 multicast group address to participate in IGMP and to receive mcast queries.
    • by setting the group address to be 0.0.0.0 the router is asking, “does anyone want to receive multicast traffic for any group?” Host responds with the IGMP report messages to inform Router.
    • Host sends, “solicited host membership report” and “unsolicited host membership report”
    • Multicast router only needs 1 report to forward traffic out its interface whether there are 1 or 200 users.
    • IGMPv2 uses, MRT timer to suppress many of the unnecessary IGMP reports. Timer is called “query response interval”. Report suppression is when a host receives a report sent by another host for the same mcast group for which it is planning to send a report, host does not send. 3 second MRT is expressed as 30. Hosts pick the MRT randomly b/w 0 and MRT timer.
    • IGMPv1 router takes 3 minutes to conclude that the last host on the subnet has left the group as opposed to IGMPv2 router, it takes only 3 seconds.!
    • IGMPv2 leave group and IGMPv2 Group-Specific query message work together.
    • Last Member Query Interval by default is the MRT which is 10 (1 second). The router sets the Last Member Query Count to 2. So the leave latency is less than 3 second usually.
    • IGMPv2 querier: when multiple routers are connected to a subnet. The router with the LOWEST IP address on the subnet is elected as the IGMP querier. “OTHER Querier Present Interval”. Default value is 255 seconds, because the default general IGMPv2 query interval is 125 seconds and default query response interval is 10 seconds.
    • IGMPv2 Host and IGMPv1 Routers: IGMP v2 hosts determines whether the router is v1 or v2 by the MRT fields of the periodic general IGMP query. IGMPv1 queries, this field is ZERO. IGMPv2 Host “version 1 router present timeout” timer is 400seconds.
    • IGMPv1 Host and IGMPv2 routers: determines by IGMPv1 report and figures it out. With one or more IGMPv1 hosts listening for a particular group, the router essentially suspends the optimizations that reduce leave latency. IGMPv1-host-present countdown timer = 180 in IGMPv1 and 260 seconds IGMPv2. (based on Group membership interval).
    • IGMPv3: allows a host to filter incoming traffic based on the source IP addresses from which it is willing to receive packets, through a feature called “Source-Specific Multicast” (SSM). It allows a host to indicate interest in receiving packets only from specific source addresses or from all but specific source addresses, sent to a particular multicast address.
    • destination address is 224.0.0.22 for IGMPv3 report. Message type is 0x22.
    • How does a host learn group source addresses? Cisco has designed URL Rendezvous Directory (URD) and IGMPv3 Lite to use the new features of IGMPv3 is fully available.
  • LAN Multicast Optimizations
    • CGMP: L2 protocol, permits router to communicate L2 information it has learned from IGMP to switches.
    • only routers generate CGMP messages, switches listen. CGMP needs to be enabled on both ends of the router-switch connection over which CGMP is operating.
    • Destination Address on the CGMP messages is always well known MAC 0x0100.0cdd.dddd.
    • Important info in CGMP messages is: Group Destination Address (GDA) and Unicast Source Address (USA).
    • router sends a CGMP join message (every 60s) with GDA=0, and USA=it’s own mac.
    • when router receives a join request from a host, it sets the DA=well known mac, USA=host’s MAC, and GDA=group Mac. “A host with USA MAC of xx has requested multicast traffic for the GDA…., so map your CAM tables accordingly”
    • Leave: R1 sends GDA=group, and USA=0, to say that no host is interested.
    • clear ip cgmp” command is entered at the router for clearing all CGMP entries on the switches, the router sends the “delete all groups”, CGMP leave message with gda and usa set to 0. When switches receive these messages, they delete all group entries from CAM tables.
  • RGMP: is a l2 protocol that enables a router to communicate to a switch which multicast group traffic the router does and does not want to receive from the switch. Router can reduce its overhead this way.
Advertisements

2 thoughts on “Chapter 16: Intro to IP Multicast

  1. MAC address of what? Each interface has it’s own mac address. Your computer’s MAC is based on the NIC card or wireless card..whichever you are using.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s