美文网首页
TCP和UDP的区别

TCP和UDP的区别

作者: 钢牙仔 | 来源:发表于2018-12-29 14:18 被阅读0次

    TCP和UDP都是传输层协议,但是两者具有不同的特性和应用场景

    TCP UDP
    可靠性 可靠 不可靠
    连接性 面向连接 面向无连接
    报文 面向字节流 面向报文
    效率
    双工性 全双工 一对一、一对多、多对一、多对多
    流量控制 滑动窗口
    拥塞控制 慢开始、拥塞避免、快重传、快恢复
    传输速度
    应用场景 对效率要求低,对准确度要求高或者要求有连接的场景。比如:电子邮件(SMTP)、万维网(HTTP)、文件传输(FTP) 对效率要求高,对准确度要求低的场景。比如:域名转换(DNS)、远程文件服务器(NFS)

    名词解释:

    1 面向报文和面向字节流

    面向报文的传输方式是应用层交给UDP多长的报文,UDP就发送多长的报文,即一次发送一个报文。因此应用程序必须选择大小合适的报文。报文太长,则IP层需要分片,降低效率。

    面向字节流的传输方式是应用程序和TCP的交互是一次一个数据块(大小不等),TCP把这些数据块看成是一连串无结构的字节流。TCP有一个缓冲,当应用程序传送的数据块太长,TCP就会把它分割成多块传送。

    2 双工性

    全双工:是指在发送数据的同时也能够接收数据,两者同步进行,这好像我们平时打电话一样,说话的同时也能够听到对方的声音。目前的网卡一般都支持全双工。

    半双工:所谓半双工就是指一个时间段内只有一个动作发生,举个简单例子,一条窄窄的马路,同时只能有一辆车通过,当目前有两量车对开,这种情况下就只能一辆先过,等到头儿后另一辆再开,这个例子就形象的说明了半双工的原理。

    参考:

    双工性的概念摘自百度知道:https://zhidao.baidu.com/question/21855854.html

    https://github.com/LRH1993/android_interview/blob/master/computer-networks/tcpip.md

    相关文章

      网友评论

          本文标题:TCP和UDP的区别

          本文链接:https://www.haomeiwen.com/subject/sjnulqtx.html