負載均衡 LoadBalance 詳解:也稱之爲 F5,以及真實案例介紹
做運維和安全的,幾乎都繞不開一個詞——負載均衡。而一說負載均衡,很多人腦子裏蹦出來的第一個設備就是”F5″。有意思的是,F5 其實是個公司名(F5 Networks),但因爲它的產品太出名,慢慢就成了負載均衡器的代名詞,就像”百度一下”變成了搜索的代稱。

這篇就把它講透:F5 到底是什麼、四層和七層差在哪、真實場景怎麼配。
一、負載均衡到底在解決什麼
負載均衡(Load Balance),本質是把工作任務分攤到多個操作單元上執行——比如 Web 服務器、FTP 服務器、企業關鍵應用服務器,讓它們共同完成工作。
從技術角度看,它對外展現一個虛擬服務器地址。用戶來連的時候,它通過雙向網絡地址轉換(NAT)把連接轉到最合適的真實服務器上。用戶看到的永遠是同一個入口,背後是一羣機器在扛。
它要解決三件事:怕宕機(單點故障)、怕扛不住(性能瓶頸)、怕擴不了(無法橫向擴展)。
二、四層 vs 七層:最容易搞混的地方
區別的核心只有一句話:要不要解析應用層協議。這個差異直接決定了能力邊界和性能表現。
四層負載均衡(傳輸層)
- 工作層級:OSI 第 4 層,TCP/UDP 協議
- 轉發依據:源 IP、目標 IP、端口號——不碰應用數據
- 核心能力:端口轉發、TCP 連接複用、四層健康檢查(TCP 握手)、基礎 DDoS 防護
- 性能:轉發效率極高,接近硬件極限,微秒級延遲
- 典型場景:數據庫(MySQL/Redis)、TCP 服務(遊戲服務器、Netty 服務)、跨機房鏈路負載
- 代表產品:LVS、F5(四層模式)、HAProxy(四層模式)、Nginx(stream 模塊)
七層負載均衡(應用層)
- 工作層級:OSI 第 7 層,HTTP/HTTPS、DNS、FTP 等應用協議
- 轉發依據:URL、Cookie、HTTP 頭、請求參數、JSON 內容
- 核心能力:基於內容路由、SSL 卸載、緩存、限流熔斷、WAF 集成、會話保持、灰度發佈
- 性能:功能豐富,但需解析應用協議,延遲略高(毫秒級),靠集羣擴容彌補
- 典型場景:Web 應用、微服務 API、HTTPS 服務、灰度發佈、API 網關
- 代表產品:Nginx、HAProxy(七層模式)、F5(七層模塊)、Kong、Spring Cloud Gateway
一句話記法:四層看”路牌”(IP 和端口)就轉發,七層要”拆包裹”(看內容)再決定送哪兒。要性能選四層,要花活選七層。
三、F5 BIG-IP 到底強在哪
F5 的主力產品 BIG-IP LTM,官方名稱叫本地流量管理器,能做 4-7 層負載均衡。它不只是個轉發器,功能清單相當長:應用交換、會話交換、狀態監控、智能 NAT、通用持續性、響應錯誤處理、IPv6 網關、高級路由、SSL 加速、智能 HTTP 壓縮、TCP 優化、內容緩衝、Cookie 加密、應用攻擊過濾、DoS 和 SYN Flood 防護、防火牆包過濾……
挑幾個最實用的說:
1. 多鏈路負載均衡和冗餘
關鍵業務往往要接多家 ISP 線路,保證質量、消除單點故障。這裏分兩個方向:
- OUTBOUND 流量(內網訪問外網):BIG-IP LC 把流量智能分配到不同 Internet 接口,並做源地址 NAT
- INBOUND 流量(外網訪問內網):綁定兩個 ISP 的公網地址,解析兩家 ISP 的 DNS 請求,根據服務器健康狀況和 RTT 時間智能回應
2. 服務器負載均衡
通過 VIP(虛擬 IP,由 IP 地址和 TCP/UDP 端口組成)對外提供服務,持續對目標服務器做 L4 到 L7 的健康檢查。一旦發現故障服務器,就從負載均衡組裏摘除。還能配合 iRules 把 TCP/UDP 數據包打開,按內容特徵做規則處理——比如按 URL 把流量導向不同服務器。
3. 系統高可用性
這是 F5 最能吹的地方。雙機冗餘模式下毫秒級切換(最快 200ms 內),號稱 99.999% 可用性。原理是:所有會話經過 Active 設備時,會通過同步數據線把會話信息同步到 Backup 設備——所以切換時用戶訪問不中斷。設備裏的 watchdog 芯片通過心跳線監控對方電頻,Active 掛了立刻通知 Backup 接管 Shared IP 和 VIP。
4. 安全性
BIG-IP 採用防火牆設計原理,缺省拒絕。能拆空閒連接防 DoS、執行源路由跟蹤防 IP 欺騙、拒絕無 ACK 的 SYN 防 SYN 攻擊。它的 Dynamic Reaping 特性能高效刪除 DoS 攻擊中的空閒連接,而且會隨攻擊量增加而加快連接切斷速率——這點挺狠。Delay Binding 技術則給後端服務器提供全面的 SYN Flood 保護。
5. SSL 加速
每臺 BIG-IP 都有 SSL 硬件加速芯片,還自帶 100 個 TPS 的 License,不用單獨付費。後面要擴容,升級 License 就行。

四、F5 還是 Nginx?選型對比
這是實際工作中最常被問到的問題。兩者不是競爭關係,更多是互補。
F5 BIG-IP(硬件)
- 部署形態:專用硬件設備(含定製芯片)
- 性能:百萬級 TCP 連接,微秒級轉發延遲
- 功能:全能型——四層+七層、SSL 卸載、DDoS 防護、WAF、VPN、鏈路負載
- 可靠性:硬件冗餘(雙機熱備),99.999% 可用性
- 成本:高昂(幾十萬到上百萬),需專業工程師維護
- 擴展性:依賴硬件升級,靈活度低
- 運維:複雜,需熟悉專屬配置界面和 CLI
Nginx(軟件)
- 部署形態:軟件,跑在通用服務器或雲主機上
- 性能:十萬級 TCP 連接,毫秒級延遲,可集羣擴容
- 功能:輕量高效——七層爲核心,支持四層、SSL 卸載、緩存、限流、反向代理
- 可靠性:需手動配雙機熱備(Keepalived),依賴服務器硬件穩定性
- 成本:開源免費,Nginx Plus 收費也較低
- 擴展性:支持集羣部署,雲環境可彈性擴容
- 運維:簡單,配置文件易讀,後端工程師能快速上手
選型路口,照着走就行:
- 高併發 TCP 服務(遊戲、證券)+ 極致可用性 → F5 四層
- 核心業務入口 + 安全需求(WAF/DDoS) → F5 七層
- 微服務 API 網關 + 雲環境部署 → Nginx 七層
- 數據庫/Redis 負載 + 高性價比 → Nginx 四層
- 中小規模業務 + 快速迭代 → Nginx(四層/七層)
- 企業級數據中心 + 多鏈路 → F5 做入口,Nginx 做內部服務負載
最後一種組合在實際中大廠很常見——F5 守國門,Nginx 管內部。
五、實戰案例:F5 配置有多繞
很多人拿到 F5 的第一反應是:這跟交換機的思路完全不一樣,根本無從下手。它的配置邏輯是另一套體系。
場景:兩臺 Web 服務器對外服務,IP 爲 192.168.192.10-20/24,要求通過外網地址 192.168.27.100 的 80 端口做負載均衡。
最簡單的負載均衡只需三個參數,關係是層層關聯的:
- Node(節點):最基本的定義,每臺服務器就是一個 Node
- Pool(資源池):一組接收和處理流量的 Node,比如 Web 服務器集羣
- Virtual Server(虛擬服務器):對外入口,關聯到 Pool
數據流向:客戶請求 → Virtual Server → Pool → Node。
實操步驟(BIG-IP 管理界面):
- 第一步:激活設備。拿到 F5 先激活,嚮導很簡單,但記住一定要聯網,最好在上架前完成——這是踩過坑的經驗
- 第二步:登錄。瀏覽器打開 https://管理IP,默認用戶名密碼都是 admin
- 第三步:劃 VLAN。Network → VLANs,創建 VLAN 並把接口加入(選入 Untagged)
- 第四步:配 IP。Networks → Self IPs,給每個 VLAN 定義地址
- 第五步:配路由。Networks → Routes,設默認網關或靜態路由
- 第六步:配 Pool。Local Traffic → Virtual Servers → Pools,設名字、健康檢查(如 TCP)、負載算法(如 observed-member 觀察法)、真實服務器 IP 和端口
- 第七步:配 Virtual Server。Local Traffic → Virtual Servers,關聯上面的 Pool,選輪詢方式(常用 RoundRobin)
- 第八步:配 Monitor。Local Traffic → Monitors,檢查服務器健康狀態並關聯 Pool
- 第九步:配 Redundant,做雙機冗餘
六、Virtual Server 的幾個關鍵參數
F5 的核心就是 Virtual Server,幾個參數不注意會出問題。
VS Type(類型),常見三種:
- Performance L4:純四層轉發,TMM 只負責連接分配,不改 TCP 參數,客戶端與服務器連接是 1:1。轉發速率快,企業中常用。爲減少對應用的影響,能選就優先選這個
- Standard VS:客戶端與服務器 TCP 連接完全獨立。需要七層功能時用(Cookie 會話保持、Session ID 保持、Header 保持、基於交易的長連接拆分、SYN 攻擊防護)。注意一個特性:它的端口永遠對外開放——就算後端 Node 全 down 了,VIP 的 80 端口還是能 telnet 通,只是網頁打不開。用這個排查故障時要記住
- Forwarding IP:用於內外網連接,沒有 Pool Member,轉發取決於本地路由。默認情況下 F5 沒有路由功能,需要建一個全 0 的 VS 來開啓路由功能
Timeout 要對齊(這是真坑)。VS 上如果配了 TCP Profile,那 UDP 連接就不會被接受。更要注意 tcp 裏的 Idle Timeout 值——必須和服務器配合。如果 F5 上設 150 秒,而 IIS 服務器是 300 秒,就會產生大量錯誤。兩邊的時間要商量好。
Address/Port Translation:默認都是 enabled。VS IP 和真實機器 IP 不同時要開 Address Translation;VS 的 8080 端口對應真實地址的 80 端口時,要開 Port Translation。
SNAT AutoMap:請求從哪個 VLAN 出去,SNAT 源地址就是該 VLAN 上的 Self IP。一個 VLAN 上有多個 Self IP 時,會輪詢使用。
七、爲什麼必須懂”會話保持”
這是負載均衡裏最容易被忽略、又最容易出事的概念。
在電商、在線認證這類系統裏,一個客戶要經過多次交互才能完成一筆交易。這些交互密切相關——服務器處理第二步時,往往需要知道第一步的結果。這就要求所有這些交互必須由同一臺服務器完成,不能被負載均衡器分散到不同機器上。
這就是會話保持(Persistence)存在的意義。F5 通過 Connectivity 實現,可選模式包括:
- 源地址保持:按客戶端源 IP 綁定
- Cookie 保持:F5 自動插入會話 Cookie,最常用在七層
- SSL Session ID 保持:複用 SSL 會話
- 會話保持表:支持多種超時和匹配規則
配錯了什麼後果?用戶在購物車裏加了商品,刷新一下東西沒了——因爲請求被分到了另一臺服務器。這類線上故障,排查起來非常費勁。
八、幾個繞不開的實戰細節
最後挑幾個別人踩過的坑,直接給結論:
- 健康檢查要選對層次:只看 TCP 握手,服務器端口活着但應用掛了照樣被轉發;要檢查應用層,就用 HTTP 類型 Monitor 探 /actuator/health 這類接口
- 防火牆要做”三明治”:單臺防火牆往往只能達到線速的 30% 吞吐,要提升就得堆多臺。但防火牆要求數據同進同出,否則連接被拒——F5 的防火牆負載均衡方案能解決這個問題,實現透明設備的持續性
- SSL 卸載是省 CPU 的大頭:讓 F5 處理 HTTPS 握手和加解密,後端 Java 應用只處理 HTTP,性能提升明顯
- 連生產環境前先做壓測:四層雖快,但如果你在四層 VS 上開了會話保持,等於引入了狀態,性能預期要重新算
- 監控指標盯三個:池狀態、虛擬服務器吞吐量、節點健康狀態
- 排障命令:tmsh show ltm pool <pool-name> 看池狀態,tmsh show ltm virtual <vs-name> 看虛擬服務器狀態

寫在最後
負載均衡看着是個”轉發設備”,實際上它站在整個架構最關鍵的位置——所有流量都要從它手裏過。它配得好,用戶感覺不到它的存在;它配得差,半夜的電話就找你。
現在雲原生的浪潮下,LVS、Nginx、HAProxy 這些軟件方案在中小場景完全夠用,成本優勢明顯。但涉及金融、證券、大型電商的核心入口,硬件負載均衡在穩定性、毫秒級切換、一站式安全能力上的價值,短期還是替代不了。
至於”F5″這個名字,從公司變成品類的過程本身就很說明問題——當一個產品被當作動詞用的時候,它就已經贏得了這個市場。
四層看路牌,七層拆包裹;性能選四層,花活選七層。
參考:F5 BIG-IP LTM 官方資料、《網絡運維與管理》F5 負載均衡案例、四層/七層負載均衡技術對比