在三次握手发送的数据包中有两个ACK值(Acknowledgement),人们习惯一个大写,一个小写来加以区分。最近Linux运维班的老师在讲网络基础知识的时候又讲到了三次握手四次断开。我在听课的时候总是感觉这两个大小写的ACK和我以前学习网络时候理解的大小写是反着的。课余时间我就在网上查了一下这方面的资料,却看到貌似关于哪个大写哪个小写非常混乱。这样有时就会把刚学习三次握手的新手搞的晕头转向,分不清到底哪个是哪个了。
其实ACK也好,ack也好,只不过是个代号而已,叫他张三也行,叫他李四也没事,没有任何影响,因为咱们不会改动那个东西。就算是把名字记反了,对咱们也没有任何影响,大家知道三次握手的数据包里有这么两个东西就行了。
一个是确认值(Acknowledgement),为1便是确认连接。
另一个是确认编号(Acknowledgement Number),即接收到的上一次远端主机传来的seq然后+1,再发送给远端主机。提示远端主机已经成功接收上一次所有数据。
本人有轻度强迫症,能搞清楚的问题我不喜欢迷迷糊糊的,再加上这个问题想搞清楚其实很简单,所以用wireshark抓包看了一下,然后通过抓包我把我的理解说出来跟大家讨论讨论,我哪里理解的不对希望大家及时帮我改正错误。
关于TCP协议中三次握手中的ACK和Ack number的区别
最新推荐文章于 2024-03-18 23:58:15 发布