传输层--可靠传输 & 面向字节流
Posted 小羊教你来编程
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了传输层--可靠传输 & 面向字节流相关的知识,希望对你有一定的参考价值。
可靠传输&面向字节流
目录:
一.可靠传输
1.面向连接
对于面向连接这里的知识,其实就是我在上一篇博客中对于三个握手和四次挥手的理解,点击此处查看面向连接具体知识
2.进行包序管理,实现有效传输
正如我们在上一篇博客中详细阐述了关于TCP协议的协议格式,内部其实就包含序号和确认序号两种东西,我们也就是运用这两种东西进行包序管理,实现有效传输的.
3.确认应答机制
确认应答机制是,针对每一条收到的消息都进行相应的ack回复确认.
4.超时重传机制
发送的数据如果超出了时间限制,则认为数据丢失,进行重传
5.协议字段的校验
校验的数据一致性,不一致则会丢失,发送重传请求
6.避免丢包
1)滑动窗口机制–用来进行流量的控制
(1)停等协议
收到确认回复上一条数据的时候,再去发送下一条的数据
(2)回退n步协议
从丢失的数据开始进行重新传输
(3)选择重传协议
只选择将丢掉的数据进行重新传输
2)拥塞机制
拥塞机制–以慢启动快增长的形式进行传输
实现原理: 发送方维护了一个拥塞窗口,用于限制当前所能发送的数据大小,而这个拥塞窗口是以指数级增长的,来实现网络探测,防止数据在网络状态突然变差继续大量发送而导致丢包.
7.性能提升–避免一些无谓的性能损失
1)快速重传机制
接受方在接受数据的时候,先接收到后发的数据,则认为前面的数据有可能丢失了,则连续间隔发送三条前面数据的重传请求,如果收到三条重传请求后,则对对应的数据进行重传.
~
发送三次的目的: 为了防止延迟到达的情况
2)延迟应答机制
接收方接受数据如果立即进行回复,大概率窗口带下都会变小,延迟应答是为了,在延迟期间,上层有可能将数据取出,来尽量的保证窗口的大小,保证传输的吞吐量.
3)捎带应答机制
将确认回复的信息,放在即将要发送的数据的报头,捎带着传输给对方.减少纯报头的确认回复
8.总结
二.面向字节流
基于连接,可靠的 ,有序的, 双向的一种字节流传输方式,tcp要发送的数据先放入到缓冲区内,在通信的时候tcp会从缓冲区内取出对应的数据,在进行头部的封装进行发送
以上是关于传输层--可靠传输 & 面向字节流的主要内容,如果未能解决你的问题,请参考以下文章