---
name: network-simulation-dba5aa48331d
description: Skill for network condition simulation, emulation, and chaos engineering
allowed-tools:
  - Bash
  - Read
  - Write
  - Edit
  - Glob
  - Grep
graph:
  domains: [domain:networking]
  specializations: [specialization:network-programming]
  skillAreas: [skill-area:protocol-design, skill-area:socket-programming]
  roles: [role:backend-engineer, role:sre]
  topics: [topic:circuit-breakers]
---

# Network Simulation Skill

Expert skill for network condition simulation, emulation, and chaos engineering testing environments.

## Capabilities

- **Traffic Control**: Configure tc (traffic control) for latency, bandwidth, and packet loss simulation
- **Network Namespaces**: Set up network namespaces for network isolation testing
- **WAN Emulation**: Emulate WAN conditions with netem (delay, jitter, loss, corruption)
- **Virtual Topologies**: Create virtual network topologies for testing
- **Packet Manipulation**: Simulate packet loss, reordering, duplication, and corruption
- **Degraded Conditions Testing**: Test applications under degraded network conditions
- **Chaos Scenarios**: Generate chaos engineering scenarios for resilience testing
- **Container Networking**: Configure Docker/Kubernetes network simulation

## Tools and Dependencies

- `tc` - Traffic control for Linux
- `netem` - Network emulator
- `ip netns` - Network namespaces
- `mininet` - Network emulator
- `toxiproxy` - TCP proxy for chaos testing
- `comcast` - Network simulation tool
- `pumba` - Container chaos testing

## Target Processes

- network-testing-framework.js
- load-testing-tool.js
- protocol-fuzzer.js
- tcp-socket-server.js

## Usage Examples

### Latency Simulation
```bash
tc qdisc add dev eth0 root netem delay 100ms 20ms distribution normal
tc qdisc change dev eth0 root netem delay 200ms 40ms 25% correlation
```

### Packet Loss Simulation
```bash
tc qdisc add dev eth0 root netem loss 5% 25%
tc qdisc add dev eth0 root netem loss gemodel 1% 10% 70% 0.1%
```

### Bandwidth Limiting
```bash
tc qdisc add dev eth0 root tbf rate 1mbit burst 32kbit latency 400ms
```

### Network Namespace Isolation
```bash
ip netns add test_ns
ip link add veth0 type veth peer name veth1
ip link set veth1 netns test_ns
ip netns exec test_ns ip addr add 10.0.0.2/24 dev veth1
ip netns exec test_ns ip link set veth1 up
```

### Toxiproxy Chaos
```bash
toxiproxy-cli create -l localhost:6379 -u localhost:6380 redis_proxy
toxiproxy-cli toxic add -t latency -a latency=1000 redis_proxy
```

## Quality Gates

- Network conditions applied correctly
- Application behavior under degraded conditions verified
- Chaos scenarios executed successfully
- Recovery testing completed
- Performance baselines established


---
Source attribution: a5c-ai
Original project: https://github.com/a5c-ai/babysitter
License: MIT
License information: https://opensource.org/license/mit
Original upstream instructions; downloaded from Mega AI Hub.

## Upstream license notice

MIT License

Copyright (c) 2026 Gabriel Moreira

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.



# Mega AI Hub resource metadata

Creator / publisher: a5c-ai
Original project: https://github.com/a5c-ai/babysitter
Attribution basis: Upstream repository explicitly recorded in package mirror path

Fields of work: Development & Engineering, Product Management
Roles: Backend Developer, Data Engineer, DevOps / SRE, Product Manager, QA / Test Engineer
Specialties: Backend, DevOps
Tools: Docker, Kubernetes, Netem, Pumba, Tc, Toxiproxy
Country applicability: Country not specified
Classification basis: Source catalog labels
Instruction SHA-256: e22d033f8cdb532f573c88ae2f5065af65eb28f311638a9ca163d32dbf32dd51
