Skip to content

Ixia-c Release Notes and Version Compatibility

Release v1.3.0-2 (Latest)

19th April, 2024

Build Details

Component Version
Open Traffic Generator API 1.3.0
snappi 1.3.0
gosnappi 1.3.0
keng-controller 1.3.0-2
ixia-c-traffic-engine 1.6.0.167
keng-app-usage-reporter 0.0.1-52
ixia-c-protocol-engine 1.00.0.378
keng-layer23-hw-server 1.3.0-4
keng-operator 0.3.28
otg-gnmi-server 1.13.15
ixia-c-one 1.3.0-2
UHD400 1.2.4

Release Features(s)

  • Ixia-C, Ixia Chassis & Appliances(Novus, AresOne), UHD400: Support added for advertising Segment Routing Traffic Engineering(SR-TE) policy using replay_updates.
      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​
    
  • Ixia-C : Support added for zero and custom checksum in TCP/UDP/ICMPv4/v6/IPv4/GRE packet templates in flows.
      udp := cfg.Flows().Add().Packet().Add().Udp()
      udp.Checksum().SetCustom(0)
    
  • Ixia-C : DPDK version upgraded from v21.11 to v23.11 for standalone ixia-c-traffic-engine container based deployment in DPDK mode.
  • Ixia Chassis & Appliances(Novus, AresOne): Support added for IPv4/v6 route ranges with varying number of communities/extended_communities for BGP/BGP+ peers.
      route.Communities().Add().
        SetAsNumber(65534).
        SetAsCustom(20410).
        SetType(gosnappi.BgpCommunityType.MANUAL_AS_NUMBER)
    

Bug Fix(s)

  • Ixia Chassis & Appliances(Novus, AresOne): 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.
  • Ixia-C, Ixia Chassis & Appliances(Novus, AresOne), UHD400: 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).
  • Ixia-C : Memory leak fixed for BGPv4/v6 peers with large number of routes configured.

Known Issues

  • Ixia Chassis & Appliances(Novus, AresOne): 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.
  • UHD400: values for fields in flow packet headers can be created with maximum length of 1000 values.
  • UHD400: Port statistics are not getting cleared on SetConfig.
  • Ixia-C: 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.
  • Ixia-C: Supported value for flows[i].metrics.latency.mode is cut_through.
  • Ixia-C: The metric loss in flow metrics is currently not supported.
  • Ixia-C: 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

Component Version
Open Traffic Generator API 1.1.0
snappi 1.1.1
gosnappi 1.1.1
keng-controller 1.1.0-21
ixia-c-traffic-engine 1.6.0.109
keng-app-usage-reporter 0.0.1-52
ixia-c-protocol-engine 1.00.0.375
keng-layer23-hw-server 1.1.0-6
keng-operator 0.3.28
otg-gnmi-server 1.13.14
ixia-c-one 1.1.0-21
UHD400 1.2.4

Release Features(s)

  • Ixia Chassis & Appliances(Novus + AresOne): Support added for BGP/BGP+ update replay. This feature can be used to configure the BGP/BGP+ peer to send series of updates containing advertised or withdrawn IPv4/v6 unicast routes.

      updateReplayBlock := bgpPeer.ReplayUpdates().StructuredPdus()
      adv := updateReplayBlock.Updates().Add()
      adv.PathAttributes().SetOrigin(gosnappi.BgpAttributesOrigin.IGP)
      adv.PathAttributes().AsPath().
            FourByteAsPath().
            Segments().
            Add().
            SetType(gosnappi.BgpAttributesFourByteAsPathSegmentType.AS_SEQ).
            SetAsNumbers([]uint32{2222, 1113, 7000, 80000})
    
      adv.PathAttributes().Community().Add().CustomCommunity().SetAsNumber(65534).SetCustom("4FBA")
      adv.PathAttributes().Community().Add().CustomCommunity().SetAsNumber(65534).SetCustom("AAAA")​​
      ....
      adv.PathAttributes().MpReach(). NextHop().SetIpv4("1.1.1.2")
      ipv4_unicast_routes_adv := adv.PathAttributes().MpReach().Ipv4Unicast() 
      ipv4_unicast_routes_adv.Add().SetAddress("10.10.10.10").SetPrefix(32)
      ...    
    

  • UHD400: Support added for setting ports state using set_control_state.port.link.state=up/down.

  • snappi: support added for python v3.12.

Bug Fix(s)

  • Ixia-C: Issue where BGP/BGP+ sessions were intermittently flapping for large number of routes such as 1 million is fixed.
  • Ixia-C: Issue where if priority bits were set in VLAN header for incoming ISIS PDUs session was not coming up is fixed.
  • Ixia Chassis & Appliances(AresOne): Issue where port stats were not coming for port type TA1-KD08D of AresOne is fixed.
  • UHD400: Intermittent issue where rx counters were not being incremented for flow stats is fixed.

Known Issues

  • UHD400: values for fields in flow packet headers can be created with maximum length of 1000 values.
  • UHD400: Port statistics are not getting cleared on SetConfig.
  • Ixia Chassis & Appliances(Novus, AresOne): 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.
  • Ixia-C: 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.
  • Ixia-C: Supported value for flows[i].metrics.latency.mode is cut_through.
  • Ixia-C: The metric loss in flow metrics is currently not supported.
  • Ixia-C: When flow transmit is started, transmission will be restarted on any existing flows already transmitting packets.

Release v1.1.0-12

22nd March, 2024

Build Details

Component Version
Open Traffic Generator API 1.1.0
snappi 1.1.0
gosnappi 1.1.0
keng-controller 1.1.0-12
ixia-c-traffic-engine 1.6.0.109
keng-app-usage-reporter 0.0.1-52
ixia-c-protocol-engine 1.00.0.370
keng-layer23-hw-server 1.1.0-5
keng-operator 0.3.28
otg-gnmi-server 1.13.13
ixia-c-one 1.1.0-12
UHD400 1.2.3

Release Features(s)

  • UHD400: Support for LAG and LACP protocol is added.
  • LACP parameters are supported as per LAG/LACP section in OTG model Release v1.1.0
  • Per Port LACP Metrics can be retrieved using GNMI as per otg-models-yang details.
  • Per LAG Metrics can be retrieved using GNMI as per otg-models-yang details.

  • UHD400: Support for data traffic over LAG is added for rx ports.

Known Issues

  • UHD400: values for fields in flow packet headers can be created with maximum length of 1000 values.
  • UHD400: Port statistics are not getting cleared on SetConfig.
  • Ixia Chassis & Appliances(Novus, AresOne): 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.
  • Ixia-C: 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.
  • Ixia-C: Supported value for flows[i].metrics.latency.mode is cut_through.
  • Ixia-C: The metric loss in flow metrics is currently not supported.
  • Ixia-C: When flow transmit is started, transmission will be restarted on any existing flows already transmitting packets.

Release v1.1.0-10

20th March, 2024

Build Details

Component Version
Open Traffic Generator API 1.1.0
snappi 1.1.0
gosnappi 1.1.0
keng-controller 1.1.0-10
ixia-c-traffic-engine 1.6.0.109
keng-app-usage-reporter 0.0.1-37
ixia-c-protocol-engine 1.00.0.370
keng-layer23-hw-server 1.1.0-5
keng-operator 0.3.28
otg-gnmi-server 1.13.12
ixia-c-one 1.1.0-10
UHD400 1.1.1

Release Features(s)

  • Ixia-C & UHD400: Support added for BGP/BGP+ update replay. This feature can be used to configure the BGP/BGP+ peer to send series of updates containing advertised or withdrawn IPv4/v6 unicast routes.
      updateReplayBlock := bgpPeer.ReplayUpdates().StructuredPdus()
      adv := updateReplayBlock.Updates().Add()
      adv.PathAttributes().SetOrigin(gosnappi.BgpAttributesOrigin.IGP)
      adv.PathAttributes().AsPath().
            FourByteAsPath().
            Segments().
            Add().
            SetType(gosnappi.BgpAttributesFourByteAsPathSegmentType.AS_SEQ).
            SetAsNumbers([]uint32{2222, 1113, 7000, 80000})
      ....
      adv.PathAttributes().MpReach(). NextHop().SetIpv4("1.1.1.2")
      ipv4_unicast_routes_adv := adv.PathAttributes().MpReach().Ipv4Unicast() 
      ipv4_unicast_routes_adv.Add().SetAddress("10.10.10.10").SetPrefix(32)
      ...    
    
  • custom attributes can be added in following manner.

      adv1.PathAttributes().
              OtherAttributes().Add().
              SetFlagOptional(true).
              SetFlagTransitive(true).
              SetType(8).
              SetRawValue("04ffff0007")
    

  • Complete custom update packet can be added by using RawBytes option as shown below.

      updateReplayBlock := d1BgpIpv4Interface1Peer1.ReplayUpdates().RawBytes()
          adv1 := updateReplayBlock.Updates().Add()
          adv1.SetUpdateBytes("400101004002004005040")
    

  • Ixia-C: Value-list support added for IPv4 dscp field.

      flowEth := flow.Packet().Add().Ethernet()
      .... 
      ipv4 := flow.Packet().Add().ipv4()
        ipv4.Src().SetValue(srcAddr)
        ipv4.Dst().SetValue(dstAddr)
        ipv4.Priority().Dscp().Phb().SetValues([]uint32{10,12,14,18 ...})
    

  • OTG-gNMI-Server: Support added for InUpdates, OutUpdates, InOpens, OutOpens, InNotifications and OutNotifications for gNMI path /bgp-peers/bgp-peer/state/counters.

Bug Fix(s)

  • Ixia Chassis & Appliances(Novus + AresOne): Issue where for protocol over LAG scenarios (e.g. BGP over LAG) get_metrics was returning empty protocol metrics, is fixed.
  • Ixia-C: Issue where get_states.ipv4/v6_neighbors for interfaces created over LAG was failing, is now fixed.
  • Ixia-C: Issue where peers[i].advanced.time_to_live attribute was not working as expected for BGPv4 peers is fixed.

Known Issues

  • UHD400: values for fields in flow packet headers can be created with maximum length of 1000 values.
  • UHD400: Port statistics are not getting cleared on SetConfig.
  • Ixia Chassis & Appliances(Novus, AresOne): 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.
  • Ixia-C: 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.
  • Ixia-C: Supported value for flows[i].metrics.latency.mode is cut_through.
  • Ixia-C: The metric loss in flow metrics is currently not supported.
  • Ixia-C: When flow transmit is started, transmission will be restarted on any existing flows already transmitting packets.

Release v1.0.0-104

1st March, 2024

Build Details

Component Version
Open Traffic Generator API 1.0.2
snappi 1.0.2
gosnappi 1.0.2
keng-controller 1.0.0-104
ixia-c-traffic-engine 1.6.0.109
keng-app-usage-reporter 0.0.1-37
ixia-c-protocol-engine 1.00.0.367
keng-layer23-hw-server 1.0.2-4
keng-operator 0.3.28
otg-gnmi-server 1.13.10
ixia-c-one 1.0.1-104
UHD400 1.1.1

Release Features(s)

  • UHD400: Value-list support added for IPv6 flow label.
      flowEth := flow.Packet().Add().Ethernet()
      .... 
      ipv6 := flow.Packet().Add().Ipv6()
        ipv6.Src().SetValue(srcAddr)
        ipv6.Dst().SetValue(dstAddr)
        ipv6.FlowLabel().SetValues([]uint32{1000,2000, ...})
    
  • UHD400: Support added for egress tracking on DSCP field in IPv4 traffic header using Priority.Raw field with appropriate offsets.
      eth := flow.EgressPacket().Add().Ethernet()
      ipv4 := flow.EgressPacket().Add().Ipv4()
      ipv4PhbTag := ipv4.Priority().Raw().MetricTags().Add()
      ipv4PhbTag.SetName("flow_ipv4_dscp_phb")
      ipv4PhbTag.SetOffset(0)
      ipv4PhbTag.SetLength(6)
        ipv4EcnTag := ipv4.Priority().Raw().MetricTags().Add()
      ipv4EcnTag.SetName("flow_ipv4_dscp_ecn")
      ipv4EcnTag.SetOffset(6)
      ipv4EcnTag.SetLength(2)
    
  • Ixia Chassis & Appliances(Novus + AresOne), Ixia-C and UHD400: Support added for partial Start / Stop for ISIS .
      s := gosnappi.NewControlState()
      isisRouters := s.Protocol().Isis().Routers()        
      isisRouters.SetRouterNames(routerNames).SetState("up/down")
      _ , err := client.Api().SetControlState(s)
    
  • Ixia Chassis & Appliances(Novus + AresOne): Support added for partial Start / Stop for BGP.
      s := gosnappi.NewControlState()
      bgpPeers := s.Protocol().Bgp().Peers()        
      bgpPeers.SetPeerNames(peerNames).SetState("up/down")
      _ , err := client.Api().SetControlState(s)
    
  • Ixia Chassis & Appliances(Novus + AresOne) and Ixia-C: Support for all objects including ERO and RRO are now available for RSVP packet header.
  • User can encode rsvp packet using flows and invoke set_control_state.traffic.flow_transmit to transmit the rsvp packets.
      f1.Packet().Add().Ethernet()
      ip := f1.Packet().Add().Ipv4()
      ip.Options().Add().SetChoice("router_alert")
      rsvp := f1.Packet().Add().Rsvp()
      rsvpPathMsg := rsvp.MessageType().Path()
      session := rsvpPathMsg.Objects().Add().ClassNum().Session().CType().LspTunnelIpv4()
      session.Ipv4TunnelEndPointAddress().SetValue("2.2.2.2")
      session.TunnelId().SetValue(1)
      session.ExtendedTunnelId().AsIpv4().SetValue("1.1.1.1")
      rsvpHop := rsvpPathMsg.Objects().Add().ClassNum().RsvpHop().CType().Ipv4()
      rsvpHop.Ipv4Address().SetValue("1.1.2.1")
      rsvpPathMsg.Objects().Add().ClassNum().TimeValues()
      rsvpPathMsg.Objects().Add().ClassNum().LabelRequest()
      ero := rsvpPathMsg.Objects().Add().ClassNum().ExplicitRoute().CType().Type1()
      ero.Subobjects().Add().Type().Ipv4Prefix().Ipv4Address().SetValue("1.1.3.1")
      ero.Subobjects().Add().Type().Ipv4Prefix().Ipv4Address().SetValue("1.1.4.1")
      sessionAttribute := rsvpPathMsg.Objects().Add().ClassNum().SessionAttribute().CType().LspTunnel()
      sessionAttribute.SetSessionName("otg_test_port")
      senderTemplate := rsvpPathMsg.Objects().Add().ClassNum().SenderTemplate().CType().LspTunnelIpv4()
      senderTemplate.Ipv4TunnelSenderAddress().SetValue("1.1.1.1")
      senderTemplate.LspId().SetValue(1)
      senderTspec := rsvpPathMsg.Objects().Add().ClassNum().SenderTspec().CType().IntServ()
      senderTspec.MaximumPacketSize().SetValue(1500)
      senderTspec.SetPeakDataRate(1e+10)
      rro := rsvpPathMsg.Objects().Add().ClassNum().RecordRoute().CType().Type1()
      rro.Subobjects().Add().Type().Ipv4Address().Ipv4Address().SetValue("1.1.1.1")
      rro.Subobjects().Add().Type().Ipv4Address().Ipv4Address().SetValue("1.1.2.1")
    
  • Note:
    • Variable field values within the flow using increment, decrement and values are not supported for rsvp fields.
    • Tracking should not be enabled if intention is for device under test to consume the generated packets.

Bug Fix(s)

  • Ixia-C and UHD400: Intermittent issue is fixed where for certain ISIS L1+L2 test scenarios, ISIS Hello PDUs were not being transmitted from test ports.
  • Ixia-C and UHD400: Potential deadlock during SetConfig related to creation of interfaces is fixed.
  • Ixia-C and UHD400: Intermittent issue is fixed where ixia-c-protocol-engine container was restarting during BGP session establishment in certain scenarios.
  • Ixia Chassis & Appliances(AresOne): Issue where SetConfig returns error Object reference not set to an instance of an object. for AresOne ports (QSFP-DD-400GE+200G+100G+50G) is fixed.
  • Ixia Chassis & Appliances(Novus + AresOne): Issue where SetConfig returns error Somehow <lag_name> not available within BGP portData for BGP over LAG is fixed (Please refer to Known Issues section for issue related to BGP metrics returning empty values for BGP over LAG scenario).​

Known Issues

  • Ixia Chassis & Appliances(Novus + AresOne): For protocol over LAG scenarios (e.g. BGP over LAG) get_metrics is returning empty protocol metrics.
  • Ixia-C: Get neighbor states for a LAG member port fails.
  • Ixia Chassis & Appliances(Novus, AresOne): 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.
  • Ixia-C: 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.
  • Ixia-C: Supported value for flows[i].metrics.latency.mode is cut_through.
  • Ixia-C: The metric loss in flow metrics is currently not supported.
  • Ixia-C: When flow transmit is started, transmission will be restarted on any existing flows already transmitting packets.

Release v1.0.0-92

22nd February, 2024

Build Details

Component Version
Open Traffic Generator API 1.0.1
snappi 1.0.1
gosnappi 1.0.1
keng-controller 1.0.0-92
ixia-c-traffic-engine 1.6.0.109
keng-app-usage-reporter 0.0.1-37
ixia-c-protocol-engine 1.00.0.360
keng-layer23-hw-server 1.0.1-4
keng-operator 0.3.28
otg-gnmi-server 1.13.9
ixia-c-one 1.0.1-1
UHD400 1.1.1

Release Features(s)

  • UHD400: Enabling metric_tags for egress tracking is now supported for ethernet.src/ dst, vlan.id, vlan.priority, ipv4.src/ dst, ipv4.precedence, ipv6.src/ dst, ipv6.traffic_class
    eth := flow.EgressPacket().Add().Ethernet()
    ipv4 := flow.EgressPacket().Add().Ipv4()
    ipv4Tag := ipv4.Dst().MetricTags().Add()
    ipv4Tag.SetName("flow_ipv4_dst")
    ipv4Tag.SetOffset(22)
    ipv4Tag.SetLength(10)
    
  • Limitations:

    • Maximum of 10 tracking bits is supported.
    • Only a single flow is supported when egress tracking is enabled, except when the tracking header field is Vlan.priority, IPv4.precedence or IPv6.traffic_class. Multiple flows are supported when tracking is enabled on these fields.
    • Tracking is supported on the last 10 bits of header fields, except for IPv4 src/ dst where first 5 bit tracking is also supported.
  • UHD400: Support is added for values on header fields ethernet.src /dst, ipv4.src /dst, ipv6.src /dst, vlan.id, tcp.src_port, tcp.dst_port, udp.src_port, udp.dst_port.

  • Ixia-C: Support added for rsvp Path Message PDU in raw traffic.

  • User can encode rsvp packet using flows and invoke set_control_state.traffic.flow_transmit to transmit the rsvp packets.
      f1.Packet().Add().Ethernet()
      ip := f1.Packet().Add().Ipv4()
      ip.Options().Add().SetChoice("router_alert")
      rsvp := f1.Packet().Add().Rsvp()
      rsvpPathMsg := rsvp.MessageType().Path()
      session := rsvpPathMsg.Objects().Add().ClassNum().Session().CType().LspTunnelIpv4()
      session.Ipv4TunnelEndPointAddress().SetValue("2.2.2.2")
      session.TunnelId().SetValue(1)
      session.ExtendedTunnelId().AsIpv4().SetValue("1.1.1.1")
      rsvpHop := rsvpPathMsg.Objects().Add().ClassNum().RsvpHop().CType().Ipv4()
      rsvpHop.Ipv4Address().SetValue("1.1.2.1")
      rsvpPathMsg.Objects().Add().ClassNum().TimeValues()
      rsvpPathMsg.Objects().Add().ClassNum().LabelRequest()
      sessionAttribute := rsvpPathMsg.Objects().Add().ClassNum().SessionAttribute().CType().LspTunnel()
      sessionAttribute.SetSessionName("otg_test_port")
      senderTemplate := rsvpPathMsg.Objects().Add().ClassNum().SenderTemplate().CType().LspTunnelIpv4()
      senderTemplate.Ipv4TunnelSenderAddress().SetValue("1.1.1.1")
      senderTemplate.LspId().SetValue(1)
      senderTspec := rsvpPathMsg.Objects().Add().ClassNum().SenderTspec().CType().IntServ()
      senderTspec.MaximumPacketSize().SetValue(1500)
      senderTspec.SetPeakDataRate(1e+10)
    
  • Note:
    • Variable field values within the flow using increment, decrement and values are not supported for rsvp fields.
    • Optional objects ClassNum().ExplicitRoute() and ClassNum().RecordRoute() are not yet supported.
    • Tracking should not be enabled if intention is for device under test to consume the generated packets.

Bug Fix(s)

  • keng-operator: Issue is fixed where Ixia-C containers would incorrectly signal readiness even when containers were not fully started in kne deployment, resulting in SetConfig and licensing errors.
  • Ixia Chassis & Appliances(Novus, AresOne): Issue is fixed where SetConfig fails for a traffic flow where inner header (v4/v6) has DSCP value set.

Known Issues

  • Ixia Chassis & Appliances(Novus, AresOne): 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.
  • Ixia-C: 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.
  • Ixia-C: Supported value for flows[i].metrics.latency.mode is cut_through.
  • Ixia-C: The metric loss in flow metrics is currently not supported.
  • Ixia-C: When flow transmit is started, transmission will be restarted on any existing flows already transmitting packets.

Release v1.0.0-7

5th February, 2024

About

This release introduces snappi v1.0 and keng-controller v1.0. Backwards API compatibility will be maintained within 1.x versions of Open Traffic Generator, go-snappi and snappi APIs.

Build Details

Component Version
Open Traffic Generator API 1.0.0
snappi 1.0.0
gosnappi 1.0.0
keng-controller 1.0.0-7
ixia-c-traffic-engine 1.6.0.109
keng-app-usage-reporter 0.0.1-37
ixia-c-protocol-engine 1.00.0.358
keng-layer23-hw-server 1.0.0-1
keng-operator 0.3.22
otg-gnmi-server 1.13.8
ixia-c-one 1.0.0-7
UHD400 1.0.28

Release Features(s)

  • Ixia Chassis & Appliances(Novus, AresOne): Support added for snmpv2c raw traffic.
  • User can encode snmpv2c packet using flows and invoke set_control_state.traffic.flow_transmit to transmit the snmpv2c packets.

      flowEth := flow.Packet().Add().Ethernet()
      .... 
      flowIp := flow.Packet().Add().Ipv4()
      ....
      flowUdp := flow.Packet().Add().Udp()
      ....
      flowUdp.DstPort().SetValue(uint32(161)) // 161 = SNMP
      flowSnmpv2c := flow.Packet().Add().Snmpv2C()​​​
      pdu := flowSnmpv2c.Data().GetRequest()
      pdu.RequestId().SetValue(77777)​​​
      varBinds := pdu.VariableBindings().Add()
      varBinds.SetObjectIdentifier(
        "1.3.6....",
      )​​
    
    Note: Variable field values within the same flow using increment, decrement and values are not supported for snmpv2c fields.

  • Ixia Chassis & Appliances(Novus, AresOne): Support added for AresOne-M 800G`` load modules. For using this,IXOS 10.00must be installed on the chassis. For other load modules, it will continue to work withIXOS 9.20 and 9.30` setups.

Bug Fix(s)

  • Ixia-C: Issue where set_control_state.port.link.state was not working when applied to member ports of a LAG is now fixed.

Known Issues

  • Ixia Chassis & Appliances(Novus, AresOne): 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.
  • Ixia-C: 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.
  • Ixia-C: Supported value for flows[i].metrics.latency.mode is cut_through.
  • Ixia-C: The metric loss in flow metrics is currently not supported.
  • Ixia-C: When flow transmit is started, transmission will be restarted on any existing flows already transmitting packets.

Release v0.1.0-222

19th January, 2024

About

This build includes new features and bug fixes.

Build Details

Component Version
Open Traffic Generator API 0.13.7
snappi 0.13.7
gosnappi 0.13.7
keng-controller 0.1.0-222
ixia-c-traffic-engine 1.6.0.109
keng-app-usage-reporter 0.0.1-37
ixia-c-protocol-engine 1.00.0.355
keng-layer23-hw-server 0.13.7-1
keng-operator 0.3.15
otg-gnmi-server 1.13.7
ixia-c-one 0.1.0-222
UHD400 1.0.28

Release Features(s)

  • Ixia-C: Support added for snmpv2c raw traffic.
  • User can encode snmpv2c packet using flows and invoke set_control_state.traffic.flow_transmit to transmit the snmpv2c packets.

      flowEth := flow.Packet().Add().Ethernet()
      .... 
      flowIp := flow.Packet().Add().Ipv4()
      ....
      flowUdp := flow.Packet().Add().Udp()
      ....
      flowUdp.DstPort().SetValue(uint32(161)) // 161 = SNMP
      flowSnmpv2c := flow.Packet().Add().Snmpv2C()​​​
      pdu := flowSnmpv2c.Data().GetRequest()
      pdu.RequestId().SetValue(77777)​​​
      varBinds := pdu.VariableBindings().Add()
      varBinds.SetObjectIdentifier(
        "1.3.6....",
      )​​
    
    Note: Variable field values within the same flow using increment, decrement and values are not supported for snmpv2c fields.

  • Ixia-C: Support added for ipv4.options in ipv4 header of raw traffic.

  • router_alert option allows devices to intercept packets not addressed to them directly as defined in RFC2113.
  • custom option is provided for to be able to configure user defined ipv4.options as needed.

      // Sample of router_alert option:
      ip.Options().Add().SetChoice("router_alert")
    
      // Sample of user defined custom TLV options (Stream ID)
      ipOptionCustom := ip.Options().Add().SetChoice("custom")
      ipOptionCustom.Custom().Type().CopiedFlag().SetChoice("value").SetValue(0)
      ipOptionCustom.Custom().Type().OptionClass().SetChoice("value").SetValue(0)
      ipOptionCustom.Custom().Type().OptionNumber().SetChoice("value").SetValue(8)
    
      ipOptionCustom.Custom().Length().SetChoice("value").SetValue(4)
      ipOptionCustom.Custom().SetValue("0088")
    

  • Ixia-C: Support added to enable/disable LACP sessions on the fly.

      lagOnlyStart := port2.NewControlState().
          SetChoice(gosnappi.ControlStateChoice.PROTOCOL)
      lagMembers := lagOnlyStart.Protocol().
          Lacp().
          MemberPorts()
      lagMembers.
          SetState(gosnappi.StateProtocolLacpMemberPortsState.UP)
    

Bug Fix(s)

  • Ixia Chassis & Appliances(Novus, AresOne): Issue where egress tracking(metric_tags) was returning an error when trying to track on 'ipv4.priority.raw'(for DSCP) is fixed.
  • Ixia-C: Issue where BGP AS4 number was being logged incorrectly in ixia-c-protocol-engine logs is fixed. #217
  • Ixia-C: Couple of memory leak issues fixed in BGP seen for multiple start/stop of large number of BGP sessions on a port.

Known Issues

  • Ixia Chassis & Appliances(Novus, AresOne): 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.
  • Ixia-C: 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.
  • Ixia-C: Supported value for flows[i].metrics.latency.mode is cut_through.
  • Ixia-C: The metric loss in flow metrics is currently not supported.
  • Ixia-C: When flow transmit is started, transmission will be restarted on any existing flows already transmitting packets.

Release v0.1.0-158

21st December, 2023

About

This build includes new features and bug fixes.

Build Details

Component Version
Open Traffic Generator API 0.13.4
snappi 0.13.4
gosnappi 0.13.4
keng-controller 0.1.0-158
ixia-c-traffic-engine 1.6.0.109
keng-app-usage-reporter 0.0.1-37
ixia-c-protocol-engine 1.00.0.348
keng-layer23-hw-server 0.13.4-1
keng-operator 0.3.14
otg-gnmi-server 1.13.4
ixia-c-one 0.1.0-158
UHD400 1.0.28

Release Features(s)

  • Ixia-C, UHD400, Ixia Chassis & Appliances(Novus, AresOne): Support added for BGP/BGP+ peers to use custom ports instead of default 179 tcp port.
  • Listen Port - TCP port number on which to accept BGP/BGP+ connections from the remote peer.
  • Neighbor Port - Destination TCP port number to be used by the BGP/BGP+ peer when initiating a session to the remote peer.
      bgpPeer.Advanced().SetListenPort(55555)
      bgpPeer.Advanced().SetNeighborPort(55555)
    
  • Ixia-C: Support added to enable/disable BGP/BGP+ peers on the fly.
      s := gosnappi.NewControlState().               
          SetChoice(gosnappi.ControlStateChoice.PROTOCOL)
      bgpPeers := s.Protocol().Bgp().Peers()        
      bgpPeers.SetPeerNames(peerNames).
      SetState(gosnappi.StateProtocolBgpPeersState.UP/DOWN)
      _ , err := client.Api().SetControlState(s)
    
  • Public API in gosnappi SDK has been cleaned up and refactored. PR with the details
  • GosnappiApi interface is now renamed to Api interface.
  • All public methods for creation of structs are now removed from GosnappiApi interface.
  • There were helper methods defined on each struct which have been reorganized or hidden.
  • Choice setter SetChoice() has been made private and is now implicitly set based on the choice property set by the user.
  • Impact on backward compatibility:
    • Updating of gosnappi to 0.13.4 or higher will need change of test programs/implementations utilizing gosnappi SDK.
    • If gosnappi is not updated on the client current tests will continue to work with new keng-controller:0.1.0-158.

Bug Fix(s)

  • Ixia Chassis & Appliances(Novus, AresOne): If a port was in link down state, the state was not being cleared on fresh SetConfig for AresOne ports and Novus100G mode, affecting future tests. This issue is fixed.

Known Issues

  • Ixia Chassis & Appliances(Novus, AresOne): 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.
  • Ixia-C: 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.
  • Ixia-C: Supported value for flows[i].metrics.latency.mode is cut_through.
  • Ixia-C: The metric loss in flow metrics is currently not supported.
  • Ixia-C: When flow transmit is started, transmission will be restarted on any existing flows already transmitting packets.

Release v0.1.0-84

7th December, 2023

About

This build includes new features.

Build Details

Component Version
Open Traffic Generator API 0.13.2
snappi 0.13.2
gosnappi 0.13.2
keng-controller 0.1.0-84
ixia-c-traffic-engine 1.6.0.100
keng-app-usage-reporter 0.0.1-37
ixia-c-protocol-engine 1.00.0.340
keng-layer23-hw-server 0.13.2-2
keng-operator 0.3.13
otg-gnmi-server 1.13.2
ixia-c-one 0.1.0-84
UHD400 1.0.27

Release Features(s)

  • Ixia-C: Support added to trigger link up/down on test ports using the API set_control_state.port.link. This applicable only when the test port is directly connected to device under test via veth connection, e.g in KNE single node cluster, containerlab.
      portStateAction := gosnappi.NewControlState()
      linkState := portStateAction.Port().Link().
                      SetPortNames([]string{port.Name()}).
                      SetState(gosnappi.StatePortLinkState.DOWN/UP)
      api.SetControlState(portStateAction)
    
  • It removes the deviation (deviation_ate_port_link_state_operations_unsupported) which was added in featuresprofile tests for no supporting the LinkState trigger in Ixia-C.

Known Issues

  • Ixia Chassis & Appliances(Novus, AresOne): 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.
  • Ixia-C: 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.
  • Ixia-C: Supported value for flows[i].metrics.latency.mode is cut_through.
  • Ixia-C: The metric loss in flow metrics is currently not supported.
  • Ixia-C: When flow transmit is started, transmission will be restarted on any existing flows already transmitting packets.

Release v0.1.0-81

24th November, 2023

About

This build includes new features and bug fixes.

Build Details

Component Version
Open Traffic Generator API 0.13.2
snappi 0.13.2
gosnappi 0.13.2
keng-controller 0.1.0-81
ixia-c-traffic-engine 1.6.0.100
keng-app-usage-reporter 0.0.1-37
ixia-c-protocol-engine 1.00.0.339
keng-layer23-hw-server 0.13.2-2
keng-operator 0.3.13
otg-gnmi-server 1.13.2
ixia-c-one 0.1.0-81
UHD400 1.0.27

Release Features(s)

  • Support for BGP/BGP+ passive mode Ixia-C, UHD400 and Ixia Chassis & Appliances(Novus, AresOne). If passive_mode of a peer is set to true, it will wait for the remote peer to initiate the BGP session.
  • User needs to set devices[i].bgp.ipv4/v6_interfaces[j].peers[k].advance.passive_mode to true for enabling passive mode.

  • When layer1[i].speed is not explicitly set, the current speed of underlying test interface shall be assumed.

  • This allows setting of layer1 MTU in tests to run on setups with different port speeds on Ixia-C and Ixia Chassis & Appliances(Novus, AresOne) without any modifications.
      otgConfig.Layer1().Add().
          SetName("layerOne").
          SetPortNames(portNames).
          SetMtu(9000)
    
  • For traffic with flow.rate.percentage specified and layer1[i].speed not specified, the rate is now automatically calculated based on the port speed of the port from where traffic is being transmitted.

Bug Fix(s)

  • Issue where devices[i].bgp.ipv4/v6_interfaces[j].peers[k].v4/v6_routes[m].communities was not being sent properly for Ixia Chassis & Appliances(Novus, AresOne) is now fixed.

Known Issues

  • Ixia Chassis & Appliances(Novus, AresOne): 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.
  • Ixia-C: 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.
  • Ixia-C: Supported value for flows[i].metrics.latency.mode is cut_through.
  • Ixia-C: The metric loss in flow metrics is currently not supported.
  • Ixia-C: When flow transmit is started, transmission will be restarted on any existing flows already transmitting packets.

Release v0.1.0-53

10th November, 2023

About

This build includes new features and bug fixes.

Build Details

Component Version
Open Traffic Generator API 0.13.0
snappi 0.13.0
gosnappi 0.13.0
keng-controller 0.1.0-53
ixia-c-traffic-engine 1.6.0.85
keng-app-usage-reporter 0.0.1-37
ixia-c-protocol-engine 1.00.0.337
keng-layer23-hw-server 0.13.0-6
keng-operator 0.3.13
otg-gnmi-server 1.13.0
ixia-c-one 0.1.0-53
UHD400 1.0.27

Release Features(s)

  • Support added for link up/down trigger for UHD400​.
      portStateAction := gosnappi.NewControlState().
                            Port().
                            Link().
                            SetPortNames([]string{"port1"}).
                            SetState(gosnappi.StatePortLinkState.DOWN)
      gosnappi.setControlState(portStateAction)
    
  • Support added for 0x8100(Vlan) and 0x6007(Google Discovery Protocol) ether types in data plane traffic in UHD400.

Bug Fix(s)

  • Some tests were failing because packets were not sent on wire due to frame size of flows not being sufficient to include tracking information in Ixia Chassis & Appliances(AresOne only)​ is fixed.
  • egress tracking on VLAN id or other fields for more than 3 bits was not working in Ixia Chassis & Appliances(Novus, AresOne)​, is fixed.
  • egress tracking now supports upto 11 bits.
  • Issue in ARP resolution in certain cases is now fixed in UHD400​.

Known Issues

  • If keng-layer23-hw-server version is upgraded/downgraded, the ports from Ixia Chassis & Appliances(Novus, AresOne) which will be used from this container must be rebooted once before running the tests.
  • Adding more than 256 devices on a single ixia-c-port causing failure for Ixia Chassis & Appliances(Novus, AresOne).
  • 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.
  • With certain DUTs, ssh service hangs if ISIS L1 MD5 is enabled.
  • 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.1.0-26

3rd November, 2023

About

This build includes stability fixes.

Build Details

Component Version
Open Traffic Generator API 0.13.0
snappi 0.13.0
gosnappi 0.13.0
keng-controller 0.1.0-26
ixia-c-traffic-engine 1.6.0.85
keng-app-usage-reporter 0.0.1-37
ixia-c-protocol-engine 1.00.0.337
keng-layer23-hw-server 0.13.0-2
keng-operator 0.3.13
otg-gnmi-server 1.13.0
ixia-c-one 0.1.0-26
UHD400 1.0.26

Known Issues

  • If keng-layer23-hw-server version is upgraded/downgraded, the ports from Ixia Chassis & Appliances(Novus, AresOne) which will be used from this container must be rebooted once before running the tests.
  • Adding more than 256 devices on a single ixia-c-port causing failure for Ixia Chassis & Appliances(Novus, AresOne).
  • 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.
  • With certain DUTs, ssh service hangs if ISIS L1 MD5 is enabled.
  • 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.1.0-3

20th October, 2023

About

This build includes new features, stability and bug fixes.

Build Details

Component Version
Open Traffic Generator API 0.13.0
snappi 0.13.0
gosnappi 0.13.0
keng-controller 0.1.0-3
ixia-c-traffic-engine 1.6.0.85
keng-app-usage-reporter 0.0.1-37
ixia-c-protocol-engine 1.00.0.337
keng-layer23-hw-server 0.13.0-2
keng-operator 0.3.13
otg-gnmi-server 1.13.0
ixia-c-one 0.1.0-3

Release Feature(s)

  • Ixia-C now offers following existing licensed features free for community use (without requiring Keysight Licensing Solution):
  • ixia-c-protocol-engine, which enables control plane emulation in Ixia-C is now publicly downloadable.
  • Emulation of one or more IPv4 and IPv6 interfaces with Address Resolution Protocol (ARP) and Neighbor Discovery (ND), respectively, is now supported.
  • Automatic destination MAC address resolution for flows with IPv4 / IPv6 endpoints is now supported.
  • Configuring one BGP session over IPv4 / IPv6, advertising V4 / V6 routes is now supported.
  • Users exercising full feature set (Keysight Elastic Network Generator aka KENG) will now have to subscribe to Keysight Licensing Solution. Please reach out to Keysight for more details.
  • keng-layer23-hw-server, which facilitates control and data plane operations on Ixia Chassis & Appliances(Novus, AresOne) is now publicly downloadable (but can only be used with Keysight Licensing Solution)
  • Support is added for overload bit and extended ipv4 reachability in get_states for isis_lsps in Ixia Chassis & Appliances(Novus, AresOne); gNMI path for isis_lsps:
      +--rw isis-routers
        +--ro isis-router* [name]
            +--ro name     -> ../state/name
            +--ro state
              +--ro name?                  string
              .
              .
              +--ro link-state-database
                  +--ro lsp-states
    

The container image paths have changed for some Ixia-C artifacts. Please review Build Details for correct paths.

Bug Fix(s)

  • Memory leak in Ixia Chassis & Appliances(Novus, AresOne) is fixed for long duration tests.
  • gosnappi now correctly validates required primitive types when they're not explicitly set by users.
  • IS-IS metric is no longer sent as 63 when configured as 200 (or more than 63) with wide metrics enabled on Ixia Chassis & Appliances(Novus, AresOne).

Known Issues

  • If keng-layer23-hw-server version is upgraded/downgraded, the ports from Ixia Chassis & Appliances(Novus, AresOne) which will be used from this container must be rebooted once before running the tests.
  • Adding more than 256 devices on a single ixia-c-port causing failure for Ixia Chassis & Appliances(Novus, AresOne).
  • 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.
  • With certain DUTs, ssh service hangs if ISIS L1 MD5 is enabled.
  • 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-4554

29th September, 2023

About

This build includes bug fixes.

Build Details

Component Version
Open Traffic Generator API 0.12.5
snappi 0.12.6
gosnappi 0.12.6
ixia-c-controller 0.0.1-4554
ixia-c-traffic-engine 1.6.0.85
ixia-c-app-usage-reporter 0.0.1-37
ixia-c-protocol-engine 1.00.0.331
ixia-c-ixhw-server 0.12.5-1
ixia-c-operator 0.3.6
ixia-c-gnmi-server 1.12.7
ixia-c-one 0.0.1-4554

Bug Fix(s)

  • monitor.flow_metrics will now correctly reports bytes_tx.
  • The VLAN TPID field in flow packet header configuration is now set to correct default of 65535 when it’s not encapsulating known protocol header.

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-4478

14th September, 2023

About

This build includes stability fixes.

Build Details

Component Version
Open Traffic Generator API 0.12.3
snappi 0.12.3
gosnappi 0.12.3
ixia-c-controller 0.0.1-4478
ixia-c-traffic-engine 1.6.0.45
ixia-c-app-usage-reporter 0.0.1-37
ixia-c-protocol-engine 1.00.0.326
ixia-c-ixhw-server 0.12.3-2
ixia-c-operator 0.3.6
ixia-c-gnmi-server 1.12.5
ixia-c-one 0.0.1-4478

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-4435

1st September, 2023

About

This build includes bug fixes.

Build Details

Component Version
Open Traffic Generator API 0.12.2
snappi 0.12.2
gosnappi 0.12.2
ixia-c-controller 0.0.1-4435
ixia-c-traffic-engine 1.6.0.35
ixia-c-app-usage-reporter 0.0.1-37
ixia-c-protocol-engine 1.00.0.325
ixia-c-ixhw-server 0.12.2-2
ixia-c-operator 0.3.4
ixia-c-gnmi-server 1.12.4
ixia-c-one 0.0.1-4435
`
#### Bug Fix(s)
* set_config fails with unsuccessful Response: RX runtime not configured for port: if large port testbed is used on subsequent test runs 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-4399

21st August, 2023

About

This build includes new features.

Build Details

Component Version
Open Traffic Generator API 0.12.1
snappi 0.12.1
gosnappi 0.12.1
ixia-c-controller 0.0.1-4399
ixia-c-traffic-engine 1.6.0.35
ixia-c-app-usage-reporter 0.0.1-37
ixia-c-protocol-engine 1.00.0.320
ixia-c-ixhw-server 0.12.1-2
ixia-c-operator 0.3.4
ixia-c-gnmi-server 1.12.2
ixia-c-one 0.0.1-4399
`

Release Feature(s)

  • Support for deprecated control, action and update APIs (set_transmit_state, set_link_state, set_capture_state, update_flows, set_route_state, send_ping, set_protocol_state, set_device_state) have been removed. Please use following set_control_state, set_control_action and update_config APIs instead of the previous ones. Please refer to go utils and python utils for further details usage.
  • Most properties in OTG with integer data type have been assigned correct integer format (from uint32, uint64, int32 and int64). Please click here to examine all changes.
  • Once you upgrade the new ixia-c release, in addition to removing the deprecated APIs from the test programs, data types of some variables in the test programs might need to be changed to avoid compilation errors.

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-4306

4th August, 2023

About

This build includes stability fixes.

Build Details

Component Version
Open Traffic Generator API 0.11.11
snappi 0.11.17
gosnappi 0.11.17
ixia-c-controller 0.0.1-4306
ixia-c-traffic-engine 1.6.0.35
ixia-c-app-usage-reporter 0.0.1-37
ixia-c-protocol-engine 1.00.0.318
ixia-c-ixhw-server 0.11.11-2
ixia-c-operator 0.3.4
ixia-c-gnmi-server 1.11.16
ixia-c-one 0.0.1-4306
`

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-4167

21st July, 2023

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-4167
ixia-c-traffic-engine 1.6.0.35
ixia-c-app-usage-reporter 0.0.1-37
ixia-c-protocol-engine 1.00.0.316
ixia-c-ixhw-server 0.11.10-13
ixia-c-operator 0.3.4
ixia-c-gnmi-server 1.11.16
ixia-c-one 0.0.1-4167

Release Feature(s)

  • Enabling metric_tags for egress tracking is now also supported on ipv6.src/dst, ipv6.traffic_class, ipv6.flow_label and ipv6.payload_length. [Ixia-C]
      eth := flow.EgressPacket().Add().Ethernet()
      ipv6 := flow.EgressPacket().Add().Ipv6()
      ipv6Tag := ipv6.Dst().MetricTags().Add()
      ipv6Tag.SetName("flow_ipv6_dst")
      ipv6Tag.SetOffset(120)
      ipv6Tag.SetLength(8)
    
  • Support is available in gNMI to fetch the drill-down statistics for egress tracking as follows [Ixia-C] details:
      1. Flow level metrics + Tagged Metrics:
          example path: "flows/flow[name=f1]“
      2. Only Flow level metrics:
          example path: "flows/flow[name=f1]/state“
      3. Only Tagged metrics 
          example path: "flows/flow[name=f1]/tagged-metrics“
      4. Filtered Tagged metrics: 
          example path: "flows/flow[name=f1]/tagged-metrics/tagged-metric[name-value-pairs=flow_ipv6_dst=0x2]”
    

Bug Fix(s)

  • For flow.duration.continuous type of traffic in Ixia-C, intermittent issue where last few packets in a traffic flow were not accounted for in flow_metrics.frames_rx statistics after stopping a flow is fixed.
  • Proper error mesage is propagated to user if user has used community edition of Ixia-C (instead of licensed edition) and invoked any API/Configuration not supported by it. example: Device configuration is not supported in free version of controller.

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-4139

29th June, 2023

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

16th June, 2023

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

2nd June, 2023

About

This build includes bug fix.

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

18th May, 2023

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

5th May, 2023

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

24th April, 2023

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

31st March, 2023

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

16th March, 2023

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

3rd March, 2023

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

17th February, 2023

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

Release v0.0.1-3767

2nd February, 2023

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.7
snappi 0.10.5
gosnappi 0.10.5
ixia-c-controller 0.0.1-3768
ixia-c-traffic-engine 1.6.0.29
ixia-c-app-usage-reporter 0.0.1-37
ixia-c-protocol-engine 1.00.0.271
ixia-c-ixhw-server 0.10.7-1
ixia-c-operator 0.3.1
ixia-c-gnmi-server 1.10.8
ixia-c-one 0.0.1-3768

Bug Fix(s)

  • Issue where TCP header length was not set correctly is fixed. #117

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-3724

20th January, 2023

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.6
snappi 0.10.4
gosnappi 0.10.4
ixia-c-controller 0.0.1-3724
ixia-c-traffic-engine 1.6.0.24
ixia-c-app-usage-reporter 0.0.1-37
ixia-c-protocol-engine 1.00.0.256
ixia-c-ixhw-server 0.10.6-1
ixia-c-operator 0.3.1
ixia-c-gnmi-server 1.10.6
ixia-c-one 0.0.1-3722

Bug Fix(s)

  • Payload size field in all inner headers for tunneling protocols do not take into account inner FCS is fixed. #112

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.

Release v0.0.1-3698

15th December, 2022

Announcement

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

About

This build contains stability fixes.

Build Details

Component Version
Open Traffic Generator API 0.10.5
snappi 0.10.3
gosnappi 0.10.3
ixia-c-controller 0.0.1-3698
ixia-c-traffic-engine 1.6.0.19
ixia-c-app-usage-reporter 0.0.1-37
ixia-c-protocol-engine 1.00.0.252
ixia-c-operator 0.3.1
ixia-c-gnmi-server 1.10.5
ixia-c-one 0.0.1-3698

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.

Release v0.0.1-3662

1st December, 2022

Announcement

ixia-c container images are hosted on GitHub Container Registry. However we will continue publishing ixia-c container images to DockerHub until 18th November, 2022.

Build Details

Component Version
Open Traffic Generator API 0.9.10
snappi 0.9.8
gosnappi 0.9.8
ixia-c-controller 0.0.1-3662
ixia-c-traffic-engine 1.6.0.19
ixia-c-app-usage-reporter 0.0.1-37
ixia-c-protocol-engine 1.00.0.243
ixia-c-operator 0.3.0
ixia-c-gnmi-server 1.9.9
ixia-c-one 0.0.1-3662

Features(s)

  • ixia-c-controller now runs with a non-root user inside the container (instead of root user previously)
  • ixia-c-controller now listens on non-privileged HTTPs port 8443 (instead of 443 previously)

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.

Release v0.0.1-3619

10th November, 2022

Announcement

ixia-c container images are hosted on GitHub Container Registry. However we will continue publishing ixia-c container images to DockerHub until 18th November, 2022.

Build Details

Component Version
Open Traffic Generator API 0.9.1
snappi 0.9.4
gosnappi 0.9.4
ixia-c-controller 0.0.1-3619
ixia-c-traffic-engine 1.6.0.19
ixia-c-app-usage-reporter 0.0.1-37
ixia-c-protocol-engine 1.00.0.238
ixia-c-operator 0.2.6
ixia-c-gnmi-server 1.9.7
ixia-c-one 0.0.1-3619

Features(s)

  • ixia-c-controller and ixia-c-gnmi-server can now accept the environment variables HTTP_PORT and HTTP_SERVER respectively, overriding the values provided for corresponding arguments --http-port and --http-server.

  • ixia-c-controller and ixia-c-gnmi-server can now be run using an arbitrary UID (user ID), to support deployment in OpenShift environment.

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.

Release v0.0.1-3587

28th October, 2022

Announcement

ixia-c container images are hosted on GitHub Container Registry. However we will continue publishing ixia-c container images to DockerHub until 18th November, 2022.

About

This build contains bug fixes.

Build Details

Component Version
Open Traffic Generator API 0.9.1
snappi 0.9.4
gosnappi 0.9.4
ixia-c-controller 0.0.1-3587
ixia-c-traffic-engine 1.6.0.19
ixia-c-app-usage-reporter 0.0.1-37
ixia-c-protocol-engine 1.00.0.236
ixia-c-operator 0.2.5
ixia-c-gnmi-server 1.9.5
ixia-c-one 0.0.1-3587

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.

Release v0.0.1-3423

29th September, 2022

Announcement

ixia-c container images are hosted on GitHub Container Registry. However we will continue publishing ixia-c container images to DockerHub until 18th November, 2022.

About

This build contains stability fixes.

Build Details

Component Version
Open Traffic Generator API 0.9.1
snappi 0.9.4
gosnappi 0.9.4
ixia-c-controller 0.0.1-3423
ixia-c-traffic-engine 1.6.0.19
ixia-c-app-usage-reporter 0.0.1-37
ixia-c-protocol-engine 1.00.0.232
ixia-c-operator 0.2.2
ixia-c-gnmi-server 1.9.5
ixia-c-one 0.0.1-3423

Known Limitations

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

Release v0.0.1-3383

16th September, 2022

Announcement

ixia-c container images are hosted on GitHub Container Registry. However we will continue publishing ixia-c container images to DockerHub until 18th November, 2022.

Build Details

Component Version
Open Traffic Generator API 0.9.1
snappi 0.9.4
gosnappi 0.9.4
ixia-c-controller 0.0.1-3383
ixia-c-traffic-engine 1.6.0.17
ixia-c-app-usage-reporter 0.0.1-37
ixia-c-protocol-engine 1.00.0.225
ixia-c-operator 0.2.1
ixia-c-gnmi-server 1.9.3
ixia-c-one 0.0.1-3380

Release Features(s)

  • Support added for increment and decrement values in all MPLS packet header fields.
  • Support added for raw traffic where tx and rx endpoints could be same.
  • Support added in traffic-engine-service deployment to disable IPv6 networking.
    • OPT_ENABLE_IPv6 environment flag is introduced. If it is Yes ipv6 networking will be enabled and if it is No ipv6 networking status will be unchanged.

Bug Fix(s)

  • get_config is failing, if config contains TCP header. it is fixed now. #184

Known Issues

  • The metric loss in flow metrics is currently not supported.
  • When flow transmit is started, transmission will be restarted on any existing flows already transmitting packets

Release v0.0.1-3182 (Latest)

1st September, 2022

Announcement

ixia-c container images are hosted on GitHub Container Registry. However we will continue publishing ixia-c container images to DockerHub until 18th November, 2022.

Build Details

Component Version
Open Traffic Generator API 0.9.1
snappi 0.9.3
gosnappi 0.9.3
ixia-c-controller 0.0.1-3182
ixia-c-traffic-engine 1.6.0.9
ixia-c-app-usage-reporter 0.0.1-37
ixia-c-protocol-engine 1.00.0.217
ixia-c-operator 0.2.1
ixia-c-gnmi-server 1.9.1
ixia-c-one 0.0.1-3182

Release Features(s)

  • ixia-c-controller container now supports gRPC requests on default TCP port 40051 (alongside TCP port 8443 for HTTP) and hence ixia-c-grpc-server container is no longer needed.
  • There has been a breaking change in OTG API to provide stronger compatibility guarantees across different semver patch versions of snappi and ixia-c-controller.

Known Issues

  • The metric loss in flow metrics is currently not supported.
  • When flow transmit is started, transmission will be restarted on any existing flows already transmitting packets

Release v0.0.1-3113

18th August, 2022

Announcement

From now onwards ixia-c container images will be hosted on GitHub Container Registry. However we will continue publishing ixia-c container images to DockerHub as well for the next 3 months. (until 18th November, 2022)

Build Details

Component Version
Open Traffic Generator API 0.8.6
snappi 0.8.8
gosnappi 0.8.8
ixia-c-controller 0.0.1-3113
ixia-c-traffic-engine 1.6.0.9
ixia-c-app-usage-reporter 0.0.1-37
ixia-c-protocol-engine 1.00.0.214
ixia-c-operator 0.1.95
ixia-c-gnmi-server 1.8.13
ixia-c-grpc-server 0.8.9
ixia-c-one 0.0.1-3113

Release Features(s)

  • Support added for setting transmit state on subset of configured flows. https://github.com/open-traffic-generator/ixia-c/issues/56

Bug Fix(s)

  • When flow duration is configured using fixed_seconds, then in some cases packet transmission does not stop after specified duration has elapsed. https://github.com/open-traffic-generator/ixia-c/issues/95

Known Issues

  • The metric loss in flow metrics is currently not supported.
  • When flow transmit is started, transmission will be restarted on any existing flows already transmitting packets

Release v0.0.1-3027

4th August, 2022

About

Support added for static MPLS packet header in flows.

Build Details

Component Version
Open Traffic Generator API 0.8.6
snappi 0.8.8
gosnappi 0.8.8
ixia-c-controller 0.0.1-3027
ixia-c-traffic-engine 1.4.1.29
ixia-c-app-usage-reporter 0.0.1-37
ixia-c-protocol-engine 1.00.0.209
ixia-c-operator 0.1.94
ixia-c-gnmi-server 1.8.10
ixia-c-grpc-server 0.8.8
ixia-c-one 0.0.1-3027

Release Features(s)

  • Support added for static MPLS packet header in flows.
    • Fixed value is supported for all fields.
    • Dynamic MPLS is not supported yet.
      • label field's default choice is value if it is selected as auto.

Known Issues

  • The metric loss in flow metrics is currently not supported.

Release v0.0.1-3002

27th July, 2022

About

This build contains stability fixes.

Build Details

Component Version
Open Traffic Generator API 0.8.5
snappi 0.8.5
gosnappi 0.8.5
ixia-c-controller 0.0.1-3002
ixia-c-traffic-engine 1.4.1.29
ixia-c-app-usage-reporter 0.0.1-37
ixia-c-protocol-engine 1.00.0.205
ixia-c-operator 0.1.94
ixia-c-gnmi-server 1.8.8
ixia-c-grpc-server 0.8.7
ixia-c-one 0.0.1-3002

Known Issues

  • The metric loss in flow metrics is currently not supported.

Release v0.0.1-3000

21st July, 2022

About

This build contains stability fixes.

Build Details

Component Version
Open Traffic Generator API 0.8.5
snappi 0.8.5
gosnappi 0.8.5
ixia-c-controller 0.0.1-3000
ixia-c-traffic-engine 1.4.1.29
ixia-c-app-usage-reporter 0.0.1-37
ixia-c-protocol-engine 1.00.0.203
ixia-c-operator 0.1.94
ixia-c-gnmi-server 1.8.8
ixia-c-grpc-server 0.8.7
ixia-c-one 0.0.1-3000

Known Issues

  • The metric loss in flow metrics is currently not supported.

Release v0.0.1-2994

1st July, 2022

About

This build contains stability fixes.

Build Details

Component Version
Open Traffic Generator API 0.8.1
snappi 0.8.2
gosnappi 0.8.2
ixia-c-controller 0.0.1-2994
ixia-c-traffic-engine 1.4.1.29
ixia-c-app-usage-reporter 0.0.1-37
ixia-c-protocol-engine 1.00.0.192
ixia-c-operator 0.1.94
ixia-c-gnmi-server 1.8.3
ixia-c-grpc-server 0.8.2
ixia-c-one 0.0.1-2994

Known Issues

  • The metric loss in flow metrics is currently not supported.

Release v0.0.1-2992

30th June, 2022

About

This build contains stability fixes.

Build Details

Component Version
Open Traffic Generator API 0.8.1
snappi 0.8.2
gosnappi 0.8.2
ixia-c-controller 0.0.1-2992
ixia-c-traffic-engine 1.4.1.29
ixia-c-app-usage-reporter 0.0.1-37
ixia-c-protocol-engine 1.00.0.191
ixia-c-operator 0.1.94
ixia-c-gnmi-server 1.8.3
ixia-c-grpc-server 0.8.2
ixia-c-one 0.0.1-2992

Known Issues

  • The metric loss in flow metrics is currently not supported.

Release v0.0.1-2969

16th June, 2022

About

This build contains stability fixes.

Build Details

Component Version
Open Traffic Generator API 0.7.15
snappi 0.7.41
gosnappi 0.7.41
ixia-c-controller 0.0.1-2969
ixia-c-traffic-engine 1.4.1.29
ixia-c-app-usage-reporter 0.0.1-37
ixia-c-protocol-engine 1.00.0.181
ixia-c-operator 0.1.94
ixia-c-gnmi-server 1.7.31
ixia-c-grpc-server 0.7.17
ixia-c-one 0.0.1-2969

Known Issues

  • The metric loss in flow metrics is currently not supported.

Release v0.0.1-2934

2nd June, 2022

About

This build contains bug fixes.

Build Details

Component Version
Open Traffic Generator API 0.7.13
snappi 0.7.37
gosnappi 0.7.37
ixia-c-controller 0.0.1-2934
ixia-c-traffic-engine 1.4.1.26
ixia-c-app-usage-reporter 0.0.1-37
ixia-c-protocol-engine 1.00.0.174
ixia-c-operator 0.1.94
ixia-c-gnmi-server 1.7.27
ixia-c-grpc-server 0.7.15
ixia-c-one 0.0.1-2934

Bug Fix(s)

  • ixia-c-controller will return an empty response instead of error when metrics / states are queried right after boot-up.
  • ixia-c-gnmi-server will return an empty response instead of error when metrics / states are queried without ever setting config

Known Issues

  • The metric loss in flow metrics is currently not supported.

Release v0.0.1-2897

19th May, 2022

Build Details

Component Version
Open Traffic Generator API 0.7.8
snappi 0.7.18
gosnappi 0.7.18
ixia-c-controller 0.0.1-2897
ixia-c-traffic-engine 1.4.1.26
ixia-c-app-usage-reporter 0.0.1-37
ixia-c-protocol-engine 1.00.0.165
ixia-c-operator 0.1.94
ixia-c-gnmi-server 1.7.23
ixia-c-grpc-server 0.7.12
ixia-c-one 0.0.1-2897

New Feature(s)

  • ixia-c-one is now supported on platforms with cgroupv2 enabled. https://github.com/open-traffic-generator/ixia-c/issues/77

Known Issues

  • The metric loss in flow metrics is currently not supported.

Release v0.0.1-2801

9th May, 2022

About

This build includes stability fixes.

Build Details

Component Version
Open Traffic Generator API 0.7.8
snappi 0.7.18
gosnappi 0.7.18
ixia-c-controller 0.0.1-2801
ixia-c-traffic-engine 1.4.1.26
ixia-c-app-usage-reporter 0.0.1-37
ixia-c-protocol-engine 1.00.0.158
ixia-c-operator 0.1.89
ixia-c-gnmi-server 1.7.15
ixia-c-grpc-server 0.7.8

Known Issues

  • The metric loss in flow metrics is currently not supported.

Release v0.0.1-2790

5th May, 2022

About

This build includes stability fixes.

Build Details

Component Version
Open Traffic Generator API 0.7.8
snappi 0.7.18
gosnappi 0.7.18
ixia-c-controller 0.0.1-2790
ixia-c-traffic-engine 1.4.1.26
ixia-c-app-usage-reporter 0.0.1-37
ixia-c-protocol-engine 1.00.0.158
ixia-c-operator 0.0.80
ixia-c-gnmi-server 1.7.15
ixia-c-grpc-server 0.7.8

Known Issues

  • The metric loss in flow metrics is currently not supported.

Release v0.0.1-2770

21st April, 2022

About

This build includes stability fixes.

Build Details

Component Version
Open Traffic Generator API 0.7.8
snappi 0.7.18
gosnappi 0.7.18
ixia-c-controller 0.0.1-2770
ixia-c-traffic-engine 1.0.0.275
ixia-c-app-usage-reporter 0.0.1-37
ixia-c-protocol-engine 1.00.0.154
ixia-c-operator 0.0.80
ixia-c-gnmi-server 1.7.13
ixia-c-grpc-server 0.7.8

Known Issues

  • The metric loss in flow metrics is currently not supported.

Release v0.0.1-2755

7th April, 2022

About

This build includes following bug fix - Clearing of port and flow statistics as part of set_config.

Build Details

Component Version
Open Traffic Generator API 0.7.8
snappi 0.7.18
gosnappi 0.7.18
ixia-c-controller 0.0.1-2755
ixia-c-traffic-engine 1.4.1.23
ixia-c-app-usage-reporter 0.0.1-37
ixia-c-protocol-engine 1.00.0.152
ixia-c-operator 0.0.75
ixia-c-gnmi-server 0.7.8
ixia-c-grpc-server 0.7.8

Bug Fix(s)

  • Clearing of port and flow statistics is now part of set_config.

Known Issues

  • The metric loss in flow metrics is currently not supported.

Release v0.0.1-2738

25th March, 2022

About

This build includes following new functionalities - fix in handling of ether_type field of ethernet packet

Build Details

Component Version
Open Traffic Generator API 0.7.8
snappi 0.7.18
gosnappi 0.7.18
ixia-c-controller 0.0.1-2738
ixia-c-traffic-engine 1.4.1.23
ixia-c-app-usage-reporter 0.0.1-37
ixia-c-protocol-engine 1.00.0.151
ixia-c-operator 0.0.75
ixia-c-gnmi-server 0.7.8
ixia-c-grpc-server 0.7.8

New Feature(s)

  • Users would be able to set ether_type in ethernet header which may not be based on the next header type.

Known Issues

  • The metric loss in flow metrics is currently not supported.

Release v0.0.1-2727

24th March, 2022

About

This build includes following new functionalities - correct received(rx) rate statistics in port metrics - auto destination mac learning support in destination mac field of ethernet packet

Build Details

Component Version
Open Traffic Generator API 0.7.8
snappi 0.7.18
gosnappi 0.7.18
ixia-c-controller 0.0.1-2727
ixia-c-traffic-engine 1.4.1.23
ixia-c-app-usage-reporter 0.0.1-37
ixia-c-protocol-engine 1.00.0.151
ixia-c-operator 0.0.75
ixia-c-gnmi-server 0.7.8
ixia-c-grpc-server 0.7.8

New Feature(s)

  • Correct received(rx) rate statistics support is incorporated as part of port metrics.

    • frames_rx_rate
    • bytes_rx_rate
  • [Breaking Change] Auto learning of destination MAC is currently supported for both IPv4 and IPv6 Flows without any VLAN(originated from device endpoints) by setting ethernet destination with choice as auto in the packet. Earlier this was working by setting ethernet destination mac with "00:00:00:00:00:00" in the packet header. ``` { "choice": "ethernet", "ethernet": { "dst": { "choice": "auto" }, "src": { "choice": "value", "value": "00:00:01:01:01:01" } } }, ````

Known Issues

  • The metric loss in flow metrics is currently not supported.

Release v0.0.1-2678

11th March, 2022

About

This build contains stability and debuggability enhancements.

Build Details

Component Version
Open Traffic Generator API 0.7.3
snappi 0.7.13
gosnappi 0.7.13
ixia-c-controller 0.0.1-2678
ixia-c-traffic-engine 1.4.1.23
ixia-c-app-usage-reporter 0.0.1-37
ixia-c-protocol-engine 1.00.0.146
ixia-c-operator 0.0.75
ixia-c-gnmi-server 0.7.5
ixia-c-grpc-server 0.7.7

Known Issues

  • The metric loss in flow metrics is currently not supported.

Release v0.0.1-2662

24th February, 2022

About

This build implements transmit(tx) statistics & transmit state of flow metrics.

Build Details

Component Version
Open Traffic Generator API 0.7.3
snappi 0.7.13
gosnappi 0.7.13
ixia-c-controller 0.0.1-2662
ixia-c-traffic-engine 1.4.1.23
ixia-c-app-usage-reporter 0.0.1-37
ixia-c-protocol-engine 1.00.0.144
ixia-c-operator 0.0.75
ixia-c-gnmi-server 0.7.5
ixia-c-grpc-server 0.7.6

New Feature(s)

  • Transmit(tx) statistics & Transmit state support is incorporated as part of flow metrics.
    • transmit
    • frames_tx
    • frames_tx_rate

Known Issues

  • The metric loss in flow metrics is currently not supported.

Release v0.0.1-2610

10th February, 2022

About

This build contains stability fixes.

Build Details

Component Version
Open Traffic Generator API 0.7.3
snappi 0.7.13
gosnappi 0.7.13
ixia-c-controller 0.0.1-2610
ixia-c-traffic-engine 1.4.1.5
ixia-c-app-usage-reporter 0.0.1-37
ixia-c-protocol-engine 1.00.0.133
ixia-c-operator 0.0.72
ixia-c-gnmi-server 0.7.5
ixia-c-grpc-server 0.7.5

Known Issues

  • The metric loss in flow metrics is currently not supported.

Release v0.0.1-2597

27th January, 2022

About

This build contains debuggability enhancements.

Build Details

Component Version
Open Traffic Generator API 0.7.2
snappi 0.7.6
gosnappi 0.7.6
ixia-c-controller 0.0.1-2597
ixia-c-traffic-engine 1.4.1.2
ixia-c-app-usage-reporter 0.0.1-37
ixia-c-protocol-engine 1.00.0.133
ixia-c-operator 0.0.70
ixia-c-gnmi-server 0.7.4
ixia-c-grpc-server 0.7.4

Known Issues

  • The metric loss in flow metrics is currently not supported.

Release v0.0.1-2543

16th December, 2021

About

This build contains stability fixes.

Build Details

Component Version
Open Traffic Generator API 0.7.2
snappi 0.7.3
gosnappi 0.7.3
ixia-c-controller 0.0.1-2543
ixia-c-traffic-engine 1.4.1.2
ixia-c-app-usage-reporter 0.0.1-37
ixia-c-protocol-engine 1.00.0.127
ixia-c-operator 0.0.70
ixia-c-gnmi-server 0.7.2
ixia-c-grpc-server 0.7.2

Known Issues

  • The metric loss in flow metrics is currently not supported.

Release v0.0.1-2446

2nd December, 2021

About

This build introduces ability to return large FramesTx/RX values by metric APIs.

Build Details

Component Version
Open Traffic Generator API 0.6.13
snappi 0.6.21
gosnappi 0.6.21
ixia-c-controller 0.0.1-2446
ixia-c-traffic-engine 1.4.0.15
ixia-c-app-usage-reporter 0.0.1-37
ixia-c-protocol-engine 1.00.0.115
ixia-c-operator 0.0.70
ixia-c-gnmi-server 0.6.18
ixia-c-grpc-server 0.6.17

New Feature(s)

  • Maximum FramesTx and FramesRx value that can be correctly returned by flow_metrics and port_metrics has been increased from 2147483648 to 9.223372e+18

Known Issues

  • The metric loss in flow metrics is currently not supported.

Release v0.0.1-2399

18th November, 2021

About

This build introduces ability to auto plug in default values for missing fields with primitive types upon receiving JSON payload.

Build Details

Component Version
Open Traffic Generator API 0.6.10
snappi 0.6.16
gosnappi 0.6.16
ixia-c-controller 0.0.1-2399
ixia-c-traffic-engine 1.4.0.15
ixia-c-app-usage-reporter 0.0.1-37
ixia-c-protocol-engine 1.00.0.111
ixia-c-operator 0.0.70
ixia-c-gnmi-server 0.6.14
ixia-c-grpc-server 0.6.15

New Feature(s)

  • Upon receiving JSON payload, ixia-c-controller will now automatically plug in default values for missing fields with primitive types.

Known Issues

  • The metric loss in flow metrics is currently not supported.

Release v0.0.1-2367

5th November, 2021

About

This build introduces uniform logging across some Ixia-c components.

Build Details

Component Version
Open Traffic Generator API 0.6.7
snappi 0.6.12
gosnappi 0.6.12
ixia-c-controller 0.0.1-2367
ixia-c-traffic-engine 1.4.0.15
ixia-c-app-usage-reporter 0.0.1-37
ixia-c-protocol-engine 1.00.0.96
ixia-c-operator 0.0.1-65
ixia-c-gnmi-server 0.6.11
ixia-c-grpc-server 0.6.11

Bug Fix(s)

  • Introduced structured logging for ixia-c-gnmi-server and ixia-c-grpc-server to aid uniform logging across Ixia-c components.

Known Issues

  • The metric loss in flow metrics is currently not supported.

Release v0.0.1-2342

27th October, 2021

About

This build contains validation bug fixes.

Build Details

Component Version
Open Traffic Generator API 0.6.5
snappi 0.6.5
gosnappi 0.6.5
ixia-c-controller 0.0.1-2342
ixia-c-traffic-engine 1.4.0.15
ixia-c-app-usage-reporter 0.0.1-37
ixia-c-protocol-engine 1.00.0.83
ixia-c-operator 0.0.1-65
ixia-c-gnmi-server 0.6.6
ixia-c-grpc-server 0.6.6

Bug Fix(s)

  • Validation has been fixed for traffic configuration consisting of IPv4 and IPv6 interface names

Known Issues

  • The metric loss in flow metrics is currently not supported.

Release v0.0.1-2337

21st October, 2021

About

This build contains bugfixes for SetConfig and FPS values in GetMetrics.

Build Details

Component Version
Open Traffic Generator API 0.6.5
snappi 0.6.5
gosnappi 0.6.5
ixia-c-controller 0.0.1-2337
ixia-c-traffic-engine 1.4.0.14
ixia-c-app-usage-reporter 0.0.1-37
ixia-c-protocol-engine 1.00.0.83
ixia-c-operator 0.0.1-65
ixia-c-gnmi-server 0.6.6
ixia-c-grpc-server 0.6.6

New Feature(s)

  • The race condition during connection initialization in SetConfig is fixed for scenarios involving large port count.
  • FPS value in GetMetrics for ports and flows is fixed for scenarios involving multiple consecutive SetTransmitState calls.

Known Issues

  • The metric loss in flow metrics is currently not supported.

Release v0.0.1-2289

29th September, 2021

About

This build contains support for performance optimisation through concurrent port operations.

Build Details

Component Version
Open Traffic Generator API 0.6.1
snappi 0.6.1
ixia-c-controller 0.0.1-2289
ixia-c-traffic-engine 1.4.0.13
ixia-c-app-usage-reporter 0.0.1-37
ixia-c-protocol-engine 1.00.0.70
otg-gnmi-server 0.6.1
otg-grpc-server 0.6.1

New Feature(s)

  • Performance is optimised through concurrent port operations.

Known Issues

  • The metric loss in flow metrics is currently not supported.

Release v0.0.1-2185

8th September, 2021

About

This build contains support for updating flow rate without disrupting transmit state.

Build Details

Component Version
Open Traffic Generator API 0.5.4
snappi 0.5.3
ixia-c-controller 0.0.1-2185
ixia-c-traffic-engine 1.4.0.11
ixia-c-app-usage-reporter 0.0.1-37
ixia-c-protocol-engine 1.00.0.56
otg-gnmi-server 0.5.2
otg-grpc-server 0.5.3

New Feature(s)

  • Updating flow rate without disrupting transmit state is now supported. Rate of multiple flows can be updated simultaneously through update_flows api without stopping the traffic.

Known Issues

  • The metric loss in flow metrics is currently not supported.

Release v0.0.1-2120

27th August, 2021

About

This build contains support for capture filter, setting GRE checksum flag, redirecting Ixia-c controller log to stdout and some bug fixes.

Build Details

Component Version
Open Traffic Generator API 0.4.12
snappi 0.4.25
ixia-c-controller 0.0.1-2120
ixia-c-traffic-engine 1.4.0.9
ixia-c-app-usage-reporter 0.0.1-37
ixia-c-protocol-engine 1.00.0.50
otg-gnmi-server 0.4.4
otg-grpc-server 0.0.9

New Feature(s)

  • Capture filters are now supported. Multiple patterns can be specified in the configuration.
  • Controller log is now redirected to stdout. docker logs can now be used to access Ixia-c controller logs.
  • Checksum field in GRE header now can be set.

Bug Fixes

  • All patterns of IPv6 value now can be set for increment and decrement properties in flow header fields.
  • Default value of step for decrement properties in flow header fields is now set correctly.

Known Issues

  • The metric loss in flow metrics is currently not supported.

Release v0.0.1-1622

25th June, 2021

About

This build contains support for protocols GRE and VXLAN (RFC 2784), enabling/disabling flow metrics and some bug fixes.

Build Details

Component Version
Open Traffic Generator API 0.4.0
snappi 0.4.0
ixia-c-controller 0.0.1-1622
ixia-c-traffic-engine 1.4.0.1
ixia-c-app-usage-reporter 0.0.1-36

New Feature(s)

  • Flow header configuration for protocols GRE and VXLAN (RFC 2784) are now supported.
  • Flow metrics is now disabled by default to allow transmitting packets with unaltered payload(i.e. without any timestamps and instrumentation bytes embedded in it).
  • Flow metrics (including metrics that are its sub-properties, e.g. latency and timestamp) can now be explicitly enabled on per-flow basis.

Bug Fixes

  • ixia-c-controller can now safely serve multiple parallel requests from different clients preventing any undefined behavior.
  • Port metrics can now be fetched for ports which are not part of flow configuration.
  • Providing port locations for ixia-c-traffic-engine running in unsupported mode will now throw a user-friendly error.
  • Default values for increment and decrement properties in flow header fields are now aligned per Open Traffic Generator API.

Known Issues

  • Checksum field in GRE header currently cannot be set.
  • The metric loss in flow metrics is currently not supported.

Release v0.0.1-1388

31st May, 2021

About

This build contains support for flow delay and some bug fixes.

Build Details

Component Version
Open Traffic Generator API 0.3.10
snappi 0.3.20
ixia-c-controller 0.0.1-1388
ixia-c-traffic-engine 1.2.0.12
ixia-c-app-usage-reporter 0.0.1-36

New Feature(s)

  • Ixia-c now supports delay parameter in flow configuration. Refer to v0.3.10 of the Open Traffic Generator API specification for more details.

Bug Fixes

  • The flow configuration parameter inter_burst_gap when specified in nanoseconds can now be set to a value larger than 4.2 seconds.
  • Invalid values can now be set for the phb (per hob behavior) field in the DSCP bits in the IPv4 header.
  • The set_config method will return an error when flows are over subscribed.
  • Fixed an error in calculation for packet counts when duration is set in terms of fixed_seconds.

Known Issues

  • The metrics frames_rx_rate and bytes_rx_rate in port statistics are not calculated correctly and are always zero.
  • The metric min_latency_ns in flow statistics is not calculated correctly and is always zero.