TCP和UDP的区别

TCP和UDP的区别

  • 1.TCP是面向连接的,发送数据前必须先建立连接(TCP的三次握手);UDP是无连接的,即发送数据前不需要建立连接。
  • 2.TCP连接只能是点对点的(一对一);UDP支持一对一、一对多、多对一和多对多的交互通信。
解释:每一条TCP连接有两个端点,这个端点叫做套接字(socket)或插口。什么是套接字?端口号拼接到IP地址即构成了套接字。所以说,每一条TCP连接唯一地被通信两端的两个端点(即两个套接字)所确定。
  • 3.TCP提供可靠交付的服务,通过TCP连接传送的数据无差错、不丢失、不重复、按序到达;UDP使用尽最大努力交付,即不保证可靠交付(没有确认机制,重传机制),因此主机不需要维持复杂的连接状态表。

  • 4.TCP面向字节流;UDP面向报文

解释:TCP中的流指的是流入进程或从进程流出的字节序列。“面向字节流”含义是:虽然应用进程和TCP的交互是一次一个数据块(大小不等),TCP根据对方给出的窗口只和当前网络拥塞的程度决定数据块的大小,但TCP把应用进程交下来的数据看成仅仅是一连串的无结构的字节流。TCP并不知道所传送的字节流的含义。
发送方的UDP对应用程序交下来的报文,在添加首部就向下交付IP层。UDP对应用层交下来的报文,既不合并,也不拆分,而是保留这些报文的边界。也就是说,应用层交给UDP多长的报文,UDP就照样发送,即一次发送一个报文——UDP发送的报文长度是应用进程给出的。
  • 5.TCP有拥塞控制;UDP没有拥塞控制
解释:由于UDP没有拥塞控制,所以很适合多媒体通信。因为网络出现的拥塞不会使源主机的发送速率降低。很多的实时应用(IP电话、实时视频会议等)要求源主机以恒定的速率发送数据,并且允许在网络发生拥塞时丢失一些数据,但不允许数据有太大的延时。
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值