15.3 IPv4 multicast forwarding function
Forwarding of multicast packets is performed in hardware and software based on multicast forwarding entries. Forwarding information for forwarded multicast packets is registered in hardware multicast forwarding entries upon forwarding. Packets registered in multicast forwarding entries are forwarded by hardware, and unregistered packets are forwarded based on multicast forwarding entries generated by software multicast routing information.
- <Structure of this section>
(1) Multicast packet forwarding by hardware
Hardware-based multicast packet forwarding provides the following functionality:
-
Searching within multicast forwarding entries
When a packet bound for a multicast group is received, the hardware multicast forwarding entries are searched for corresponding entries.
-
Receiving interface validity checking for multicast packets
If multicast forwarding entry search returns any entries, the packet is checked for whether it was received from a valid interface.
-
Filtering multicast packets
Forwarding judgment is performed based on the information registered in the filtering table.
(2) Multicast packet forwarding by software
-
If no hardware-based multicast forwarding entries exist
When a packet from a given sender and bound for a given multicast group is first received, it is forwarded by software based on a multicast forwarding entry generated from multicast routing information. At the same time, a multicast forwarding entry is registered in hardware.
-
When IP encapsulation processing is performed
Forwarding is performed with temporary IP encapsulation for PIM-SM bound for the rendezvous point, and then decapsulation is performed at the rendezvous point to each forwarding destination.
(3) Retrieval of multicast routing information or multicast forwarding entries
Entries corresponding to the DA (destination group address) and SA (source address) of received multicast packets are searched from multicast routing information or multicast forwarding entries. The following figure shows how multicast routing information or multicast forwarding entries are searched.
|
(4) Negative cash
Negative caching is functionality that uses hardware to discard multicast packets that cannot be forwarded. A negative cache is a forwarding entry for which no forwarding destination interface exists. When a negative cache receives a multicast packet that cannot be forwarded, it registers it in hardware. Then, when a multicast packet is received with the same address as the registered multicast packet, the packet is discarded by using hardware. This prevents undue load when many multicast packets that cannot be forwarded are received.
(5) VRF function [SL-L3A]
When an IPv4 multicast is performed over multiple VRFs, IPv4 multicast forwarding entries can be set for each individual VRF. For different VRFs, IPv4 multicast forwarding entries that have the same IP address can be created. If an IPv4 multicast extranet is used, multicast communication can be performed between different VRFs.
(6) Notes on IPv4 Multicast Forwarding Function
Note the following points when using the IPv4 multicast forwarding functionality.
-
MTU length of the interface used in IPv4 multicasting
If the MTU length of the forwarding destination interface is shorter than that of the receiving interface, IPv4 multicast packets whose MTU length is longer than the forwarding destination interface cannot be forwarded properly. Make sure that the same MTU length value is used for all interfaces that are used in IPv4 multicasting.