全部產品
Search
文件中心

Server Load Balancer:網路流量路徑說明

更新時間:Feb 28, 2024

傳統型負載平衡CLB作為流量轉寄服務,將來自用戶端的請求通過CLB叢集轉寄至後端伺服器,後端伺服器再將響應通過內網返回給CLB

入網流量路徑

對於入網流量,CLB會根據使用者在控制台或開發人員門戶上配置的轉寄策略,對來自前端的訪問請求進行轉寄和處理,資料流轉如下圖所示。

圖 1. 入網流量路徑

  1. TCP/UDP協議和HTTP/HTTPS協議的流量都需要經過四層叢集進行轉寄。

  2. 四層叢集內的每一台節點伺服器均勻地分配海量訪問請求,並且每一台節點伺服器之間都有會話同步策略,以保證高可用。

    • 如果相應的CLB執行個體服務連接埠使用的是四層協議(TCP或UDP),那麼四層叢集內每個節點都會根據CLB執行個體的策略,將其承載的服務要求按策略直接分發到後端Elastic Compute Service (ECS)

    • 如果相應的CLB執行個體服務連接埠使用的是七層HTTP協議,那麼四層叢集內每個節點會先將其承載的服務要求均分到七層叢集,七層叢集內的每個節點再根據CLB策略,將服務要求按策略最終分發到後端ECS伺服器。

    • 如果相應的CLB執行個體服務連接埠使用的是七層HTTPS協議,與上述HTTP處理過程類似,差別是在按策略將服務要求最終分發到後端ECS伺服器前,先調用Key Server進行認證驗證及資料包加解密等前置操作。

出網流量路徑

CLB和後端ECS之間是通過內網進行通訊的。

  • 如果ECS僅僅處理來自CLB的請求,可以不購買公網頻寬(ECS、公網IP、Elastic IP Address(Elastic IP Address,簡稱EIP)、任播Elastic IP Address( Anycast Elastic IP Address,簡稱Anycast EIP)、NAT Gateway等)。

    說明

    早期建立的一些ECS上直接分配了公網IP(在執行個體中執行ipconfig命令可以查看公網IP地址),此類ECS如果僅通過CLB對外提供服務,即便在公網介面(網卡)上看到有流量統計,也不會產生ECS的公網費用。

  • 如果需要直接通過後端ECS對外提供服務,或後端ECS有訪問外網的需求,那麼需要相應的配置或購買ECS、公網IP、EIP、Anycast EIP、NAT Gateway等服務。

ECS的公網流量訪問路徑如下圖所示。

圖 2. 出網流量路徑

總體原則:流量從哪裡進來,就從哪裡出去。

  • 通過CLB進入的流量在CLB上限速或計費,CLB到ECS之間是阿里雲內網通訊,不收取公網流量費用。

  • 來自EIP或NAT Gateway的流量,分別在EIP或NAT Gateway上進行限速或計費。如果在購買ECS時選擇了公網頻寬,限速/計費點在ECS上。

  • CLB僅提供被動訪問公網的能力,即後端ECS只能在收到通過CLB轉寄來的公網的請求時,才能訪問公網回應該請求,如後端ECS希望主動發起公網訪問,則需要ECS綁定EIP或搭配NAT Gateway來實現。

  • ECS公網頻寬(購買ECS時配置)、EIP、Anycast EIP、NAT Gateway均可以實現ECS的雙向公網訪問(訪問或被訪問),但沒有流量分發和負載平衡的能力。