[j-nsp] Netconf & namespaces
Tyler Christiansen
tyler.christiansen at adap.tv
Thu Jun 12 12:48:12 EDT 2014
On Thu, Jun 12, 2014 at 9:16 AM, Phil Mayers <p.mayers at imperial.ac.uk>
wrote:
> On 12/06/14 16:38, Tyler Christiansen wrote:
>
>> What are you trying to accomplish? It may be easier to use the Juniper
>>
>
> I am trying to integrate our new EX switches into our existing, extensive,
> automation and provisioning systems.
>
> I've already got it working with Junoscript, but as noted had a few
> problems (currently successfully being worked around) so took a look at
> Netconf, and found namespace issues.
>
> The fundamental question is: are namespaces used incorrectly all over the
> place in Netconf?
I honestly couldn't tell you--but it wouldn't surprise me. Data formats
like XML aren't very good data formats.
>
>
> Netconf Ruby gem or the Python junos-eznc module depending on your
>> background and goals.
>>
>
> I'd rather stab myself with a rusty fork than use Ruby.
>
I'd rather stab myself with a rusty fork than use Python. :) To each his
own, I suppose.
>
> I've looked at the PyEZ and ncclient code, and basically they seem to take
> the approach of just throwing away all namespace information. This seems
> icky to me, and make me wonder if Netconf is going to be another SOAP - so
> many implementation errors that "interop" ends up being a mess of special
> casing and workarounds.
>
Data formats are going to have this problem forever. It's not specific to
NetConf or SOAP. Standards in general have this problem--implementation
for a vendor's version of a standard starts, and then the standard changes
or is improved and the vendor doesn't move forward (or at least not as
quickly as we would like).
>
> In any event, our existing tooling uses Python & Twisted, so
> synchronous/blocking libraries don't integrate well.
>
If you're really into Python/Twisted, you may want to look at Trigger
<https://trigger.readthedocs.org/en/latest/> and see how they're solving
the issue. They support a LOT of vendors, including Juniper and Cisco.
(Disclaimer: I work for an AOL property, but do not use Trigger)
>
> I'll look at the Ruby code to at least see what they do about namespaces;
> I bet "ignore them". Makes me wonder why we even bother with XML, sigh...
>
The Ruby code likely handles things in the same manner. It's written by
the same people.
--tc
--
*Tyler Christiansen | Technical Operations*
tyler <http://adap.tv/>@adap.tv <http://adap.tv/> | www.adap.tv
*m :* 864.346.4095
More information about the juniper-nsp
mailing list