Jump to content
Калькуляторы

RSS и порядок пакетов

Здравствуйте.

 

Может ли использование RSS (в данном случае имеется ввиду реализация RSS в драйверах igb, ixgbe в Linux) нарушать порядок прохождения пакетов/датаграмм, если да то в каких случаях?

 

Информация по этому вопросу весьма скудная.

Edited by avb1987

Share this post


Link to post
Share on other sites

Здравствуйте.

 

Может ли использование RSS (в данном случае имеется ввиду реализация RSS в драйверах igb, ixgbe в Linux) нарушать порядок прохождения пакетов/датаграмм, если да то в каких случаях?

 

Информация по этому вопросу весьма скудная.

FreeBSD, карточка i350 (igb), 8 прерываний на 8 ядер. UDP прибегает в разном порядке.

Думал что в Linux с этим порядок ((((

Share this post


Link to post
Share on other sites

Мы в настоящее время не используем RSS, так что не уверен что в Linux есть такая проблема. Вопрос пока что чисто теоретический. Я встречал упоминания что вроде как из за фрагментации пакетов некоторые адаптеры чтобы избежать некорректного порядка используют для хеша только IP-заголовок, а поддержка TCP и UDP-заголовков - опциональна. Но к сожалению не удалось найти внятных объяснений как это работает в случае Linux с указанными драйверами.

Edited by avb1987

Share this post


Link to post
Share on other sites

FreeBSD, карточка i350 (igb), 8 прерываний на 8 ядер. UDP прибегает в разном порядке.

А может у вас LACP на коммутаторе раундробином кидает?

Share this post


Link to post
Share on other sites

А зачем вам поддержка TCP/UDP заголовка? source/dest IP - в IP заголовке же и идут... Т.е. хеш - по IP.

 

Мне она ни к чему, собственно вопрос возник из за того что увидел в README к драйверу ixgbe следующее:

 

Support for UDP RSS

-------------------

This feature adds an ON/OFF switch for hashing over certain flow types. Only

UDP can be turned on. The default setting is disabled. Only support for

enabling/disabling hashing on ports for UDP over IPv4 (UDP4) or IPv6 (UDP6) is

supported.

 

NOTE: Fragmented packets may arrive out of order when RSS UDP support is

configured.

 

 

Стало интересно - а если не включать это, то как происходит распределение по очередям и не приводит ли оно к out of order.

 

Т.е. получается что по-умолчанию RSS всегда распределяет только по IP-заголовку, и пакеты с одной парой отправитель/получатель всегда будут попадать в одну и ту же очередь?

Edited by avb1987

Share this post


Link to post
Share on other sites

FreeBSD, карточка i350 (igb), 8 прерываний на 8 ядер. UDP прибегает в разном порядке.

А может у вас LACP на коммутаторе раундробином кидает?

Если бы...

 

Т.е. получается что по-умолчанию RSS всегда распределяет только по IP-заголовку, и пакеты с одной парой отправитель/получатель всегда будут попадать в одну и ту же очередь?

Буквально на прошлой неделе тестировал Linux 3.18, хеш работал на основе IP src, IP dst, PORT src, PORT dst.

Share this post


Link to post
Share on other sites

Стало интересно - а если не включать это, то как происходит распределение по очередям и не приводит ли оно к out of order. Т.е. получается что по-умолчанию RSS всегда распределяет только по IP-заголовку, и пакеты с одной парой отправитель/получатель всегда будут попадать в одну и ту же очередь?

Там же написано: если включить распределение по юдп портам то фрагментированные пакеты могут уходить в разные очереди. Потому что в первом фрагменте есть юдп порт а в остальных уже нет.

 

В остальном собирай стенд и тестируй: запускаешь одиночные пакеты и смотришь где прирастает, при этом это всё в какомнить изолированном сегменте чтобы броадкасты и прочее не отвлекало.

Share this post


Link to post
Share on other sites

Где-то читал , что в драйвере для 82599 так и не работает RSS для Q-in-Q? Так и не допили они?

Share this post


Link to post
Share on other sites

Где-то читал , что в драйвере для 82599 так и не работает RSS для Q-in-Q? Так и не допили они?

RSS работает не в драйвере, а в железе. Не было и не будет.

http://forum.nag.ru/forum/index.php?showtopic=98946&view=findpost&p=1041068

Share this post


Link to post
Share on other sites

Да, моя ошибка, посыпаю голову пеплом. В даташите про qinq в отношении rss ничего не сказано, собрал лабу, проверил, RSS считается для фреймов с двумя влан тегами.

Share this post


Link to post
Share on other sites

Join the conversation

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

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.