This project is based on OMNeT++'s routing example, using cTopology to calc the shortest paths.
This project aims to implement different congestion algorithms.
No packet lossNo handling of package disorderSocket only supports Simplex Communication
Too complicated for testing congestion control algorithms. As a simulation, the code doesn't need to be implemented exactly like that in the linux kernel, and a faithful representation of the network layers is also unnecessary.
We don't even need ip or mac addresses. Things should be kept as simple as possible.
- Packet type: DATA and ACK
- label packet ECN and cut the window into half
- AIMD algorithm should should split the bandwidth equally
- DCTCP
- Aggregate packets one level forward and backward
- Aggregate packets for more levels
- aggregatorIndex hash collision, then resend packets
- FatTree(k), k means pod number
- job deployment policy
- resend policy when diorders happen