网络基础之OSI、TCP/IP与三次握手四次挥手

计算机网络体系结构

1:OSI参考模型与TCP/IP参考模型

在这里插入图片描述

2:三次握手与四次挥手

图不好画,网上找了一张。
在这里插入图片描述

9.23更新,发现了一张更全的图
在这里插入图片描述

三次握手

1:发起方只能是客户端
2:发送的标志:ACK
3:第一次握手,客户端向服务器发送SYN包(带有SYN标记,seq=x),此时客户端进入SYN_SEND状态,等待服务端的接收;
第二次握手,服务器接收到了这个数据包,并且发送一个ACK包(ack=x+1)+接收的SYN包(seq=y)给客户端,告知客户端,包我已经收到啦,此时服务端进入SYN_RECEV状态;
第三次握手,客户端收到了服务端发来的确认的包之后,回传一个标记ACK的确认包(ack=y+1),之后服务器与客户端都进入了ESTABLISHED状态。
4:三次挥手之后,客户端与服务器建立了连接,可以进行通信。

四次挥手

1:发起方可以是客户端或者是服务器
2:发送的标志:FIN
3:
第一次挥手,发起端发送FIN包(带有FIN标记,seq=z,ACK=y),意思就是我不给你发消息了,等待接收端发送确认包,并且发送了这个包之后,发起方就不会再发送包了(当然,在这个之前发送的包,没收到确认包的情况,还是会继续重发包的)
第二次挥手,接收方收到包之后,发送一个确认包,(ACK=z+1),表示,我收到你的包啦,等我准备一下。然后接收方开始进行关闭的处理操作。
第三次挥手,接收方发送包,(带有FIN标记,且seq=y),告知发送端,我这边操作已经处理完了,我的数据发送完了,不会再给你发送数据了,可以关闭了。
第四次挥手,发送端发送确认包,告知接收端,我已经收到你的包了,然后发送端也关闭连接。
至此,连接通道断开,连接关闭。
4:在第二次挥手之后第三次挥手之前,接收方可能会继续发送数据包,进行还没有处理完的数据的传送。
5:第四次挥手的意义是,发起端接收到了接收方发送的关闭包,告知已经关闭了,但是不相信网络,所以再发送一次确认包,等待几秒,发现接收方确实没有返回确认包,那么接收方是真的关闭了,所以此时,发起方就很安稳的自己关闭了。

四次挥手比三次握手多一次
三次握手中,第二次是服务器直接把确认信息和数据包分在一次里面进行发送(ACK+Seq);
而四次挥手,接收方收到发起方的请求关闭的要求后,可能手上有部分数据未完成传输,那么就得分两次发送,先发送一个ACK包,表示,我收到你的请求了,但是等我处理一下手上的东西,处理完后,再发送FIN包,告知我处理完了,我关闭了。

图的引用地址:https://blog.csdn.net/whuslei/article/details/6667471
https://baijiahao.baidu.com/s?id=1618114723935605183&wfr=spider&for=pc

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值