TCP报头结构和TCP协议特性

TCP报头结构


TCP报头结构和TCP协议特性_第1张图片

原端口号/目的端口号:表示数据是从哪个进程来,到哪个进程去;
32位序号/32位确认号:这个序号是取的发送方发送所用数据下一个字节的序号,发送方的序列号和接收方的确认号一样,才算接收成功,否则还会索要确认号的数据
4位TCP报头长度:表示该TCP头部有多少个32位bit
6位标志位:
URG:紧急指针是否有效
ACK:确认号是否有效
PSH:提示接收端应用程序立刻从TCP缓冲区把数据读走
RST:对方要求重新建立连接;我们把携带RST标识的称为复位报文段
SYN:请求建立连接;我们把携带SYN标识的称为同步报文段
FIN:通知对方,本端要关闭了,我们称携带FIN标识的为结束报文段
16位窗口大小:这个用来限制滑动窗口,就是限制发送方一次发送多少条数据
16位校验和:发送端填充,CRC校验。接收端校验不通过,则认为数据有问题。此处的检验和不
光包含TCP首部,也包含TCP数据部分。
比特就业课
16位紧急指针:标识哪部分数据是紧急数据;


TCP原理和特性


可靠性方面:

确认应答:

TCP报头结构和TCP协议特性_第2张图片

ack为应答报文


序列号:

这个序号是取的发送方发送所用数据下一个字节的序号,发送方的序列号和接收方的确认号一样,才算接收成功,否则还会索要确认号的数据

校验和

啊啊

超时重传

发送方一定时间内拿不到应答报文,会等一段时间重发

连接管理

TCP3次握手和4次挥手

TCP报头结构和TCP协议特性_第3张图片

流量控制

接收端处理数据的速度是有限的,发送端发的太快,导致接收端的缓冲区被打满,这个时候如果发送端继续发送,就会造成丢包,所以有窗口大小决定,每次发多少

拥塞控制

如果接受方比较拥堵。在不清楚当前网络状态下,贸然发送大量的数据,可能会出事,TCP引入 慢启动 机制,先发少量的数据,探探路,摸清当前的网络拥堵状态,再决定按照多大的速度传输数据

提高性能方面:


滑动窗口

就是一次发送多条数据

快速重传

如果发送多条数据,接受方只受到第1条数据,下次发送会从第2条数据开始发送

你可能感兴趣的:(tcp/ip,网络,服务器)