UDP和TCP协议比较,TOE技术

  1. 如今在某些方面TCP超越UDP的主要原因如下

    1. 在硬件层面的TOE(TCP Offload Engine)功能,将越来越多的TCP功能卸载到网卡上。它极大地提升了TCP的性能,使其在高吞吐量场景下的表现更为出色。
    2. 近年TCP的拥塞控制算法实现了显著进步。这些新算法显著提高了TCP在高延迟环境下的通信效率,进而使TCP在长距离传输上逐渐夺回了优势。
    3. 另外,TCP本身的拥塞控制和流量控制,具有的可靠性传输,也让其具有了更广泛的适用性。
  2. TSO/GSO/GRO

    1. TSO(TCP Segmentation Offload)TSO 是一种网络技术,旨在减轻主机 CPU 的负载,提高网络传输性能。在传统情况下,++主机上的++ ++TCP++ ++协议栈需要将应用层的大块数据分段成适合网络传输的小块数据,这个过程称为分段(++ ++segmentation++ ++),然后将这些分段发送到网络++。TSO 允许网络适配器(NIC)负责执行分段操作,而不是由主机 CPU 完成。因此,主机 CPU 可以将大量的计算工作交给 NIC 完成,从而降低了主机 CPU 的负载。
    2. GSO(Generic Segmentation Offload)和GRO(Generic Receive Offload)与TSO相类似,GRO减轻主机 CPU 的负载和提高网络接收性能。在传统情况下,接收到的网络数据包需要在主机 CPU 上进行重组和排序,然后传递给网络协议栈进行进一步处理。GRO 允许网络适配器在接收数据包时执行重组和排序操作,而不是由主机 CPU 完成。这样可以减轻主机 CPU 的负载,提高网络接收性能。
    3. 10.254.2.13à10.254.1.11
  3. yudt@ubuntu:~/workspace/bugs$ sudo ethtool -K eno1 tso off gso off gro off(下面左图)

    yudt@ubuntu:~/workspace/bugs$ sudo ethtool -K eno1 tso on gso on gro on (下面右图)

相关推荐
爱和冰阔落1 小时前
【Linux网络】TCP 半包粘包怎么解决?从长度报头、JSON 拆包到网络计算器完整实战
linux·运维·网络·tcp/ip
say_fall3 小时前
【Linux网络编程】UDP套接字编程:系统编程组件、基础回显服务、InetAddr与地址转换、翻译服务与线程池聊天室
linux·服务器·网络·udp·vr
我不会插花弄玉15 小时前
6.传输层协议UDP【由浅入深-网络】
网络·网络协议·udp
火云代理15 小时前
更换网络后为什么会退出登录?分清 IP、Cookie 与会话的关系
服务器·网络·网络协议·tcp/ip·php·ip
火云代理19 小时前
同一个网站,有的网络能打开、有的打不开?认识 IPv4 与 IPv6 的访问差异
服务器·网络·网络协议·tcp/ip·测试工具·php·状态模式
坤坤子吖20 小时前
Linux网络编程:TCP 粘包与半包问题,如何正确处理 TCP 流式数据?
linux·服务器·网络·笔记·网络协议·学习
火云代理1 天前
Python 使用代理 IP 前,先弄清 Requests 的配置来源与验证方法
网络·python·网络协议·tcp/ip·ip
如夏倾城1 天前
QUIC——HTTP/3 的唯一底层传输协议 及 0-RTT恢复
网络·网络协议·tcp/ip·安全·http
略懂而已2 天前
安装SSL后网站速度变慢?
网络·网络协议·ssl
CodeYp20192 天前
第14讲:传输层协议 UDP
linux·udp