Skip to content

v0.5.4

Latest
Compare
Choose a tag to compare
@github-actions github-actions released this 20 Aug 15:06
· 86 commits to master since this release
v0.5.4
0df69a1

Added

  • Quic protocol can now be disabled using the --disable-quic flag
  • Mycelium can now be started with a configuration file using --config-file.
    If no configuration file is supplied, Mycelium will look in a default location
    based on the OS. For more information see README
  • Windows installer for Mycelium. The .msi file can be downloaded from the release
    assets.
  • Added flag to specify how many update workers should be started, which governs
    the amount of parallelism used for processing updates.
  • Send a seqno request if we receive an unfeasible update for a subnet with no
    routes, or if there is no selected route for the subnet.
  • New public peers in US, India, and Singapore.

Changed

  • Increased the starting metric of a peer from 50 to 1000.
  • Reworked the internals of the routing table, which should reduce memory consumption.
    Additionally, it is now possible to apply updates in parallel
  • Periodically reduce the allocated size of the seqno cache to avoid wasting some
    memory which is not currently used by the cache but still allocated.
  • Demote seqno cache warnings about duplicate seqno requests go debug lvl, as it
    is valid to send duplicate requests if sufficient time passed.
  • Skip route selection after an unfeasible update to a fallback route, as the (now
    unfeasible) route won't be selected anyway.
  • No longer refresh route timer after an unfeasbile update. This allows routes
    which have become unfeasible to gracefully be removed from the routing table
    over time.
  • Expired routes which aren't selected are now immediately removed from the routing
    table.
  • Changed how updates are sent to be more performant.
  • A triggered update is no longer sent just because a route sequence number got
    increased. We do still send the update to peer in the seqno request cache.
  • Reduced log level when a route changes next-hop to debug from info.

Fixed

  • When running mycelium with a command, a keyfile was loaded (or created, if not
    yet present). This was not necessary in that context.
  • Limit the amount of time allowed for inbound quic connections to be set up, and
    process multiple of them in parallel. This fixes a DOS vector against the quic
    listener.
  • We now update the source table even if we don't send an update because we are
    sure the receiver won't select us as a next-hop anyway.