You've already forked net-research
docs: improvements and other stuff
This commit is contained in:
@@ -6,6 +6,7 @@ Ensure you have the following installed on your system:
|
|||||||
|
|
||||||
- [libvirt](https://libvirt.org/) (latest version recommended)
|
- [libvirt](https://libvirt.org/) (latest version recommended)
|
||||||
- [Terraform](https://developer.hashicorp.com/terraform) (latest version recommended)
|
- [Terraform](https://developer.hashicorp.com/terraform) (latest version recommended)
|
||||||
|
- [Wireshark](https://www.wireshark.org/) (latest version recommended)
|
||||||
|
|
||||||
## Deploying environment
|
## Deploying environment
|
||||||
|
|
||||||
@@ -23,6 +24,14 @@ cd terraform
|
|||||||
cp .env.template .env
|
cp .env.template .env
|
||||||
```
|
```
|
||||||
|
|
||||||
|
### Add client and server records to `/etc/hosts`
|
||||||
|
|
||||||
|
```bash
|
||||||
|
# ...
|
||||||
|
10.6.6.10 client
|
||||||
|
10.6.6.20 server
|
||||||
|
```
|
||||||
|
|
||||||
### Init Terraform
|
### Init Terraform
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
@@ -55,18 +64,38 @@ curl --http2-prior-knowledge server:81/<size>MB.file -o <size>MB.file
|
|||||||
tftp server -c get /var/www/<size>MB.file
|
tftp server -c get /var/www/<size>MB.file
|
||||||
```
|
```
|
||||||
|
|
||||||
### Merge `pcap` files
|
### Run benchmarks
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
mergecap -w merged.pcap http1.1-bbr.pcapng http1.1-reno.pcapng http3.pcapng tftp.pcapng
|
./scripts/run_benchmarks
|
||||||
```
|
```
|
||||||
|
|
||||||
### Change CC
|
This script does the following things
|
||||||
|
|
||||||
|
#### Change CC (on vms, 4 combinations for `tcp` protocols)
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
sysctl net.ipv4.tcp_congestion_control=bbr|reno -w
|
sysctl net.ipv4.tcp_congestion_control=bbr|reno -w
|
||||||
```
|
```
|
||||||
|
|
||||||
|
#### Starts `tcpdump` on hypervisor with filters according to protocol
|
||||||
|
|
||||||
|
```bash
|
||||||
|
tcpdump -i "$interface" -w "$pcap_file" "$filter"
|
||||||
|
```
|
||||||
|
|
||||||
|
#### Runs download command according to protocol
|
||||||
|
|
||||||
|
Refer to [this](#commands-for-client)
|
||||||
|
|
||||||
|
#### Stops `tcpdump`
|
||||||
|
|
||||||
|
### Merge `pcap` files
|
||||||
|
|
||||||
|
```bash
|
||||||
|
mergecap -w merged.pcap dump1 dump2 ...
|
||||||
|
```
|
||||||
|
|
||||||
### Change link profile
|
### Change link profile
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
@@ -74,3 +103,15 @@ sysctl net.ipv4.tcp_congestion_control=bbr|reno -w
|
|||||||
```
|
```
|
||||||
|
|
||||||
And follow the instructions
|
And follow the instructions
|
||||||
|
|
||||||
|
This script just executes this command on `server` vm
|
||||||
|
|
||||||
|
```bash
|
||||||
|
tc qdisc replace dev $interface root netem delay ${delay}ms loss ${loss}%
|
||||||
|
```
|
||||||
|
|
||||||
|
OR:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
tc qdisc del dev $interface root
|
||||||
|
```
|
||||||
|
|||||||
Reference in New Issue
Block a user