天天看點

消失與存續——應用傳遞行業的跌宕演進

消失與存續——應用傳遞行業的跌宕演進

1996 年,一家名為 Foundry Networks 的公司在矽谷成立,主要研發售賣交換機、路由器等網絡硬體産品。

那年是“網際網路泡沫”形成的初期,美國 IT 行業的新公司如雨後春筍。可以想象,當時這家公司的成立,也許并沒有濺起太大的水花。

但在短短三年後,Foundry 就在納斯達克上市,并創下多項紀錄,成為華爾街最受矚目、最具成長潛力的初創企業,甚至入選過美國 500 強。

轉眼又幾年,時局突變。2008 年,Foundry 被 Brocade 以大約 26 億美元的價格收購,這場收購案兜兜轉轉數月才最終敲定,還因為股票價格下跌而被壓價。到如今,Foundry 已泯然衆人。

扛住了泡沫破裂,卻沒扛得住收購。

當初決定減少 4-7 層交換機産品投入的 Foundry 創始人 Bobby Johnson,看到與 Foundry 同年成立、現在如日中天的老對手 F5,不知會作何感想。

4-7 層交換機這個詞,對于初入網絡行業的朋友可能比較少見,今天,大家或許更習慣它的另一個稱呼——負載均衡。

作為最早推出負載均衡裝置的廠商,當年的 Foundry 前程似錦。按照一般的劇本,由負載均衡概念演進而來的應用傳遞,理應是他們的拿手好戲。

但變化是永恒的,曆史總會走上一條多數人未曾設想的道路——包括技術本身。

如何了解應用傳遞

随着數字化程序不斷被推動,應用大量湧現、通路量飙升,為了保證應用和内容的安全高效通路,應用傳遞技術便應運而生。

應用傳遞部署在網絡和應用之間,将兩者深度結合、有效協同,緻力于将應用以高效、安全、穩定的方式傳遞給最終使用者。為了實作這一目标,應用傳遞融合了負載均衡、應用安全管理、應用加速、流量控制等多種技術。

在 IT 應用架構中,應用傳遞位于網際網路與資料中心之間的咽喉要道,是以擁有重要的戰略價值。

責任越大,挑戰越大。對于企業來說,這種挑戰可能更多在于如何更好地、合理地發揮應用傳遞的價值,為業務應用賦能。而對于應用傳遞本身來說,挑戰則在于如何更好地把握技術發展方向。

當我們希望對未來趨勢有一些洞察時,回顧應用傳遞的發展曆程,是很有必要的。

在應用傳遞之前

在網際網路的古早時期,使用者通路量少之又少,往往隻靠單台伺服器就能滿足對外服務需求。但随着網際網路的普及,越來越多的使用者接入網絡,業務流量也自然水漲船高。

當單台伺服器無法應對流量增長、支撐服務運作的時候,通常有兩種解決辦法:

1. 換更好的伺服器

2. 加更多的伺服器

也就是我們常說的縱向擴充(提升單台伺服器的計算、存儲、網絡等資源配置)和橫向擴充(通過增加多台伺服器同時工作,滿足大型應用處理需求)。

第一種方法也許夠簡單粗暴,但單機性能總是有上限的,而且多數情況下,機器性能的提升與價格并非呈正比。是以,以多台伺服器組成叢集,同時承載業務應用,作為一種更實際的解決方案被大家普遍接受。

但此時又面臨一個新的問題,業務負載如何配置設定?多台伺服器之間如何協調?

首先我們看看若不做協調會發生什麼?業務流量到達後端時得不到有效控制,出現工作配置設定不均的現象:有的伺服器已經超負荷運轉,有的卻處于空閑狀态。這不但造成了極大的資源浪費,同時也會影響使用者的通路體驗。

負載均衡的出現,就是為了解決這一問題。它可以建構在現有的網絡結構之上,作為流量入口,對流量進行排程,将其均衡地配置設定到叢集中的不同機器上。

DNS 負載均衡實作

最初,實作負載均衡采用的是 DNS(Domain Name System,域名系統)方法。

DNS 本質上是一個分布式資料庫,能夠将域名和 IP 位址互相映射,使網際網路通路更友善——人們在通路網站時,隻需記住網站的域名即可,而無需記住複雜的 IP 位址。

利用 DNS 實作負載均衡,是通過 DNS 服務中的随機名字解析來實作的,在 DNS 中為多個域名位址配置同一個名字,查詢到這個名字的客戶機将在解析時得到其中一個位址。進而使通路同一網站的不同的客戶機得到不同的域名位址,也就通路了不同的伺服器,進而達到負載均衡的目的。

這是一種簡單而有效的方法,實施容易,無需投入太多成本,而且廣泛适用。

但 DNS 方法存在一個緻命的問題:它實作的是絕對的平均,将來自網際網路的通路請求完全平均地配置設定給後端伺服器。它無法區分伺服器的性能差異,也不能反映伺服器目前的運作狀态。

事實上“均衡”并不等于“平均”,将業務流量平均地配置設定給伺服器而不考慮其性能,并不能從本質上解決負載不均衡的問題。

而且,若其中一台伺服器當機,DNS 是無法獲知的,它仍然會将流量配置設定過去,這将導緻客戶無法獲得響應。

是以,DNS 負載均衡的應用場景比較有限。

基于網絡交換技術的負載均衡

為了達到真正意義上的負載均衡,行業把目光轉移到了網絡交換技術,并基于 OSI 模型(Open System Interconnection Reference Model,開放式系統互聯通信參考模型),在不同網絡層次上實作負載均衡功能。

OSI 模型由國際标準化組織 1981 年提出,是一個全球通用的網絡标準架構,它将計算機網絡結構劃分為七層:

1. 實體層

2. 資料鍊路層

3. 網絡層

4. 傳輸層

5. 會話層

6. 表示層

7. 應用層

根據在 OSI 不同層次上的實作,有以下幾類負載均衡:

1. 二層負載均衡:基于資料鍊路層,采用虛拟 MAC 位址的方式,外部對虛拟 MAC 位址請求,負載均衡接收後配置設定後端實際的 MAC 位址響應。

2. 三層負載均衡:基于網絡層,采用虛拟 IP 位址方式,外部對虛拟 IP 位址請求,負載均衡接收後配置設定後端實際的 IP 位址響應。

3. 四層負載均衡:基于傳輸層,主要通過封包中的目标位址和端口,再加上負載均衡裝置設定的伺服器選擇方式,決定最終選擇的内部伺服器。

4. 七層負載均衡:基于應用層,也稱為“内容交換”,主要通過封包中的真正有意義的應用層内容,再加上負載均衡裝置設定的伺服器選擇方式,決定最終選擇的内部伺服器。

與二層、三層相比,四 / 七層負載均衡更為常見。如今我們提到負載均衡時,也更多是指後者。

由于實作層次的不同,四層負載均衡與七層負載均衡在性能、安全性、功能性、複雜性等方面有着巨大的差別。

最明顯的差別是,四層負載均衡架構相對簡單,易于管理,且資源消耗更低,在網絡吞吐量及處理能力上更有優勢。

而七層負載均衡覆寫了 OSI 模型定義的所有網絡層次,它能更靈活、更全面地對網絡請求進行修改,實作更智能的負載均衡,且具備更強的安全防護能力。但與之相對的,資源損耗也會更高。

從負載均衡到應用傳遞

負載均衡出現的時期,正是網際網路投機泡沫開始膨脹的時期,許多着力開發相關産品的創業公司紛紛湧現出來,如 Foundry、Alteon、Arrowpoint、NetScaler、F5 等,競争格局激烈,頗有一股群雄并起的味道。

正如前文所述,Foundry 公司最早提出了四 / 七層交換機概念并推出産品,也就是釋出于 1998 年的 ServerIron XL。這款産品在當時擁有很大的熱度,以至于,即使在 Foundry 被 Brocade 收購後,也還持續銷售了一段時間。

當時的大部分負載均衡初創企業,最終都沒有逃過被收購的命運。導緻更大差別的原因可能在于,收購是發生在泡沫破裂前還是破裂後。

一個典型的案例是 Alteon 的兩度易主:2000 年熱度最高時,Nortel 以 78 億美元的交易總額收購了 Alteon;不到 10 年後,Nortel 又将 Alteon 業務出售給 Radware,雖然雙方沒有公開交易額,但有傳言稱,Radware 給 Nortel 開出的價格也不過數千萬美元。

時至今日,我們不能武斷地将那些企業最終失敗的原因,簡單歸結為網際網路泡沫的破裂,但将其視為導火索也許并不為過。

負載均衡的市場空間在于網際網路的擴張、流量的增加,而當網際網路泡沫破裂時,負載均衡産品銷售量大幅下降,讓所有廠商都面臨着巨大的生存挑戰。

由于四 / 七層産品的研發、技術支援投入都遠高于架構更為簡單的二 / 三層産品,為了度過艱難時期,包括領頭羊 Foundry 在内的許多廠商都做出了收縮四 / 七層産品的決定。在資曆較老的廠商中,隻有和 Foundry 同年成立的 F5 堅持在這一領域持續投入。

當網際網路重振旗鼓之時,四 / 七層産品的價值得到廣泛認可,市場得以複興,但此時的 F5 已經沒有對手了。

正是這個時期,随着電子商務、流媒體網站等應用的盛行,業務應用對網絡提出了更高的要求,單純的負載均衡已無法滿足需求。

通過融合應用加速與優化、流量管理等技術,負載均衡開始向應用傳遞演進。

消失與存續——應用傳遞行業的跌宕演進

應用傳遞的技術核心

随着架構的發展,應用傳遞的技術堆棧在負載均衡的基礎上得到了極大的豐富,加入了許多新的技術手段,如緻力于實作應用加速功能的 TCP 優化、連接配接複用、緩存壓縮、SSL 加速等,以及保障應用安全的 Web 應用防火牆、協定清洗、DDOS 防護、業務加密等。

如此多的複雜名詞,可能會讓不了解技術的朋友眼花缭亂。事實上,應用傳遞技術架構的演進始終圍繞它的根本目标展開:将應用以高效、安全、穩定的方式傳遞給使用者。

可以說,所有技術手段的使用,都是為了實作這一目标。是以,我們或許可以概括性地将應用傳遞的核心技術分為以下幾個方面:

1. 應用加速:主要實作廣域網優化加速,通過一系列技術來提供跨地域、跨營運商的快速遠端網絡通路,節約網際網路帶寬,提高現有網絡環境中的應用通路效率。

2. 應用安全:融合安全網關的功能,通過建立全面的安全規則與政策,覆寫網絡層、應用層,實施完備的安全防護,保障應用的安全通路。

3. 高可用性:以負載均衡為主,同時加入健康檢查、會話保持等多種功能,從流量管理的角度實作叢集的高可用,確定應用平穩可靠運作。

在應用環境壓力不斷提升,流量日益加劇的趨勢下,應用傳遞技術基本按照以應用為導向、圍繞以上三大核心訴求發展新技術的路線前進。

目前為止,我們所讨論的,都是以本地資料中心部署為主的應用傳遞。在業内對應用傳遞的概念達成共識之後,至少主流上維持着這種發展規律——直到雲計算開始盛行,又一場巨大變革也是以來襲。

從應用傳遞到應用釋出

進入移動網際網路時代,應用數量爆發式增長,企業的競争環境愈發激烈,需要時刻保持業務創新,不斷改善使用者體驗,并且快速地完成落地,方能激流勇進、實作商業成功。

這對 IT 架構提出了巨大的挑戰,包括如何實作應用現代化、如何應對 IT 複雜性等等。與傳統資料中心相比,雲計算的靈活性、擴充性優勢,更能夠幫助企業充分應對這種挑戰,是以成為主流趨勢。

雲計算與大資料、人工智能常常被稱為數字經濟時代的三駕馬車,對整個行業的未來發展有着深遠的影響。當涉及到應用傳遞領域,也許是因為雲計算更偏向于 IT 底層基礎架構的變革,是以對應用傳遞技術發展的影響最為顯著,與之相對的,大資料和人工智能對應用傳遞的影響,則更多展現在如何提升産品服務能力上。

2019 年,F5 收購了開源 Web 伺服器軟體 Nginx 的商業化公司。Nginx 在世界上廣受歡迎,包括 Instagram、Neflix、Airbnb 等在内的全球大多數網站應用中都有 Nginx 的身影。其優秀的負載均衡、流量控制等能力,在雲微服務架構中同樣能夠發揮巨大價值。F5 收購 Nginx 的意圖十分明顯——加速自身在軟體和雲方面的變革,保持在雲時代的領先性。

同樣是在這一年,雲原生基金會(Cloud Native Computing Foundation,CNCF)成立了應用傳遞領域小組(Application Delivery SIG),希望明确并解決應用傳遞生命周期的關鍵環節和核心問題,同時優化雲原生場景下的應用架構。CNCF 由谷歌牽頭成立,勢頭正盛的 Kubernetes 就是它的第一個開源項目。CNCF 的下場,從某種角度看,也代表着“雲原生應用傳遞”的加速發展。

而在通明智雲總經理吳若松看來,随着雲計算和微服務架構的演進,我們将迎來“應用釋出”的時代。應用釋出起源于應用傳遞,卻又和應用傳遞有極大不同。

應用釋出的技術核心

首先我們可以簡單地概括,傳統應用傳遞與應用釋出的最大差别,在于兩者分别面向的是“穩态”與“敏态”這兩種不同的應用場景。

穩态的主要訴求是保證應用能夠被高效、可靠、安全地通路,而敏态則在此基礎上,希望以更加快速、靈活、靈活的方式釋出應用和服務。

另一方面,兩者最直覺的差別在于:從整體架構上看,應用傳遞的兩端分别是使用者與資料中心,而應用釋出的兩端則是使用者與雲。

這也導緻了應用傳遞時代更注重解決南北向通信的壓力,而應用釋出——出于雲服務架構的特性——需要更專注于雲計算中的東西向通信。

1. 南北向通信,解決叢集和外部的通信問題,實作核心網的功能。

2. 東西向通信,解決業務内部各個微服務之間的通信和鍊路治理。

目前應用釋出的核心技術有:

1. 藍綠釋出 - 在釋出某應用的新版本時,并不停止舊版本,若新版本運作穩定,便将流量從老版本切換過來,若新版本出現問題,也可以及時切換回舊版本。這樣可以減少版本釋出對應用運作的影響。

2. 灰階釋出 - 顧名思義,這是一種黑白之間平滑過渡的應用釋出方式。新版本釋出後,先将少量流量切換過來,對新版本運作情況進行觀察分析,當确認無誤後,再逐漸将更多的流量切換到新版本上,直到實作 100% 的切換,完全替換舊版本。灰階釋出也稱為金絲雀釋出,是進行 A/B 測試的重要手段。

3. 熔斷機制 - “熔斷”一詞多出現于股市,應用服務中的熔斷機制,本質上與股市并無差異,都是為了控制風險。雲微服務之間往往存在依賴關系,如果其中某個服務調用出現高延遲等問題,将導緻其他服務也出現問題,甚至可能導緻業務系統不可用。實施熔斷機制,可及時檢測問題,對該服務執行熔斷,避免造成更大範圍的影響,同時釋放資源。

4. 業務編排 - 通過制定政策控制業務流量的轉發,按照政策所定義的順序,對流量進行排程,以政策化的方式統籌整個網絡。

能夠看出,以上這些技術的目标,都是為了建立敏态應用環境下的一種更快速、靈活、靈活的應用釋出機制。在雲計算趨于成為常态的今天,充分考慮雲架構特性,建構“雲原生”的應用釋出,已成為一大趨勢。

應用傳遞不會退場

但我們始終需要明确的是,“演進”并非“替代”。如果在新的技術理念出現時,就将此前已經成熟穩定的傳統技術實踐淘汰,不但廠商不答應、企業不答應、市場也不答應。傳統應用傳遞,仍有存在和發展的必要。

站在技術層面,未來應用釋出雖然主要面向敏态環境,但如上文所述,它依舊是在穩态基礎上實作的。企業對應用加速、應用安全以及高可用性的訴求,并不會因為進入雲時代而消失,隻會随着技術的發展而不斷提高。

産品形态上,傳統應用傳遞裝置仍然具有很大的需求空間,特别是在國内。

從“新基建”到“東數西算”,作為 IT 基礎設施的關鍵組成部分,面對全國各地日益增長的網絡流量,應用傳遞裝置在流量管理、安全防護等方面的價值,能夠在資料中心發揮巨大的作用,為織就全國算力一張網、建構新型算力網絡體系貢獻力量。

此外,一個重要的現實原因是,出于資料安全、合規性、現有 IT 流程、延遲敏感型應用等各方面的因素考慮,許多國内企業并不能接受公有雲——IDC、Gartner 等行業研究機構都曾在其報告中描述過這一現狀——而是采用本地私有雲部署為主的形式。

即便是在未來,與完全采用公有雲相比,混合雲更像是一種易于為人們所接受的架構。在私有雲環境下,對傳統應用傳遞裝置的需求還會持續。

就像負載均衡從未退場一樣,應用傳遞也不會退場。

一直遊到海水變藍

人們常常用“藍海”和“紅海”來形容市場空間的狀态,毫無疑問,與已經非常成熟的應用傳遞相比,應用釋出更像是一片藍海。

但當我們把焦距推向十多年前時,與負載均衡相比,應用傳遞則是藍海;往更久遠處推,負載均衡也曾是藍海——從 Foundry 到 F5,不同的時代書寫了不同的故事.

但至少我們可以确定,藍海永遠是領先者的,也永遠造就領先者。

有趣的是,從負載均衡向應用傳遞演進的曆史來看,深入藍海的領先者,又似乎必須曾經曆紅海的洗禮。當然,這裡更深層原因是,在紅海中鍛煉出來的強大“肌肉”——足夠雄厚的技術實力。

消失與存續——應用傳遞行業的跌宕演進

雲科通明湖應用傳遞網關,立足于應用傳遞,憑借多年技術實踐積累,為許多國内客戶建構了安全、高效、可控的應用傳遞平台。雲科通明湖系列産品能實作應用和網絡的有效協同,保證應用系統能夠被安全、高效、可控地通路,在整個 IT 架構中有着重要的戰略價值和豐富的應用場景。作為負載均衡領域全球領先品牌 f5 的最佳協同者,雲科通明湖同時也是信創負載均衡的領先品牌。

信創就選雲科通明湖。

繼續閱讀