Skip to content

Async Netconf Server and Client Library for Python

Notifications You must be signed in to change notification settings

ulrikforsgren/netconf

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

A Netconf Client/Server Library

NOTE! This a fork of netconf to try to add asyncio support.

The modules with asyncio support are found in directory async_netconf and the examples in async_example. This to easily see what is changed fro the paramiko based implementation.

Current features:

  • SSH via asyncssh.
  • Server support.
  • Writable datastore (netconf_merge module + json schema).
  • Massive parallelism: Start of 10000 devices in less than a minute. Memory usage depends wheather config is stored or not.

TODO asyncio support:

  • Create tests for server
  • Look into client, the current implementation for server uses the data_received callback, which doesn't need a reader "thread". Check wich approach i better.
  • Implement more authentication options, "compatible" with the paramiko implementation.
  • netconf_merge is still an alpha version. Create tests for netconf_merge.py to get functional coverage. Add support for multiple namespaces.
  • Add pyang plugin to compile json-schema from YANG module(s).

This package supports creating both netconf clients and servers. It also provides a CLI netconf client utility. An example server is included under the example subdirectory.

Documentation is available at: http://netconf.readthedocs.io/

The following modules are present:

  • __main__ - Netconf CLI client utility.
  • base - Shared netconf support classes.
  • error - Netconf error classes.
  • client - Netconf client classes.
  • server - Netconf server classes.
  • util - Netconf utility functions.

master branch status:

https://travis-ci.org/choppsv1/netconf.svg?branch=master https://coveralls.io/repos/choppsv1/netconf/badge.svg?branch=master&service=github https://readthedocs.org/projects/netconf/badge/?version=latest

About

Async Netconf Server and Client Library for Python

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Python 99.6%
  • Makefile 0.4%