05-31-2022 02:33 PM
I'm implementing a controller for Openflow switches. We install some default flows upon switch connection - such as "Table 0 GOTO Table 1", "Table 1 GOTO Table 2", and so on. We also install a few flows like "Send ARP packets to the controller" and "Send LLDP packets to the controller". My Cat 9300 accepts the "GOTO table" flows OK, but all the "Send X packets to the controller" flows result in an error: (bad action: unsupported order) . This error is odd because there is only one instruction in the flow requests. These flows are accepted by other Openflow switches, I'm pretty sure the formatting of the request is correct to the Openflow 1.3 standard. Any ideas on what may be going on ?
Thanks,
Joe
06-01-2022 01:14 AM
Can you post the configuration here to understand better,.
06-02-2022 06:37 AM
Switch#sh ver Cisco IOS XE Software, Version 16.12.04 Cisco IOS Software [Gibraltar], Catalyst L3 Switch Software (CAT9K_IOSXE), Version 16.12.4, RELEASE SOFTWARE (fc5) Technical Support: http://www.cisco.com/techsupport Copyright (c) 1986-2020 by Cisco Systems, Inc. Compiled Thu 09-Jul-20 21:49 by mcpre
Switch#sh run openflow feature openflow openflow switch 1 pipeline 1 controller ipv4 10.0.75.99 port 6653 vrf Mgmt-vrf security none datapath-id 0x549 Switch#
I have attached the switch config, a wireshark shot of the flow request ('send ARPs to controller'), and a wireshark shot of the error response from the switch.
Joe
06-03-2022 08:38 AM
Well, a solution of sorts. The flow request above is standard compliant and of common format. But I found that the flow is accepted if the Instruction type is changed from "Write Actions" to "Apply Actions", which is also standard compliant, but an odd selection for this simple use case.
Discover and save your favorite ideas. Come back to expert answers, step-by-step guides, recent topics, and more.
New here? Get started with these tips. How to use Community New member guide