TCP 三次握手
举个例子简单描述下TCP的三次握手:
就举打电话的列子吧。
TCP三次握手就是如此。
通过彼此之间发送三个包(过程就如上面对话一样),来确认client与server之间连接是否互通。
与上面的例子对应一下:
TCP报文结构
报文内容简介
TCP端口号:
16位源端口、目的端口,刚好对应端口的范围 0~65535(2^16-1)
其是 tcp 连接的四个要素(源IP、目的IP 、源端口、目的端口)的两个要素
序号: seq
占32位,用来标识从TCP源端向目的发送的字节流,发起方发送数据时对此进行标记。
确认序号:ack
占32位,只有ACK标志位为1时,确认序号字段才有效 ,ack = seq + 1。
标识位:
- SYN:发起一个新连接。(synchronous建立联机)
- FIN:释放一个连接。(finish结束)
- ACK:确认序号有效。(acknowledgement 确认)
- RST:重置一个连接。(reset重置)
- PSH:接收方应该尽快将这个报文交给应用层。(push传送)
(reset重置)** - PSH:接收方应该尽快将这个报文交给应用层。(push传送)
- UGR:紧急指针(urgent pointer)有效。(urgent紧急)