TCP协议与UDP协议的区别

TCP/IP4层模型:

应用层(DNS,HTTP协议,电子邮件协议[pop3,SMTP,IMAP4]FTP)

传输层(TCP,UDP)

网络层(IP)

网络接口层


TCP与UDP的区别:

1.可靠性:TCP提供可靠性传输;UDP不提供可靠性传输

2.面向连接TCP面向连接,在发送数据之前必须在发送端和客户端建立连接(三次握手);UDP是面向无连接的,不需要建立连接,直接发送数据

三次握手:

为什么要三次,两次或者四次不行吗?

 第一次:客户端向服务端发出建立连接请求

第二次:服务端向客户端确认这个请求,证明网络通畅

   如果只两次握手,假如客户端先发起一个建立连接的请求,因为网络原因,客户端在超时过后仍未收到服务端的确认数据包,又发送了一个建立连接的请求,这次网络通畅,接收到了服务端的确认数据包,双方建立连接开始发送数据,这时,客户端第一次发送的建立连接的请求到达服务器,服务器认为这是再次建立连接,于是发送了一个确认数据包,但客户端已收到一个确认数据包,会忽略第二次发来的这个确认数据包,但服务端发送确认数据包后就开始等待客户端回复,此时客户端不会回复服务器,于是造成没有必要的等待。

所以,三次握手是为了避免重复连接,防止旧的连接引起连接混乱问题。

三次连接已经足够,四次连接会造成冗余。

3.传输方式:TCP是字节流传输,流就是指不间断的数据结构;UDP是一个个报文独立传输

4.首部字节:TCP首部是20-60字节;UDP首部只有8字节(只包含源端口,目的端口,长度,校验和)

5.TCP是一对一通信;UDP支持一对一,一对多,多对一·,多对多的通信

6.传输效率:TCP的传输效率低,因为在传输数据之前先要建立连接会消耗一些时间,在传输数据时他的重传机制和拥塞控制机制都会消耗时间;UDP的传输效率高

7.所需资源:TCP所需资源多,因为在传输数据之前先要建立连接会消耗一定资源,在传输数据时他的重传机制和拥塞控制机制也会占用资源;UDP所需资源少

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值