NETCONF driver for Lumentum ROADM

135 views
Skip to first unread message

alessio....@gmail.com

unread,
Jan 22, 2018, 6:48:12 AM1/22/18
to ONOS Developers
Dear folks,

I'm working on the NETCONF driver for the Lumentum ROADM Whitebox https://www.lumentum.com/en/products/dci-transport-roadm-whitebox-graybox. Actually we have one of this device in our lab. 

Our first target is to configure the device using the ROADM application currently available in the master release. Thanks to the help of Andrea, we started from this patch:


We did some editing to fix minor issues in the xml parsing. And we are currently able to download the device configuration and visualize it (and all its ports) in the GUI provided by the ROADM application.

At this stage I have a pair of generic questions:

1. I read that ROADM app uses LambdaQuery and PowerConfig behaviours. Are both behaviours required in the Lumentum driver? 

2. Currently, if I try to configure a new connection using ROADM app GUI I got an error on the port number "invalid Input/Output ports" and "Invalid connection from input to output port". I used ports in 4101 and out 3001 (line ports), both appear as enabled in the GUI. Where I have to look to understand what is going on... ?

3. If some connection are configured on the device before connecting it to ONOS, I would be able to accept these connections and see them in the GUI. To this extent Andrea provided me some suggestions (set allowExtraneousRules and a slight edit of the FlowRuleManager)... However flows are still not visible in the GUI.

4. As mentioned I see the port and all the port details in the GUI of the ROADM app... but the same ports are not visible in the general GUI of ONOS. Is this expected for optical device?

Thank you in advance.
alessio

laszl...@hubersuhner.com

unread,
Jan 22, 2018, 6:59:03 AM1/22/18
to alessio....@gmail.com, onos...@onosproject.org

Dear Alessio,

1) It is not required to implement the LambdaQuery behaviour. At least, I have not implemented that and the roadm application has been working fine with out NE.

2) You can check the validation methods in the RoadmManager.java class. Basically, it seems that you need to have to implement the PowerConfig behaviour and return a valid target power range at least.

3) Is there any exception in the karaf log? Can you see the connections persisting on the device (not via ONOS) after setting allowExtraneousRules to true? If those persist, at least, you can see that the flag took some affect.

4) Some port "details" are only visible in the ROADM application. Yes, this is expected.

Best regards,
Laszlo Papp

Disclaimer:
This message is confidential. It may also be privileged or otherwise protected by work product immunity or other legal rules. If you are not the named addressee you should not disseminate, distribute or copy this e-mail. Please notify the sender immediately by e-mail if you have received this e-mail by mistake and delete this e-mail from your system. Please note that any views or opinions presented in this email are solely those of the author and do not necessarily represent those of the company. All deliveries and services are subject to our General Terms and Conditions of Sales.

Warning: Although the company has taken reasonable precautions to ensure no viruses are present in this email, the company cannot accept responsibility for any loss or damage arising from the use of this email or attachments.

From: alessio....@gmail.com [alessio....@gmail.com]
Sent: 22 January 2018 11:48
To: ONOS Developers
Subject: [onos-dev] NETCONF driver for Lumentum ROADM

--
You received this message because you are subscribed to the Google Groups "ONOS Developers" group.
To unsubscribe from this group and stop receiving emails from it, 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/be9904e0-a06a-448a-bd22-6f13d176f206%40onosproject.org.

Marc De Leenheer

unread,
Jan 22, 2018, 2:22:29 PM1/22/18
to laszl...@hubersuhner.com, alessio....@gmail.com, ONOS Developers
Regarding #3, enabling extraneous rules simply leaves these, instead of being deleted, on the switch untouched. They are not part of the ONOS flow rules and thus are not visible.

If you want to see flow rules in ONOS, create them using ONOS.

marc

To unsubscribe from this group and stop receiving emails from it, send an email to onos-dev+unsubscribe@onosproject.org.

--
You received this message because you are subscribed to the Google Groups "ONOS Developers" group.
To unsubscribe from this group and stop receiving emails from it, send an email to onos-dev+unsubscribe@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/.

alessio....@gmail.com

unread,
Jan 23, 2018, 4:07:54 AM1/23/18
to ONOS Developers, alessio....@gmail.com
Dear Laszlo,

thank you for your replies... please see in-line


Il giorno lunedì 22 gennaio 2018 12:59:03 UTC+1, laszlo.papp ha scritto:

Dear Alessio,

1) It is not required to implement the LambdaQuery behaviour. At least, I have not implemented that and the roadm application has been working fine with out NE.

ok... which device are you using? 
 

2) You can check the validation methods in the RoadmManager.java class. Basically, it seems that you need to have to implement the PowerConfig behaviour and return a valid target power range at least.

I'm working on this point, after implementation of a basic PowerConfig we are now able to set connections...

 

3) Is there any exception in the karaf log? Can you see the connections persisting on the device (not via ONOS) after setting allowExtraneousRules to true? If those persist, at least, you can see that the flag took some affect.

Yes the flag is active because ONOS does not try to remove the flows... However, this point is not so important at this stage.
 

4) Some port "details" are only visible in the ROADM application. Yes, this is expected.

I understand that some details are visible only in the ROADM app GUI. The weird point is that in the basic ONOS GUI the ports are not listed at all. However ports are visible in the CLI with the "ports" command. 
 
To post to this group, send email to ono...@onosproject.org.

alessio....@gmail.com

unread,
Jan 23, 2018, 4:20:00 AM1/23/18
to ONOS Developers, laszl...@hubersuhner.com, alessio....@gmail.com
Dear Marc,

I know that ONOS (by default) only visualizes and manages connections created by itself. I was wondering if this is the best solution for an optical network. 

From past experience I know that optical networks operators would like the ability to acquire the current status of the network upon activation of the controller... Also I have some other dubts... (I know ONOS is very reliable due to multi-instance approaches) but what doe it happen in the unlucky case of a controller crash? With the current approach when the controller is restarted all connections are deleted and re-established and this is not acceptable in an optical network... also with the "allow extranous" flag the connections are not deleted but no more visulized and editable from the controller... ?

I know this is a very generic discussion, but I guess this is an important point from the point of view of optical networks operators. What is your idea... ?

marc

To unsubscribe from this group and stop receiving emails from it, send an email to onos-dev+u...@onosproject.org.
To post to this group, send email to ono...@onosproject.org.

--
You received this message because you are subscribed to the Google Groups "ONOS Developers" group.
To unsubscribe from this group and stop receiving emails from it, 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/.

laszl...@hubersuhner.com

unread,
Jan 23, 2018, 4:55:11 AM1/23/18
to alessio....@gmail.com, onos...@onosproject.org
Dear Alessio,

1) I am using the polatis netconf driver.

2) Are you referring to the port view on the webgui or the ports table in the pop-up menu when you click on a device?

3) You can set up a cluster for high availability so that when a controller crashes another node takes over. Hopefully, this is not causing out-of-service outage in your connections.

4) Regarding the merge of existing connections into the ONOS store, perhaps this could be configurable then via another flag if you need it? I believe that you could still edit (i.e. overwrite) connections by ONOS created externally.

Best regards,
Laszlo Papp

From: alessio....@gmail.com [alessio....@gmail.com]
Sent: 23 January 2018 09:20
To: ONOS Developers
Cc: Papp Laszlo; alessio....@gmail.com
Subject: Re: [onos-dev] NETCONF driver for Lumentum ROADM

alessio....@gmail.com

unread,
Jan 25, 2018, 12:13:25 PM1/25/18
to ONOS Developers, laszl...@hubersuhner.com, alessio....@gmail.com
Dear Marc,

I worked on the Lumentum driver and it is now able to interoperate with the ROADM app. I'm able to configure and delete connections on the device MUX and DEMUX.

However I have encoutered some limitations that I could only solve modifying the ROADM application. Such an example, once a connection is configured using a specific OchSignal, the app does not allow to configure an other connection using the same channel. This check is performed at the application level. However the Lumentum ROADM has one MUX and one DEMUX, so not only it is possible to use the same channel in two different connections, but this is the usual way to configure the ROADM to ADD/DROP a bidirectional channel TO/FROM the line port. 

How do you suggest to proceed?  

alessio


Il giorno lunedì 22 gennaio 2018 20:22:29 UTC+1, Marc De Leenheer ha scritto:

marc

To unsubscribe from this group and stop receiving emails from it, send an email to onos-dev+u...@onosproject.org.
To post to this group, send email to ono...@onosproject.org.

--
You received this message because you are subscribed to the Google Groups "ONOS Developers" group.
To unsubscribe from this group and stop receiving emails from it, 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/.

Marc De Leenheer

unread,
Jan 26, 2018, 12:59:28 PM1/26/18
to Alessio Giorgetti, ONOS Developers, laszl...@hubersuhner.com
I did not develop the ROADM app so I'm not the authority here :)

If I were you, I would simply write the code and submit to gerrit. Whoever wrote the ROADM app will be added as reviewer.

Hope this helps,

marc

To unsubscribe from this group and stop receiving emails from it, send an email to onos-dev+unsubscribe@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/.

alessio....@gmail.com

unread,
Feb 15, 2018, 12:49:24 PM2/15/18
to ONOS Developers, alessio....@gmail.com
This is just an update on the ongoing work. For clarity, the excact name of the device is Lumentum ROADM-20 Whitebox, firmware dcian_R2.1.4_136.

 NETCONF driver is now correctly inter-operating with the main functionalities of the ROADM app.

- Visualizes all ports details
- Add/Delete connections on mux and demux
- Support of 50 GHz and 100 GHz OchSignals
- Monitor Attenuation and Input power of active connections
- Perform a check on input/output ports when a new connection is created

We will use this driver in a demo at OFC conference in San Diego, www.ofcconference.org.

alessio

Marc De Leenheer

unread,
Feb 15, 2018, 2:38:05 PM2/15/18
to Alessio Giorgetti, ONOS Developers
That's great to hear. Feel free to share your experience and maybe even your demo here on the list.

Thanks,

marc

--
You received this message because you are subscribed to the Google Groups "ONOS Developers" group.
To unsubscribe from this group and stop receiving emails from it, send an email to onos-dev+unsubscribe@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/.
Reply all
Reply to author
Forward
0 new messages