【网络】UDP和TCP

UDP和TCP各自特点

TPC

1.TCP是面向连接的
2.每条TCP连接只能用于两个断点,一对一
3.TCP提供可靠交付的服务:连接传输数据、无差错、不丢失、不重复、并且按序到达
4.TCP提供全双工通信
5.面向字节流。TCP根据对方给出的窗口和当前网络拥塞的程度来决定一个报文应该包含多少个字节

UDP

1.UDP是无连接
2.UDP没有拥塞控制
3.UDP支持一对一、一对多、多对一、多对多节点之间交互通信
4.UDP首部开销较小只有8个字节,而TCP首部是20到60个字节,开销相对较大
5.UDP最大限度交付消息包,但不能保证可靠
6.UDP是面向报文的,对于应用层传递下来的报文既不合并也不拆分,而是保留这些报文的边界。应用层交给UDP的报文有多长,他就会发送多长,每次发送一个报文。

TCP如何保证可靠性

1.数据被分割成TCP认为最合适大小的数据块,即每次发送的消息报文大小相差不大。
2.重传机制:每次发送一个消息包,启动定时器,如果在规定时间内没有收到消息确认反馈,重新发送该数据包。
3.TCP将保持它首部和数据的校验和,目的在于检测消息在发送过程中是否出现变化,一旦出现变化则TCP将丢弃这个报文段和不确认收到此报文段。
4.TCP会将收到的消息包进行汇总排序,以确保消息的顺序。
5.TCP连接的每一方都有固定大小的缓冲空间进行流量控制,只能接受容纳缓冲空间能够容下的消息数据包,当接受方来不及处理接受到的消息时,会提示发送方降低发送速率,防止丢包。TCP利用滑动窗口实现流量控制。
6.当出现网络拥塞时,会减少数据发送。
7.消息ACK机制,基本原理是每发完一个分组就停止发送,等待对方确认。如果没收到确认,会重发数据包,直到确认后再发下一个分组。

思考:用了TCP之后就一定不会丢包吗?

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值