TCP三次握手抓包分析
1. TCP三次握手过程
- 最开始双方都是CLOSED关闭状态。然后服务端开启监听某个端口,进入
LISTEN
状态。 - 客户端发起请求,发送
SYN
,客户端变为SYN_SENT
(同步消息发送)状态 - 服务端收到
SYN
请求,返回一个SYN
和ACK
,变为SYN_REVD
(同步消息接收)状态
当客户端收到服务器返回的的
SYN
和ACK
之后,即可知道服务器能够正常接收
- 客户端收到服务端返回的消息,再向服务端返回一个
ACK
,开始变为ESTABLISHED
状态
当服务器收到客户端发来的
ACK
后,服务端才能知道客户端能够正常接收
- 服务端收到客户端传来的
ACK
之后,变为ESTABLISHED
状态,连接建立
2. 抓包分析
使用wireshark 进行抓包
可以看到
- 6523请求和80端口建立连接,发送
SYN
,此时的Seq
= 0- 80端口向6523返回一个
SYN
和ACK
,此时的的Seq
=0,Ack
为80端口发送的Seq + 1
,值为1- 6523接收到80端口的
SYN
和ACK
之后,向80端口再发送一个ACK
,此时的Seq
= 1,Ack
= 1。三次握手完成,连接建立。
3.为什么不能是两次握手
如果只进行两次握手的话,服务端不知道客户端能否正常接收消息。
是为了防止已经失效的连接请求报文突然又传到了服务端,假设没有第三次握手,连接将被建立,进而浪费资源。
TCP三次握手抓包分析相关推荐
- linux过滤端口抓包_TCP 协议三次握手抓包分析amp;查看状态
关注爱因诗贤每天进步一点点导读 前面文章介绍了 TCP 报文头部的格式,TCP 协议是一个面向连接的协议,所以在使用 TCP 协议之前需要先建立连接,而建立连接就需要先 握手,在握手的时候就会有 TC ...
- TCP三次握手抓包观察实战篇
使用wireshark进行抓包,发现三个包有非常明显的三次握手的特征, syn syn + ack ack 但是还不能确定.所以打算通过seq num和ack num进行验证. 通过以下三步基本可以认 ...
- TCP三次握手中SYN,ACK,seq ack的含义
TCP三次握手中SYN,ACK,seq ack的含义 1.TCP 为什么三次握手而不是两次握手 1.防止已失效的连接请求又传送到服务器端,因而产生错误. 不幸的是, 这种解释是不准确的, TCP 采用 ...
- TCP三次握手代码分析与过程跟踪
https://www.cnblogs.com/luoyang712/p/12099983.html 1.内核TCP三次握手代码分析 首先客户端调用connect主动发起连接 SYSCALL_DEFI ...
- Wireshark抓取TCP三次握手包
TCP三次握手 TCP协议是一个我们每天都在使用的网络通讯协议,因为绝大部分的网络连接都是建立在TCP协议上的,比如你此刻正在看的这篇文章是建立在HTTP应用层协议的基础上的,而HTTP协议的底层则是 ...
- TCP 三次握爪 四次挥手
TCP三次握手和四次挥手过程 1.三次握手 (1)三次握手的详述 首先Client端发送连接请求报文,Server段接受连接后回复ACK报文,并为这次连接分配资源.Client端接收到ACK报文后也向 ...
- wireshark三次握手抓包
一,抓包 以搜狐为例,百度地址www.souhu.com,我们先查看一下搜狐的ip 用wireshark过滤出搜狐的ip 在浏览器中访问搜狐的域名 看到了成功抓取到了tcp的三次握手 二,分析 第一次 ...
- TCP三次握手中,为什么需要第三次握手?
为什么客户端A还要发送一次确认呢?(为什么需要第三次握手) 这主要是为了防止已失效的连接请求报文段突然又传送到了B(服务器端),因而产生错误. 所谓"已失效的连接请求报文段"是这样 ...
- TCP 三次握手、四手挥手,这样说你能明白吧!
TCP协议全称为:Transmission Control Protocol,是一种面向链接.保证数据传输安全.可靠的数据传输协议.为了确保数据的可靠传输,不仅需要对发出的每个字节进行编号确认,还需要 ...
最新文章
- Django 运行 runserver 端口占用,报错:Errno 10013
- wxWidgets:wxMemoryFSHandler类用法
- Springcloud中的region和zone的使用
- WinAPI: PolylineTo - 绘制一组连续线段(更新当前位置)
- NoSQL数据库--简介
- math、numpy、pandas NaN 判断
- 解决body设置height:100%无效问题
- 记录:mysql 字符串拼接函数
- 数论入门符号_大符号入门指南第2部分
- ACM竞赛入门分析与学习资源总结
- 弘辽科技:想要利用直通车打造爆款,这个技巧一定要把握
- mysql 索引失效的7种情况
- Java面向对象 - String类
- MacOS查看DNS服务器地址
- 提高办公协同效率,Tracup可能是最好的选择
- 机器学习10大经典算法详解
- 【webrtc】nack
- G722 Series Intro
- 中科院计算所VIPL实验室2篇AAAI 2020论文导读
- 头歌平台 --- 机器学习 --- 高斯混合聚类
热门文章
- Linux 安装指定版本GCC方法
- c语言乘方程序,c语言乘方(c语言乘方表示)
- 【Multisim仿真】同相比例运算放大电路仿真实验
- 【转贴】北大一牛人写的爆强失恋诗
- Python之HTML解析方法
- 周年庆标语(如果采纳,我就留下)
- Java ElasticSearch:(五)ElasticSearch 中的 mapping 问题
- 非酋用计算机弹唱,·181· 《非酋》弹唱谱
- OpenCASCADE BRep vs. OpenNURBS BRep
- 吉林大学计算机邵帅,吉林大学获ACM-ICPC世界总决赛历史最好成绩