This Data Networks course project models a bidirectional data-link connection in OMNeT++. It implements Selective Repeat ARQ with sender and receiver windows, per-frame timeouts, cumulative acknowledgements, explicit negative acknowledgements, out-of-order buffering, and retransmission. A second experiment compares parity, a Hamming(7,4) abstraction, and a hybrid mode under simulated bit flips.
- Aydin Ezzatpour Aghdam
src/ Authored C++, NED, and message definitions
config/omnetpp.ini Named simulation configurations
report/report.pdf Source-grounded English technical report
report/ Reusable-template LaTeX source
docs/setup.md Tool and build notes
docs/limitations-and-reproducibility.md
data/README.md Input/data boundary
Generated OMNeT++ message code, IDE metadata, archives, raw simulation output, and the original identity-bearing report are intentionally excluded.
- Forward and reverse links: 100 kbps, 50 ms propagation delay.
- Baseline data frame: 100 bits.
- Baseline simulation limit: 100 seconds.
- Part 1 windows: 4, 20, and 120 frames, with error-free and lossy cases.
- Part 2 modes: parity, Hamming(7,4), and hybrid, with bit-flip probabilities 0, 0.01, and 0.05.
These values are transcribed from the included configuration and source report. The saved numerical tables in the report were not regenerated during repository preparation and do not constitute an independent benchmark.
The source report identifies OMNeT++ 6.1. That simulator is not available in
the publication environment, so the project received static source and
configuration validation only. See docs/setup.md for the
source-backed generation command and
docs/limitations-and-reproducibility.md
for the evidence boundary.