网络面试题:TCP和UDP的区别及应用场景

TCP和UDP的区别

1.TCP的特点

  • TCP是面向连接可靠性传输协议。
    • 面向连接:需要进行三次握手进行连接,四次挥手断开连接
    • 可靠性:TCP通过快速重传机制,同时有自身的流量控制和拥塞控制设计,因此数据的传输可靠性较高。
  • TCP是面向字节流的传输协议。
    • TCP是面向面向字节流,虽然应用程序和TCP的交互是一次一个数据块(大小不等),但TCP把应用程序看成是一连串的无结构的字节流。TCP有一个缓冲,当应用程序传送的数据块太长,TCP就可以把它划分短一些再传送。
  • TCP传输效率低,传输速度慢
    • 传输效率低,速度慢:因为TCP通过各种流量控制,拥塞控制机制去保证了数据传输的可靠性,这些都是需要消耗时间和资源的,因此传输效率低,传输速度慢。
  • TCP是全双工性的传输协议。
    • 全双工:即一对一的连接

2.UDP的特点

  • UDP是无连接的,不可靠的传输协议

    • 无连接:即不需要向TCP一样提前建立连接,只要目的地址,端口号,源地址,端口号确定了,就可以直接发送信息报文,
    • 不可靠:对方不一定能收到数据或者收到完整的数据。它仅仅提供了校验和机制来保障报文是否完整,若校验失败,则直接将报文丢弃,不做任何处理。
  • UDP是面向报文的传输协议。

    • 面向报文的传输方式是应用层交给UDP多长的报文,UDP就照样发送,即一次发送一个报文。因此,应用程序必须选择合适大小的报文。若报文太长,则IP层需要分片,降低效率。若太短,会是IP太小。UDP对应用层交下来的报文,既不合并,也不拆分,而是保留这些报文的边界。这也就是说,应用层交给UDP多长的报文,UDP就照样发送,即一次发送一个报文。
  • UDP传输效率高,可一对多传输

    • UDP没有TCP那么繁琐的保证数据可靠的机制,因此传输效率比TCP高。可以一次对多个目的地址进行发送报文。

在这里插入图片描述

3.TCP和UDP的应用场景

3.1 TCP的应用场景

TCP的应用场景对效率要求不高,对准确性要求高或者要求有连接的场景。
例如:

  • SMTP:电子邮件
  • TELNET: 远程终端接入
  • HTTP: 万维网
  • FTP: 文件传输

3.2 UDP的应用场景

  • DNS:域名转换
  • TFTP:文件传输
  • SNMP:网络管理
  • NFS:远程文件服务器

在这里插入图片描述

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值