Open vSwitch相关字段详解之L3:IPv4&IPv6

字段概览

备注:由于历史原因,某些字段会有多个名字,如下表,/后面表示该字段的其他名字

字段名长度格式Masking前置项访问权限OpenFlow 1.0OpenFlow 1.1NXM/OXM Support描述
ip_src/nw_src32位IPv4地址按任意位掩码IPv4读/写CIDR match onlyyesOF 1.2+ and OVS 1.1+源IPv4地址
ip_dst/nw_dst32位IPv4地址按任意位掩码IPv4读/写CIDR match onlyyesOF 1.2+ and OVS 1.1+目的IPv4地址
ipv6_src128位IPv6地址按任意位掩码(OVS 1.8+)IPv6读/写不支持不支持OF 1.2+ and OVS 1.1+源IPv6地址
ipv6_dst128位IPv6地址按任意位掩码(OVS 1.8+)IPv6读/写不支持不支持OF 1.2+ and OVS 1.1+目的IPv6地址
ipv6_label32位十六进制按任意位掩码IPv6读/写不支持不支持OF 1.2+ and OVS 1.4+
nw_proto/ip_proto8位十进制不支持IPv4/IPv6只读exact match onlyexact match onlyOF 1.2+ and OVS 1.1+上层协议的类型
nw_ttl8位十进制不支持IPv4/IPv6读/写不支持不支持OVS 1.4+数据包的TTL
ip_frag/nw_frag8位按任意位掩码IPv4/IPv6只读不支持不支持OVS 1.3+和IP分片相关
nw_tos8位十进制不支持IPv4/IPv6读/写exact match onlyexact match onlyOVS 1.1+
ip_dscp8位十进制不支持Pv4/IPv6读/写exact match onlyexact match onlyOF 1.2+ and OVS 1.7+
nw_ecn/ip_ecn8位十进制不支持Pv4/IPv6读/写exact match onlyexact match onlyOF 1.2+ and OVS 1.4+

字段详解

Pv4相关字段仅在Ethertype(即dl_type或eth_type)为0x0800时才有效,IPv6相关字段仅在Ethertype为0x86dd时才有效。

ip_src/nw_src、ip_dst/nw_dst

这两个字段的值分别从以下报文头IPv4部分的src、dst获取:
在这里插入图片描述
由于历史原因,在ARP和RARP流中,OVS该字段实际匹配的是ARP TPA。

ipv6_src、ipv6_dst

这两个字段的值分别从以下报文头IPv6部分的src、dst获取:
在这里插入图片描述
OVS 1.8增加了按任意位掩码的支持,在此之前只支持CIDR掩码。

nw_proto/ip_proto

表示上层协议类型,常用类型如下:

nw_proto/ip_proto上层协议
6TCP
17UDP
132SCTP

由于历史原因,在ARP和RARP流中,OVS该字段实际匹配的是ARP code。

nw_ttl

OVS设置这个字段的目的是为了检测dec_ttl操作会不会因为TTL超时而失败。

ip_frag/nw_frag

指明匹配哪种分片(fragment)类型的数据包,该字段只用到最后两位,其他位固定为0,如下:
在这里插入图片描述
只用到3个值:

  • 0x00:不分片
  • 0x01:分片,并且offset为0,即第一个分片
  • 0x03:分片,且offset不为0

该字段配合不同分片模式,会有以下几种场景:

  • OFPC_FRAG_DROP模式:OpenFlow交换机会在IP分片的数据包到达流表前就把它们丢弃掉,所以进入流表的数据包该字段的值只会是0
  • OFPC_FRAG_REASM模式:IP分片的包会在进入流表前被重新组装起来,因此该字段的值也会是0。(OVS没有实现该模式)
  • OFPC_FRAG_NORMAL模式:三个值都可能出现,但在OpenFlow 1.0中,分片数据包的传输层端口固定为0
  • FPC_FRAG_NX_MATCH模式:三个值都可能出现,对于分片的第一个数据包,OVS会提供L4的头信息
    因为,当OVS配置成OFPC_FRAG_NX_MATCH模式时,这个字段会很有用。

另外为了方便,该字段的值常常使用如下表示:

  • no:只匹配不分片的数据包
  • yes:匹配所有分片的数据包
  • first:仅匹配分片数据包的第一个分片
  • later:仅匹配除第一个分片以后的分片
  • not_later:匹配不分片数据包和分片数据包的第一个分片

nw_tos

tos:type of service。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值