loser学习TCP协议

TCP (Transmission Control Protocol ) 传输控制协议  是一种面向连接的、可靠的、基于字节流的传输层通信协议,由IETF的RFC 793定义。在简化的计算机网络OSI模型中,它完成第四层传输层所指定的功能,用户数据报协议(UDP)是同一层内另一个重要的传输协议。(这是基础,如果不明白,自行百度,如果百度还是不明白,你就放弃吧!!)

        TCP报文格式简图:

        loser学习TCP协议

                1.源端口号和目的端口号:与源IP和目的IP唯一确定一条TCP连接;(ps:IP地址学习点这)

                2.seq  序号 用于标识TCP源端向目的端发送的数据字节流;

                3.ack 确认序号   用于回复seq序号,当置位符ACK为1时,ack确认序号才有效(ps:个人理解)

                4.首部长度:报文头长度

                5.标志位:URG 紧急指针, ACK确认序号有效,  PSH 接收方应尽快将此报文段交给应用层, RST重建连接,SYN同步序号发起一个连接,FIN发送端完成发送任务 

                 关于标志位 需要重点关注的是  ACK SYN FIN

                6.窗口大小:TCP流量控制通过连接的每一端声明窗口大小进行控制(接收缓冲区大小)

                 7.校验和:检验和覆盖整个TCP报文段;强制字段,由发送端计算存储,由接收端进行验证

                 8.紧急指针:当URG标志为1时,紧急指针才有效

      其他的不做过多解释,下面是我们应该关注的重点。

                TCP三次握手:

                 loser学习TCP协议

                TCP四次挥手:

                loser学习TCP协议