基于 Openflow 的 Switch Action 集

网络工程 思科 ip sdn 开放流
2022-02-24 02:30:29

基于SDN,数据平面的主要功能是根据控制器的指令(以流规则的形式)存储和转发数据包。在阅读OpenFlow Specification v5.1时,我遇到了可以修改数据包标头的Set-field Action set。我的问题是:基于 OpenFlow 的交换机是否可以比仅仅转发修改数据包头(例如更改 IP 地址)更进一步?

谢谢你。

1个回答

是的。

更准确地说,openflow 协议定义了 set-field 动作,但它是否支持这个取决于交换机实现,如果支持,哪些字段可以修改。

例如,此文档提到 Cisco NXOS 交换机上的 openflow 代理支持(以及其他)以下操作:

  • 重写源 MAC 地址 (SMAC) 仅支持 Ethertype 值 0x0800 或 0x86DD (IP)
  • 重写目标 MAC 地址 (DMAC) 仅支持 Ethertype 值 0x0800 或 0x86DD (IP)
  • 仅 Ethertype 值 0x0800 或 0x86DD (IP) 支持重写 VLAN ID
  • 剥离 VLAN(仅支持 Ethertype 值 0x0800 或 0x86DD (IP))

注意 必须同时指定重写 DMAC 和重写 SMAC 操作。