1. 路由環(huán)導(dǎo)致網(wǎng)絡(luò)丟包
這是一個(gè)實(shí)際發(fā)生的分析網(wǎng)絡(luò)大量丟包原因的案例,用戶的網(wǎng)絡(luò)丟包現(xiàn)象很嚴(yán)重,給用戶造成了很大的困擾,我們?cè)噲D通過(guò)流量分析的手段來(lái)分析造成網(wǎng)絡(luò)丟包的原因。
1.1. 網(wǎng)絡(luò)環(huán)境
用戶的網(wǎng)絡(luò)是一個(gè)覆蓋全省的網(wǎng)絡(luò)環(huán)境,包括省中心局域網(wǎng)和跨地市的廣域網(wǎng)構(gòu)成,并同全國(guó)的廣域網(wǎng)絡(luò)相連。
1.2. 網(wǎng)絡(luò)異?,F(xiàn)象描述
該網(wǎng)絡(luò)丟包現(xiàn)象嚴(yán)重,如果通過(guò)省局域網(wǎng)向地市網(wǎng)絡(luò)或全國(guó)網(wǎng)絡(luò)發(fā)包,每發(fā)出 10 個(gè) PING 包將只能收到 7 個(gè) REPLY 包,丟包率在 30% 左右,這樣,網(wǎng)絡(luò)丟報(bào)對(duì)一些網(wǎng)絡(luò)應(yīng)用運(yùn)行產(chǎn)生很大的影響,應(yīng)用運(yùn)行緩慢,甚至有些應(yīng)用無(wú)法正常運(yùn)行。
在此期間,網(wǎng)絡(luò)設(shè)備的運(yùn)行沒(méi)有發(fā)現(xiàn)異常,局域網(wǎng)和廣域網(wǎng)的物理鏈路也未發(fā)現(xiàn)異常。
1.3. 分析手段
造成網(wǎng)絡(luò)丟包可能的原因很多,包括鏈路層原因和網(wǎng)絡(luò)層問(wèn)題,而網(wǎng)絡(luò)擁塞也是造成網(wǎng)絡(luò)丟包非??赡艿脑?。為了分析是否是由于網(wǎng)絡(luò)擁塞引起的網(wǎng)絡(luò)丟包,我們采用流量分析的手段進(jìn)行分析定位。
我們對(duì)省局域網(wǎng)交換機(jī)到二級(jí)網(wǎng)路由器鏈路的網(wǎng)絡(luò)流量進(jìn)行了監(jiān)控,其中二級(jí)網(wǎng)路由器的局域網(wǎng)絡(luò)接口為10M,我們?cè)诰钟蚓W(wǎng)交換機(jī)上設(shè)置鏡像口(SPANPORT),將該鏈路流量鏡像到一個(gè)百兆網(wǎng)絡(luò)接口上,并用Sniffer協(xié)議分析儀接入該鏡像口,監(jiān)控分析該鏈路的網(wǎng)絡(luò)流量來(lái)確定是否存在流量異常現(xiàn)象。
1.4. 網(wǎng)絡(luò)流量分析過(guò)程
1. 網(wǎng)絡(luò)總體流量監(jiān)控
我們首先通過(guò)Sniffer Pro的History Samples(歷史抽樣)功能監(jiān)控該鏡像鏈路上的網(wǎng)絡(luò)利用率狀況,我們得到如下結(jié)果:
該鏈路到利用率情況
該鏈路每秒鐘實(shí)際傳輸數(shù)字
從以上的監(jiān)控結(jié)果中我們可以看到,在大約每 40 秒的周期內(nèi),該鏈路中的網(wǎng)絡(luò)流量會(huì)出現(xiàn)15秒的峰值,而且非常規(guī)律,峰值流量大約為20Mb/s,考慮到路由器同交換機(jī)的接口為 10Mb/s (全雙工工作時(shí)為 20Mb/s ),則我們看到這時(shí)的網(wǎng)絡(luò)利用率為100%!
通過(guò) Sniffer 對(duì)該鏈路流量進(jìn)行監(jiān)控分析,我們很直觀的可以看到該鏈路出現(xiàn)周期性的網(wǎng)絡(luò)擁塞,而這個(gè)周期和網(wǎng)絡(luò)的丟包時(shí)間規(guī)律非常吻合,我們可以非??隙ǖ恼J(rèn)定,這種流量的異常峰值是導(dǎo)致網(wǎng)絡(luò)中大量的丟包的重要原因。
2. 找出產(chǎn)生網(wǎng)絡(luò)流量的主機(jī)
當(dāng)網(wǎng)絡(luò)出現(xiàn)擁塞時(shí),我們需要對(duì)造成擁塞的原因進(jìn)行分析,一般首先我們先分析產(chǎn)生流量的主機(jī),我們利用 Sniffer 的 Host Table 功能,將該網(wǎng)絡(luò)所有計(jì)算機(jī)產(chǎn)生的網(wǎng)絡(luò)流量按照發(fā)出數(shù)據(jù)包的包數(shù)多少進(jìn)行排序。
Host Table分析每臺(tái)主機(jī)到流量
從中我們看到, IP 地址為 10.22.0.25 的主機(jī)發(fā)出數(shù)據(jù)包最多,遠(yuǎn) 3. 分析這臺(tái)主機(jī)的網(wǎng)絡(luò)流量
確定該主機(jī)大量發(fā)送流量是造成網(wǎng)絡(luò)擁塞的主要原因后,我們需要進(jìn)一步對(duì)該主機(jī)的流量進(jìn)行分析,也就是對(duì)他在網(wǎng)絡(luò)中正在做什么進(jìn)行分析,可以稱為對(duì)他的網(wǎng)絡(luò)行為進(jìn)行分析。
首先我們分析該主機(jī)的網(wǎng)絡(luò)流量流向,也就是分析它在向誰(shuí)發(fā)包,我們利用Sniffer 的 Matrix 功能來(lái)監(jiān)控。
主機(jī)的會(huì)話
通過(guò)Sniffer的Matrix,我們發(fā)現(xiàn)IP地址為10.22.0.25的主機(jī)發(fā)出的數(shù)據(jù)包很分散,我們調(diào)查了一下,發(fā)現(xiàn)IP地址為10.22.0.25的主機(jī)為該網(wǎng)絡(luò)的網(wǎng)絡(luò)管理系統(tǒng)主機(jī),而它發(fā)包的對(duì)象是該網(wǎng)絡(luò)中地市級(jí)路由器的IP地址,也就是說(shuō)網(wǎng)絡(luò)的網(wǎng)管主機(jī)向地市路由器發(fā)出大量的網(wǎng)絡(luò)包,導(dǎo)致網(wǎng)絡(luò)流量異常并導(dǎo)致網(wǎng)絡(luò)大量丟包,使網(wǎng)絡(luò)處于不穩(wěn)定狀態(tài)。
在發(fā)現(xiàn)這個(gè)問(wèn)題后,我們將該網(wǎng)管主機(jī)的網(wǎng)絡(luò)連接解除,發(fā)現(xiàn)網(wǎng)絡(luò)馬上恢復(fù)到了正常狀態(tài),不在有丟包現(xiàn)象發(fā)生,看起來(lái)這個(gè)網(wǎng)絡(luò)的問(wèn)題完全是由這臺(tái)網(wǎng)管主機(jī)引起的一樣,但這種現(xiàn)象非常難以理解,為什么網(wǎng)管主機(jī)會(huì)造成網(wǎng)絡(luò)問(wèn)題呢。
我們利用Sniffer的Decode功能將捕獲到的網(wǎng)絡(luò)流量解碼,來(lái)分析網(wǎng)管主機(jī)發(fā)出的數(shù)據(jù)包的內(nèi)容,看看到底它發(fā)出了什么樣的數(shù)據(jù)包,從而進(jìn)行進(jìn)一步的網(wǎng)絡(luò)行為分析。
解碼分析其發(fā)送到網(wǎng)絡(luò)流量
我們通過(guò)Sniffer的Decode發(fā)現(xiàn)這臺(tái)網(wǎng)絡(luò)主機(jī)向網(wǎng)絡(luò)中地市路由器發(fā)送大量的ICMP Echo數(shù)據(jù)包,也就是Ping包,我們對(duì)其向10.22.127.246發(fā)送的ICMP Echo包進(jìn)行分析,發(fā)現(xiàn)了奇怪的現(xiàn)象。
我們對(duì)我們捕獲的由 10.22.0.25 向 10.22.127.246 發(fā)送的 ICMP Echo 包其中相鄰的數(shù)據(jù)包進(jìn)行解碼分析,其發(fā)出的第739個(gè)數(shù)據(jù)包,其發(fā)出的第740個(gè)數(shù)據(jù)包,我們發(fā)現(xiàn)這兩個(gè)包的IP Identification是一樣的,都是 15633 ,每個(gè) IP 包都會(huì)有一個(gè)特定的 Identification 來(lái)標(biāo)志其性,這說(shuō)明我們捕獲到的這兩個(gè)數(shù)據(jù)包其實(shí)是同一個(gè)IP包。
解碼分析
而捕獲到的這個(gè)數(shù)據(jù)包的Time to live也就是TTL值一個(gè)為251,另一個(gè)為250,TTL為IP包的生存時(shí)間,每經(jīng)過(guò)一個(gè)路由處理,TTL值就會(huì)被減一,直至到0后被路由器丟掉。
我們看到其他的數(shù)據(jù)包也是同樣的情況,這個(gè) IP ID 為 15663 的數(shù)據(jù)包不斷在網(wǎng)絡(luò)中出現(xiàn),直到TTL值減到0,這種現(xiàn)象清楚的表明,網(wǎng)絡(luò)里存在著路由環(huán),發(fā)向10.22.127.246的數(shù)據(jù)包是在路由器間不斷的互相傳遞,最終被丟掉,這種現(xiàn)象也可以成為路由乒乓現(xiàn)象,出現(xiàn)路由環(huán)后,一個(gè)數(shù)據(jù)包將重復(fù)在網(wǎng)絡(luò)中傳送,而且瞬時(shí)流量會(huì)異常的大,造成網(wǎng)絡(luò)異常,這正和該網(wǎng)絡(luò)的網(wǎng)絡(luò)異?,F(xiàn)象相吻合。
為什么會(huì)出現(xiàn)路由環(huán)呢,我們對(duì)其網(wǎng)絡(luò)進(jìn)行了詳細(xì)的了解,發(fā)現(xiàn)其在路由器中設(shè)置了大量的靜態(tài)路由其路由設(shè)置。
從中我們可以看出,如果二級(jí)網(wǎng)路由器同地市網(wǎng)絡(luò)路由器之間的DDN網(wǎng)絡(luò)連接一旦中斷,二級(jí)網(wǎng)路由器中所設(shè)的指向地市網(wǎng)絡(luò)路由器的靜態(tài)路由就會(huì)由于端口狀態(tài)問(wèn)題而無(wú)效,而其到各地市網(wǎng)段的路由指向就會(huì)采用缺省路由指向而指回省局域網(wǎng)交換機(jī),這樣路由的乒乓現(xiàn)象就形成了。
事實(shí)上當(dāng)時(shí)的地市網(wǎng)絡(luò)并未調(diào)通,但網(wǎng)絡(luò)的路由都已經(jīng)設(shè)置完成了,同時(shí)各地市路由器的 IP 地址已經(jīng)添加到了網(wǎng)管系統(tǒng)中,網(wǎng)管系統(tǒng)在固定的時(shí)間間隔內(nèi)向這些路由器發(fā)出ICMP包,驗(yàn)證這些路由器是否能夠訪問(wèn)到,而這些ICMP包卻在省局域網(wǎng)交換機(jī)和二級(jí)網(wǎng)路由器間被放大形成乒乓現(xiàn)象,造成網(wǎng)絡(luò)丟包現(xiàn)象嚴(yán)重。
這個(gè)案例告訴我們,在配置靜態(tài)路由時(shí)要非常小心,不要在網(wǎng)絡(luò)配置中采用靜態(tài)路由。
這是一個(gè)實(shí)際發(fā)生的分析網(wǎng)絡(luò)大量丟包原因的案例,用戶的網(wǎng)絡(luò)丟包現(xiàn)象很嚴(yán)重,給用戶造成了很大的困擾,我們?cè)噲D通過(guò)流量分析的手段來(lái)分析造成網(wǎng)絡(luò)丟包的原因。
1.1. 網(wǎng)絡(luò)環(huán)境
用戶的網(wǎng)絡(luò)是一個(gè)覆蓋全省的網(wǎng)絡(luò)環(huán)境,包括省中心局域網(wǎng)和跨地市的廣域網(wǎng)構(gòu)成,并同全國(guó)的廣域網(wǎng)絡(luò)相連。
1.2. 網(wǎng)絡(luò)異?,F(xiàn)象描述
該網(wǎng)絡(luò)丟包現(xiàn)象嚴(yán)重,如果通過(guò)省局域網(wǎng)向地市網(wǎng)絡(luò)或全國(guó)網(wǎng)絡(luò)發(fā)包,每發(fā)出 10 個(gè) PING 包將只能收到 7 個(gè) REPLY 包,丟包率在 30% 左右,這樣,網(wǎng)絡(luò)丟報(bào)對(duì)一些網(wǎng)絡(luò)應(yīng)用運(yùn)行產(chǎn)生很大的影響,應(yīng)用運(yùn)行緩慢,甚至有些應(yīng)用無(wú)法正常運(yùn)行。
在此期間,網(wǎng)絡(luò)設(shè)備的運(yùn)行沒(méi)有發(fā)現(xiàn)異常,局域網(wǎng)和廣域網(wǎng)的物理鏈路也未發(fā)現(xiàn)異常。
1.3. 分析手段
造成網(wǎng)絡(luò)丟包可能的原因很多,包括鏈路層原因和網(wǎng)絡(luò)層問(wèn)題,而網(wǎng)絡(luò)擁塞也是造成網(wǎng)絡(luò)丟包非??赡艿脑?。為了分析是否是由于網(wǎng)絡(luò)擁塞引起的網(wǎng)絡(luò)丟包,我們采用流量分析的手段進(jìn)行分析定位。
我們對(duì)省局域網(wǎng)交換機(jī)到二級(jí)網(wǎng)路由器鏈路的網(wǎng)絡(luò)流量進(jìn)行了監(jiān)控,其中二級(jí)網(wǎng)路由器的局域網(wǎng)絡(luò)接口為10M,我們?cè)诰钟蚓W(wǎng)交換機(jī)上設(shè)置鏡像口(SPANPORT),將該鏈路流量鏡像到一個(gè)百兆網(wǎng)絡(luò)接口上,并用Sniffer協(xié)議分析儀接入該鏡像口,監(jiān)控分析該鏈路的網(wǎng)絡(luò)流量來(lái)確定是否存在流量異常現(xiàn)象。
1.4. 網(wǎng)絡(luò)流量分析過(guò)程
1. 網(wǎng)絡(luò)總體流量監(jiān)控
我們首先通過(guò)Sniffer Pro的History Samples(歷史抽樣)功能監(jiān)控該鏡像鏈路上的網(wǎng)絡(luò)利用率狀況,我們得到如下結(jié)果:
該鏈路到利用率情況
該鏈路每秒鐘實(shí)際傳輸數(shù)字
從以上的監(jiān)控結(jié)果中我們可以看到,在大約每 40 秒的周期內(nèi),該鏈路中的網(wǎng)絡(luò)流量會(huì)出現(xiàn)15秒的峰值,而且非常規(guī)律,峰值流量大約為20Mb/s,考慮到路由器同交換機(jī)的接口為 10Mb/s (全雙工工作時(shí)為 20Mb/s ),則我們看到這時(shí)的網(wǎng)絡(luò)利用率為100%!
通過(guò) Sniffer 對(duì)該鏈路流量進(jìn)行監(jiān)控分析,我們很直觀的可以看到該鏈路出現(xiàn)周期性的網(wǎng)絡(luò)擁塞,而這個(gè)周期和網(wǎng)絡(luò)的丟包時(shí)間規(guī)律非常吻合,我們可以非??隙ǖ恼J(rèn)定,這種流量的異常峰值是導(dǎo)致網(wǎng)絡(luò)中大量的丟包的重要原因。
2. 找出產(chǎn)生網(wǎng)絡(luò)流量的主機(jī)
當(dāng)網(wǎng)絡(luò)出現(xiàn)擁塞時(shí),我們需要對(duì)造成擁塞的原因進(jìn)行分析,一般首先我們先分析產(chǎn)生流量的主機(jī),我們利用 Sniffer 的 Host Table 功能,將該網(wǎng)絡(luò)所有計(jì)算機(jī)產(chǎn)生的網(wǎng)絡(luò)流量按照發(fā)出數(shù)據(jù)包的包數(shù)多少進(jìn)行排序。
Host Table分析每臺(tái)主機(jī)到流量
從中我們看到, IP 地址為 10.22.0.25 的主機(jī)發(fā)出數(shù)據(jù)包最多,遠(yuǎn) 3. 分析這臺(tái)主機(jī)的網(wǎng)絡(luò)流量
確定該主機(jī)大量發(fā)送流量是造成網(wǎng)絡(luò)擁塞的主要原因后,我們需要進(jìn)一步對(duì)該主機(jī)的流量進(jìn)行分析,也就是對(duì)他在網(wǎng)絡(luò)中正在做什么進(jìn)行分析,可以稱為對(duì)他的網(wǎng)絡(luò)行為進(jìn)行分析。
首先我們分析該主機(jī)的網(wǎng)絡(luò)流量流向,也就是分析它在向誰(shuí)發(fā)包,我們利用Sniffer 的 Matrix 功能來(lái)監(jiān)控。
主機(jī)的會(huì)話
通過(guò)Sniffer的Matrix,我們發(fā)現(xiàn)IP地址為10.22.0.25的主機(jī)發(fā)出的數(shù)據(jù)包很分散,我們調(diào)查了一下,發(fā)現(xiàn)IP地址為10.22.0.25的主機(jī)為該網(wǎng)絡(luò)的網(wǎng)絡(luò)管理系統(tǒng)主機(jī),而它發(fā)包的對(duì)象是該網(wǎng)絡(luò)中地市級(jí)路由器的IP地址,也就是說(shuō)網(wǎng)絡(luò)的網(wǎng)管主機(jī)向地市路由器發(fā)出大量的網(wǎng)絡(luò)包,導(dǎo)致網(wǎng)絡(luò)流量異常并導(dǎo)致網(wǎng)絡(luò)大量丟包,使網(wǎng)絡(luò)處于不穩(wěn)定狀態(tài)。
在發(fā)現(xiàn)這個(gè)問(wèn)題后,我們將該網(wǎng)管主機(jī)的網(wǎng)絡(luò)連接解除,發(fā)現(xiàn)網(wǎng)絡(luò)馬上恢復(fù)到了正常狀態(tài),不在有丟包現(xiàn)象發(fā)生,看起來(lái)這個(gè)網(wǎng)絡(luò)的問(wèn)題完全是由這臺(tái)網(wǎng)管主機(jī)引起的一樣,但這種現(xiàn)象非常難以理解,為什么網(wǎng)管主機(jī)會(huì)造成網(wǎng)絡(luò)問(wèn)題呢。
我們利用Sniffer的Decode功能將捕獲到的網(wǎng)絡(luò)流量解碼,來(lái)分析網(wǎng)管主機(jī)發(fā)出的數(shù)據(jù)包的內(nèi)容,看看到底它發(fā)出了什么樣的數(shù)據(jù)包,從而進(jìn)行進(jìn)一步的網(wǎng)絡(luò)行為分析。
解碼分析其發(fā)送到網(wǎng)絡(luò)流量
我們通過(guò)Sniffer的Decode發(fā)現(xiàn)這臺(tái)網(wǎng)絡(luò)主機(jī)向網(wǎng)絡(luò)中地市路由器發(fā)送大量的ICMP Echo數(shù)據(jù)包,也就是Ping包,我們對(duì)其向10.22.127.246發(fā)送的ICMP Echo包進(jìn)行分析,發(fā)現(xiàn)了奇怪的現(xiàn)象。
我們對(duì)我們捕獲的由 10.22.0.25 向 10.22.127.246 發(fā)送的 ICMP Echo 包其中相鄰的數(shù)據(jù)包進(jìn)行解碼分析,其發(fā)出的第739個(gè)數(shù)據(jù)包,其發(fā)出的第740個(gè)數(shù)據(jù)包,我們發(fā)現(xiàn)這兩個(gè)包的IP Identification是一樣的,都是 15633 ,每個(gè) IP 包都會(huì)有一個(gè)特定的 Identification 來(lái)標(biāo)志其性,這說(shuō)明我們捕獲到的這兩個(gè)數(shù)據(jù)包其實(shí)是同一個(gè)IP包。
解碼分析
而捕獲到的這個(gè)數(shù)據(jù)包的Time to live也就是TTL值一個(gè)為251,另一個(gè)為250,TTL為IP包的生存時(shí)間,每經(jīng)過(guò)一個(gè)路由處理,TTL值就會(huì)被減一,直至到0后被路由器丟掉。
我們看到其他的數(shù)據(jù)包也是同樣的情況,這個(gè) IP ID 為 15663 的數(shù)據(jù)包不斷在網(wǎng)絡(luò)中出現(xiàn),直到TTL值減到0,這種現(xiàn)象清楚的表明,網(wǎng)絡(luò)里存在著路由環(huán),發(fā)向10.22.127.246的數(shù)據(jù)包是在路由器間不斷的互相傳遞,最終被丟掉,這種現(xiàn)象也可以成為路由乒乓現(xiàn)象,出現(xiàn)路由環(huán)后,一個(gè)數(shù)據(jù)包將重復(fù)在網(wǎng)絡(luò)中傳送,而且瞬時(shí)流量會(huì)異常的大,造成網(wǎng)絡(luò)異常,這正和該網(wǎng)絡(luò)的網(wǎng)絡(luò)異?,F(xiàn)象相吻合。
為什么會(huì)出現(xiàn)路由環(huán)呢,我們對(duì)其網(wǎng)絡(luò)進(jìn)行了詳細(xì)的了解,發(fā)現(xiàn)其在路由器中設(shè)置了大量的靜態(tài)路由其路由設(shè)置。
從中我們可以看出,如果二級(jí)網(wǎng)路由器同地市網(wǎng)絡(luò)路由器之間的DDN網(wǎng)絡(luò)連接一旦中斷,二級(jí)網(wǎng)路由器中所設(shè)的指向地市網(wǎng)絡(luò)路由器的靜態(tài)路由就會(huì)由于端口狀態(tài)問(wèn)題而無(wú)效,而其到各地市網(wǎng)段的路由指向就會(huì)采用缺省路由指向而指回省局域網(wǎng)交換機(jī),這樣路由的乒乓現(xiàn)象就形成了。
事實(shí)上當(dāng)時(shí)的地市網(wǎng)絡(luò)并未調(diào)通,但網(wǎng)絡(luò)的路由都已經(jīng)設(shè)置完成了,同時(shí)各地市路由器的 IP 地址已經(jīng)添加到了網(wǎng)管系統(tǒng)中,網(wǎng)管系統(tǒng)在固定的時(shí)間間隔內(nèi)向這些路由器發(fā)出ICMP包,驗(yàn)證這些路由器是否能夠訪問(wèn)到,而這些ICMP包卻在省局域網(wǎng)交換機(jī)和二級(jí)網(wǎng)路由器間被放大形成乒乓現(xiàn)象,造成網(wǎng)絡(luò)丟包現(xiàn)象嚴(yán)重。
這個(gè)案例告訴我們,在配置靜態(tài)路由時(shí)要非常小心,不要在網(wǎng)絡(luò)配置中采用靜態(tài)路由。

