wireshark学习——3.图形显示

我们之前讲解的各种实用的表格虽然能够有效辅助我们的分析,但是如果想要更好的了解我们所分析的网络情况,则需要依靠Wireshark的图形功能来直观地展示出来。而我们这次课主要讲解Wireshark常用的一些图形界面。

首先介绍一下IO Graphs。这个窗口可以让我们对网络上的数据吞吐情况进行绘图。这样就可以很容易地发现数据吞吐的峰值,找出不同协议中的性能瓶颈,并且还可以用来比较实时的数据流。

这里我们打开Lab3-1.pcap这个实验文件,然后选中任意一个TCP数据包,在菜单栏选择“Statistics”->“IO Graphs”。这是一台电脑从互联网下载文件时的例子:

Alt text

这个界面主要分为三大部分。其中最大的矩形区域显示的是数据包的情况,其中横轴表示时间,纵轴表示数据包的数量。左下角的区域用于设置Graphs,右下角区域则可以设置显示数据包的X轴以及Y轴的信息。

在Graphs框中:

Graph 1~5:表示开启1~5图表,默认开启的是Graph 1。
Color:图表的颜色,这个颜色是不可以修改的。
Filter:筛选器。
Style:图表的样式。默认显示的是折线式。
在X Axis框中:

Tick interval:设置X轴的每格代表的时间,单位是秒。
Pixels per tick:设置X轴每格占用的像素。
在Y Axis框中:

Unit:表示Y轴的单位。
Scale:表示Y轴单位的刻度。
Smooth:表示图表的平滑度。
这里简单讲解一下筛选器。其实这个筛选器的用法和我们之间所讲的Wireshark主界面的筛选器的用法基本一致。比如这里我们想比较数据帧长度小于100以及长度大于1000的情况,那么就可以设置两个筛选器,并且为了方便观察,再设置不同的图标样式,再开启图形显示即可:

Alt text

当然我们在实际的分析过程中,可以设置不同的筛选器,来便于我们的分析。现在我们先取消筛选器,查看一下原始图表。可以发现,在IO Graphs所显示的下载量中,每个周期的数据包的数量基本维持在500个左右,并且在最后逐渐减少。

接下来我们可以将它与一个较慢的下载过程做一个对比。再次开启一个Wireshark程序,并载入Lab3-2.pcap实验文件。打开这个下载过程的IO Graphs,则可以看到它与刚才的图形有很大的不同:

Alt text

这个下载过程很不稳定,每秒传输的数据包在0~100的范围内,出现了很大的波动。甚至还出现了接近于每秒0个的情况。如果将两个捕获文件的IO Graphs窗口并排放置,更能够清楚地看到二者的差异。

由于这第二个捕获文件出现了比较严重的问题,那么我们在实际的分析中,如果遇到这样的情况,完全可以使用IO Graphs窗口来辅助我们分析。而Wireshark可以获取到许多种类的TCP网络错误,比如常见的丢包以及网络阻塞等。我们可以构建所有的TCP标志位包或单个标志包。比如可以使用筛选器条件tcp.analysis.flags来显示丢失、重发等异常情况相关的TCP数据包。那么对于Lab3-2.pcap实验文件,我们打开IO Graphs窗口后,可以在Graph 2的筛选器中输入:

tcp.analysis.flags && !tcp.analysis.window_update
上述筛选条件可以显示TCP有问题的数据包,但是不包括窗口的更新数据包。再将显示方式设置为FBar,单击Graph 2按钮:

Alt text

图中的两条红色实心矩形表示与筛选器相匹配的所有TCP数据,而黑色线条表示的是捕获文件的整体情况。

或者我们也可以构建单个的TCP标志位情况,这样就可以更加具体地分析。我们可以将Graph 1、2和3的筛选器分别修改为:

tcp.analysis.duplicate_ack
tcp.analysis.lost_segment
tcp.analysis.retransmission
将显示样式分别修改为Impulse、Dot以及FBar,为了便于观察,可以将Pixels per tick的值设置为10。于是可以得到如下结果:

Alt text

上图中以3种不同的颜色和样式显示了3类出问题的TCP数据包。其中的黑色线条表示所有TCP重发的确认包,红色点表示TCP丢失的数据包,绿色的实心矩形表示TCP的重发包。

步骤3:认识Round Trip Time Graph
Wireshark的另一个绘图功能就是对所捕获的文件进行往返时间的绘图。往返时间(round-trip time, RTT)是指一个数据包从发出到确认被成功接收所需要的时间。或者说,往返时间就是数据包抵达目的地的时间,加上收到对方的确认信息的时间之和。通过对这个时间的分析,可以找到通信中的瓶颈,确定是否存在延迟。

这里我们依旧分析Lab3-1.pcap这个实验文件。选择第二个数据包,之后在菜单栏中选择“Statistics”->“TCP Stram Graph”->“Round Trip Time Graph”,来查看往返时间图:

Alt text

上图中的每个点代表的是一个数据包的往返时间。在默认情况下,这些值按照序号进行排序。单击图中任意一个点,就可以在Packet List面板中看到相应的数据包。

分析上图可知,这个下载过程的往返时间图中的时间点大多在0.05秒以下,有一些较慢的点位于0.10~0.25秒之间。可以发现少量的值是超出了可以接受的范围,但是大多数的往返时间还是可以的,因此对于这个下载过程来说,整体是可以被接受的。

步骤4:认识Flow Graph
数据流图功能可以将连接可视化,并且将一段时间中的数据流显示出来。数据流图一般以列的方式将主机之间的连接显示出来,并将数据组织到一起,便于更加直观地解读。

这里我们打开Lab3-3.pcap这个实验文件,选择菜单栏的“Statistics”->“Flow Graph”,就可以打开数据流图窗口:

Alt text

从上图中我们可以更好地看到整个连接的情况,比如TCP的三次握手,数据传输以及HTTP协议等的信息都一目了然。

展开阅读全文

没有更多推荐了,返回首页