<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic sync-from performance in NSO Developer Hub Discussions</title>
    <link>https://community.cisco.com/t5/nso-developer-hub-discussions/sync-from-performance/m-p/3423214#M58</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;What is the expected performance of NSO doing sync-from?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I have 110 alcatel "alu-sr" devices and sync from them takes quite some time, around 7 minutes. Last device that finished sync was "kjj-sr1".&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;lt;INFO&amp;gt; 6-May-2018::18:23:57.519 nso ncs[19682]: ncs syncing from kjj-sr1...&lt;/P&gt;&lt;P&gt;&amp;lt;INFO&amp;gt; 6-May-2018::18:23:57.832 nso ncs[19682]: ncs connecting NED kjj-sr1&lt;/P&gt;&lt;P&gt;&amp;lt;INFO&amp;gt; 6-May-2018::18:30:49.383 nso ncs[19682]: ncs syncing from kjj-sr1 ok&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;If i do single device sync-from that "kjj-sr1" then it is about a minute and thirty seconds:&lt;/P&gt;&lt;P&gt;&amp;lt;INFO&amp;gt; 6-May-2018::21:05:49.870 nso ncs[19682]: ncs syncing from kjj-sr1...&lt;/P&gt;&lt;P&gt;&amp;lt;INFO&amp;gt; 6-May-2018::21:07:23.059 nso ncs[19682]: ncs syncing from kjj-sr1 ok&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;It is still strangely long time. I can pull config over telnet in 17sec. Also i have a php script that translates most of config to json in ~1sec. So why it takes NSO to do the same job a minute and 30 seconds. What i'm missing?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Fri, 01 Mar 2019 12:09:34 GMT</pubDate>
    <dc:creator>rainnomm56</dc:creator>
    <dc:date>2019-03-01T12:09:34Z</dc:date>
    <item>
      <title>sync-from performance</title>
      <link>https://community.cisco.com/t5/nso-developer-hub-discussions/sync-from-performance/m-p/3423214#M58</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;What is the expected performance of NSO doing sync-from?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I have 110 alcatel "alu-sr" devices and sync from them takes quite some time, around 7 minutes. Last device that finished sync was "kjj-sr1".&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;lt;INFO&amp;gt; 6-May-2018::18:23:57.519 nso ncs[19682]: ncs syncing from kjj-sr1...&lt;/P&gt;&lt;P&gt;&amp;lt;INFO&amp;gt; 6-May-2018::18:23:57.832 nso ncs[19682]: ncs connecting NED kjj-sr1&lt;/P&gt;&lt;P&gt;&amp;lt;INFO&amp;gt; 6-May-2018::18:30:49.383 nso ncs[19682]: ncs syncing from kjj-sr1 ok&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;If i do single device sync-from that "kjj-sr1" then it is about a minute and thirty seconds:&lt;/P&gt;&lt;P&gt;&amp;lt;INFO&amp;gt; 6-May-2018::21:05:49.870 nso ncs[19682]: ncs syncing from kjj-sr1...&lt;/P&gt;&lt;P&gt;&amp;lt;INFO&amp;gt; 6-May-2018::21:07:23.059 nso ncs[19682]: ncs syncing from kjj-sr1 ok&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;It is still strangely long time. I can pull config over telnet in 17sec. Also i have a php script that translates most of config to json in ~1sec. So why it takes NSO to do the same job a minute and 30 seconds. What i'm missing?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 01 Mar 2019 12:09:34 GMT</pubDate>
      <guid>https://community.cisco.com/t5/nso-developer-hub-discussions/sync-from-performance/m-p/3423214#M58</guid>
      <dc:creator>rainnomm56</dc:creator>
      <dc:date>2019-03-01T12:09:34Z</dc:date>
    </item>
    <item>
      <title>Re: sync-from performance</title>
      <link>https://community.cisco.com/t5/nso-developer-hub-discussions/sync-from-performance/m-p/3423215#M59</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;You can always turn on southbound tracing to the device, it will chronicle what is happening, and how long.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;set devices device &amp;lt;dev-name&amp;gt; trace raw&lt;/P&gt;&lt;P&gt;request devices device &amp;lt;dev-name&amp;gt; disconnect&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 13.3333px;"&gt;request devices device &amp;lt;dev-name&amp;gt; connect&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 13.3333px;"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 13.3333px;"&gt;-Larry&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 07 May 2018 00:43:44 GMT</pubDate>
      <guid>https://community.cisco.com/t5/nso-developer-hub-discussions/sync-from-performance/m-p/3423215#M59</guid>
      <dc:creator>lmanor</dc:creator>
      <dc:date>2018-05-07T00:43:44Z</dc:date>
    </item>
    <item>
      <title>Re: sync-from performance</title>
      <link>https://community.cisco.com/t5/nso-developer-hub-discussions/sync-from-performance/m-p/3423216#M60</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I did that and in NSO:&lt;/P&gt;&lt;P&gt;- config pull is 25sec&lt;/P&gt;&lt;P&gt;- then it gives no output, i presume its translating config to xml for 43sec?&lt;/P&gt;&lt;P&gt;- then for some reason it is doing second time config pull for 25sec. For second config pull it is not doing translation.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;That particular device config is quite big:&lt;/P&gt;&lt;P&gt;- flattened (like juniper display set) config is 24 127 lines&lt;/P&gt;&lt;P&gt;- services from that are 23 618 lines&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I have my own scripts that I've used to analyze and prepare mass changes on those devices:&lt;/P&gt;&lt;P&gt;- config pull is about the same 25sec&lt;/P&gt;&lt;P&gt;- i do not have full config parser, only services, but that's 97% of config, and my php script with ~220 regex matches does parsing in 0.7 seconds:&lt;/P&gt;&lt;P&gt;&lt;EM&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; rain@ohoo:~/project/parse$ php test.php kjj-sr1&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&lt;EM&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; file load: 0.0027048587799072&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&lt;EM&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Total: 0.71830701828003&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I do not understand how it takes NSO 43sec to do a job that should be like 1sec. Granted i do not do any database merge I just write json output to file, but still that's quite a time difference. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I have hourly cron running for those alcatel devices. I do not pull config, i use configuration backup files. My configuration parser is not threaded, it does parsing by single device and still, the whole lot (110 devices) takes about 30sec. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Setting my whine above aside. Can anybody give some indication of real performance of NSO server.&lt;/P&gt;&lt;P&gt;My test NSO server is debian9 virtual-machine with (2CPU, 16GB ram and 80GB hdd).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Device count:&lt;/P&gt;&lt;P&gt;xxx@ncs&amp;gt; show devices list | count&lt;/P&gt;&lt;P&gt;Count: 113 lines&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Config lines count:&lt;/P&gt;&lt;P&gt;xxx@ncs&amp;gt; show configuration devices | display set | count&lt;/P&gt;&lt;P&gt;Count: 341137 lines&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;It takes over 7 minutes to do "sync-from" on those devices.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 07 May 2018 07:35:27 GMT</pubDate>
      <guid>https://community.cisco.com/t5/nso-developer-hub-discussions/sync-from-performance/m-p/3423216#M60</guid>
      <dc:creator>rainnomm56</dc:creator>
      <dc:date>2018-05-07T07:35:27Z</dc:date>
    </item>
    <item>
      <title>Re: sync-from performance</title>
      <link>https://community.cisco.com/t5/nso-developer-hub-discussions/sync-from-performance/m-p/3423217#M61</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;The NSO parser may take a little longer than your script to consume the config, since it's a general parser, but I don't think much time is spent there with NSO either. Most of that time is likely spent validating the configuration. Your script is not doing anything with the result, while NSO has to ensure all the constraints in the model are upheld, compute the diff, store that diff in the database and communicate the diff to any subscribers, all in a transactional manner.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 08 May 2018 08:52:05 GMT</pubDate>
      <guid>https://community.cisco.com/t5/nso-developer-hub-discussions/sync-from-performance/m-p/3423217#M61</guid>
      <dc:creator>Jan Lindblad</dc:creator>
      <dc:date>2018-05-08T08:52:05Z</dc:date>
    </item>
    <item>
      <title>Re: sync-from performance</title>
      <link>https://community.cisco.com/t5/nso-developer-hub-discussions/sync-from-performance/m-p/3423218#M62</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Another question confusing matter. On live ISP network nobody can model from day 1 all the services. Usually you go live with couple most used services and leave some of service in old/manual provisioning. That automatically means that NSO will be out of sync with the device quite a lot of time. So, quite often i have to do sync-from and reconcile services just to be sure that everything is in sync. That adds quite a lot of delay.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;On my testing i went for hierarchical service model for re-usability (mostly in tier3 part)&lt;/P&gt;&lt;P&gt;Tier1 - Product from sales system with all it's parameters, key is product_id - it's job is to provision Tier2 technical solution, no device config&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Tier2 - Technical solution (like l3vpn, l2vpn, etc) - it's jobs is pull/allocate technical parameters (vlan, ip, etc) and create Tier3 services, no device config&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Tier3 - single network element config, here happens yang data to device config&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I chose to separate Tier2-technical from Tier1-product, because not all Tier2-l3vpn have single one-to-one mapped Tier1 counter parts. They might be older products, or internally used solutions or some temporary stuff. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;So my basic l3vpn is looking like below. Currently it is covering only: service router + aggregation, no access device or cpe.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;service - T1-"l3vpn-remote-office-no-cpe" {key: "product-id"&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; service - T2-l3vpn-remote-office { key: "vprn-service-id interface"&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; service T3-vrf-ip-interface {key: "device-name service-id interface"}&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; service T3-mpls-l2pipe {key: "device-name service-id"}&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/P&gt;&lt;P&gt;}&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10pt;"&gt;My issue is that doing reconcile for "T3-vrf-ip-interface" on my most config lines device "kjj-sr1" is taking 10 minutes. After that i have to reconcile from t3-&amp;gt;t2 and t2-&amp;gt;t1, then I have full sync of services.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; - currently my most busy device would have at least 1.5min (config sync) and 10min reconcile for T3 = 11.5min&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; - what happens when T3-mpls-l2pipe device is also out of sync, also i planned to add access network and cpe to the product/service as well. I do not have live data to back me up, but how about 15..30min delay to &lt;/SPAN&gt;&lt;SPAN style="font-size: 13.3333px;"&gt;deliver&lt;/SPAN&gt;&lt;SPAN style="font-size: 10pt;"&gt; a new service or change some parameter on existing one from automation side alone? &lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10pt;"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10pt;"&gt;That does not sound very automated &lt;IMG src="https://community.cisco.com/legacyfs/online/emoticons/happy.png" /&gt;&amp;nbsp; more like cheap manual labor hidden inside a black box.&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 08 May 2018 21:26:32 GMT</pubDate>
      <guid>https://community.cisco.com/t5/nso-developer-hub-discussions/sync-from-performance/m-p/3423218#M62</guid>
      <dc:creator>rainnomm56</dc:creator>
      <dc:date>2018-05-08T21:26:32Z</dc:date>
    </item>
    <item>
      <title>Re: sync-from performance</title>
      <link>https://community.cisco.com/t5/nso-developer-hub-discussions/sync-from-performance/m-p/3423219#M63</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Sry for posting before finalizing testing. Initial reconcile of T3 took 10min. Today 6 new services have been configured to "kjj-sr1" and T3 reconcile took ~45sec. That is ok. Of course this is just one device in the service path, but in general this is ok performance. &lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 09 May 2018 06:57:07 GMT</pubDate>
      <guid>https://community.cisco.com/t5/nso-developer-hub-discussions/sync-from-performance/m-p/3423219#M63</guid>
      <dc:creator>rainnomm56</dc:creator>
      <dc:date>2018-05-09T06:57:07Z</dc:date>
    </item>
  </channel>
</rss>

