As described in https://github.com/Vrolijk/OSDD/blob/main/packetloss_explained.md Linux does drop UDP packets. There are several ways to optimize UDP traffic like Forward Error Control (FEC) within the application, optimizing the UDP network buffers but even with these optimizations UDP remains unreliable.
During the creation of the workshop we collected some idea's but where not able to add them to the workshop.
Use eXpress Data Path XDP: https://github.com/Vrolijk/OSDD/blob/main/examples/XDP_to_prevent_packet_loss.md
Modify udp.c within the kernel with function when using data diodes: https://github.com/torvalds/linux/blob/master/net/ipv4/udp.c
Create an FEC application: https://github.com/Vrolijk/OSDD/blob/main/netcat-diode.md
If you have more suggestions or know how to implement these suggestions (if they are viable) please leave a comment.
Regards,
Rene
As described in https://github.com/Vrolijk/OSDD/blob/main/packetloss_explained.md Linux does drop UDP packets. There are several ways to optimize UDP traffic like Forward Error Control (FEC) within the application, optimizing the UDP network buffers but even with these optimizations UDP remains unreliable.
During the creation of the workshop we collected some idea's but where not able to add them to the workshop.
Use eXpress Data Path XDP: https://github.com/Vrolijk/OSDD/blob/main/examples/XDP_to_prevent_packet_loss.md
Modify udp.c within the kernel with function when using data diodes: https://github.com/torvalds/linux/blob/master/net/ipv4/udp.c
Create an FEC application: https://github.com/Vrolijk/OSDD/blob/main/netcat-diode.md
If you have more suggestions or know how to implement these suggestions (if they are viable) please leave a comment.
Regards,
Rene