而這一系列的相關的互動過程可能是由客戶到伺服器的乙個連線的多次會話完成,也可能是在客戶與伺服器之間的多個不同連線裡的多次會話完成。不同連線的多次
會話,最典型的例子就是基於http的訪問,乙個客戶完成一筆交易可能需多次點選,而乙個新的點選產生的請求,可能會重用上一次點選建立起來的連線,也可
能是乙個新建的連線。
會話保持就是指在負載均衡器上有這麼一種機制,可以識別做客戶與伺服器之間互動過程的關連性,在作負載均衡的同時,還保證一系列相關連的訪問請求會保持分配到一台伺服器上。
session id的會話保持,i-rules會話保持以及基於http cookie的會話保持,此外還有基於sip
id以及cache裝置的會話保持等,但常用的是簡單會話保持,http header的會話保持以及 http
cookie會話保持以及基於i-rules的會話保持。
2.1 簡單會話保持
簡單會話保持也被稱為基於源位址的會話保持,是指負載均衡器在作負載均衡時是根據訪問請求的源位址作為判斷關連會話的依據。對來自同一ip位址的所有訪問
請求在作負載均時都會被保持到一台伺服器上去。在big-ip裝置上可以為「同一ip位址」通過網路掩碼進行區分,比如可以通過對ip位址
192.168.1.1進行255.255.255.0的網路掩碼,這樣只要是來自於192.168.1.0/24這個網段的流量bigip都可以認為他
們是來自於同乙個使用者,這樣就將把來自於192.168.1.0/24網段的流量會話保持到特定的一台伺服器上。
簡單會話保持裡另外乙個很重要的引數就是連線超時值,bigip會為每乙個進行會話保持的會話設定乙個時間值,當乙個會話上一次完成到這個會話下次再來之
前的間隔如果小於這個超時值,bigip將會將新的連線進行會話保持,但如果這個間隔大於該超時值,bigip將會將新來的連線認為是新的會話然後進行負
載平衡。
基於原位址的會話保持實現起來簡單,只需要根據資料報
三、四層的資訊就可以實現,效率也比較高。存在的問題就在於當多個客戶是通過**或位址轉換的方式來
訪問伺服器時,由於都分配到同一臺伺服器上,會導致伺服器之間的負載嚴重失衡。另外一種情況上客戶機數量很少,但每個客戶機都會產生多個併發訪問,對這些
併發訪問也要求通過負載均衡器分配到多個服器上,這時基於客戶端源位址的會話保持方法也會導致負載均衡失效。
2.2 基於cookie的會話保持
2.2.1 cookie插入模式:
在cookie插入模式下,big-ip將負責插入cookie,後端伺服器無需作出任何修改
當客戶進行第一次請求時,客戶http請求(不帶cookie)進入big-ip,
big-ip根據負載平衡演算法策略選擇後端一台伺服器,並將請求傳送至該伺服器,後端伺服器進行http回覆(不帶cookie)被發回bigip,然後
big-ip插入cookie,將http回覆返回到客戶端。當客戶請求再次發生時,客戶http請求(帶有上次bigip插入的cookie)進入
bigip,然後bigip讀出cookie裡的會話保持數值,將http請求(帶有與上面同樣的cookie)發到指定的伺服器,然後後端伺服器進行請
求回覆,由於伺服器並不寫入cookie,http回覆將不帶有cookie,恢復流量再次經過進入big-ip時,big-ip再次寫入更新後的會話保
持 cookie。
2.2.2 cookie 重寫模式
當客戶進行第一次請求時,客戶http請求(不帶cookie)進入bigip,
bigip根據負載均衡演算法策略選擇後端一台伺服器,並將請求傳送至該伺服器,後端伺服器進行http回覆乙個空白的cookie並發回bigip,然後
bigip重新在cookie裡寫入會話保持數值,將http回覆返回到客戶端。當客戶請求再次發生時,客戶http請求(帶有上次bigip重寫的
cookie)進入bigip,然後bigip讀出cookie裡的會話保持數值,將http請求(帶有與上面同樣的cookie)發到指定的伺服器,然
後後端伺服器進行請求回覆,http回覆裡又將帶有空的cookie,恢復流量再次經過進入bigip時,bigip再次寫入更新後會話保持數值到該
cookie。
2.2.3 passive cookie 模式,伺服器使用特定資訊來設定cookie。
當客戶進行第一次請求時,客戶http請求(不帶cookie)進入bigip,
bigip根據負載平衡演算法策略選擇後端一台伺服器,並將請求傳送至該伺服器,後端伺服器進行http回覆乙個cookie並發回bigip,然後
bigip將帶有伺服器寫的cookie值的http回覆返回到客戶端。當客戶請求再次發生時,客戶http請求(帶有上次伺服器寫的cookie)進入
bigip,然後bigip根據cookie裡的會話保持數值,將http請求(帶有與上面同樣的cookie)發到指定的伺服器,然後後端伺服器進行請
求回覆,http回覆裡又將帶有更新的會話保持cookie,恢復流量再次經過進入bigip時,bigip將帶有該cookie的請求回覆給客戶端。
2.2.4 cookie hash模式:
當客戶進行第一次請求時,客戶http請求(不帶cookie)進入bigip,
bigip根據負載均衡演算法策略選擇後端一台伺服器,並將請求傳送至該伺服器,後端伺服器進行http回覆乙個cookie並發回bigip,然後
bigip將帶有伺服器寫的cookie值的http回覆返回到客戶端。當客戶請求再次發生時,客戶http請求(帶有上次伺服器寫的cookie)進入
bigip,然後bigip根據cookie裡的一定的某個位元組的位元組數來決定後台伺服器接受請求,將http請求(帶有與上面同樣的cookie)發到
指定的伺服器,然後後端伺服器進行請求回覆,http回覆裡又將帶有更新後的cookie,恢復流量再次經過進入bigip時,bigip將帶有該
cookie的請求回覆給客戶端。
2.3 ssl session id會話保持
在使用者的ssl訪問系統的環境裡,當ssl對話首次建立時,使用者與伺服器進行首次資訊交換以:1}交換安全證書,2)商議加密和壓縮方法,3)為每條對話
建立session id。由於該session
id在系統中是乙個唯一數值,由此,bigip可以應用該數值來進行會話保持。當使用者想與該伺服器再次建立連線時,bigip可以通過會話中的 ssl
session id識別該使用者並進行會話保持。
基於ssl session id的會話保持就需要客戶瀏覽器在進行會話的過程中始終保持其ssl session
id不變,但實際上,微軟internet explorer被發現在經過特定一段時間後將主動改變ssl session id,這就使基於ssl
session id的會話保持實際應用範圍大大縮小。
**:
f5 會話保持 負載均衡 F5會話保持
最近專案中需要使用f5做負載均衡,將相關資料記錄下來。以下是f5變更申請中的相關引數說明,我們就以此順藤摸瓜,我們挑幾個重要引數去學習吧。伺服器實際位址與埠 提供服務的真實伺服器ip位址與提供服務的埠。對外服務位址與埠 f5裝置向外提供服務的ip位址與埠,此選項可向網路處申請。負載均衡演算法 f5裝...
F5會話保持
最近專案中需要使用f5做負載均衡,將相關資料記錄下來。以下是f5變更申請中的相關引數說明,我們就以此順藤摸瓜,我們挑幾個重要引數去學習吧。伺服器實際位址與埠 提供服務的真實伺服器ip位址與提供服務的埠。對外服務位址與埠 f5裝置向外提供服務的ip位址與埠,此選項可向網路處申請。負載均衡演算法 f5裝...
F5隨便寫寫
f5是鏈路負載均和和伺服器負載均衡方面的領先產品,特別是在伺服器負載均衡,在中國可謂是一家獨大,當然國內的產品也逐步的崛起如深信服。f5相關資訊 2 命令列下可以使用root default 這是超級管理員在這個賬號下可以做很多操作比如cd share images下使用ls檢視檔案情況,switc...