Wireshark网络分析工具(二)
一、TCP三次握手过称

1. 第一次握手的数据包
客户端发送一个TCP,标志位为SYN,序列号为0, 代表客户端请求建立连接。 如下图:


2. 第二次握手的数据包
服务器发回确认包, 标志位为 SYN,ACK. 将确认序号(Acknowledgement Number)设置为客户的I S N加1以.即0+1=1, 如下图:

3. 第三次握手的数据包
客户端再次发送确认包(ACK) SYN标志位为0,ACK标志位为1.并且把服务器发来ACK的序号字段+1,放在确定字段中发送给对方.并且在数据段放写ISN的+1,如图:

二、TCP头部中几种常用的标记位
l SYN:用来表示打开连接;
l FIN:用来表示拆除连接;
l ACK:用来确认(通过TCP连接)收到的数据;
l RST:用来表示立刻拆除连接;
l PSH:用来表示应将数据提交给末端应用程序(进程)处理。
三、Wireshark提示
- [packet size limited during capture] 标记这个包没有抓全
- [tcp previous segment
not captured]网络包没有抓到:一种是真的丢包了,一种是抓包工具没有抓到。看对方回复的确认ack就能判断
- [tcp asked unseen
segment] 几乎可以忽略,只抓到了后面的ack,没有抓到前面的数据包
- [tcp out-of-order]乱序
- [tcp dup ack]发生乱序或丢包了
- [tcp fast
retransmission] 发送方收到3个或以上tcp dup ack,进入快速重传
- [tcp retransmission]发生丢包,又没有后续包触发dup ack
- [tcp zerowindow] win= 表示发送方当前还有多少缓冲区可以接收数据
- [tcp window full] 发送方已经把接收方的窗口耗尽了,不能再发送数据了
- [tcp segment of a
reassembled pdu] 这是启用了
edit—>preferences—>protocols—>tcp 菜单里的allow sub dissector to reassemble tcp streams,在最后一个包把所有的包虚拟的集中起来,方便复制整个应用层的edu (copy—>bytes—>printable
text only)
- [continuation to #]则是上面选项没启用
- [time-to-live exceeded]未收全包 无法组装
四、性能问题分析
- statistics->summary (查看统计信息,比如平均流量)
- statistics->service Response Time->ONC-RPC->program:NFS
Version:3—>create stat(衡量服务器性能)
- analyze—>expert info composite (查看重传统计、连接的建立、重置统计等等)
- statistics->tcp stream graph->tcp sequence graph (生成统计图,考虑选择时间的长度)
五、分析命令
tcp.analysis.ack_rtt > 0.2 and tcp.len == 0 过滤是否存在延迟包
握手失败一般分两种类型,要么被拒绝,要么是丢包了。
表达式1:flags.reset ==1) && (tcp.seq ==1)
表达式2:(tcp.flags.syn ==1) && (tcp.analysis.retransmission)
六、重传
当发现网络包重传时,需要先检查重传出现的时间,即Wireshark抓包文件显示的发生TCP重传的时间点,与受监控服务器(生成的)日志显示的发生应用程序报告的时间点吻合,则可以判断TCP重传是服务器程序报错有关,与网络无关。
Wireshark网络分析工具(二)的更多相关文章
- Wireshark网络分析工具(一)
关于Wireshark,熟悉网络或网络性能方面的同学应该知道,使用Wireshark工具通过抓取数据包,对系统网络问题进行分析,该工具简单.易用.易学! 百度百科上面是这样描述的:Wireshark( ...
- [转] X-RIME: 基于Hadoop的开源大规模社交网络分析工具
转自http://www.dataguru.cn/forum.php?mod=viewthread&tid=286174 随着互联网的快速发展,涌现出了一大批以Facebook,Twitter ...
- 转:TestLink1.9.3测试用例:Excel转换XML工具<二>实现代码
TestLink1.9.3测试用例:Excel转换XML工具<二>实现代码 http://blog.csdn.net/candle806/article/details/7490599 以 ...
- [原创] debian 9.3 搭建Jira+Confluence+Bitbucket项目管理工具(二) -- 安装jira 7.5.4
[原创] debian 9.3 搭建Jira+Confluence+Bitbucket项目管理工具(二) -- 安装jira 7.5.4 环境都配置好以后, 开始搭建Jira的环境, 这里参考了一篇文 ...
- 小程序入口构造工具&二维码测试工具
小程序入口构造工具&二维码测试工具 本文将介绍我们小程序中隐藏的两个工具页面.原理虽不复杂,收益却实实在在,或许也能给诸君带来启发. 入口构造工具 痛点 PM&运营 投放链接 PM&a ...
- Python实现C代码统计工具(二)
目录 Python实现C代码统计工具(二) 声明 一. 问题提出 二. 代码实现 三. 效果验证 Python实现C代码统计工具(二) 标签: Python 代码统计 声明 本文将对<Pytho ...
- Wireshark网络分析实战笔记(三)基本信息统计工具的使用方法
Capture File Properties:获取网络中数据包的整体信息 用法:Statistics菜单条下Capture File Properties选项 Protocol Hierarchy: ...
- kettle工具二次开发-代码启动JOB
kettle工具是一款优秀的数据同步.数据处理的BI工具,收到了很多人的青睐.kettle软件通过可视化的图标可以让我们很轻易的能完成数据同步.处理的开发工作.但是使用kettle可视化界面在跑JOB ...
- Excel通用类工具(二)
前言 上一篇中写到了用反射来处理类中的不用的属性,但是Excel的列名还得手动输入,这样还是比较麻烦的,今天这篇就利用自定义注解来解决手动传入列名的问题:其实很简单的,只需要在上一篇的基础上加一个类就 ...
随机推荐
- 02-3设置第一启动项--进入BIOS设置USB方式启动
设置USB方式启动 https://zhinan.sogou.com/guide/detail/?id=1610014869 如何设置电脑从U盘启动呢?今天小编教大家如何进入BIOS设置USB方式启动 ...
- linux tomacat 之部署 war包
之前一篇写的是tomcat的linux安装,其中主要是jre 的问题,接下来讲讲 tomcat发布war包 这是一个相对简单的过程 打好war包后,将war包上传到/usr/local/tomcat/ ...
- 深入理解Tomcat虚拟文件夹
我们知道,Web站点中的内容(包含网页,图片,音频文件等)一般都存放在App的文件夹下.但随着站点内容的不断丰富,用户须要把不同层次的内容组织成站点的子文件夹. 我们通常的做法是在站点主文件夹 ...
- 通过 P3P规范让IE跨域接受第三方cookie session
所谓第三方 cookie,就是说你访问网页 A,却接收到域名 B 的 cookie 设定指令.这可能是由于网页 A 请求或链接了 B 的网页,比如上面提到的 iframe 以及 jsonp. 我查到了 ...
- PHP获取QQ群成员QQ号码
.加入某个群 .进入群空间http://qun.qzone.qq.com/group#!/25998059/member 备注:25998059为群号码 .进入群成员列表 .使用浏览,在某个群成员头像 ...
- wp8 各种启动器
PhoneCallTask 打电话 需要 ID_CAP_PHONEDIALER Windows Phone 8, Windows Phone OS 7.1
- UI-1-UI入门
课程要点: 创建一个iOS工程 AppDelegate类 UIKit框架以及UIWindow 在window上添加第一个试图UIView NSTimer(定时器) 创建一个iOS工程 PS:接下来简单 ...
- objc_runtime使用方法的几个简单例子(转)
1. 给NSObject类动态添加属性h定义部分 [cpp] @interface UIWebView (LoadProgress) @property (nonatomic, assign) NS ...
- 一个奇怪的EL表达式错误
下图是在Struts2的action中写的一个方法 JSP页面代码如下: 在页面访问如下路径:http://localhost:8088/maven_ssh/cust_getCustList 目前推测 ...
- linux mount-umount命令常用记录
每次挂在u盘都忘记,这次记录下. umount命令: 必杀:umount -l /dev/sda1 (有时候卸载不能卸,加-l(不是1,是小写字母l)参数,表示在设备不忙时卸载设备,就可成功卸载设备) ...