TCP
概念
TCP 传输控制协议(Transmission Control Protocol)是一种面向连接的、可靠的、基于字节流的传输层通信协议。
TCP在传输数据之前必须先建立连接,数据传输结束后要释放连接。
每一条TCP连接只能有2个端点,故TCP不提供广播或多播服务。
TCP提供可靠交付,通过TCP连接传输的数据,无差错、不丢失、不重复、并且按序到达。
TCP是面向字节流的。虽然应用进程和TCP的交互是一次一个数据块(大小不等),但TCP把英语程序交下来的数据看成仅仅是一连串的无结构的字节流。TCP并不知道所传输的字节流的含义。
TCP数据封装在一个IP数据报中:
下图是TCP报文数据格式。TCP首部如果不计选项和填充字段,它通常是20个字节。
TCP端口状态说明
-
LISTENING
FTP服务启动后首先处于侦听(LISTENING)状态。 -
ESTABLISHED
ESTABLISHED的意思是建立连接。表示两台机器正在通信。 -
CLOSE_WAIT
对方主动关闭连接或者网络异常导致连接中断,这时我方的状态会变成CL