如何跟踪分析数据经过中间设备后的变化以及这些变化给客户端与服务器带来的影响

作者:易隐者 发布于:2012-8-20 21:20 Monday 分类:网络分析

       中间设备会对经过它的数据报文进行修改、检测、丢弃等处理,这些操作对交互数据的客户端与服务器都会产生相应的影响,这些影响在客户端与服务器端可能会导致不同的外在表现。我们在实际分析定位疑难应用故障时,需要了解清楚中间设备对数据报文做了哪些处理以及这些处理动作对客户端与服务器产生了哪些影响。
       我们如何分析中间设备对数据报文的处理动作、报文进出中间设备的差异以及这些差异给客户端服务器带来的影响呢?一般情况下,我们可以按照下面的步骤来进行分析:

1,数据报文在中间设备的进口和出口同时抓包

      在数据报文进入中间设备前的位置以及数据报文被中间设备转发后的位置同时抓包。

2,将设备进出口的同一数据流关联起来

       如何将设备进出口的同一数据流关联起来?在中间设备未做NAT的情况下,我们一般根据五元组信息就可以直接关联了,此案例就是如此关联的;在做NAT的情况下,如果仅仅是源地址做了改变而源端口未改变的话,我们就可以利用源端口、目的地址、目的端口和协议类型来进行关联,如《某地矿局网页打开慢故障分析案例》就是利用四元组关联的;如果在做NAT时,数据流的源地址、源端口都变化了,我们还可以通过数据流的应用信息进行关联。
       具体到每个数据包的关联,则主要通过IP标识字段或数据包应用层数据进行关联。
       具体关联的原理请参见《疑难网络故障的分析方法和原理之关联分析法》一文。

3,根据数据交互情况,分别画出数据交互过程图

       在我们将中间设备进出口的同一数据流和具体数据包关联起来之后,我们就可以画出数据在中间设备前后的交互过程图示。
       这个交互过程,可以自己手动画出来,也可以利用工具自动生成,例如在wireshark中,我们可以使用“flow graph”生成数据交互视图,如下所示: 

点击查看原图


       在科来2010版本中,我们也可以利用“TCP会话”视图中的“时序图”功能,自动生成交互视图,如下所示: 

点击查看原图


        在分别生成了中间设备进出口的数据交互流图之后,我们就可以把他们关联起来一起做对比分析了。

4,通过设备进出口数据交互的图示的对比和具体数据包的关联,发现改动和影响

       通过设备进出口数据交互的图示的对比和具体数据包的关联,我们就可以查看出中间设备对数据报文的处理动作以及这些处理动作对客户端和服务器的具体影响了。下图为一个样例图: 

点击查看原图

标签: 关联分析 中间设备 数据包被更改


您对本文的评分:
当前平均分: 9.3(6 次打分)

版权所有:《蚂蚁网-多维人生,三实而立!》 => 《如何跟踪分析数据经过中间设备后的变化以及这些变化给客户端与服务器带来的影响
本文地址:http://www.vants.org/?post=93
除非注明,文章均为 《蚂蚁网-多维人生,三实而立!》 原创,欢迎转载!转载请注明本文地址,谢谢。

发表评论:

Powered by 易隐者 基于emlog 皖ICP备12002343号-1