NETCONF¶
Overview¶
The NETCONF projects hosts multiple components relating to IETF’s NETCONF Working Group:
Northbound and southbound plugins for NETCONF protocol, as described in RFC-6241
Northbound plugin for RESTCONF protocol, as described in RFC-8040
Northnound plugin for descring RESTCONF endpoint in terms of OpenAPI 3.0
Behavior/Feature Changes¶
The odl-restconf-nb-rfc8040
feature has been renamed to odl-restconf-nb
.
New Features¶
Support for subscribing to mounted NETCONF devices has been added. See NETCONF-745 for details.
A new RESTCONF query extension has been added. This supports reporting only leaf values which have actually changed. See NETCONF-862 for details.
Deprecated and Removed Features¶
RPC definitions in netconf-node-topology.yang
have been deprecated. Their functionality is completely covered
by manipulating the configuration datastore.
Resolved Issues¶
The following table lists the issues resolved in this release.
Type |
Key |
Summary |
Resolution |
Fix Version(s) |
---|---|---|---|---|
OpenApi: Broken parameters logic |
Done |
6.0.1, 7.0.0 |
||
The required fields are created, but they are not populate in the Swagger API |
Done |
4.0.9, 5.0.7, 6.0.0 |
||
Notification eventInstant() not propagated to NotificationMessage |
Done |
4.0.7, 5.0.7, 6.0.0 |
||
NetconfNotification confuses its namespace |
Done |
4.0.7, 5.0.7, 6.0.0 |
||
OpenAPI: add possibility to configure base path |
Done |
5.0.7, 6.0.0 |
||
Add odl-yanglib into experimental features |
Done |
6.0.0 |
||
Cannot retrieve operation resource |
Done |
4.0.7, 5.0.7, 6.0.0 |
||
Discover mountpoint RPC operation through RESTCONF is failing with response 500 |
Done |
4.0.7, 5.0.7, 6.0.0 |
||
OpenAPI: Fix invalid swagger schema |
Done |
4.0.7, 5.0.7, 6.0.0 |
||
OpenApi: Missing required parameters in swagger schema |
Done |
4.0.7, 5.0.7, 6.0.0 |
||
Incorrect processing of RESTCONF fields for duplicate node names on NETCONF device |
Done |
4.0.8, 5.0.7, 6.0.0 |
||
OpenAPI: Fit “Select definition” content to width |
Done |
5.0.7, 6.0.0 |
||
Broken refresh method in netconf-singleton |
Done |
6.0.0 |
||
OpenApi: Eliminate createUniquePathParamName method |
Done |
6.0.0 |
||
OpenApi: Introduce Operation object |
Done |
6.0.0 |
||
OpenAPI: Eliminate ListPathBuilder interface |
Done |
6.0.0 |
||
Some BBF yang devices using actions have invalid swagger URLs generated. |
Done |
4.0.9, 5.0.7, 6.0.0 |
||
OpenApi: Wrong XML GET example |
Done |
4.0.9, 5.0.7, 6.0.0 |
||
Wrong Map Node type causes Yanglib data merge failure |
Done |
4.0.9, 5.0.7, 6.0.0 |
||
Connection status not updated after successful connection |
Done |
6.0.1 |
||
transport-tcp transport does not work with plain NioSocketChannel |
Done |
6.0.1, 7.0.0 |
||
NETCONF connection status behavior change |
Done |
6.0.1, 7.0.0 |
||
OpenApi: Missing “all” content parameter value |
Done |
4.0.9, 5.0.8, 6.0.2, 7.0.0 |
||
OpenAPI: Do not hardcode action path |
Done |
4.0.9, 5.0.8, 6.0.2, 7.0.0 |
||
Swagger document for a specific module in a specific mounted device not showing the name of the device |
Done |
4.0.9, 5.0.8, 6.0.2, 7.0.0 |
||
OpenApi returns 400 error after PUT request on toaster data |
Done |
4.0.9, 5.0.8, 6.0.2, 7.0.0 |
||
Fail to process PATCH with target containing a single forward slash |
Done |
5.0.8, 6.0.2, 7.0.0 |
||
Operational data of netconf-topology node may not be removed |
Done |
6.0.3 |
||
Incorrect subscription request URL |
Done |
6.0.3, 7.0.0 |
||
OpenApi: POST examples are incorrect |
Done |
4.0.9, 5.0.8, 6.0.2, 6.0.3, 7.0.0 |
||
Unnecessary data change events for child-nodes-only |
Done |
6.0.4, 7.0.0 |
||
Odl-yanglib fails to register provided sources |
Done |
6.0.0 |
||
SSE with sub identifier does not work |
Done |
5.0.8, 6.0.3, 7.0.0 |
||
Eliminate use of blueprint in NETCONF/RESTCONF |
Done |
6.0.0 |
||
Rework client reconnection logic |
Done |
6.0.0 |
||
Use a type-safe capture for NETCONF session ID |
Done |
6.0.0 |
||
Reorganize netconf.git features |
Done |
6.0.0 |
||
Optimize DefaultNetconfKeystoreAdapter |
Done |
6.0.0 |
||
OpenAPI: Eliminate BaseYangOpenApiGenerator#convertToServers |
Done |
6.0.0 |
||
OpenAPI: Replace ImmutableList.of with List.of() |
Done |
6.0.0 |
||
OpenAPI: Use Java Path object instead of JsonNode |
Done |
6.0.0 |
||
OpenAPI: Eliminate object duplication in MountPointOpenApi#getMountPointApi |
Done |
6.0.0 |
||
OpenAPI: Avoid null values in JSON |
Done |
6.0.0 |
||
Add a dedicated SessionId type |
Done |
6.0.0 |
||
YangLib returns a 500 error if the requested SchemaSource is not available |
Done |
6.0.0 |
||
OpenAPI: Limit usage of JsonUtil#copy method |
Done |
6.0.0 |
||
OpenAPI: Use Java Schema object instead of JsonNode |
Done |
6.0.0 |
||
OpenAPI: Eliminate JsonUtil#addFields method |
Done |
6.0.0 |
||
Refactor AbstractNetconfTopology interface |
Done |
6.0.0 |
||
Eliminate use of restconf.common.Patch |
Done |
5.0.8, 6.0.2, 7.0.0 |
Known Issues¶
The following table lists the known issues that exist in this release.
Type |
Key |
Summary |
Status |
Affected Version(s) |
Fix Version(s) |
---|---|---|---|---|---|
RESTCONF DataTreeChange notifications use incorrect format |
Resolved |
2.0.17, 3.0.9, 4.0.8, 5.0.7, 6.0.2 |
7.0.0 |
||
netconf-client-mdsal emits useless namespace in filter |
Resolved |
3.0.9, 4.0.8, 5.0.7, 6.0.4 |
5.0.8, 6.0.5, 7.0.0 |
||
POST returns 500 on data already exists |
In Progress |
4.0.8, 5.0.7, 6.0.1 |
7.0.0 |
||
Incorrect operational state of device configuration with Invalid encrypted password |
In Progress |
4.0.8, 5.0.7, 6.0.0 |
7.0.0 |
||
Invalid NETCONF message triggers unnecessary parsing of partial message |
Resolved |
4.0.8, 5.0.9, 6.0.4 |
4.0.9, 5.0.10, 6.0.5, 7.0.0 |
||
Incorrect response for failed PATCH request |
Resolved |
4.0.8, 5.0.7, 6.0.0 |
4.0.9, 5.0.10, 6.0.5, 7.0.0 |
||
NetconfDeviceMount “Already initialized” error |
Resolved |
4.0.8, 5.0.7, 6.0.4 |
4.0.9, 5.0.10, 6.0.5, 7.0.0 |
||
Long delay in connection status update after connection issue |
Resolved |
3.0.9, 4.0.9, 5.0.9, 6.0.0, 6.0.5 |
5.0.10, 6.0.6, 7.0.0 |
Resolved Issues in SR1¶
The following table lists the issues resolved in Service Release 1.
Type |
Key |
Summary |
Resolution |
Fix Version(s) |
---|---|---|---|---|
Incorrect schema reference in root post link |
Done |
4.0.9, 5.0.8, 6.0.5, 7.0.0 |
||
OpenApi: XML payload for RPC is missing namespace |
Done |
4.0.9, 5.0.8, 6.0.5, 7.0.0 |
||
netconf-client-mdsal emits useless namespace in filter |
Done |
5.0.8, 6.0.5, 7.0.0 |
||
RestconfSchemaService return 500 if model was not found |
Done |
4.0.9, 5.0.9, 6.0.5, 7.0.0 |
||
Remove synchronization locking |
Done |
4.0.9, 5.0.9, 6.0.5, 7.0.0 |
||
OpenApi List show only string type for path parameters |
Done |
4.0.9, 5.0.10, 6.0.5, 7.0.0 |
||
OpenAPI Generates Incorrect ‘min-elements’ for XML Leaf-List |
Done |
4.0.9, 5.0.10, 6.0.5, 7.0.0 |
||
OpenAPI generate multiple resources/subresources in POST request |
Done |
4.0.9, 5.0.10, 6.0.5, 7.0.0 |
||
OpenAPI POST request generates incorrect XML example payload |
Done |
4.0.9, 5.0.10, 6.0.5, 7.0.0 |
||
OpenApi: Remove incorrect list POST requests |
Done |
4.0.9, 5.0.10, 6.0.5, 7.0.0 |
||
OpenApi Remove processModule method from DefinitionGenerator |
Done |
4.0.9, 5.0.10, 6.0.5, 7.0.0 |
||
Invalid NETCONF message triggers unnecessary parsing of partial message |
Done |
4.0.9, 5.0.10, 6.0.5, 7.0.0 |
||
Incorrect response for failed PATCH request |
Done |
4.0.9, 5.0.10, 6.0.5, 7.0.0 |
||
NetconfDeviceMount “Already initialized” error |
Done |
4.0.9, 5.0.10, 6.0.5, 7.0.0 |
||
OpenAPI: Use “example” instead of “default” |
Done |
6.0.5, 7.0.0 |
||
Upgrade SSHD to 2.11.0 |
Done |
4.0.9, 5.0.9, 6.0.5, 7.0.0 |
||
Throw exception when module cannot be found |
Done |
4.0.9, 5.0.9, 6.0.5, 7.0.0 |
||
Update NETCONF user guide for call-home |
Done |
4.0.9, 5.0.9, 6.0.5, 7.0.0 |
||
Replace whitelist with allowlist |
Done |
4.0.9, 5.0.9, 6.0.5, 7.0.0 |
||
Improve failed YANG patch error output |
Done |
4.0.9, 5.0.10, 6.0.5, 7.0.0 |
Known Issues in SR1¶
The following table lists the known issues that exist in Service Release 1.
Type |
Key |
Summary |
Status |
Affected Version(s) |
Fix Version(s) |
---|---|---|---|---|---|
Long delay in connection status update after connection issue |
Resolved |
3.0.9, 4.0.9, 5.0.9, 6.0.0, 6.0.5 |
5.0.10, 6.0.6, 7.0.0 |