頻寬和流量各量什麼
下單時同時出現兩個詞,量的不是同一件事。頻寬寫成 Mbps 或 Gbps,回答的是這一秒最多能走多快。流量寫成 GB 或 TB,回答的是這一小時、這一天或這一個月一共走了多少位元組。
把埠想成一條車道的限速,把流量想成這個月駛過的里程。限速不變時,車子開得越久,里程越大。里程不再按表收費,限速牌還在。
所以不限流量落實到帳單上,是月傳輸總量不再單獨加一筆。它不把埠改成任意速率。250 Mbps 這一檔在任意一秒的上限仍是 250 Mbps;1 Gbps、2 Gbps 同理,只是上限數字不同。三檔都不按流量另收費,差別在埠的數字和月加價。
測速網頁會在幾秒到幾十秒裡盡量把埠填滿。結果接近所購檔位,說明這一小段時間路徑能夠到達該速率。結果遠低於所購檔位,先看測速點選在哪裡、當時測的是下載還是上傳,再決定要不要懷疑埠。一次測速既不能證明全月都需要這個速率,也不能代替機器自己的位元組計數。
三檔埠各自能走多快
速率換算用十進位。1 Mbps 是每秒一百萬位元。除以 8,得到每秒百萬位元組,也就是日常說的 MB/s。250 ÷ 8 = 31.25,所以 250 Mbps 滿速約為 31.25 MB/s。1 Gbps 按 1000 Mbps 計,約為 125 MB/s。2 Gbps 約為 250 MB/s。
一個 1 GB 的檔案,按 1000 MB 計,在 250 Mbps 滿速下大約 32 秒傳完。同樣這個檔案,在 1 Gbps 滿速下大約 8 秒,在 2 Gbps 滿速下大約 4 秒。前提是整段路徑都維持滿速,對端、磁碟和應用程式也跟得上。磁碟或對端更慢時,埠還沒到頂,檔案時間就不會按這個秒數縮短。
月傳輸量用同一套單位估算。連續滿速跑滿 30 天:
TB = Mbps × 86400 × 30 ÷ 8 ÷ 1000000
86400 是一天的秒數。先得到位元,除以 8 變成位元組,再除以 1,000,000 變成 TB。這裡 1 TB = 1000 GB,1 GB = 1000 MB,與上面的 MB/s 一致。把 250、1000、2000 代進去,分別是 81 TB、324 TB、648 TB。這是埠整整 30 天一刻不停跑滿才會達到的總量,用來看不另計流量覆蓋的是多大的里程。業務夠不夠,要看下一節的高峰取樣。
| 埠 | 滿速約合 | 連續滿速 30 天 | 每月加價 |
|---|---|---|---|
| 250 Mbps | 31.25 MB/s | 81 TB | $0 |
| 1 Gbps | 125 MB/s | 324 TB | $245.0 |
| 2 Gbps | 250 MB/s | 648 TB | $742.7 |
網卡協商速率是另一列數字。Linux 裡 /sys/class/net/網卡名/speed 常顯示 1000 或 10000,表示網卡和交換器之間協商成 1 Gbps 或 10 Gbps。這個檔案不返回所購的埠。機器裝的是萬兆網卡,所購仍可以是 250 Mbps。用 ethtool 或這個 speed 檔案核對買到的是不是 250 Mbps,會對不上,因為兩列本來就不是同一個限速點。
高峰頂滿再考慮升檔
升檔的依據是業務自己的高峰,是埠在那段時間裡有沒有成為等待的原因。網站平時每秒只有幾兆、備份視窗裡上傳連續貼著 250 Mbps,被拖長的是備份,看的就是出站。使用者下載安裝包時入站貼著上限、頁面排隊,看的就是入站。兩側要分開和埠的數字比較。把入站和出站相加,再拿這個和去對照 250,會把兩個方向的用量疊成一個虛高的數。
取樣窗放在真正忙的那段,而不是下午隨手測一次。備份多在夜裡,發布多在固定時段,存取高峰跟業務自己的時區走。每一側用連續的短取樣看它停在高位多久。一兩秒觸到上限、隨後立刻回到很低,是突發。備份或存取的整個視窗裡,較高的一側長時間停在埠的數字附近,視窗被埠拉長,這一檔就不夠用。
可以用六成作為觀察線,它是讀數時的分界。250 Mbps 的六成約為 150 Mbps,1 Gbps 的六成約為 600 Mbps,2 Gbps 的六成約為 1200 Mbps。高峰視窗裡多次取樣,較高一側多數時間低於這條線,埠還有餘量。較高一側經常越過這條線、並多次貼住埠的數字,再看下一檔。六成本身不會寫進帳單。
| 高峰裡看到的情況 | 怎麼處理 |
|---|---|
| 較高一側多數時間低於埠的六成,偶發觸頂後馬上回落 | 留在目前這一檔 |
| 備份、同步或分發的整段視窗裡,出站或入站連續貼著 250 Mbps | 看 1 Gbps |
| 已經在 1 Gbps,同一類視窗仍連續貼著 1000 Mbps | 看 2 Gbps |
| 測速網頁一次跑滿,業務計數器在高峰仍然很低 | 留在目前這一檔 |
| 磁碟或對端先到頂,埠的取樣明顯低於所購檔位 | 先處理磁碟或對端,埠先不動 |
從 250 Mbps 升到 1 Gbps,滿速位元組速率大約變為四倍,因為 1000 ÷ 250 = 4。從 1 Gbps 再到 2 Gbps,大約再變為兩倍。檔案是否按這個倍數變短,還取決於磁碟和對端。埠的取樣已經貼滿、磁碟吞吐仍有空閒時,升一檔才會把這段時間縮短。埠的取樣還遠低於檔位、磁碟已經打滿時,換更大的埠,檔案時間仍由磁碟決定。
買之後用計數器核對
控制台裡的第一行位址落在哪張網卡上,就讀那張網卡的計數器。先列出位址,把下面命令裡的網卡名換成持有第一行的那張。eno1 只是占位。
ip -br addr
十秒取樣足夠判斷這一小段有沒有貼住埠。把開始和結束的接收位元組、傳送位元組相減,除以 10 得到每秒位元組,再乘 8、除以 1,000,000 得到 Mbps。入站和出站各印一行。
DEV=eno1
RX1=$(cat /sys/class/net/$DEV/statistics/rx_bytes)
TX1=$(cat /sys/class/net/$DEV/statistics/tx_bytes)
sleep 10
RX2=$(cat /sys/class/net/$DEV/statistics/rx_bytes)
TX2=$(cat /sys/class/net/$DEV/statistics/tx_bytes)
awk -v rx1="$RX1" -v rx2="$RX2" -v tx1="$TX1" -v tx2="$TX2" 'BEGIN {
printf "in %.1f Mbps\n", (rx2-rx1)/10*8/1000000
printf "out %.1f Mbps\n", (tx2-tx1)/10*8/1000000
}'
在高峰視窗裡每隔一兩分鐘做一次,留下較高一側的一組數,比單次更有用。夜裡備份就在備份開始後取樣,白天存取就在存取最多的那一小時取樣。空閒時取樣接近 0,只能說明當時沒有業務,不能說明埠偏大。
要看一整天的形狀,再裝 vnstat,讓它覆蓋至少一個完整的高峰日,然後按小時讀。安裝之後的第一小時沒有歷史,不能用它判斷昨天。
vnstat -i eno1 -h
Windows 上對同一張已經連上、並且位址與控制台第一行一致的介面卡做十秒差。把介面卡名稱換成 Get-NetAdapter 裡 Status 為 Up、位址對得上的那一張。
$n = "Ethernet"
$a = Get-NetAdapterStatistics -Name $n
Start-Sleep -Seconds 10
$b = Get-NetAdapterStatistics -Name $n
"in {0:N1} Mbps" -f (($b.ReceivedBytes - $a.ReceivedBytes) * 8 / 10 / 1000000)
"out {0:N1} Mbps" -f (($b.SentBytes - $a.SentBytes) * 8 / 10 / 1000000)
核對按這個順序做。
- 01 確認訂單上的埠是 250 Mbps、1 Gbps 還是 2 Gbps。網卡 speed 檔案不參與這一步。
- 02 找到持有控制台第一行位址的網卡或介面卡。
- 03 在備份、同步或存取高峰裡做多次十秒取樣,入站和出站分開記錄。
- 04 較高一側多數時間低於該檔的六成,留在目前這一檔。整個視窗連續貼住埠的數字,再看下一檔。
- 05 埠的取樣仍然很低、工作依然很慢時,改查磁碟和對端,而不是先升頻寬。
頻寬加價怎麼進入月租
埠的檔位加在整機月租上,和記憶體檔、硬碟、位址、系統一起先加總,再乘週期裡的月數。月付乘 1,季付乘 3,半年付乘 6,年付乘 12。各週期都不打折,也沒有安裝費。三檔都不按流量另收費,所以升檔增加的是埠的月加價,不是按 TB 結算的尾款。
128GB 檔月租 $454.8。預設兩顆 1TB NVMe 各自直連,沒有硬體 RAID,可用容量按兩顆相加,是 2TB。頻寬留在 250 Mbps 時月加價為 $0。改到 1 Gbps,每月加 $245.0,這項機器的月租變為 $699.8;季付是 $2,099.4,年付是 $8,397.6。改到 2 Gbps,每月加 $742.7,在同樣不加碟、不加位址、使用免費系統時,月租是 $1,197.5。256GB 檔月租 $612.7,記憶體為 DDR4-3200 ECC RDIMM,兩檔在下單時選定。處理器是 AMD EPYC 7543P,32 核 64 執行緒,2.8 到 3.7 GHz。加購 2TB NVMe 每顆每月 $84.7,最多兩顆,仍是獨立直連。額外 IPv4 每個每月 $1.6。機器部署在日本東京。Linux 使用 SSH,選用 Windows 後使用 RDP。
加碟、加位址或選用付費系統時,把那些月價一併加進 $699.8 或 $1,197.5 這種已經含頻寬的月租,再乘月數。只把頻寬加價乘月數、主機月租仍按一個月付,週期會對不齊。
因此配置頁上的頻寬三選一,先用上一節的高峰取樣決定檔位,再用這一節把加價乘進週期。總量那一列已經由不限流量覆蓋,選擇本身只回答埠在高峰夠不夠快。