cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
643
Views
0
Helpful
2
Replies

NSO 6.1 generates empty <filter/> for sync-from

sm000x
Level 1
Level 1

Hi,

I recently experienced a strange issue.
When I did a sunc-from to a vendor's device, sync-from returns ok but no data came back.

After examine the trace log, no data back is because NSO sent empty filter in
<get-config>. Here is the trace log:

>>>>out 3-Sep-2024::08:17:32.010 user: admin/132 thandle 583 hostname mtnjdslncs05.mt.att.com device dn-test trace-id=138d2d45-d5b6-4440-bf41-907ae2846830
<hello xmlns="urn:ietf:params:xml:ns:netconf:base:1.0">
<capabilities>
<capability>urn:ietf:params:netconf:base:1.0</capability>
<capability>urn:ietf:params:netconf:base:1.1</capability>
</capabilities>
</hello>

<<<<in 3-Sep-2024::08:17:35.617 user: admin/132 thandle 583 hostname mtnjdslncs05.mt.att.com device dn-test trace-id=138d2d45-d5b6-4440-bf41-907ae2846830

You are now in Privilege Class (Netconf-FULL-ACCESS)
<hello xmlns="urn:ietf:params:xml:ns:netconf:base:1.0">
<capabilities>
<capability>urn:ietf:params:netconf:base:1.0</capability>
<capability>urn:ietf:params:netconf:capability:candidate:1.0</capability>
<capability>urn:ietf:params:netconf:capability:validate:1.0</capability>
<capability>urn:ietf:params:netconf:capability:confirmed-commit:1.0</capability>
<capability>urn:ietf:params:netconf:base:1.1</capability>
<capability>urn:ietf:params:netconf:capability:validate:1.1</capability>
<capability>urn:ietf:params:netconf:capability:with-defaults:1.0?basic-mode=explicit&amp;also-supported=report-all</capability>
<capability>urn:ietf:params:xml:ns:yang:ietf-netconf-monitoring?module=ietf-netconf-monitoring&amp;revision=2010-10-04</capability>
<capability>urn:ietf:params:xml:ns:yang:ietf-yang-library?module=ietf-yang-library&amp;revision=2016-06-21</capability>
</capabilities>
<session-id>3042746</session-id>
</hello>

>>>>out 3-Sep-2024::08:17:35.621 user: admin/132 thandle 583 hostname mtnjdslncs05.mt.att.com device dn-test trace-id=138d2d45-d5b6-4440-bf41-907ae2846830 session-id=3042746
<rpc xmlns="urn:ietf:params:xml:ns:netconf:base:1.0"
message-id="1">
<get-config>
<source>
<running/>
</source>
<filter/>
</get-config>
</rpc>

<<<<in 3-Sep-2024::08:17:35.732 user: admin/132 thandle 583 hostname mtnjdslncs05.mt.att.com device dn-test trace-id=138d2d45-d5b6-4440-bf41-907ae2846830 session-id=3042746
<rpc-reply xmlns="urn:ietf:params:xml:ns:netconf:base:1.0"
message-id="1">
<data/>
</rpc-reply>


Does anyone know why NSO sent <filter/>?

THX
sm000x

2 Accepted Solutions

Accepted Solutions

rogaglia
Cisco Employee
Cisco Employee

NSO filters the capabilities that I has negotiated with the device. You should check this using the following command:

admin@ncs# devices device 540 check-yang-modules verbose

It will report what capbalities you have in the NED vs what the device is reporting. There is surely a mismatch here.  

If you are using the NETCONF NED Builder, you can reach out to your Cisco rep. and move to the new "generic NETCONF NED framework" which gives you more control on what NSO does. In particular, there is a ned-setting to control this behavior:

    - transaction get-config-no-filter <true|false> (default false)

      Perform full get-config without specifying any filter at all. This applies to operations like
      full sync-from and compare-config.

View solution in original post

Hi, Rogalia:

Thank you so much for the reply. It is very helpful. I certainly learn new things from your reply.

Thank you again
sm000x

View solution in original post

2 Replies 2

rogaglia
Cisco Employee
Cisco Employee

NSO filters the capabilities that I has negotiated with the device. You should check this using the following command:

admin@ncs# devices device 540 check-yang-modules verbose

It will report what capbalities you have in the NED vs what the device is reporting. There is surely a mismatch here.  

If you are using the NETCONF NED Builder, you can reach out to your Cisco rep. and move to the new "generic NETCONF NED framework" which gives you more control on what NSO does. In particular, there is a ned-setting to control this behavior:

    - transaction get-config-no-filter <true|false> (default false)

      Perform full get-config without specifying any filter at all. This applies to operations like
      full sync-from and compare-config.

Hi, Rogalia:

Thank you so much for the reply. It is very helpful. I certainly learn new things from your reply.

Thank you again
sm000x