TCP协议

TCP 协议

TCP 的特点:可靠,支持全双工,连接导向。

TCP 协议就是客户端和服务端传送数据的时候,必须先建立连接。

连接

虚拟抽象的概念。

能让两个通信的程序间确保彼此都在线。

能够加快响应请求速度

连接也被称为会话。

可以使通信更加稳定安全。

连接会消耗更多的资源。

全双工

单工:任何时刻数据都只能单向发送。

半双工:允许数据在两个方向上传输,在某一时刻,只允许数据在一个方向上传输。

全双工:任何时刻都能双向发送数据。

可靠

可靠性要保证数据无损传输。

什么是无损传输?

使无序的数据恢复原有顺序。

多播时每个接收方都获得无损副本。

TCP 的工作过程

建立连接的过程

三次握手

断开连接的过程

四次挥手

传输数据

分为三个阶段:报文拆分,增加 TCP 头,数据重组

报文拆分

应用层数据很大的时候无法一次性传输完。

这时候就将应用层的数据拆分为很多个 TCP 端,然后进行并行传输。

下图是如何保证顺序

为每一个 TCP 端标上序号,到达后进行排序。

如果 TCP 段特别多的时候可以使用时间窗口。一段时间一段时间的排序。

TCP 序号有两种,发送序号和接收序号。

一个端的发送序号是另一个端的接收序号。

TCP 头

TCP 报文段分为 TCP 头部和 TCP 段数据。

TCP 头包括

源端口:发送方机器上的应用。

目标端口:接收方服务器上的应用。

发送序号和接收序号。

TCP 中的标志位有 9 个

SYN:同步序号,在建立连接。

FIN:终止连接。

ACK:响应。

PSH:传送数据。

TCP 的好处

相关推荐
shmexon14 分钟前
上海兆越亮相无锡新能源盛会,以硬核通信科技赋能“能碳未来”
网络·人工智能
Lay_鑫辰1 小时前
西门子诊断-状态和错误位(“轴”工艺对象 V1...3)
服务器·网络·单片机·嵌入式硬件·自动化
做人不要太理性1 小时前
【Linux系统】线程的同步与互斥:核心原理、锁机制与实战代码
linux·服务器·算法
大柏怎么被偷了2 小时前
【Linux】进程替换
linux·运维·服务器
车载测试工程师2 小时前
CAPL学习-IP API函数-2
网络·学习·tcp/ip·capl·canoe
●VON2 小时前
在鸿蒙 PC 上使用 Electron 获取本机 IP 地址
tcp/ip·electron·harmonyos
Xの哲學2 小时前
Linux 指针工作原理深入解析
linux·服务器·网络·架构·边缘计算
乌萨奇也要立志学C++2 小时前
【Linux】进程信号(二)信号保存与捕捉全解析、可重入函数、volatile
linux·服务器
CryptoPP2 小时前
使用 KLineChart 这个轻量级的前端图表库
服务器·开发语言·前端·windows·后端·golang
Ai173163915793 小时前
2025.11.28国产AI计算卡参数信息汇总
服务器·图像处理·人工智能·神经网络·机器学习·视觉检测·transformer