Метаданные в правиле openflow - PullRequest
0 голосов
/ 18 декабря 2018

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

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

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

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 отвечает за определение метаданных, и я быхотел бы понять из кода, как именно это было сделано.

1 Ответ

0 голосов
/ 20 декабря 2018

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

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

...