一、 流表轨迹入门
在数据中心网络中,SDN控制器通过向OVS交换机下发OpenFlow流表,指导报文转发。在OVS中,如何观察某个特定报文在OpenFlow流表pipeline中的处理流程?如何快速定位因流表问题导致的流量不通?
Open vSwitch (OVS)是一种可编程的软件交换机,可以在每个报文级别执行操作。本文档介绍如何使用跟踪工具了解数据包在通过数据平面时发生了哪些处理,及报文在pipeline中的处理流程,及快速定位因流表问题导致的流量问题。
OpenFlow规范中定义了流水线式的处理流程,报文匹配处理流程如下图所示:
ovs-vswitchd(8)手册页描述了ofproto/trace命令,在Open vSwitch中跟踪的基本用法。
http://www.openvswitch.org//support/dist-docs/ovs-vswitchd.8.pdf
二、 典型场景举例
ARP
ovs-appctl ofproto/trace br-int in_port=4,dl_src=fa:16:3e:a5:60:2a,dl_dst=ff:ff:ff:ff:ff:ff,arp,arp_spa=192.168.184.7,arp_tpa=192.168.184.1,arp_op=1,arp_sha=fa:16:3e:a5:60:2a,arp_tha=00:00:00:00:00:00 -generate
DHCP
ovs-appct