Sniffer读书笔记
一.ACK过长
Expert:ack too long(180ms)
“ACK过长”这个问题是由于发送方没能在指定时内收到预期的回应而引起的。这个问题在比较慢的LAN区段或者WAN链接中经常出现。这里,我们会与一个流量受到限制的NovellNetWare服务器进行通讯,这里得到TCPACK回应就需要长一点时间。
二.窗口冻结
Exper:window Frozen
“窗口冻结”这条信息说明一个应用程序可能存在性能上的问题,图中我们模拟了向一个繁忙的服务器传输文件的过程。需要了角TCP通讯才能分析这个问题。当建立了TCP连接时,系统会通知连接的两端准备好缓冲容量。缓冲容量要妈决于窗口的大小。在进行传输时,缓冲容量会减小,直到应用程序将数据从缓冲器中取走为止。这样就会产生问题,国为如果这个容量太小的话就会降低系统性能。出现“窗口冻结”住处的一个非常常见的原因是接收方的主机可能不能跟上发送方主机舆数据的速度。当然还有其他原因,介这是一个最常见的原因。
三.WINS没有响应
Expert:WIND No Response
当你的主机找不到WINS服务器或者设置的WINS服务器有错误时,经常会出现这条信息。通常情况下,可以在DHCP中找到WINS服务器,但是主机仍然会出现错误,这时是因为网络上“硬编码”的旧WINS服务器超出了DHCP的设定值。
四.路径有效性改变
Expert:Route Validity Changed
LAN上的路由选择问题是一个很棘手的问题。RIP数据包可以用SNIFFERPRO来分析,如果你的网络上有使用RIP的设备,高级系统就会经常发现这些设备的问题。最好的解决问题的方法是取消接口上的RIP,但是如果需要它们的话,就要小心不要在区段中形成环路,这样可能会影响路由选择表单。图中,SNIFFER PRO高级系统发现了一个路由变化的有效性问题。这个问题可能是因为表单中不正确或者无意义的路由引起的,也可能是由于你的LAN区段定期改变路由而引起的。如果可能的话,还是应该不异任何代价消除这种情况。对于一个网络,如果路由选择协议被用于双重归属的主机上,而且路由器使用的是一样的协议(RIP),那么就经常会出现这种错误。如果出现了,路由器就应该改变路由(如果进行了这样的设置的话)。
当SNIFFER捕获到冲突时的数据,以十六进制看时,全部是55s和AAs(在高速以太网中全部是D0s和43s),这种类型与发送JAM信号的冲突类型有关。
在使用以太网时,最小的帧是64个字节,最大的帧是1518个字节。而1500个字节是帧的最大数据负载量。
五.以太网时隙(slottime)
1.为什么要设置时隙?
(1)在以太网规则中,若发生冲突,则必须让网上每个主机都检测到。但信号传播到整个介质需要一定的时间。
(2)考虑极限情况,主机发送的帧很小,两冲突主机相距很远。在A发送的帧传播到B的前一刻,B开始发送帧。这样,当A的帧到达B时,B检测到了冲突,于是发送阻塞信号。
(3)但B的阻塞信号还没有传输到A,A的帧已发送完毕,那么A就检测不到冲突,而误认为已发送成功,不再发送。
(4)由于信号的传播时延,检测到冲突需要一定的时间,所以发送的帧必须有一定的长度。这就是时隙需要解决的问题。
2.下面我们来估计在最坏情况下,检测到冲突所需的时间
(1)在上图中,A和B是网上相距最远的两个主机,设信号在A和B之间传播时延为τ,假定A在t时
刻开始发送一帧,则这个帧在t+τ时刻到达B,若B在t+τ-ε时刻开始发送一帧,则B在t+τ时就
会检测到冲突,并发出阻塞信号。
(2)阻塞信号将在t+2τ时到达A。所以A必须在t+2τ时仍在发送才可以检测到冲突,所以一帧的
发送时间必须大于2τ。
(3)按照标准,10Mbps以太网采用中继器时,连接最大长度为2500米,最多经过4个中继器(或HUB),因
此规定对于10Mbps以太网规定一帧的最小发送时间必须为51.2μs。
(3)51.2μs也就是512位数据在10Mbps以太网速率下的传播时间,常称为512位时。这个时间定
义为以太网时隙。512位时=64字节,因此以太网帧的最小长度为512位时=64字节。
3.冲突发生的时段
(1)冲突只能发生在主机发送帧的最初一段时间,即512位时=64字节的时段。
(2)当网上所有主机都检测到冲突后,就会停发帧。
(3)512位时是主机捕获信道的时间,如果某主机发送一个帧的512位时,而没有发生冲突,以后
也就不会再发生冲突了,称此为主机捕获了信道。
4.中继器与网桥和冲突的关系
(1)中继器和冲突的关系:
中继器不能隔离冲突,所以把中继器相连的网段作为一个冲突域。
冲突退避算法限制了每个主机的退避时间从1个时隙到最多210=1024个时隙,因此,
由中继器连接的多段以太网中,主机数一般不超过1024个。
(2)网桥和冲突的关系:
网桥能隔离冲突,因此,在主机数超过1024个时,可以通过网桥连接。
5.100Mbps和1000Mbps以太网的时隙
(1)100Mbps以太网的时隙:
100Mbps以太网的时隙仍为512位时,以太网规定一帧的最小发送时间必须为5.12μs。
(2)1000Mbps以太网的时隙
1000Mbps以太网的时隙增至512字节,即4096位时。
打开工作站的命令(或DOS)窗口,运行“netstat �Cna”命令。这时会看到“通过端口打开连接”的服务正在使用,显示为:UDP134.141.102.104:138 *.*。看到*.*符号,证明UDP是无连接的,因为它没有通过外部地址来连接,而且没有处于监听或者已建立的状态。
六.本地冲突。
发生了过量的本地冲突时,SCP专家必须查看与SNIFFER系统相连的LAN利用率是否过高。严重的本地冲突通常说明有太多的节点共享同一种媒体和/或不正确的电缆和拓朴结构设计。
远程冲突。如果发生过多远程冲突,SCP专家必须查看是否有可能远程区段达到了饱和,或者在与远程区段之间的硬件设备不能正常工作。中间连接的设备可能是HUB或者转发器。
晚冲突。发生在一个数据包的前64个字节。发生了过多的晚冲突时,SCP专家必须查看来源NIC,检查区段上的NIC的互操作性,或者其他与误操作有关的问题,比如定时不准。在网络上使用不同厂家的NIC是不明智的选择,因为每种NIC都是建立在不同结构基础上的,如果不区配,可能导致严重的问题。晚冲突还可能是电缆连接不正确,或者没有按照距离的规定连接等问题。
七.一些常见的错误:
1.帧过长(jabber)。指的是帧超出限定长度,而且有CRC错误。如果网络上有一种类型的长数据报(超出限定长度),那么说明可能出现了过长的帧,这可能是NIC或者其他硬件设备出了问题。
长帧和短帧。如果出现了过多的长帧和短帧,SCP专家必须寻找网络上是否有不能工作的NIC或者收发设备,从而引起了NIC间的回路出现问题。
CRC。也称校验和。如果源节点和SNIFFER计算的NIC或者驱动程序通常会导致CRC校准错误。可用SNIFFER分析软件查找与有问题的网卡有关的MAC地址,升级驱动程序或者更换驱动程序。每个区段中每一百万个字节只能出现一个CRC错误。
2.网络压力测试
通过选择“工具”,“数据包产生器”,可以使用工具来进行压力测试。使用这项功能要小心,因为如果选择了过大的帧,会使电脑不能继续运行,必须重启。要注意只能将数据包的大小设定在64到1518个字节之间。这些限制都是针对以太网帧的。开始发送帧之后,在数据包产生器主窗口中的详细资料中可以看到所有发送的数据、数据包的大小,以及发送了多少次等。
最后,要记住如果没有做好规划,在停产时间千万不要在生产用网络上生成流量,或者如果没有得到上级允许,也不生成流量。
3.STP生成树与广播风暴
最让网络分析人员困扰的一个问题就是生成树回路。它会严重影响网络性能,而且还很难进行诊断和修改。通常网络核心交换机如果设置有问题,就会产生这种错误。我们曾经看到这种情况。一位和我们一起工作的技术人员在CISCO CATALYST 5000系列交换机中输入了错误的命令。网络性能立刻严重下降,几乎所有的服务器都瘫痪了。
如果生成树功能关闭,而且有人在网络中放置了电缆来连接两个设备,并生成了回路,也会发生这种情况。当然,这也是因为关闭了生成树功能,才造成了出现问题的机会。
八.分析网络问题
CSMA/CD冲突后工作站传输一个32位的堵塞信号,出现16次冲突后,接口会取消这个以太网帧。在一个节点完成一次成功传送后,在再次传输之前,要等一段时间。这种帧间隔(IFG)可以避免一个节点垄断了整个LAN区段。等待时间取决于区段传输速度。10Mbps,要等9.6微秒;100Mbps,节点要等0.96微秒;1000Mbps,则只需等0.096微秒。光速每秒300,000,000米(真空),电缆中的传播速度为231,000,000米每秒。在10,000,000bps时,一个二位制位占用0.1微秒。10Base5最大电缆长度为500米。如一个二进制数位占用0.1微秒,那么以每秒231,000,000米的速度就会通过23.1米。1秒=1000毫秒 1毫秒=1000 微秒 1微秒 = 1000 纳秒冲突检测到之后,节点会继续传一个4字节(32位)的堵塞信号,根据换算,这个帧会占据的长度是739米。
冲突域
我们计算了一个10Mbps网络在0.1毫秒的位时间。如果最小的帧有64字节,即512位,0.1毫秒乘512位等于51.2毫秒。51.2毫秒乘23.1米=1182.72米,这是总的10Mbps冲突域长度。
10Base2和10Base5存在物理介质的限限制,如是10BaseT,全双工模式就不存在CSMA/CD问题了,没有电缆冲突长度一说了。我们只需要考虑信号的串扰和衰减。这一段非原文,参杂我个人想法,不对的地方请指正:)
5 minute input rate 3000 bits/sec, 2packets/sec
5minute output rate 7000 bits/sec, 8 packets/sec
133920750 packets input, 3998985796 bytes, 0 no buffer
Received 103049 broadcasts (0 multicast)
0runts, 0 giants, 0 throttles
0input errors, 0 CRC, 0 frame, 0 overrun, 0 ignored
0watchdog, 497 multicast, 0 pause input
0input packets with dribble condition detected
252349148 packets output, 3401500275 bytes, 0underruns
0output errors, 0 collisions, 2 interface resets
上面是在CISCO 2950交换机上“sh inte f0/11”命令的部分结果。
假设总输入/输出包总数是424,948,488,冲突有25,743,660个
(25,743,660个冲突/424,948,488个数据包)*100%=6.06%
6.06%这个值是不可接受的。CISCO建议冲突总数与输出数据包比值不应大于0.1%。
晚冲突
冲突通常发生在前64个字节,或者说前512位中。如果冲突发生在512位时间之后,就会被当作是非法或者叫晚冲突。产生晚冲突的原因
1,除网络设计不正确外,一个信号可能是合理的传输信号,而另一个只是噪音或是干扰,这有时称为“影子冲突”。
2,晚冲突最难判断的一个原因是双工设置的不区配。一端是半双工,另一端是全双工模式,全双工模式中,冲突检测是关闭的,因此会引起问题。当半双工端检测到冲突,发送堵塞信号后停止传输,接收缓冲器的信息当作无用信息。全双工设备不会知道对方采取的行动,仍以为帧发送成功了。恢复一个错误可能需要很长的时间,因此,会导致网速变得非常慢。
片断错误
收到数据包有14个字节,而且没有检测到冲突。这个问题可能是由于间断性的电缆连接、错误的网卡,或者软件驱动设备停止工作引起的。SCP专家要确认是否是某个工作站,相继出现这错误,都来自同一地址。或者是随机出现是,就应怀疑是电缆装置,或HUB、交换机有问题。
Jabber错误
校验和CRC丢失,并且数据帧中出现大量的同一字符,如十六进制的55,等于二进制的01010101,是交替的0和1组成的。如是十六进制的FF等于二进制11111111。接收方是全1,这可能是硬件错误引起的。一般应怀疑来源的设备(HUB或交换机),第一可疑的对象应是源工作站的网卡。
九.为什么网速慢?
1,SCP应建立网络性能基准,这个基准可与当前网络性能加以比较。
2,网速慢的网络可能是一些错误导致的,如冲突、CRC错误、环重置、过多的广播和应用程序错误
网卡的震动故障
1,网络上的震动可能是网卡的问题引起的
2,过长的帧中包含有随机的垃圾信息
3,过长的帧是典型的硬件错误
4,片断是低于64个字节的数据包,含有CRC错误
小型数据包的故障检修
1,小数据包是指低于64个字节的CRC合理的数据包
2,小数据包又叫做runt
3,Runt是由网卡驱动程序软件的问题引起的
4,如接口上的传输缓冲器不能在指定时间提供服务,并且超负荷工作,可能产生runt
问:怎样才能确定两个设备之间的通讯是否是间歇性地速度变慢呢?
答:用
ping -t (other device IP address) >C:\pingfile.txt
从产生的文件中可查到,可以观察到每个数据包的时间域。
以上是一点sniff的随记,希望对大家有所帮助。
http://shop103201524.taobao.com/?spm=0.0.0.0.edccNm