Stress Test
Nobody has claimed this yet.
- Dominant language
- Go
- Stars
- 6.9k
- Forks
- 1.3k
- Avg merge
- 13d 21h
- Merged PRs (30d)
- 1
Description
We should write a simple stress-test for testground that:
1. Opens connections between a bunch of peers using different transports.
2. Creates and uses a bunch of streams.
a. Idle streams.
b. Low bandwidth streams.
c. Burst streams.
d. Rapidly closes streams (i.e., repeatedly open/close, maybe send a little bit of data).
e. Full-throttle streams. We should have at least one stream sending as much data as it can at all times and this stream should never break.
Under _good_ network conditions (no bad middleboxes), no connection/stream should fail for any reason. Testground should be able to behave like a good network.
Motivation: bugs like https://github.com/libp2p/go-yamux/issues/15. Under good network conditions, connections should never simply break.
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by locating the Testground entry point for integration or network tests and identify how peers, transports, and streams are created. Use the listed idle, low-bandwidth, burst, rapidly closing, and full-throttle stream cases as acceptance criteria. Done means connections and streams remain reliable under good network conditions.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- go
- Domain
- distributed-systems, networking, testing-qa
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100