本文章收录在我的博客 : http://www.sskywatcher.com/blog/archives/sdn/如何追踪openvswitch的流表匹配情况/
SDN环境中,每一个openvswitch的datapath实例中都会有大量的流表项,无论是使用各种关键字的grep手段或者是其他方法来确认是否由控制器下发了预期正确流表项,还是看关于特定数据包的匹配与最终action都是一件非常繁琐和头疼的事情。使用ovs-appctl工具结合linux自带的tcpdump抓包工具就可以很轻松直观的最终流表匹配情况,来完成自己繁琐的查找工作,还能避免自己的判断的错误。
主要步骤如下:
1、确认你需要跟踪的数据包的各项参数;
2、将其转化成openflow的match域的描述;
3、使用openvswitch提供的ofproto/trace功能跟踪流表匹配情况;