一、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网络分析工具(二)的更多相关文章

  1. Wireshark网络分析工具(一)

    关于Wireshark,熟悉网络或网络性能方面的同学应该知道,使用Wireshark工具通过抓取数据包,对系统网络问题进行分析,该工具简单.易用.易学! 百度百科上面是这样描述的:Wireshark( ...

  2. [转] X-RIME: 基于Hadoop的开源大规模社交网络分析工具

    转自http://www.dataguru.cn/forum.php?mod=viewthread&tid=286174 随着互联网的快速发展,涌现出了一大批以Facebook,Twitter ...

  3. 转:TestLink1.9.3测试用例:Excel转换XML工具<二>实现代码

    TestLink1.9.3测试用例:Excel转换XML工具<二>实现代码 http://blog.csdn.net/candle806/article/details/7490599 以 ...

  4. [原创] debian 9.3 搭建Jira+Confluence+Bitbucket项目管理工具(二) -- 安装jira 7.5.4

    [原创] debian 9.3 搭建Jira+Confluence+Bitbucket项目管理工具(二) -- 安装jira 7.5.4 环境都配置好以后, 开始搭建Jira的环境, 这里参考了一篇文 ...

  5. 小程序入口构造工具&二维码测试工具

    小程序入口构造工具&二维码测试工具 本文将介绍我们小程序中隐藏的两个工具页面.原理虽不复杂,收益却实实在在,或许也能给诸君带来启发. 入口构造工具 痛点 PM&运营 投放链接 PM&a ...

  6. Python实现C代码统计工具(二)

    目录 Python实现C代码统计工具(二) 声明 一. 问题提出 二. 代码实现 三. 效果验证 Python实现C代码统计工具(二) 标签: Python 代码统计 声明 本文将对<Pytho ...

  7. Wireshark网络分析实战笔记(三)基本信息统计工具的使用方法

    Capture File Properties:获取网络中数据包的整体信息 用法:Statistics菜单条下Capture File Properties选项 Protocol Hierarchy: ...

  8. kettle工具二次开发-代码启动JOB

    kettle工具是一款优秀的数据同步.数据处理的BI工具,收到了很多人的青睐.kettle软件通过可视化的图标可以让我们很轻易的能完成数据同步.处理的开发工作.但是使用kettle可视化界面在跑JOB ...

  9. Excel通用类工具(二)

    前言 上一篇中写到了用反射来处理类中的不用的属性,但是Excel的列名还得手动输入,这样还是比较麻烦的,今天这篇就利用自定义注解来解决手动传入列名的问题:其实很简单的,只需要在上一篇的基础上加一个类就 ...

随机推荐

  1. MATLAB 的日期和时间

    MATLAB的日期和时间常用函数 函数 说明 calender 返回日历 clock 当前时间 date 当前日期 weekday 星期几 now 当前的日期和时间 datevec 以向量显示日期 d ...

  2. Lucene3.0详解

    http://www.open-open.com/lib/view/open1331275900374.html

  3. Android Shape 详解

    1 http://blog.csdn.net/feng88724/article/details/6398193 2 <shape xmlns:android="http://sche ...

  4. WPF开源框架项目

    好久博客未更新新博文了,今天介绍一个WPF开源框架MaterialDesignInXamlToolkit废话不多说先让我们来看看框架得几张截图 让我们一起来看看源代码得结构如下图 接下我们运行代码看看 ...

  5. oracle导出表的办法

    1.先进行表分析(一定要执行此步,否则查询空表可能不准确) select 'analyze table '||table_name||' compute statistics;' from user_ ...

  6. UVA 1640 The Counting Problem UVA1640 求[a,b]或者[b,a]区间内0~9在里面各个数的数位上出现的总次数。

    /** 题目:UVA 1640 The Counting Problem UVA1640 链接:https://vjudge.net/problem/UVA-1640 题意:求[a,b]或者[b,a] ...

  7. nefu 118 n!后面有多少个0 算数基本定理,素数分解

    n!后面有多少个0 Time Limit 1000ms Memory Limit 65536K description 从输入中读取一个数n,求出n! 中末尾0的个数. input 输入有若干行.第一 ...

  8. SpringBoot对比传统开发以及自身的优缺点

    SpringBoot是伴随着Spring4.0诞生的,继承了Spring的优点,一经推出,引起了巨大的反向:目前Spring Boot的版本为2.1.0,需要Java7及Spring Framewor ...

  9. CMake 简介与使用

    cross platform make的缩写. 是一个比make更高级的编译配置工具,它可以根据不同平台.不同的编译器,生成相应的Makefile或者vcproj项目文件.通过编写CMakeLists ...

  10. OpenCV中的SURF算法介绍

    SURF:speed up robust feature,翻译为快速鲁棒特征.首先就其中涉及到的特征点和描述符做一些简单的介绍: 特征点和描述符 特征点分为两类:狭义特征点和广义特征点.狭义特征点的位 ...