解析一次TCP连接的过程
这是我的第一篇博客:
介绍一下自己: 我是一名小小的网管,是一个尘世中的迷茫小书童。作为一名网管,要学的东西很杂,很多。譬如我,公司是一个跨境电商,自己有自己的一套ERP系统。我的工作是:电脑的硬件知识;一些桌面的运维的知识;一些手机的知识(公司有PDA);一些无线网络的知识;一些Linux的知识;还有更多的是ERP系统后台代码的编写....等等都是一些杂事。说容易嘛,也容易,说不容易嘛也不容易。
今天研究 TCP协议 ,总觉得自己要留下点什么,方便一下自己以后回头看看,也希望能给刚学习的人微小的帮助,心满意足.下面正题:
1:首先:介绍一下三次握手,理论上的图片我就不贴了自行百度一下。
左边栏下的NO 是编号:
1,14,15 就是三次握手额数据包了。首先我们编号1 的包:192.168.1.68 是我的源地址(本机)。14.215.177.38这是百度的地址 。TCP 是协议 。我们关注的是info下面的信息:64950 >https 说明这个包是从192.168.1.68的64950端口访问 14.215.177.38的https的服务端口443。 【SYN】 这个是wrieshark做的好的一点提示我们这是同步包(源地址想和目标地址通信了,就好像我和你打电话一样,首先要拨通你的电话)。 seq 这里是***,为啥为0呢,他本身的数值是很大的。wrieshark为了方便我们自动帮我们把一个连接的第一个包全部设置为0,为了方便我们识别和计算。 win-9192, 这个参数移动窗口,数值说明了我PC还可以接受数据量。当值为0时。说明PC断此时不再接受数据,忙不过来了。 len=0 顾名思义 这是是数据长度 。mss-1460说明了我们MTU是1500(还要加上40的头部)。 这一个包充分的说明了 源地址想和目标地址通信的包。(注意)[SYN]单个这个说明就是同步包.
2:第14包 前面的意思一样 我们从info开始说起.为啥这里是[SYN,ACK]。Ack的学名是确认位。当同时出现这两个位的时候,这是三次握手中的第二次握手。意思说 确认收到同步包,且同意连接,又像请求IP 发送同步包,我也像访问你的64950端口。
3:第15包:是三次握手中的最后一步。PC 像百度服务器发送确认包。此时可以开始通信了 。
第一次写博客 可能写的不够好 。往见谅 。