Skip to content

VMess 協定測試 ​

VMess 協定測試 ​

測試內容 ​

新增10000名使用者,模擬大量使用者同時使用VMess 協定的情況

測試說明 ​

伺服器端同時支援VMess+MD5+VMessAEAD認證,用戶端使用VMessAEAD進行連線,websocket傳輸模式,10000名使用者,alterId 為0

測試環境 ​

Ubuntu 20.04,4核8G,無 swap

測試方法 ​

用戶端->代理程式->伺服器端(模擬網站)

  1. 使用用戶端透過代理建立3000條連線至伺服器端,用戶端在每條連線中每2秒隨機傳送1KB~16KB的封包至伺服器端,伺服器端在每條連線中每1秒隨機傳送1KB~16KB的封包至用戶端
  2. 每條連線隨機持續30~120秒後關閉,每關閉一條連線後會立刻建立新連線,保持正在執行的連線總數不變
  3. 保持執行10分鐘,再靜置5分鐘,繼續執行5分鐘,最後靜置10分鐘,總共測試30分鐘,記錄 CPU、記憶體、連線數、網速情況

v2ray 監控圖 ​

CPU 間歇上升是因為 VMess 協定每隔 10 秒會為所有使用者生成新的驗證資訊,需要佔用 CPU,VMess 協定特性,以下 xray 和 soga 也是同理

v2ray監控

xray 監控圖 ​

xray監控

soga 監控圖 ​

soga監控

測試資料彙總 ​

程式最高記憶體佔用結束時記憶體佔用高峰時段 CPU 平均佔用率閒置時段 CPU 平均佔用率
v2ray-core(v4.45.2),設定16KB連線快取1079MB565MB33.62%1.45%
xray-core(v1.5.9),設定16KB連線快取1084MB553MB31.74%1.43%
soga(v2.7.7),預設16KB連線快取,未開啟v2ray_reduce_memory,開啟後記憶體可更低604MB276MB21.25%1.58%