wangyu- / UDPspeeder

A Tunnel which Improves your Network Quality on a High-latency Lossy Link by using Forward Error Correction, possible for All Traffics(TCP/UDP/ICMP)
MIT License
4.73k stars 830 forks source link

Suggestion for improving #277

Open hetiejun opened 3 years ago

hetiejun commented 3 years ago

I have got two ideas that might be helpful to improve UDPSpeeder, for reference.

1) Add data compression. There are some scenarios that transporting (relatively small) packets with particular characteristics. For example, when dealing with stock quotes, LZ4 with dictionary can compress data to about one third in size. That should benefit the overall efficiency.

2) Add bandwidth control. For dedicated circuits, the bandwidth is fixed or limited, controling the sending rate might be helpful to avoid packet loss in case of pulses. And, sometimes applications might be required to restrict their bandwidth consumptions.

aminPial commented 2 years ago
  1. You can easily integrate Zstandard in your application to do the compression. No need to bloat udpspeeder with extended stuff.
  2. "Add bandwidth control" - it is the implementer's task of course.