可編程網(wǎng)絡(luò)系列(一):可編程網(wǎng)絡(luò)在阿里云的規(guī)模化應(yīng)用和實(shí)踐
前言
2021年云棲大會,阿里云基礎(chǔ)設(shè)施網(wǎng)絡(luò)事業(yè)部負(fù)責(zé)人蔡德忠在可預(yù)期網(wǎng)絡(luò)分論壇上指出:今天的網(wǎng)絡(luò)已經(jīng)從以Mega-scale DC為代表的軟件定義網(wǎng)絡(luò),向可預(yù)期網(wǎng)絡(luò)演進(jìn)。而阿里云的網(wǎng)絡(luò)隨著規(guī)模的增長,也要承擔(dān)起新型社會基礎(chǔ)設(shè)施的角色,做到可預(yù)期,從架構(gòu)、協(xié)議、軟硬件、芯片、生態(tài)等一系列角度保持持續(xù)迭代和演進(jìn)。
▼
讓我們從芯片角度來看云計算時代三代網(wǎng)絡(luò)的演進(jìn):
云計算第一個十年,業(yè)界主要使用廠家提供的一體化網(wǎng)絡(luò)設(shè)備,從芯片到OS、特性都由廠家研發(fā)和供給;
第二個十年,以互聯(lián)網(wǎng)DC為代表的應(yīng)用,將網(wǎng)絡(luò)設(shè)備大規(guī)模簡化,開放的OS僅留下必要特性,增加深度的運(yùn)維特性,從而極大提升網(wǎng)絡(luò)的可用性,單芯片為主的設(shè)備,可以簡單高效支持超大規(guī)模部署;
第三個十年,面向未來,我們可以預(yù)見,網(wǎng)絡(luò)可編程將是補(bǔ)上可預(yù)期的最后一個關(guān)鍵環(huán)節(jié),可編程的ASIC和系統(tǒng)將為基礎(chǔ)設(shè)施提供端到端的可管可控能力,使網(wǎng)絡(luò)從以協(xié)議為中心轉(zhuǎn)為以軟件為中心,更敏捷、更好的支持業(yè)務(wù)的發(fā)展。
從阿里云推出HPCC協(xié)議、神龍卡、超融合邊緣底座等一系列產(chǎn)品到各大互聯(lián)網(wǎng)廠商往技術(shù)底層深扎,可以預(yù)見:未來各大廠的底層將是各自優(yōu)化,各自實(shí)現(xiàn),而可編程網(wǎng)絡(luò),將是通往可預(yù)期的必經(jīng)之路!
No.1
阿里云基礎(chǔ)設(shè)施可編程之路
時間流轉(zhuǎn)回2016年,阿里云基礎(chǔ)設(shè)施網(wǎng)絡(luò)團(tuán)隊(duì)關(guān)注到學(xué)術(shù)界和工業(yè)界對于可編程芯片和語言的一些突破性進(jìn)展,由此開始了基礎(chǔ)可編程芯片的白盒交換機(jī)研發(fā)和適配工作,讓可編程芯片可以適配運(yùn)行于阿里云自研網(wǎng)絡(luò)操作系統(tǒng)(AliNOS)之上。
2017年,我們發(fā)現(xiàn)協(xié)議無關(guān)的芯片Pipeline很適合在網(wǎng)關(guān)應(yīng)用中使用,在大流量的LB場景中找到了應(yīng)用,于是開始基于白盒可編程設(shè)備助力LB場景,推出了SmartLB的內(nèi)部產(chǎn)品并在大數(shù)據(jù)場景中使用。
同年年底,基礎(chǔ)設(shè)施網(wǎng)絡(luò)團(tuán)隊(duì)已看到可編程能力給業(yè)務(wù)帶來的收益,在時任阿里云基礎(chǔ)設(shè)施高級研究員蔡依群的指導(dǎo)下,阿里云內(nèi)部立項(xiàng)了大算力和可編程的超融合設(shè)備項(xiàng)目,針對多個場景的需求打造了一款靈活的適配多場景的可編程平臺。
2018年,團(tuán)隊(duì)基于可編程芯片的可視化能力,自研了穩(wěn)定、低延遲的新一代高速網(wǎng)絡(luò)擁塞控制HPCC,該項(xiàng)目論文已被世界頂級的網(wǎng)絡(luò)學(xué)術(shù)會議ACM SIGCOMM2019錄用并為業(yè)界廣泛所知。同時,與阿里云網(wǎng)絡(luò)產(chǎn)品團(tuán)隊(duì)合作的T級別的可編程網(wǎng)關(guān)也開始研發(fā)和上線。
2019年,經(jīng)過一年多的研發(fā),自研的SNA設(shè)備開始量產(chǎn)和上線,首先在CDN場景得到了應(yīng)用,之后開始在IGW等網(wǎng)關(guān)項(xiàng)目中也研發(fā)完成并開始上線。同時,該平臺也開始應(yīng)用于一些內(nèi)部平臺,如靈活測試。
2020年,可編程平臺繼續(xù)在ENS和VGW場景開始使用,并且在體量上也進(jìn)一步增長??删幊痰腁SIC廠家也在逐步增多,阿里云也推出了Lyra編譯器,阿里云在SIGCOMM 2020中將該成果分享。SNA平臺也開始對FPGA進(jìn)行了支持和應(yīng)用。
2021年,可編程網(wǎng)關(guān)和平臺已經(jīng)在多個業(yè)務(wù)場景爆發(fā)和加速,形式化驗(yàn)證Aquila也在SICOMM 2021中發(fā)布。
No.2
典型案例分享
在五年的可編程網(wǎng)絡(luò)發(fā)展之路上,阿里云基礎(chǔ)設(shè)施網(wǎng)絡(luò)團(tuán)隊(duì)針對業(yè)務(wù)的實(shí)際痛點(diǎn)和場景價值推出了很多應(yīng)用,典型案例分享如下:
網(wǎng)關(guān)類應(yīng)用——SmartNAT平臺
隨著流量劇增,用于該平臺的網(wǎng)關(guān)服務(wù)器的數(shù)量和成本也在橫向增長。雖然少量的大流可能占80%的流量,但是還有很多突發(fā)小流Session。在該場景下,不能簡單的用可編程ASIC進(jìn)行全部的應(yīng)用替代。
當(dāng)使用阿里云自研的SNA平臺后,我們可以靈活使用ASIC、FPGA和X86的三級卸載模式,從而達(dá)到流表和性能的均衡。
該方案除了保持X86的應(yīng)用靈活度外,還可以解決單核打爆的風(fēng)險,PPS和時延都有效提升,每一臺可編程設(shè)備可以替代10臺以上的原160G的網(wǎng)關(guān)設(shè)備,成本也有大幅的提升。
云融合類應(yīng)用——阿里云洛神超融合云網(wǎng)關(guān)
隨著云邊一體的趨勢,阿里云推出了更多的像本地云、云展、云盒等向邊緣擴(kuò)展的產(chǎn)品形態(tài),此時類似中心云的每網(wǎng)關(guān)部署則給業(yè)務(wù)的靈活性和成本帶來了巨大的挑戰(zhàn)。
使用阿里云的超融合SNA平臺后,我們在可編程ASIC里加入了交換機(jī)邏輯,同時在X86內(nèi)加入了伊洛網(wǎng)元編排平臺,該形態(tài)下,可以在原有的架構(gòu)下省去交換機(jī)和眾多分別部署的網(wǎng)關(guān)設(shè)備和混合云接入設(shè)備。同時,還可以共用原有的管控部署和運(yùn)營平臺,達(dá)到性能成本的大幅優(yōu)化。
邊緣融合類應(yīng)用——邊緣云的超融合底座
在邊緣云節(jié)點(diǎn)中,麻雀雖小,五臟俱全,在原有的節(jié)點(diǎn)內(nèi),我們需要部署大量的云網(wǎng)關(guān)、安全、管控設(shè)備。邊緣云是大量的小規(guī)模節(jié)點(diǎn),能給業(yè)務(wù)應(yīng)用的服務(wù)器就變得很少,如何低成本高性能的部署邊緣云,變成了難題。
而基礎(chǔ)設(shè)施網(wǎng)絡(luò)的SNA平臺此時應(yīng)運(yùn)而生,可編程ASIC中靈活加入了交換機(jī)、Virtual Switch和網(wǎng)關(guān)的offload,F(xiàn)PGA對VPN、TLS等進(jìn)行進(jìn)一步卸載,在強(qiáng)大的X86平臺內(nèi),進(jìn)行有狀態(tài)網(wǎng)元和安全、管控的部署,使得兩臺超融合設(shè)備就可以作為邊緣云的底座,提供T級LB、T級網(wǎng)關(guān)的裸金屬接入能力的底座,通過二層交換機(jī)的擴(kuò)展,可以支持最多單點(diǎn)768臺異構(gòu)設(shè)備接入。
No.3
可編程能力的構(gòu)建
硬件
可編程能力當(dāng)然離不開硬件和芯片,阿里云量產(chǎn)的SNA支撐了以邊緣和網(wǎng)關(guān)為代表的諸多場景的應(yīng)用,業(yè)界首創(chuàng)的大帶寬可編程ASIC+大算力結(jié)合的設(shè)備,保證SKU統(tǒng)一的同時靈活適應(yīng)各類場景的需求。
近兩年,各大ASIC廠家都加速了自身的開放性,可編程的平臺越來越多。我們可以斷定,未來的芯片都會具有或多或少的可編程能力。整個生態(tài)的促進(jìn)讓阿里云也將可編程平臺的構(gòu)建推向了更多地方,未來我們會持續(xù)推進(jìn)可編程的開發(fā)和應(yīng)用。
開發(fā)效率
可編程平臺是一個新技術(shù)和新事物,開發(fā)工具體系與成熟的平臺比還有較大的差距,上圖展現(xiàn)了可編程平臺在多個維度上我們看到的挑戰(zhàn)。針對這些挑戰(zhàn),我們也逐步的研發(fā)了如Lyra編譯器、Aquila驗(yàn)證器、Meissa測試覆蓋等工具和平臺,持續(xù)對開發(fā)效能進(jìn)行優(yōu)化。
同時,阿里云研究團(tuán)隊(duì)也持續(xù)的將我們的研究成果以頂會論文和公開宣講的方式回饋社區(qū)。
設(shè)備平臺和智能運(yùn)營
眾所周知,一個應(yīng)用從可用,到大規(guī)模部署,中間有著巨大的鴻溝。而在阿里云基礎(chǔ)設(shè)施,支撐著可編程業(yè)務(wù)的正是成熟的阿里云自研網(wǎng)絡(luò)操作系統(tǒng)(AliNOS)和整體的智能運(yùn)維體系。如上圖中所示,阿里云自研網(wǎng)絡(luò)操作系統(tǒng)(AliNOS)和運(yùn)維體系已經(jīng)承載著數(shù)萬臺網(wǎng)絡(luò)設(shè)備的日常運(yùn)維和一系列行之有效的系統(tǒng)。而可編程設(shè)備和應(yīng)用正是站在巨人的肩膀之上,才可以在業(yè)務(wù)創(chuàng)新的同時,保證業(yè)務(wù)的穩(wěn)定性,和業(yè)務(wù)運(yùn)營一起進(jìn)行大規(guī)模部署。
▲
阿里云可編程網(wǎng)絡(luò)架構(gòu)
以上介紹的幾個環(huán)節(jié),共同構(gòu)建了阿里云可編程網(wǎng)絡(luò)架構(gòu)和平臺,支撐著上層的三類應(yīng)用。我們看到的應(yīng)用實(shí)踐只是冰山一角,大海之下,更是硬件、平臺、研發(fā)和運(yùn)營堅如磐石的積累。
No.4
面向未來
阿里云基礎(chǔ)設(shè)施網(wǎng)絡(luò)團(tuán)隊(duì)對于可編程平臺的積累已經(jīng)走過了第一個五年,這五年里我們完成了從0到1的積累,在多個業(yè)務(wù)都通過技術(shù)創(chuàng)新拿到了優(yōu)秀的結(jié)果。
未來,阿里云基礎(chǔ)設(shè)施網(wǎng)絡(luò)將從三個方面持續(xù)推進(jìn):
-
深度優(yōu)化:從可用、可靠、性能、成本、服務(wù)上,抓住應(yīng)用痛點(diǎn),持續(xù)優(yōu)化網(wǎng)絡(luò)服務(wù),賦能應(yīng)用。
-
云邊一體:從中心到邊緣,可編程的范疇將持續(xù)擴(kuò)展。
-
生態(tài)共贏:擁抱生態(tài),和伙伴們一起構(gòu)建開放的可編程平臺和產(chǎn)品。
面向未來,我們堅信可編程平臺將會成為可預(yù)期網(wǎng)絡(luò)的重要基石。從網(wǎng)關(guān)到交換,從中心到邊緣,端到端的控制和運(yùn)營才會帶來真正可預(yù)期的網(wǎng)絡(luò)。