Нужно ли знать о протоколах IGMP а также BGP (один из ПИМ) когда я пишу C / C ++ — код для многоадресного, или IGMP / BGP для меня работает полностью автоматически и прозрачно?
И правильно ли, что для разных IP-адресов групп многоадресной рассылки разные протоколы строят маршруты?
И зачем мне знать об IGMP / BGP для использования UDP-многоадресной рассылки?
Что касается IGMP, вам не о чем явно беспокоиться.
Когда вы звоните setsockopt
либо с IP_ADD_MEMBERSHIP
или же IP_DROP_MEMBERSHIP
(или же MCAST_JOIN_GROUP
или же MCAST_LEAVE_GROUP
среди прочего) ОС будет автоматически отправлять соответствующие сообщения IGMP в дополнение к настройке указанного интерфейса на прием / не прием пакетов из заданной многоадресной группы.