Here are a few questions: (Concerning the first part of the assignment
1) What is figure 13.4 for? As i understand it when a host sends a report to
the multicast address the router catches it:
a) we need to modify IPIncomingPacket() to go to a special multicast
function if the address is of class D?
Assuming the router catches the packet, it:
b) broadcasts a query to all machines connected to the routeur using the
mac address in 13.4?(and by magic only the ones that subscribed to the group
will catch it?)
c)it looks up all the hosts in the multicast table and sends them a query
using their actual ip addresses?
2) Do we really need our previous implementation of UDP for the assignment.
I.e when we form our group and one of the hosts multicast a message,
it uses the UDP protocol (i guess since we are using a UDP socket), thus the
router simply needs to catch the packet since it has a multicast address
and forward it to the proper hosts that he found in his group table. But if
we forward the message using ip we need to recalculate the checksum for each
of the duplicate packets no?, or can we use the special broadcast hardware
address? Basically I don't understand when and where to use this multicast
MAC address and exactly what it does.
3) (Sanity check) Even if there is no one in the group you can dynamically
create a multicast group from a host simply by sending a report IGMP.
gini mailing list