У меня есть несколько встроенных машин, которые прослушивают и передают звуковые данные Rtp в группу многоадресной передачи. Они подключены к интеллектуальному управляемому коммутатору (Netgear GS108Ev2), который выполняет базовую фильтрацию nigmp и многоадресную фильтрацию на своих портах, так что остальная часть моей (W) LAN не будет затоплена.Обновить членство в многоадресной группе
При запуске все работает нормально около 500-520 секунд. После этого они получают больше данных, пока они не уйдут, и снова присоединитесь к группе. Я думаю, что переключатель «забывает» о соединении после таймаута.
Есть ли способ обновить членство в группе, то есть позволить коммутатору знать, что все еще кто-то слушает, не теряя пакетов?
Информация о системе:
Arch: blackfin
# cat /proc/version
Linux version 2.6.28.10-ADI-2009R1-uCBF54x-EMM
(gcc version 4.3.3 (ADI)) #158 PREEMPT Tue Jun 5 20:05:42 CEST 2012
Хорошо, есть ли способ на C, чтобы вручную отправить отчет о членстве, не дожидаясь запроса или покидая группу в первую очередь? Я сомневаюсь, что мой 20-долларовый коммутатор делает это. – derhoch
Да, просто создайте собственный IGMP-пакет (достаточно IGMPv2) с типом отчета о членстве и вашим групповым адресом. Возможно, вам понадобится сырой сокет для его отправки, поскольку нет заголовка TCP или UDP. – scai