网络延迟和数据包丢失对网络性能的影响—Vecloud微云
網絡性能指標一般指的是延時,丟失和抖動。今天我們將探討它們(特別是延時和數據包丟失)是如何影響應用程序性能。
幾乎所有應用程序都使用TCP,即傳輸控制協議,將其數據從A傳輸到B。互聯網流量的85%是TCP。
TCP的一個有趣的方面是,它對應用程序完全隱藏了基于分組的網絡性質。無論是應用程序偶爾將單個字符交給TCP(例如Telnet或SSH),還是以最快的速度(FTP)或介于兩者之間的速度轉儲一個數兆字節的文件,TCP都會獲取數據并將其放入數據包中,并且通過網絡發送它。
互聯網對于數據包來說是它害怕的地方:數據包丟失,永不傳播,到達的順序與傳輸的順序不同的情況并不少見。
延遲
早期的網絡協議通常是為在LAN或園區網絡上運行而構建的,在這些協議中,數據包可以在幾毫秒內從網絡的一端傳輸到另一端。這些協議在Internet上并非總是能很好地工作,在這種情況下,數據包在到達目的地之前很容易花費十分之一秒的時間繞地球旋轉。如果您隨后還需要返回數據包,則此數字將翻倍至200毫秒。
排隊論告訴我們,鏈接越忙,需要等待的時間越長。
例如,運行速度為8 Gbps(利用率為80%)的10
Gbps鏈路意味著,平均而言,當一個數據包到達時,已經有四個其他數據包在等待。在99%的利用率下,此隊列增長到99個數據包。當鏈接慢得多時,這可能會增加大量的額外延遲,但以10
Gbps的速度傳輸99個平均500字節的數據包,僅需0.248毫秒。
在存在高延遲的情況下,TCP具有多種機制來獲得良好的性能。
最主要的是確保有足夠的數據包“處于運行狀態”。只需發送一個數據包,然后等待另一端說“明白了,然后再發送下一個”,它就不會中斷。
因此,TCP會嘗試確保發送足夠的數據包來填充鏈接,但不會那么多,以至于它會使鏈接或路徑變得過飽和。這對于長期的數據傳輸(例如大下載量)非常有效。
但是對于較小的數據傳輸,它并不是那么好用,因為為了確保它不會使網絡不堪重負,TCP使用了“慢啟動”機制。
對于長下載而言,慢啟動部分僅占總時間的一小部分,但對于短傳輸,在TCP加速運行時,傳輸已結束。因為TCP必須等待接收者的確認,所以更多的延遲意味著更多的時間花費在緩慢的啟動上。Web瀏覽器的性能過去常常受到啟動速度的限制,但是瀏覽器開始重用TCP會話,而這些會話本來就不是很慢,因為它開始下載其他圖像和其他元素,而不是繼續打開新的TCP會話。
當然,幾乎每個TCP連接都在DNS查找之前。如果對DNS服務器的等待時間很長,則會減慢整個過程。因此,請嘗試使用附近的DNS服務器。
Vecloud是一家面向企業提供云交換網絡服務為核心業務的技術創新企業,在全球的數據中心節點30個,POP節點超過200個,服務的大客戶超過300個,涉及金融、互聯網、游戲、AI、教育、制造業、跨國企業等行業領域。http://www.vecloud.com
總結
以上是生活随笔為你收集整理的网络延迟和数据包丢失对网络性能的影响—Vecloud微云的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 网络功能虚拟化(NFV)的作用—Vecl
- 下一篇: 网络中常见的互通与不通—Vecloud微