Linux:TCP协议——三次握手【图片+文字】
TCP协议
TCP协议:全称为 “传输控制协议(Transmission Control Protocol”). 人如其名, 要对数据的传输进行一个详细的控制。
TCP协议段格式:
源/目的端口号: 表示数据是从哪个进程来, 到哪个进程去;(tcp是传输层的协议,端与端之间的数据传输,在TCP和UDP协议当中不会体现出IP)
32位序号: 消耗的是发送方维护的序号
32位确认号:告知消息的发送方期待发送方发送的下一条序号
16位窗口大小:告诉发送方字节的接收能力
4位TCP报头长度: 表示该TCP头部有多少个32位bit(有多少个4字节); 所以TCP头部最大长度是15 * 4 = 60
6位标志位:
名称 | 解释 |
---|---|
URG: | 紧急指针是否有效 |
ACK: | 确认号是否有效 |
PSH: | 提示接收端应用程序立刻从TCP缓冲区把数据读走 |
RST: | 对方要求重新建立连接; 我们把携带RST标识的称为复位报文段 |
SYN: | 请求建立连接; |