Comments (15)
Where are you reading this description? It is not up-to-date, modules are first searched locally (if the revision is known) and only if not found get-schema
is used to retrieve them from the server.
from netopeer2.
Hi,
This is directly in the code: netopeer2/cli/doc/netopeer2-cli.1 at 373eb48edaf86c5d44a5f86399d2e38f9de76bf0 ยท CESNET/netopeer2 (github.com)
What we want to do here is use different revisions for models on client side and server side:
Then, we want to validate that when Netconf client sends requests and gets responses they are valid with its set of Yang models (revision A)
We tried sending an edit-config rpc that is valid on revision B but not valid on revision A, and netopeer2-cli sent it without checking it was valid.
Same with a get rpc, the response from netopeer2-server was valid in revision B but not in revision A and netopeer2-cli received it and displayed it without checking.
The questions we have are:
- Does netopeer2-cli validate the requests/answers based on its own set of yangs?
- If not, is there a way to do the scenario we want? And what for is searchpath used?
from netopeer2.
What we want to do here is use different revisions for models on client side and server side:
No, do not do this, it is not supported, goes directly against NETCONF specs, and can cause nothing but issues.
from netopeer2.
Then, if searchpath is not to check that a set of Yang in Vn at NC Client side is still backward compatible with a set of Yang at NC Server side in Vn+1, what are user scenarii where command searchpath is intended to be used ?
from netopeer2.
It is just another configuration parameter. Any modules downloaded using get-schema
are stored in the search path and the next time you connect to the same server, the modules can be loaded locally. But if you already have all the modules, you can use searchpath to point to the right directory and the modules do not have to be downloaded at all, for optimization.
from netopeer2.
The reality in our field is that NC Clients having a set of Yang in Vn must interoperate with other devices hosting NC Servers executed with a set of Yang in Vn+1. How is it possible to test such interoperability with the NC Client/Server components made available by Netopeer2 ?
from netopeer2.
Because get-schema is not used by our real NC Client even if supported by the NC Server
from netopeer2.
How is it possible to test such interoperability with the NC Client/Server components made available by Netopeer2 ?
YANG module versioning is currently a hot topic in IETF, you are free to take part in the discussions. But as it stands, the old rules are quite simple and strict. Like I said, you must use the same set of modules on both the client and the server, nothing else is permitted and expected to work.
from netopeer2.
Thanks for the sharing, now state of the art is clear.
from netopeer2.
Additional question:
Does netopeer2-cli validates requests/responses based on their modules stored?
from netopeer2.
The CLI loads all the server modules when establishing the connection because it parses all the NETCONF messages. So yes, all the requests and responses are parsed (and validated) by libyang.
from netopeer2.
Thanks for clarifications, let's close the question
from netopeer2.
The reality in our field is that NC Clients having a set of Yang in Vn must interoperate with other devices hosting NC Servers executed with a set of Yang in Vn+1.
This should work just fine as long as your NETCONF servers properly bump the revision date on each change. Is that the case for your servers? (For development purposes, setting the cache directory to a throwaway location looks like a sensible step.)
from netopeer2.
The reality in our field is that NC Clients having a set of Yang in Vn must interoperate with other devices hosting NC Servers executed with a set of Yang in Vn+1.
This should work just fine as long as your NETCONF servers properly bump the revision date on each change. Is that the case for your servers? (For development purposes, setting the cache directory to a throwaway location looks like a sensible step.)
Yes, O-RAN WG4 is always taking care to change revision of the module when modifications in the modules are performed.
from netopeer2.
Then you should have no problems; you can let the code slowly fill up directory with local copies of YANG files retrieved from various NETCONF servers. If you're using some SW that's using libnetconf2, and if this software has a problem with, say, [email protected]
and [email protected]
both existing on disk in that directory, please file a bug. This feature is (I suppose) intended to be used as a caching optimization.
from netopeer2.
Related Issues (20)
- netopeer2.conf and pam_nologin.so does not exist in Yocto Scarthgap HOT 3
- netopeer2-server: /home/ubuntn/libyang-2.0.112/src/parser_xml.c:696: lydxml_subtree_r: Assertion `xmlctx->status == LYXML_ELEM_CLOSE' failed. Aborted (core dumped) HOT 1
- TLS server cipher regarding HOT 7
- Complete example for callback mechanism e.g when changing/reading some field via netopeer2-server HOT 2
- NOT support password customization authentication function in new version HOT 7
- Call home to loopback IP is failing HOT 4
- Netopeer2-cli does not detect connection breakage in the background HOT 3
- A potential mistake need to be tested and verified HOT 1
- Does netopeer-cli support public key based authentication HOT 4
- Cannot connect Server HOT 8
- Query on listing existing subscriptions HOT 15
- Query: any API to terminate the particular client's netconf session with particular user from application HOT 5
- New SSH server key added every time I trigger a call-home, not checking the known_host file. HOT 1
- Failed changing permissions of directory "/usr/lib64/netopeer2-server" (Read-only file system) HOT 2
- Unable to receive callback when trying to subscribe custom yang model using sr_oper_get_subscribe() HOT 1
- Delete subinterface and network-instance not working with netopeer2 HOT 5
- Error with TLS Call Home connection using netopeer2-cli HOT 2
- netopeer2-server dont open port in openwrt HOT 6
- Example configuration xml tags are not aligned with yang modules HOT 3
- The "apkg build" breaks due pam.de/netopeer2.conf path issue HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. ๐๐๐
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google โค๏ธ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from netopeer2.