TCP即传输控制协议是一种面向连接的、可靠的、基于字节流的传输层通信协议。
TCP客户端和服务器连接有三次握手过程,分别是:
1.客户端发送SYN报文给服务器端,客户端进入SYNSEND状态。
2.服务器端收到SYN报文,回应一个SYN报文,服务器端进入SYNRECV状态。
3.客户端收到服务器端的SYN报文,回应一个ACK报文,进入Established状态。
在实际应用中,客户端或服务器端上维持的一个看似正常的TCP连接可能已经断连。
TCP 连接主要受到两个方面的影响而导致断连,网络中间节点和客户端,服务器节点参与通信的两方节点。
在实际网络应用中,两个主机之间的通信往往需要穿越多个中间节点,例如路由器、网关、防火墙等。
因此,两个主机之间 TCP 连接的保持同样会受到中间节点的影响,尤其是会受到防火墙的限制。
该协议主要用于在主机间建立一个虚拟连接,以实现高可靠性的数据包交换。
IP协议可以进行IP数据包的分割和组装,但是通过IP协议并不能清楚地了解到数据包是否顺利地发送给目标计算机。
而使用TCP协议在该协议传输模式中在将数据包成功发送给目标计算机后,TCP会要求发送一个确认;如果在某个时限内没有收到确认,那么TCP将重新发送数据包。
另外,在传输的过程中,如果接收到无序、丢失以及被破坏的数据包,TCP还可以负责恢复。
传输控制协议是一种面向连接的、可靠的、基于字节流的运输层通信协议,在简化的计算机网络OSI模型中,它完成运输层所指定的功能。