# iperf-benchmark-weave

## Description
Two-node iperf3 benchmark weave with L2Bridge network for bandwidth testing between VMs at the same FABRIC site.

## Topology
- **Nodes**: 2 VMs (iperf-server, iperf-client)
- **Site**: Configurable (default: RENC)
- **Network**: L2Bridge with static IPs (192.168.100.0/24)
- **Components**: NIC_Basic on each node

## Workflow
1. Create slice with two nodes at the same site
2. Add L2Bridge network connecting both nodes
3. Submit and wait for StableOK
4. Configure static IPs on L2 interfaces
5. Install iperf3 on both nodes
6. Start iperf3 server daemon on iperf-server
7. Run 10-second iperf3 client test from iperf-client
8. Save results to iperf_results.txt

## Usage
```bash
# Start the benchmark
export SLICE_NAME=my-iperf-test
export SITE=RENC
./weave.sh start

# Monitor status
./weave.sh monitor

# Stop and cleanup
./weave.sh stop
```

## Acceptance Criteria
- Both nodes reach StableOK state
- L2 network is configured with static IPs
- iperf3 is installed on both nodes
- iperf3 server runs successfully in daemon mode
- iperf3 client completes 10-second bandwidth test
- Results show successful data transfer with bitrate metrics

## Files
- `weave.json` - Weave metadata and arguments
- `iperf_benchmark.py` - Python lifecycle script using FABlib
- `weave.sh` - Bash wrapper script
- `weave.md` - This documentation file