文章目录
一.传输层协议介绍
1.TCP协议
TCP是面向连接的、可靠的进程到进程通信的协议。TCP提供全双工服务,即数据可在同一时间双向传输。
2.UDP协议
UDP协议是无连接、不保证可靠性的传输层协议。发送端不关心发送的数据是否到达目标主机、数据是否出错等,收到数据的主机也不会告诉发送方是否收到了数据,传输数据速度更快,效率更高
二.TCP
1.TCP报文格式
源端口号:发送方进程的端口号。
目标端口号:接收端进程的端口号。
序号:发送端为每个字节进行编号,便于接收端正确重组。
当TCP从进程接收数据字节时,把它们分片成数据段存储在发送缓存中,并对每一个片段进行编号。当数据到达目的地后,接收端会按照这个序号把数据重新排列,保证数据的正确性
确认号:对发送端的确认信息。
接收端响应消息时将会用它来告诉发送端这个序号之前的数据段都已经收到,如确认号是x,就是表示前X-1个数据段都已经收到。
首部长度:用它可以确定TCP首部数据结构的字节长度。–般情况下TCP首部是20字节,但首部长度最大可以扩展为60字节。
控制位:
URG:紧急位。紧急指针有效位。
ACK:确认位。只有当ACK=1时,确认序列号字段才有效:当ACK=0时,确认号字段无效。
PSH:急迫位。标志位为1时,要求接收方尽快将数据段送达应用层。
RST:重置位。当RST值