怎樣解決網(wǎng)絡(luò)數(shù)據(jù)丟失問題?

常常遇到各種網(wǎng)絡(luò)性能問題:丟包、延遲、TCP問題。
如果這些問題影響到傳統(tǒng)的企業(yè)應(yīng)用程序,那么可以使用許多工具來找到它們。但在面向Internet的應(yīng)用程序中,找出導(dǎo)致丟失和延遲等問題的根源是很困難的。
可用性一直是管理面向Internet的網(wǎng)站和服務(wù)的人員首要考慮的問題。這會(huì)影響到你的客戶基礎(chǔ)、你的用戶、你的合作伙伴、你的供應(yīng)商等等。
..。
分組丟失和延遲將嚴(yán)重影響應(yīng)用程序的性能。
對(duì)于延遲,大部分是距離造成的。若沒有這個(gè)問題,則可以通過購買更多帶寬來解決在system中的包緩沖。
然而,包的丟失可能是難以修復(fù)的。當(dāng)你的網(wǎng)絡(luò)出現(xiàn)明顯的數(shù)據(jù)包丟失時(shí),一定要考慮刪除它。
這樣可以提高應(yīng)用程序的性能,從而提高用戶的滿意度。在電子商務(wù)或服務(wù)提供商環(huán)境中,更好的應(yīng)用程序性能可以很容易地轉(zhuǎn)化成更多的銷售額。使用戶更加滿意也是良好的業(yè)務(wù)保障。
丟包的主要原因有兩個(gè):傳輸失誤和擁擠。
從A向B傳送數(shù)據(jù)包。有時(shí)引起CRC錯(cuò)誤。過長的光纜,或光纜/硬件稍微超過規(guī)格,造成偏度錯(cuò)誤,等等。一般情況下,cookie和switch會(huì)報(bào)告接口/端口上的這種錯(cuò)誤。假如有很多錯(cuò)誤,就必須檢查硬件和線纜。
還有擁擠。
即便是那些看上去沒有過載的鏈接,你仍然會(huì)有短暫的擁擠。如果一個(gè)數(shù)據(jù)包需要從快速接口流向較慢的接口,或者如果兩個(gè)或兩個(gè)以上的突發(fā)事件合并到一起,則可能會(huì)出現(xiàn)出出出出出出出接口的緩沖區(qū)空間不足,而必須對(duì)數(shù)據(jù)包進(jìn)行發(fā)散。在接口統(tǒng)計(jì)中,這是“輸出下降”。
輸入帶與輸出帶寬度相等:不是瓶頸。
更為有效的解決辦法是消除帶寬瓶頸,這樣數(shù)據(jù)包就能像接收到的那樣快速傳輸。
多重輸入,單一輸出:符號(hào)再次成為瓶頸。
除查看接口統(tǒng)計(jì)數(shù)據(jù)外,還可以使用ping命令調(diào)試數(shù)據(jù)包丟失的問題。
在完成這些測量之后,讓我們?cè)俅慰纯搓?duì)列/緩沖區(qū)大小。假如設(shè)備是帶寬瓶頸,那么很小的緩沖區(qū)就會(huì)產(chǎn)生很多“雜音”(因?yàn)榫彌_區(qū)已經(jīng)滿了,所以會(huì)有雜音包)。
而較大的緩沖區(qū)則會(huì)導(dǎo)致緩沖區(qū)因膨脹而產(chǎn)生的延遲,即使該緩沖區(qū)已滿,仍有可能發(fā)生滑落。
所以,解決方法是什么?
第一,首先要消除持續(xù)的帶寬瓶頸。也許也有必要替換緩沖區(qū)空間不足的地方,以適應(yīng)網(wǎng)絡(luò)體驗(yàn)到的突然的低端連接或交換。
此外,使用適當(dāng)?shù)闹鲃?dòng)隊(duì)列管理(AQM)也很重要。
在緩沖區(qū)空間耗盡前,AQM算法會(huì)嘗試在緩沖區(qū)中適當(dāng)?shù)販p慢速度,而不會(huì)在緩沖區(qū)已滿時(shí)立即減慢許多包的速度,從而使TCP的減慢幅度遠(yuǎn)遠(yuǎn)大于所需。更有甚者,TCP會(huì)話會(huì)同時(shí)經(jīng)歷掉線并開始“同步”,這會(huì)導(dǎo)致一個(gè)病態(tài)的上升、掉線、減速循環(huán)。
要注意,QoS(服務(wù)質(zhì)量)機(jī)制并沒有消除對(duì)AQM的需求:QoS確保了某些應(yīng)用的優(yōu)先級(jí),AQM可以優(yōu)化延遲和包丟失,從而使應(yīng)用能夠充分利用網(wǎng)絡(luò)帶寬。通過主動(dòng)探測互聯(lián)網(wǎng)目的地,QoS解決方案能夠使路由優(yōu)化過程完全自動(dòng)化,這取決于對(duì)數(shù)據(jù)包丟失和延遲的測量。
了解更多網(wǎng)絡(luò)知識(shí)關(guān)注:http://www.vecloud.com/