目录
1.什么是TCP协议?
TCP全称为Transmission Control Protocol,是面向连接的,可靠的,基于字节流的传输层协议。
2.TCP协议有哪些特点?
1.基于连接:在进行数据传输之前,需要先建立可靠的连接。
2.全双工的:数据可以双向传输,即客户端可以向服务端传输信息,服务器也可以想客户端发送消息。
3.基于字节流:不限制数据的大小,将数据打包成一个个的报文段,保证数据有序接受(如果有重复报文会自动丢弃)。
4.可靠:保证数据到达目标服务器或者客户端,如果出现丢包,则会重新发送。
5.流量控制:根据双方数据处理能力,动态调增接收或者发送的速率。
3.TCP报文的结构是怎么样的?
4.TCP如何建立连接?
首先,建立一个连接,需要知道的最基本的四个要素,也可以称为四元组:
(1)源地址
(2)源端口
(3)目标地址
(4)目标端口
有了这四个基本信息,我们就能知道,数据从哪里来,发到哪里去。接下来,是TCP建立连接的过程,也被称为TCP三次握手过程:
具体步骤:
step1(第一次握手):客户端发送一个SYN报文,携带一个随机生成的序列号seq=x。客户端进入SYS_SENT状态。服务端处于LISTEN状态。
step2(第二次握手):服务端接受SYN报文,并响应一个ACK报文 ack = x &#