Метаданные в правиле openflow

Этот вопрос является продолжением следующего

Метаданные правила OpenFlow

Я хотел бы уточнить это по моему вопросу о метаданных. Скажем, у меня есть правила Open Flow, как показано ниже.

Cookie=0x8000001, duration=228925.445s, table=17, n_packets=350, n_bytes=32424, priority=10,metadata=0xc000f30000000000/0xffffff0000000000 actions=goto_table:19

Я хотел понять следующее

Есть ли у нас определенное правило/алгоритм для определения этих метаданных из пакета.

потому что пакет в OVS фактически переключается на основе соответствующих метаданных, это правильно ?? (По крайней мере, в соответствии с приведенным выше правилом потока)

  • И сам пакет не несет метаданных, тогда как именно пакет, попадающий в поток, сопоставляется с метаданными.

    Итак, если я правильно понял, пакеты, которые проходят между таблицами потоков, находятся в самом приложении OVS или обрабатываются на уровне приложения @OVS, пока не будет определен выходной порт. Итак, в этом случае метаданные обрабатываются @OVS-приложение уровень, пока пакеты не будут отправлены через выходной порт.

Это правильно??

Наконец, какой модуль в ODL отвечает за определение метаданных, и я хотел бы понять из кода, как именно это было сделано.


person Duraivelanc Chockalingam    schedule 18.12.2018    source источник


Ответы (2)


Поле метаданных OpenFlow начинается со значения нуля для каждого пакета. Затем таблицы могут записывать в это поле, и вы можете сопоставлять его в последующих таблицах. Он используется только для переноса информации из одной таблицы в другую, как описано в спецификациях OpenFlow:

Метаданные: маскируемый регистр, который используется для переноса информации из одной таблицы в другую.

person pchaigno    schedule 20.12.2018

прежде всего, вы можете попробовать вместо него Ryu, его код легче читать и понимать. Затем, я думаю, что метаданные/инструкции/действия... эти вещи относятся к обработке переадресации OVS, но эти вещи должны быть прикреплены к чему-то, и это пакет, который получил OVS. О вопросе Есть ли у нас определенное правило/алгоритм для определения этих метаданных из пакета. Я думаю, что значение метаданных определяется контроллером, а это означает, что оно зависит от того, «как вы проектируете свой собственный экземпляр сети, используя какое-либо (например, RYU) приложение контроллера».

person Ming    schedule 04.08.2021