2021年6月9日,亞太內容分發大會暨CDN峰會在北京舉行,阿里雲智能邊緣雲高級技術專家李忠仁受邀參加邊緣加速論壇,分享了阿里雲基於邊緣雲節點打造新一代CDN產品能力、技術架構及創新實踐,助力企業提升效率、優化經營,推動更多新興行業場景的創新發展。
李忠仁介紹,阿里雲CDN起源於淘寶CDN,自2009年開始便伴隨雙11逐步成長,為流量巨大的電商網站提供加速支持,在全球建立了上百個優質節點和帶寬資源,起初在電商領域得到了很多的應用和實踐。2011年,CDN作為互聯網流量分發基礎設施,逐步從服務淘寶電商,擴展到全面服務阿里集團生態,在應用場景上外延。2014年,阿里雲CDN正式宣佈對外商業化,將服務能力開放給全球企業及創業者使用。2015年,阿里雲CDN與電商攜手邁進全站HTTPS時代,並不斷進行自研調度系統的迭代升級以應對指數增長的流量衝擊。
伴隨著每年雙十一以及移動互聯網、視頻的普及,CDN的流量呈現指數級增長。2017年,阿里雲CDN開啟全球化戰略,並陸續發佈SDCN、DCDN等產品,產品矩陣全面升級。2018年初,由Gartner發佈的全球CDN服務市場指南《Market Guide for CDN Services》中,阿里雲憑藉全球服務能力和產品技術優勢定為Global(全球級)服務商。
近幾年,阿里雲CDN圍繞“智能化”和“可計算”不斷進行產品技術深耕,在邊緣Serverless、多維Workload負載均衡、科學決策、各類邊緣應用場景服務上持續打磨。與此同時,阿里雲CDN憑藉更高效率的產品服務與優質的服務體驗贏得客戶信賴,在CDN領域體量不斷擴大,發展迅猛,CDN的峰值流量規模屢創新高。截止目前,阿里雲CDN在全球有2800+邊緣節點,150+T帶寬儲備,服務全球數十萬企業客戶,為超百萬域名提供加速服務。阿里雲CDN打造的一張連接全球終端用戶的邊緣生態網絡,在晚高峰期間每秒處理上億QPS的用戶連接請求,每天將客戶數十億次配置管理指令下發到全網所有節點。
CDN行業發展與演變
CDN的發展主要經歷了三個大的階段:
第一個階段是以圖文內容消費為主的階段, 大家上網主要使用PC, 訪問的主要是門戶網站等含有大量圖文的內容;
第二個階段是圖文+視頻內容消費為主的階段, 直播、短視頻、長視頻的普及, 帶領CDN進入了快速增長期, 帶寬每年成倍的增長。但第二個階段爆發式增長期已經過去, 帶寬的增長已經放緩, 第二個階段即將結束。
第三個階段現在正處於醞釀期, 隨著5G、IoT的發展, 物聯網設備大範圍普及, 越來越多的設備會接入網絡, 必將會有標誌性的應用出現來帶動整個行業的大發展。CDN的分發也會由單一帶寬的分發, 擴展到帶寬、算力、存儲等多維度的分發。
基於邊緣雲節點的新型CDN技術架構
在談到新型CDN概念時,李忠仁表示:CDN由傳統的內容分發, 轉變成帶寬、算力、存儲等多維的分發。CDN的技術底座已向邊緣雲操作系統演進, 傳統CDN只是邊緣雲上的一個應用, 其消耗的主要是帶寬, 此外還會有很多消耗算力和存儲的應用運行在這個邊緣雲操作系統上。阿里雲提供了底層操作系統, 用戶可以根據自己的業務情況,構造自己的算子並託管到阿里雲邊緣雲節點上。阿里雲面向給用戶提供就近接入、就近計算、位置無感、按需部署、彈性伸縮的自動化雲服務。而這種新型的業務形態實現和傳統的CDN優勢互補,不僅複用CDN的上行帶寬、閒散算力,還給用戶提供延時更小、成本更優的服務。
XDN整體架構
李忠仁指出XDN整體框架是阿里雲在CDN領域的技術積累和沉澱之上演變而來, 分為資源交付層、平臺層、組件層、產品層。
資源交付層,基於運營商資源構建廣域覆蓋邊緣雲計算基礎設施。節點硬件、網絡構成是異構的,供應鏈需要保障各種異構資源的高效接入生產系統。
平臺層,銜接了上層業務和底層資源,將供應鏈能力進行整合來構建XDN的PaaS平臺,包含中臺支撐、智能調度、網絡協議。其中中臺支撐系統包含監控、日誌、業務管控、資源納管,這裡會涉及海量數據處理、配管指令實時下發、業務和資源的管理、計費、運作狀態監控等等。
智能調度包含業務編排、資源調度,主要解決自動化決策哪些業務跑在哪些資源上,哪些資源上應該跑上業務的問題;和全局負載均衡一起決定著XDN系統的彈性能力。
組件層,有高性能接入網關、高性能緩存服務器,高性能4層集群負載均衡等傳統CDN基本組件功能;以及可編程CDN、函數計算、邊緣轉碼、流媒體處理等各種生態外延功能。
廣域覆蓋的節點承接了海量業務,需要成體系的安全防護策略來進行攻擊防護、內容數據保護、傳輸可靠性保障等。
最上層是產品輸出層,包含CDN加速、內容下載、直播、點播、SCDN、DCDN, 以及向邊緣雲的EdgeImage、 EdgeRoutine、和視圖計算等新型產品。
新型CDN與傳統CDN的差異
新型CDN和傳統CDN的主要區別在於用戶可以是否可以自定義算子並上傳到邊緣雲節點, 享受按需部署、位置無感、彈性伸縮的自動化調度服務。相比於帶寬型業務,算力消耗有其特點和難點:
算力消耗需要準確的評估:帶寬消耗可以通過訪問日誌準確評估出來, 但是算力因為很多業務共享宿主機上的CPU, 怎麼做準確的評估是需要深入研究的;
算力對調度的準確性要求更高:帶寬如果調度的不準導致節點水位偏高, 對業務的影響較小, 網絡丟包通過重傳等機制, 可以近乎做到業務無感;但是如果CPU水位偏高, 那麼整臺機器幾乎處於不可服務狀態, 對業務的影響是比較大的。
阿里雲實現全球智能調度系統升級, 由帶寬維度的調度演變為帶寬算力雙輪驅動的多維資源調度模型。這個模型的輸入數據就是帶寬消耗和算力消耗數據。對於算力消耗數據, 通過當前節點上服務的業務以及當前的CPU消耗來做業務畫像求解出來。
最後,李忠仁詳細介紹基於邊緣雲節點的創新場景:ER、EI、視圖計算、GRTN。
邊緣創新場景-ER
ER是EdgeRoutine的縮寫, 是一個運行在CDN邊緣節點上的JavaScript代碼運行環境。開發者可以將JS代碼上傳至ER,即可讓JS代碼在全球的CDN邊緣節點上運行。相當於在全球各地擁有成千上萬臺微型服務器就近服務各地用戶(客戶端)。讓做簡單緩存分發的CDN具備了計算的能力,讓小流量業務成為高附加值的場景。
傳統的CDN請求鏈:到達tengine後, 去swift找緩存, 如果緩存名字則直接從緩存裡面拿內容給客戶端, 如果沒有命中, 則去回源請求內容。在ER的模式下, 有四種形態:
第一種請求到達網關以後, 直接通過ER處理, ER處理完以後直接通過網關返回給客戶,不再經過緩存;
第二種ER向其他公網服務比如OSS等發起子請求, 然後把結果通過網關返回給客戶;
第三種請求到了ER後,可以從緩存、KV存儲裡讀取或寫入計算後的結果,一次計算的結果可以讓其他大量的請求複用,減少不必要的重複計算,降低延時;
第四種最複雜,ER和CDN業務進行耦合,請求到網關以後,先進入ER前置處理, 然後再走後續的CDN緩存和回源邏輯, 然後在通過ER和網關把響應返回給客戶。
使用ER時,用戶無需擔心資源不夠用的情況出現, 智能調度會根據業務量的情況自動做彈性伸縮, 滿足業務的需求。通過Isolates隔離技術, 在一個進程裡面實現租戶隔離, 把資源的複用做到極致, 利用邊緣的閒置算力, 給用戶提供最優的按量付費服務。用戶只需關心自己的核心業務代碼, 寫好代碼之後上傳到阿里雲就完成了部署, 不用關心代碼到底運行在哪臺機器上, 阿里云為您提供底層運行環境的保障。同時阿里雲遍佈全球2800多個節點, 確保無論客戶在何地,總能找到離客戶近的邊緣雲節點,從而大大縮短了網絡鏈路,減少了網絡擁塞的風險,提供低延時的服務。
邊緣創新場景-EI
EI即Edge Image,是阿里雲推出的邊緣圖像處理功能,通過該功能,CDN可直接在回源節點對圖片行處理和分發,可減輕源站壓力,減少回源鏈路,節省回源流量。使用圖像處理功能,客戶可以對CDN上的原圖進行縮放、裁剪、添加水印等操作,滿足多種業務場景(比如電商, 媒體, 遊戲, 金融等)的圖片處理需求。
在EI的整體架構圖,首先將圖片轉換服務拆分到容器裡面,這樣可以做到業務隔離,不會因自身進程問題影響其他服務,另外可以做到資源獨立控制。EI作為圖片轉換服務,會按需部署在CDN L2節點,在回源域生效而不是在接入域生效,這樣的話,可以減少圖片轉換的次數,節約算力,一次轉換,對多個邊緣節點生效。將圖片轉換請求攔截並旁路轉發到EI容器實現圖片轉換。同時EI支持熱重啟,升級過程中不會對正在進行的轉換有任何影響。
同一張圖片轉換出的所有目標圖都會作為原圖的副本。刷新一次原圖,可刷掉全部對應目標圖。CDN對用戶提交刷新的次數有限制,對目標圖多的用戶來說,可大大節省刷新次數。通過原圖轉目標圖時,CDN會將原圖緩存下來。當轉其他目標圖時,CDN無需回源即可轉換另一個目標圖。為了減少對源站的訪問,客戶一般會提前預熱資源。對於一張圖片對應多個目標圖的場景,只需要預熱一次原圖,轉多個目標圖時會從CDN自身取原圖而減少回源。在CDN做圖片轉換,可以給源站節省資源。源站只需要保存原圖,降低存儲多個目標圖成本,降低轉碼計算成本。
在原圖被緩存的情況下,圖片轉換整體鏈路減少一個環節,即CDN回源站這一段,減少請求的整體時間。一般情況下,用戶需要對請求改造,通過加參數等方式指明具體要做哪些轉換操作。CDN結合自身能力,可提供一些用戶無需改造即可做圖片轉換的功能:
自適應webp
CDN根據請求頭Accept,判斷當前請求的客戶端是否支持webp格式,如支持自動轉換為webp格式再返回給客戶端。webp格式由於自身高壓縮比,比如和jpg格式相比,同樣分辨率,大小會壓縮的更小,節約流量。
一鍵瘦身
可通過配置,對某種格式的圖片請求統一做質量縮放。在肉眼看不出變化的前提下,降低圖片的質量,給客戶節省帶寬。
弱網環境自適應質量
CDN可根據請求的網絡環境判斷如果網速較慢,則將圖片壓縮質量後再返回,提高成功率和響應時間。
邊緣創新場景-視圖計算
CDN主要消耗的下行帶寬,而視圖業務可以複用CDN的上行帶寬和閒散算力,剛好形成互補。目前生活中隨處可見各種攝像頭,這意味著需要連接到廣泛分佈的邊緣節點, 進行計算、存儲工作。大部分工作都會在邊緣完成, 有極少數場景需要把邊緣處理過以後的信息上傳到中心。
視圖計算整個鏈路分為三個部分,分別是生產端、計算端、消費端,阿里雲提供的主要是中間的計算端服務,包含:視圖的處理( 錄製、轉碼等)、視圖的存儲(存儲在本地以及處理以後回傳到中心Region)、視圖的接入和管控(支持不同終端設備的接入)。
目前,視圖計算主要應用在智慧交通、智慧教育、公共安全等領域。
邊緣創新場景-GRTN
GRTN是全球實時傳輸網絡,致力於通過邊緣雲的異構節點,構建超低延時、全分佈式下沉的通信級流媒體傳輸網絡。相比於傳統的直播架構,GRTN架構的技術特點是:
混合組網:樹狀層級結構+對等圖形網
能力下沉:協議邊緣卸載+內部傳輸協議歸一化
控制和數據分離:動態路徑規劃+全分佈式SFU
可編程可計算:流媒體Serverless計算服務
架構升級所帶來的核心價值是:
優成本,GRTN是一個多業務融合的網絡,可以支持直播、RTC和視頻上雲等多種場景,業務複用率高,另外 GRTN內部鏈路更短,節點內的成本也更低。
提質量,GRTN內部組網支持採用動態選路的方式來構建的網狀結構,內部鏈路延時可以做到20ms左右,並且內部鏈路採用了私有協議來進行高效傳輸。另外客戶端的推流和分發都是基於WebRTC來構建的,QoS擁塞控制是專門針對流媒體特性來進行設計的,並且還在基於線上數據建設進行持續迭代和打磨。
易擴展,GRTN支持了WebRTC協議,可以在單個連接通道上進行全雙工的通信,從而可以很自由的進行發佈和訂閱媒體流,在業務的擴展性上帶來了更大的想象空間。
淘寶直播已經全量使用了GRTN,並且順利保障了淘寶618直播大促,雙十一大促直播等場景, 和傳統的RTMP/ HTTPFLV方式相比,用戶體驗上,RTS端到端的延時降低了80%,卡頓率降低了30%, 帶動了淘寶GMV的提升。
除了淘寶直播外, GRTN服務客戶分佈在電商、教育、泛娛樂等多個行業。