TCP的介绍
TCP/IP协议族的传输层协议
TCP:传输控制协议
1.TCP是面向连接的、可靠的进程到进程通信的协议
2.TCP提供全双工服务,即数据可在同一时间双向传输
TCP报文段
1.TCP将若千个字节构成一个分组,叫报文段(Segment)
2.TCP报文段封装在IP数据报中
UDP:用户数据报协议
TCP的报文格式
源端口:发送方的地址
目的端口:接收方的地址
序号:发送端为每个字节进行编号,便于接收端正确重组
确认号: 用于确认发送端的信息
窗口大小:用于说明本地可接收数据段的数目,
U A P R S F
A C S S Y I 控制位
G K H T N N
SYN:同步序号位,TCP需要建立连接时将该值设为1
ACK:确认序号位,当该位为1时,用于确认发送方的数据
FIN:FIN为1 表示断开连接
TCP的三次握手
1.当PC1向PC2发送报文时 Seq=X SYN=1 表示向PC2建立连接
2. PC2收到PC1的报文是 Ack=X+1(确认了PC1的序列号) 并和PC1建立连接 (SYN=1) 确认PC1的请求(ACK=1)
3.PC1收到PC2的请求(Seq=x+1 )确认了PC2的序列号(ACK=y+1) 同时也确认了PC2的请求
TCP的四次挥手
1.当PC1向PC2报文断开连接时 (FIN=1 )并确认了断开连接(ACK=1) 2.PC2确认了PC1的断开报文(ACK=1)
3.PC2向PC1发送断开连接的报文(FIN=1)并确认(ACK=1)
4.PC1确认PC2的断开报文(ACK=1)
1 2 3的过程中 虽然已经终止发送数据但是仍然可以接受数据 (半关闭状态) 2msl 1到4分钟 等PC1的回复 等不到重新再发一次 1和3步骤没等到4步骤的回复 都属于半关闭状态
UDP协议介绍
UDP协议
1 .无连盛不可靠的传输协议
2. 花费的开销小
UDP报文的首部格式
源端口号 | 目标端口号 |
---|---|
UDP长度 | UDP校验和 |
UDP长度:用来指出UDP的总长度,为首部加上数据
校验和:用来完成对UDP数据的差错检验,它是UDP协议提供的唯一的可靠机制