如何保证TCP的稳定性和流速控制

简介: TCP粘包和拆包中保证顺序的具体算法是TCP滑动窗口算法。TCP作为一个传输层协议,最核心的能力是传输。传输需要保证可靠性,还需要控制流速,这两个核心能力均由滑动窗口提供。滑动窗口数据结构

TCP粘包和拆包中保证顺序的具体算法是TCP滑动窗口算法。

TCP作为一个传输层协议,最核心的能力是传输。传输需要保证可靠性,还需要控制流速,这两个核心能力均由滑动窗口提供。

滑动窗口数据结构
image.png

如何保证TCP的稳定性和流速控制
如上图所示:

深色代表已经收到ACK的段

浅色代表发送了,但是还没有收到ACK的段

白色代表没有发送的段

紫色代表暂时不能发送的段

假设一次最多发送5个封包,也就是窗口大小=5,窗口中的数据被同时发送出去,然后等待ACK。如果一个封包ACK到达,就标记为已接收。
image.png

如何保证TCP的稳定性和流速控制
然后滑动窗口向右侧滑动,如图所示:
image.png

如何保证TCP的稳定性和流速控制
重传,如果发送过程中,部分数据没有收到ACK,这样就会发生重传。

如果发生下面的这样情况,段4一直没有收到ACK,
image.png

如何保证TCP的稳定性和流速控制
这个时候滑动窗口只能右移一个位置,如图所示
image.png

如何保证TCP的稳定性和流速控制
在这个过程中,如果段4重传成功接收了ACK,然后窗口才会继续右移。如果段4还是没有收到ACK,那么接收方会抛弃段5、段6、段7。这样从段4开始之后的数据都需要重发。

流速控制,发送、接收窗口的大小可以用来控制TCP协议的流速。窗口越大,同时可以发送、接收的数据就越多,支持的吞吐量也就越大。同时窗口越大,数据发生错误,损失也越大。因为需要重传越多的数据。

相关实践学习
容器服务Serverless版ACK Serverless 快速入门:在线魔方应用部署和监控
通过本实验,您将了解到容器服务Serverless版ACK Serverless 的基本产品能力,即可以实现快速部署一个在线魔方应用,并借助阿里云容器服务成熟的产品生态,实现在线应用的企业级监控,提升应用稳定性。
云原生实践公开课
课程大纲 开篇:如何学习并实践云原生技术 基础篇: 5 步上手 Kubernetes 进阶篇:生产环境下的 K8s 实践 相关的阿里云产品:容器服务 ACK 容器服务 Kubernetes 版(简称 ACK)提供高性能可伸缩的容器应用管理能力,支持企业级容器化应用的全生命周期管理。整合阿里云虚拟化、存储、网络和安全能力,打造云端最佳容器化应用运行环境。 了解产品详情: https://www.aliyun.com/product/kubernetes
目录
相关文章
|
2月前
|
网络协议 算法 网络性能优化
|
弹性计算 网络协议 算法
记一次典型的TCP传输吞吐效率问题
客户在ECS上实现了一个供小图片上传的接口,通过高防->SLB->ECS的网络链路将接口发布给终端用户,但是发现上传的速率很不理想。初看起来像是高防问题,但是通过排查最终发现这是一个典型的TCP传输吞吐量问题,并且是由于后端服务器端的配置而引起,在此记录下排查过程和相关原理。
记一次典型的TCP传输吞吐效率问题
|
1月前
|
网络协议 Linux 网络架构
TCP中的两类故障模式
【4月更文挑战第10天】故障分为两大类,一类是对端无 FIN 包,需要通过巡检或超时来发现;另一类是对端有 FIN 包发出,需要通过增强 read 或 write 操作的异常处理,帮助我们发现此类异常。
|
4月前
|
监控 网络协议 算法
TCP 拥塞控制对数据延迟的影响
TCP 拥塞控制对数据延迟的影响
|
4月前
|
网络协议 Linux 网络性能优化
TCP如何保证可靠性
TCP如何保证可靠性
27 0
|
4月前
|
缓存 网络协议 算法
UDP如何实现可靠传输
UDP如何实现可靠传输
|
4月前
|
网络协议
计网 - TCP重传策略大揭秘:确保数据可靠传输的秘诀
计网 - TCP重传策略大揭秘:确保数据可靠传输的秘诀
44 0
|
5月前
|
缓存
流量控制&可靠传输机制&停止-等待协议
流量控制&可靠传输机制&停止-等待协议
30 0
|
6月前
|
存储 缓存 网络协议
TCP vs UDP:揭秘可靠性与效率之争
在网络通信中,TCP和UDP是两种最常用的传输层协议。本文将深入探讨TCP和UDP之间的区别,包括连接方式、服务对象、拥塞控制、流量控制和首部开销等方面,帮助读者在不同应用需求下选择适合的协议。无论你是技术爱好者还是网络工程师,这篇文章定能帮助你了解并应用TCP和UDP的差异,提升你的网络传输效率和可靠性。
306 1
|
7月前
|
网络协议 网络架构
TCP协议报文,核心特性可靠的原因,超时重传详细介绍
TCP协议报文,核心特性可靠的原因,超时重传详细介绍