Skip to content

Releases: open-traffic-generator/ixia-c

Release v0.0.1-4139

29 Jun 09:39
11a35d1
Compare
Choose a tag to compare

About

This build includes new features.

Build Details

Component Version
Open Traffic Generator API 0.11.10
snappi 0.11.16
gosnappi 0.11.16
ixia-c-controller 0.0.1-4139
ixia-c-traffic-engine 1.6.0.35
ixia-c-app-usage-reporter 0.0.1-37
ixia-c-protocol-engine 1.00.0.315
ixia-c-ixhw-server 0.11.10-2
ixia-c-operator 0.3.1
ixia-c-gnmi-server 1.11.16
ixia-c-one 0.0.1-4139

Release Features(s)

  • Support added for multiple Rx endpoints both port traffic.

    // Port Traffic
    flow.SetName("flow:p1->p2,p3").
      TxRx().Port().
      SetTxName("p1").
      SetRxNames([]string{"p2", "p3"})
  • Support added for Rx port disaggregation of flow metrics.

    flow := config.Flows().Add().SetName("flow")
    flow.Metrics(). PredefinedMetricTags().SetRxName(true)
    // gNMI state fetch on flows will show the drilldown as given below
    "updates": [
      {
      "Path": "flows/flow[name=f1]",
      "values": {
        "flows/flow": {
        "open-traffic-generator-flow:name": "f1",
        "open-traffic-generator-flow:state": {                     // Contains the aggregated per-flow stats
          ....
        },
        "open-traffic-generator-flow:tag-metrics": {              // Contains the disaggregated per-flow stats
          "tag-metric": [
          {
            "name-value": "rx_name=p2",
            "state": {
              ....
              "name-value": "rx_name=p2",
              "tags": [
                {
                "tag-name": "rx_name",
                "tag-value": 
                  {
                    "value-as-string": "p2",
                    "value-type": "STRING"
                  }
            ....
          },
          {
            "name-value": "rx_name=p3",
            "state": {
              ....
            }
          }
        ....
      }
    ]

Known Issues

  • Supported value for flows[i].metrics.latency.mode is cut_through.
  • The metric loss in flow metrics is currently not supported.
  • When flow transmit is started, transmission will be restarted on any existing flows already transmitting packets.
  • #118

Release v0.0.1-4124

16 Jun 06:30
f375fef
Compare
Choose a tag to compare

About

This build includes new features.

Build Details

Component Version
Open Traffic Generator API 0.11.9
snappi 0.11.15
gosnappi 0.11.15
ixia-c-controller 0.0.1-4124
ixia-c-traffic-engine 1.6.0.35
ixia-c-app-usage-reporter 0.0.1-37
ixia-c-protocol-engine 1.00.0.310
ixia-c-ixhw-server 0.11.9-6
ixia-c-operator 0.3.1
ixia-c-gnmi-server 1.11.14
ixia-c-one 0.0.1-4124

Release Features(s)

  • Support added for weighted pairs for packet size distribution in traffic flows.
    • predefined packet size distributions supported are imix, ipsec_imix, ipv6_imix, standard_imix, tcp_imix. It can be configured as follows:
        myFlow.Size().WeightPairs().SetPredefined(gosnappi.FlowSizeWeightPairsPredefined.IMIX)
    • Custom packet size distribution is also supported. It can configured as follows,
        customWeightPairs := myFlow.Size().WeightPairs().Custom()
        customWeightPairs.Add().SetSize(64).SetWeight(7)
        customWeightPairs.Add().SetSize(570).SetWeight(4)
        customWeightPairs.Add().SetSize(1518).SetWeight(1)
  • Support is added for egress tracking based on IPv4 total length.

Known Issues

  • Supported value for flows[i].metrics.latency.mode is cut_through.
  • The metric loss in flow metrics is currently not supported.
  • When flow transmit is started, transmission will be restarted on any existing flows already transmitting packets.
  • #118

Release v0.0.1-4080

02 Jun 06:41
7236a8c
Compare
Choose a tag to compare

About

This build includes stability fixes.

Build Details

Component Version
Open Traffic Generator API 0.11.9
snappi 0.11.15
gosnappi 0.11.15
ixia-c-controller 0.0.1-4080
ixia-c-traffic-engine 1.6.0.35
ixia-c-app-usage-reporter 0.0.1-37
ixia-c-protocol-engine 1.02.21.29
ixia-c-ixhw-server 0.11.9-3
ixia-c-operator 0.3.1
ixia-c-gnmi-server 1.11.14
ixia-c-one 0.0.1-4080

Known Issues

  • Supported value for flows[i].metrics.latency.mode is cut_through.
  • The metric loss in flow metrics is currently not supported.
  • When flow transmit is started, transmission will be restarted on any existing flows already transmitting packets.
  • #118

Release v0.0.1-4064

18 May 09:03
37e187b
Compare
Choose a tag to compare

About

This build includes bug fix.

Build Details

Component Version
Open Traffic Generator API 0.11.8
snappi 0.11.14
gosnappi 0.11.14
ixia-c-controller 0.0.1-4064
ixia-c-traffic-engine 1.6.0.35
ixia-c-app-usage-reporter 0.0.1-37
ixia-c-protocol-engine 1.02.21.17
ixia-c-ixhw-server 0.11.8-12
ixia-c-operator 0.3.1
ixia-c-gnmi-server 1.11.13
ixia-c-one 0.0.1-4064

Bug Fix(s)

Known Issues

  • Supported value for flows[i].metrics.latency.mode is cut_through.
  • The metric loss in flow metrics is currently not supported.
  • When flow transmit is started, transmission will be restarted on any existing flows already transmitting packets.
  • #118

Release v0.0.1-4013

05 May 07:28
3c3f26c
Compare
Choose a tag to compare

About

This build includes new features.

Build Details

Component Version
Open Traffic Generator API 0.11.8
snappi 0.11.14
gosnappi 0.11.14
ixia-c-controller 0.0.1-4013
ixia-c-traffic-engine 1.6.0.35
ixia-c-app-usage-reporter 0.0.1-37
ixia-c-protocol-engine 1.00.0.299
ixia-c-ixhw-server 0.11.8-8
ixia-c-operator 0.3.1
ixia-c-gnmi-server 1.11.13
ixia-c-one 0.0.1-4013

Release Features(s)

  • Egress tracking now also supports tracking for vlan, mpls packet headers.
  • Support added in ixia-c-gnmi-server for fetching Latency measurements.
    • User can enable latency measurement by setting f1.Metrics().SetEnable(true).Latency().SetEnable(true).
      • Only cut_through latency mode is supported.
    • User can fetch latency measurements using given models-yang path.
        module: open-traffic-generator-flow
        +--rw flows
          +--ro flow* [name]
              +--ro name              -> ../state/name
              +--ro state
              |  ....
              |  ....
              |  +--ro minimum-latency?   otg-types:timeticks64
              |  +--ro maximum-latency?   otg-types:timeticks64
              |  +--ro average-latency?   otg-types:timeticks64
              |  ....
              |  ....
      
      

Bug Fix(s)

  • Intermittent crash in ixia-c-controller while fetching flow_metrics is fixed.

Known Issues

  • Supported value for flows[i].metrics.latency.mode is cut_through.
  • The metric loss in flow metrics is currently not supported.
  • When flow transmit is started, transmission will be restarted on any existing flows already transmitting packets.
  • #118

Release v0.0.1-3927

24 Apr 15:54
74eeffa
Compare
Choose a tag to compare

About

This build includes new features.

Build Details

Component Version
Open Traffic Generator API 0.11.8
snappi 0.11.14
gosnappi 0.11.14
ixia-c-controller 0.0.1-3927
ixia-c-traffic-engine 1.6.0.35
ixia-c-app-usage-reporter 0.0.1-37
ixia-c-protocol-engine 1.00.0.298
ixia-c-ixhw-server 0.11.8-1
ixia-c-operator 0.3.1
ixia-c-gnmi-server 1.11.10
ixia-c-one 0.0.1-3927

Release Features(s)

  • A new property egress_packet inside flow has been introduced to configure expected packet shape as it is received on the test port.
    go eth := flow.EgressPacket().Add().Ethernet() ipv4 := flow.EgressPacket().Add().Ipv4()

  • A new property metric_tags has been introduced for fields inside headers configured in egress_packet to enable tracking metrics for each applicable value corresponding to a portion of or all bits inside the field.

      ipv4Tag := ipv4.Dst().MetricTags().Add()
      ipv4Tag.SetName("flow_ipv4_dst")
      ipv4Tag.SetOffset(24)
      ipv4Tag.SetLength(8)
    • As of this release, enabling metric_tags is only supported on ethernet.src/dst, ipv4.src/dst, ipv4.tos. Support for more fields shall be added in upcoming releases.

    • Limitations:

      • The total number of tracking bits available on an ixia-c Rx port is 12 bits. Out of these some of the bits are needed for tracking flows, example 2 flows need 1 bit, 4 flows need 2 bits, 8 flows need 3 bits etc. The sum of metric_tag.length for each field inside each header configured in egress_packet cannot exceed the remaining bits available on the Rx port.
      • The total number of tracking fields that can be configured across a set of flows which have the same Rx port, is two.
  • A new property is introduced in get_metrics.flow to fetch tagged metrics.

  • User can set get_metrics.flow.tagged_metrics.include=false not to include tagged_metrics in the flow_metrics response.
  • Specific tagged_metrics can be fetched by setting get_metrics.flow.tagged_metrics.filters[i].name.

Known Issues

  • Supported value for flows[i].metrics.latency.mode is cut_through.
  • The metric loss in flow metrics is currently not supported.
  • When flow transmit is started, transmission will be restarted on any existing flows already transmitting packets.
  • #118

Release v0.0.1-3889

31 Mar 18:09
9b6b35f
Compare
Choose a tag to compare

About

This build includes new features.

Build Details

Component Version
Open Traffic Generator API 0.11.4
snappi 0.11.6
gosnappi 0.11.6
ixia-c-controller 0.0.1-3889
ixia-c-traffic-engine 1.6.0.35
ixia-c-app-usage-reporter 0.0.1-37
ixia-c-protocol-engine 1.00.0.290
ixia-c-ixhw-server 0.11.4-1
ixia-c-operator 0.3.1
ixia-c-gnmi-server 1.11.5
ixia-c-one 0.0.1-3889

Features(s)

  • All API response errors over gRPC and HTTP transport can now be inspected like so:

        # snippet of error handling in snappi
        try:
        # call set config
        api.set_config(payload)
        except Exception as e:
            err = api.from_exception(e)  # helper function to parse exception
            if err is not None: # exception was of otg error format
                print(err.code)
                print(err.errors)
            else: # some other exception
                print(e)
        // gosnappi snippet for error handling
        resp, err := api.SetConfig(config)
        if err != nil {
            // helper function to parse error
            // retuns a bool with err, indicating wheather the error was of otg error format 
            errSt, ok := api.FromError(err)
            if ok {
                fmt.Println(errSt.Code())
                if errSt.errSt.HasKind() {
                fmt.Println(errSt.Kind())
                }
                fmt.Println(errSt.Errors())
            } else {
                fmt.Println(err.Error())
            }
        }

Known Issues

  • Supported value for flows[i].metrics.latency.mode is cut_through.
  • The metric loss in flow metrics is currently not supported.
  • When flow transmit is started, transmission will be restarted on any existing flows already transmitting packets.
  • #118

Release v0.0.1-3865

16 Mar 17:35
64509df
Compare
Choose a tag to compare

About

This build includes new features.

Build Details

Component Version
Open Traffic Generator API 0.11.1
snappi 0.11.1
gosnappi 0.11.1
ixia-c-controller 0.0.1-3865
ixia-c-traffic-engine 1.6.0.35
ixia-c-app-usage-reporter 0.0.1-37
ixia-c-protocol-engine 1.00.0.283
ixia-c-ixhw-server 0.11.1-1
ixia-c-operator 0.3.1
ixia-c-gnmi-server 1.11.1
ixia-c-one 0.0.1-3865

Features(s)

  • Warning messages shall now be automatically printed on STDOUT if a property or an API with status deprecated or under-review is exercised in snappi / gosnappi. This may also lead to linters raising deprecation error.
  • New API endpoints /control/state and /control/action have been exposed consolidating pre-existing API endpoints inside /control/ (now deprecated) in order to reduce API surface and introducing clean organization. Please see snappi-tests utils for usage.
  • API endpoints /results/* have now been renamed to /monitor/* .

Known Issues

  • Supported value for flows[i].metrics.latency.mode is cut_through.
  • The metric loss in flow metrics is currently not supported.
  • When flow transmit is started, transmission will be restarted on any existing flows already transmitting packets.
  • #118

Release v0.0.1-3841

03 Mar 12:06
b01441e
Compare
Choose a tag to compare

Announcement

ixia-c container images are hosted on GitHub Container Registry, We stopped publishing ixia-c container images to DockerHub.

About

This build includes new features.

Build Details

Component Version
Open Traffic Generator API 0.10.12
snappi 0.10.9
gosnappi 0.10.9
ixia-c-controller 0.0.1-3841
ixia-c-traffic-engine 1.6.0.35
ixia-c-app-usage-reporter 0.0.1-37
ixia-c-protocol-engine 1.00.0.279
ixia-c-ixhw-server 0.10.12-2
ixia-c-operator 0.3.1
ixia-c-gnmi-server 1.10.19
ixia-c-one 0.0.1-3841

Features(s)

  • API version compatibility check is now automatically performed between ixia-c containers upon API calls to ixia-c-controller . It can be disabled by booting ixia-c-controller container with --disable-version-check flag.
  • API version compatibility check can now be automatically performed between snappi/gosnappi and ixia-c-controller upon API calls by enabling version check flag in API handle like so:
    • gosnappi
        api := gosnappi.NewApi()
        api.SetVersionCompatibilityCheck(true)
    
    • snappi
        api = snappi.api(version_check=True)
    
    In upcoming releases, this will be enabled by default.

Known Issues

  • Supported value for flows[i].metrics.latency.mode is cut_through.
  • The metric loss in flow metrics is currently not supported.
  • When flow transmit is started, transmission will be restarted on any existing flows already transmitting packets.
  • #118

Release v0.0.1-3807

17 Feb 11:39
d4fdb79
Compare
Choose a tag to compare

Announcement

ixia-c container images are hosted on GitHub Container Registry, We stopped publishing ixia-c container images to DockerHub.

About

This build contains bug fixes.

Build Details

Component Version
Open Traffic Generator API 0.10.9
snappi 0.10.7
gosnappi 0.10.7
ixia-c-controller 0.0.1-3807
ixia-c-traffic-engine 1.6.0.30
ixia-c-app-usage-reporter 0.0.1-37
ixia-c-protocol-engine 1.00.0.271
ixia-c-ixhw-server 0.10.7-8
ixia-c-operator 0.3.1
ixia-c-gnmi-server 1.10.14
ixia-c-one 0.0.1-3807

Bug Fix(s)

  • Concurrent API calls (where at least one call was set_config) to ixia-c-controller was resulting in crash.

Known Issues

  • Supported value for flows[i].metrics.latency.mode is cut_through.
  • The metric loss in flow metrics is currently not supported.
  • When flow transmit is started, transmission will be restarted on any existing flows already transmitting packets.
  • #118