Introducing Transperf

368 views
Skip to first unread message

Soheil Hassas Yeganeh

unread,
Sep 26, 2019, 3:10:05 PM9/26/19
to Soheil Hassas Yeganeh
We'd like to announce the availability of transperf: a network
protocol performance testing tool.

transperf enables users to test TCP performance over a variety of
emulated network scenarios (using netem), including RTT, bottleneck
bandwidth, and policed rate that can change over time. The tool
supports testing multiple flows on multiple machines, and can test the
coexistence of multiple congestion control algorithms in a single
test. Users can specify test configurations and make assertions about
the expected results (i.e., goodput, RTTs, retransmit rates, and
fairness) using a Python-based configuration language.

The BBR team at Google has been using transperf for some of our BBR
testing, and many of the pastel bandwidth plots from various BBR IETF
slide decks were produced using this tool. Transperf includes support
for plotting internal state used by the BBRv2 algorithm, and can be
easily extended to support other congestion control algorithms as
well. We have found it useful, and hope others find it useful as well.

The code is released under the Apache-2.0 license, and available in a
git repository at:

https://github.com/google/transperf

The source for transperf is in the git repository, along with example
configuration scripts. It has been tested on Debian 9. We would love
to accept your bug reports, patches, and contributions through GitHub
issues and pull requests.

Co-authored-by: Soheil Yeganeh
Co-authored-by: Arjun Roy
Co-authored-by: Neal Cardwell
Co-authored-by: Luke Hsiao
Co-authored-by: Priyaranjan Jha
Co-authored-by: Haitao Wu
Co-authored-by: Yousuk Seung
Co-authored-by: Kevin(Yudong) Yang
Co-authored-by: Michael McLennan
Co-authored-by: Yuchung Cheng
Co-authored-by: Eric Dumazet
Co-authored-by: Maciej Żenczykowski

hacke in

unread,
Feb 18, 2021, 1:22:48 PM2/18/21
to BBR Development
Hii sir, I'm new to transperf. I want test various TCPs using Transperf. I have read the docs at github but couldn't really get about how to set up receiving host on my virtual  debian machine.Instructions seemed specific to GCE VM.
How can I set up receiver on my debian (Ubuntu) VM running locally ?
I need your help.

Neal Cardwell

unread,
Feb 19, 2021, 10:44:39 AM2/19/21
to hacke in, BBR Development
Hi,

The instructions at 
should hopefully work on physical/virtual Debian/Ubuntu machines, generally, and not just on Debian on GCE. 

If not using GCE then you can skip step 6, which says: "(If using GCE)".

Please feel free to let us know if you run into issues. And feel free to post pull requests to update the README.md, if you notice steps that need to be modified in your environment.

thanks,
neal


--
You received this message because you are subscribed to the Google Groups "BBR Development" group.
To unsubscribe from this group and stop receiving emails from it, send an email to bbr-dev+u...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/bbr-dev/2cfabe8f-bce3-45c2-b175-898134592e9fn%40googlegroups.com.
Reply all
Reply to author
Forward
0 new messages