1. 程式人生 > >計算機網路中吞吐量和時延的關聯理解

計算機網路中吞吐量和時延的關聯理解

通過鏈路和交換機移動資料的方法有兩種:電路交換和分組交換 其中電路交換網路中,在端系統間通訊會話期間,是預留了資料傳輸所需的路徑資源。 所以對於吞吐量,時延的討論僅在分組交換網路中進行。

吞吐量:

考慮從主機A到B跨越計算機網路傳送檔案,則在任何時間瞬間的瞬時吞吐量是主機B接收到該檔案的速率(bps),比如用迅雷下載某檔案時顯示的瞬時下載速率,應當為該程序的瞬時吞吐量。而如果這個檔案大小為F位元,主機B接收到所有F位元用去T秒,則 F/T bps 應當為檔案傳送的平均吞吐量。 引用百度百科:吞吐量是指對網路、裝置、埠、虛電路或其他設施,單位時間內成功地傳送資料的數量(以位元、位元組、分組等測量)。 同時吞吐量的大小取決於傳輸路徑上瓶頸鍊路的傳輸速率。 即假設伺服器和客戶間有N條鏈路的一個網路,這N條鏈路的對於傳輸檔案的實際傳輸速率(舉例:可能出現有一條公共鏈路傳輸速率雖然為5mps,但其在10個下載之間平等劃分它的傳輸速率,那麼對於其中一個檔案,該鏈路對其的實際傳輸速率可認為是500kps)分別是R1,R2,...,Rn。 則伺服器到客戶的檔案傳輸的吞吐量應為 min{R1,R2,...,Rn}

時延:

分組交換網中,當分組從一個結點(主機or路由器)沿著這條路徑到後繼結點(主機or路由器),該分組在沿途的每個結點經受了幾種不同型別的時延。 其中最為重要的是結點處理時延排隊時延傳輸時延傳播時延。 在筆者看來,其正好對應了路由器對分組處理的幾個重要階段:一分組由上游結點通過路由器A向路由器B傳送,當其從上游結點到達路由器A時,路由器首先檢查分組首部和決定將該分組導向何處(這是處理時延的一部分,處理時延還能包括如檢查位元級別的差錯所需要的時間,該差錯出現在 上游結點—>路由器A 的傳輸過程中),決定好去向後,分組接下來在鏈路上等待傳輸,如果等待的佇列不為空或有其他分組正在傳輸,那麼就會經受排隊時延。再然後傳輸時延對應的便是分組的所有位元推向鏈路所需要的時間,傳播時延則是分組在路由器A和B之間鏈路上傳播所需的時間。 筆者理解: 吞吐量的意義在於對檔案傳輸的速率。所以無論對於客戶—伺服器體系結構抑或是P2P體系結構,確保吞吐量的足夠大對於檔案的傳輸共享都是有必要的。即吞吐量永遠不會嫌多。 而時延的意義在於對實時互動應用程式的影響,比如視訊通話,語音通話或是線上網路大型遊戲。對於這些分散式應用程式而言,重要的、或者說最重要的不是足夠多的吞吐量,而是穩定的資料傳輸以及具備滿足實時資料傳輸的吞吐量下限。即時延越低越好。 換句話說,基本的吞吐量是合理時延的前提之一。