本次介wireshark常用工具栏的最后一个:统计(statistics),统计在我看来是非常实用的功能,例如数据、端点、协议的数值,以及相关的展示,熟练掌握可以协助工程师快速的定位和判断故障。统计菜单主要有以下内容,本次分享内容较多,请耐心阅读:
1.1 抓包数据的概述,点开可以看到抓包文件的基本信息,包括抓包文件的保存目录、抓包的开始-结束时间、抓包主机的硬件属性、以及抓取数据包的各项属性,如下图:
1.2 解析的地址,根据已抓取的数据包,将其进行解析,其中二层基于mac解析厂商、基于常用端口解析协议,如下图:
1.3 协议分层(Protocol Hierarchy),对抓取的数据包进行汇总,并且按照TCP/IP协议簇分层显示相关信息(L2、L3、L4等),如:不同层协议数据包数量、数据占比、传输速率等,如下图:
1.3.1 二层数据包(蓝色方框),目前以太网基本一统江湖,因此Ethernet占了所有Frame的100%。
1.3.2 三层数据包(浅绿色方框),此次抓包中包含2.5层的(我们权且这么称呼)ARP0.1%及IPv4的99.9%;
1.3.3 四层数据包(紫色方框),IPv4上层协议,本次抓包包含UDP、TCP、ICMP(62.1+37.3+0.5=99.9%)。以UDP为例,可以看到4层协议的上层应用,如无线会话协议、SSDP、以及登录的QQ以及实际的data数据。
通过查看协议分层,可以快速的了解网络中主要传输的数据,以及承载的应用。
1.4 会话(conversation),抓取到的会话,包括通信双方的单播、组播、广播等。会话信息包括二层Ethernet、三层IPv4/6、四层TCP/UDP,下面以三层IPv4举例说明:
1.4.1 会话双方地址,以A、B表示。
1.4.2 数据包数量。
1.4.3 字节数。
1.4.4 区分方向的传输数据量,可以通过对比方向,判断A、B的主要数据传递方向。
1.4.5 抓包显示的时间,可以通过点击⑩显示系统的真实时间,用来回溯和诊断真实时间点的网络状态;
1.4.6 持续时间,A与B之间某条ip数据保留的持续时间,又如保持长连接的TCP的持续时间会比较长。
1.4.7 区分方向的输出速率。
1.4.8 名称解析,将抓取到的地址通过厂商MAC、已知的IP地址,或者常用的4层端口号,解析至相应的名称。
1.4.9 仅显示过滤显示过滤后的数据包会话统计。
1.4.10 使用系统时间,显示Real Times。
1.4.11 展示的数据会话类型,可以根据自己的需求,展示相应的协议统计:
1.5 端点统计(endpoint),统计了对于抓包数据包中的端点的L2/3/4以及传输速率、数据包个数、数据包大小等相关信息。通过对端点的统计信息查看,可以快速定位数据量较大的终端信息、服务等,例如在抓包机器使用百度云下载,并抓取网卡的信息,TCP选项卡如下,
通过点击Tx Bytes可以看到,设计的主要端点为119.167.143.21短时间内流量为117M,可以判断为大流量传输。通过右键-Apply as filtered-selected,可以在抓包主界面进行过滤,通过查看,可以看到与百度云进行的SSL握手协议等,如下图
1.6 数据包长度(Length),对抓取到的数据包按照之前Edit定义的数据包范围进行统计,展示不同大小的数据包范围的占比,例如下图抓取的数据包62.83%还是1280-2559大小的,为正常现象,如果抓取的数据包存在过多的小包,就要去判断相应的网络故障了。这些我们在后面再进行模拟。
1.7 I/O Graphs,通过线形图、Bars、不同形状等展示吞吐、错误、指定地址和应用的相关信息等。在点击I/O Graphs时,会默认弹出所有数据包的线型图,X轴为时间精度,可以通过Interval来修改。点击左下角"+"新增一条,过滤百度云下载的数据和TCP丢包的统计,如下图:
1.7.1 I/O Graphs的图形展示;
1.7.2 X周的时间颗粒度,如果要观察更细致的时间周期的变化,可以修改为更短的周期;
1.7.3 新增规则的名称;
1.7.4 过滤规则,例如过滤百度云:ip addr == xx.xx.xx.xx && tcp.port == 443,过滤TCP ACK丢失信息: tcp.analysis.ack_lost_segment(过滤语法会在下一篇文章分享)
1.7.5 在I/O Graphs里展示时的颜色;
1.7.6 类型,例如默认所有数据包的流量,使用的线性来展示。Wireshark包含了丰富的展示方式,例如新增TCP ACK losh我们使用Bar的数据方块来展示。可用的style如下:
1.7.7 Y轴的数据单位,例如通过X轴时间+Y轴的数据包速率,计算出传输速度。
1.8 应用响应时间(Service Response Time),用于侦测不用应用的相应时间,例如做AAA认证时,Radius服务器的认证授权时间。
1.9 各种协议的统计信息。以HTTP为例,包含数据包数量,请求等统计数据,详细功能应用会在后续HTTP的分析中继续分享。
1.10 IPv4的统计信息,可以显示所有地址的统计信息,或者分别显示源目地址,通过点击Percent排行,可以快速定位占比最高的2个地址,其中地址1为本机地址,地址二位百度云下载的地址。真实场景可以通过抓取核心设备或者出口设备,来快速的定位和分析主要通讯的地址信息(如何在不同设备抓包后续会继续介绍)。
Wireshark的常用功能菜单就介绍到这里,通过以上几篇文章介绍我们可以进行基本的操作,后续我们会按照实际的案例来继续扩展相关的功能。从下一篇开始,我们一起学习数据包过滤的语法和相关规则,敬请期待。