Skip to content

Latest commit

 

History

History
108 lines (83 loc) · 4.15 KB

File metadata and controls

108 lines (83 loc) · 4.15 KB

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog and this project adheres to Semantic Versioning.

0.9.2 - 2026-07-17

Added

  • Add support for streaming mode (-s), for infinite duration tests
  • Add raw mode for fixed units output to stdout during test
  • Use LookupIP for client hostname lookups and log on multiple addresses
  • Use LookupIP for server bind addresses
  • Move to Go 1.25, x/net 0.57 and x/sys 0.47
  • Record a per-packet "late" field for out-of-order and add to the output json
  • Add report command that reads and emits saved results
  • Allow IPv6 addresses without brackets
  • Set DSCP on all packets, including opening handshake and close packets
  • Add expected_packets_sent field to JSON to support report command

Changed

  • Change default hybrid timer sleep factor from 0.95 to 0.9

Removed

  • Remove packet length from report output to support reading results from JSON (avoids unmarshaling large ClientConfig struct for one field)

0.9.1 - 2021-05-18

Added

  • Improve Windows time support by using QueryPerformanceCounter and GetSystemTimePreciseAsFileTime. Time precision on Windows 10 can now reach 100ns.
  • Add syslog support for the server (--syslog flag).
  • Add a SmokePing probe, available from SmokePing 2.7.2. It's possible to copy the code into older versions.
  • Update OM2P build to use the new MIPS softfloat support in Go 1.10.

Changed

  • Re-write git history with new email address.
  • Re-licensed to GPLv2.

Removed

Fixed

  • Fix potential client race at startup.
  • Fix issue on platforms with timer resolution not accurate enough to measure server processing time (closes #13).
  • Change handled interrupt signals to only os.Interrupt and syscall.SIGTERM to fix Plan 9 build.
  • Various documentation fixes.

0.9.0 - 2018-02-11

Added

  • Server fills are now supported, and may be restricted on the server. See --sfill for the client and --allow-fills on the server. As an example, one can do irtt client --fill=rand --sfill=rand -l 172 server for random payloads in both directions. The server default is --allow-fills=rand so that arbitrary data cannot be relayed between two hosts. server_fill now appears under params in the JSON.
  • Version information has been added to the JSON output.

Changed

  • Due to adoption of the pflag package, all long options now start with -- and must use = with values (e.g. --fill=rand). After the subcommand, flags and arguments may now appear in any order.
  • irtt client syntax changes:
    • -rs is renamed to --stats
    • -strictparams is removed and is now the default. --loose may be used instead to accept and use server restricted parameters, with a warning.
    • -ts is renamed to --tstamp
    • -qq is renamed to -Q
    • -fillall is removed and is now the default. --fill-one may be used as a small optimization, but should rarely be needed.
  • irtt server syntax changes:
    • -nodscp is renamed to --no-dscp
    • -setsrcip is renamed to --set-src-ip
  • The communication protocol has changed, so clients and servers must both be updated.
  • The handshake now includes a protocol version, which may change independently of the release version, and must match exactly between the client and server or the client will refuse to connect.
  • The default server minimum interval is now 10ms.
  • The default client duration has been changed from 1h to 1m.
  • Some author info was changed in the commit history, so the rewritten history must be fetched in all forks and any changes rebased.

0.1.0 - 2017-10-15

Added

  • Initial, untagged development release.