RHEL Engineering is moving the tracking of its product development work on RHEL 6 through RHEL 9 to Red Hat Jira (issues.redhat.com). If you're a Red Hat customer, please continue to file support cases via the Red Hat customer portal. If you're not, please head to the "RHEL project" in Red Hat Jira and file new tickets here. Individual Bugzilla bugs in the statuses "NEW", "ASSIGNED", and "POST" are being migrated throughout September 2023. Bugs of Red Hat partners with an assigned Engineering Partner Manager (EPM) are migrated in late September as per pre-agreed dates. Bugs against components "kernel", "kernel-rt", and "kpatch" are only migrated if still in "NEW" or "ASSIGNED". If you cannot log in to RH Jira, please consult article #7032570. That failing, please send an e-mail to the RH Jira admins at rh-issues@redhat.com to troubleshoot your issue as a user management inquiry. The email creates a ServiceNow ticket with Red Hat. Individual Bugzilla bugs that are migrated will be moved to status "CLOSED", resolution "MIGRATED", and set with "MigratedToJIRA" in "Keywords". The link to the successor Jira issue will be found under "Links", have a little "two-footprint" icon next to it, and direct you to the "RHEL project" in Red Hat Jira (issue links are of type "https://issues.redhat.com/browse/RHEL-XXXX", where "X" is a digit). This same link will be available in a blue banner at the top of the page informing you that that bug has been migrated.
Bug 1278136 - ovs-ofctl - version negotiation failed
Summary: ovs-ofctl - version negotiation failed
Keywords:
Status: CLOSED NOTABUG
Alias: None
Product: Red Hat Enterprise Linux 7
Classification: Red Hat
Component: openvswitch-dpdk
Version: 7.1
Hardware: Unspecified
OS: Unspecified
medium
medium
Target Milestone: rc
: ---
Assignee: Thadeu Lima de Souza Cascardo
QA Contact: Jean-Tsung Hsiao
URL:
Whiteboard:
Depends On:
Blocks: 1301628
TreeView+ depends on / blocked
 
Reported: 2015-11-04 17:52 UTC by Evgheni Dereveanchin
Modified: 2016-02-01 16:36 UTC (History)
2 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2016-02-01 16:36:43 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)

Description Evgheni Dereveanchin 2015-11-04 17:52:01 UTC
Description of problem:
OVS is used in OpenShift v3 with OpenFlow 1.3, however ovs-vsctl cannot negotiate capabilities for this protocol version. It must be specified explicitly which makes troubleshooting harder. Since supported versions are presented by OVS, the utility should automatically detect the proper protocol and use it. At the moment for some reason it reports supporting just version 1.0 (0x01) during negotiation.

Version-Release number of selected component (if applicable):
openvswitch-2.3.1-2.git20150113.el7.x86_64
kernel-3.10.0-229.20.1.el7.x86_64
openshift-sdn-ovs-3.0.2.0-0.git.20.656dc3e.el7ose.x86_64

How reproducible:
always

Steps to Reproduce:
1. set OpenFlow protocol to 1.3 on bridge br0 (done during boot in OpenShift)
# ovs-vsctl set bridge br0 protocols=OpenFlow13
2. try to dump flows
# ovs-ofctl dump-flows br0

Actual results:
2015-11-04T17:45:56Z|00001|vconn|WARN|unix:/var/run/openvswitch/br0.mgmt: version negotiation failed (we support version 0x01, peer supports version 0x04)
ovs-ofctl: br0: failed to connect to socket (Broken pipe)

Expected results:
OFPST_FLOW reply (OF1.3) (xid=0x2):
 cookie=0x0, duration=1299.155s, table=0, n_packets=0, n_bytes=0, dl_src=01:00:00:00:00:00/01:00:00:00:00:00 actions=drop
 ...

Additional info:
this currently works when specifying the version

# ovs-ofctl dump-flows br0 --protocols=OpenFlow13

Comment 2 Thadeu Lima de Souza Cascardo 2016-02-01 16:36:43 UTC
ovs-ofctl allows you to set many protocols on the command line, like --protocols=OpenFlow10,OpenFlow13.

That will work for bridges that only support OpenFlow13.

The problem with using any version by default is that mod-flow has different semantics depending on the version. So, instead of behaving differently whenever you use ovs-ofctl mod-flow, the tool defaults to OpenFlow10 only.

Why not use an alias like ovs-ofctl13='ovs-ofctl --protocols=OpenFlow13'?

Cascardo.


Note You need to log in before you can comment on or make changes to this bug.