TCP特点
一说到TCP,想必大家都能说上几句,比如:
1、三次握手;
2、四次挥手;
3、可靠连接;
4、丢包重传。
但核心的是:
TCP是可以可靠传输协议,它的所有特点都为这个可靠传输服务。
那么,TCP是怎么来保障可靠传输的呢?
TCP在传输过程中都有一个ack,接收方通过ack告诉发送方收到包了。这样发送方能知道有没有丢包,进而确定重传。
TCP三次握手建立连接
下面是一个连接数据库三次握手的过程。
红框表示建立连接的三次握手:
1、client 发送 syn 到server 发起握手;
2、server 收到 syn后回复syn+ack给client;
3、client 收到syn+ack后,回复server一个ack表示收到了server的syn+ack(这时client的48287端口连接是established)
握手的目的是告知对方seq(绿框是client的初始seq,蓝色框是server的初始seq),然后对方回复ack,这样发送端就知道有没有丢包。
握手的次要目的是告知和协商一些信息(图中黄框