Skip to content

Commit

Permalink
Merge pull request #192 from open-traffic-generator/dev-19th-april
Browse files Browse the repository at this point in the history
Release v1.3.0-2
  • Loading branch information
arkajyoti-cloud authored Apr 19, 2024
2 parents dea7b5c + 8ce6dd6 commit c59ea61
Show file tree
Hide file tree
Showing 12 changed files with 136 additions and 42 deletions.
2 changes: 1 addition & 1 deletion conformance
8 changes: 4 additions & 4 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/v1.1.0-21
# Release: https://github.com/open-traffic-generator/ixia-c/releases/tag/v1.3.0-2
images:
- name: keng-controller
newName: ghcr.io/open-traffic-generator/keng-controller
newTag: "1.1.0-21"
newTag: "1.3.0-2"
- name: otg-gnmi-server
newName: ghcr.io/open-traffic-generator/otg-gnmi-server
newTag: "1.13.14"
newTag: "1.13.15"
- name: ixia-c-traffic-engine
newName: ghcr.io/open-traffic-generator/ixia-c-traffic-engine
newTag: "1.6.0.109"
newTag: "1.6.0.167"
4 changes: 2 additions & 2 deletions deployments/k8s/network-emulation/go.mod
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
module ipfwd

go 1.20
go 1.19

require github.com/open-traffic-generator/snappi/gosnappi v1.1.1
require github.com/open-traffic-generator/snappi/gosnappi v1.3.0

require (
github.com/Masterminds/semver/v3 v3.2.1 // indirect
Expand Down
4 changes: 2 additions & 2 deletions deployments/k8s/network-emulation/go.sum
Original file line number Diff line number Diff line change
Expand Up @@ -1448,8 +1448,8 @@ github.com/minio/asm2plan9s v0.0.0-20200509001527-cdd76441f9d8/go.mod h1:mC1jAcs
github.com/minio/c2goasm v0.0.0-20190812172519-36a3d3bbc4f3/go.mod h1:RagcQ7I8IeTMnF8JTXieKnO4Z6JCsikNEzj0DwauVzE=
github.com/modern-go/concurrent v0.0.0-20180228061459-e0a39a4cb421/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q=
github.com/modern-go/reflect2 v1.0.2/go.mod h1:yWuevngMOJpCy52FWWMvUC8ws7m/LJsjYzDa0/r8luk=
github.com/open-traffic-generator/snappi/gosnappi v1.1.1 h1:wIxSWPqLdlXPbOthETxdTG+lbN0Hl5Wd9PBUrcFU5ZM=
github.com/open-traffic-generator/snappi/gosnappi v1.1.1/go.mod h1:CaE4nisXftNXdXWvTSqb4eiW2WMFIXkJsH5rqPoipcg=
github.com/open-traffic-generator/snappi/gosnappi v1.3.0 h1:6SFSuZLTuncLW1xMcBG5HEvVCWh9wVuxiYb71C3yj7s=
github.com/open-traffic-generator/snappi/gosnappi v1.3.0/go.mod h1:CaE4nisXftNXdXWvTSqb4eiW2WMFIXkJsH5rqPoipcg=
github.com/phpdave11/gofpdf v1.4.2/go.mod h1:zpO6xFn9yxo3YLyMvW8HcKWVdbNqgIfOOp2dXMnm1mY=
github.com/phpdave11/gofpdi v1.0.12/go.mod h1:vBmVV0Do6hSBHC8uKUQ71JGW+ZGQq74llk/7bXwjDoI=
github.com/phpdave11/gofpdi v1.0.13/go.mod h1:vBmVV0Do6hSBHC8uKUQ71JGW+ZGQq74llk/7bXwjDoI=
Expand Down
10 changes: 5 additions & 5 deletions deployments/k8s/network-emulation/pods.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ spec:
- args:
- --accept-eula
- --debug
image: ghcr.io/open-traffic-generator/keng-controller:1.1.0-21
image: ghcr.io/open-traffic-generator/keng-controller:1.3.0-2
imagePullPolicy: IfNotPresent
name: keng-controller
volumeMounts:
Expand Down Expand Up @@ -63,15 +63,15 @@ spec:
value: "5555"
- name: ARG_CORE_LIST
value: 1 1 1
image: ghcr.io/open-traffic-generator/ixia-c-traffic-engine:1.6.0.109
image: ghcr.io/open-traffic-generator/ixia-c-traffic-engine:1.6.0.167
imagePullPolicy: IfNotPresent
name: ixia-c-port1-traffic-engine
securityContext:
privileged: true
- env:
- name: INTF_LIST
value: eth1
image: ghcr.io/open-traffic-generator/ixia-c-protocol-engine:1.00.0.375
image: ghcr.io/open-traffic-generator/ixia-c-protocol-engine:1.00.0.378
imagePullPolicy: IfNotPresent
name: ixia-c-port1-protocol-engine
securityContext:
Expand Down Expand Up @@ -99,15 +99,15 @@ spec:
value: "5555"
- name: ARG_CORE_LIST
value: 1 1 1
image: ghcr.io/open-traffic-generator/ixia-c-traffic-engine:1.6.0.109
image: ghcr.io/open-traffic-generator/ixia-c-traffic-engine:1.6.0.167
imagePullPolicy: IfNotPresent
name: ixia-c-port2-traffic-engine
securityContext:
privileged: true
- env:
- name: INTF_LIST
value: eth2
image: ghcr.io/open-traffic-generator/ixia-c-protocol-engine:1.00.0.375
image: ghcr.io/open-traffic-generator/ixia-c-protocol-engine:1.00.0.378
imagePullPolicy: IfNotPresent
name: ixia-c-port2-protocol-engine
securityContext:
Expand Down
12 changes: 6 additions & 6 deletions deployments/k8s/network-emulation/readme.md
Original file line number Diff line number Diff line change
Expand Up @@ -67,9 +67,9 @@ To achieve this, we'll be using [Meshnet CNI](https://github.com/networkop/meshn
docker login ghcr.io
# download ixia-c images
docker pull ghcr.io/open-traffic-generator/keng-controller:1.1.0-21
docker pull ghcr.io/open-traffic-generator/ixia-c-traffic-engine:1.6.0.109
docker pull ghcr.io/open-traffic-generator/ixia-c-protocol-engine:1.00.0.375
docker pull ghcr.io/open-traffic-generator/keng-controller:1.3.0-2
docker pull ghcr.io/open-traffic-generator/ixia-c-traffic-engine:1.6.0.167
docker pull ghcr.io/open-traffic-generator/ixia-c-protocol-engine:1.00.0.378
# download DUT image
docker pull ubuntu:22.04
Expand All @@ -80,9 +80,9 @@ To achieve this, we'll be using [Meshnet CNI](https://github.com/networkop/meshn
docker pull networkop/init-wait:latest
# push images to nodes
kind load docker-image ghcr.io/open-traffic-generator/keng-controller:1.1.0-21
kind load docker-image ghcr.io/open-traffic-generator/ixia-c-traffic-engine:1.6.0.109
kind load docker-image ghcr.io/open-traffic-generator/ixia-c-protocol-engine:1.00.0.375
kind load docker-image ghcr.io/open-traffic-generator/keng-controller:1.3.0-2
kind load docker-image ghcr.io/open-traffic-generator/ixia-c-traffic-engine:1.6.0.167
kind load docker-image ghcr.io/open-traffic-generator/ixia-c-protocol-engine:1.00.0.378
kind load docker-image ubuntu:22.04
kind load docker-image networkop/meshnet:latest
kind load docker-image networkop/init-wait:latest
Expand Down
26 changes: 13 additions & 13 deletions docs/deployments-kne.md
Original file line number Diff line number Diff line change
Expand Up @@ -58,32 +58,32 @@ Following are the recommended resources for a basic use-case.
data:
versions: |
{
"release": "1.1.0-21",
"release": "1.3.0-2",
"images": [
{
"name": "controller",
"path": "ghcr.io/open-traffic-generator/keng-controller",
"tag": "1.1.0-21"
"tag": "1.3.0-2"
},
{
"name": "gnmi-server",
"path": "ghcr.io/open-traffic-generator/otg-gnmi-server",
"tag": "1.13.14"
"tag": "1.13.15"
},
{
"name": "traffic-engine",
"path": "ghcr.io/open-traffic-generator/ixia-c-traffic-engine",
"tag": "1.6.0.109"
"tag": "1.6.0.167"
},
{
"name": "protocol-engine",
"path": "ghcr.io/open-traffic-generator/ixia-c-protocol-engine",
"tag": "1.00.0.375"
"tag": "1.00.0.378"
},
{
"name": "ixhw-server",
"path": "ghcr.io/open-traffic-generator/keng-layer23-hw-server",
"tag": "1.1.0-6"
"tag": "1.3.0-4"
}
]
}
Expand All @@ -100,35 +100,35 @@ Following are the recommended resources for a basic use-case.
data:
versions: |
{
"release": "1.1.0-21",
"release": "1.3.0-2",
"images": [
{
"name": "controller",
"path": "ghcr.io/open-traffic-generator/keng-controller",
"tag": "1.1.0-21",
"tag": "1.3.0-2",
"env": {
"LICENSE_SERVERS": "ip/hostname of license server"
}
},
{
"name": "gnmi-server",
"path": "ghcr.io/open-traffic-generator/otg-gnmi-server",
"tag": "1.13.14"
"tag": "1.13.15"
},
{
"name": "traffic-engine",
"path": "ghcr.io/open-traffic-generator/ixia-c-traffic-engine",
"tag": "1.6.0.109"
"tag": "1.6.0.167"
},
{
"name": "protocol-engine",
"path": "ghcr.io/open-traffic-generator/ixia-c-protocol-engine",
"tag": "1.00.0.375"
"tag": "1.00.0.378"
},
{
"name": "ixhw-server",
"path": "ghcr.io/open-traffic-generator/keng-layer23-hw-server",
"tag": "1.1.0-6"
"tag": "1.3.0-4"
}
]
}
Expand All @@ -148,7 +148,7 @@ Following are the recommended resources for a basic use-case.
nodes:
- name: otg
vendor: KEYSIGHT
version: 1.1.0-21
version: 1.3.0-2
services:
8443:
name: https
Expand Down
2 changes: 1 addition & 1 deletion docs/developer/hello-snappi.md
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ After the set up is completed, install the python packages:
* [dpkt](https://pypi.org/project/dpkt/) - for processing `.pcap` files.

```sh
python -m pip install --upgrade snappi==1.1.1 dpkt
python -m pip install --upgrade snappi==1.3.0 dpkt
```

## Create the API Handle
Expand Down
5 changes: 5 additions & 0 deletions docs/news.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,10 @@
# News

* **19th April, 2024**: Ixia-c version 1.3.0 (build 1) released. This conforms to **[v1.3.0](https://redocly.github.io/redoc/?url=https://raw.githubusercontent.com/open-traffic-generator/models/v1.3.0/artifacts/openapi.yaml)** of the Open Traffic Generator Models specification.

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


* **29th March, 2024**: Ixia-c version 1.1.0 (build 21) released. This conforms to **[v1.1.0](https://redocly.github.io/redoc/?url=https://raw.githubusercontent.com/open-traffic-generator/models/v1.1.0/artifacts/openapi.yaml)** of the Open Traffic Generator Models specification.

* This build includes new features and bug fixes. [Read more](releases.md)
Expand Down
91 changes: 90 additions & 1 deletion docs/releases.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,95 @@
# Ixia-c Release Notes and Version Compatibility

## Release v1.1.0-21 (Latest)

## Release v1.3.0-2 (Latest)
> 19th April, 2024
#### Build Details

| Component | Version |
|-------------------------------|---------------|
| Open Traffic Generator API | [1.3.0](https://redocly.github.io/redoc/?url=https://raw.githubusercontent.com/open-traffic-generator/models/v1.3.0/artifacts/openapi.yaml) |
| snappi | [1.3.0](https://pypi.org/project/snappi/1.3.0) |
| gosnappi | [1.3.0](https://pkg.go.dev/github.com/open-traffic-generator/snappi/[email protected]) |
| keng-controller | [1.3.0-2](https://github.com/orgs/open-traffic-generator/packages/container/package/keng-controller) |
| ixia-c-traffic-engine | [1.6.0.167](https://github.com/orgs/open-traffic-generator/packages/container/package/ixia-c-traffic-engine) |
| keng-app-usage-reporter | [0.0.1-52](https://github.com/orgs/open-traffic-generator/packages/container/package/keng-app-usage-reporter) |
| ixia-c-protocol-engine | [1.00.0.378](https://github.com/orgs/open-traffic-generator/packages/container/package/ixia-c-protocol-engine) |
| keng-layer23-hw-server | [1.3.0-4](https://github.com/orgs/open-traffic-generator/packages/container/package/keng-layer23-hw-server) |
| keng-operator | [0.3.28](https://github.com/orgs/open-traffic-generator/packages/container/package/keng-operator) |
| otg-gnmi-server | [1.13.15](https://github.com/orgs/open-traffic-generator/packages/container/package/otg-gnmi-server) |
| ixia-c-one | [1.3.0-2](https://github.com/orgs/open-traffic-generator/packages/container/package/ixia-c-one/) |
| UHD400 | [1.2.4](https://downloads.ixiacom.com/support/downloads_and_updates/public/UHD400/1.2/1.2.4/artifacts.tar) |


# Release Features(s)
* <b><i>Ixia-C, Ixia Chassis & Appliances(Novus, AresOne), UHD400</i></b>: Support added for advertising Segment Routing Traffic Engineering(SR-TE) policy using `replay_updates`.
```go
peer.Capability().SetIpv4SrTePolicy(true) ​
updateReplayBlock := peer.ReplayUpdates().StructuredPdus()​
adv := updateReplayBlock.Updates().Add()​
...​
adv.PathAttributes().
Community().
Add().
NoAdvertised()​
ipv4_sr_routes_adv := adv.PathAttributes().
MpReach().
Ipv4Srpolicy()​
ipv4_sr_routes_adv.SetEndpoint("0.0.0.0").
SetColor(100).
SetDistinguisher(1)​
sr := adv.PathAttributes().
TunnelEncapsulation().
SrPolicy()​
sr.Preference().SetValue(3)​
sr.PolicyName().SetValue("TypeA Policy")​
...​
sr.BindingSegmentIdentifier().Mpls().
SetFlagSpecifiedBsidOnly(true).​
MplsSid().
SetLabel(22222)​
segmentList := sr.SegmentList().Add()​
segmentList.Weight().
SetValue(200)​
typeA := segmentList.Segments().Add().TypeA()​
typeA.Flags().
SetSFlag(true)​
typeA.MplsSid().
SetLabel(10000)​
//More segments and segments lists​
```
* <b><i>Ixia-C </i></b>: Support added for zero and custom checksum in `TCP/UDP/ICMPv4/v6/IPv4/GRE` packet templates in flows.
```go
udp := cfg.Flows().Add().Packet().Add().Udp()
udp.Checksum().SetCustom(0)
```
* <b><i>Ixia-C </i></b>: DPDK version upgraded from v21.11 to v23.11 for standalone `ixia-c-traffic-engine` container based deployment in DPDK mode.
* <b><i>Ixia Chassis & Appliances(Novus, AresOne)</i></b>: Support added for IPv4/v6 route ranges with varying number of `communities`/`extended_communities` for BGP/BGP+ peers.
```go
route.Communities().Add().​
SetAsNumber(65534).​
SetAsCustom(20410).​
SetType(gosnappi.BgpCommunityType.MANUAL_AS_NUMBER)
```


# Bug Fix(s)
* <b><i>Ixia Chassis & Appliances(Novus, AresOne)</i></b>: Issue is fixed where sometimes fetching ISIS `get_states` would result in `Error occurred while fetching isis lsps states:Index was outside the bounds of the array` exception.
* <b><i>Ixia-C, Ixia Chassis & Appliances(Novus, AresOne), UHD400</i></b>: Issue is fixed where sometimes misleading warnings were being returned from `set_config` when running consecutive `replay_updates` tests with different types of BGP peers configured(iBGP/eBGP).
* <b><i>Ixia-C </i></b>: Memory leak fixed for BGPv4/v6 peers with large number of routes configured.


#### Known Issues
* <b><i>Ixia Chassis & Appliances(Novus, AresOne)</i></b>: If `keng-layer23-hw-server` version is upgraded/downgraded, the ports which will be used from this container must be rebooted once before running the tests.
* <b><i>UHD400</i></b>: `values` for fields in flow packet headers can be created with maximum length of 1000 values.
* <b><i>UHD400</i></b>: Port statistics are not getting cleared on `SetConfig`.
* <b><i>Ixia-C</i></b>: Flow Tx is incremented for flow with tx endpoints as LAG, even if no packets are sent on the wire when all active links of the LAG are down.
* <b><i>Ixia-C</i></b>: Supported value for `flows[i].metrics.latency.mode` is `cut_through`.
* <b><i>Ixia-C</i></b>: The metric `loss` in flow metrics is currently not supported.
* <b><i>Ixia-C</i></b>: When flow transmit is started, transmission will be restarted on any existing flows already transmitting packets.

## Release v1.1.0-21
> 29th March, 2024
#### Build Details
Expand Down
6 changes: 3 additions & 3 deletions docs/tests-chassis-app.md
Original file line number Diff line number Diff line change
Expand Up @@ -75,7 +75,7 @@ The following procedure shows an example of how to deploy using Docker Compose.
```
services:
keng-controller:
image: ghcr.io/open-traffic-generator/keng-controller:1.1.0-21
image: ghcr.io/open-traffic-generator/keng-controller:1.3.0-2
restart: always
depends_on:
keng-layer23-hw-server:
Expand All @@ -94,7 +94,7 @@ logging:
max-file: "10"
mode: "non-blocking"
keng-layer23-hw-server:
image: ghcr.io/open-traffic-generator/keng-layer23-hw-server:1.1.0-6
image: ghcr.io/open-traffic-generator/keng-layer23-hw-server:1.3.0-4
restart: always
command:
- "dotnet"
Expand All @@ -109,7 +109,7 @@ logging:
max-file: "10"
mode: "non-blocking"
otg-gnmi-server:
image: ghcr.io/open-traffic-generator/otg-gnmi-server:1.13.14
image: ghcr.io/open-traffic-generator/otg-gnmi-server:1.13.15
restart: always
depends_on:
keng-controller:
Expand Down
8 changes: 4 additions & 4 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/keng-controller"><img alt="Release v1.1.0-21" src="https://img.shields.io/badge/release-v1.1.0--21-brightgreen"></a>
<a href="https://redocly.github.io/redoc/?url=https://raw.githubusercontent.com/open-traffic-generator/models/v1.1.0/artifacts/openapi.yaml"><img alt="Open Traffic Generator v1.1.0" src="https://img.shields.io/badge/open--traffic--generator-v1.1.0-brightgreen"></a>
<a href="https://pypi.org/project/snappi/1.1.1"><img alt="snappi v1.1.1" src="https://img.shields.io/badge/snappi-v1.1.1-brightgreen"></a>
<a href="https://github.com/orgs/open-traffic-generator/packages/container/package/keng-controller"><img alt="Release v1.3.0-2" src="https://img.shields.io/badge/release-v1.3.0--2-brightgreen"></a>
<a href="https://redocly.github.io/redoc/?url=https://raw.githubusercontent.com/open-traffic-generator/models/v1.3.0/artifacts/openapi.yaml"><img alt="Open Traffic Generator v1.3.0" src="https://img.shields.io/badge/open--traffic--generator-v1.3.0-brightgreen"></a>
<a href="https://pypi.org/project/snappi/1.3.0"><img alt="snappi v1.3.0" src="https://img.shields.io/badge/snappi-v1.3.0-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 @@ -83,7 +83,7 @@ cd conformance
#### 3. Optionally, run test using [curl](https://curl.se/)

We can also pass equivalent **JSON configuration** directly to **controller**, just by using **curl**.
The description of each node in the configuration is detailed in self-updating [online documentation](https://redocly.github.io/redoc/?url=https://raw.githubusercontent.com/open-traffic-generator/models/v1.1.0/artifacts/openapi.yaml).
The description of each node in the configuration is detailed in self-updating [online documentation](https://redocly.github.io/redoc/?url=https://raw.githubusercontent.com/open-traffic-generator/models/v1.3.0/artifacts/openapi.yaml).


```bash
Expand Down

0 comments on commit c59ea61

Please sign in to comment.