Windows частично фильтрует многоадресный источник при использовании IGMPv2/IGMPv3
У меня есть 2 сервера потоковой передачи в разных подсетях, и наши конфигурации маршрутизаторов позволяют серверам из 2 подсетей прослушивать одну и ту же группу. Когда я пытаюсь прослушать адрес многоадресной рассылки без использования IGMP для фильтрации источника, я могу получить все данные, которые передаются в группу многоадресной рассылки (например, 224.50.50.1:47000) с обоих серверов (скажем, 1000 пакетов 1500 байт в течение 5 секунд с каждого сервера).
Когда я попытался применить некоторую фильтрацию источника, чтобы получать данные только от одного из серверов, использующих IGMPv3, я заметил, что моя сетевая инфраструктура не поддерживает это, и мы вернемся к IGMPv2 (как видно на wireshark).
До сих пор все кажется нормальным. Кажется, проблема связана с IGMPv2, поскольку интерфейс ОС / сети не может правильно применить фильтрацию, и мое приложение получит следующее: 1000 пакетов по 1500 байт с сервера, который мы хотим прослушать, и от 20 до 600 пакетов по 1500 байты с сервера, которые следует исключить при применении фильтрации.
Есть ли у вас какие-либо идеи о том, как я могу убедиться, что фильтрация, которую я использую, фильтрует весь пакет, как предполагалось?