为何说UDP面向报文,而TCP面向字节流

UDP:

发送方的UDP对应用程序交下来的报文,在添加首部后就向下交付IP层。UDP对由应用层交下来的报文,既不合并,也不拆分,而是保留这些报文的边界。也就是说,无论应用层交给UDP的报文有多长,UDP都会照样发送,即一次发送一个报文。

在接收方的UDP,对IP层交上来的UDP用户数据报,在去除首部后就原封不动的交付给上层的应用进程。也就是说,UDP一次交付一个完整的报文。因此,应用程序必须选择合适大小的报文。若报文过长,UDP把它交付给IP层后,IP层在传送时可能要进行分片处理,这会降低IP层的效率。反之,若报文过短,UDP把它交付给IP层后,会使IP数据报首部的相对长度太大,同样也会降低IP层的效率。

TCP:

不论应用层发送的报文长度如何,到了传输层后,TCP总是把收到的报文看作一串字节流,并且把每一个字节都进行编号。TCP会根据当前网络的拥塞程度和对方接收缓存的大小,决定现在应当发送多长的报文段。TCP关心的是:必须保证每一个字节都正确无误的传输给对方,并不关心传输了多少个报文段,和每个报文段有多少个字节。这就表明了TCP是面向字节流的。

  • 10
    点赞
  • 34
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 12
    评论
评论 12
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

不会调制解调的猫

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值