首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >OpenFlow规则元数据

OpenFlow规则元数据
EN

Stack Overflow用户
提问于 2018-12-13 22:33:53
回答 1查看 267关注 0票数 0

我想了解如何在Open规则中计算元数据。

元数据=0xf30000000000/0xffff0000000000 actions=write_metadata:0xc000f30000000000/0xfffffffffffffffe,goto_table:211

我有一个非常类似于此的流程。元数据是如何计算的。

以及如何导入元数据值和掩码

有人说new_metadata = old_metadata &~掩蔽值& Mask

老实说,我不明白,有人能解释一下吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-12-16 17:20:11

valuemetadata字段在write_metadata动作中的用途用开放的vSwitch文档解释。

代码语言:javascript
复制
write_metadata:value[/mask]
    Updates the metadata field for the flow. If mask is omit‐
    ted, the metadata field is set exactly to value; if  mask
    is  specified,  then  a  1-bit in mask indicates that the
    corresponding bit in the metadata field will be  replaced
    with  the  corresponding  bit  from value. Both value and
    mask are 64-bit values that are decimal by default; use a
    0x prefix to specify them in hexadecimal.

上述解释实际上相当于:

代码语言:javascript
复制
new_metadata = (old_metadata & ~mask) | (value & mask)

换句话说,我们首先删除在掩码(old_metadata & ~mask)中设置为1的旧元数据值的位,然后将在掩码(| (value & mask))中也设置为1的值的位设置为1。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53771023

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档