ithewei / libhv

🔥 比libevent/libuv/asio更易用的网络库。A c/c++ network library for developing TCP/UDP/SSL/HTTP/WebSocket/MQTT client/server.

Home Page:https://github.com/ithewei/libhv/wiki

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

我遇到一个问题,我发现libhv基于tcp,每秒传输速度高达百M,非我使用udp Quic协议, 文件传输速度竟然只有50M每秒, 相同的网络环境。

xs-411 opened this issue · comments

我是否可以理解为,应用层的udp协议,其实一定是要慢于tcp的,因为它是应用层协议,而tcp是内核协议。

UDP的好处是可以避免TCP的三次握手过程,减少了连接建立的延迟,从而减少请求响应耗时。QUIC协议内置了一些拥塞控制和流量控制的机制,在网络不好时一样会进行重传重组,不一定就比经过长期优化的TCP协议性能好,吞吐比不上TCP也正常。

Quic也需要握手,1RTT,0RTT,如果要说优势就是这两个.握手时间相对于tcp tls要快一些.

用的是哪个QUIC库?另外你是对比的纯TCP vs QUIC吗,如果是这样的话感觉不太公平,QUIC本身还有加解密开销

用的是自研Quic,RFC9001.以及阿里巴巴 XQuic