1000Mbps的寬帶怎么換算成MB/S?
當前位置:點晴教程→知識管理交流
→『 技術文檔交流 』
在互聯網信息時代,人們的生活和工作都需要依賴網絡,網絡的快慢很大程度上影響了人們上網的體驗感。 而網絡的快慢一般決定于你所安裝的網線,那么問題來了。1000Mbps換算成MB/s是多少? 一些朋友對Mbps和Mb/s換算存在誤區,甚至誤以為1000Mbps就是1秒可以下載1000MB的文件。 為了讓大家不鬧笑話,今天就來科普一波。 在網絡傳輸的時候,往往會用到Mbps這個單位,GbE or 1 GigE 的網卡現在很流行,這個東西被大家叫做“千兆網卡”。 同時,大家特別習慣用GB或者MB來描述一個磁盤的大小。這個叫做Gigabyte或者Megabyte。 但描述文件大小(或者討論磁盤空間)的時候,我們通常還會用GiB或者MiB來描述。 GB和GiB的對比實際上就是上面標的關系了,KB、MB、GB、TB來自于10進制三位分割的計數法,也就是每隔三位數加進一個逗號。 這是對應了歐美那邊的計算方法,這個來源于“短級差制(short scale)”,本意是指1000個前數,例如1 billion= 1000 million,也就是10億= 1000個百萬。 但是這種計數方法本身會帶來困擾。 如果敏感一點的讀者看到了“短級差制”,一定會想到“長級差制(long Scale)”,長級差制是以百萬(10的6次方)來作為下一個級別的,在長級差制之內1 billion 代表的意思就是“萬億”了,代表100萬個百萬,也就是10的12次方。 無論是短級差制還是短級差制在歐洲都在用,這件事就會引起混亂,于是國際標準化組織就依照短級差短方式定義了一套標準化的詞頭計數方式,以10的3次方為級,這也就是我們現在的千、兆、吉、太、拍、艾、澤……的計數方法了。 同理,在二進制中,我們會以2的n*10次方來計算數字的大小,于是就有一個二進制的詞頭,寫法和國標的詞頭類似,只不過在英文中把后兩位依據發音習慣替換成了bi。 例如Giga被改成了Gibi、Tera被改成了Tebi,我們說的MB(megabyte),也被改成了mebibyte,也就是簡寫的MiB。 回到留言的問題:1000Mbps的網絡,換算為MB是多少,首先我們先搞清楚1000Mbps是什么,前面說了是是GbE,這個東西叫做“吉比特以太網(Gigabit Ethernet)” 注意這里面用的是Giga,說明是10進制計算的,也就是一秒鐘可以傳輸1,000,000,000個比特。 我們都知道的是一個字節(Byte)是由8個比特(Bit)組成。按理論上來說,1000Mbps的網絡傳輸帶寬在一秒鐘之內可以傳遞125MegaByte的數據。 但是,我們得明白,在網絡傳輸的時候并不是光傳輸你所需要的數據,在傳輸的過程中還需要將數據改變成網絡數據包,所謂的打包數據就是在各個網絡層為數據增加相應的標記信息。 這些信息對傳輸文件本身這件事并不會有太大的意義,只是為了能夠完成網絡傳輸。 這時候,你在文件管理器中傳輸文件的時候看到的速度就已經不是網卡的速度了,而是在傳輸后層層打包后的凈文件流數據獲取速度。 因此,有的人就在問,為什么明明是千兆網卡,傳輸速度卻不會達到125MB/秒? 這里損失的一部分速度就是打包數據包所占用的傳輸流量。 所以速度達不到125MB/秒并不是網絡的問題,而是正常現象。 那么有沒有可能讓傳輸速度進一步提高,盡量接近125MB/秒的極限呢?也是可以的。我們就得從數據鏈路層的以太網幀來入手了。 之前給大家講過以太網幀,其中有一個MTU設置,叫做最大傳輸單元(Maximum Transmission Unit),每個以太網幀可以被定義為一個傳輸單元。以太網所定義的一個幀的大小為1538。 在網絡設備上開始傳輸的時候設備會先發出7個字節的先導碼,然后按照固定的格式分節來傳輸后面的數據。 這個過程叫做一個傳輸單元,最終一個幀會以四個字節的校驗碼結束。其中最多會在Data這一節承載1500字節的數據。 如果我們把一個幀當作一輛卡車的話是這樣的: 車頭、車架、車輪都是數據包的封裝結構,車廂就是數據包中的數據。 即便是數據再少,車頭、車架、車輪也是精簡不掉的。 但我們可以盡量的增加車廂的大小,讓一趟車盡量的運送更多的貨物。這就是降低了每次傳輸數據包的損耗率。 所以,我們可以知道的傳輸速率是可以計算出來的,大致上 效率=真正的傳輸數據內容/幀大小。 因此可以計算在一個MTU為1500的以太網上的效率計算則是 1500/(1500+38)=97.53%,這還是干凈的以太網幀,如果我們在交換機上附帶了Vlan等設置,我們就需要再加入VLan的封包子節數。 還拿卡車做例子就是這樣的感覺: 一輛卡車被作為貨物裝入另一輛卡車。 這時候Vlan的四個字節的標記也得加進去,就成了1500/(1500+38+4)=97.28%。 所以說,在網絡傳輸效率上,一般以千兆太網是可以做到975.3Mbps的真實傳輸效率的,如果加了VLan可以做到972.8Mbps的傳輸效率。 當然了,這是理論最高數值。 這個數值除以8是不是就算是網絡能傳文件的字節數了呢?還不是! 一般我們用SMB做文件分享和傳輸,這是TCP協議集里面的一個協議: 看——也有包頭、控制、基礎數據等等一系列的額外內容在里面。 因此 975.3Mbps 除以8 的121.9MB/秒也不會是一個文件傳輸的真實數值,還得打折扣。 還是卡車,這個SMB是卡車車廂里面的貨物而已但不是你的文件。 例如這輛卡車里面裝的是蘋果筆記本電腦,你要的也是一臺蘋果筆記本電腦,但是只要不是買二手,大部分電腦運送的時候還是有包裝箱的,這個包裝箱的一包就是SMB傳輸的數據包。 而在你的購買行為里面卻默認只是要層層包裝里面的一臺電腦。多余的東西實際上都是運輸損耗。 了解這些背景信息,你就會發現,帶寬1000Mbps不變的情況下,你需要降低附帶的這些協議包的損耗。怎么辦?加大車廂! 換一個更大車廂一次性裝更多的數據就好了。這里就要用到交換機上的巨型幀了,是指MTU大于1500的幀。 按照規范來說,巨型幀(jumbo frames)可以設置到9000字節。這個大小遠遠突破了IEEE 802.3以太網協議的限制。 它可以做到在一個封裝好的以太網幀中最多傳輸9000字節的數據,也就是MTU=9000。 我們按照之前的效率算法來計算一下就可以知道 效率=9000/(9000+38)= 99.58%,比起默認以太網的97.53要多壓榨出了一些網絡傳輸性能。 但是,要知道的是網絡上不僅僅只是來回交換文件傳輸數據包的內容,還會不停的傳輸一些小包指令。 這時候一個巨大的幀內有可能只傳輸一些極小的負載。例如一輛大集裝箱卡車里面只裝了一小件貨物: 和卡車司機的困擾一樣,以太網要傳輸小包數據實際上也會占用相同的以太網幀大小。 于是十幾個字節的數據在巨型幀的交換機上也得占用幾百倍的傳輸帶寬。這樣就會導致網絡的性能不增反降。 一般的做法是將兩種交換機分離開,專門做大型數據傳輸的使用設置好巨型幀的交換機進行傳輸,而一般的小指令小數據包的傳輸會利用普通的MTU設置為1500的以太網交換機進行傳輸。 這就把存儲的網絡和普通業務網絡進行分離。為了配合存儲需求,也就出現了iscsi等專門跑在以太網上的存儲協議。 當然了,也有一些光纖通道交換機專門跑存儲業務。這就有點脫離開大家經常用到的以太網的范疇了。 該文章在 2024/7/23 20:13:41 編輯過 |
關鍵字查詢
相關文章
正在查詢... |