Я пытаюсь использовать tc
из iproute2
чтобы расставить приоритеты в пакетах, отправляемых в canbus.
Прежде чем сделать это, я прочитал это руководство по проблеме: http://rtime.felk.cvut.cz/can/socketcan-qdisc-final.pdf
Даже используя точные примеры из этого PDF-файла, я не могу получить ни один из фильтров, чтобы получить соответствие. Моя текущая версия ядра и tc
позволяет мне использовать опцию u32 match.
Пробовал (как с большим, так и с прямым порядком байтов):
tc filter add dev can0 parent 1:0 prio 1 u32 match u32 0x01000000 0xffffffff at 0 flowid 1:1
а также:
tc filter add dev can0 parent 1:0 prio 1 u32 match u8 0x01 0xff at 4 flowid 1:1
Отправка пакетов для соответствия этим фильтрам не приводит к совпадению. Я немного запутался, почему точные примеры из руководства не работают.
Любые намеки или опыт по этому вопросу будет принята с благодарностью.