Introduction to IPv6

Hello,

First time using the networklessons forum so sorry in advance if i’m not posting on the right place;

IPv6 uses multicast instead of broadcast ; For example in ipv4 the arp request are sent in L2 destination all FF’s whereas the ndp process uses L2 multicast “3333+8 last hex digits of sollicited node address” and L3 destination “solicited node address” multicast

The aim is that the hosts that are not concerned by specific frame/packet don’t have to process it and thus waste cpu cycles; so my questions are the followings

1 - On which layer the discarding of a multicast frame/packet occurs for a host ? I’ve been told that discarding happens either on hardware level or layer 2 (depending on the driver of the nic) so that it doesn’t have to decapsulate until layer3 ; do you confirm this fact ?

2 - Thus, if true, how does the host do to determine if it has subscribed to the multicast group based on the layer 2 multicast address ? i mean i can see the subscribed groups on a host via “netsh interface ip show joins” but is there a such mapping table for layer-2 multicast groups it joined ?
Or does the host “reverse” calculate the layer2 multicast destination address to the corresponding layer3 multicast address and then compares it to the layer3 multicast groups it joined and then decides if it discards or process the frame ?

Thank you very much in advance

Pierre