[OVSDB-226] Termination Point (Gre Interface) not getting removed from the switch. Created: 18/Nov/15  Updated: 30/Oct/17  Resolved: 19/Apr/16

Status: Resolved
Project: ovsdb
Component/s: Southbound.Open_vSwitch
Affects Version/s: unspecified
Fix Version/s: None

Type: Bug
Reporter: Bhalaji Narayanan Assignee: Vishal Thapar
Resolution: Done Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: Linux
Platform: All


Attachments: Text File karaf.log.tpcreate.txt     Text File karaf.log.tpdelete.txt     File tp-create.pcapng     File tp-delete.pcapng    
External issue ID: 4644

 Description   

Unable to delete Termination point from the Switch. The Entry is getting removed from the Ovsdb Configuration Database.
Please see below for detailed steps...
Also, look for the below attachments:
1. ODL logs (trace mode) – Look in karaf.log.tpdelete.txt timestamp between: 2015-11-16 01:28:48 & 2015-11-16 01:29:02
2. In the tp-delete.pcapng, look at frames 41 & 43.

Detailed steps to reproduce this issue:
---------------------------------------
STEP 1: After connecting the Ovs, before creating the TP.

GET:
http://192.168.56.104:8181/restconf/operational/network-topology:network-topology/

"network-topology": {
"topology": [
{
"topology-id": "ovsdb:1",
"node": [
{
"node-id": "ovsdb://uuid/72391c99-db7f-40b6-a65a-56de332791b5/bridge/s1",
"termination-point": [

{ "tp-id": "s1", "ovsdb:port-uuid": "9296d57a-345b-4b59-ab40-8f5af1897117", "ovsdb:ofport": 65534, "ovsdb:interface-type": "ovsdb:interface-type-internal", "ovsdb:interface-uuid": "f3b5a2b3-fc2d-48e4-852d-2135bf5b7d09", "ovsdb:name": "s1" }

,

{ "tp-id": "s1-eth1", "ovsdb:port-uuid": "8cdd8fa7-da99-4fe6-a18b-01678bffbe11", "ovsdb:ofport": 1, "ovsdb:interface-uuid": "2ae1f628-501e-4bd1-b6e0-75cde1ea0a15", "ovsdb:name": "s1-eth1" }

],
"ovsdb:controller-entry": [

{ "target": "ptcp:6634", "is-connected": false, "controller-uuid": "dc7797df-d4c6-4b36-badb-4ddc0c5394bd" }

,

{ "target": "tcp:192.168.56.104:6653", "is-connected": true, "controller-uuid": "8c43c7a5-efec-4deb-90d8-567d0721935c" }

],
"ovsdb:bridge-name": "s1",
"ovsdb:datapath-type": "ovsdb:datapath-type-system",
"ovsdb:datapath-id": "00:00:00:00:00:00:00:01",
"ovsdb:managed-by": "/network-topology:network-topology/network-topology:topology[network-topology:topology-id='ovsdb:1']/network-topology:node[network-topology:node-id='ovsdb://uuid/72391c99-db7f-40b6-a65a-56de332791b5']",
"ovsdb:bridge-openflow-node-ref": "/network-topology:network-topology/network-topology:topology[network-topology:topology-id='ovsdb:1']/network-topology:node[network-topology:node-id='ovsdb://uuid/72391c99-db7f-40b6-a65a-56de332791b5']",
"ovsdb:fail-mode": "ovsdb:ovsdb-fail-mode-secure",
"ovsdb:protocol-entry": [

{ "protocol": "ovsdb:ovsdb-bridge-protocol-openflow-13" }

],
"ovsdb:bridge-uuid": "d797bdde-9f78-4bf1-9ed5-1c6c281230ad",
"ovsdb:bridge-other-configs": [

{ "bridge-other-config-key": "datapath-id", "bridge-other-config-value": "0000000000000001" }

]
},
{
"node-id": "ovsdb://uuid/72391c99-db7f-40b6-a65a-56de332791b5",
"ovsdb:managed-node-entry": [

{ "bridge-ref": "/network-topology:network-topology/network-topology:topology[network-topology:topology-id='ovsdb:1']/network-topology:node[network-topology:node-id='ovsdb://uuid/72391c99-db7f-40b6-a65a-56de332791b5/bridge/s1']" }

],
"ovsdb:ovs-version": "2.3.1",
"ovsdb:openvswitch-external-ids": [

{ "external-id-key": "system-id", "external-id-value": "c0e3b61f-a6d6-497f-a0b5-2c64dd058d5f" }

],
"ovsdb:connection-info":

{ "local-port": 6640, "local-ip": "192.168.56.104", "remote-ip": "192.168.56.104", "remote-port": 52475 }

}
]
},

---------------------------------------------------------------
On the switch before TP creation.

mininet> sh ovs-vsctl show
72391c99-db7f-40b6-a65a-56de332791b5
Manager "tcp:192.168.56.104:6640"
is_connected: true
Bridge "s1"
Controller "tcp:192.168.56.104:6653"
is_connected: true
Controller "ptcp:6634"
fail_mode: secure
Port "s1-eth1"
Interface "s1-eth1"
Port "s1"
Interface "s1"
type: internal
ovs_version: "2.3.1"
mininet>
-----------------------------------------------------------------

STEP 2: Creating the TP:
POST:
http://192.168.56.104:8181/restconf/config/network-topology:network-topology/topology/ovsdb%3A1/node/ovsdb%3A%2F%2Fuuid%2F72391c99-db7f-40b6-a65a-56de332791b5%2Fbridge%2Fs1/

{
"termination-point": [
{
"tp-id": "dp1.4-interface-2",
"ovsdb:interface-type": "ovsdb:interface-type-gre",
"ovsdb:options": [

{ "option": "key", "value": "flow" }

,

{ "option": "local_ip", "value": "10.1.1.2" }

,

{ "option": "remote_ip", "value": "10.1.1.4" }

],
"ovsdb:name": "dp1.4-interface-2"
}
]
}
----------------
On The Switch:

mininet> sh ovs-vsctl show
72391c99-db7f-40b6-a65a-56de332791b5
Manager "tcp:192.168.56.104:6640"
is_connected: true
Bridge "s1"
Controller "tcp:192.168.56.104:6653"
is_connected: true
Controller "ptcp:6634"
fail_mode: secure
Port "dp1.4-interface-2"
Interface "dp1.4-interface-2"
type: gre
options:

{key=flow, local_ip="10.1.1.2", remote_ip="10.1.1.4"}
Port "s1-eth1"
Interface "s1-eth1"
Port "s1"
Interface "s1"
type: internal
ovs_version: "2.3.1"
mininet>

-------------------------------
GET: (Topology Config DS)
http://192.168.56.104:8181/restconf/config/network-topology:network-topology/

{
"network-topology": {
"topology": [
{
"topology-id": "ovsdb:1",
"node": [
{
"node-id": "ovsdb://uuid/72391c99-db7f-40b6-a65a-56de332791b5/bridge/s1",
"termination-point": [
{
"tp-id": "dp1.4-interface-2",
"ovsdb:options": [
{ "option": "key", "value": "flow" },
{ "option": "remote_ip", "value": "10.1.1.4" },
{ "option": "local_ip", "value": "10.1.1.2" }
],
"ovsdb:interface-type": "ovsdb:interface-type-gre",
"ovsdb:name": "dp1.4-interface-2"
}
]
}
]
}
]
}
}


GET:
http://192.168.56.104:8181/restconf/config/network-topology:network-topology/topology/ovsdb%3A1/node/ovsdb%3A%2F%2Fuuid%2F72391c99-db7f-40b6-a65a-56de332791b5%2Fbridge%2Fs1/termination-point/dp1.4-interface-2/
{
"termination-point": [
{
"tp-id": "dp1.4-interface-2",
"ovsdb:options": [
{ "option": "key", "value": "flow" },
{ "option": "remote_ip", "value": "10.1.1.4" },
{ "option": "local_ip", "value": "10.1.1.2" }
],
"ovsdb:interface-type": "ovsdb:interface-type-gre",
"ovsdb:name": "dp1.4-interface-2"
}
]
}

STEP 3: Delete the TP.
DELETE:
http://192.168.56.104:8181/restconf/config/network-topology:network-topology/topology/ovsdb%3A1/node/ovsdb%3A%2F%2Fuuid%2F72391c99-db7f-40b6-a65a-56de332791b5%2Fbridge%2Fs1/termination-point/dp1.4-interface-2/


GET:
http://192.168.56.104:8181/restconf/config/network-topology:network-topology/topology/ovsdb%3A1/node/ovsdb%3A%2F%2Fuuid%2F72391c99-db7f-40b6-a65a-56de332791b5%2Fbridge%2Fs1/termination-point/dp1.4-interface-2/

{
"errors": {
"error": [
{ "error-type": "application", "error-tag": "data-missing", "error-message": "Request could not be completed because the relevant data model content does not exist " }
]
}
}


On the switch:
mininet> sh ovs-vsctl show
72391c99-db7f-40b6-a65a-56de332791b5
Manager "tcp:192.168.56.104:6640"
is_connected: true
Bridge "s1"
Controller "tcp:192.168.56.104:6653"
is_connected: true
Controller "ptcp:6634"
fail_mode: secure
Port "dp1.4-interface-2"
Interface "dp1.4-interface-2"
type: gre
options: {key=flow, local_ip="10.1.1.2", remote_ip="10.1.1.4"}

Port "s1-eth1"
Interface "s1-eth1"
Port "s1"
Interface "s1"
type: internal
ovs_version: "2.3.1"
mininet>

------------------------------------------



 Comments   
Comment by Bhalaji Narayanan [ 18/Nov/15 ]

Attachment karaf.log.tpdelete.txt has been added with description: karaf log when tp was deleted – Check timestamp 1:28:45 till end of file

Comment by Bhalaji Narayanan [ 18/Nov/15 ]

Attachment karaf.log.tpcreate.txt has been added with description: karaf log with tp was created... look at timestamp 1:26:45 till end of file

Comment by Bhalaji Narayanan [ 18/Nov/15 ]

Attachment tp-create.pcapng has been added with description: Wireshark Capture – when tp was created

Comment by Bhalaji Narayanan [ 18/Nov/15 ]

Attachment tp-delete.pcapng has been added with description: wireshark capture when tp was deleted.

Comment by Bhalaji Narayanan [ 18/Nov/15 ]

ODL release: Be Latest.
OVS version used: 2.3.1

Comment by Vishal Thapar [ 18/Jan/16 ]

Fix in stable/beryllium: https://git.opendaylight.org/gerrit/#/c/32926/

Comment by Vishal Thapar [ 04/Mar/16 ]

workaround added to vpnservice code for now. Proper fix will be taken up later.

Comment by Vishal Thapar [ 19/Apr/16 ]

Fixed by: https://git.opendaylight.org/gerrit/#/c/37646/

Generated at Wed Feb 07 20:35:50 UTC 2024 using Jira 8.20.10#820010-sha1:ace47f9899e9ee25d7157d59aa17ab06aee30d3d.