Steinloss:
This is a tool for measuring packages loss, between two endpoint, with a web visualizer.
Usage
On the server end, run:
pip install steinlosspython -m steinloss --server
On the probe end, run:
pip install steinlosspython -m steinloss --probe --ip-address $IP_OF_SERVER
The server end will host a gui on port 8050, where the stats are visible. It looks like this:
Build and release
To make a new release, go to github release, and draft a new release. A github action will take care of building, and publishing the tar and binary to pypi.
Demo with artificial packet loss
| The demo is made for linux |
|---|
| First we install steinloss |
pip3 install steinloss
To run a demo of the tool, we're setting up a virtual network on your machine using ip nets.
We're making a network n1 and n2 by running
sudo sh demo.sh
Now we would like to run the server on n1 and the probe on n2
This is done with the following commands in two different terminals:
sudo ip netns exec ns1 bash -c "sudo -u $USER python3 -m steinloss -s"
sudo ip netns exec ns2 bash -c "sudo -u $USER python3 -m steinloss -p -i 10.0.0.1"
For example:
To access the browser, we to run a browser in our virtual network like so
sudo ip netns exec ns1 bash -c "sudo -u $USER $BROWSER 127.0.0.1:8050"
Like so:
Now we can modify the packet loss by using the replace command. To set the packet loss to 20%, we run the following command, while everything is running:
sudo ip netns exec ns1 tc qdisc replace dev h1 root netem loss 20%
Cleanup
The virtual networks can be removed again with:
sudo ip netns delete ns1 && sudo ip netns delete ns2
And uninstall steinloss:
pip3 uninstall steinloss
Metadata
Release files for steinloss 0.3.6
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| steinloss-0.3.6.tar.gz | 10.6 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| steinloss-0.3.6-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 23.4 kB
Release files / steinloss-0.3.6.tar.gz
| Download URL | steinloss-0.3.6.tar.gz |
|---|---|
| Size | 10.6 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
077f1cf10fe97770d8492dceaa7910e0916b4fd61409bc87c87e8d76aa3835a2
|
|
BLAKE2b-256 checksum How to use checksums |
f18d2c7fa3864c6f19440e2cb74f1a1c0ca8a34014830377b812a3a9595b15d1
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/52.0.0 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.8.7
|
Release files / steinloss-0.3.6-py3-none-any.whl
| Download URL | steinloss-0.3.6-py3-none-any.whl |
|---|---|
| Size | 12.8 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
97ecee8c478f8f2ab5af0dc92a39c841c0784c63a4480ada08cc2d5209ee6322
|
|
BLAKE2b-256 checksum How to use checksums |
51a2363abe8af764773e648e57511d4da65bdf14d6eb7444cf9f166602da9a0f
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/52.0.0 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.8.7
|