當前,無論在企業網、園區網還是在廣域網如Internet上,業務量的發展都超出了過去最樂觀的估計,上網熱潮風起云涌,新的應 用層出不窮,即使按照當時最優配置建設的網絡,也很快會感到吃不消。尤其是各個網絡的核心部分,其數據流量和計算強度之大,使得單一設備根本無法承擔,而如何在完成同樣功能的多個網絡設備之間實現合理的業務量分配,使之不致于出現一臺設備過忙、而別的設備卻未充分發揮處理能力的情況,就成了一個問題,負載均衡機制也因此應運而生。
負載均衡建立在現有網絡結構之上,它提供了一種廉價有效的方法擴展服務器帶寬和增加吞吐量,加強網絡數據處理能力,提高網絡的靈活性和可用性。它主要完成以下任務:解決網絡擁塞問題,服務就近提供,實現地理位置無關性 ;為用戶提供更好的訪問質量;提高服務器響應速度;提高服務器及其他資源的利用效率;避免了網絡關鍵部位出現單點失效。
其實,負載均衡并非傳統意義上的“均衡”,一般來說,它只是把有可能擁塞于一個地方的負載交給多個地方分擔。如果將其改稱為“負載分擔”,也許更好懂一些。說得通俗一點,負載均衡在網絡中的作用就像輪流值日制度,把任務分給大家來完成,以免讓一個人累死累活。不過,這種意義上的均衡一般是靜態的,也就是事先確定的“輪值”策略 。
與輪流值日制度不同的是,動態負載均衡通過一些工具實時地分析數據包,掌握網絡中的數據流量狀況,把任務合理分配出去。結構上分為本地負載均衡和地域負載均衡(全局負載均衡),前一種是指對本地的服務器集群做負載均衡,后一種是指對分別放置在不同的地理位置、在不同的網絡及服務器群集之間作負載均衡。
服務器群集中每個服務結點運行一個所需服務器程序的獨立拷貝,諸如 Web、FTP、Telnet或e-mail服務器程序。對于某些服務(如運行在Web服務器上的那些服務)而言,程序的一個拷貝運行在群集內所有的主機上,而網絡負載均衡則將工作負載在這些主機間進行分配。對于其他服務(例如e-mail),只有一臺主機處理工作負載,針對這些服務,網絡負載均衡允許網絡通訊量流到一個主機上,并在該主機發生故障時將通訊量移至其他主機。