4 ms·
re: performance, as someone who isn't particularly enamored with rust or go (or any language), how is this thing only doing 16MBps local to local?!?
by hackerpacker 7y ago
re: performance, as someone who isn't particularly enamored with rust or go (or any language), how is this thing only doing 16MBps local to local?!?
- Antonito 7y agoTransfer is done via DTLS, a protocol on top of UDP, so we have to deal with packet loss and retransmission, which itself is controlled by SCTP. gfile uses pion/sctp[0] (via pion/webrtc[1]), and there has been some work going on to improve performances. :) The performances used to be far worse, but with the recent improvements on pion/sctp, I felt gfile had become fast enough to be useful to some people. [0]: https://github.com/pion/sctp https://github.com/pion/sctp [1]: https://github.com/pion/webrtc https://github.com/pion/webrtc
- binwiederhier 7y agoYou may want to look at QUIC. It'll be part of http/3 and it's on top of UDP. There is a go library called quic-go [1] that works quite well. I was recently playing with a similar thing and used the lib [2] [1] https://github.com/lucas-clemente/quic-go https://github.com/lucas-clemente/quic-go [2] https://github.com/binwiederhier/natter https://github.com/binwiederhier/natter