一、课程信息
打卡时间:2022.9.9
课程名称:2022新版编程必备基础,计算机组成原理+操作图片描述系统+网络
章节名称:计算机网络之传输层
讲师: 咚咚呛
二、今日课程
课程内容:TCP四次挥手、等待计时器、套接字
三、学习心得
3.1 TCP四次挥手
三次握手是建立连接的过程,四次挥手就是断开连接的过程。四次挥手的过程如下:发送方发送FIN报文(第一次挥手),接收方发送ACK(第二次挥手),接收方发送FIN报文(第三次挥手),发送方发送ACK报文(第四次挥手)。
为什么接收方第二次挥手和第三次挥手之间要等待一段时间呢?因为接收方的发送缓冲区可能还有数据没有发送完,因此第三四次挥手之间还要等待一段时间。
接收方第二次和第三次挥手可以合并为一次吗?答案是可以的
等待计时器:第四次挥手后,发送方会开启等待计时器,一般等待时间为2MSL,同时在等待计时器状态,发送方的端口是被占用的,要离开等待计时器状态后端口才会释放。
为什么要等待2MSL?(1)为了确保接收端能够收到第四次挥手的报文,因为最后一个报文没有确认,这样可以确保发送方的ACK可以到达接收方,MSL是报文最长生存时间,如果在MSL内接收方没有收到ACK报文,那么会重发FIN报文,这样发送方还会重发ACK报文,再次进行第四次挥手。(2)确保连接的报文全部过期。
3.2 套接字
通过端口可以绑定不同的网络进程,端口(16bit)从0~65535。套接字是{IP,PORT}组合,用于表示TCP连接的一端。一个TCP连接可以用两个套接字表示。要熟悉发送端和接收端的套接字编程,不过课程是使用python的,接下来要花点时间看一下C++的如何编写。
四、课程图片
点击查看更多内容
为 TA 点赞
评论
共同学习,写下你的评论
评论加载中...
作者其他优质文章
正在加载中
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦