SDN負(fù)載均衡之爭:控制器還是ADC?
- 來源:中國信息化周報 smarty:if $article.tag?>
- 關(guān)鍵字:流量,效率,隊伍 smarty:/if?>
- 發(fā)布時間:2015-04-13 09:59
隨著軟件定義網(wǎng)絡(luò)的出現(xiàn),有關(guān)應(yīng)用交付控制器(ADC)的需求問題也出現(xiàn)了。應(yīng)用交付控制器(ADC)分布在一組Web服務(wù)器中,功能是保持這些服務(wù)器的負(fù)載均衡。軟件定義網(wǎng)絡(luò)(SDN)控制器是否可以接管應(yīng)用交付控制器ADC的角色,成為有影響力的軟件定義網(wǎng)絡(luò)負(fù)載均衡器,從而消除應(yīng)用交付控制器在網(wǎng)絡(luò)中的位置呢?
像應(yīng)用交付控制器一樣,軟件定義網(wǎng)絡(luò)控制器可以基于隊列長度和處理延遲來監(jiān)控Web服務(wù)器的單個負(fù)載,并將收到的數(shù)據(jù)請求發(fā)送給負(fù)載最輕的服務(wù)器。
如果簡單的負(fù)載均衡是應(yīng)用交付控制器的唯一功能,那么軟件定義網(wǎng)絡(luò)控制器真的可能將其淘汰掉。然而,應(yīng)用交付控制器可以做的不僅僅是分配服務(wù)器之間的應(yīng)用需求。
在常規(guī)網(wǎng)絡(luò)中,數(shù)據(jù)流經(jīng)做路由決策的設(shè)備。因為應(yīng)用交付控制器直接位于數(shù)據(jù)流經(jīng)路徑中,它們可以實現(xiàn)某些特定的應(yīng)用程序及軟件驅(qū)動的功能,這些功能都不容易嫁接給軟件定義網(wǎng)絡(luò)控制器。軟件定義網(wǎng)絡(luò)將數(shù)據(jù)運(yùn)動和網(wǎng)絡(luò)控制功能分離開來,這就意味著一個軟件定義網(wǎng)絡(luò)控制器雖然可以基于服務(wù)器活動進(jìn)行簡單的負(fù)載均衡決策,但并不能基于數(shù)據(jù)本身的內(nèi)容進(jìn)行決策。
應(yīng)用交付控制器一直以來都是獨(dú)立的網(wǎng)絡(luò)設(shè)備。行業(yè)領(lǐng)先的供應(yīng)商已經(jīng)意識到到虛擬化系統(tǒng)的成長,以及軟件定義網(wǎng)絡(luò)被越來越多人接受的現(xiàn)實,于是開發(fā)虛擬化應(yīng)用交付控制器來響應(yīng)這一趨勢。
這些應(yīng)用交付控制器廠商形成聯(lián)盟,將產(chǎn)品與虛擬網(wǎng)絡(luò)環(huán)境整合起來。他們還增加了腳本驅(qū)動功能,讓網(wǎng)絡(luò)管理員可以開發(fā)應(yīng)用交付控制器可執(zhí)行的特定應(yīng)用程序功能。
網(wǎng)絡(luò)安全和監(jiān)控
防火墻,防病毒掃描和入侵防御系統(tǒng)一直以來都存在于不同的設(shè)備中。應(yīng)用交付控制器存在于數(shù)據(jù)路徑中,而且它可以執(zhí)行特定應(yīng)用的腳本能力讓其成為掃描輸入數(shù)據(jù),并確定其是否為惡意軟件的理想工具。省去各自獨(dú)立的安全組件降低了網(wǎng)絡(luò)復(fù)雜性和資金成本。
應(yīng)用交付控制器還可以通過阻擋有問題的請求來保護(hù)服務(wù)器免受拒絕服務(wù)攻擊。一個大型的,分布式攻擊可能會消耗應(yīng)用交付控制器的資源,以致于許多合法的請求無法通過,但是服務(wù)器可以支持他們收到的請求。
另外,由于應(yīng)用交付控制器的位置處于數(shù)據(jù)路徑中,所以非常適合收集性能和使用數(shù)據(jù)。他們可以監(jiān)控服務(wù)器的延遲,也可以測量應(yīng)用程序、終端用戶網(wǎng)絡(luò)或個人終端的流量。
ADC如何提高網(wǎng)絡(luò)效率
應(yīng)用交付控制器還可以在其它方面改善網(wǎng)絡(luò)效率。在一個沒有應(yīng)用交付控制器的環(huán)境中,每個終端用戶的瀏覽器都會創(chuàng)建一個或多個傳輸控制協(xié)議連接到一個Web服務(wù)器。在終端用戶界面到因特網(wǎng)連接中使用網(wǎng)絡(luò)地址轉(zhuǎn)換(NAT,-network-address-translation)可以減少連接的數(shù)量,但由于終端用戶數(shù)量多,大量的連接還是會給網(wǎng)站管理造成負(fù)擔(dān)。
此外,每個請求都會創(chuàng)建一個傳輸控制協(xié)議連接,是一個資源密集型操作。
使用傳輸控制協(xié)議復(fù)用,應(yīng)用交付控制器建立與后端服務(wù)器的持久連接。個人瀏覽器或網(wǎng)絡(luò)地址轉(zhuǎn)換(NAT)功能創(chuàng)建連接到應(yīng)用交付控制器,從Web服務(wù)器斷掉TCP連接管理,從而減少所需服務(wù)器的總數(shù)。
傳輸控制協(xié)議慢啟動算法可以防止網(wǎng)絡(luò)免受一個新的連接暴發(fā)而卡死。通過復(fù)用傳輸控制協(xié)議連接,慢啟動只發(fā)生一次。如果沒有一個應(yīng)用交付控制器,每個瀏覽器到Web服務(wù)器的連接都需要經(jīng)歷慢啟動過程。
如今基于Web的應(yīng)用程序通常需要排一個很長的請求和響應(yīng)隊伍。
當(dāng)一個初始請求到達(dá)Web服務(wù)器,服務(wù)器會在其中創(chuàng)建一個存儲請求信息的會話。簡單的負(fù)載均衡可以直接傳送下一組請求到不同的服務(wù)器。當(dāng)這個會話在初始服務(wù)器上超時并最終被刪除時,第二個服務(wù)器創(chuàng)建另一個會話。這顯然是沒有效率的。
流量整形是應(yīng)用交付控制器提高整體網(wǎng)絡(luò)和應(yīng)用性能的另一種方式。傳輸控制協(xié)議包含延遲,選擇確認(rèn)信號,自適應(yīng)調(diào)整窗口大小以及顯式擁塞通知這些機(jī)制。應(yīng)用交付控制器使用這些技術(shù),通過減少脈沖串和將短分組整合成較大組來提高效率。
基于請求類型來區(qū)分服務(wù)器可以通過簡化應(yīng)用軟件來提高可靠性。每個應(yīng)用程序?qū)⑻幚硪环N類型的請求。網(wǎng)絡(luò)管理員會提供應(yīng)用交付控制器腳本來掃描輸入數(shù)據(jù),并指示每個請求到設(shè)計好的應(yīng)用程序進(jìn)行處理。
ADC準(zhǔn)備迎接SDN
應(yīng)用交付控制器目前還是以預(yù)裝在硬件設(shè)備中的形式來出售,但領(lǐng)先的供應(yīng)商,為了適應(yīng)軟件定義網(wǎng)絡(luò),還開發(fā)了在虛擬化服務(wù)鏈中可以快速插入的虛擬單元。
這些服務(wù)鏈,連同其它網(wǎng)絡(luò)功能虛擬化組件,可以根據(jù)需求通過云自動化系統(tǒng)移動。
如果“軟件定義網(wǎng)絡(luò)”可以擴(kuò)展,而不僅僅是通過OpenFlow連接到交換機(jī)的一個控制器,那么我們當(dāng)然可以考慮虛擬化應(yīng)用交付控制器,以增強(qiáng)的腳本作為組件融入SDN中。
佚名
