TCP三次握手和四次挥手

1.传输层协议

●TCP协议(传输控制协议) : 可靠的,面向连接的传输协议
●UDP协议 (用户数据报协议) :不可靠的 ,面向无连接的传 输协议

2. TCP协议数据格式

在这里插入图片描述
TCP包头作用:
●序号:Seq序号,占32位,用来标识从TCP源端向目的端发送的字节流,发起方发送数据时对此进行标记。
●确认号: Ack序号,占32位, 只有ACK标志位为1时, 确认序号字段才有效,Ack=Seq+1.
●标志位: 共6个,即URG、ACK、 PSH、RST、 SYN、 FIN等, 具体含义如下:
URG:紧急指针(urgent pointer) 有效。
ACK:确认序号有效。
PSH:接收方应该尽快将这个报文交给应用层。
RST:重置连接。
SYN:发起一个新连接。
FIN:释放一个连接。

3.TCP三次握手

在这里插入图片描述
过程:
●第一次握手:Client将标志位SYN置为1,随机产生一个值seq=J, 非将该数据包发送给Server, Client进人SYN_SENT状态,等待server确认。

●第二次握手: Server收到数据包后由标志位SYN=1知道Client请求建立连接,Server将标志位SYN和ACK都置为1,ack序号J+1,随机产生一个值seq=K,并将该数据包发送给Client以确认连接请求,Server进 入SYN_RCVD状态。

●第三次握手: Client收到确认后,检查ack序号是否为J+1,标志位ACK是否
为1,如果正确则将标志位ACK置为1, ack序号=K+1,并将该数据包发送给Server, Server检 查ack序号是否为K+1, ACK是否为1,如果正确则连接建立成功,Client 和Server进入ESTABLISHED状态,完成三次握手,随后client与Server之间可以开始传输数据了。

4.TCP四次挥手

在这里插入图片描述
过程:
●第一次挥手:Client发送一个标志位为FIN包, Seq序号=m, 用来关闭Client到Server的数据传送,Client进入FIN_ WAIT_1状态。

●第二次挥手: Server收到标志位FIN包后,发送一个标志位ACK给Client,Ack确认序号为m+1,Server进入CLOSE_ WAIT状态。

●第三次挥手: Server发送一个标志位FIN=1,ACK=1,Seq序号=n, Ack确认序号=m+1,用来关闭Server到Client的数据传送,Server进入LAST_ ACK状态。

●第四次挥手: Client收到FIN后,Client进入TIME_ WAIT状态,接着发送一个ACK标志给Server,Ack确认序号=n+1,Server进 入CLOSED状态,完成四次挥手。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值