Skip to content

Commit 88abeb1

Browse files
committedDec 23, 2024·
Release 1.19.0-5
1 parent 970c45d commit 88abeb1

File tree

13 files changed

+234
-96
lines changed

13 files changed

+234
-96
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.17.0-9
4+
# Release: https://github.com/open-traffic-generator/ixia-c/releases/tag/v1.19.0-5
55
images:
66
- name: keng-controller
77
newName: ghcr.io/open-traffic-generator/keng-controller
8-
newTag: "1.17.0-9"
8+
newTag: "1.19.0-5"
99
- name: otg-gnmi-server
1010
newName: ghcr.io/open-traffic-generator/otg-gnmi-server
11-
newTag: "1.14.18"
11+
newTag: "1.19.0"
1212
- name: ixia-c-traffic-engine
1313
newName: ghcr.io/open-traffic-generator/ixia-c-traffic-engine
14-
newTag: "1.8.0.193"
14+
newTag: "1.8.0.241"

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

+6-6
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.17.0
5+
require github.com/open-traffic-generator/snappi/gosnappi v1.19.0
66

77
require (
88
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.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
12+
golang.org/x/net v0.30.0 // indirect
13+
golang.org/x/sys v0.26.0 // indirect
14+
golang.org/x/text v0.19.0 // indirect
15+
google.golang.org/genproto/googleapis/rpc v0.0.0-20241015192408-796eee8c2d53 // indirect
16+
google.golang.org/grpc v1.69.0 // indirect
1717
google.golang.org/protobuf v1.35.2 // indirect
1818
gopkg.in/yaml.v2 v2.2.3 // indirect
1919
)

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

+30-14
Original file line numberDiff line numberDiff line change
@@ -5,34 +5,50 @@ 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/go-logr/logr v1.4.2 h1:6pFjapn8bFcIbiKo3XT4j/BhANplGihG6tvd+8rYgrY=
9+
github.com/go-logr/logr v1.4.2/go.mod h1:9T104GzyrTigFIr8wt5mBrctHMim0Nb2HLGrmQ40KvY=
10+
github.com/go-logr/stdr v1.2.2 h1:hSWxHoqTgW2S2qGc0LTAI563KZ5YKYRhT3MFKZMbjag=
11+
github.com/go-logr/stdr v1.2.2/go.mod h1:mMo/vtBO5dYbehREoey6XUKy/eSumjCCveDpRre4VKE=
812
github.com/golang/protobuf v1.5.4 h1:i7eJL8qZTpSEXOPTxNKhASYpMn+8e5Q6AdndVa1dWek=
913
github.com/golang/protobuf v1.5.4/go.mod h1:lnTiLA8Wa4RWRcIUkrtSVa5nRhsEGBg48fD6rSs7xps=
1014
github.com/google/go-cmp v0.6.0 h1:ofyhxvXcZhMsU5ulbFiLKl/XBFqE1GSq7atu8tAmTRI=
1115
github.com/google/go-cmp v0.6.0/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY=
16+
github.com/google/uuid v1.6.0 h1:NIvaJDMOsjHA8n1jAhLSgzrAzy1Hgr+hNrb57e+94F0=
17+
github.com/google/uuid v1.6.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo=
1218
github.com/gorilla/mux v1.8.1 h1:TuBL49tXwgrFYWhqrNgrUNEY92u81SPhu7sTdzQEiWY=
1319
github.com/gorilla/mux v1.8.1/go.mod h1:AKf9I4AEqPTmMytcMc0KkNouC66V3BtZ4qD5fmWSiMQ=
1420
github.com/kr/pretty v0.3.1 h1:flRD4NNwYAUpkphVc1HcthR4KEIFJ65n8Mw5qdRn3LE=
1521
github.com/kr/pretty v0.3.1/go.mod h1:hoEshYVHaxMs3cyo3Yncou5ZscifuDolrwPKZanG3xk=
1622
github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY=
1723
github.com/kr/text v0.2.0/go.mod h1:eLer722TekiGuMkidMxC/pM04lWEeraHUUmBw8l2grE=
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=
24+
github.com/open-traffic-generator/snappi/gosnappi v1.19.0 h1:N46mldgGRrxuSIIbgSpIivVoDfog+wizKWGaR0eU1wo=
25+
github.com/open-traffic-generator/snappi/gosnappi v1.19.0/go.mod h1:sWDRer3XL6it+ObVnpI2hSOg3RjD+T63HLo/a4jik2U=
2026
github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM=
2127
github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
2228
github.com/rogpeppe/go-internal v1.12.0 h1:exVL4IDcn6na9z1rAb56Vxr+CgyK3nn3O+epU5NdKM8=
2329
github.com/rogpeppe/go-internal v1.12.0/go.mod h1:E+RYuTGaKKdloAfM02xzb0FW3Paa99yedzYV+kq4uf4=
24-
github.com/stretchr/testify v1.9.0 h1:HtqpIVDClZ4nwg75+f6Lvsy/wHu+3BoSGCbBAcpTsTg=
25-
github.com/stretchr/testify v1.9.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY=
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=
30+
github.com/stretchr/testify v1.10.0 h1:Xv5erBjTwe/5IxqUQTdXv5kgmIvbHo3QQyRwhJsOfJA=
31+
github.com/stretchr/testify v1.10.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY=
32+
go.opentelemetry.io/otel v1.31.0 h1:NsJcKPIW0D0H3NgzPDHmo0WW6SptzPdqg/L1zsIm2hY=
33+
go.opentelemetry.io/otel v1.31.0/go.mod h1:O0C14Yl9FgkjqcCZAsE053C13OaddMYr/hz6clDkEJE=
34+
go.opentelemetry.io/otel/metric v1.31.0 h1:FSErL0ATQAmYHUIzSezZibnyVlft1ybhy4ozRPcF2fE=
35+
go.opentelemetry.io/otel/metric v1.31.0/go.mod h1:C3dEloVbLuYoX41KpmAhOqNriGbA+qqH6PQ5E5mUfnY=
36+
go.opentelemetry.io/otel/sdk v1.31.0 h1:xLY3abVHYZ5HSfOg3l2E5LUj2Cwva5Y7yGxnSW9H5Gk=
37+
go.opentelemetry.io/otel/sdk v1.31.0/go.mod h1:TfRbMdhvxIIr/B2N2LQW2S5v9m3gOQ/08KsbbO5BPT0=
38+
go.opentelemetry.io/otel/sdk/metric v1.31.0 h1:i9hxxLJF/9kkvfHppyLL55aW7iIJz4JjxTeYusH7zMc=
39+
go.opentelemetry.io/otel/sdk/metric v1.31.0/go.mod h1:CRInTMVvNhUKgSAMbKyTMxqOBC0zgyxzW55lZzX43Y8=
40+
go.opentelemetry.io/otel/trace v1.31.0 h1:ffjsj1aRouKewfr85U2aGagJ46+MvodynlQ1HYdmJys=
41+
go.opentelemetry.io/otel/trace v1.31.0/go.mod h1:TXZkRk7SM2ZQLtR6eoAWQFIHPvzQ06FJAsO1tJg480A=
42+
golang.org/x/net v0.30.0 h1:AcW1SDZMkb8IpzCdQUaIq2sP4sZ4zw+55h6ynffypl4=
43+
golang.org/x/net v0.30.0/go.mod h1:2wGyMJ5iFasEhkwi13ChkO/t1ECNC4X4eBKkVFyYFlU=
44+
golang.org/x/sys v0.26.0 h1:KHjCJyddX0LoSTb3J+vWpupP9p0oznkqVk/IfjymZbo=
45+
golang.org/x/sys v0.26.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
46+
golang.org/x/text v0.19.0 h1:kTxAhCbGbxhK0IwgSKiMO5awPoDQ0RpfiVYBfK860YM=
47+
golang.org/x/text v0.19.0/go.mod h1:BuEKDfySbSR4drPmRPG/7iBdf8hvFMuRexcpahXilzY=
48+
google.golang.org/genproto/googleapis/rpc v0.0.0-20241015192408-796eee8c2d53 h1:X58yt85/IXCx0Y3ZwN6sEIKZzQtDEYaBWrDvErdXrRE=
49+
google.golang.org/genproto/googleapis/rpc v0.0.0-20241015192408-796eee8c2d53/go.mod h1:GX3210XPVPUjJbTUbvwI8f2IpZDMZuPJWDzDuebbviI=
50+
google.golang.org/grpc v1.69.0 h1:quSiOM1GJPmPH5XtU+BCoVXcDVJJAzNcoyfC2cCjGkI=
51+
google.golang.org/grpc v1.69.0/go.mod h1:vyjdE6jLBI76dgpDojsFGNaHlxdjXN9ghpnd2o7JGZ4=
3652
google.golang.org/protobuf v1.35.2 h1:8Ar7bF+apOIoThw1EdZl0p1oWvMqTHmpA2fRTyZO8io=
3753
google.golang.org/protobuf v1.35.2/go.mod h1:9fA7Ob0pmnwhb644+1+CVWFRbNajQ6iRojtC/QF5bRE=
3854
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=

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

+5-5
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.17.0-9
31+
image: ghcr.io/open-traffic-generator/keng-controller:1.19.0-5
3232
imagePullPolicy: IfNotPresent
3333
name: keng-controller
3434
volumeMounts:
@@ -63,15 +63,15 @@ spec:
6363
value: "5555"
6464
- name: ARG_CORE_LIST
6565
value: 1 1 1
66-
image: ghcr.io/open-traffic-generator/ixia-c-traffic-engine:1.8.0.193
66+
image: ghcr.io/open-traffic-generator/ixia-c-traffic-engine:1.8.0.241
6767
imagePullPolicy: IfNotPresent
6868
name: ixia-c-port1-traffic-engine
6969
securityContext:
7070
privileged: true
7171
- env:
7272
- name: INTF_LIST
7373
value: eth1
74-
image: ghcr.io/open-traffic-generator/ixia-c-protocol-engine:1.00.0.419
74+
image: ghcr.io/open-traffic-generator/ixia-c-protocol-engine:1.00.0.424
7575
imagePullPolicy: IfNotPresent
7676
name: ixia-c-port1-protocol-engine
7777
securityContext:
@@ -99,15 +99,15 @@ spec:
9999
value: "5555"
100100
- name: ARG_CORE_LIST
101101
value: 1 1 1
102-
image: ghcr.io/open-traffic-generator/ixia-c-traffic-engine:1.8.0.193
102+
image: ghcr.io/open-traffic-generator/ixia-c-traffic-engine:1.8.0.241
103103
imagePullPolicy: IfNotPresent
104104
name: ixia-c-port2-traffic-engine
105105
securityContext:
106106
privileged: true
107107
- env:
108108
- name: INTF_LIST
109109
value: eth2
110-
image: ghcr.io/open-traffic-generator/ixia-c-protocol-engine:1.00.0.419
110+
image: ghcr.io/open-traffic-generator/ixia-c-protocol-engine:1.00.0.424
111111
imagePullPolicy: IfNotPresent
112112
name: ixia-c-port2-protocol-engine
113113
securityContext:

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

+6-6
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.17.0-9
71-
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.419
70+
docker pull ghcr.io/open-traffic-generator/keng-controller:1.19.0-5
71+
docker pull ghcr.io/open-traffic-generator/ixia-c-traffic-engine:1.8.0.241
72+
docker pull ghcr.io/open-traffic-generator/ixia-c-protocol-engine:1.00.0.424
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.17.0-9
84-
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.419
83+
kind load docker-image ghcr.io/open-traffic-generator/keng-controller:1.19.0-5
84+
kind load docker-image ghcr.io/open-traffic-generator/ixia-c-traffic-engine:1.8.0.241
85+
kind load docker-image ghcr.io/open-traffic-generator/ixia-c-protocol-engine:1.00.0.424
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

+13-13
Original file line numberDiff line numberDiff line change
@@ -58,32 +58,32 @@ Following are the recommended resources for a basic use-case.
5858
data:
5959
versions: |
6060
{
61-
"release": "1.17.0-9",
61+
"release": "1.19.0-5",
6262
"images": [
6363
{
6464
"name": "controller",
6565
"path": "ghcr.io/open-traffic-generator/keng-controller",
66-
"tag": "1.17.0-9"
66+
"tag": "1.19.0-5"
6767
},
6868
{
6969
"name": "gnmi-server",
7070
"path": "ghcr.io/open-traffic-generator/otg-gnmi-server",
71-
"tag": "1.14.18"
71+
"tag": "1.19.0"
7272
},
7373
{
7474
"name": "traffic-engine",
7575
"path": "ghcr.io/open-traffic-generator/ixia-c-traffic-engine",
76-
"tag": "1.8.0.193"
76+
"tag": "1.8.0.241"
7777
},
7878
{
7979
"name": "protocol-engine",
8080
"path": "ghcr.io/open-traffic-generator/ixia-c-protocol-engine",
81-
"tag": "1.00.0.419"
81+
"tag": "1.00.0.424"
8282
},
8383
{
8484
"name": "ixhw-server",
8585
"path": "ghcr.io/open-traffic-generator/keng-layer23-hw-server",
86-
"tag": "1.17.0-1"
86+
"tag": "1.19.0-5"
8787
}
8888
]
8989
}
@@ -100,35 +100,35 @@ Following are the recommended resources for a basic use-case.
100100
data:
101101
versions: |
102102
{
103-
"release": "1.17.0-9",
103+
"release": "1.19.0-5",
104104
"images": [
105105
{
106106
"name": "controller",
107107
"path": "ghcr.io/open-traffic-generator/keng-controller",
108-
"tag": "1.17.0-9",
108+
"tag": "1.19.0-5",
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.18"
116+
"tag": "1.19.0"
117117
},
118118
{
119119
"name": "traffic-engine",
120120
"path": "ghcr.io/open-traffic-generator/ixia-c-traffic-engine",
121-
"tag": "1.8.0.193"
121+
"tag": "1.8.0.241"
122122
},
123123
{
124124
"name": "protocol-engine",
125125
"path": "ghcr.io/open-traffic-generator/ixia-c-protocol-engine",
126-
"tag": "1.00.0.419"
126+
"tag": "1.00.0.424"
127127
},
128128
{
129129
"name": "ixhw-server",
130130
"path": "ghcr.io/open-traffic-generator/keng-layer23-hw-server",
131-
"tag": "1.17.0-1"
131+
"tag": "1.19.0-5"
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.17.0-9
151+
version: 1.19.0-5
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.17.0 dpkt
27+
python -m pip install --upgrade snappi==1.19.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-
* **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.
3+
* **23rd December, 2024**: Ixia-c version 1.19.0 (build 5) released. This conforms to **[v1.19.0](https://redocly.github.io/redoc/?url=https://raw.githubusercontent.com/open-traffic-generator/models/v1.19.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+
* **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.17.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

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

3-
## Release v1.17.0-9 (Latest)
3+
## Release v1.19.0-5 (Latest)
4+
> 23rd December, 2024
5+
6+
#### Build Details
7+
8+
| Component | Version |
9+
|-------------------------------|---------------|
10+
| Open Traffic Generator API | [1.19.0](https://redocly.github.io/redoc/?url=https://raw.githubusercontent.com/open-traffic-generator/models/v1.19.0/artifacts/openapi.yaml) |
11+
| snappi | [1.19.0](https://pypi.org/project/snappi/1.19.0) |
12+
| gosnappi | [1.19.0](https://pkg.go.dev/github.com/open-traffic-generator/snappi/gosnappi@v1.19.0) |
13+
| keng-controller | [1.19.0-5](https://github.com/orgs/open-traffic-generator/packages/container/package/keng-controller) |
14+
| ixia-c-traffic-engine | [1.8.0.241](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.424](https://github.com/orgs/open-traffic-generator/packages/container/package/ixia-c-protocol-engine) |
17+
| keng-layer23-hw-server | [1.19.0-5](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.19.0](https://github.com/orgs/open-traffic-generator/packages/container/package/otg-gnmi-server) |
20+
| ixia-c-one | [1.19.0-5](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-C</i></b>: Support added to send flows over DHCPv6 endpoints.
27+
```go
28+
f1 := config.Flows().Add()​
29+
f1.SetName(flowName).​
30+
TxRx().Device().​
31+
SetTxNames([]string{"p1d1dhcpv6_1"}).​
32+
SetRxNames([]string{"p2d1ipv6"})​
33+
f1Ip := f1.Packet().Add().Ipv6()​
34+
// will be populated automatically with the the dynamically allocated Ip to DHCP client​
35+
f1Ip.Src().Auto().Dhcp()​
36+
…​
37+
f2Ip.Dst().Auto().Dhcp()​
38+
```
39+
40+
* <b><i>Ixia Chassis & Appliances(Novus, AresOne)</i></b>: Support added to retrieve timestamp of the last link state change event of the test port. [More Details](https://github.com/open-traffic-generator/models/pull/398)
41+
- This can be retrieved by accessing `port_metrics[i].last_change`.
42+
43+
Note:
44+
- As mentioned in the `Known Issues`, ports being used in the tests must be rebooted once after upgrading to the latest version of `keng-layer23-hw-server`.
45+
- Test ports and DUT must be time synced to the same time source if link state change timestamps need to be co-related.
46+
47+
* <b><i>Ixia Chassis & Appliances(Novus, AresOne)</i></b>: Support added for RSVP over ISIS Simulated Topology.
48+
```go
49+
// Create RSVP neighbor on interface connected to DUT.
50+
// Note that get_states and get_metrics are supported only for the connected RSVP neighbors.
51+
p2RsvpNeighbor := p2d1.Rsvp().SetName("p2RsvpNbr")
52+
p2RsvpNeighbor.Ipv4Interfaces().
53+
Add().SetIpv4Name(p2d1Ipv4.Name()).
54+
SetNeighborIp(p2d1Ipv4.Gateway())
55+
56+
// Create RSVP ingress LSPs on the loopback behind the simulated topology.
57+
fromLoRsvpIngress := fromLoRsvpLsp.P2PIngressIpv4Lsps().Add().SetName("ingressLsp")
58+
fromLoRsvpIngress.SetRemoteAddress("1.1.1.1").SetTunnelId(100)
59+
60+
// Create RSVP egress endpoint on the loopback behind the simulated topology.
61+
toLoRsvpLsp := toLoRsvpPeer.LspIpv4Interfaces().Add().SetIpv4Name("loopback")
62+
toLoRsvpLspEgress := toLoRsvpLsp.P2PEgressIpv4Lsps().SetName("egressLsp")
63+
64+
// Note: for TE SPF to work properly on DUT, ensure you have added TrafficEngineering to all ISIS interfaces.
65+
te = p2d1IsisIntf.TrafficEngineering().Add().SetMetricLevel(10)
66+
te.PriorityBandwidths().
67+
SetPb0(125000000).
68+
...
69+
SetPb7(125000000)
70+
```
71+
72+
73+
74+
### Bug Fix(s)
75+
* <b><i>Ixia Chassis & Appliances(Novus, AresOne)</i></b>: Issue is fixed where `set_config` was failing with the error `"BgpIPRouteRange is missing"` when IPv4 routes with IPv6 next-hops (RFC5549) was configured.
76+
77+
* <b><i>Ixia Chassis & Appliances(Novus, AresOne)</i></b>: Issue is fixed where `get_states` on `bgpv4/6_prefixes` was returning error `"Error occurred while fetching bgp_prefix states:Length cannot be less than zero. (Parameter 'length')"` if the prefix contained `as_path` with multiple segments.
78+
79+
* <b><i>Ixia-C, UHD400</i></b>: Issue is fixed where `get_states` for `isis` was returning IPv6 prefixes in upper case causing prefix match for IPv6 prefixes to fail in tests.
80+
81+
* <b><i>Ixia-C</i></b>: Issue is fixed where `set_config` was failing with error `"Error occurred while setting Traffic config (Layer1 only) for user common:Error fetching stats for port port9: unsuccessful Response: Port 7 is not added"` when the traffic engine was deployed in multi nic mode (e.g. for lag setups with 8 ports).
82+
83+
* <b><i>Ixia-C</i></b>: Issue is fixed where the traffic engine was crashing on deployment using a single cpu core (`--cpuset-cpus="0-1"`).
84+
85+
* <b><i>VM Licensing</i></b>: Issue is fixed for users using the VM License Server where, after a reboot, license-server VM serving multiple keng-controller(s) did not come up and tests running with those controller(s) started failing.
86+
87+
88+
89+
#### Known Issues
90+
* <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.
91+
* <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.
92+
* <b><i>UHD400</i></b>: Packets will not be transmitted if `flows[i].rate.pps` is less than 50.
93+
* <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`.
94+
* <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.
95+
* <b><i>Ixia-C</i></b>: Supported value for `flows[i].metrics.latency.mode` is `cut_through`.
96+
* <b><i>Ixia-C</i></b>: The metric `loss` in flow metrics is currently not supported.
97+
* <b><i>Ixia-C</i></b>: When flow transmit is started, transmission will be restarted on any existing flows already transmitting packets.
98+
99+
100+
## Release v1.17.0-9
4101
> 29th November, 2024
5102
6103
#### 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.17.0-9
78+
image: ghcr.io/open-traffic-generator/keng-controller:1.19.0-5
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.17.0-1
97+
image: ghcr.io/open-traffic-generator/keng-layer23-hw-server:1.19.0-5
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.18
112+
image: ghcr.io/open-traffic-generator/otg-gnmi-server:1.19.0
113113
restart: always
114114
depends_on:
115115
keng-controller:

‎notes.md

+58-37
Original file line numberDiff line numberDiff line change
@@ -2,65 +2,86 @@
22

33
| Component | Version |
44
|-------------------------------|---------------|
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) |
9-
| ixia-c-traffic-engine | [1.8.0.193](https://github.com/orgs/open-traffic-generator/packages/container/package/ixia-c-traffic-engine) |
5+
| Open Traffic Generator API | [1.19.0](https://redocly.github.io/redoc/?url=https://raw.githubusercontent.com/open-traffic-generator/models/v1.19.0/artifacts/openapi.yaml) |
6+
| snappi | [1.19.0](https://pypi.org/project/snappi/1.19.0) |
7+
| gosnappi | [1.19.0](https://pkg.go.dev/github.com/open-traffic-generator/snappi/gosnappi@v1.19.0) |
8+
| keng-controller | [1.19.0-5](https://github.com/orgs/open-traffic-generator/packages/container/package/keng-controller) |
9+
| ixia-c-traffic-engine | [1.8.0.241](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.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) |
11+
| ixia-c-protocol-engine | [1.00.0.424](https://github.com/orgs/open-traffic-generator/packages/container/package/ixia-c-protocol-engine) |
12+
| keng-layer23-hw-server | [1.19.0-5](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.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/) |
14+
| otg-gnmi-server | [1.19.0](https://github.com/orgs/open-traffic-generator/packages/container/package/otg-gnmi-server) |
15+
| ixia-c-one | [1.19.0-5](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 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)
21+
* <b><i>Ixia-C</i></b>: Support added to send flows over DHCPv6 endpoints.
2222
```go
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")
23+
f1 := config.Flows().Add()​
24+
f1.SetName(flowName).​
25+
TxRx().Device().​
26+
SetTxNames([]string{"p1d1dhcpv6_1"}).​
27+
SetRxNames([]string{"p2d1ipv6"})​
28+
f1Ip := f1.Packet().Add().Ipv6()​
29+
// will be populated automatically with the the dynamically allocated Ip to DHCP client​
30+
f1Ip.Src().Auto().Dhcp()​
31+
…​
32+
f2Ip.Dst().Auto().Dhcp()​
3733
```
38-
Note: For configuration of simulated topology please refer [here](https://github.com/open-traffic-generator/ixia-c/releases/tag/v1.16.0-2).
3934

40-
* <b><i>Ixia-C, Ixia Chassis & Appliances(Novus, AresOne)</i></b>: Support added for GRE header in traffic flows.
35+
* <b><i>Ixia Chassis & Appliances(Novus, AresOne)</i></b>: Support added to retrieve timestamp of the last link state change event of the test port. [More Details](https://github.com/open-traffic-generator/models/pull/398)
36+
- This can be retrieved by accessing `port_metrics[i].last_change`.
37+
38+
Note:
39+
- As mentioned in the `Known Issues`, ports being used in the tests must be rebooted once after upgrading to the latest version of `keng-layer23-hw-server`.
40+
- Test ports and DUT must be time synced to the same time source if link state change timestamps need to be co-related.
41+
42+
* <b><i>Ixia Chassis & Appliances(Novus, AresOne)</i></b>: Support added for RSVP over ISIS Simulated Topology.
4143
```go
42-
flow1 := config.Flows().Add()
43-
...
44-
gre := flow1.Packet().Add().Gre()
45-
...
44+
// Create RSVP neighbor on interface connected to DUT.
45+
// Note that get_states and get_metrics are supported only for the connected RSVP neighbors.
46+
p2RsvpNeighbor := p2d1.Rsvp().SetName("p2RsvpNbr")
47+
p2RsvpNeighbor.Ipv4Interfaces().
48+
Add().SetIpv4Name(p2d1Ipv4.Name()).
49+
SetNeighborIp(p2d1Ipv4.Gateway())
50+
51+
// Create RSVP ingress LSPs on the loopback behind the simulated topology.
52+
fromLoRsvpIngress := fromLoRsvpLsp.P2PIngressIpv4Lsps().Add().SetName("ingressLsp")
53+
fromLoRsvpIngress.SetRemoteAddress("1.1.1.1").SetTunnelId(100)
54+
55+
// Create RSVP egress endpoint on the loopback behind the simulated topology.
56+
toLoRsvpLsp := toLoRsvpPeer.LspIpv4Interfaces().Add().SetIpv4Name("loopback")
57+
toLoRsvpLspEgress := toLoRsvpLsp.P2PEgressIpv4Lsps().SetName("egressLsp")
58+
59+
// Note: for TE SPF to work properly on DUT, ensure you have added TrafficEngineering to all ISIS interfaces.
60+
te = p2d1IsisIntf.TrafficEngineering().Add().SetMetricLevel(10)
61+
te.PriorityBandwidths().
62+
SetPb0(125000000).
63+
...
64+
SetPb7(125000000)
4665
```
47-
Note: By default the correct GRE Protocol value will be set automatically depending on next header eg. IPv4/v6.
66+
4867

4968

5069
### Bug Fix(s)
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>.
70+
* <b><i>Ixia Chassis & Appliances(Novus, AresOne)</i></b>: Issue is fixed where `set_config` was failing with the error `"BgpIPRouteRange is missing"` when IPv4 routes with IPv6 next-hops (RFC5549) was configured.
71+
72+
* <b><i>Ixia Chassis & Appliances(Novus, AresOne)</i></b>: Issue is fixed where `get_states` on `bgpv4/6_prefixes` was returning error `"Error occurred while fetching bgp_prefix states:Length cannot be less than zero. (Parameter 'length')"` if the prefix contained `as_path` with multiple segments.
73+
74+
* <b><i>Ixia-C, UHD400</i></b>: Issue is fixed where `get_states` for `isis` was returning IPv6 prefixes in upper case causing prefix match for IPv6 prefixes to fail in tests.
5275

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.
76+
* <b><i>Ixia-C</i></b>: Issue is fixed where `set_config` was failing with error `"Error occurred while setting Traffic config (Layer1 only) for user common:Error fetching stats for port port9: unsuccessful Response: Port 7 is not added"` when the traffic engine was deployed in multi nic mode (e.g. for lag setups with 8 ports).
5477

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.
78+
* <b><i>Ixia-C</i></b>: Issue is fixed where the traffic engine was crashing on deployment using a single cpu core (`--cpuset-cpus="0-1"`).
5679

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.
80+
* <b><i>VM Licensing</i></b>: Issue is fixed for users using the VM License Server where, after a reboot, license-server VM serving multiple keng-controller(s) did not come up and tests running with those controller(s) started failing.
5881

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.
6082

6183

6284
#### Known Issues
63-
* <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.
6485
* <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.
6586
* <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.
6687
* <b><i>UHD400</i></b>: Packets will not be transmitted if `flows[i].rate.pps` is less than 50.

‎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.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>
12+
<a href="https://github.com/orgs/open-traffic-generator/packages/container/package/keng-controller"><img alt="Release v1.19.0-5" src="https://img.shields.io/badge/release-v1.19.0--5-brightgreen"></a>
13+
<a href="https://redocly.github.io/redoc/?url=https://raw.githubusercontent.com/open-traffic-generator/models/v1.19.0/artifacts/openapi.yaml"><img alt="Open Traffic Generator v1.19.0" src="https://img.shields.io/badge/open--traffic--generator-v1.19.0-brightgreen"></a>
14+
<a href="https://pypi.org/project/snappi/1.19.0"><img alt="snappi v1.19.0" src="https://img.shields.io/badge/snappi-v1.19.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.17.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.19.0/artifacts/openapi.yaml).
8787

8888

8989
```bash

0 commit comments

Comments
 (0)
Please sign in to comment.