NETCONF

Overview

Behavior Changes

  • N/A

New and Modified Features

  • An option was provided in YANG tools that preserves the ordering of requests as defined in the YANG file when formulating the NETCONF payload. This help devices that are strict on the ordering of elements. To do this, the JAVA parameter “org.opendaylight.yangtools.yang.data.impl.schema.builder.retain-child-order” needs to be set to true before starting Karaf.

  • NETCONF-608: Change NETCONF keepalives are not sent during any large payload reply. Stop to send the keepalive RPC to device, while ODL is waiting/processing the response from the device.

  • An item was added to optionally not issue lock/unlock for NETCONF edit-config issues. This is only for devices that can handle multiple requests through a queue. Please contact the vendor before enabling this option, since all transaction semantics are off by default if this option is set for a device. This option can be set by issuing a PUT RESTCONF call. For example:

    /restconf/config/netconf-node-optional:netconf-node-fields-optional/topology/topology-netconf/node/{node-id}/datastore-lock
    
    {
      "netconf-node-optional:datastore-lock"  : {
      "datastore-lock-allowed" : false
      }
    }
    
  • An option was added at the device mount time to lock or unlock the datastore before issuing an edit-config command. Default value is true. If set to false, then do not issue a lock/unlock before issuing edit-config.

  • The get-config RPC functionality of the ietf-netconf.yang file is available for mounted NETCONF devices. This functionality enables users to get around not supported features on Restconf, such as NETCONF filtering. Using this method, users can custom construct any NETCONF request.

  • A flexible mount point naming strategy was added, so that users can now configure mount point names to either contain IP address and port (default), or just the IP address. This feature was added for the NETCONF call-home feature.

Deprecated Features

  • N/A

Resolved Issues

Bug ID Description
NETCONF-24 There is an assumption that a RESTCONF URL behaves just as an HTTP does by squashing multiple slashes into one. However, an error is still thrown when there is an empty element in this case.
NETCONF-320 The query parameter field does not work when there is more than one nested field.
NETCONF-366 An output-less RPC must either return an output element or status code 204. Currently, this does not occur.
NETCONF-448 Support for a YANG1.1 action should be added to MDSAL.
NETCONF-527 Currently, netconf-testtool uses /tmp directory to save temporary key file. However, writing temporary data to a file system must be avoided, because it makes some test tool deployments difficult.
NETCONF-528 The netconf-testtool configuration should accept Set<YangModuleInfo> as a model list. Currently, this does not occur.
NETCONF-608 Currently, NETCONF keepalives are sent during large payload replies. This should not occur.
NETCONF-609 In corner cases, there is a security issue when logging passwords in plain text.
NETCONF-611 In some cases, an attempt is made by NETCONF to remount regardless of the error-type.
NETCONF-612 In corner cases, a NETCONF mount failed in the master.
NETCONF-613 In rare cases, adding a device configuration using POST failed in Sodium.
NETCONF-614 The NETCONF callhome server does not display the disconnect cause.
NETCONF-615 Callhome will throw NPEs in DTCL.
NETCONF-616 Yangtools does not process the output of get-config RPC in the ietf-netconf YANG model.
NETCONF-619 Implementing code changed for YANG1.1 action for Restconf Layer.
NETCONF-620 An action contained in an augment-prepare of a request failed.
NETCONF-622 Starting Karaf in latest distribution failed with an exception.
NETCONF-623 Currently, it is not possible to receive notifications through the RESTCONF RFC8040 implementation.
NETCONF-624 In corner cases, the NETCONF testtool did not connect to OpenDaylight.
NETCONF-629 Currently, there is no support for disabling of the lock/unlock feature for NETCONF requests.
NETCONF-630 The aacceptance/E2E test needs to be added to the testtool.
NETCONF-633 Updates are required for the user guide with the information on how to use custom RPC with test-tool.
NETCONF-637 In some cases, RESTCONF does not initialize when the used models have deviations.

Known Issues

Bug ID Description
NETCONF 644 In some cases, the standard edit-config failed when the module augmenting base NETCONF was retrieved from a device.