For testing there needs to be support for simulating higher latency, packet loss, duplicates and probably for mixing up the order. With this the reliability layer can be tested as well as testing games with simulated latency to see how latency-hiding mechanics work.
This must be at the socket layer. Perhaps the socket layer is one object containing socket functionality + fragmentation + simulator.
It must be configurable in runtime.
[ ] Configurable (and toggled) in runtime.
[ ] Can simulate additional latency.
[ ] Can simulate a set packet loss percentage.
[ ] Can simulate a set duplicate packet percentage.
For testing there needs to be support for simulating higher latency, packet loss, duplicates and probably for mixing up the order. With this the reliability layer can be tested as well as testing games with simulated latency to see how latency-hiding mechanics work.
This must be at the socket layer. Perhaps the socket layer is one object containing socket functionality + fragmentation + simulator.
It must be configurable in runtime.