• 【T07】不要低估tcp的性能


    1、tcp在ip的基础上增加了校验和、可靠性和流量控制的功能,而udp只增加了校验和的功能,看起来udp应该会比tcp快很多,
        但事实不是这样,有时候tcp比udp的性能还要好。
    2、思考,在什么情况下udp的性能要好于tcp,以及为什么?
    3、这两种协议的cpu开销主要是进行数据拷贝和校验,二者区别不大。
    4、tcp为了提供可靠的传输,会发送ack包进行确认,但是这个工作量不大。首先,ack往往会作为捎带信息附属在包含数据的报文段中,
        其次,tcp没有必要对每个段都进行ack,可以间隔一段时间对多个段一起进行ack。
    5、相对于ucp,tcp在建立连接三次握手,拆除连接四次握手,如果连接维持的时间比较长,进行大量的交互,
        连接的建立和拆除被分摊下来,对整个的性能影响很小。
        如果应用程序只是进行简短的请求应答回话,udp的性能好。
        如果应用程序持续时间比较长,并且进行大量的数据传输,tcp的性能会好于udp
    6、客户端和服务端都是本地,tcp的性能要远远好于udp,这个奇怪的现象是因为BSD的tcp协议库实现,
        无论是不是环路udp的MTU是1500,对于环路的tcp的MTU可以达到1万5千多。注意:对于环路,数据报并不经过网络,
        而是直接放入接收队列。
  • 相关阅读:
    Android MVP架构分析
    JavaEE基本了解
    学习面试题Day09
    使用反射来实现简单工厂模式
    Android Material Design简单使用
    c语言 找最小值
    c++ 计算指定半径圆的面积
    c++ 字符串拷贝以及合并
    python yaml文件读写
    python 列表元素替换以及删除
  • 原文地址:https://www.cnblogs.com/nzbbody/p/6389595.html
Copyright © 2020-2023  润新知