lvs三種模式的優缺點


1、Virtual server via NAT(VS-NAT) 前端

優勢:集羣中的物理服務器可使用任何支持TCP/IP操做系統,物理服務器能夠分配Internet的保留私有地址,只有負載均衡器須要一個合法的IP地址。 算法

缺點:擴展性有限。當服務器節點(普通PC服務器)數據增加到 20個或更多時,負載均衡器將成爲整個系統的瓶頸,由於全部的請求包和應答包都須要通過負載均衡器再生。假使TCP包的平均長度是536字節的話,平均包 再生延遲時間大約爲60us(在Pentium處理器上計算的,採用更快的處理器將使得這個延遲時間變短),負載均衡器的最大允許能力爲8.93M/s, 假定每臺物理服務器的平臺允許能力爲400K/s來計算,負責均衡器能爲22臺物理服務器計算。 後端

解決辦法:即便是是負載均衡器成爲整個系統的瓶頸,若是是這樣也有兩種方法來解決它。一種是混合處理,另外一種是採用Virtual Server via IP tunneling或Virtual Server via direct routing。若是採用混合處理的方法,將須要許多同屬單一的RR DNS域。你採用Virtual Server via IP tunneling或Virtual Server via direct routing以得到更好的可擴展性。也能夠嵌套使用負載均衡器,在最前端的是VS-Tunneling或VS-Drouting的負載均衡器,而後後面採用VS-NAT的負載均衡器。 服務器

2、Virtual server via IP tunneling(VS-TUN) 併發

咱們發現,許多Internet服務(例如WEB服務器)的請求包很短小,而應答包一般很大。 負載均衡

優勢:負載均衡器只負責將請求包分發給物理服務器,而物理服務器將應答包直接發給用戶。因此,負載均衡器能處理很巨大的請求量,這種方式,一臺負載均衡能 爲超過100臺的物理服務器服務,負載均衡器再也不是系統的瓶頸。使用VS-TUN方式,若是你的負載均衡器擁有100M的全雙工網卡的話,就能使得整個 Virtual Server能達到1G的吞吐量。 操作系統

不足:可是,這種方式須要全部的服務器支持"IP Tunneling"(IP Encapsulation)協議,我僅在Linux系統上實現了這個,若是你能讓其它操做系統支持,還在探索之中。 server

3、Virtual Server via Direct Routing(VS-DR) ci

優勢:和VS-TUN同樣,負載均衡器也只是分發請求,應答包經過單獨的路由方法返回給客戶端。與VS-TUN相比,VS-DR這種實現方式不須要隧道結構,所以可使用大多數操做系統作爲物理服務器,其中包括:Linux 2.0.3六、2.2.九、2.2.十、2.2.12;Solaris 2.5.一、2.六、2.7;FreeBSD 3.一、3.二、3.3;NT4.0無需打補丁;IRIX 6.5;HPUX11等。 路由

不足:要求負載均衡器的網卡必須與物理網卡在一個物理段上

。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。

1、NAT模式(VS-NAT)

原理:就是把客戶端發來的數據包的IP頭的目的地址,在負載均衡器上換成其中一臺RS的IP地址,併發至此RS來處理,RS處理完成後把數據交給通過負載 均衡器,負載均衡器再把數據包的原IP地址改成本身的IP,將目的地址改成客戶端IP地址便可。期間,不管是進來的流量,仍是出去的流量,都必須通過負載 均衡器。

優勢:集羣中的物理服務器可使用任何支持TCP/IP操做系統,只有負載均衡器須要一個合法的IP地址。

缺點:擴展性有限。當服務器節點(普通PC服務器)增加過多時,負載均衡器將成爲整個系統的瓶頸,由於全部的請求包和應答包的流向都通過負載均衡器。當服務器節點過多時,大量的數據包都交匯在負載均衡器那,速度就會變慢!

2、IP隧道模式(VS-TUN)

原理:首先要知道,互聯網上的大多Internet服務的請求包很短小,而應答包一般很大。那麼隧道模式就是,把客戶端發來的數據包,封裝一個新的IP頭 標記(僅目的IP)發給RS,RS收到後,先把數據包的頭解開,還原數據包,處理後,直接返回給客戶端,不須要再通過負載均衡器。注意,因爲RS須要對負 載均衡器發過來的數據包進行還原,因此說必須支持IPTUNNEL協議。因此,在RS的內核中,必須編譯支持IPTUNNEL這個選項

優勢:負載均衡器只負責將請求包分發給後端節點服務器,而RS將應答包直接發給用戶。因此,減小了負載均衡器的大量數據流動,負載均衡器再也不是系統的瓶頸,就能處理很巨大的請求量,這種方式,一臺負載均衡器可以爲不少RS進行分發。並且跑在公網上就能進行不一樣地域的分發。

缺點:隧道模式的RS節點須要合法IP,這種方式須要全部的服務器支持」IP Tunneling」(IP Encapsulation)協議,服務器可能只侷限在部分Linux系統上。

3、直接路由模式(VS-DR)

原理:負載均衡器和RS都使用同一個IP對外服務。但只有DR對ARP請求進行響應,全部RS對自己這個IP的ARP請求保持靜默。也就是說,網關會把對 這個服務IP的請求所有定向給DR,而DR收到數據包後根據調度算法,找出對應的RS,把目的MAC地址改成RS的MAC(由於IP一致)並將請求分發給 這臺RS。這時RS收到這個數據包,處理完成以後,因爲IP一致,能夠直接將數據返給客戶,則等於直接從客戶端收到這個數據包無異,處理後直接返回給客戶 端。因爲負載均衡器要對二層包頭進行改換,因此負載均衡器和RS之間必須在一個廣播域,也能夠簡單的理解爲在同一臺交換機上。

優勢:和TUN(隧道模式)同樣,負載均衡器也只是分發請求,應答包經過單獨的路由方法返回給客戶端。與VS-TUN相比,VS-DR這種實現方式不須要隧道結構,所以可使用大多數操做系統作爲物理服務器。

缺點:(不能說缺點,只能說是不足)要求負載均衡器的網卡必須與物理網卡在一個物理段上。

相關文章
相關標籤/搜索