Skip to content

Commit db904a7

Browse files
committedNov 29, 2024·
Release v1.17.0-9
1 parent dc5e827 commit db904a7

File tree

13 files changed

+176
-115
lines changed

13 files changed

+176
-115
lines changed
 
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,14 @@
11
apiVersion: kustomize.config.k8s.io/v1alpha1
22
kind: Component
33

4-
# Release: https://github.com/open-traffic-generator/ixia-c/releases/tag/v1.16.0-2
4+
# Release: https://github.com/open-traffic-generator/ixia-c/releases/tag/v1.17.0-9
55
images:
66
- name: keng-controller
77
newName: ghcr.io/open-traffic-generator/keng-controller
8-
newTag: "1.16.0-2"
8+
newTag: "1.17.0-9"
99
- name: otg-gnmi-server
1010
newName: ghcr.io/open-traffic-generator/otg-gnmi-server
11-
newTag: "1.14.16"
11+
newTag: "1.14.18"
1212
- name: ixia-c-traffic-engine
1313
newName: ghcr.io/open-traffic-generator/ixia-c-traffic-engine
1414
newTag: "1.8.0.193"

‎deployments/k8s/network-emulation/go.mod

+8-8
Original file line numberDiff line numberDiff line change
@@ -2,18 +2,18 @@ module ipfwd
22

33
go 1.23
44

5-
require github.com/open-traffic-generator/snappi/gosnappi v1.16.0
5+
require github.com/open-traffic-generator/snappi/gosnappi v1.17.0
66

77
require (
8-
github.com/Masterminds/semver/v3 v3.3.0 // indirect
8+
github.com/Masterminds/semver/v3 v3.3.1 // indirect
99
github.com/ghodss/yaml v1.0.0 // indirect
1010
github.com/kr/text v0.2.0 // indirect
1111
github.com/rogpeppe/go-internal v1.12.0 // indirect
12-
golang.org/x/net v0.28.0 // indirect
13-
golang.org/x/sys v0.24.0 // indirect
14-
golang.org/x/text v0.17.0 // indirect
15-
google.golang.org/genproto/googleapis/rpc v0.0.0-20240814211410-ddb44dafa142 // indirect
16-
google.golang.org/grpc v1.67.1 // indirect
17-
google.golang.org/protobuf v1.35.1 // indirect
12+
golang.org/x/net v0.29.0 // indirect
13+
golang.org/x/sys v0.25.0 // indirect
14+
golang.org/x/text v0.18.0 // indirect
15+
google.golang.org/genproto/googleapis/rpc v0.0.0-20240903143218-8af14fe29dc1 // indirect
16+
google.golang.org/grpc v1.68.0 // indirect
17+
google.golang.org/protobuf v1.35.2 // indirect
1818
gopkg.in/yaml.v2 v2.2.3 // indirect
1919
)

‎deployments/k8s/network-emulation/go.sum

+18-16
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,12 @@
1-
github.com/Masterminds/semver/v3 v3.3.0 h1:B8LGeaivUe71a5qox1ICM/JLl0NqZSW5CHyL+hmvYS0=
2-
github.com/Masterminds/semver/v3 v3.3.0/go.mod h1:4V+yj/TJE1HU9XfppCwVMZq3I84lprf4nC11bSS5beM=
1+
github.com/Masterminds/semver/v3 v3.3.1 h1:QtNSWtVZ3nBfk8mAOu/B6v7FMJ+NHTIgUPi7rj+4nv4=
2+
github.com/Masterminds/semver/v3 v3.3.1/go.mod h1:4V+yj/TJE1HU9XfppCwVMZq3I84lprf4nC11bSS5beM=
33
github.com/creack/pty v1.1.9/go.mod h1:oKZEueFk5CKHvIhNR5MUki03XCEU+Q6VDXinZuGJ33E=
44
github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c=
55
github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
66
github.com/ghodss/yaml v1.0.0 h1:wQHKEahhL6wmXdzwWG11gIVCkOv05bNOh+Rxn0yngAk=
77
github.com/ghodss/yaml v1.0.0/go.mod h1:4dBDuWmgqj2HViK6kFavaiC9ZROes6MMH2rRYeMEF04=
8+
github.com/golang/protobuf v1.5.4 h1:i7eJL8qZTpSEXOPTxNKhASYpMn+8e5Q6AdndVa1dWek=
9+
github.com/golang/protobuf v1.5.4/go.mod h1:lnTiLA8Wa4RWRcIUkrtSVa5nRhsEGBg48fD6rSs7xps=
810
github.com/google/go-cmp v0.6.0 h1:ofyhxvXcZhMsU5ulbFiLKl/XBFqE1GSq7atu8tAmTRI=
911
github.com/google/go-cmp v0.6.0/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY=
1012
github.com/gorilla/mux v1.8.1 h1:TuBL49tXwgrFYWhqrNgrUNEY92u81SPhu7sTdzQEiWY=
@@ -13,26 +15,26 @@ github.com/kr/pretty v0.3.1 h1:flRD4NNwYAUpkphVc1HcthR4KEIFJ65n8Mw5qdRn3LE=
1315
github.com/kr/pretty v0.3.1/go.mod h1:hoEshYVHaxMs3cyo3Yncou5ZscifuDolrwPKZanG3xk=
1416
github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY=
1517
github.com/kr/text v0.2.0/go.mod h1:eLer722TekiGuMkidMxC/pM04lWEeraHUUmBw8l2grE=
16-
github.com/open-traffic-generator/snappi/gosnappi v1.16.0 h1:nEISDHK3aqx3midAUk8vZo91pw2UsB5dqpxMhwniOFk=
17-
github.com/open-traffic-generator/snappi/gosnappi v1.16.0/go.mod h1:J1Cdre0Z140OBc2UTrSXUG69Hx81AA3qhnWLT3kAAX0=
18+
github.com/open-traffic-generator/snappi/gosnappi v1.17.0 h1:G8VbL5QaK1J8XJinje6M80Kb8rcIgHctXhaH5TBygbo=
19+
github.com/open-traffic-generator/snappi/gosnappi v1.17.0/go.mod h1://P6LhueOFqgcepV74ZVtm5oJA3MPqWDCd+0zNnJZYY=
1820
github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM=
1921
github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
2022
github.com/rogpeppe/go-internal v1.12.0 h1:exVL4IDcn6na9z1rAb56Vxr+CgyK3nn3O+epU5NdKM8=
2123
github.com/rogpeppe/go-internal v1.12.0/go.mod h1:E+RYuTGaKKdloAfM02xzb0FW3Paa99yedzYV+kq4uf4=
2224
github.com/stretchr/testify v1.9.0 h1:HtqpIVDClZ4nwg75+f6Lvsy/wHu+3BoSGCbBAcpTsTg=
2325
github.com/stretchr/testify v1.9.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY=
24-
golang.org/x/net v0.28.0 h1:a9JDOJc5GMUJ0+UDqmLT86WiEy7iWyIhz8gz8E4e5hE=
25-
golang.org/x/net v0.28.0/go.mod h1:yqtgsTWOOnlGLG9GFRrK3++bGOUEkNBoHZc8MEDWPNg=
26-
golang.org/x/sys v0.24.0 h1:Twjiwq9dn6R1fQcyiK+wQyHWfaz/BJB+YIpzU/Cv3Xg=
27-
golang.org/x/sys v0.24.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
28-
golang.org/x/text v0.17.0 h1:XtiM5bkSOt+ewxlOE/aE/AKEHibwj/6gvWMl9Rsh0Qc=
29-
golang.org/x/text v0.17.0/go.mod h1:BuEKDfySbSR4drPmRPG/7iBdf8hvFMuRexcpahXilzY=
30-
google.golang.org/genproto/googleapis/rpc v0.0.0-20240814211410-ddb44dafa142 h1:e7S5W7MGGLaSu8j3YjdezkZ+m1/Nm0uRVRMEMGk26Xs=
31-
google.golang.org/genproto/googleapis/rpc v0.0.0-20240814211410-ddb44dafa142/go.mod h1:UqMtugtsSgubUsoxbuAoiCXvqvErP7Gf0so0mK9tHxU=
32-
google.golang.org/grpc v1.67.1 h1:zWnc1Vrcno+lHZCOofnIMvycFcc0QRGIzm9dhnDX68E=
33-
google.golang.org/grpc v1.67.1/go.mod h1:1gLDyUQU7CTLJI90u3nXZ9ekeghjeM7pTDZlqFNg2AA=
34-
google.golang.org/protobuf v1.35.1 h1:m3LfL6/Ca+fqnjnlqQXNpFPABW1UD7mjh8KO2mKFytA=
35-
google.golang.org/protobuf v1.35.1/go.mod h1:9fA7Ob0pmnwhb644+1+CVWFRbNajQ6iRojtC/QF5bRE=
26+
golang.org/x/net v0.29.0 h1:5ORfpBpCs4HzDYoodCDBbwHzdR5UrLBZ3sOnUJmFoHo=
27+
golang.org/x/net v0.29.0/go.mod h1:gLkgy8jTGERgjzMic6DS9+SP0ajcu6Xu3Orq/SpETg0=
28+
golang.org/x/sys v0.25.0 h1:r+8e+loiHxRqhXVl6ML1nO3l1+oFoWbnlu2Ehimmi34=
29+
golang.org/x/sys v0.25.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
30+
golang.org/x/text v0.18.0 h1:XvMDiNzPAl0jr17s6W9lcaIhGUfUORdGCNsuLmPG224=
31+
golang.org/x/text v0.18.0/go.mod h1:BuEKDfySbSR4drPmRPG/7iBdf8hvFMuRexcpahXilzY=
32+
google.golang.org/genproto/googleapis/rpc v0.0.0-20240903143218-8af14fe29dc1 h1:pPJltXNxVzT4pK9yD8vR9X75DaWYYmLGMsEvBfFQZzQ=
33+
google.golang.org/genproto/googleapis/rpc v0.0.0-20240903143218-8af14fe29dc1/go.mod h1:UqMtugtsSgubUsoxbuAoiCXvqvErP7Gf0so0mK9tHxU=
34+
google.golang.org/grpc v1.68.0 h1:aHQeeJbo8zAkAa3pRzrVjZlbz6uSfeOXlJNQM0RAbz0=
35+
google.golang.org/grpc v1.68.0/go.mod h1:fmSPC5AsjSBCK54MyHRx48kpOti1/jRfOlwEWywNjWA=
36+
google.golang.org/protobuf v1.35.2 h1:8Ar7bF+apOIoThw1EdZl0p1oWvMqTHmpA2fRTyZO8io=
37+
google.golang.org/protobuf v1.35.2/go.mod h1:9fA7Ob0pmnwhb644+1+CVWFRbNajQ6iRojtC/QF5bRE=
3638
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
3739
gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c h1:Hei/4ADfdWqJk1ZMxUNpqntNwaWcugrBjAiHlqqRiVk=
3840
gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c/go.mod h1:JHkPIbrfpd72SG/EVd6muEfDQjcINNoR0C8j2r3qZ4Q=

‎deployments/k8s/network-emulation/pods.yaml

+3-3
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ spec:
2828
- args:
2929
- --accept-eula
3030
- --debug
31-
image: ghcr.io/open-traffic-generator/keng-controller:1.16.0-2
31+
image: ghcr.io/open-traffic-generator/keng-controller:1.17.0-9
3232
imagePullPolicy: IfNotPresent
3333
name: keng-controller
3434
volumeMounts:
@@ -71,7 +71,7 @@ spec:
7171
- env:
7272
- name: INTF_LIST
7373
value: eth1
74-
image: ghcr.io/open-traffic-generator/ixia-c-protocol-engine:1.00.0.415
74+
image: ghcr.io/open-traffic-generator/ixia-c-protocol-engine:1.00.0.419
7575
imagePullPolicy: IfNotPresent
7676
name: ixia-c-port1-protocol-engine
7777
securityContext:
@@ -107,7 +107,7 @@ spec:
107107
- env:
108108
- name: INTF_LIST
109109
value: eth2
110-
image: ghcr.io/open-traffic-generator/ixia-c-protocol-engine:1.00.0.415
110+
image: ghcr.io/open-traffic-generator/ixia-c-protocol-engine:1.00.0.419
111111
imagePullPolicy: IfNotPresent
112112
name: ixia-c-port2-protocol-engine
113113
securityContext:

‎deployments/k8s/network-emulation/readme.md

+4-4
Original file line numberDiff line numberDiff line change
@@ -67,9 +67,9 @@ To achieve this, we'll be using [Meshnet CNI](https://github.com/networkop/meshn
6767
docker login ghcr.io
6868
6969
# download ixia-c images
70-
docker pull ghcr.io/open-traffic-generator/keng-controller:1.16.0-2
70+
docker pull ghcr.io/open-traffic-generator/keng-controller:1.17.0-9
7171
docker pull ghcr.io/open-traffic-generator/ixia-c-traffic-engine:1.8.0.193
72-
docker pull ghcr.io/open-traffic-generator/ixia-c-protocol-engine:1.00.0.415
72+
docker pull ghcr.io/open-traffic-generator/ixia-c-protocol-engine:1.00.0.419
7373
7474
# download DUT image
7575
docker pull ubuntu:22.04
@@ -80,9 +80,9 @@ To achieve this, we'll be using [Meshnet CNI](https://github.com/networkop/meshn
8080
docker pull networkop/init-wait:latest
8181
8282
# push images to nodes
83-
kind load docker-image ghcr.io/open-traffic-generator/keng-controller:1.16.0-2
83+
kind load docker-image ghcr.io/open-traffic-generator/keng-controller:1.17.0-9
8484
kind load docker-image ghcr.io/open-traffic-generator/ixia-c-traffic-engine:1.8.0.193
85-
kind load docker-image ghcr.io/open-traffic-generator/ixia-c-protocol-engine:1.00.0.415
85+
kind load docker-image ghcr.io/open-traffic-generator/ixia-c-protocol-engine:1.00.0.419
8686
kind load docker-image ubuntu:22.04
8787
kind load docker-image networkop/meshnet:latest
8888
kind load docker-image networkop/init-wait:latest

‎docs/deployments-kne.md

+11-11
Original file line numberDiff line numberDiff line change
@@ -58,17 +58,17 @@ Following are the recommended resources for a basic use-case.
5858
data:
5959
versions: |
6060
{
61-
"release": "1.16.0-2",
61+
"release": "1.17.0-9",
6262
"images": [
6363
{
6464
"name": "controller",
6565
"path": "ghcr.io/open-traffic-generator/keng-controller",
66-
"tag": "1.16.0-2"
66+
"tag": "1.17.0-9"
6767
},
6868
{
6969
"name": "gnmi-server",
7070
"path": "ghcr.io/open-traffic-generator/otg-gnmi-server",
71-
"tag": "1.14.16"
71+
"tag": "1.14.18"
7272
},
7373
{
7474
"name": "traffic-engine",
@@ -78,12 +78,12 @@ Following are the recommended resources for a basic use-case.
7878
{
7979
"name": "protocol-engine",
8080
"path": "ghcr.io/open-traffic-generator/ixia-c-protocol-engine",
81-
"tag": "1.00.0.415"
81+
"tag": "1.00.0.419"
8282
},
8383
{
8484
"name": "ixhw-server",
8585
"path": "ghcr.io/open-traffic-generator/keng-layer23-hw-server",
86-
"tag": "1.16.0-2"
86+
"tag": "1.17.0-1"
8787
}
8888
]
8989
}
@@ -100,20 +100,20 @@ Following are the recommended resources for a basic use-case.
100100
data:
101101
versions: |
102102
{
103-
"release": "1.16.0-2",
103+
"release": "1.17.0-9",
104104
"images": [
105105
{
106106
"name": "controller",
107107
"path": "ghcr.io/open-traffic-generator/keng-controller",
108-
"tag": "1.16.0-2",
108+
"tag": "1.17.0-9",
109109
"env": {
110110
"LICENSE_SERVERS": "ip/hostname of license server"
111111
}
112112
},
113113
{
114114
"name": "gnmi-server",
115115
"path": "ghcr.io/open-traffic-generator/otg-gnmi-server",
116-
"tag": "1.14.16"
116+
"tag": "1.14.18"
117117
},
118118
{
119119
"name": "traffic-engine",
@@ -123,12 +123,12 @@ Following are the recommended resources for a basic use-case.
123123
{
124124
"name": "protocol-engine",
125125
"path": "ghcr.io/open-traffic-generator/ixia-c-protocol-engine",
126-
"tag": "1.00.0.415"
126+
"tag": "1.00.0.419"
127127
},
128128
{
129129
"name": "ixhw-server",
130130
"path": "ghcr.io/open-traffic-generator/keng-layer23-hw-server",
131-
"tag": "1.16.0-2"
131+
"tag": "1.17.0-1"
132132
}
133133
]
134134
}
@@ -148,7 +148,7 @@ Following are the recommended resources for a basic use-case.
148148
nodes:
149149
- name: otg
150150
vendor: KEYSIGHT
151-
version: 1.16.0-2
151+
version: 1.17.0-9
152152
services:
153153
8443:
154154
name: https

‎docs/developer/hello-snappi.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ After the set up is completed, install the python packages:
2424
* [dpkt](https://pypi.org/project/dpkt/) - for processing `.pcap` files.
2525

2626
```sh
27-
python -m pip install --upgrade snappi==1.16.0 dpkt
27+
python -m pip install --upgrade snappi==1.17.0 dpkt
2828
```
2929

3030
## Create the API Handle

‎docs/news.md

+5-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,10 @@
11
# News
22

3-
* **18th October, 2024**: Ixia-c version 1.16.0 (build 2) released. This conforms to **[v1.16.0](https://redocly.github.io/redoc/?url=https://raw.githubusercontent.com/open-traffic-generator/models/v1.16.0/artifacts/openapi.yaml)** of the Open Traffic Generator Models specification.
3+
* **29th November, 2024**: Ixia-c version 1.17.0 (build 9) released. This conforms to **[v1.17.0](https://redocly.github.io/redoc/?url=https://raw.githubusercontent.com/open-traffic-generator/models/v1.16.0/artifacts/openapi.yaml)** of the Open Traffic Generator Models specification.
4+
5+
* This build includes new features and bug fixes. [Read more](releases.md)
6+
7+
* **18th November, 2024**: Ixia-c version 1.16.0 (build 2) released. This conforms to **[v1.16.0](https://redocly.github.io/redoc/?url=https://raw.githubusercontent.com/open-traffic-generator/models/v1.16.0/artifacts/openapi.yaml)** of the Open Traffic Generator Models specification.
48

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

‎docs/releases.md

+77-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,82 @@
11
# Ixia-c Release Notes and Version Compatibility
22

3-
## Release v1.16.0-2 (Latest)
3+
## Release v1.17.0-9 (Latest)
4+
> 29th November, 2024
5+
6+
#### Build Details
7+
8+
| Component | Version |
9+
|-------------------------------|---------------|
10+
| Open Traffic Generator API | [1.17.0](https://redocly.github.io/redoc/?url=https://raw.githubusercontent.com/open-traffic-generator/models/v1.17.0/artifacts/openapi.yaml) |
11+
| snappi | [1.17.0](https://pypi.org/project/snappi/1.17.0) |
12+
| gosnappi | [1.17.0](https://pkg.go.dev/github.com/open-traffic-generator/snappi/gosnappi@v1.17.0) |
13+
| keng-controller | [1.17.0-9](https://github.com/orgs/open-traffic-generator/packages/container/package/keng-controller) |
14+
| ixia-c-traffic-engine | [1.8.0.193](https://github.com/orgs/open-traffic-generator/packages/container/package/ixia-c-traffic-engine) |
15+
| keng-app-usage-reporter | [0.0.1-52](https://github.com/orgs/open-traffic-generator/packages/container/package/keng-app-usage-reporter) |
16+
| ixia-c-protocol-engine | [1.00.0.419](https://github.com/orgs/open-traffic-generator/packages/container/package/ixia-c-protocol-engine) |
17+
| keng-layer23-hw-server | [1.17.0-1](https://github.com/orgs/open-traffic-generator/packages/container/package/keng-layer23-hw-server) |
18+
| keng-operator | [0.3.34](https://github.com/orgs/open-traffic-generator/packages/container/package/keng-operator) |
19+
| otg-gnmi-server | [1.14.18](https://github.com/orgs/open-traffic-generator/packages/container/package/otg-gnmi-server) |
20+
| ixia-c-one | [1.17.0-9](https://github.com/orgs/open-traffic-generator/packages/container/package/ixia-c-one/) |
21+
| UHD400 | [1.5.1](https://downloads.ixiacom.com/support/downloads_and_updates/public/UHD400/1.5/1.5.1/artifacts.tar) |
22+
23+
24+
# Release Features(s)
25+
26+
* <b><i>Ixia Chassis & Appliances(Novus, AresOne)</i></b>: Support added for BGP/BGP+ over ISIS Simulated Topology. [More Details](https://github.com/open-traffic-generator/models/pull/327)
27+
```go
28+
loopback = simRtr.Ipv4Loopbacks().
29+
Add().
30+
SetName("IPv4Loopback").
31+
SetAddress(dutIPv4).
32+
SetEthName(simRtr.Ethernets().Items()[0].Name())
33+
simRtrBgp= simRtr.Bgp().
34+
SetRouterId(loopback.Address())
35+
simRtrBgpIntf = simRtrBgp.Ipv4Interfaces().Add().
36+
SetIpv4Name(loopback.Name())
37+
simRtrBgpIntf.Peers().Add().
38+
SetAsNumber(1111).
39+
SetAsType(gosnappi.BgpV4PeerAsType.EBGP).
40+
SetPeerAddress(fromPeerIp).
41+
SetName("BgpPeer1")
42+
```
43+
Note: For configuration of simulated topology please refer [here](https://github.com/open-traffic-generator/ixia-c/releases/tag/v1.16.0-2).
44+
45+
* <b><i>Ixia-C, Ixia Chassis & Appliances(Novus, AresOne)</i></b>: Support added for GRE header in traffic flows.
46+
```go
47+
flow1 := config.Flows().Add()
48+
...
49+
gre := flow1.Packet().Add().Gre()
50+
...
51+
```
52+
Note: By default the correct GRE Protocol value will be set automatically depending on next header eg. IPv4/v6.
53+
54+
55+
### Bug Fix(s)
56+
* <b><i>Ixia Chassis & Appliances(Novus, AresOne)</i></b>: Issue is fixed where fetching ISIS learned information using `get_states` would sometimes fail with a error <i>Cannot clear data while transfer is in progress - data would be inconsistent</i>.
57+
58+
* <b><i>Ixia-C</i></b>: Issue is fixed where ARP/ND resolution was failing for LAG configurations with a mix of Loopback and connected interfaces.
59+
60+
* <b><i>Ixia-C</i></b>: Issue is fixed where on fetching BGP/BGP+ learned prefix information using `get_states` would return an incorrect prefix in certain scenarios. This was more likely to happen for IPv6 prefixes.
61+
62+
* <b><i>Ixia-C, UHD400</i></b>: Issue is fixed where if the DHCPv6 client type is configured as IANAPD, DHCPv6 Server `get_states` doesn't show IAPD addresses.
63+
64+
* <b><i>UHD400</i></b>: Issue is fixed where Auto MAC resolution was not working properly for multinic scenarios such as LAG, resulting in flows being transmitted with dest MAC as 00:00:00:00:00:00 and DUT not forwarding these packets.
65+
66+
67+
#### Known Issues
68+
* <b><i>Ixia-C, UHD400</i></b>: When DHCPv6 Server is configured with multiple pools, The DHCPv6 clients are not accepting addresses from different pools.
69+
* <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.
70+
* <b><i>Ixia Chassis & Appliances(Novus, AresOne)</i></b>: `StartProtocols`/`set_control_state.protocol.all.start` can get stuck till the time all DHPCv4/v6 clients receive the leased IPv4/v6 addresses from the DHCPv4/v6 server/relay agent. This may result in getting `"context deadline exceeded"` error in the test program.
71+
* <b><i>UHD400</i></b>: Packets will not be transmitted if `flows[i].rate.pps` is less than 50.
72+
* <b><i>UHD400</i></b>: `values` for fields in flow packet headers can be created with maximum length of 1000 values. If larger set of values are required for a field which are random, please use `random` instead of `values`.
73+
* <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.
74+
* <b><i>Ixia-C</i></b>: Supported value for `flows[i].metrics.latency.mode` is `cut_through`.
75+
* <b><i>Ixia-C</i></b>: The metric `loss` in flow metrics is currently not supported.
76+
* <b><i>Ixia-C</i></b>: When flow transmit is started, transmission will be restarted on any existing flows already transmitting packets.
77+
78+
79+
## Release v1.16.0-2
480
> 18th November, 2024
581
682
#### Build Details

‎docs/tests-chassis-app.md

+3-3
Original file line numberDiff line numberDiff line change
@@ -75,7 +75,7 @@ The following procedure shows an example of how to deploy using Docker Compose.
7575
```
7676
services:
7777
keng-controller:
78-
image: ghcr.io/open-traffic-generator/keng-controller:1.16.0-2
78+
image: ghcr.io/open-traffic-generator/keng-controller:1.17.0-9
7979
restart: always
8080
depends_on:
8181
keng-layer23-hw-server:
@@ -94,7 +94,7 @@ logging:
9494
max-file: "10"
9595
mode: "non-blocking"
9696
keng-layer23-hw-server:
97-
image: ghcr.io/open-traffic-generator/keng-layer23-hw-server:1.16.0-2
97+
image: ghcr.io/open-traffic-generator/keng-layer23-hw-server:1.17.0-1
9898
restart: always
9999
command:
100100
- "dotnet"
@@ -109,7 +109,7 @@ logging:
109109
max-file: "10"
110110
mode: "non-blocking"
111111
otg-gnmi-server:
112-
image: ghcr.io/open-traffic-generator/otg-gnmi-server:1.14.16
112+
image: ghcr.io/open-traffic-generator/otg-gnmi-server:1.14.18
113113
restart: always
114114
depends_on:
115115
keng-controller:

‎notes.md

+38-59
Original file line numberDiff line numberDiff line change
@@ -2,85 +2,64 @@
22

33
| Component | Version |
44
|-------------------------------|---------------|
5-
| Open Traffic Generator API | [1.16.0](https://redocly.github.io/redoc/?url=https://raw.githubusercontent.com/open-traffic-generator/models/v1.16.0/artifacts/openapi.yaml) |
6-
| snappi | [1.16.0](https://pypi.org/project/snappi/1.16.0) |
7-
| gosnappi | [1.16.0](https://pkg.go.dev/github.com/open-traffic-generator/snappi/gosnappi@v1.16.0) |
8-
| keng-controller | [1.16.0-2](https://github.com/orgs/open-traffic-generator/packages/container/package/keng-controller) |
5+
| Open Traffic Generator API | [1.17.0](https://redocly.github.io/redoc/?url=https://raw.githubusercontent.com/open-traffic-generator/models/v1.17.0/artifacts/openapi.yaml) |
6+
| snappi | [1.17.0](https://pypi.org/project/snappi/1.17.0) |
7+
| gosnappi | [1.17.0](https://pkg.go.dev/github.com/open-traffic-generator/snappi/gosnappi@v1.17.0) |
8+
| keng-controller | [1.17.0-9](https://github.com/orgs/open-traffic-generator/packages/container/package/keng-controller) |
99
| ixia-c-traffic-engine | [1.8.0.193](https://github.com/orgs/open-traffic-generator/packages/container/package/ixia-c-traffic-engine) |
1010
| keng-app-usage-reporter | [0.0.1-52](https://github.com/orgs/open-traffic-generator/packages/container/package/keng-app-usage-reporter) |
11-
| ixia-c-protocol-engine | [1.00.0.415](https://github.com/orgs/open-traffic-generator/packages/container/package/ixia-c-protocol-engine) |
12-
| keng-layer23-hw-server | [1.16.0-2](https://github.com/orgs/open-traffic-generator/packages/container/package/keng-layer23-hw-server) |
11+
| ixia-c-protocol-engine | [1.00.0.419](https://github.com/orgs/open-traffic-generator/packages/container/package/ixia-c-protocol-engine) |
12+
| keng-layer23-hw-server | [1.17.0-1](https://github.com/orgs/open-traffic-generator/packages/container/package/keng-layer23-hw-server) |
1313
| keng-operator | [0.3.34](https://github.com/orgs/open-traffic-generator/packages/container/package/keng-operator) |
14-
| otg-gnmi-server | [1.14.16](https://github.com/orgs/open-traffic-generator/packages/container/package/otg-gnmi-server) |
15-
| ixia-c-one | [1.16.0-2](https://github.com/orgs/open-traffic-generator/packages/container/package/ixia-c-one/) |
14+
| otg-gnmi-server | [1.14.18](https://github.com/orgs/open-traffic-generator/packages/container/package/otg-gnmi-server) |
15+
| ixia-c-one | [1.17.0-9](https://github.com/orgs/open-traffic-generator/packages/container/package/ixia-c-one/) |
1616
| UHD400 | [1.5.1](https://downloads.ixiacom.com/support/downloads_and_updates/public/UHD400/1.5/1.5.1/artifacts.tar) |
1717

1818

1919
# Release Features(s)
2020

21-
* <b><i>Ixia-C, UHD400</i></b>: Support added for DHCPv6 Client and Server in control plane.
22-
- User will be the able to configure DHCPv6 Client and Server by the following code snippet.
21+
* <b><i>Ixia Chassis & Appliances(Novus, AresOne)</i></b>: Support added for BGP/BGP+ over ISIS Simulated Topology. [More Details](https://github.com/open-traffic-generator/models/pull/327)
2322
```go
24-
// Configure a DHCP Client
25-
dhcpv6client := d1Eth1.Dhcpv6Interfaces().Add().
26-
SetName("p1d1dhcpv61")
27-
28-
dhcpv6client.IaType().Iata()
29-
dhcpv6client.DuidType().Llt()
30-
31-
// Configure a DHCPv6 Server
32-
d1Dhcpv6Server := d2.DhcpServer().Ipv6Interfaces().Add().
33-
SetName("p2d1Dhcpv6Server1").
34-
35-
d1Dhcpv6ServerPool := d1Dhcpv6Server.SetIpv6Name("p2d1ipv6").
36-
Leases().Add().
37-
SetLeaseTime(3600)
38-
IaType := d1Dhcpv6ServerPool.IaType().Iata()
39-
IaType.
40-
SetStartAddress("2000:0:0:1::100").
41-
SetStep(1).
42-
SetSize(10).
43-
SetPrefixLen(64)
44-
```
45-
46-
* <b><i>UHD400</i></b>: Support of Egress Flow tracking for multiple flows is added any location of supported fields upto 10 bits.
47-
- Supported fields are `ethernet.src/dst`, `vlan.id`, `vlan.priority`, `ipv4.src/dst`, `ipv4.precedence`, `ipv6.src/dst`, `ipv6.traffic_class`.
48-
```go
49-
eth := flow.EgressPacket().Add().Ethernet()
50-
ipv4 := flow.EgressPacket().Add().Ipv4()
51-
ipv4Tag := ipv4.Dst().MetricTags().Add()
52-
ipv4Tag.SetName("flow_ipv4_dst")
53-
ipv4Tag.SetOffset(22)
54-
ipv4Tag.SetLength(10)
23+
loopback = simRtr.Ipv4Loopbacks().
24+
Add().
25+
SetName("IPv4Loopback").
26+
SetAddress(dutIPv4).
27+
SetEthName(simRtr.Ethernets().Items()[0].Name())
28+
simRtrBgp= simRtr.Bgp().
29+
SetRouterId(loopback.Address())
30+
simRtrBgpIntf = simRtrBgp.Ipv4Interfaces().Add().
31+
SetIpv4Name(loopback.Name())
32+
simRtrBgpIntf.Peers().Add().
33+
SetAsNumber(1111).
34+
SetAsType(gosnappi.BgpV4PeerAsType.EBGP).
35+
SetPeerAddress(fromPeerIp).
36+
SetName("BgpPeer1")
5537
```
38+
Note: For configuration of simulated topology please refer [here](https://github.com/open-traffic-generator/ixia-c/releases/tag/v1.16.0-2).
5639

57-
* <b><i>Ixia Chassis & Appliances(Novus, AresOne)</i></b>: Support added for ISIS Simulated Topology. [More Details](https://github.com/open-traffic-generator/models/pull/327)
58-
- Configuration for ISIS attributes for newly introduced simulated routers are identical to configuration for currently supported directly connected emulated routers.
59-
- `devices[i].ethernets[j].connection.simulated_link`​ is introduced to create a simulated ethernet connection to build a Simulated Topology.
40+
* <b><i>Ixia-C, Ixia Chassis & Appliances(Novus, AresOne)</i></b>: Support added for GRE header in traffic flows.
6041
```go
61-
simulatedRouterEthernet := simulatedRouter.Ethernets().Add().
62-
SetName("simRtrEth").
63-
SetMac("00:00:11:02:02:02")
64-
simulatedRouterEthernet.Connection().SimulatedLink().SetRemoteSimulatedLink("connRtrSimEth")
65-
66-
connectedRouterSimulatedEthernet := connectedRouter.Ethernets().Add().
67-
SetName("connRtrSimEth").
68-
SetMac("00:00:01:01:01:01")
69-
connectedRouterSimulatedEthernet.Connection().SimulatedLink().SetRemoteSimulatedLink("simRtrEth")
42+
flow1 := config.Flows().Add()
43+
...
44+
gre := flow1.Packet().Add().Gre()
45+
...
7046
```
71-
Note: `get_metrics/states` APIs are only applicable for the connected emulated routers and not for the simulated routers.
47+
Note: By default the correct GRE Protocol value will be set automatically depending on next header eg. IPv4/v6.
7248

73-
* <b><i>Ixia-C, UHD400, Ixia Chassis & Appliances(Novus, AresOne)</i></b>: Support added for fetching `lldp_neighbors[i].custom_tlvs[j].information` as hex bytes using `get_states` API. [More details](https://github.com/open-traffic-generator/models/pull/392)
7449

7550
### Bug Fix(s)
76-
* <b><i>Ixia Chassis & Appliances(Novus, AresOne)</i></b>: Issue is fixed where for certain scenarios such as retrieving large control capture buffer or fetching `get_metrics/states` for large amount of data results in errors similar to <i>"grpc: received message larger than max (7934807 vs. 4194304)"</i>.
77-
- For such scenarios note that the grpc receive buffer on the client should also be locally increased if necessary from default value of 4 MB.
51+
* <b><i>Ixia Chassis & Appliances(Novus, AresOne)</i></b>: Issue is fixed where fetching ISIS learned information using `get_states` would sometimes fail with a error <i>Cannot clear data while transfer is in progress - data would be inconsistent</i>.
52+
53+
* <b><i>Ixia-C</i></b>: Issue is fixed where ARP/ND resolution was failing for LAG configurations with a mix of Loopback and connected interfaces.
54+
55+
* <b><i>Ixia-C</i></b>: Issue is fixed where on fetching BGP/BGP+ learned prefix information using `get_states` would return an incorrect prefix in certain scenarios. This was more likely to happen for IPv6 prefixes.
56+
57+
* <b><i>Ixia-C, UHD400</i></b>: Issue is fixed where if the DHCPv6 client type is configured as IANAPD, DHCPv6 Server `get_states` doesn't show IAPD addresses.
7858

79-
* <b><i>Ixia-C</i></b>: Issue is fixed for LLDP where, when multiple custom tlvs are configured to be sent, sometimes the bytes in the `information` field in the outgoing LLDP PDUs were corrupted.
59+
* <b><i>UHD400</i></b>: Issue is fixed where Auto MAC resolution was not working properly for multinic scenarios such as LAG, resulting in flows being transmitted with dest MAC as 00:00:00:00:00:00 and DUT not forwarding these packets.
8060

8161

8262
#### Known Issues
83-
* <b><i>Ixia-C, UHD400</i></b>: When the DHCPv6 client type is configured as IANAPD, DHCPv6 Server `get_states` doesn't show IAPD addresses
8463
* <b><i>Ixia-C, UHD400</i></b>: When DHCPv6 Server is configured with multiple pools, The DHCPv6 clients are not accepting addresses from different pools.
8564
* <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.
8665
* <b><i>Ixia Chassis & Appliances(Novus, AresOne)</i></b>: `StartProtocols`/`set_control_state.protocol.all.start` can get stuck till the time all DHPCv4/v6 clients receive the leased IPv4/v6 addresses from the DHCPv4/v6 server/relay agent. This may result in getting `"context deadline exceeded"` error in the test program.

‎readme.md

+4-4
Original file line numberDiff line numberDiff line change
@@ -9,9 +9,9 @@
99
</h4>
1010

1111
<p align="center">
12-
<a href="https://github.com/orgs/open-traffic-generator/packages/container/package/keng-controller"><img alt="Release v1.16.0-2" src="https://img.shields.io/badge/release-v1.16.0--2-brightgreen"></a>
13-
<a href="https://redocly.github.io/redoc/?url=https://raw.githubusercontent.com/open-traffic-generator/models/v1.16.0/artifacts/openapi.yaml"><img alt="Open Traffic Generator v1.16.0" src="https://img.shields.io/badge/open--traffic--generator-v1.16.0-brightgreen"></a>
14-
<a href="https://pypi.org/project/snappi/1.16.0"><img alt="snappi v1.16.0" src="https://img.shields.io/badge/snappi-v1.16.0-brightgreen"></a>
12+
<a href="https://github.com/orgs/open-traffic-generator/packages/container/package/keng-controller"><img alt="Release v1.17.0-9" src="https://img.shields.io/badge/release-v1.17.0--9-brightgreen"></a>
13+
<a href="https://redocly.github.io/redoc/?url=https://raw.githubusercontent.com/open-traffic-generator/models/v1.17.0/artifacts/openapi.yaml"><img alt="Open Traffic Generator v1.17.0" src="https://img.shields.io/badge/open--traffic--generator-v1.17.0-brightgreen"></a>
14+
<a href="https://pypi.org/project/snappi/1.17.0"><img alt="snappi v1.17.0" src="https://img.shields.io/badge/snappi-v1.17.0-brightgreen"></a>
1515
<a href="docs/news.md"><img alt="news" src="https://img.shields.io/badge/-news-blue?logo=github"></a>
1616
<a href="docs/contribute.md"><img alt="news" src="https://img.shields.io/badge/-contribute-blue?logo=github"></a>
1717
<a href="docs/support.md"><img alt="Slack Status" src="https://img.shields.io/badge/slack-support-blue?logo=slack"></a>
@@ -83,7 +83,7 @@ cd conformance
8383
#### 3. Optionally, run test using [curl](https://curl.se/)
8484

8585
We can also pass equivalent **JSON configuration** directly to **controller**, just by using **curl**.
86-
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.16.0/artifacts/openapi.yaml).
86+
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.17.0/artifacts/openapi.yaml).
8787

8888

8989
```bash

0 commit comments

Comments
 (0)
Please sign in to comment.