Email us : sales@yumaworks.com

Performance

Fastest NETCONF Server Available

Load Your Configuration: Open Source=19 minutes! YumaPro takes 0.2 seconds!

Real-World networks involve complex system configurations. YANG constraints are used to automate the validation of these configurations, and all constraints must be validated before a configuration change can take effect. YANG constraints include:

  • Must statements (referential integrity)
  • When statements (conditional data nodes)
  • Leafref statements (cross references)

Details of the tests

The YumaPro SDK server transaction engine has been optimized so it is now much faster, even if the candidate database is used. Only the nodes affected by a commit or edit operation on the running configuration will be processed during a transaction. Performance enhancements and new feature development bring continued performance improvements to the netconfd-pro server.

The tests start with the server in its factory default configuration and using the –target=running server configuration parameter.

Boot-time Load Configuration Performance

Test 1: Boot the server with a startup config of 4,000 VLAN interfaces using YANG Constraints

A critical measure of database performance is how long it takes to load and validate the running configuration from non-volatile storage. A device that takes a long time loading its configuration after a power outage can have a severe impact on network availability.

Test 1 uses ietf-interface.yang augmented with ex-vlan.yang, both defined in RFC 7223, to simulate a device boot scenario. The server uses a startup-configuration with 4,000 interfaces that are augmented with VLANs using “must”, “when” and “leafref” constraints.

For more information on how constraints are used see the Knowledge Base article: “YANG Constraints Explained”

Runtime Edit Transaction Performance

Edit transaction performance is critical for provisioning applications. Test 2-4 cover typical provisioning tasks. One of the most thorough tests possible is to create a lot of the same type of list entries, as in Test 3, since that is how a typical provisioning application works.

Test 2: Add 1 VLAN interface

This test adds 1 VLAN interface to the server.

Test 3: Add 4,000 VLAN interfaces

This test adds 4,000 VLAN interface to the server.

Test 4: Delete 1 interface

This test deletes 1 VLAN interface to the server.

YANG used in the tests

The data model has the following structure:

+‑‑rw interfaces
| +‑‑rw interface* [name]
|    +‑‑rw name                        string
|    +‑‑rw description?                string
|    +‑‑rw type                        identityref
|    +‑‑rw enabled?                    boolean
|    +‑‑rw link-up-down-trap-enable?   enumeration

Via augments:
|    +‑‑rw vlan-tagging?               boolean
|    +‑‑rw base-interface?             leafref
|    +‑‑rw vlan-id?                    uint16

YumaPro’s Server significantly outperforms Open Source servers in terms of transaction performance, but YumaPro SDK provides many other advantages over Open Source tools as well. See the difference between Open Source and YumaPro SDK.

To review more in-depth test comparisons please read our Knowledge Base article YumaPro Performance Advantages