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¶
New NETCONF release offers lightweight Netty-based RESTCONF Northbound on port 8182. For more details see: NETCONF-873.
The OpenAPI component modernization has continued by introducing parameters to load documentation to width and depth which helps users to scale document as needed. For mode details see: NETCONF-1225 and NETCONF-1298.
New Features¶
Deprecated and Removed Features¶
There are no deprecated or removed features.
Resolved Issues¶
The following table lists the issues resolved in this release.
Type |
Key |
Summary |
Resolution |
Fix Version(s) |
|---|---|---|---|---|
Stop SSE stream on subscription termination |
Done |
9.0.0 |
||
Netty RESTCONF endpoint freezes when request handler throws |
Done |
8.0.8, 9.0.0 |
||
Semaphore concurrent RPC limit permit not released after session down in NetconfDeviceCommunicator |
Done |
7.0.12, 8.0.8, 9.0.0 |
||
Deadlock risk with Session Lock & KeepaliveTask Synchronization |
Done |
7.0.12, 8.0.8, 9.0.0 |
||
Unable to update leaf-list data with the merge operation in a YANG-PATCH request |
Done |
7.0.12, 8.0.8, 9.0.0 |
||
Unable to update leaf-list data with PUT request on the device |
Done |
7.0.12, 8.0.8, 9.0.0 |
||
Getting leaf-list data from device fails with a 500 Server Error |
Done |
7.0.12, 8.0.8, 9.0.0 |
||
IETF get-config is failing with rpc-reply transformation error |
Done |
7.0.12, 8.0.8, 9.0.0 |
||
Restconf returns 500 for invalid PUT data |
Done |
8.0.8, 9.0.0 |
||
Restconf return 500 Server Error if YangPatch body is incorrect |
Done |
7.0.12, 8.0.8, 9.0.0 |
||
Call Home Device Connection Failure |
Done |
8.0.4, 9.0.0 |
||
Device attempts to reconnect even if client config throws exception |
Done |
7.0.11, 8.0.4, 9.0.0 |
||
Netconf does not attempt reconnection if initial session is closed |
Done |
7.0.12, 8.0.6, 9.0.0 |
||
Refactor HTTPServerSession pipeline setup |
Done |
9.0.0 |
||
Reconfigured device failed to reconnect with: IllegalStateException: Transaction factory was closed. No further operations allowed. |
Done |
7.0.11, 8.0.4, 9.0.0 |
||
Description of subscription query parameters is wrong |
Done |
7.0.11, 8.0.4, 9.0.0 |
||
HTTP/2 cleartext upgrade flow fails for Java built in HttpClient |
Done |
8.0.4, 9.0.0 |
||
Reconnection failure after deleting and re-adding call-home devices |
Done |
7.0.11, 8.0.4, 9.0.0 |
||
StreamWriterFacade.warnLegacyAttribute() warning on rpc-reply message-id |
Done |
7.0.12, 8.0.6, 9.0.0 |
||
Integrate SubscriptionStateService |
Done |
9.0.0 |
||
Refactor SubscriptionStateMachine |
Done |
9.0.0 |
||
Remove transaction to update mountpoint to connecting state before device removal |
Done |
7.0.12, 8.0.4, 9.0.0 |
||
Offload transport-http request processing |
Done |
8.0.4, 9.0.0 |
||
Add transport.http.AcceptHeader and its parser |
Cannot Reproduce |
8.0.4, 9.0.0 |
||
Require properly-parameterized TransportChannelListener |
Done |
9.0.0 |
||
OpenAPI: improve parameters validation |
Done |
8.0.1, 9.0.0 |
||
Migrate to Apache Pekko |
Done |
9.0.0 |
||
Expose support for TCP MD5 Signature option from NettyTransportSupport |
Done |
9.0.0 |
||
Add filtering to notification subscriptions |
Done |
9.0.0 |
||
Expose NETCONF event stream for RESTCONF subscriptions |
Done |
9.0.0 |
||
Add support for RFC 8639 notification subscriptions |
Done |
9.0.0 |
||
Implement stop-time |
Done |
9.0.0 |
||
Refactor ReceiverHolder into RestconfStream class |
Won’t Do |
9.0.0 |
||
Get stream info for subscription |
Done |
9.0.0 |
||
Enable subscription filtering tests |
Done |
9.0.0 |
||
Apply counting of excluded notifications |
Won’t Do |
9.0.0 |
||
Refactor subscription state service |
Done |
9.0.0 |
||
Populate subtree filters using DTCL |
Done |
9.0.0 |
||
Implement (databind) SubtreeMatcher |
Done |
9.0.0 |
||
Implement (databind) SubtreeFilterWriter |
Done |
9.0.0 |
||
Implement (databind) SubtreeFilterReader |
Done |
9.0.0 |
||
Implement counters |
Done |
9.0.0 |
||
Add netconf.databind.subtree.SubtreeFilter |
Done |
9.0.0 |
||
Add netconf.api.subtree.SubtreeFilter |
Done |
9.0.0 |
||
Test NETCONF stream is updated when model context changes |
Duplicate |
9.0.0 |
||
Create integration test for writing filter into config |
Done |
9.0.0 |
||
Improve stream existence check with subscribed stream registry |
Done |
9.0.0 |
||
Provide Java based tests for OpenApi over Netty |
Done |
9.0.0 |
||
Migrate restconf-openapi to Netty |
Done |
9.0.0 |
||
OpenAPI: add metadata endpoint |
Done |
8.0.2, 9.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) |
|---|---|---|---|---|---|
Stop-time is not removed from datastore during modifySubscription |
Confirmed |
9.0.0 |
10.0.0 |