diff --git a/docs/deployments.md b/docs/deployments.md
index ef422f37..30329edc 100644
--- a/docs/deployments.md
+++ b/docs/deployments.md
@@ -25,7 +25,7 @@ All these services are available as docker images on [GitHub Open-Traffic-Genera
-> Once the services are deployed, [snappi-tests](https://github.com/open-traffic-generator/snappi-tests/tree/6a35c10), a collection of [snappi](https://pypi.org/project/snappi/) test scripts and configurations, can be setup to run against Ixia-c.
+> Once the services are deployed, [snappi-tests](https://github.com/open-traffic-generator/snappi-tests/tree/ee92091), a collection of [snappi](https://pypi.org/project/snappi/) test scripts and configurations, can be setup to run against Ixia-c.
### Bootstrap
diff --git a/docs/faq.md b/docs/faq.md
index 931bf3c4..be824a96 100644
--- a/docs/faq.md
+++ b/docs/faq.md
@@ -69,7 +69,7 @@ What version of the Open Traffic Generator spec does Ixia-c implement?
-Ixia-c implements version **[v0.8.6](https://github.com/open-traffic-generator/models/releases/tag/v0.8.6)** 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.8.6/artifacts/openapi.yaml).
+Ixia-c implements version **[v0.9.1](https://github.com/open-traffic-generator/models/releases/tag/v0.9.1)** 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.9.1/artifacts/openapi.yaml).
diff --git a/docs/hello-snappi.md b/docs/hello-snappi.md
index 1532c3df..e1ed2526 100644
--- a/docs/hello-snappi.md
+++ b/docs/hello-snappi.md
@@ -27,7 +27,7 @@ In this tutorial, we will walk through some key elements required to write a **s
* Send 1000 UDP packets back and forth between interfaces eth1 & eth2 at a rate of 1000 packets per second.
* Ensure that indeed correct number of valid UDP packets are received on both ends using port capture and port metrics.
-The script [hello_snappi.py](https://github.com/open-traffic-generator/snappi-tests/tree/6a35c10/scripts/hello_snappi.py) covers this extensively.
+The script [hello_snappi.py](https://github.com/open-traffic-generator/snappi-tests/tree/ee92091/scripts/hello_snappi.py) covers this extensively.
@@ -47,20 +47,27 @@ And installing python packages:
* [dpkt](https://pypi.org/project/dpkt/) - for processing `.pcap` files.
```sh
-python -m pip install --upgrade snappi==0.8.8 dpkt
+python -m pip install --upgrade snappi==0.9.3 dpkt
```
### Create API Handle
-The first step in any snappi script is to import the `snappi` package and instantiate an `api` object, where `location` parameter takes the HTTPS address of the controller and `verify` is used to turn off insecure certificate warning.
+The first step in any snappi script is to import the `snappi` package and instantiate an `api` object, where `location` parameter takes the HTTPS/gRPC address of the controller and `verify` is used to turn off insecure certificate warning.
-If the controller is deployed with a non-default TCP port using [deployment parameters](deployments.md#deployment-parameters), it must be specified explicitly in the address (default is 443).
+If the controller is deployed with a non-default TCP port using [deployment parameters](deployments.md#deployment-parameters), it must be specified explicitly in the address (default port of HTTPS is 443 and gRPC is 40051).
```python
import snappi
+
+# HTTPS
api = snappi.api(location='https://localhost', verify=False)
# or with non-default TCP port
api = snappi.api(location='https://localhost:8080', verify=False)
+
+#gRPC
+api = snappi.api(location="localhost:40051", transport=snappi.Transport.GRPC)
+# or with non-default TCP port
+api = snappi.api(location="localhost:50020", transport=snappi.Transport.GRPC)
```
@@ -100,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.
-Expand this section for details on how to effectively navigate through snappi API documentation.
+Expand this section for details on how to effectively navigate through snappi 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.8.6/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.9.1/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.8.6**. To use a different API version instead:
+The snappi API documentation linked above will always point to API version **v0.9.1**. To use a different API version instead:
-* Identify API version by opening this link in a browser and replacing **v0.8.8** in URL with intended snappi version.
+* Identify API version by opening this link in a browser and replacing **v0.9.1** in URL with intended snappi version.
-* Open this link in a browser after replacing **v0.8.6** in URL with intended API version.
+* Open this link in a browser after replacing **v0.9.1** in URL with intended API version.
@@ -406,6 +413,6 @@ with open('cap.pcap', 'wb') as p:
### Putting It All Together
-`snappi` provides a fair level of abstraction and ease-of-use while constructing traffic configuration compared to doing the [equivalent in JSON](https://github.com/open-traffic-generator/snappi-tests/tree/6a35c10/configs/hello_snappi.json). More such comparisons can be found in [common snappi constructs](snappi-constructs.md).
+`snappi` provides a fair level of abstraction and ease-of-use while constructing traffic configuration compared to doing the [equivalent in JSON](https://github.com/open-traffic-generator/snappi-tests/tree/ee92091/configs/hello_snappi.json). More such comparisons can be found in [common snappi constructs](snappi-constructs.md).
-There's more to snappi than what we've presented here, e.g. per-flow metrics, latency measurements, custom payloads, etc. It will be worthwhile browsing through [snappi-tests](https://github.com/open-traffic-generator/snappi-tests/tree/6a35c10) for more such examples, pytest-based test scripts and utilities.
+There's more to snappi than what we've presented here, e.g. per-flow metrics, latency measurements, custom payloads, etc. It will be worthwhile browsing through [snappi-tests](https://github.com/open-traffic-generator/snappi-tests/tree/ee92091) for more such examples, pytest-based test scripts and utilities.
diff --git a/docs/news.md b/docs/news.md
index f437f1a7..5d6acc2e 100644
--- a/docs/news.md
+++ b/docs/news.md
@@ -1,5 +1,14 @@
# News
+* **1st September, 2022**: Ixia-c version 0.0.1 (build 3182) released. This conforms to **[v0.9.1](https://redocly.github.io/redoc/?url=https://raw.githubusercontent.com/open-traffic-generator/models/v0.9.1/artifacts/openapi.yaml)** of the Open Traffic Generator Models specification.
+
+ **Announcement**
+
+ `ixia-c` container images is hosted on [GitHub Container Registry](https://github.com/orgs/open-traffic-generator/packages). However we will continue publishing `ixia-c` container images to [DockerHub](https://hub.docker.com/r/ixiacom) until 18th November, 2022.
+
+ * This build includes new features. [Read more](releases.md)
+
+
* **18th August, 2022**: Ixia-c version 0.0.1 (build 3113) released. This conforms to **[v0.8.6](https://redocly.github.io/redoc/?url=https://raw.githubusercontent.com/open-traffic-generator/models/v0.8.6/artifacts/openapi.yaml)** of the Open Traffic Generator Models specification.
**Announcement**
diff --git a/docs/releases.md b/docs/releases.md
index 297711f9..ae46b96c 100644
--- a/docs/releases.md
+++ b/docs/releases.md
@@ -1,6 +1,37 @@
# Ixia-c Release Notes and Version Compatibility
-## Release v0.0.1-3113 (Latest)
+## Release v0.0.1-3182 (Latest)
+> 18th August, 2022
+
+#### Announcement
+
+`ixia-c` container images is hosted on [GitHub Container Registry](https://github.com/orgs/open-traffic-generator/packages). However we will continue publishing `ixia-c` container images to [DockerHub](https://hub.docker.com/r/ixiacom) until 18th November, 2022.
+
+#### Build Details
+
+| Component | Version |
+|-------------------------------|---------------|
+| Open Traffic Generator API | [0.9.1](https://redocly.github.io/redoc/?url=https://raw.githubusercontent.com/open-traffic-generator/models/v0.9.1/artifacts/openapi.yaml) |
+| snappi | [0.9.3](https://pypi.org/project/snappi/0.9.3) |
+| gosnappi | [0.9.3](https://pkg.go.dev/github.com/open-traffic-generator/snappi/gosnappi@v0.9.3) |
+| ixia-c-controller | [0.0.1-3182](https://github.com/orgs/open-traffic-generator/packages/container/package/ixia-c-controller) |
+| ixia-c-traffic-engine | [1.6.0.9](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.217](https://github.com/orgs/open-traffic-generator/packages/container/package/licensed%2Fixia-c-protocol-engine) |
+| ixia-c-operator | [0.2.1](https://github.com/orgs/open-traffic-generator/packages/container/package/ixia-c-operator) |
+| ixia-c-gnmi-server | [1.9.1](https://github.com/orgs/open-traffic-generator/packages/container/package/ixia-c-gnmi-server) |
+| ixia-c-one | [0.0.1-3182](https://github.com/orgs/open-traffic-generator/packages/container/package/ixia-c-one/) |
+
+#### Release Features(s)
+
+* TBD
+
+#### Known Issues
+
+* 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
+
+## Release v0.0.1-3113
> 18th August, 2022
#### Announcement
diff --git a/readme.md b/readme.md
index b7470f23..865f299c 100644
--- a/readme.md
+++ b/readme.md
@@ -9,9 +9,9 @@
-
-
-
+
+
+
@@ -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.8.8
+ python -m pip install --upgrade snappi==0.9.3
# run a standalone script to generate TCP traffic and fetch metrics
python snappi-tests/scripts/quickstart_snappi.py
```
@@ -87,8 +87,11 @@ Before proceeding, please ensure [system prerequisites](docs/prerequisites.md) a
```python
import snappi
- # create a new API instance where location points to controller
+ # create a new API instance over HTTPS transport where location points to controller
api = snappi.api(location="https://localhost", verify=False)
+ # OR
+ # create a new API instance over gRPC transport where location points to controller
+ api = snappi.api(location="localhost:40051", transport=snappi.Transport.GRPC)
# create a config object to be pushed to controller
config = api.config()
@@ -124,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.8.6/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.9.1/artifacts/openapi.yaml).
```bash
# push the contents of config file snappi-tests/configs/quickstart_snappi.json
diff --git a/snappi-tests b/snappi-tests
index 833b6d77..ee920910 160000
--- a/snappi-tests
+++ b/snappi-tests
@@ -1 +1 @@
-Subproject commit 833b6d77d20fb7144dd062414603f7cfb0178ff4
+Subproject commit ee9209100e4942b9a834f4c10c6d0188fae5aa9c