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

Vishal Thapar's profile - activity

2016-10-25 03:10:23 -0700 answered a question Is there a way to create VxLAN or L3 tunnels between two switches in ODL?

Genius project has a service that allows one to create tunnels between switches. You can refer Genius User Guide . Here is a modified version of the json to use. This requires a switch that supports OVSDB and OpenFlow protocols connected to ODL.

   "interfaces": {
   "interface": [
           "name": "VXLAN_TUNNEL:1",                              
           "type": "iana-if-type:tunnel",                        
           "odl-interface:tunnel-interface-type": "odl-interface:tunnel-type-vxlan",    
           "odl-interface:datapath-node-identifier": 156613701272907,
           "odl-interface:tunnel-source": "",           
           "odl-interface:tunnel-destination": "",      
           "odl-interface:monitor-enabled": false,               
           "odl-interface:monitor-interval": 10000,               
           "enabled": true                                       

The key fields here are that are not very obvious are: datapath-node-identifier - this is the dpid of the OVS bridge on which you want to add the tunnel. you will need two such interfaces, one on each bridge. You can ignore/disable the monitoring parameters.

This uses Genius' ITM service to create such interfaces. You can also use OVSDB Plugin to create them yourself. OVSDB Postman collection makes it very easy to use it. Genius internally uses OVSDB plugin to create vxlan interfaces.

2016-09-01 01:16:15 -0700 answered a question REST APIs for Queue configuration using OVSDB plugin

Look at postman collections titled QoS-and-Queue

2016-09-01 01:14:56 -0700 answered a question OVSDB API Reference Documents

This folder has postman collections for OVSDB Rest APIs. Look at all the 'OVSDB Southbound' ones for creating bridges etc.

2016-09-01 01:11:45 -0700 commented question Packstack OpenStack multi node with Beryllium

What are the errors in neutron server logs when you install networking_odl?

2016-06-02 20:35:24 -0700 received badge  Critic (source)
2016-05-11 22:16:53 -0700 answered a question How can we develop an application that add and remove dynamically queues using odl and ovsdb

Answer depends a lot on how familiar you're with using OVSDB Plugin in opendaylight. Support for QoS has been added in OVSDB in Berylium. This patch added postman collections for using OVSDB to configure QoS.

If you're looking for some reference application which is using this plugin, I believe it is not there yet and is a WiP. If you're familiar enough with writing ODL applications and using OVSDB plugin, the ODL OVSDB community should be able to help you write the application.

2016-05-11 22:09:42 -0700 received badge  Associate Editor (source)
2016-05-11 21:42:00 -0700 answered a question How to connect ODL to a passive switch?

Are you using OVS or a non OVS device?

For OVS, you can refer the postman collection. Refer section 'Create OVS Bridge on Hypervisor'

2016-05-05 21:01:23 -0700 answered a question opendaylight with sr-iov

In ml2_drivers, can you try with this: sriovniswitch, opendaylight

This error should go but support for SRIOV in Opendaylight is not there yet.

2016-05-05 20:28:38 -0700 answered a question How to find out if I'm using Beryllium/Helium

Git clone by default always downloads master branch. To switch to beryllium use git checkout stable/beryllium and for helium use git checkout stable/helium

2016-03-21 02:49:44 -0700 answered a question How to call karaf console command in Java code

Why not use the underlying API that karaf shell command uses instead? Take a look at blueprint.xml file. It gets a reference to org.opendaylight.snmp4sdn.ICore and calls its printDB() method and you could do the same from your code.

2016-03-21 02:04:40 -0700 commented answer How to write api without exposing as rest service

This error means you're missing setting up dependencies in your features.xml and/or default-config.xml. Are you using the Cup example as is or have some modifications to it?

2016-01-14 02:13:49 -0700 commented answer Devstack w/OpenDaylight: Cirros DHCP not working

I use following two settings in my devstack, should be self explanatory: `IP_VERSION=4` `NEUTRON_CREATE_INITIAL_NETWORKS=False`

2016-01-12 08:12:05 -0700 commented answer How to use L2switch project's function in my project?

Best would be to get in touch with l2switch developers at

2016-01-12 05:33:16 -0700 answered a question How to use L2switch project's function in my project?

You can only call that if it is being exposed as an API/Service. From the quick look at the code, doesn't look like it will let you use it.

If you edit any file in any ODL project, it will stay local to you till you push it into gerrit and others review approve and merge it.

2016-01-12 03:20:35 -0700 commented question Devstack w/OpenDaylight: Cirros DHCP not working

Your additional output seems to be from a different run/setup, so doesn't help. No sure about PORT_DOWN, I think it is always DOWN for tap ports in a namespace. You mentioned 'no such device' msg in dhcp log, what is the device name giving error?

2016-01-12 03:10:31 -0700 answered a question How to run ODL in Windows?

I believe by restconf you mean API explorer localhost:8181/apidoc/explorer/index.html You need to install odl-mdsal-apidocs feature to get it.

2016-01-08 01:47:55 -0700 answered a question OpenStack + OpenDaylight network bridges

Have you actually spawned any VMs on these nodes or you're just theorizing based on what you currently see? Tunnel ports [vxlan or gre based on your configuration] are created only once VMs are spawned. No need to create tunnels between two computes when they don't have any requirement to send traffic between them.

2016-01-08 01:45:16 -0700 commented question Devstack w/OpenDaylight: Cirros DHCP not working

Take a look at flows and their stat counters to determine which flows are being hit. This will help figure out where the pkts are lost in pipeline.

2016-01-07 03:57:22 -0700 commented answer Managing Pica8 switch using ovsdb

DeInstalling doesn't work well in my experience. I'd recommend doing a clean restart. I'd recommend installing only odl-ovsdb-openstack first. That will bring up all features required for most cases and then you can add any required for Yang UI etc.

2016-01-06 03:48:00 -0700 commented answer [Unresolved] What is the proper syntax for using the "resubmit" (Nicira Extension) action in XML and JSON formats?

You can try one thing to get right XML... once you get it working with JSON take output of opendaylight-inventory's Operational datastore in XML format. It will show you all the current flows in XML format which should help you figure out error in your XML, if any.

2015-12-22 22:53:51 -0700 answered a question Two flows (match: input interface, output: punt to controller) installed on its own, on deleting a flow from opendaylight controller.

This looks like flows added by l2switch and if you don't install l2switch feature these should be gone. Note that uninstalling feature doesn't work well, you will have to do a clean restart and make sure to NOT install l2switch feature.

2015-12-22 00:27:44 -0700 commented question Two flows (match: input interface, output: punt to controller) installed on its own, on deleting a flow from opendaylight controller.

Which version of ODL are you using? What are features installed? How are you adding the flows?

2015-12-03 02:31:05 -0700 answered a question Any help regarding ODL

From your query it looks like you're looking to write an application on top of ODL and I suspect most likely using OpenFlow. I would recommend going through videos for ODL Tutorial that was presented at last ODL Summit. The wiki link also has links to OVA that you can download.

2015-12-03 02:14:05 -0700 commented answer Connect a physical switch to ODL controller

Depends on what you need to configure. You can configure this external switch to connect to ODL too using setmanager or creating br-int on it and adding controller configuration to it.

2015-11-30 02:35:48 -0700 answered a question OpenDayLight Lithium - listening ports

Did you install any features? This being Lithium you need to run feature:install odl-ovsdb-openstackfor all those ports to come up. Don't install any other feature, this will take care of it all. However, this is feature for standard ODL+Openstack.

For VTN, you need to install feature:install odl-vtn-manager-rest You quoted Step 2 on wiki which asks to check for ports. Step1, right before it, mentions referring to VTN Installation guide on how to install VTN feature.

2015-11-30 00:03:57 -0700 answered a question ovsdb exception when programming Local Rules

It looks like you're trying to configure security groups with ICMP rules. Security group support was added recently and I believe is not available in older releases.

2015-11-29 23:59:17 -0700 answered a question Connect a physical switch to ODL controller

Your physical switch will have some configuration that allows one to configure controller. It will [most likely] involve specifying the controller IP and controller port [unless defaults to 6633 or 6653]. Might be able to give exact answer if you can tell which particular device this is.

2015-11-23 20:18:36 -0700 answered a question Unable to get packet data from packetIn

Take a look at L2Switch handler code. It should give you a good idea on how to write an application that receives and decodes packets. Let me know if this works or you want more information.

2015-11-23 06:12:12 -0700 answered a question How can I develop application under the stable-released version?

When writing your application you will be adding dependencies to ODL modules, like say, controller, openflowplugn etc. You need to use the appropriate version in pom file of your application. It will be something like x.y.z-Lithium-SR2. You will have to hunt/figure out versions for each of the bundles you use, but shouldn't be too difficult.

I would recommend using the startup archetype to make this work easier on you. It will create initial bundles and poms with mostly correct versions.

2015-11-23 06:01:41 -0700 commented question Unable to get packet data from packetIn

Answer depends on which version of ODL you're using. If you can share that, I can point to relevant code you can refer.

2015-11-23 04:48:56 -0700 commented answer Unnable to ping between instances

There can be many reasons for it. Is this new instance on same node or another compute node? Take a look at Quite a few mail threads on similar issue and see if they help.

2015-11-20 07:36:08 -0700 answered a question Unnable to ping between instances

Take a look at my answer given here:

You need to configure local_ip on OVS manually as part of setup. The error msg indicates ODL couldn't figure out local_ip to be used for tunnel endpoints.

2015-11-20 06:14:17 -0700 edited answer Could not load 'opendaylight': No module named networking_odl.common

Command pip install networking_odl will do the job. If already present try pip install --upgrade networking_odl

2015-11-20 06:09:16 -0700 commented question Unnable to ping between instances

Can you share output of 'sudo ovs-vsctl show'

2015-11-17 02:46:25 -0700 answered a question Br-int doesn't create on Openstack Nodes

Most common reason for this is using older version of OVS [anything older than 2.1.0]. If your version is new, check this one:

Also, would be good to add versions of OpenStack, OVS and ODL in your original question.

2015-10-17 07:02:14 -0700 marked best answer ODL Coding style - Sun or Google Java?

I am using Eclipse as IDE for ODL code and as per the wiki I should be using google-java-style.xml. However, in controller/opendaylight/commons/parent/ I see sun_coding_style.xml

What should I be actually using?

2015-09-24 00:36:34 -0700 commented answer Devstack multinode setup integration with Opendaylight

DLUX could refer NeutronPort information in data store to get information not just about VMs but computes they're hosted on. Information is all there, just need some code in place to bring it all together.

2015-09-23 23:04:20 -0700 answered a question How to Capture Network Notification From OpenFlow Plugin

You need to register for Data Change notification on Node Connecter. This is one example of it:

But this uses the Inventory model which is being deprecated in Be. I'll have to dig deeper and find an example that uses topology model, but if you're using Li or older, this should work.

2015-09-22 04:22:35 -0700 commented answer Trying to integrate the OpenStack Juno with Helium release of Opendaylight getting the error

Yep, that uri is for NN and default port for it is 8080, not 8181.

2015-09-22 00:09:17 -0700 answered a question Unable to clone git using username
2015-09-21 23:11:47 -0700 answered a question How to write api without exposing as rest service

We're doing something similar in mdsalutil module of vpnservice project. Take a look at mdsalutil-api and it's usage in other impl bundles in vpnservice:

This yang files shows how to expose your interfaces class file for others to consume as service. If you want step by step instructions, I could provide, but it would take some time. Try follow this example and see if it works.

This one shows how it is used [for starters]:

I believe with these you should be able to get what you want.

2015-09-14 07:37:43 -0700 received badge  Famous Question (source)
2015-08-10 22:10:41 -0700 commented answer Feature not installing

That would be in features-l2switch directory as per the location of features.xml that you shared. Not sure how it works with modifying distribution, I've never worked with adding a new module to binary distribution before. I think you're going about it the wrong way.

2015-08-10 22:01:21 -0700 commented answer Feature not installing

1. Updated answer. You need to add dependency to feature in features/pom.xml also. 2. If settings.xml is setup already, then shouldn't be an issue.

2015-08-10 22:00:38 -0700 edited answer Feature not installing
  1. Is it added to the features pom.xml? Something like: <dependency> <groupId>org.opendaylight.openflowplugin</groupId> <artifactId>features-openflowplugin-li</artifactId> <classifier>features</classifier> <version>${openflowplugin.version}</version> <type>xml</type> <scope>runtime</scope> </dependency> Replace openflowplugin-li with l2switch equivalent.
  2. Is your settings.xml setup correctly?