Hi Shuva,

 

The FLOW_REM flag been set on the flow(table=46). I see this functionality been 
broken in stable/carbon too(as I see stable table=44 entries in CSIT run).

 

Thanks,

Chetan

 

Ref - 
https://github.com/opendaylight/netvirt/blob/master/vpnservice/natservice/natservice-impl/src/main/java/org/opendaylight/netvirt/natservice/internal/NaptFlowRemovedEventHandler.java

 

cookie=0x81296a0, duration=4.642s, table=46, n_packets=1, n_bytes=74, 
idle_timeout=300, send_flow_rem 
priority=10,tcp,metadata=0x30d40/0xfffffe,nw_src=10.0.0.5,tp_src=47294 
actions=set_field:172.160.0.3->ip_src,set_field:49152->tcp_src,set_field:fa:16:3e:98:1e:f0->eth_src,write_metadata:0x30d48/0xffffff,goto_table:47

 

http://localhost:8181/restconf/operational/opendaylight-inventory:nodes

 

{

                "id": "SNAT.147600957321794.46.100000.10.0.0.5.47294",

                "match": {

                  "tcp-source-port": 47294,

                  "metadata": {

                    "metadata-mask": 16777214,

                    "metadata": 200000

                  },

                  "ip-match": {

                    "ip-protocol": 6

                  },

                  "ipv4-source": "10.0.0.5/32",

                  "ethernet-match": {

                    "ethernet-type": {

                      "type": 2048

                    }

                  }

                },

                "flags": "SEND_FLOW_REM",

                "idle-timeout": 300,

                "hard-timeout": 0,

                "cookie": 135435936,

                "instructions": {

                  "instruction": [

                    {

                      "order": 1,

                      "write-metadata": {

                        "metadata-mask": 16777215,

                        "metadata": 200008

                      }

                    },

                    {

                      "order": 2,

                      "go-to-table": {

                        "table_id": 47

                      }

                    },

                    {

                      "order": 0,

                      "apply-actions": {

                        "action": [

                          {

                            "order": 1,

                            "set-field": {

                              "tcp-source-port": 49152

                            }

                          },

                          {

                           "order": 2,

                            "set-field": {

                              "ethernet-match": {

                                "ethernet-source": {

                                  "address": "fa:16:3e:98:1e:f0"

                                }

                              }

                            }

                          },

                          {

                            "order": 0,

                            "set-field": {

                              "ipv4-source": "172.160.0.3/32"

                            }

                          }

                        ]

                      }

                    }

                  ]

                },

                "cookie_mask": 0,

                "priority": 10,

                "table_id": 46,

                "opendaylight-flow-statistics:flow-statistics": {

                  "duration": {

                    "second": 28,

                    "nanosecond": 351000000

                  },

                  "byte-count": 74,

                  "packet-count": 1

                }

              }

            ]

 

From: Shuva Kar [mailto:[email protected]] 
Sent: 20 April 2017 08:42
To: Chetan A G <[email protected]>
Cc: openflowplugin-dev <[email protected]>; N 
Vivekanandan <[email protected]>; Sharath Kumar V 
<[email protected]>; Karthikeyan Krishnan 
<[email protected]>
Subject: Re: [openflowplugin-dev] : onFlowRemoved() not getting called

 

I guess you turned the FLOW_REM flag on while sending the flow that you are 
deleting.

 

eg : 
https://wiki.opendaylight.org/view/OpenDaylight_OpenFlow_Plugin:End_to_End_Flows

 

 




Br,shuva

 

On Tue, Apr 18, 2017 at 7:24 PM, Chetan A G 
<[email protected] 
<mailto:[email protected]> > wrote:

Hi Shuva,

 

I’m testing this in odl-master(nitrogen) and the version been used is 
0.5.0-SNAPSHOT(https://github.com/opendaylight/openflowplugin/blob/master/pom.xml)

 

I believe it’s the Lithum plugin been used in odl-master.

 

Thanks,

Chetan

 

From: Shuva Kar [mailto:[email protected] 
<mailto:[email protected]> ] 
Sent: 18 April 2017 15:16
To: Chetan A G <[email protected] 
<mailto:[email protected]> >
Cc: openflowplugin-dev <[email protected] 
<mailto:[email protected]> >; N Vivekanandan 
<[email protected] <mailto:[email protected]> >; Sharath 
Kumar V <[email protected] <mailto:[email protected]> >; 
Karthikeyan Krishnan <[email protected] 
<mailto:[email protected]> >
Subject: Re: [openflowplugin-dev] : onFlowRemoved() not getting called

 

I find that you are using the Boron builds. Which plugin model are you using ?




Br,shuva

 

On Tue, Apr 18, 2017 at 12:43 PM, Chetan A G 
<[email protected] 
<mailto:[email protected]> > wrote:

Hi All,

 

I'm observing the onFlowRemoved() is not getting called on Flow removal from 
Switch with latest code on ODL-master. NAT has implemented SalFlowListener and 
does certain clean-up on receiving Flow Removed Notification on specific 
table(on IDLE_TIME_OUT).

 

public class NaptFlowRemovedEventHandler implements SalFlowListener {

 

public void onFlowRemoved(FlowRemoved flowRemoved) {

...

}

 

}

 

As a result of onFlowremoved() not called, certain allocated ports where never 
released(allocated for an SNAT session) and certain flows(table=44) where never 
gets removed from Switch.

 

I see the following flag been set to 
true(ODL-master\netvirt\vpnservice\distribution\karaf\target\assembly\system\org\opendaylight\openflowplugin\openflowplugin-blueprint-config\0.5.0-SNAPSHOT\openflowplugin-blueprint-config-0.5.0-SNAPSHOT-config.cfg)

 

#Flow removed notification is turned on by default. Default value true

enable-flow-removed-notification=true

 

I have opened a bug to track this issue.

 

https://bugs.opendaylight.org/show_bug.cgi?id=8238

 

Request to let us know on this issue.

 

Thanks,

Chetan


_______________________________________________
openflowplugin-dev mailing list
[email protected] 
<mailto:[email protected]> 
https://lists.opendaylight.org/mailman/listinfo/openflowplugin-dev

 

 

Attachment: smime.p7s
Description: S/MIME cryptographic signature

_______________________________________________
openflowplugin-dev mailing list
[email protected]
https://lists.opendaylight.org/mailman/listinfo/openflowplugin-dev

Reply via email to