Skip to content

Commit

Permalink
v0.0.1-3807 (#122)
Browse files Browse the repository at this point in the history
* v0.0.1-3798

* upgrade versions

* adding latest conformance

---------

Co-authored-by: biplamal <[email protected]>
  • Loading branch information
biplamal and biplamal authored Feb 17, 2023
1 parent dea7c97 commit d4fdb79
Show file tree
Hide file tree
Showing 8 changed files with 69 additions and 25 deletions.
2 changes: 1 addition & 1 deletion conformance
Submodule conformance updated 80 files
+145 −69 .github/workflows/cicd.yml
+1 −0 .gitignore
+5 −0 .vscode/settings.json
+7 −4 deployments/ixia-c-config.yaml
+112 −28 do.sh
+1 −1 examples/quickstart_test.go
+1 −1 examples/test_quickstart.py
+46 −16 feature/b2b/bgp/ebgp_route_prefix_test.go
+41 −11 feature/b2b/bgp/test_ebgp_route_prefix.py
+18 −16 feature/b2b/interfaces/ip_neighbors_test.go
+16 −13 feature/b2b/interfaces/test_ip_neighbors.py
+44 −18 feature/b2b/isis/isis_lsp_p2p_l12_test.go
+35 −15 feature/b2b/isis/test_isis_lsp_p2p_l12.py
+155 −0 feature/b2b/lag/lag_lacp_partner_test.go
+96 −0 feature/b2b/lldp/lldp_neighbors_test.go
+10 −10 feature/b2b/packet/tcp/tcp_port_incr_decr_test.go
+10 −10 feature/b2b/packet/tcp/tcp_port_value_test.go
+10 −10 feature/b2b/packet/tcp/tcp_port_values_test.go
+5 −7 feature/b2b/packet/tcp/test_tcp_port_incr_decr.py
+5 −7 feature/b2b/packet/tcp/test_tcp_port_value.py
+5 −7 feature/b2b/packet/tcp/test_tcp_port_values.py
+9 −9 feature/b2b/packet/udp/ipv6_udp_port_values_test.go
+4 −6 feature/b2b/packet/udp/test_ipv6_udp_port_values.py
+4 −6 feature/b2b/packet/udp/test_udp_port_incr_decr.py
+4 −6 feature/b2b/packet/udp/test_udp_port_value.py
+4 −6 feature/b2b/packet/udp/test_udp_port_values.py
+9 −9 feature/b2b/packet/udp/udp_port_incr_decr_test.go
+9 −9 feature/b2b/packet/udp/udp_port_value_eth0_test.go
+9 −9 feature/b2b/packet/udp/udp_port_value_test.go
+9 −9 feature/b2b/packet/udp/udp_port_values_test.go
+4 −7 feature/b2b/packet/vxlan/test_vxlan_inner_ipv4.py
+4 −7 feature/b2b/packet/vxlan/test_vxlan_inner_ipv6.py
+9 −9 feature/b2b/packet/vxlan/vxlan_inner_ipv4_test.go
+9 −9 feature/b2b/packet/vxlan/vxlan_inner_ipv6_test.go
+3 −0 feature/b2b/readme.md
+10 −10 feature/b2blag/3p3p/udp_static_lag_test.go
+236 −0 feature/pdp/interfaces/ip_neighbors_oc_test.go
+22 −21 feature/pdp/interfaces/ip_neighbors_test.go
+18 −8 go.mod
+142 −17 go.sum
+2 −1 helpers/dut/api.go
+111 −0 helpers/dut/gnmi.go
+12,264 −0 helpers/dut/gnmi/acl/acl-0.go
+9,176 −0 helpers/dut/gnmi/ateflow/ateflow-0.go
+2,232 −0 helpers/dut/gnmi/definedsets/definedsets-0.go
+10,191 −0 helpers/dut/gnmi/enum.go
+3,639 −0 helpers/dut/gnmi/enum_map.go
+528 −0 helpers/dut/gnmi/gnmipath/gnmipath.go
+57,892 −0 helpers/dut/gnmi/interfaces/interfaces-0.go
+2,386 −0 helpers/dut/gnmi/keychain/keychain-0.go
+4,136 −0 helpers/dut/gnmi/lacp/lacp-0.go
+7,072 −0 helpers/dut/gnmi/lldp/lldp-0.go
+467,363 −0 helpers/dut/gnmi/networkinstance/networkinstance-0.go
+54,752 −0 helpers/dut/gnmi/platform/platform-0.go
+35,540 −0 helpers/dut/gnmi/qos/qos-0.go
+15,206 −0 helpers/dut/gnmi/routingpolicy/routingpolicy-0.go
+4,044 −0 helpers/dut/gnmi/sampling/sampling-0.go
+44,308 −0 helpers/dut/gnmi/schema.go
+204,857 −0 helpers/dut/gnmi/structs-0.go
+35,757 −0 helpers/dut/gnmi/system/system-0.go
+22,541 −0 helpers/dut/gnmi/terminaldevice/terminaldevice-0.go
+3,297 −0 helpers/dut/gnmi/union.go
+4 −3 helpers/otg/api.go
+1 −1 helpers/otg/capture.go
+122 −1 helpers/otg/metrics.go
+1 −1 helpers/otg/misc.go
+87 −2 helpers/otg/otg.py
+146 −5 helpers/otg/states.go
+1 −1 helpers/otg/tput.go
+1 −1 helpers/plot/plot.go
+1 −3 helpers/testconfig/config.go
+10 −10 performance/b2b/ebgp_route_prefix_perf_test.go
+6 −6 performance/b2b/udp_mesh_flows_perf_test.go
+8 −8 performance/b2b/udp_tput_perf_test.go
+2 −2 performance/client/config_serdes_perf_test.go
+0 −1 performance/client/test_config_serdes_perf.py
+1 −8 pytest.ini
+33 −29 readme.md
+1 −1 requirements.txt
+4 −4 versions.yaml
20 changes: 10 additions & 10 deletions deployments/k8s/components/images/kustomization.yaml
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
apiVersion: kustomize.config.k8s.io/v1alpha1
kind: Component

# Release: https://github.com/open-traffic-generator/ixia-c/releases/tag/v0.0.1-3724
# Release: https://github.com/open-traffic-generator/ixia-c/releases/tag/v0.0.1-3807
images:
- name: ixia-c-controller
newName: ghcr.io/open-traffic-generator/ixia-c-controller
newTag: "0.0.1-3724"
- name: ixia-c-gnmi-server
newName: ghcr.io/open-traffic-generator/ixia-c-gnmi-server
newTag: "1.10.6"
- name: ixia-c-traffic-engine
newName: ghcr.io/open-traffic-generator/ixia-c-traffic-engine
newTag: "1.6.0.24"
- name: ixia-c-controller
newName: ghcr.io/open-traffic-generator/ixia-c-controller
newTag: "0.0.1-3807"
- name: ixia-c-gnmi-server
newName: ghcr.io/open-traffic-generator/ixia-c-gnmi-server
newTag: "1.10.14"
- name: ixia-c-traffic-engine
newName: ghcr.io/open-traffic-generator/ixia-c-traffic-engine
newTag: "1.6.0.30"
2 changes: 1 addition & 1 deletion docs/faq.md
Original file line number Diff line number Diff line change
Expand Up @@ -69,7 +69,7 @@ What version of the Open Traffic Generator spec does Ixia-c implement?
</summary>
<br>

Ixia-c implements version **[v0.10.7](https://github.com/open-traffic-generator/models/releases/tag/v0.10.7)** of the Open Traffic Generator Data Model. You can view the model [here](https://redocly.github.io/redoc/?url=https://raw.githubusercontent.com/open-traffic-generator/models/v0.10.7/artifacts/openapi.yaml).
Ixia-c implements version **[v0.10.9](https://github.com/open-traffic-generator/models/releases/tag/v0.10.9)** of the Open Traffic Generator Data Model. You can view the model [here](https://redocly.github.io/redoc/?url=https://raw.githubusercontent.com/open-traffic-generator/models/v0.10.9/artifacts/openapi.yaml).

</details>

Expand Down
12 changes: 6 additions & 6 deletions docs/hello-snappi.md
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@ And installing python packages:
* [dpkt](https://pypi.org/project/dpkt/) - for processing `.pcap` files.

```sh
python -m pip install --upgrade snappi==0.10.5 dpkt
python -m pip install --upgrade snappi==0.10.7 dpkt
```

### Create API Handle
Expand Down Expand Up @@ -107,17 +107,17 @@ We now need to construct traffic configuration to be sent to controller. We'll n
> By default, API requests in snappi are made over HTTPS with payloads as a JSON string. Since each object in snappi inherits `SnappiObject` or `SnappiIter`, they all share a common method called `.serialize()` and `deserialize()`, used internally during API requests, for valid conversion to / from a JSON string. We'll discuss about more such conveniences offered by snappi along the way.
<details>
<summary><b>Expand</b> this section for details on how to effectively navigate through <a href="https://redocly.github.io/redoc/?url=https://raw.githubusercontent.com/open-traffic-generator/models/v0.10.7/artifacts/openapi.yaml">snappi API documentation</a>.</summary><br/>
<summary><b>Expand</b> this section for details on how to effectively navigate through <a href="https://redocly.github.io/redoc/?url=https://raw.githubusercontent.com/open-traffic-generator/models/v0.10.9/artifacts/openapi.yaml">snappi API documentation</a>.</summary><br/>

The objects and methods (for API calls) in snappi are auto-generated from an [Open API Generator YAML file](https://redocly.github.io/redoc/?url=https://raw.githubusercontent.com/open-traffic-generator/models/v0.10.7/artifacts/openapi.yaml). This file adheres to [OpenAPI Specification](https://github.com/OAI/OpenAPI-Specification), which can (by design) also be rendered as an interactive API documentation.
The objects and methods (for API calls) in snappi are auto-generated from an [Open API Generator YAML file](https://redocly.github.io/redoc/?url=https://raw.githubusercontent.com/open-traffic-generator/models/v0.10.9/artifacts/openapi.yaml). This file adheres to [OpenAPI Specification](https://github.com/OAI/OpenAPI-Specification), which can (by design) also be rendered as an interactive API documentation.

[ReDoc](https://redocly.github.io/redoc/) is an open-source tool that does this. It accepts a link to valid OpenAPI YAML file and generates a document where all the methods (for API calls) are mentioned in the left navigation bar and for each selected method, there's a request / response body description in the center of the page. These descriptions lay out the entire object tree documenting each node in details.

The snappi API documentation linked above will always point to API version **v0.10.7**. To use a different API version instead:
The snappi API documentation linked above will always point to API version **v0.10.9**. To use a different API version instead:

* Identify API version by opening <a href="https://github.com/open-traffic-generator/snappi/releases/download/v0.10.7/models-release">this link</a> in a browser and replacing **v0.10.7** in URL with intended snappi version.
* Identify API version by opening <a href="https://github.com/open-traffic-generator/snappi/releases/download/v0.10.9/models-release">this link</a> in a browser and replacing **v0.10.9** in URL with intended snappi version.

* Open <a href="https://redocly.github.io/redoc/?url=https://raw.githubusercontent.com/open-traffic-generator/models/v0.10.7/artifacts/openapi.yaml">this link</a> in a browser after replacing **v0.10.7** in URL with intended API version.
* Open <a href="https://redocly.github.io/redoc/?url=https://raw.githubusercontent.com/open-traffic-generator/models/v0.10.9/artifacts/openapi.yaml">this link</a> in a browser after replacing **v0.10.9** in URL with intended API version.

</details>

Expand Down
8 changes: 8 additions & 0 deletions docs/news.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,13 @@
# News

* **17th February, 2023**: Ixia-c version 0.0.1 (build 3807) released. This conforms to **[v0.10.9](https://redocly.github.io/redoc/?url=https://raw.githubusercontent.com/open-traffic-generator/models/v0.10.9/artifacts/openapi.yaml)** of the Open Traffic Generator Models specification.

**Announcement**

`ixia-c` container images are hosted on [GitHub Container Registry](https://github.com/orgs/open-traffic-generator/packages), We stopped publishing `ixia-c` container images to [DockerHub](https://hub.docker.com/r/ixiacom).

* This build includes bug fixes. [Read more](releases.md)

* **2nd February, 2023**: Ixia-c version 0.0.1 (build 3768) released. This conforms to **[v0.10.7](https://redocly.github.io/redoc/?url=https://raw.githubusercontent.com/open-traffic-generator/models/v0.10.7/artifacts/openapi.yaml)** of the Open Traffic Generator Models specification.

**Announcement**
Expand Down
38 changes: 37 additions & 1 deletion docs/releases.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,42 @@
# Ixia-c Release Notes and Version Compatibility

## Release v0.0.1-3767 (Latest)
## Release v0.0.1-3807 (Latest)
> 17th February, 2023
#### Announcement

`ixia-c` container images are hosted on [GitHub Container Registry](https://github.com/orgs/open-traffic-generator/packages), We stopped publishing `ixia-c` container images to [DockerHub](https://hub.docker.com/r/ixiacom).

#### About

This build contains bug fixes.

#### Build Details

| Component | Version |
|-------------------------------|---------------|
| Open Traffic Generator API | [0.10.9](https://redocly.github.io/redoc/?url=https://raw.githubusercontent.com/open-traffic-generator/models/v0.10.9/artifacts/openapi.yaml) |
| snappi | [0.10.7](https://pypi.org/project/snappi/0.10.7) |
| gosnappi | [0.10.7](https://pkg.go.dev/github.com/open-traffic-generator/snappi/[email protected]) |
| ixia-c-controller | [0.0.1-3807](https://github.com/orgs/open-traffic-generator/packages/container/package/ixia-c-controller) |
| ixia-c-traffic-engine | [1.6.0.30](https://github.com/orgs/open-traffic-generator/packages/container/package/ixia-c-traffic-engine) |
| ixia-c-app-usage-reporter | [0.0.1-37](https://github.com/orgs/open-traffic-generator/packages/container/package/ixia-c-app-usage-reporter) |
| ixia-c-protocol-engine | [1.00.0.271](https://github.com/orgs/open-traffic-generator/packages/container/package/licensed%2Fixia-c-protocol-engine) |
| ixia-c-ixhw-server | [0.10.7-8](https://github.com/orgs/open-traffic-generator/packages/container/package/ixia-c-ixhw-server) |
| ixia-c-operator | [0.3.1](https://github.com/orgs/open-traffic-generator/packages/container/package/ixia-c-operator) |
| ixia-c-gnmi-server | [1.10.14](https://github.com/orgs/open-traffic-generator/packages/container/package/ixia-c-gnmi-server) |
| ixia-c-one | [0.0.1-3807](https://github.com/orgs/open-traffic-generator/packages/container/package/ixia-c-one/) |

### Bug Fix(s)
* Concurrent API calls (where at least one call was `set_config`) to `ixia-c-controller` was resulting in crash.

#### Known Issues
* Supported value for `flows[i].metrics.latency.mode` is `cut_through`.
* The metric `loss` in flow metrics is currently not supported.
* When flow transmit is started, transmission will be restarted on any existing flows already transmitting packets.
* [#118](https://github.com/open-traffic-generator/ixia-c/issues/118)

## Release v0.0.1-3767
> 2nd February, 2023
#### Announcement
Expand Down
10 changes: 5 additions & 5 deletions readme.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,9 +9,9 @@
</h4>

<p align="center">
<a href="https://github.com/orgs/open-traffic-generator/packages/container/package/ixia-c-controller"><img alt="Release v0.0.1-3724" src="https://img.shields.io/badge/release-v0.0.1--3724-brightgreen"></a>
<a href="https://redocly.github.io/redoc/?url=https://raw.githubusercontent.com/open-traffic-generator/models/v0.10.7/artifacts/openapi.yaml"><img alt="Open Traffic Generator v0.10.7" src="https://img.shields.io/badge/open--traffic--generator-v0.10.7-brightgreen"></a>
<a href="https://pypi.org/project/snappi/0.10.5"><img alt="snappi v0.10.5" src="https://img.shields.io/badge/snappi-v0.10.5-brightgreen"></a>
<a href="https://github.com/orgs/open-traffic-generator/packages/container/package/ixia-c-controller"><img alt="Release v0.0.1-3807" src="https://img.shields.io/badge/release-v0.0.1--3807-brightgreen"></a>
<a href="https://redocly.github.io/redoc/?url=https://raw.githubusercontent.com/open-traffic-generator/models/v0.10.9/artifacts/openapi.yaml"><img alt="Open Traffic Generator v0.10.9" src="https://img.shields.io/badge/open--traffic--generator-v0.10.9-brightgreen"></a>
<a href="https://pypi.org/project/snappi/0.10.7"><img alt="snappi v0.10.7" src="https://img.shields.io/badge/snappi-v0.10.7-brightgreen"></a>
<a href="docs/news.md"><img alt="news" src="https://img.shields.io/badge/-news-blue?logo=github"></a>
<a href="docs/contribute.md"><img alt="news" src="https://img.shields.io/badge/-contribute-blue?logo=github"></a>
<a href="docs/support.md"><img alt="Slack Status" src="https://img.shields.io/badge/slack-support-blue?logo=slack"></a>
Expand Down Expand Up @@ -75,7 +75,7 @@ Before proceeding, please ensure [system prerequisites](docs/prerequisites.md) a
git clone --recurse-submodules https://github.com/open-traffic-generator/ixia-c && cd ixia-c

# install snappi
python -m pip install --upgrade snappi==0.10.5
python -m pip install --upgrade snappi==0.10.7
# run a standalone script to generate TCP traffic and fetch metrics
python snappi-tests/scripts/quickstart_snappi.py
```
Expand Down Expand Up @@ -127,7 +127,7 @@ Before proceeding, please ensure [system prerequisites](docs/prerequisites.md) a
* Optionally, Generate Traffic Using [curl](https://curl.se/)

>We can also pass equivalent **JSON configuration** directly to ixia-c controller, without installing snappi, using **curl**.
>The detailed description of each node (and their attributes) in JSON configuration are well documented [here](https://redocly.github.io/redoc/?url=https://raw.githubusercontent.com/open-traffic-generator/models/v0.10.7/artifacts/openapi.yaml).
>The detailed description of each node (and their attributes) in JSON configuration are well documented [here](https://redocly.github.io/redoc/?url=https://raw.githubusercontent.com/open-traffic-generator/models/v0.10.9/artifacts/openapi.yaml).
```bash
# push the contents of config file snappi-tests/configs/quickstart_snappi.json
Expand Down
2 changes: 1 addition & 1 deletion snappi-tests
Submodule snappi-tests updated 1 files
+1 −1 readme.md

0 comments on commit d4fdb79

Please sign in to comment.