第一行是表示客户的SYN,第二行是服务器的 SYN/ACK。第三行是从同一个客户的同一个端口来的另一个SYN,但它的起始序列号是13,比第一行的高。第四行是服务器发送一个RST,第五行发送另一个RST,第六行是客户发送的RST。从第7行开始又重复这个情况。为什么服务器要在一行内给客户发送两个RST(第五行和第六行)?可能是由于设有打印出来的某些数据段引起,因为遗憾的是Tcpdump跟踪程序仅包含有SYN、FIN或RST标志的报文段。然而,这个客户显然违规了,在同一个端口如此高速率地发送SYN,并且从一个SYN到下一个的序列号增加很小。
忽略重传的SYN后的计算结果我们需要忽略重传的SYN,重新分析客户SYN的到达间隔时间。因为从上面我们可以看出,一个违反常规的客户就可以将数据拉出显著的峰值来。正如我们在本节的前面所提到的,忽略重传可以减少约10%的SYN。同样,通过考察有效的SYN,我们可以来分析连接到达服务器的速率。所有到达的SYN均影响 TCP/IP协议的处理(因为每一个SYN要经过设备驱动程序、IP输入,然后才是TCP输入),连接的到达速率影响 HTTP服务器(服务器程序为每一个连接处理新的客户请求)。
在忽略重传SYN后,平均值由538ms增加至600ms,中间值由222ms增加至251ms。我们已给出每秒到达的SYN的分布图。峰值也像中表示的那样,不过要小得多。一天中到达的SYN数最大的3秒内分别为有19、21、33个SYN到达。这就给我们一个范围,从每秒4个(由到达时间间隔中值251ms得来)到33个SYN,约为8倍的关系。这就意味着,当我们设计一个Web服务器时,应使它能适应的峰值在这种平均值之上。我们将看到这种入连接请求队列中的峰值到达速率的作用。 |