25.02.2013 Views

TCP/IP Tutorial and Technical Overview - IBM Redbooks

TCP/IP Tutorial and Technical Overview - IBM Redbooks

TCP/IP Tutorial and Technical Overview - IBM Redbooks

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

corresponding Ethernet address <strong>and</strong> sends the packet to the destination. The<br />

destination process informs its network device drivers that it wants to receive<br />

datagrams destined for a given multicast address. The device driver enables<br />

reception of packets for that address.<br />

In contrast to st<strong>and</strong>ard <strong>IP</strong> unicast traffic forwarding, the mapping between the <strong>IP</strong><br />

multicast destination address <strong>and</strong> the data-link address is not done with ARP<br />

(see 3.4, “Address Resolution Protocol (ARP)” on page 119). Instead, a static<br />

mapping has been defined. In an Ethernet network, multicasting is supported if<br />

the high-order octet of the data-link address is 0x'01'. The IANA has reserved the<br />

range 0x’01005E000000' through 0x'01005E7FFFFF' for multicast addresses.<br />

This range provides 23 usable bits. The 32-bit multicast <strong>IP</strong> address is mapped to<br />

an Ethernet address by placing the low-order 23 bits of the Class D address into<br />

the low-order 23 bits of the IANA reserved address block. Figure 6-1 shows the<br />

mapping of a multicast <strong>IP</strong> address to the corresponding Ethernet address.<br />

Figure 6-1 Mapping of Class D <strong>IP</strong> addresses to Ethernet addresses<br />

Because the high-order five bits of the <strong>IP</strong> multicast group are ignored, 32<br />

different multicast groups are mapped to the same Ethernet address. Because of<br />

this non-unique mapping, filtering by the device driver is required. This is done by<br />

checking the destination address in the <strong>IP</strong> header before passing the packet to<br />

the <strong>IP</strong> layer. This ensures the receiving process does not receive spurious<br />

datagrams. There are two additional reasons why filtering might be needed:<br />

► Some LAN adapters are limited to a finite number of concurrent multicast<br />

addresses. When this limit is exceeded, they receive all multicast packets.<br />

► The filters in some LAN adapters use a hash table value rather than the entire<br />

multicast address. If two addresses with the same hash value are used at the<br />

same time, the filter might pass excess packets.<br />

Despite this requirement for software filtering, multicast transmissions still cause<br />

less inefficiencies for hosts not participating in a specific session. In particular,<br />

hosts that are not participating in a host group are not listening for the multicast<br />

Chapter 6. <strong>IP</strong> multicast 239

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!