Skip to content

Commit

Permalink
gNMI-1.14 TestPlan: OpenConfig metadata consistency during large conf…
Browse files Browse the repository at this point in the history
…ig push (openconfig#2152)

* Create feature.textproto

* Create README.md

* draft 1

* cleanup

* 1st draft

* Update README.md

* Update README.md

* Update README.md

* Update README.md

* Update feature/system/gnmi/metadata/tests/lagre_set_consistency_test/README.md

Co-authored-by: Darren Loher <[email protected]>

* Update README.md

---------

Co-authored-by: Darren Loher <[email protected]>
Co-authored-by: sachendras <[email protected]>
  • Loading branch information
3 people authored Nov 22, 2023
1 parent 8d94718 commit b96a482
Showing 1 changed file with 42 additions and 0 deletions.
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
# gNMI-1.14 OpenConfig metadata consistency during large config push

## Summary
This test verify if OpenConfig metadata leaf at root is updated according to pushed config and not reverted or otherway modified, Even if many rapid, concurrent non-write requests are served while setRequest is in process (and SetResponse is not send yet).
In case metadata leaf at root value changes, test fails.

## Topology
dut.testbed

## Procedure

* prepare 2 large OpenConfig configurations that only differs in root-level netadata/annotation - 1st_LARGE_CONFIGURATION and 2nd_LARGE_CONFIGURATION. Configuration should exercise following branches of Openconfig:
* /interfaces/
* /network-instances/
* /qos/
* /system/
* /routing-policy/
* /components/
* /sampling/
* /lldp/
* /lacp/
* /protobuf-metadata
* Push 1st_LARGE_CONFIGURATION and wait for SetResponse that confirm push was sucesfull.
* Send subscribe `ONCE` for configuration root-level metadata and verify that it is identical corresponding root-level metadata of 1st_LARGE_CONFIGURATION.
* For REQUEST of type (GetRequest, SubscribeRequest, CapabilityRequest)
* Repeat sending rapidly subsequent REQUEST requests for configuration root-level metadata (GetRequest, SubscribeRequest).
* While above REQUESTS are send, push SetRequest replace with 2nd_LARGE_CONFIGURATION.
* After SetResponse is recived confirming sucesfull push of 2nd_LARGE_CONFIGURATION:
* stop sending REQUEST requests
* wait 5 seconds
* SubscribeRequest once for configuration root-level metadata and verify that it is identical corresponding root-level metadata of 2nd_LARGE_CONFIGURATION.

## Configuration path coverage
* /@/openconfig-metadata:protobuf-metadata

> Note: WBB implementations need not support this annotation at paths deeper than the root (i.e., a configuration that contains openconfig-metadata:protobuf-metadata at any level other than under the root can be rejected). The WBB device implementation can map this to an internal path to store the configuration.
## Telemetry path coverage
* /@/openconfig-metadata:protobuf-metadata

## Minimum DUT platform
FFF

0 comments on commit b96a482

Please sign in to comment.