鄭吉妮,黃河,王方金
(中國移動通信集團(tuán)廣東有限公司,廣州 510623)
隨著通信網(wǎng)絡(luò)IP化進(jìn)程的迅速發(fā)展,傳輸網(wǎng)由早期的MSTP技術(shù)向PTN技術(shù)轉(zhuǎn)型,現(xiàn)有PTN網(wǎng)絡(luò)已具備帶寬統(tǒng)計復(fù)用等多方面優(yōu)勢,可同時承載2G/3G/4G基站回傳業(yè)務(wù)、集客業(yè)務(wù)及WLAN業(yè)務(wù)等。
IEEE 802.3x流控:全雙工以太網(wǎng)數(shù)據(jù)鏈路層的一種流控方式,當(dāng)一端設(shè)備向?qū)Χ嗽O(shè)備發(fā)出請求后,如自身系統(tǒng)緩存不夠或網(wǎng)絡(luò)產(chǎn)生擁塞時,便會向?qū)Χ嗽O(shè)備發(fā)出Pause幀,以延緩其發(fā)向自身的數(shù)據(jù)。流量控制可用于在端口阻塞情況下避免丟幀,可有效抵御瞬間大量數(shù)據(jù)對網(wǎng)絡(luò)帶來沖擊,保證用戶網(wǎng)絡(luò)運行高效而穩(wěn)定。
FTP文件傳輸協(xié)議:使用TCP生成一個虛擬連接用于控制的信息,再生成一個單獨的 TCP連接用于數(shù)據(jù)傳輸,實現(xiàn)主機(jī)間文件共享。FTP客戶機(jī)可給服務(wù)器發(fā)出命令,用于下載或上傳文件、創(chuàng)建或改變服務(wù)器上的目錄等。
中國移動為集團(tuán)客戶A公司開通一條跨省MSTP+ PTN大客戶專線,命名為“北京-深圳300 Mbit/s”。電路開通后,傳輸掛表測試正常,但A公司客戶使用該電路進(jìn)行FTP等應(yīng)用測試發(fā)現(xiàn)實際帶寬不足,提出申告:“使用單線程FTP從北京服務(wù)器下載文件至深圳時,帶寬能達(dá)到要求,但在深圳上載文件至北京服務(wù)器時,帶寬達(dá)不到要求,最低只有約4Mbit/s左右”。
圖1 TCP穩(wěn)態(tài)速率影響因素
BDP(Bandwidth Delay Product,帶寬時延乘積)即帶寬×?xí)r延,其中時延指系統(tǒng)的環(huán)回時長RTT0,即TCP發(fā)出一個數(shù)據(jù)分組到收到對應(yīng)ACK的時長,約等于Ping測時長。案例中北京-深圳的帶寬為300 Mbit/s折合為37.5 MB,時延為40 ms,該BDP≈37.5×0.04×106=1 500 000 B。即 理 論 上 要求客戶北京、深圳FTP服務(wù)器的TCP緩沖區(qū)不小于1 500 000 B。
TCP緩沖區(qū)大小設(shè)置原則:緩沖區(qū)大小需要略大于時延帶寬乘積,否則吞吐量會因緩沖區(qū)太小而受限。其中吞吐量 = min{發(fā)送窗口,接收窗口}/ RTT。如果應(yīng)用程序指定了緩沖區(qū)大小,則按應(yīng)用程序指定大小分配緩沖區(qū),否則操作系統(tǒng)按系統(tǒng)設(shè)置值進(jìn)行TCP緩沖區(qū)分配。
在A公司客戶現(xiàn)場登陸北京、上海、深圳3地服務(wù)器,查看當(dāng)前TCP緩存窗口配置,發(fā)現(xiàn)北京和深圳的服務(wù)器緩存設(shè)置足夠,但上海服務(wù)器的緩存設(shè)置略小,通過TCP穩(wěn)態(tài)速率分析,發(fā)現(xiàn)FTP服務(wù)器的TCP發(fā)送接收緩存不小于1 500 000 byte,當(dāng)時查詢的結(jié)果如表1所示。
表1 客戶服務(wù)器緩存情況分析
最終分析結(jié)論為北京和深圳的FTP服務(wù)器TCP緩存窗口大于BDP,“北京—深圳300 Mbit/s”電路FTP吞吐量低,非客戶FTP服務(wù)器的TCP緩存窗口設(shè)置不合理引起。
由于TCP傳輸存在方向性,因此需要將此電路兩端單獨分析。
北京—深圳方向:如圖2、3所示,從北京FTP文件至深圳方向,北京客戶路由器與華為EGS4單板對接的端口速率為GE,MSTP網(wǎng)絡(luò)帶寬只有300 Mbit/s,北京SSN4EGS4單板處入口帶寬(1 000 Mbit/s)大于出口帶寬(300 Mbit/s),即存在瓶頸。由于SSN4EGS4單板與客戶Juniper路由器端口是自協(xié)商模式,并且使用自協(xié)商流控(802.3x),當(dāng)Juniper路由器出現(xiàn)突發(fā)流量時,SSN4EGS4單板與路由器端口之間的流控機(jī)制保證路由器突發(fā)數(shù)據(jù)不超過SSN4EGS4單板緩存大小,因此SSN4EGS4單板不會分組丟失。經(jīng)測試,北京—深圳300 Mbit/s電路,從北京FTP文件至深圳方向的FTP速率穩(wěn)定在33!35 Mbit/s左右。
深圳—北京方向:如圖4所示,深圳FTP文件至北京方向FTP平均速度只有4!5 Mbit/s。從拓?fù)鋱D看,深圳客戶路由器與華為PTN950設(shè)備EG2單板對接的端口速率為GE,而PTN網(wǎng)絡(luò)內(nèi)Tunnel限速為300 Mbit/s,相當(dāng)于深圳PTN950設(shè)備EG2單板處入口帶寬(1 000 Mbit/s)大于出口帶寬(300 Mbit/s),即存在瓶頸。由于PTN950設(shè)備產(chǎn)品規(guī)格不支持端口發(fā)送流控幀(只支持接受流控幀),并且PTN950設(shè)備EG2單板的Tunnel隊列緩存規(guī)格較小。因此當(dāng)存在出口帶寬小于入口帶寬,且單板緩存無法容納突發(fā)數(shù)據(jù)時,就產(chǎn)生分組丟失引起TCP重傳,從而降低了FTP傳輸速率。
圖2 北京—深圳方向傳輸組網(wǎng)情況
圖3 北京客戶端傳輸設(shè)備以太網(wǎng)單板的接口配置
修改深圳客戶機(jī)房PTN950設(shè)備的限速模式由Tunnel限速修改為端口CAR限速,配置CAR限速的CIR/PIR(承諾信息速率/峰值信息速率)為300 000 kbit/s,配置CBS/PBS(承諾突發(fā)/峰值突發(fā))為2 MB。修改后經(jīng)測試,該電路從深圳至北京方向的FTP速率可穩(wěn)定在33 Mbit/s以上。
此類問題一般發(fā)生在FTP等存在較大TCP突發(fā)數(shù)據(jù)流的應(yīng)用場景下,建議對單線程與多線程兩種FTP速率進(jìn)行比較。如果多線程FTP速率(所有線程速率綜合)能基本達(dá)到用戶需求帶寬,而單線程FTP速率遠(yuǎn)低于用戶需求帶寬時,說明吞吐量不夠?qū)е聨捚款i,從而引起分組丟失重傳。類似問題可按照下述步驟進(jìn)行排查和解決。
(1)檢查用戶FTP服務(wù)器和客戶端TCP滑動窗口緩存大小是否滿足要求,一般要求TCP滑動窗口緩存大小不小于BDP。
(2)上述條件滿足后,檢查電路配置是否存在誤碼和異常告警等影響業(yè)務(wù)的因素,并逐一排除,有條件的情況下可以使用SmartBit等以太網(wǎng)測試儀進(jìn)行檢測。
(3)檢查電路路徑是否存在瓶頸點,比如與用戶設(shè)備對接的PTN或MSTP單板,它們與用戶設(shè)備一般是以FE/GE/10 GE速率對接,但網(wǎng)絡(luò)側(cè)綁定的通道往往才是用戶真正租用的帶寬(如60 Mbit/s /200 Mbit/s/2 GE)。因此在入口處存在大管道向小管道的帶寬收斂,當(dāng)入口流量存在突發(fā)時便出現(xiàn)瓶頸,如果單板的緩存不足以存儲突發(fā)流量,就會出現(xiàn)分組丟失,進(jìn)而導(dǎo)致TCP數(shù)據(jù)發(fā)生重傳,降低上傳下載速率。
(4)如果用戶設(shè)備和對接的移動PTN或MSTP以太單板之間存在如上瓶頸,首選方案是在用戶設(shè)備發(fā)往移動PTN或MSTP以太單板方向的端口上進(jìn)行流量整形(Shaping),整形后的數(shù)據(jù)流為用戶租用帶寬,從而消除用戶設(shè)備發(fā)往移動PTN或MSTP以太單板方向的超SLA突發(fā)數(shù)據(jù)流,PTN或MSTP以太單板就能完全轉(zhuǎn)發(fā)用戶設(shè)備送來的數(shù)據(jù)分組。
(5)如果用戶設(shè)備和對接的移動MSTP以太單板之間存在瓶頸,且用戶設(shè)備無法做流量整形,則可嘗試在用戶設(shè)備和MSTP以太單板之間啟動802.3x流控,采用Pause幀機(jī)制,當(dāng)MSTP以太單板遇到突發(fā)數(shù)據(jù)流無法及時轉(zhuǎn)發(fā)時,通知上游用戶設(shè)備暫停發(fā)送數(shù)據(jù),從而避免分組丟失現(xiàn)象。
圖4 深圳—北京方向傳輸組網(wǎng)情況
(6)如果(4)(5)都無法滿足,建議取消Tunnel限速(取消CIR/PIR),改為端口流量監(jiān)管方式(CAR),設(shè)置用戶端口CAR的CIR/PIR為用戶需求帶寬,CBS/PBS設(shè)置為用戶FTP服務(wù)器TCP滑動窗口緩存大小,多用戶方式下可按照端口+VLAN設(shè)置CAR。
[1]黃河, 鄭吉妮, 朱紹柯.PTN、MSTP網(wǎng)絡(luò)承載以太網(wǎng)專線的性能對比分析[J].電信工程技術(shù)與標(biāo)準(zhǔn)化, 2014(11).
[2]唐鐵斌, 孫士兵, 馬佩勛, 等.一種基于IEEE 802.3以太網(wǎng)流量控制的RACE方法研究[J].光通信研究, 2009(10).
[3]黃世權(quán).FTP協(xié)議分析和安全研究[J].微計算機(jī)信息, 2008(6).