Перейти к содержимому
Калькуляторы

FreeBSD не покидает мультикаст группы

Есть сервер 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, там она вела себя аналогично.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Вы плохо себе представляете, как работает мультикаст влан.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

А почему вы думаете что мультикаст трафик не должен попадать на фрю?

 

Поставьте msd_lite, там хотя бы понятно точно есть кто то на канале или нет, и вроде в явном виде шлётся запрос на покидание группы.

И оно под нагрузки по более двух калек приспособлено.

 

Кадры могут пропадать только если у вас входящий линк забит полностью.

Дальше я бы смотрел дропы на интерфейсах и сетевом стёке.

Но это всё после выпиливания udpxy.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

35 минут назад, vlad11 сказал:

Вы плохо себе представляете, как работает мультикаст влан.

Это не мультикаст влан, это обычный влан с мультикастом.

 

17 минут назад, Ivan_83 сказал:

А почему вы думаете что мультикаст трафик не должен попадать на фрю?

 

Поставьте msd_lite, там хотя бы понятно точно есть кто то на канале или нет, и вроде в явном виде шлётся запрос на покидание группы.

И оно под нагрузки по более двух калек приспособлено.

 

Кадры могут пропадать только если у вас входящий линк забит полностью.

Дальше я бы смотрел дропы на интерфейсах и сетевом стёке.

Но это всё после выпиливания udpxy. 

С дропами я разобрался. Вопрос не в этом.
Я разбирался почему на сервер приходит мультикаста в два раза больше чем уходит юникаста на клиентов.

Непонятно почему фря продолжает слать igmp reportы после того как канал смотреть перестали.
msd_lite попробую, может действительно поможет.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

1 минуту назад, orca сказал:

Я разбирался почему на сервер приходит мультикаста в два раза больше чем уходит юникаста на клиентов.

А у вас коммутатор перед фрёй вообще умеет igmp snooping?

Оно там как сейчас в нём настроено?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

8 минут назад, Ivan_83 сказал:

А у вас коммутатор перед фрёй вообще умеет igmp snooping?

Оно там как сейчас в нём настроено?

Да snooping умеет, если в ipfw на сервере режу igmp, мультикаст пропадает.
В tcpdump вижу igmp reportы.
Утилита ifmcstat показывает кучу групп. В описании утилиты написано: "The ifmcstat command dumps multicast group information from the kernel."
Как убрать эти группы из ядра и почему они сами не убираются, неясно.

Изменено пользователем orca

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

В 27.12.2019 в 15:50, z18 сказал:

Спасибо помогло. Еще добавил это:
https://reviews.freebsd.org/D22848

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

В смысле?

Это уже пол года как должно быть в 12.1 стабле - достаточно обновится.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 смайлов.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.