TCP三次握手、四次挥手概念图详解

举报
jiangxl 发表于 2022/04/13 23:12:09 2022/04/13
【摘要】 TCP三次握手、四次挥手概念图详解 1.TCP连接的11中状态 tcp11中状态 ESTABLISHED SYN_SENT SYN_RECV FIN_WAIT1 FIN_WAIT2 TIME_WAIT...

TCP三次握手、四次挥手概念图详解

1.TCP连接的11中状态

tcp11中状态
ESTABLISHED
SYN_SENT
SYN_RECV
FIN_WAIT1
FIN_WAIT2
TIME_WAIT
CLOSE
CLOSE_WAIT
LAST_ACK
LISTEN
CLOSING

2.TCP 三次握手、四次挥手

三次握手:

​ 首先客户端处于close关闭状态,与服务器发送第一个SYN请求后(这个SYN请求会带一个seq随机序列),客户端处于SYN_SENT状态,服务器在接收客户端发送的请求的同时一定要处于listen监听状态,否则无法收到请求包,收到请求包之后处于SYN_RCVD状态,这时也会给客户端发送一个SYN的请求包(也有随机序列),并发送一个ACK的确认包(这里ACK的随机序列值就是客户端发送SYN的序列号+1),客户端收到这两个包后会处于ESTABLISHED状态,这时也会给服务器端发送一个ACK的包(这里ACK的随机序列值就是服务端发送的SYN序列+1),服务端收到后状态处于ESTABLISHED

注意这个状态的请求数如果很多会遭到ddos攻击

四次挥手:

​ 需要断开连接时时由服务端主动断开连接的,因为数据传输是服务端发起的,因此断开也是由服务器发起

​ 首先服务端给客户端发送一个FIN的请求包(表示要求断开连接),发送完成后服务端处于FIN_WAIT_1状态(_1只是为了和第二次挥手做一个区分)客户端收到后会发送一个ACK的确认包,发送完成后,客户端处于CLOSE_WAIT状态,服务端收到后会处于FIN_WAIT_2状态,这时客户端也会发送一个FIN的请求包,请求断开连接,客户端发送完成后悔处于LAST_ACK状态,服务端收到FIN请求包后会处于TIME_WAIT状态,这时会有一个2MSL时间(MSL时间为60s,2MSL就是120s),2分钟后会给客户端发送一个ACK的确认包,表示确认断开连接,客户端收到后会处于close状态,四次挥手完成

在这里插入图片描述

文章来源: jiangxl.blog.csdn.net,作者:Jiangxl~,版权归原作者所有,如需转载,请联系作者。

原文链接:jiangxl.blog.csdn.net/article/details/109854196

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。