orca Posted December 23, 2019 Posted December 23, 2019 Есть сервер FreeBSD 12.1-RELEASE-p1 GENERIC amd64, один физический интерфейс, в нем два vlan. Один влан смотрит в Интернет, другой принимает мультикаст. Запущен udpxy. Клиент из интернет подключается к udpxy, сервер шлет igmp запрос в vlan с мультиксат, в ответ получает мультикаст поток и передает его по http клиенту, сервер периодически шлет igmp report. Все хорошо, все работает. Начались жалобы на пропадания кадров. Заметил очень большую разницу в объемах трафика между вланами. Стал разбираться. Оказалось после того как клиент от канала отключился, либо переключил на другой канал, сервер все равно продолжает слать igmp reportы, и получает мультикаст. На сервер идут все потоки которые когда либо смотрели, не зависимо от того смотрят их сейчас или нет. Даже если полностью убить udpxy, мультикаст продолжает идти на сервер. Если запретить в фаерволе igmp, через пару минут мультикаст останавливается (на свиче igmp snooping работает правильно), после удаления правил все возвращается. Утилита ifmcstat показывает все группы на которые подписан сервер. Как их оттуда убрать я не нашел. Пробовал на стороне источника мультикаст переключать igmp v2 и v3, на сервере igmp тоже переключается вслед за источником, но группы он не покидает. ОС обновил с 11.2, там она вела себя аналогично. Вставить ник Quote
vlad11 Posted December 23, 2019 Posted December 23, 2019 Вы плохо себе представляете, как работает мультикаст влан. Вставить ник Quote
Ivan_83 Posted December 23, 2019 Posted December 23, 2019 А почему вы думаете что мультикаст трафик не должен попадать на фрю? Поставьте msd_lite, там хотя бы понятно точно есть кто то на канале или нет, и вроде в явном виде шлётся запрос на покидание группы. И оно под нагрузки по более двух калек приспособлено. Кадры могут пропадать только если у вас входящий линк забит полностью. Дальше я бы смотрел дропы на интерфейсах и сетевом стёке. Но это всё после выпиливания udpxy. Вставить ник Quote
orca Posted December 23, 2019 Author Posted December 23, 2019 35 минут назад, vlad11 сказал: Вы плохо себе представляете, как работает мультикаст влан. Это не мультикаст влан, это обычный влан с мультикастом. 17 минут назад, Ivan_83 сказал: А почему вы думаете что мультикаст трафик не должен попадать на фрю? Поставьте msd_lite, там хотя бы понятно точно есть кто то на канале или нет, и вроде в явном виде шлётся запрос на покидание группы. И оно под нагрузки по более двух калек приспособлено. Кадры могут пропадать только если у вас входящий линк забит полностью. Дальше я бы смотрел дропы на интерфейсах и сетевом стёке. Но это всё после выпиливания udpxy. С дропами я разобрался. Вопрос не в этом. Я разбирался почему на сервер приходит мультикаста в два раза больше чем уходит юникаста на клиентов. Непонятно почему фря продолжает слать igmp reportы после того как канал смотреть перестали. msd_lite попробую, может действительно поможет. Вставить ник Quote
Ivan_83 Posted December 23, 2019 Posted December 23, 2019 1 минуту назад, orca сказал: Я разбирался почему на сервер приходит мультикаста в два раза больше чем уходит юникаста на клиентов. А у вас коммутатор перед фрёй вообще умеет igmp snooping? Оно там как сейчас в нём настроено? Вставить ник Quote
orca Posted December 23, 2019 Author Posted December 23, 2019 (edited) 8 минут назад, Ivan_83 сказал: А у вас коммутатор перед фрёй вообще умеет igmp snooping? Оно там как сейчас в нём настроено? Да snooping умеет, если в ipfw на сервере режу igmp, мультикаст пропадает. В tcpdump вижу igmp reportы. Утилита ifmcstat показывает кучу групп. В описании утилиты написано: "The ifmcstat command dumps multicast group information from the kernel." Как убрать эти группы из ядра и почему они сами не убираются, неясно. Edited December 23, 2019 by orca Вставить ник Quote
z18 Posted December 27, 2019 Posted December 27, 2019 https://svnweb.freebsd.org/changeset/base/355322 Вставить ник Quote
orca Posted July 3, 2020 Author Posted July 3, 2020 В 27.12.2019 в 15:50, z18 сказал: https://svnweb.freebsd.org/changeset/base/355322 Спасибо помогло. Еще добавил это:https://reviews.freebsd.org/D22848 Вставить ник Quote
Ivan_83 Posted July 4, 2020 Posted July 4, 2020 В смысле? Это уже пол года как должно быть в 12.1 стабле - достаточно обновится. Вставить ник Quote
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.