Skip to content

Snabb 2018.04 “Edamame”

Compare
Choose a tag to compare
@eugeneia eugeneia released this 30 Apr 11:46
· 2397 commits to master since this release

This release includes the newest version of Igalia’s lwAFTR, as well as a powerful new load testing tool. Also in the mix is an easy way to test Snabb on platforms that support Docker such as OS X, a new “unhexdump” tool that synthesizes packets from hexadecimal encodings, and significant performance and stability improvements. As usual, Edamame also includes assorted bug fixes.

Changes

  • #1328 #1330 #1331 merge Snabb lwAFTR releases up to 2018.04, this includes a new program loadtest which gauges maximum sustainable load of a networking function, as well as fixes to lib.ptree
  • #1326 improves intel_mp selftest more reliability
  • #1289 adds a minimal Docker image that eases testing on e.g. OS X
  • #1274 adds snabb unhexdump tool
  • #1300 fixes a race condition during supervisor setup
  • #1287 optimizes breathe loop by removing unsunk allocations
  • #1271 adds a showcase program that implements DNS service discovery
  • #1308 #1272 include various bug fixes and improvements

Contributors

Alexander Gall (1):

  • 279aa38: core.app: remove garbage when using pace_breathing

Andy Wingo (53):

  • 3e7d2b5: Fix "snabb lwaftr run" after lib.scheduling refactor
  • 47588b9: Split YANG getter-at-path out to own module
  • 667b843: Move generic data-at-path utilities to lib.yang.path_data
  • feab012: Rename program.config.json to lib.ptree.json
  • a83a827: "snabb config listen" more lenient about missing paths
  • bd689ff: "snabb config listen" can take schema / revision from directives
  • 8798307: Add ability for ptree manager to record incoming RPCs
  • 9572bde: Wire up --trace for "snabb ptree" and document
  • fe328da: Wire up a --trace argument for the lwaftr
  • 9662280: Reduce memory use for get-config RPC
  • 008a4b8: Increase response length limit from leader from 100M to 1G chars
  • bd9a8da: Improve speed of yang qstring parser.
  • 3e2fecb: Fix ptree trace selftest
  • 7136c24: changelog
  • ee03a98: Fix data_grammar_from_schema for empty cases
  • 631357c: Rewrite random YANG path selector and value generator
  • c752d1d: Remove unused imports
  • cf61265: Simplify test
  • 8ce8872: Add "snabb unhexdump" tool
  • 383fd83: Process tree runs data-plane processes with busywait=true by default
  • c6d0e22: Pcap savefile writer records frame sizes
  • 3cf4cda: Sizes for "packetblaster lwaftr" are frame sizes
  • c55199b: Fix up packetblaster lwaftr selfchecks
  • fe08efb: Address review nit
  • 2876c6e: Revert "Pcap savefile writer records frame sizes"
  • 75ee990: Regenerate packetblaster lwaftr test files
  • 87c4263: Regenerate packetblaster lwaftr test files
  • d9b6512: Fix next-hop discovery with multiple devices
  • b38ae3a: Remove early lwAFTR NUMA affinity check
  • 05bffbc: Move "loadtest" command out of lwaftr
  • 09ce69e: Fix ctable resizing logic
  • 3142fad: Fix sense of ctable resize limit
  • db8b2c4: Make minimum ctable size uniform
  • f31e840: Add limit-finding loadtester.
  • 047018a: Add find-limit --exec to README
  • da3a2f8: Make supervisor setup more reliable
  • 459ee99: Make supervisor setup more reliable
  • 0736ffd: Fix out-of-bounds write in ctable test suite
  • 55bf2e3: Promptly close util.ls() dir fd; fix bug with deleted entries
  • 828641f: Remove lib.files_in_directory
  • f133f7f: Promptly close fd in random_bytes_from_dev_urandom
  • 1e6f852: Fix modification to lib.hardware.pci.scan_devices
  • 65cbc01: Set SNABB_RANDOM_SEED for intel_mp tests
  • a5bed82: Claim name in central lwaftr ptree manager function
  • 703f1a9: "snabb config" tests wait until ptree manager socket is available
  • 69f545b: Revert lwAFTR-specific version change for merge to upstream
  • a1efb46: Harmonize style in changelog
  • d51d0d5: Changelog for lwAFTR v2018.04.01
  • 99ffe31: Fix removal of v2018.01.2.1 header
  • bb63b39: Fix missing closing backtick
  • 54a5402: Flip sense of conditional-skip of IPsec end-to-end test
  • f03ba1b: Test on presence of SNABB_IPSEC_ENABLE_E2E_TEST, not value
  • 3f94ce5: Bash programming is known to the State of California to cause confusion

Diego Pino Garcia (23):

  • 459a936: Fix property-based test stall
  • ea5228c: Fix lwaftr selftest run
  • f57c75e: Rework alarms timestamping logic
  • 73caaaf: Add DNS-SD program
  • 3c9edf0: Show error if running on loop-back interface
  • 373b42b: Enable alarm notification
  • dca505c: Fix variable name
  • 191e655: Fix error message
  • 77f7abc: Fix path to transient README
  • cb68e08: Check status code in monitor test
  • 9e2f5da: Temporarily disable ipsec selftest
  • b4629a7: Snabb lwAFTR v2018.01.2.1
  • 1ad64e4: Changelog 2018.01.2.1
  • 8010951: XPath formater fixes
  • c55b21b: Fix tests
  • 25c8ad6: Implement alarm shelving
  • 7f6791d: Add failsafe parameter to common.parse_args
  • 76d0a89: Refactor argument parsing
  • 419c943: Fix error message
  • 5cd8b1b: Update README
  • aa31d24: Implement table_is_empty
  • d35cdd5: Rename 'failsafe' to 'allow_extra_args'
  • 2e8a5f9: Fix undefined variable

Jessica Tallon (6):

  • 468e72c: Fix small mistake in arp documentation.
  • d9ac366: Fix find-limit by checking actual throughput rather than requested.
  • 6e07332: Extend find-limit to support multiple NICs.
  • aa435ba: Support the old argument format and fix nits
  • d10a840: Remove unused fatal function
  • bcda559: Fix a few more minor nits :)

Luke Gorrie (2):

  • e9ee18a: README.md: Add link to Slack auto-invite page
  • 72b9b3c: .version: bump to 2018.04

Marcel Wiget (11):

  • 7d44865: [wip] use socker server mode
  • 7fce594: undo previous wip
  • c81176e: build snabb docker container
  • 3337ae8: make clean before build to avoid using binaries built outside of docker
  • dff8877: adding container build and run instructions
  • ba390ec: src/snabb wrapper when building container snabb
  • 3a4015c: document snabb wrapper script
  • b9ae0d7: adjust if statement to work in dash too
  • a095968: merging launch-docker-container.sh with dock.sh
  • d806fe0: use separate docker run commands
  • b7f6ab2: run container privileged and build src

Max Rottenkolber (4):

  • 2468f7c: intel_app: run selftest even though its not the default driver anymore
  • 35539ec: Correct/extend doc/snabblab.md
  • 58883b1: snabb top: minor formatting fixes
  • 664f378: intel_app: fix skipped message with regard to 2468f7c