Стек Linux SCTP, развернутый с другим стеком не ОС, на той же машине - PullRequest
1 голос
/ 29 апреля 2011

Я использую Linux SCTP Stack. В настоящее время на той же машине Linux мне нужно развернуть процесс, который использует не ОС SCTP STACK. (то есть он открывает сокет RAW, а затем самостоятельно обрабатывает сообщение транспортного уровня). Когда приходит SCTP Init, Linux передает пакет обоим процессам. Можно ли этого избежать? Я не хочу, чтобы Linux SCTP обрабатывал сообщения, которые не используются им. (используется другим стеком не-ОС SCTP) Возможно ли это?

Ответы [ 2 ]

2 голосов
/ 29 июля 2011

В более общем случае при возникновении такой проблемы существует три варианта:

1) Остановить загрузку модуля Linux SCTP во время загрузки (Примечание: его нельзя выгрузить во время выполнения) и простореализация вне ОС.2) Некоторые, как предварительно настроить каждую реализацию SCTP, чтобы знать, какие ассоциации она имеет, и игнорировать сообщения для других.3) Перенесите не-ОС-систему для использования реализации Linux.

Любая активно поддерживаемая система Linux, использующая SCTP, будет иметь проблемы, если не предложит третий вариант.

Примечание: Если вы используете реализацию SCTP Dialogic, не являющуюся ОС, в Linux, то вы можете легко переключиться на использование версии SCTPN, включенной в ОС.

1 голос
/ 25 мая 2012

Возможно, это не вариант, но использование процесса не-lksctp, использующего UDP-туннелирование SCTP, очень хорошо работает для нас.Используемый (коммерческий) стек настраивается для SCTP через UDP или SCTP через IP (с необработанными сокетами, как вы).

...