关于服务器端发送FIN报文之前的数秒等待时间行为的分析
作者:易隐者 发布于:2012-8-21 22:40 Tuesday 分类:网络分析
就这个问题,我来简单分析一下基于TCP的应用,正常释放TCP连接的行为:
在实际环境下,我们可以抓到各种FIN正常释放连接的报文,大部分交互完毕应用数据之后立即发送FIN报文释放连接,如下图所示:
有些交互完毕应用数据后,服务器端立即发送FIN报文,客户端在确认FIN报文之后,发送RST报文,释放TCP连接,这样做主要视为了提高交互的效率,省去了服务器确认客户端FIN报文和客户端等等服务器端确认的过程和时间,如下图所示:
有些则如上面兄弟遇到的那个情况,双方在建立TCP连接后,进行应用数据的交互,应用数据交互完毕之后,服务器端并不是立即发送FIN报文,正常释放该TCP连接,而是等待一段时间,看客户端是否有新的应用数据需要交互,如果有,则不需要再建立一个新的TCP连接,直接使用已有连接进行交互,如果超出时间客户端无应用数据交互,则服务器端主动发送FIN报文,正常释放该TCP连接。
这个过程,是由应用程序控制的,跟操作系统无关。另这种机制一般情况下能够提高应用交互的效率,这个服务器端等待客户端是否有应用数据交互的时间不能算作是应用响应时间。
标签: TCP RST 延时 响应时间 应用响应时间 FIN 正常释放 TCP行为 长连接 短连接
带有应用层字段的TCP RST报文
作者:易隐者 发布于:2012-8-21 11:09 Tuesday 分类:网络分析
今天在为一个朋友准备培训材料的时候,在某个客户那边捕获的数据包文件中,无意中发现RST报文中竟然带有应用层字段,如下图所示:
这是一个SSH的TCP连接,一般而言,对端在收到TCP RST报文后,便会立即释放该TCP连接,这个是传输层控制的,即使RST报文中带有应用层字段,传输层也不会将这个应用层字段提交给应用进程。
如此来看,这个TCP RST报文带有应用层字段“ Reset cause: Go away, we're not home ”,似乎也没什么意义。
如何跟踪分析数据经过中间设备后的变化以及这些变化给客户端与服务器带来的影响
作者:易隐者 发布于:2012-8-20 21:20 Monday 分类:网络分析
中间设备会对经过它的数据报文进行修改、检测、丢弃等处理,这些操作对交互数据的客户端与服务器都会产生相应的影响,这些影响在客户端与服务器端可能会导致不同的外在表现。我们在实际分析定位疑难应用故障时,需要了解清楚中间设备对数据报文做了哪些处理以及这些处理动作对客户端与服务器产生了哪些影响。
我们如何分析中间设备对数据报文的处理动作、报文进出中间设备的差异以及这些差异给客户端服务器带来的影响呢?一般情况下,我们可以按照下面的步骤来进行分析:
1,数据报文在中间设备的进口和出口同时抓包
在数据报文进入中间设备前的位置以及数据报文被中间设备转发后的位置同时抓包。
2,将设备进出口的同一数据流关联起来
如何将设备进出口的同一数据流关联起来?在中间设备未做NAT的情况下,我们一般根据五元组信息就可以直接关联了,此案例就是如此关联的;在做NAT的情况下,如果仅仅是源地址做了改变而源端口未改变的话,我们就可以利用源端口、目的地址、目的端口和协议类型来进行关联,如《某地矿局网页打开慢故障分析案例》就是利用四元组关联的;如果在做NAT时,数据流的源地址、源端口都变化了,我们还可以通过数据流的应用信息进行关联。
具体到每个数据包的关联,则主要通过IP标识字段或数据包应用层数据进行关联。
具体关联的原理请参见《疑难网络故障的分析方法和原理之关联分析法》一文。
3,根据数据交互情况,分别画出数据交互过程图
在我们将中间设备进出口的同一数据流和具体数据包关联起来之后,我们就可以画出数据在中间设备前后的交互过程图示。
这个交互过程,可以自己手动画出来,也可以利用工具自动生成,例如在wireshark中,我们可以使用“flow graph”生成数据交互视图,如下所示:
在科来2010版本中,我们也可以利用“TCP会话”视图中的“时序图”功能,自动生成交互视图,如下所示:
在分别生成了中间设备进出口的数据交互流图之后,我们就可以把他们关联起来一起做对比分析了。
4,通过设备进出口数据交互的图示的对比和具体数据包的关联,发现改动和影响
通过设备进出口数据交互的图示的对比和具体数据包的关联,我们就可以查看出中间设备对数据报文的处理动作以及这些处理动作对客户端和服务器的具体影响了。下图为一个样例图:
某学院专网网站打开慢故障分析案例
作者:易隐者 发布于:2012-8-19 16:58 Sunday 分类:网络分析
故障环境
某学院的网络拓扑示意图如下所示:
说明:
核心交换机上划分了多个VLAN,防毒墙、防火墙均工作在透明模式下,路由器工作在纯路由模式下。
故障现象
用户在内网打开专网的网页速度很慢,经常需要5-20秒左右才可以完全打开,有时直接就打不开。
故障分析
1 故障分析说明
首先通过故障现象,我们可以确认该故障应该属于一个较为高级的故障,这种故障一般都与网络中的延时或者丢包有关,难以通过一些基本的测试或策略的检查来定位故障,我们需要进行一些深度的分析。针对此类延时或丢包故障,我们需要做的就是定位出产生延时或丢包的位置。
标签: 交换机 TCP 网络分析工具 网络分析 数据包分析 对比分析 get 网络慢
访问搜狐163时主页变为2008年某日主页面故障分析案例
作者:易隐者 发布于:2012-8-13 22:26 Monday 分类:网络分析
1 故障环境
故障环境的拓扑结构示意图如下:
防火墙做NAT通过电信接入线路访问互联网,核心交换机上接入的设备和线路比较多,内部网络规模比较大。
2 故障现象
故障现象主要体现在以下几个方面:
1,用户在内网访问搜狐和163主页时,页面变为2008年某日的主页面,所有连接均为2008年的新闻连接,如下图所示:
其他网站页面访问均正常。
2,使用笔记本配置为公网地址直接访问搜狐和163正常;
3,在防火墙的一个空闲端口设置地址,通过防火墙NAT地址转换后访问搜狐163主页正常;
此故障已经持续了数周。
日历
最新日志
链接
分类
最新碎语
- 如果一个人想要做一件真正忠于自己内心的事情,那么往往只能一个人独自去做"——理查德·耶茨
2019-06-25 21:34
- 日后我们知道,真正的人生道路是由内心决定的。不论我们的道路看上去如此曲折、如此荒谬地背离我们的愿望,它终归还是把我们引到我们看不见的目的地。(茨威格《昨日世界》)
2019-03-16 21:27
- 如果你渴望得到某样东西,你得让它自由,如果它回到你身边,它就是属于你的,如果它不会回来,你就从未拥有过它。——大仲马《基督山伯爵》
2018-10-09 22:07
- 人生有两大悲剧:一个是没有得到你心爱的东西;另一个是得到了你心爱的东西。人生有两大快乐:一个是没有得到你心爱的东西,于是可以寻求和创造;另一个是得到了你心爱的东西,于是可以去品味和体验。——弗洛伊德
2018-09-25 18:06
- 一个人越有思想,发现有个性的人就越多。普通人是看不出人与人之间的差别的——布莱兹·帕斯卡尔
2018-08-30 18:44
存档
- 2020年11月(2)
- 2018年1月(1)
- 2017年12月(1)
- 2017年11月(6)
- 2017年6月(1)
- 2017年5月(1)
- 2017年4月(1)
- 2017年3月(1)
- 2016年11月(1)
- 2016年4月(1)
- 2015年7月(2)
- 2015年6月(1)
- 2015年5月(5)
- 2014年12月(1)
- 2014年11月(1)
- 2014年10月(1)
- 2014年8月(1)
- 2014年7月(1)
- 2014年6月(1)
- 2014年5月(1)
- 2014年4月(3)
- 2014年2月(2)
- 2014年1月(2)
- 2013年12月(1)
- 2013年11月(1)
- 2013年10月(2)
- 2013年9月(1)
- 2013年8月(1)
- 2013年7月(3)
- 2013年6月(2)
- 2013年5月(1)
- 2013年4月(3)
- 2013年3月(1)
- 2013年2月(2)
- 2013年1月(2)
- 2012年12月(11)
- 2012年11月(12)
- 2012年10月(12)
- 2012年9月(26)
- 2012年8月(29)
- 2012年7月(18)
- 2012年6月(2)
- 2012年5月(25)
- 2012年4月(16)
- 2012年3月(13)
- 2012年2月(6)