轉載請說明出處:http://blog.csdn.net/cywosp/article/details/38056811
在TCP/IP協(xié)議中數(shù)據(jù)鏈路層處于最底層,以幀的形式傳輸和接受數(shù)據(jù)。在這一層中MAC(Media Access Control)尋址是主要功能。在網(wǎng)絡中MAC又稱之為MAC地址,用于表示互聯(lián)網(wǎng)上每個網(wǎng)卡的標識符,采用十六進制表示,共6個字節(jié)(48位),燒錄在網(wǎng)卡內(nèi)部。更形象的說MAC地址就像身份證號碼,全球唯一。以太網(wǎng)中數(shù)據(jù)幀之間是通過MAC尋址來到達對應的計算機網(wǎng)卡或者路由的,因此,服務器集群可以充分利用這一特性來進行負載均衡。
數(shù)據(jù)鏈路層負載均衡通過修改通信協(xié)議數(shù)據(jù)包的mac地址進行負載均衡,集群可以通過如下圖的部署來達到負載均衡:
這種數(shù)據(jù)傳輸方式又稱為三角傳輸,負載均衡數(shù)據(jù)分發(fā)過程中不修改IP地址,只修改目的MAC地址,通過配置真實物理服務器集群所有機器虛擬IP和負載均衡服務器IP一致,從而達到不修改數(shù)據(jù)包的源地址和目的地址就可以進行數(shù)據(jù)分發(fā)的目的,由于實際處理請求的真實物理服務器IP和數(shù)據(jù)請求目的IP一致,不需要通過負載均衡服務器進行地址交換,可將響應數(shù)據(jù)包直接返回給用戶瀏覽器,避免負載均衡服務器網(wǎng)卡帶寬成為瓶頸。這種負載均衡方式又稱之為直接路由方式(DR).
如上圖所示,用戶請求到達負載均衡服務器114.100.20.200后,負載均衡服務器將數(shù)據(jù)包的目的MAC地址更改為00:1e:ec:bc:5e:03,并不修改數(shù)據(jù)包目的IP,由于服務器集群所有服務器的虛擬IP地址和負載均衡服務器IP地址一致,因此數(shù)據(jù)可以正常傳輸?shù)竭_MAC地址為00:1e:ec:bc:5e:03的機器上,該服務器處理完之后,將響應數(shù)據(jù)包發(fā)送到網(wǎng)關服務器,網(wǎng)關服務器直接將數(shù)據(jù)包發(fā)送給用戶瀏覽器,響應數(shù)據(jù)不需要通過負載均衡服務器,這樣就避免了負載均衡服務器成為傳輸瓶頸的可能。
使用三角傳輸模式的鏈路層負載均衡是目前大型網(wǎng)站使用最為廣泛的一種負載均衡手段。在Linux平臺上最好的鏈路層負載均衡開源產(chǎn)品是LVS(Linux Virtual Server)。
參考:
[1] 《大型網(wǎng)站技術架構——核心原理與案例分析》
|
|
來自: WindySky > 《 每天進步一點點》