改善站點對站點 VPN 的吞吐量和效能

遵循這些建議的最佳作法,以最佳化站點到站點 VPN 吞吐量,同時維持穩定的連線。 您可以透過設定 VPN 閘道、加密設定 (使用 IKEv2 和 AES- GCM )、路由和網路參數 (MTU/MSS),將效能發揮到極致。 在啟用分散式流量的主動-主動模式下部署時,路由型 VPN 在最佳條件下最多可支援 2 Gbps 的聚合吞吐量。

在下列情況下,吞吐量可能較低:

  • 使用以政策為基礎的 VPN。
  • 未啟用分散式流量。
  • 只有單一流量是活動的。
  • 對等 VPN 裝置的 CPU 受限。
  • 發生網路分割。

實際吞吐量取決於對等裝置容量、可用的 ISP 頻寬、路由設定、封包大小、流量模式和其他環境因素。 以下指南涵蓋模式選擇、加密調整、網路組態和作業最佳實務,協助您接近最佳效能。

開始之前

要達到最佳效果,請遵循以下建議:

  • 在部署到生產環境之前,先在您自己的測試環境中測試效能。
  • 確保您的內部 VPN 裝置符合您的吞吐量需求。
  • 確認您的 ISP 頻寬符合您預期的 VPN 容量。

在繼續之前,請完成下列先決條件:

  • 請確定您的站點對站點 VPN 閘道已設定,且兩條 VPN 通道都已啟用。
  • 確認您有權限修改內部對等裝置上的組態設定。
  • 確認閘道和對等裝置支援 IKEv2 和 AES‑GCM
  • 確認您擁有在您的內部裝置上修改 MTU 和 MSS 設定的權限。
  • 在 IBM Cloud 虛擬伺服器實例和您的內部部署主機上安裝 iperf,以驗證效能。

選擇 VPN 模式以獲得最大吞吐量

IBM Cloud 支援基於路由和政策的站點對站點 VPN 模式。 您所選擇的模式會直接影響可達成的吞吐量。

路由型 VPN (建議使用)

基於路由的 VPN 可提供最高的吞吐量潛力。 以主動-主動模式部署並啟用流量分散功能時,流量可以同時流經兩條隧道。

為了最大化吞吐量:

  1. 使用基於路由的 VPN。
  2. 設定隧道到兩個基於路由的 VPN 公共 IP 位址。
  3. 啟用 Distribute traffic(分散流量 ),使兩條隧道都主動轉送流量。
  4. 測試時產生多個並發流量,以充分利用可用頻寬。

在受控測試下觀察到的效能顯示,單一隧道可處理大約 1.6 Gbps 的速度,在使用建議的架構和密碼設定設定時,兩條隧道的總速度可高達 2 Gbps。 這些數字是測試的範例,並不保證適用於您的環境。

如果停用分散式流量,每次只有一條隧道傳輸流量,通常會導致整體吞吐量降低。

政策型 VPN

政策型 VPN 一次只支援單一活動隧道。 僅在故障移轉期間,次要隧道才會變為作用中。

由於流量無法在隧道間分散,因此吞吐量通常比路由型 VPN 低。 僅在您的網路拓樸或對等裝置限制需要時,才使用政策式 VPN。

加密演算法:AES vs AES- GCM

VPN 流量使用 IPsec 加密,加密算法的選擇會影響安全性和效能:

  • AES (Advanced Encryption Standard)- 廣泛使用的加密標準,提供強大的安全性。 當使用獨立的雜湊完整性 (AES-CBC) 時,會產生稍高的開銷。

  • AES- GCM (Galois/Counter Mode)- AES 的現代變體將加密和完整性檢查結合在單一操作中。 AES- GCM 支援平行處理,通常比標準 AES-CBC 提供更高的吞吐量。

只要兩個 VPN 對等端都支援,就使用 AES- GCM,以在不影響安全性的情況下最大化吞吐量。

下表總結了在 IBM 的內部網路中測試的最小基準吞吐量範例值。 這些數字代表在受控測試條件下觀察到的結果,「並非」您環境中實際效能的保證。 實際吞吐量取決於對等裝置容量、可用的 ISP 頻寬、路由設定、封包大小、流量模式、運算能力以及其他網路條件。

使用 AES 和 GCM 密碼套件的路由型和政策型 VPN 的基準吞吐量範例。
VPN 模式 僅 AES AES- GCM
基於路由的分散式 ~1.6 Gbps ~1.6 Gbps
基於路由的非分散式 ~674 Mbps ~1.11 Gbps
原則型 ~598 Mbps ~1.11 Gbps

為效能配置密碼設定

在 IBM Cloud VPC 與您的內部網路之間的站點對站點 VPN 中,流量使用 IPsec 通訊協定加密。 在加密開始之前,會使用網際網路金鑰交換 (IKE) 通訊協定進行安全的金鑰交換,此通訊協定包含兩個階段:

  • 第 1 階段:在 VPN 對等方之間建立安全且經過認證的通訊通道。
  • 第二階段:協商用於加密實際資料流量的 IPsec 安全關聯 (SA)。

加密方式的選擇會直接影響 VPN 的效能,因為加密、雜湊和金鑰交換作業會消耗雙方對等端的 CPU 資源。 選擇高效且安全的演算法有助於最大化吞吐量並維持穩定的連線。

選擇 IKE 通訊協定版本

IKE 在 VPN 裝置之間建立安全、經驗證的通訊通道。 它會協商安全參數、交換金鑰並設定加密隧道。

IBM Cloud 同時支援 IKEv1 和 IKEv2。 不過,建議使用 IKEv2,因為它:

只要您的對等裝置支援,請使用 IKEv2。

第 1 階段 (IKE) 加密設定

在第 1 階段,VPN 對等體互相驗證,並建立安全通道以進一步協商。 雜湊演算法有助於確保經由 VPN 通道傳送的資料不會被竄改。 它們會建立資料的獨特指紋 (散列),並在接收端進行驗證。 如需詳細資訊,請參閱 第 1 階段支援的演算法

為 Phase 1 設定下列值:

  • 驗證:SHA‑256SHA‑384
  • Diffie-Hellman (DH) 群組:1419
  • 壽命:預設值,除非您的環境需要較短的間隔時間

確保您的對等網路支援所選的雜湊演算法。 否則,請使用 SHA-256SHA-384,除非需要更強的演算法才能符合規定。

第 2 階段 (IPsec) 加密設定

在第 2 階段,VPN 對等方會協商 IPsec SA,以定義實際資料流量的加密方式。 加密密碼器會擾亂資料,並保護您流量的機密性,因此只有授權方可讀取資料。 如需詳細資訊,請參閱 第 2 階段支援的演算法

為 Phase 2 設定下列值:

  • 加密:AES‑GCM (建議使用)
  • 壽命:預設為穩定

AES-GCM 通常可提供比 AES-CBC 更高的吞吐量。 它支援平行處理,並提供內建的完整性保護,省去了分開散列的需要。

最佳化 MTU 和 MSS 以防止封包碎裂

MTU (Maximum Transmission Unit,最大傳輸單位) 和 MSS (Maximum Segment Size,最大分段大小) 等網路參數會直接影響 VPN 的吞吐量。 碎片或封包遺失會降低效能。

若要最佳化 MTU 和 MSS,請遵循下列步驟:

  1. 在您的內部裝置上,將 MSS 設定為 1360 位元組。 此值會計入 IPsec 開銷,並避免 TCP 封包中的碎片。 如需詳細資訊,請參閱 MSS 箝位 以限制 TCP 封包的 MSS。

  2. 使用 ping 測試驗證 MTU,檢查封包的大小。

    ping -s 1472 -M do DESTINATION
    

    其中:

    -s 1472
    傳送具有 1472 位元組有效負載的封包。
    -M do
    設定「不分片」(Don't Fragment, DF) 標記,以防止分片。
    DESTINATION
    您要測試的 IP 位址或主機名稱。

    在 Windows 上:

    ping www.example.com -f -l 1472
    

    其中:

    -f
    設定封包中的「不分片」標誌,可協助您測試在不分片的情況下傳送的最大大小。
    -l
    指定有效負載大小(以位元組為單位元組,不包括標頭)。

    對於 IBM VPN for VPC,MTU 為 1500 位元組,建議的 MSS 為 1360 位元組。 如果發生碎片,請將 MTU 縮小為 1490 位元組。

最佳化這些參數有助於確保充分利用可用的 VPN 吞吐量。

設定 VPN 閘道

最佳化 VPN 閘道可確保流量能有效率地流通,並在支援時使用兩條隧道。

若要最佳化 VPN 閘道設定,請遵循下列步驟:

  1. 啟用分散流量的路由型 VPN 模式。

    • 路由型 VPN- 當啟用「分散流量」選項時,流量會同時流經兩條 VPN 通道。 此外,將更多對等體連線至閘道可更好地分配流量負載,從而提高整體吞吐量。 如需詳細資訊,請參閱 為基於路由的 VPN 分配流量

      在沒有分散流量的靜態路由型 VPN 連線中,只使用一條隧道,這會降低整體吞吐量。

    • 政策式 VPN- 同時只有一個 VPN 通道處於活動狀態。 只有當主隧道故障時,次要隧道才會啟動,這會降低吞吐量。 在此模式下,「分散流量」不可用。

  2. 確保 VPN 閘道與您的 VPC 子網路位於同一可用性區域,以避免跨區延遲。 如需詳細資訊,請參閱 何時流量不會透過路由型 VPN 閘道路由?

  3. 將高流量隧道移至專用 VPN 閘道,因為整體吞吐量取決於閘道的總容量。 如果您在單一閘道上建立了多個連線,請考慮將它們移到單獨的閘道上,這有助於減少共用裝置的負載,並提高吞吐量的穩定性。

  4. 停用未使用的隧道,因為這些隧道會增加 IKE 和重新鍵入的開銷,所有這些都必須加密和解密。

  5. 確保路由正確傳播至 VPC 路由表。 來源 IP 位址必須符合設定的 VPN 本端子網路範圍,以防止流量繞道。 此外,請確定不存在重疊的 CIDR。

  6. 啟用 NAT-T。 如果您的內部 VPN 裝置位於 NAT 之後,或 ESP (Encapsulating Security Payload) 流量被中間裝置阻擋。 NAT-T 將 IPsec 封包封裝在 UDP 中,允許流量穿越 NAT 裝置。

檢討作業考量

其他作業因素也會影響 VPN 的效能:

  • 確保對等網路中的防火牆允許 IBM Cloud VPC CIDR,以避免節流和速率限制錯誤。
  • 確認您的 ISP 沒有限制網路流量。
  • 透過 Transit Gateway 連接其他環境或工作負載時,請僅使用政策型 VPN(此拓樸不支援路由型)。 如需詳細資訊,請參閱 設定 VPN 閘道的路由傳播

驗證吞吐量

使用 iperf 等網路效能工具定期測試 VPN 吞吐量,以確保效能維持在預期範圍內。 您必須在伺服器和用戶端系統上安裝 iperf。 若要使用 iperf,請遵循下列步驟:

  1. 在伺服器上 ( IBM Cloud 或內部主機),啟動 iperf 伺服器,聽取傳入的連線:

    iperf -s
    
  2. 在用戶端啟動從用戶端到伺服器的測試:

    iperf -c SERVER_IP_ADDRESS
    
  3. 檢閱頻寬、傳輸速度和其他指標的輸出。

遵循這些最佳實務,您可以大幅提升站點對站點 VPN 的吞吐量,同時維持安全穩定的連線。

完成這些步驟後,再次測量您的 VPN 吞吐量,並將結果與您在進行變更前取得的基準值進行比較。 此比較有助於確認最佳化是否有效,並可讓您找出任何剩餘的瓶頸,例如對等裝置 CPU 限制、ISP 限制或流量模式效率低。

如果吞吐量仍未達到您的要求,請有條不紊地檢查每個組態區域,並在每次調整後進行效能驗證。 持續的測試和調整有助於確保您的 VPN 部署在環境中盡可能高效可靠地運作。