On Jul 26, 2017, at 4:10 PM, SOUNDARARAJAN, ARCHANA <as7...@att.com> wrote:Hi Andrea,Thank you for giving me a starting point.I read the document, it seems like the driver is vendor specific. But OpenRoadm is built for driver independent systems. Also, I took a look at Huawei’s driver code, since they have linked their yang models to the device driver class. It looks as if it has been hard coded to support their yang models? (DeviceUtils.java). I don’t know if I am understanding it right. If you could help me in writing the driver, it would be great.Thank you.Archana SoundararajanFrom: Andrea Campanella [mailto:and...@opennetworking.org]
Sent: Monday, July 24, 2017 4:04 AM
To: SOUNDARARAJAN, ARCHANA <as7...@att.com>
Cc: ONOS Developers <onos...@onosproject.org>; Jonathan Hart <jo...@opennetworking.org>
Subject: Re: Netconf-testing on devicesHi Archana,a good starting point to learn how the southboudn interacts and what are the most importa behaviours to include in your driver is this one:For the file structure I suggest you to copy one of the existing drivers.Please do ask any questions.Cheers,Andrea CampanellaMember of Technical Staff at ONF
Member of Ambassador Steering Team, ONOS and CORD Community
On Jul 22, 2017, at 3:32 PM, SOUNDARARAJAN, ARCHANA <as7...@att.com> wrote:Hi Andrea,Can you please give me a start point at where I should start writing the drivers?.That will be a good start. Thank you for all the help.Best Regards,Archana SoundararajanFrom: Andrea Campanella [mailto:and...@opennetworking.org]
Sent: Thursday, July 20, 2017 9:02 AM
To: SOUNDARARAJAN, ARCHANA <as7...@att.com>
Cc: Yuliya Verbishchuk <yuliya.ve...@tyndall.ie>; ONOS Developers <onos...@onosproject.org>
Subject: Re: Netconf-testing on devicesHi Archana, and Yuliya,Yuliya -- thanks for chiming in, it's great that you could provide so much detail.Achana, yes, your understanding is correct, there are not netconf + yang drivers for CIENA devices. the ones you find in the codebase are rest based for the waveserver. If you need to control devices through netconf and the openroadm models you'll need to write drivers for them. I can help you, in the meantime so look at drivers that use yang two examples are huawei and microsemi.Cheers,Andrea CampanellaMember of Technical Staff at ONF
Member of Ambassador Steering Team, ONOS and CORD Community
On Jul 20, 2017, at 2:55 PM, SOUNDARARAJAN, ARCHANA <as7...@att.com> wrote:Hi Yuliya,Thank you so much for replying in so much detail.Under the available names of drivers in the Ciena-drivers.xml, I could only find restCiena (that means it is for restconf device and not netconf?). I changed the netconf-cfg.json accordingly. Also, I tried posting the network configs to http://localhost:8181/onos/restconf/data/org-openroadm-network:network using postman , I still get the internal error message.Did you face any such problems? Thank you once again for your elaborate reply, it helped me understand.Best Regards,Archana SoundararajanFrom: Yuliya Verbishchuk [mailto:yuliya.ve...@tyndall.ie]
Sent: Wednesday, July 19, 2017 6:54 AM
To: SOUNDARARAJAN, ARCHANA <as7...@att.com>
Cc: Andrea Campanella <and...@opennetworking.org>; ONOS Developers <onos...@onosproject.org>; Fatima Gunning <fatima....@tyndall.ie>
Subject: RE: Netconf-testing on devicesHi Archana,
Sorry I forgot to add few more bits.
I am using Postman to send POST/GET/PUT requests to the device. I am not able to see the yang models on API docs either. I think thats a little bit separate applications, I may be wrong here.
The internal error you currently seeing when trying to get network information from the device on this link http://localhost:8181/onos/restconf/data/org-openroadm-network:network .
In my case it is because the communication flow from device to controller is under development at the moment so the device currently cant share its internal configs. But as a workaround you can post the configurations to the device which will in turn cause and netconf edit-config operation and will change settings on the device. The network configs I am using are as follows:
{
"nodes": [{
"clli": "tyndall",
"ids": [
{
"node-id": "netconf:10.8.4.28:830",
"node-number": "1",
"node-type": "1",
"vendor": "Lumentum",
"ip": "10.8.4.28",
"model": "1.0"
}
]}
]
}
In my case I can POST configs for network , and the device will accept it. But Im running into errors when I try to post configs for device, so I am still working on this.
Kind Regards,
YuliyaFrom: Yuliya Verbishchuk
Sent: Wednesday, July 19, 2017 11:29 AM
To: SOUNDARARAJAN, ARCHANA
Cc: Andrea Campanella; ONOS Developers; Fatima Gunning
Subject: RE: Netconf-testing on devicesHi Archana,
I would be glad to share what I have learned about ONOS so far.
So to connect the device to ONOS you have to make sure that onos already has a drivers specific for your device or else write the driver yourself.
If the drivers are available in onos, when you editing your netconf-cfg.json file you have to make sure to enter correct name of the driver there. To find the name of the driver you have to look in the onos/drivers/siena/src/main/resources/ciena-drivers.xml in this file you will find the name of available drivers for ciena devices.
When you post the netconf-cfg.json file, you also have to make sure to activate the drivers for your device in onos-cli, as "app activate org.onosproject.drivers.ciena"
About OpenRoadm
to make sure the app works you have to build it as it is shown in the webpage https://wiki.onosproject.org/display/ONOS/Open+ROADM+MSA.
The next step would be to activate the app in onos-cli. This app will automatically activate all the needed apps( the ones listed on the onos openroadm webpage).
Then you should be able to see the yang models in onos web gui. Make sure to check the log just to see in case of any errors pop up when you activate the app, that may cause some troubles with seeing the yang models.
When I was doing it, the error related to osgi wiring package in tl1 come up and the app didnt work. Andrea, Marc and Yuta have provided the fix available here https://gerrit.onosproject.org/#/c/14521/ in case you may need it.
Hope this helps, if you have any more questions please do not hesitate to ask.
Kind Regards,
Yuliya
From: SOUNDARARAJAN, ARCHANA [as7...@att.com]
Sent: Tuesday, July 18, 2017 6:52 PM
To: Yuliya Verbishchuk
Cc: Andrea Campanella; ONOS Developers
Subject: RE: Netconf-testing on devicesHi Yuliya,Thank you for the reply.I am fairly new to the Onos environment. I am not able to mount a device as a ROADm device. When I mounted my device, it is just mounted as an ordinary netconf device. I don’t know about the specific drivers used for a ciena device either.It would be great if you can tell me more about the change in configurations. Are you referring to the netconf-cfg.json file?. Also, I am not able to see the OpenROADM based yang modules on the API docs? So I am not sure how to get/post/put to get the device data.Currently, http://localhost:8181/onos/restconf/data/org-openroadm-network:network is showing internal error. It’ll be great if you can help me here.Best,Archana SoundararajanFrom: Yuliya Verbishchuk [mailto:yuliya.ve...@tyndall.ie]
Sent: Tuesday, July 18, 2017 11:10 AM
To: SOUNDARARAJAN, ARCHANA <as7...@att.com>
Cc: ONOS Developers <onos...@onosproject.org>; Sithara Arun <psit...@gmail.com>; Andrea Campanella <and...@opennetworking.org>; Fatima Gunning <fatima....@tyndall.ie>
Subject: RE: Netconf-testing on devicesHi Archana,
I am currently working with similiar setup you have, I use lumentum roadm and openroadm app. When you try to access http://localhost:8181/onos/restconf/data/org-openroadm-network:network
for example, in my case it is not working as the communication from south to north (device-->controller ) is currently being developed. While communication from north to south is available (controller --> device).
So to overcome this issue it was suggested to create a change in configurations (using the openroadm yang models to create a configuration payload) and post it to the device, as it will cause the netconf edit-config operation, and will apply changes to the device.
Hope this helps.
Kind Regards,
YuliyaFrom: SOUNDARARAJAN, ARCHANA [as7...@att.com]
Sent: Tuesday, July 18, 2017 12:18 PM
To: Andrea Campanella
Cc: ONOS Developers; Sithara Arun; Yuliya Verbishchuk
Subject: RE: Netconf-testing on devicesHi Andrea,1) I have changed the driver name in the config file, it Is ciena openroadm in this case, also activated the ciena app in the controller.2) I am not able to access the http://localhost:8181/onos/restconf/data/-- shows internal error. (I have activated all the apps that are listed in the openroadm MSA wiki including restconf, restsb, protocols.restconfserverBest Regards,Archana SoundararajanFrom: Andrea Campanella [mailto:and...@opennetworking.org]
Sent: Tuesday, July 18, 2017 4:10 AM
To: SOUNDARARAJAN, ARCHANA <as7...@att.com>
Cc: ONOS Developers <onos...@onosproject.org>; Sithara Arun <psit...@gmail.com>; Yuliya Verbishchuk <yuliya.ve...@tyndall.ie>
Subject: Re: Netconf-testing on devicesHI Archana,i'm combining the emails.I'm also adding the onos-dev mailing list because there are people far more competent than i am on the yang/openroadm app. Yuliya is doing soemthing very similar to your process, i hope you to can connect and share thoughts.i've put replies in red for what I know inline of your email underneath.Cheers,Andrea CampanellaMember of Technical Staff at ONF
Member of Ambassador Steering Team, ONOS and CORD CommunityOn Jul 17, 2017, at 10:12 PM, SOUNDARARAJAN, ARCHANA <as7...@att.com> wrote:Hi Andrea,I am also not able to see the yang models on the v1/docs after I load the openroadm app.Please let me know what I should do to see the yang models for using the swagger.I was able to connect the Netconf devices to the controller. I have couple of questions on how I should interact with the device.1) How can I use get, push, post on the device that is connected? I used the /onos/v1/network/configuration (POST and GET commands) Is this right way of doing it?no, network configuration is not the right choiche here, you should uese the RESTCONF endpoint exposed by the openROADM app, you can dive deeper in the app as shown here https://wiki.onosproject.org/display/ONOS/Open+ROADM+MSA2) Is there something else I need to configure for the device to show up as a openroadm device?. If so how to I interact with the roadm device using the same push, post and get commands?I think that there is the need for a driver for you device, if i understand correctly you are using ovs-netconf, that's not really enough for the ROADMS. What type fo devices are you using ?Thank you once again.Best Regards,Archana SoundararajanFrom: Andrea Campanella [mailto:and...@opennetworking.org]
Sent: Monday, July 17, 2017 4:13 AM
To: SOUNDARARAJAN, ARCHANA <as7...@att.com>
Cc: ONOS Developers <onos...@onosproject.org>
Subject: Re: Netconf-testing on devicesHi Archana,the json you are sending seems formatted properly to me. If you look at the logs you'll see that the netconf device is not reachable. We use a socket method to see if the SSH session can be opened. Can you please double check that you can ping the device form the ONOS machine.For reference the isReachable method of NetconfDeviceprovider is what return false.Cheers,Andrea CampanellaMember of Technical Staff at ONF
Member of Ambassador Steering Team, ONOS and CORD Community
On Jul 14, 2017, at 8:24 PM, SOUNDARARAJAN, ARCHANA <as7...@att.com> wrote:Hi Andrea,Thank you for all the help!My next steps are to check if I am able to talk to the ROADM devices and check the controller for recent changes in our yang models. I have the Onos controller/gui is up and running, I changed the json file (netconf-cfg.json) file with one of our devices, but the availability of the device is showing as false and removing the device using (onos:device-remove netconf id) isn’t actually removing the device.I have attached the log:tail and netconf-cfg.json file in the attachment.It’ll be great if you can help me. I want to thank you in advance.Hope you have a wonderful weekend.Best Regards,Archana Soundararajanonos> devicesid=netconf:135.16.195.226:830, available=false, local-status=connected 3h37m ago, role=NONE, type=SWITCH, mfr=unknown, hw=unknown, sw=unknown, serial=unknown, driver=ovs-netconf, ipaddress=136.16.195.128, locType=geo, name=netconf:136.16.195.128:830, port=830, protocol=NETCONFFrom: Andrea Campanella [mailto:and...@opennetworking.org]
Sent: Thursday, July 13, 2017 5:02 AM
To: SOUNDARARAJAN, ARCHANA <as7...@att.com>
Cc: ONOS Developers <onos...@onosproject.org>
Subject: Re: OpenRoadm application and general ONOS ssh problems.Hi Archana,these are errors i've never encountered myself or seen so i've included the onos-dev mailing list to see in anybody can chime in.You might want to take a look here https://wiki.onosproject.org/pages/viewpage.action?pageId=4162614 This might have some insight into the ssh problem.In any case looking at the logs it seams that your instance of ONOS did not come up properly. can you stop it, see if there is anything left running with ps -ax | grep onos in which case kill all the ONOS related processes and the start it again with buck run onos-local -- debug -- cleanI'll let other people chime in for the UI and any more details.Cheers,Andrea CampanellaMember of Technical Staff at ONF
Member of Ambassador Steering Team, ONOS and CORD Community
On Jul 12, 2017, at 7:54 PM, SOUNDARARAJAN, ARCHANA <as7...@att.com> wrote:Hi Andrea,Not sure if you got the email. Resending it to your new email ID.I was stuck in installing onos ( I am using a remote vm ). I tried a couple of things.1) onos-ssh localhostUnable to negotiate with ::1 port 22: no matching key exchange method found. Their offer: diffie-hellman-group1-sha12) sdn@openroadm:~/onos$ onos-secure-ssh localhostHost [localhost]:8101 not found in /home/sdn/.ssh/known_hostsUnable to negotiate with ::1 port 22: no matching key exchange method found. Their offer: diffie-hellman-group1-sha1Unable to negotiate with ::1 port 22: no matching key exchange method found. Their offer: diffie-hellman-group1-sha13)onos localhostFailed to add the host to the list of known hosts (/home/sdn/.ssh/known_hosts).Password authenticationPassword:Password authenticationPassword:Password authenticationPassword:sdn@localhost's password:Permission denied, please try again.sdn@localhost's password:Permission denied, please try again.sdn@localhost's password:Permission denied (keyboard-interactive,password,publickey).4) I was able to get the controller running by using the following command.ssh -p 8101 karaf@localhostis this the right way to get it up?5) I am not able to get the GUI running on my host system by using the vmipaddress:8181/onos/uiI have onos-gui feature installed. Should I change any file to have the vm’s ip address?6) I updated the netconf-cfg.json file with one of our devices, to test if it is showing up.I wanted to try a couple of more devices, it was still showing the first one that I loaded ( the controller crashes if I use onos:device-remove netconf=ipaddress of the device)I have attached the log:tail of the controller in this email..Please let me know if I am going wrong in any of the steps and how it can be resolved. Appreciate it!Best Regards,Archana Soundararajan<log_tail.txt><Log_tail.txt><netconf-cfg.txt>
Hi All,
I am trying to build a common driver for the OpenRoadm Devices using Onos. Currently looking at the already existing drivers (Huawei and Microsemi) and trying to link the OpenRoadm devices with its yang models using Netconf sessions.
I am very new to Onos, any help in building this generic driver will be appreciated.
Thank you,
Thank you for your reply Sean.
I know protocol, it has to be netconf. Hardware and software need not be specified for now.
The behaviors will should primarily have the DeviceDescriptionDiscovery and its implementation. This is where I would need help. Anything on this front would be appreciated. Thank you once again.
BR,
Archana
This is only the start of course - you will need to implement fully implement the behaviours to talk to a real device through NETCONF. See other drivers on how the get access to the NETCONF session and they use the onos-yang-tools generated code to map between
the Data Model and encode/decode to/from XML for NETCONF. The XML can then be sent and receieved in NETCONF commands like get-config, edit-config.
This is just a simple SBI implementation of a driver - there are many other ways to work with ONOS - I'm not sure what your overall goal is - it depends on the behaviours you want to support.
Hope this helps, Sean
Thank you Sean for the detailed explanation.
I am still stuck in the 7th step, I don’t understand how to link the openroadm device model with the discoverDeviceDetails and discoverPortDetails.
My end goal is to fetch the device model info through the netconf instantiation.
Best Regards,
Archana Soundararajan
Do you have a device to simulate a NETCONF server with these YANG files loaded? It is possible to create a test harness for NETCONF XML conversations. See the examples I have in the Unit test org.onosproject.drivers.microsemi.yang.MockNetconfSessionEa1000 - here I have expected requests and replies corresponding to some of my YANG files. You could create something similar for the OpenROADM messages - the advantage of putting them in to a unit test is you will know easily if a future code change breaks your implementation.
Best regards, Sean
Nevermind. I realised that I was missing the DeviceLoader.java.
My apologies.
/Kim
--
You received this message because you are subscribed to a topic in the Google Groups "ONOS Developers" group.
To unsubscribe from this topic, visit https://groups.google.com/a/onosproject.org/d/topic/onos-dev/fDpw-JCzZfk/unsubscribe.
To unsubscribe from this group and all its topics, send an email to onos-dev+u...@onosproject.org.
To post to this group, send email to onos...@onosproject.org.
Visit this group at https://groups.google.com/a/onosproject.org/group/onos-dev/.
To view this discussion on the web visit https://groups.google.com/a/onosproject.org/d/msgid/onos-dev/ad15a6fd-1430-49eb-8acd-6716efa0e2a4%40onosproject.org.
Interested in our Newsletter?
Subscribe under
http://www.hubersuhner.com/newsletter Thank you.
EXTERNAL EMAIL