faq обучение настройка
Текущее время: Вт июл 22, 2025 21:48

Часовой пояс: UTC + 3 часа




Начать новую тему Эта тема закрыта, Вы не можете редактировать и оставлять сообщения в ней.  [ Сообщений: 12 ] 
Автор Сообщение
 Заголовок сообщения: dgs3620 qinq bug
СообщениеДобавлено: Ср янв 14, 2015 12:38 
Не в сети

Зарегистрирован: Пт янв 21, 2005 14:55
Сообщений: 87
Откуда: Moscow
Обнаружился такой вот неприятный баг:

свитч dgs-3620-28tc/sc

enable qinq
config qinq ports 26 role uni outer_tpid 0x8100
config qinq ports 27 role uni outer_tpid 0x8100
config qinq ports 28 role nni outer_tpid 0x8100
create vlan 100 tag 100
config vlan 100 add tag 26-28
create vlan_translation ports 26-27 replace outer_vid 100 svid 100

теперь смотрим на egress пакеты на порту 26, результат отличается, в зависимости от того откуда пакет попал на свитч:
1) пакет с один тагом 100, маршрут порт 27 -> порт 26, выходит с одним тагом 100 - OK
2) пакет с один тагом 100, маршрут порт 28 -> порт 26, выходит с одним тагом 100 - OK
3) пакет с двумя тагами (внешний 100, внутренний, ну скажем, 50), маршрут порт 27 -> порт 26, выходит с двумя тагами 100/50 - OK
4) пакет с двумя тагами 100/50, маршрут порт 28 -> порт 26, выходит с одним тагом 50 - FAIL

в случае ingress пакетов - все ок, вне зависимости от маршрута.
т.е. имеем ассиметричное поведение для пакетов с более чем один тагом, если пакет проходит через UNI <-> NNI (в остальных случаях
UNI <-> UNI и NNI <-> NNI - все ок)

проверялось на прошивках: 2.63.B004 и 2.60.B017
P.S. Очень хотелось бы, чтобы это починили. Спасибо.


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: dgs3620 qinq bug
СообщениеДобавлено: Чт янв 15, 2015 11:25 
Не в сети
Сотрудник D-LINK
Сотрудник D-LINK

Зарегистрирован: Ср апр 23, 2014 12:45
Сообщений: 1017
В чем конкретно состоит ваша задача?
Логика QinQ: при прохождении пакета между портами UNI <-> NNI - добавляется второй тег, NNI <-> UNI - снимается второй тег.


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: dgs3620 qinq bug
СообщениеДобавлено: Чт янв 15, 2015 12:28 
Не в сети

Зарегистрирован: Пт янв 21, 2005 14:55
Сообщений: 87
Откуда: Moscow
Alexander Gavrilin писал(а):
Логика QinQ: при прохождении пакета между портами UNI <-> NNI - добавляется второй тег, NNI <-> UNI - снимается второй тег.

Спасибо, про логику qinq я в курсе.

Alexander Gavrilin писал(а):
В чем конкретно состоит ваша задача?

Принять на uni порт чужой qinq трафик. Если еще более конкретно - добиться исправления ошибки в работе selective qinq свитча dgs3620 - это позволит мне снять дурацкий qinq loop на этом же свитче и потратить на этот межоператорский стык 1 порт, вместо 3х.


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: dgs3620 qinq bug
СообщениеДобавлено: Чт янв 15, 2015 12:49 
Не в сети
Сотрудник D-LINK
Сотрудник D-LINK

Зарегистрирован: Чт фев 12, 2009 14:59
Сообщений: 9482
Откуда: Ryazan
Выслал Вам на почту специальную прошивку для решения такой задачи.
Пожалуйста, попробуйте и сообщите по результатам.


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: dgs3620 qinq bug
СообщениеДобавлено: Чт янв 15, 2015 14:41 
Не в сети

Зарегистрирован: Чт сен 08, 2011 04:59
Сообщений: 1634
Откуда: Алтайский край, Барнаул
А для 3120 такой не появилось?


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: dgs3620 qinq bug
СообщениеДобавлено: Чт янв 15, 2015 15:09 
Не в сети
Сотрудник D-LINK
Сотрудник D-LINK

Зарегистрирован: Чт фев 12, 2009 14:59
Сообщений: 9482
Откуда: Ryazan
На 3120 такой проблемы и не должно быть.


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: dgs3620 qinq bug
СообщениеДобавлено: Чт янв 15, 2015 15:50 
Не в сети

Зарегистрирован: Пт янв 21, 2005 14:55
Сообщений: 87
Откуда: Moscow
Да, магическая команда:
config qinq ignore_strip_outer_tag state enable
решает описанную проблему. Спасибо.

Но есть еще вопросы:
1) Попадет ли эта команда в основную ветку прошивок? Когда?
2) Зачем вообще нужен режим ignore_strip_outer_tag state disable? Как по мне - это очевидный баг.
3) Есть ли прошивка/команда, позволяющая принимать на uni порт qinq трафик с внешним tpid'ом 0x88A8? ("config qinq inner_tpid - не предлагать - он system wide. По хорошему, для этих целей логично было бы использовать outer_tpid на uni порту (на данный момент он никак не влияет на uni порт)) .


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: dgs3620 qinq bug
СообщениеДобавлено: Чт янв 15, 2015 16:29 
Не в сети
Сотрудник D-LINK
Сотрудник D-LINK

Зарегистрирован: Чт фев 12, 2009 14:59
Сообщений: 9482
Откуда: Ryazan
1) Не планируется. Для этого и есть специальная прошивка, полностью рабочая.
2) Это не баг, а дизайн серий DGS-3420/3620 по умолчанию. Для использования схем, подобных Вашей и сделали специальную прошивку.
3) Нет это не планируется, так как иначе будет путаница с TPID внутреннего и внешнего тега. В Вашей схеме по сути пакет трижды тегируется, так как на uni приходит double tag пакет, но навешивания третьего тега не происходит из-за Q-in-Q Selective с опцией replace.


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: dgs3620 qinq bug
СообщениеДобавлено: Чт янв 15, 2015 18:18 
Не в сети

Зарегистрирован: Пт янв 21, 2005 14:55
Сообщений: 87
Откуда: Moscow
1) Печально. А какой смысл поддерживать еще одну ветку прошивок, если можно просто добавить команду со _старым дефолтным поведением_? Или эта команда меняет еще что-то, но разработчики надеются, что "на эти грабли никто не наступит"? :)
2) Да, знакомо: "Documented bug is not a bug, it's a feature", ну хоть так :). Я потому и спрашивал, чтобы понять логику такого "дизайна". В чем смысл, когда это может понадобиться?
3) Какая может быть путаница? Надо больше доверять людям. ;) Какая разница сколько тегов у пакета? Свитчу интересен только внешний, все остальное - payload.
Т.е. чтобы принять на uni порт тегированый трафик с нестандартным ethertype'ом, мне надо использовать дополнительный свитч. Единственная разумная причина не сделать inner_tpid per port - это возможные хардварные ограничения.


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: dgs3620 qinq bug
СообщениеДобавлено: Пт янв 16, 2015 07:12 
Не в сети

Зарегистрирован: Чт сен 08, 2011 04:59
Сообщений: 1634
Откуда: Алтайский край, Барнаул
На 3120 также нельзя через replace пропустить чужой qinq трафик


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: dgs3620 qinq bug
СообщениеДобавлено: Пт янв 16, 2015 09:39 
Не в сети
Сотрудник D-LINK
Сотрудник D-LINK

Зарегистрирован: Чт фев 12, 2009 14:59
Сообщений: 9482
Откуда: Ryazan
2 olegb: Изменений в поведении не будет. Есть специальная прошивка, в которой задача решена, поэтому дальнейшее обсуждение считаю бессмысленным.
2 Alexey Mishenko: Для DGS-3120 смены текущего поведения, насколько мне известно, пока не планируется.
P.S. Тему закрываю.


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: dgs3620 qinq bug
СообщениеДобавлено: Пн июн 27, 2016 12:31 
Не в сети
Сотрудник D-LINK
Сотрудник D-LINK

Зарегистрирован: Чт фев 12, 2009 14:59
Сообщений: 9482
Откуда: Ryazan
Для DGS-3120 фикс доступен в прошивках 4.11 для B1 и 3.12 для A1/A2


Вернуться наверх
 Профиль  
 
Показать сообщения за:  Сортировать по:  
Начать новую тему Эта тема закрыта, Вы не можете редактировать и оставлять сообщения в ней.  [ Сообщений: 12 ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 135


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
Создано на основе phpBB® Forum Software © phpBB Group
Русская поддержка phpBB