Understanding Ipv6

There are three types of MLD messages:

  1. Multicast Listener Query (ICMPv6 Type 130)
  2. Multicast Listener Report (ICMPv6 Type 131)
  3. Multicast Listener Done (ICMPv6 Type 132)

    All three MLD messages share the same message structure.

Multicast Listener Query

An IPv6 multicast-capable router uses the Multicast Listener Query message to query a link for multicast group membership. It is equivalent to the IGMPv2 Host Membership Query message. There are two types of Multicast Listener Query messages:

  1. General query

    The general query is used to periodically query all hosts on a subnet for the presence of multicast group members of any multicast address. The only multicast address that is not reported is the link-local scope all-nodes multicast address (FF02::1).

  2. Multicast-address-specific query

    The multicast-address-specific query is used to query all hosts on a subnet that are members of a specific multicast group.

The two message types are distinguished by the Destination Address field in the IPv6 header and the Multicast Address field within the Multicast Listener Query message.

In the IPv6 header of a Multicast Listener Query message:

Figure 7-2 shows the structure of the Multicast Listener Query message.

Figure 7-2. The structure of the Multicast Listener Query message

The fields in the Multicast Listener Query message are:

Multicast Listener Report

The Multicast Listener Report message is used by a listening node to either immediately report its interest in receiving multicast traffic at a specific multicast address or respond to a Multicast Listener Query message (either a general or multicast-address-specific query). It is equivalent to the IGMPv2 Host Membership Report message.

In the IPv6 header of a Multicast Listener Report message:

Figure 7-3 shows the structure of the Multicast Listener Report message.

Figure 7-3. The structure of the Multicast Listener Report message

The fields in the Multicast Listener Report message are:

Network Monitor Capture

Here is an example of a Multicast Listener Report message as displayed by Network Monitor (capture 07_01 in the \NetworkMonitorCaptures folder on the companion CD-ROM):

+ Frame: Base frame properties + ETHERNET: EType = IPv6 + ETHERNET: Destination address : 3333FFB17480 + ETHERNET: Source address : 00902766C140 ETHERNET: Frame Length : 86 (0x0056) ETHERNET: Ethernet Type : 0x86DD ETHERNET: Ethernet Data: Number of data bytes remaining = 72 (0x0048) IP6: Hop Opts; Proto = ICMP6; Len = 24 IP6: Version = 6 (0x6) IP6: Traffic Class = 0 (0x0) IP6: Flow Label = 0 (0x0) IP6: Payload Length = 32 (0x20) IP6: Next Header = 0 (Hop-by-Hop Options Header) IP6: Hop Limit = 1 (0x1) IP6: Source Address = fe80::290:27ff:fe66:c140 IP6: Destination Address = ff02::1:ffb1:7480 IP6: Hop-by-Hop Options Header IP6: Next Header = 58 (ICMP6) IP6: Length = 0 (0x0) IP6: Router Alert Option IP6: Type = 5 IP6: 00...... = Skip option if not recognized IP6: ..0..... = Option data does not change enroute IP6: Length = 2 (0x2) IP6: Router Alert Value = 0 (0x0) IP6: Padding (2 bytes) IP6: Type = 1 (PadN) IP6: 00...... = Skip option if not recognized IP6: ..0..... = Option data does not change enroute IP6: Length = 0 (0x0) IP6: Payload: Number of data bytes remaining = 24 (0x0018) ICMP6: Multicast Listener Report ICMP6: Type = 131 (Multicast Listener Report) ICMP6: Code = 0 (0x0) ICMP6: Checksum = 0xAD88 ICMP6: Maximum Response Delay = 0 (0x0) ICMP6: Unused ICMP6: Multicast Address = ff02::1:ffb1:7480

Notice the mapping of the destination IPv6 multicast address (FF02:: 1:FFB1:7480) and the destination MAC multicast address (3333FFB17480) (corresponding bits underlined), and the use of the Hop-by-Hop Options header and the IPv6 Router Alert option (Option Type 5).

Multicast Listener Done

The Multicast Listener Done message is equivalent to the IGMPv2 Leave Group message and is used to inform the local routers that there might not be any more group members of a specific multicast address on the subnet. A local router verifies that there are no more group members on the subnet.

The Multicast Listener Done message is sent when the group member that responded to the last Multicast Listener Query message for the multicast address on the subnet leaves the multicast group. Notice that the group member sending the Multicast Listener Done message might not truly be the last group member on the subnet. This is why membership for the group is verified by a local router. This simple method of reporting what might be the last group member prevents a host from having to track the presence of other multicast group members on their subnet for each multicast group for which the host is a member.

Because IPv6 multicast routers do not track how many group members are on a subnet for a given multicast group, every subnet must be treated as if there were multiple group members present. The host that sends the Multicast Listener Done message might not be the last group member. Therefore, upon receiving a Multicast Listener Done message, the multicast querying router on the subnet immediately sends multicast-address-specific queries for the multicast address being reported in the Multicast Listener Done message. If there are additional group members, one of them will send a Multicast Listener Report message.

In the IPv6 header of a Multicast Listener Done message:

Figure 7-4 shows the structure of the Multicast Listener Done message.

Figure 7-4. The structure of the Multicast Listener Done message

The fields in the Multicast Listener Done message are:

Категории