Ask is moving to Stack Overflow and! Please use the "opendaylight" tag on either of these sites. This site is now in Read-Only mode



asked 2016-04-23 09:19:38 -0700

azhark gravatar image


When we program a flow using restconf, where this flow is actually stored? In Switch data-store or in Controller data-store? Is it like TCAM in traditional vendor switches?

Are there different types of data-stores e.g. operational etc.


edit retag flag offensive close merge delete

1 answer

Sort by ยป oldest newest most voted

answered 2016-04-24 13:17:26 -0700

There are two ways of programming the flows:

  • Modify the config data-store using restconf (flow will be visible in config and operational data store)

  • Invoke rpcs using restconf (In this way you will not see the flow in config data store, flow will be visible only in operational data store)

In both the ways the Openflowplugin module receives the notification/ invocation for change. Then OpenflowPlugin uses the FLOW, TABLE-ID, SWITCH-ID to program the flow using the openflowProtocol (using OpenFlowJava module).

Now, Switch receives the openflow instruction for flow addition and it adds the flow in specified table.

On the successful flow addition the flow is stored in the operational data store.

For the switch disconnection event you can find the details here:

edit flag offensive delete publish link more


Thanks for your answer. So data-store of controller is modified when we push a flow using let's say Restconf. And controller has both operational as well as config datastores. Whereas Switch only has Operational datastore. Is that correct?

azhark ( 2016-04-25 06:06:13 -0700 )edit

@azhark, the operational and config data store is concepts of netconf. Switch need not to follow the netconf protocol.

subhash ( 2016-04-25 08:24:28 -0700 )edit
Login/Signup to Answer

Question Tools

1 follower


Asked: 2016-04-23 09:19:38 -0700

Seen: 395 times

Last updated: Apr 24 '16