大多數(shù)測試設(shè)備廠商采用通用的吞吐量測試方法,但是網(wǎng)絡(luò)設(shè)計人員仍需要了解在實際中解決更微妙問題時的不同考慮。以下是在實際測試中,對于吞吐量和延遲兩個測試需要多考慮的一些因素。
比如說,兩臺路由器通過一條T1線路連接起來,測試人員利用1Gbits光纖線路連接到路由器。T1線路只能以1.536Mbits的速率傳送數(shù)據(jù),而光纖路可以根據(jù)幀的不同長度以超過900Mbps的速度傳送數(shù)據(jù)。按每秒幀數(shù)測量的64字節(jié)幀的吞吐量似乎可以精確地表示為:1536000比特每秒(64字節(jié)每幀×8比特每字節(jié))=3000幀每秒。
但是,實際的數(shù)字可能由于多種原因而有所不同。首先,以太網(wǎng)幀中的數(shù)據(jù)鏈路層信息可能沒有流過T1接口。相反,可能建立了某種類型的點對點協(xié)議(PPP)鏈路,從而從以太網(wǎng)幀中完全刪除了二層字節(jié)的媒介訪問控制信息,并用PPP包頭中的信息代替它。
其次,測量算法本身可能會造成問題。如果測試人員不仔細地理解測量算法和路由器的特性的話,他們會看到比上述公式所表達的吞吐量更高的吞吐量。由于路由器在緩沖區(qū)中存儲數(shù)據(jù)幀并且在測試過程中緩存區(qū)滿了,這個問題就會突然出現(xiàn)。當(dāng)測試設(shè)備發(fā)出的傳輸流終止于測試端時,緩沖區(qū)繼續(xù)通過T1接口傳送存儲的幀。在這種情況下,吞吐量算法必須進行修改以使實際被統(tǒng)計的幀嵌入到未被統(tǒng)計的幀系列中。
延遲是另一項基礎(chǔ)性能標(biāo)準(zhǔn),但是隨著測試的開展問題會變得復(fù)雜起來。RFC 1242將比特轉(zhuǎn)發(fā)設(shè)備的延遲定義為“從輸入幀的第一比特的結(jié)尾到達輸出端口時開始計時,輸出幀的第一比特的開始出現(xiàn)輸出端口上時結(jié)束計時,這段的時間間隔!边@里,延遲是針對網(wǎng)絡(luò)設(shè)備定義的。RFC 2544中建議的方法如下:首先確定網(wǎng)絡(luò)設(shè)備的最大吞吐量,然后以此吞吐量速度繼續(xù)傳送120秒的數(shù)據(jù)流,并在60秒時傳送一幀“簽名”幀。簽名幀被用于傳送時間標(biāo)記,當(dāng)接收到簽名幀時,對時間標(biāo)記進行檢查。收到時間標(biāo)記與發(fā)送時間標(biāo)記之間的間隔用于確定延遲。RFC 2544建議進行多次獨立的試驗,最終得到的數(shù)據(jù)是多次試驗結(jié)果的平均值。一般來說,如果測試人員試圖得到在某種程度上表示網(wǎng)絡(luò)設(shè)備轉(zhuǎn)發(fā)幀能力的數(shù)據(jù)的話,這種方法是可行的。但是,在計算延遲時常常需要考慮更多的東西。
如果簽名幀由于某種原因被丟棄,RFC 2544中描述的延遲測量法會出現(xiàn)問題。它可能會造成測試設(shè)備無限期地等待簽名幀的到達。由于數(shù)據(jù)流是以網(wǎng)絡(luò)設(shè)備可支持的吞吐速率發(fā)送的,因此丟棄簽名幀的現(xiàn)象不應(yīng)當(dāng)出現(xiàn)。然而,在實際情況可能有出入,而在發(fā)生丟棄幀的情況下,測試將是無效的。
解決這個問題的一種辦法是設(shè)計一種測試算法,這種算法每秒發(fā)送一個簽名幀,然后捕獲所有的簽名幀。當(dāng)延遲幀的傳輸結(jié)束時,測試設(shè)備可以在捕獲到幀的集合的中心點挑出一幀并執(zhí)行其延遲測量。如果簽名幀被丟棄,測試仍可以利用另一個簽名幀來代替它。這種方法提高了這種測試的強健性。
但是,這種修改后的延遲算法可能還不能滿足要求。利用這種算法,測試人員不能測量延遲的變化,即抖動。為了準(zhǔn)確地進行這種測試,測試人員必須實時地捕獲和分析所有的幀。然后他們可以計算時間的最小、最大和平均延遲。
為了將此論點再向前發(fā)展一步,測試人員可以將最小、最大和平均延遲放到一個專門的緩存區(qū)序列中,并定期地切換到一個新緩存區(qū),這將產(chǎn)生時間變化的延遲。利用這類設(shè)備,測試人員可以在其他傳輸流模式流過設(shè)備的同時勾畫出網(wǎng)絡(luò)設(shè)備的延遲行為,從而在高強度條件下得到網(wǎng)絡(luò)設(shè)備更準(zhǔn)確的描述。顯然,由于這類測試超出了任何處理器可跟蹤記錄的能力,因此這種測試要求測試設(shè)備必須利用優(yōu)化的硬件來跟蹤記錄延遲。
----《通信世界報》