Многоадресная передача + ядро ​​Linux - PullRequest
0 голосов
/ 21 сентября 2009

У меня есть одно сомнение относительно многоадресной рассылки в ядре Linux. Когда поступают многоадресные данные Ядро Linux проверяет MFC, и если соответствующая запись не найдена, ядро ​​выдает сообщение об ошибке кэша контролируемого сообщения и заголовок в пространство пользователя. Мой вопрос, что происходит с данными пакет? Предположим, что я намеренно не хочу сохранять запись внутри MFC, но у меня могут быть некоторые другая таблица, в которой есть информация о пересылке, и я хочу использовать ее, что делать?

С уважением, Bhavin.

Ответы [ 2 ]

0 голосов
/ 10 мая 2013

вы можете проверить это, если связанное ядро ​​скомпилировало поддержку многоадресной рассылки, используя команду ниже

grep -i "multicast" /boot/config-2.6.32-358.6.1.el6.x86_64


/UE
0 голосов
/ 13 февраля 2010

Если приходит пакет данных, для которого нет соответствующей записи MFC, тогда пакет данных помещается в очередь. Он будет оставаться в этой очереди до тех пор, пока не будет добавлена ​​запись MFC, соответствующая этому пакету, или не истечет время ожидания (10 секунд), в зависимости от того, что произойдет раньше. Сама очередь имеет ограничение в 10 записей, и как только этот предел будет достигнут, пакеты больше не будут помещаться в очередь. В этом случае неразрешенные пакеты будут отброшены.

Я не думаю, что Linux поддерживает наличие нескольких таблиц MFC (но я могу ошибаться). В качестве альтернативы вы могли бы направить эти многоадресные пакеты в пользовательском пространстве, используя их в необработанном сокете и затем перенаправляя их на любой интерфейс, который вам нравится. Фактически, многие демоны многоадресной маршрутизации IPv6 использовали такой метод до того, как поддержка многоадресной рассылки IPv6 в Linux стала более зрелой.

...