共享经济模式下的边缘计算——PPIO边缘云 laaS技术实践分享
點(diǎn)擊上方“LiveVideoStack”關(guān)注我們
邊緣云計(jì)算,簡(jiǎn)稱邊緣云,是基于云計(jì)算的核心技術(shù)和邊緣賦予的能力,構(gòu)筑在邊緣基礎(chǔ)設(shè)施之上的云計(jì)算平臺(tái),為“萬(wàn)物互聯(lián)”的應(yīng)用場(chǎng)景提供低時(shí)延、自組織、可定義、可調(diào)度、高安全、標(biāo)準(zhǔn)開(kāi)放的分布式云服務(wù)。而共享經(jīng)濟(jì)是一種優(yōu)化資源配置、高效社會(huì)治理的新經(jīng)濟(jì)模式,是最新態(tài)勢(shì)以及未來(lái)發(fā)展趨勢(shì)。在此次LiveVideoStackCon 2021 音視頻技術(shù)大會(huì) 北京站,我們邀請(qǐng)到了PPIO邊緣云 CEO&聯(lián)合創(chuàng)始人王聞?dòng)?#xff0c;由他來(lái)向我們講述共享經(jīng)濟(jì)模式下的邊緣計(jì)算。
文?| 王聞?dòng)?br />
整理 | LiveVideoStack
大家好,我是王聞?dòng)睢7浅8兄xLiveVideoStack的邀請(qǐng),也非常榮幸今天能和大家一起分享交流。
首先我做一個(gè)簡(jiǎn)單的自我介紹。早在2004年大學(xué)期間,我就開(kāi)始從事音視頻行業(yè),和姚欣一起開(kāi)發(fā)了當(dāng)時(shí)很知名的P2P 網(wǎng)絡(luò)電視軟件PPLive,后來(lái)改名為PPTV。在校期間,我一直在鉆研這個(gè)軟件,統(tǒng)籌主導(dǎo)PPTV的流媒體、P2P、點(diǎn)播、直播、編解碼等核心技術(shù),并擔(dān)任PPTV首席架構(gòu)師。2004年的網(wǎng)絡(luò)條件比現(xiàn)在要落后很多很多,當(dāng)時(shí)我們僅靠10Mb的發(fā)布帶寬,就穩(wěn)定支持了20多萬(wàn)人的同時(shí)直播在線觀看。當(dāng)然QoS 和今天的直播比還是有所差距,17年前國(guó)內(nèi)上網(wǎng)環(huán)境大多還是512k的ADSL,和今天的光纖完全不一樣。而當(dāng)時(shí)我們已經(jīng)取得了在512k ADSL下能穩(wěn)定支持450k視頻流暢播放的驕人成績(jī)。我深耕音視頻行業(yè)近二十載,2018年,在5G時(shí)代的萌芽階段,我看到了邊緣云計(jì)算未來(lái)不可估量的發(fā)展趨勢(shì),我認(rèn)為十年之后邊緣云所帶來(lái)的市場(chǎng)比當(dāng)時(shí)的中心云加起來(lái)還要大,懷著激動(dòng)的心情,我堅(jiān)定了我的信念,匯聚全球計(jì)算資源,并為全人類服務(wù),這也是我和姚欣一起創(chuàng)辦PPIO邊緣云的初衷。
那么如何匯聚全球計(jì)算資源呢?這就是我今天要和大家分享交流的話題:PPIO邊緣云是怎么用共享經(jīng)濟(jì)的思路做邊緣計(jì)算節(jié)點(diǎn)的?首先我要給大家解釋為什么我們要走共享經(jīng)濟(jì)的路線,其次在共享經(jīng)濟(jì)的路線之下,我們擁有哪些核心技術(shù),最后對(duì)PPIO邊緣云的解決方案做一個(gè)詳細(xì)的介紹。
1. 為什么選擇共享經(jīng)濟(jì)?
邊緣計(jì)算的使用場(chǎng)景更為多元化,其中包括直播流、邊緣AI、云游戲、AR/VR和其他低延遲的一些服務(wù),包括最近社交大火的Metaverse也因?yàn)槌脱舆t需要把算力部署在邊緣節(jié)點(diǎn)。PPIO邊緣云為什么要用共享經(jīng)濟(jì)的方式做邊緣計(jì)算?
1.1 邊緣的定義
說(shuō)到邊緣,到底什么是邊緣?上圖剛好是整個(gè)邊緣的一張譜圖,這個(gè)圖指的是站在運(yùn)營(yíng)商的角度來(lái)看邊緣。越往左越接近中心,越往右就越靠近用戶。而除了公有云DC以外,后邊的環(huán)節(jié)都可以認(rèn)為它是邊緣的一部分,其中主要有三類,一類是現(xiàn)在的大廠特別是幾大云公司,比如阿里云、騰訊云以及華為云,他們的邊緣節(jié)點(diǎn),主要部署在了骨干網(wǎng)邊緣,其本質(zhì)是對(duì)中心云架構(gòu)做了簡(jiǎn)化,成了“省級(jí)中心云”。第二類是把邊緣覆在了端側(cè),例如盒子、路由器等。第三類是PPIO邊緣云的優(yōu)勢(shì)所在,我們差異化地彌補(bǔ)了“省級(jí)中心云”與“端側(cè)”所形成的邊緣覆蓋鴻溝,在城域網(wǎng)部署網(wǎng)絡(luò)節(jié)點(diǎn),同時(shí)在接入網(wǎng)匯聚網(wǎng)絡(luò)資源,為客戶提供成本更為經(jīng)濟(jì)、質(zhì)量更加上乘的服務(wù)。
1.2 邊緣節(jié)點(diǎn)畫像
我們來(lái)看一下PPIO共享經(jīng)濟(jì)邊緣節(jié)點(diǎn)畫像,有三四線城市的IDC,有市縣級(jí)運(yùn)營(yíng)商城域網(wǎng)機(jī)房,有小區(qū)接入機(jī)房、企業(yè)的閑置機(jī)房等,還有一些曾經(jīng)是數(shù)字貨幣作為存儲(chǔ)挖礦的企業(yè)最后“棄暗投明”選擇為邊緣計(jì)算做貢獻(xiàn),提供更有價(jià)值的服務(wù)。
1.3 邊緣云和中心云的差異
基于這樣的邊緣,它和中心云之間存在多個(gè)維度的區(qū)別,既有服務(wù)器部署位置的維度,也有硬件配置、網(wǎng)絡(luò)接入以及資源利用率的不同。如果用類似云公司的方式來(lái)做邊緣,從做幾萬(wàn)甚至十幾萬(wàn)的節(jié)點(diǎn)角度去看,要重復(fù)投入大量的資本去購(gòu)買寬帶自建,時(shí)間周期也非常漫長(zhǎng)。在這樣的背景下,PPIO邊緣云采用了新的建設(shè)方式:不再靠自己部署的方式去建設(shè),而是借鑒共享經(jīng)濟(jì)的一些理念,建立一套共享經(jīng)濟(jì)的開(kāi)拓機(jī)制,在全國(guó)范圍內(nèi)開(kāi)發(fā)這樣的邊緣節(jié)點(diǎn),將閑置資源利用起來(lái)。?
1.4 共享經(jīng)濟(jì)模式的邊緣云架構(gòu)
PPIO共享經(jīng)濟(jì)模式的邊緣云架構(gòu),建立了一個(gè)縱橫交織的邊緣云平臺(tái)。縱向上,通過(guò)獨(dú)有技術(shù)將異構(gòu)資源進(jìn)行整合,為客戶提供穩(wěn)定、安全、可靠的服務(wù);橫向上,通過(guò)靠近用戶端的邊緣節(jié)點(diǎn)能力,以及與云廠商的聯(lián)動(dòng),打造了端到端的性能保障體系。
1.5面臨的挑戰(zhàn)
但是,基于共享經(jīng)濟(jì)模式建設(shè)邊緣云面臨諸多挑戰(zhàn):比如,在平臺(tái)上注冊(cè)上線的節(jié)點(diǎn),存在作弊的現(xiàn)象。這與網(wǎng)約車剛興起時(shí)所存在的,個(gè)別司機(jī)進(jìn)行虛擬交易現(xiàn)象類似。再如,高度異構(gòu)的問(wèn)題,這里既有網(wǎng)絡(luò)的異構(gòu)、硬件的異構(gòu),也有故障的異構(gòu)。另外,還有不可抗力因素,比如緊急性的停電等等,這都是要面對(duì)的挑戰(zhàn)。因此,PPIO邊緣云在基于共享經(jīng)濟(jì)進(jìn)行邊緣云建設(shè)時(shí),借鑒了當(dāng)年做P2P技術(shù)的主體思想:即,在面對(duì)局部的劇烈不穩(wěn)定性的情況下,通過(guò)技術(shù)手段的整合,用整體的確定性去解決局部的不確定性,從而達(dá)到整體的穩(wěn)定性。
1.6 邊緣節(jié)點(diǎn)存儲(chǔ)的異構(gòu)性
那么如何理解異構(gòu)呢?這里我重點(diǎn)講述兩部分。第一部分是存儲(chǔ)的異構(gòu),另一部分是網(wǎng)絡(luò)的異構(gòu)。存儲(chǔ)的異構(gòu)是怎么回事呢?因?yàn)楣蚕斫?jīng)濟(jì)模式下的邊緣節(jié)點(diǎn)相對(duì)孤立,沒(méi)有形成穩(wěn)定的集群。那么,我們的任務(wù)很難再像中心云那樣,在每個(gè)節(jié)點(diǎn)上都會(huì)有一個(gè)穩(wěn)定的存儲(chǔ)池,因此我們只能讓每個(gè)節(jié)點(diǎn)使用節(jié)點(diǎn)本地存儲(chǔ)。由于節(jié)點(diǎn)來(lái)自于不同的供應(yīng)商,存儲(chǔ)配置參差不齊:包括磁盤的數(shù)量、類型、IOPS、容量都不相同。而任務(wù)對(duì)于存儲(chǔ)的使用方式也是千變?nèi)f化,我們需要將不同的存儲(chǔ)抽象成統(tǒng)一的存儲(chǔ)資源,提供給任務(wù)來(lái)使用。這就是我們講的存儲(chǔ)異構(gòu)。
在這里我可以分享幾個(gè)例子:如上圖,第一個(gè)例子就是我們有些任務(wù)為了限制實(shí)例的日志空間,同時(shí)保護(hù)數(shù)據(jù)庫(kù)空間,要求分別為日志和數(shù)據(jù)庫(kù)劃分獨(dú)立的小分區(qū),而剩余的存儲(chǔ)空間則都用來(lái)做數(shù)據(jù)緩存。這樣即使日志寫多了,也不會(huì)影響到緩存數(shù)據(jù)和數(shù)據(jù)庫(kù),數(shù)據(jù)庫(kù)也有了獨(dú)立的存儲(chǔ)空間,避免被日志和緩存數(shù)據(jù)侵占。還有的任務(wù)要求劃分3個(gè)、4個(gè)甚至更多的獨(dú)立的固定大小分區(qū),同時(shí)也將剩余分區(qū)作為緩存。PPIO邊緣云采用統(tǒng)一的模式來(lái)支持這種多變的需求,只需簡(jiǎn)單配置即可。
我們還接到一些任務(wù),對(duì)存儲(chǔ)的要求非常高,需要建立起一套bcache的機(jī)制,把固態(tài)硬盤作為存儲(chǔ)的緩存機(jī)制來(lái)加速機(jī)械盤,從而把存儲(chǔ)設(shè)備利用率用到最高,如圖所示。
再舉個(gè)例子,有一些任務(wù)對(duì)CPU消耗很大,而任務(wù)實(shí)例只支持使用一個(gè)存儲(chǔ)卷。現(xiàn)實(shí)中,一個(gè)節(jié)點(diǎn)的CPU通常最多只能支持2~3個(gè)實(shí)例,節(jié)點(diǎn)上的盤的數(shù)量是遠(yuǎn)大于實(shí)例數(shù)的。因此,為了充分利用存儲(chǔ)資源,我們把多個(gè)盤通過(guò) LVM 合并成一個(gè)邏輯卷,提供給任務(wù)實(shí)例使用。這樣節(jié)點(diǎn)的存儲(chǔ)資源被充分利用,任務(wù)的服務(wù)能力也得到了較大提升。最有挑戰(zhàn)的是,有時(shí)候這幾個(gè)異構(gòu)同時(shí)出現(xiàn)在一個(gè)節(jié)點(diǎn)上,同時(shí)隨著任務(wù)的切換,節(jié)點(diǎn)上存儲(chǔ)的布局也要?jiǎng)討B(tài)地發(fā)生改變,以滿足新切任務(wù)的需要。
1.7 邊緣節(jié)點(diǎn)網(wǎng)絡(luò)異構(gòu)
那么理解了存儲(chǔ)異構(gòu),接下來(lái)我要分享的是網(wǎng)絡(luò)異構(gòu)。網(wǎng)絡(luò)異構(gòu)在我們做共享經(jīng)濟(jì)模式的邊緣節(jié)點(diǎn)的背景下,也是非常復(fù)雜的,有些資源具有公網(wǎng)IP地址,也有些資源在內(nèi)網(wǎng)NAT環(huán)境中;既有大帶寬的單線路的專線資源,也有一些小帶寬匯聚的線路資源。? 這種多線路的網(wǎng)絡(luò)環(huán)境稱為多路網(wǎng)絡(luò),這里面既有強(qiáng)服務(wù)器所帶來(lái)的服務(wù),也有強(qiáng)服務(wù)器通過(guò)NAT所實(shí)現(xiàn)的服務(wù)。在整個(gè)網(wǎng)絡(luò)中有些服務(wù)器機(jī)器的性能也不是那么強(qiáng),所以會(huì)存在計(jì)算能力相對(duì)較弱的節(jié)點(diǎn)的輸出。也就是說(shuō)我們是在一種比較復(fù)雜的網(wǎng)絡(luò)下,要兼容各種異構(gòu)的網(wǎng)絡(luò)環(huán)境。
這里舉個(gè)任務(wù)混跑的例子。常見(jiàn)的任務(wù)有兩種:一種任務(wù)是直接能看到多路網(wǎng)卡并且支持多路網(wǎng)絡(luò),比如圖示中的任務(wù)A,直接運(yùn)行于多路網(wǎng)絡(luò)然后輸出;另一種任務(wù)只能支持單路網(wǎng)絡(luò)輸出,比如圖示中的任務(wù)B。因此,我們要在技術(shù)上把網(wǎng)絡(luò)環(huán)境進(jìn)行打通,才能把網(wǎng)絡(luò)資源利用的更加充分。
另外,我們也開(kāi)發(fā)了一種Macvlan的方式,可以讓不同的網(wǎng)絡(luò)、任務(wù)看到的只是自己?jiǎn)我坏木W(wǎng)絡(luò)環(huán)境,完全隔離,只能看到自己的網(wǎng)絡(luò)而看不到別人的網(wǎng)絡(luò),從而形成一種干凈的環(huán)境,更加安全、穩(wěn)定、可靠。
2. 我們做了哪些技術(shù)?
基于剛才所分享的存儲(chǔ)的異構(gòu)、網(wǎng)絡(luò)的異構(gòu),以及用共享經(jīng)濟(jì)開(kāi)發(fā)建設(shè)的整個(gè)邊緣網(wǎng)絡(luò),PPIO邊緣云做了哪些核心技術(shù)呢?主要有三部分。第一部分是K8s@Edge,主要是做邊緣異構(gòu)資源的調(diào)度編排。第二部分是AI Ops@Edge ,基于大數(shù)據(jù)和人工智能的智能調(diào)度算法,使資源在細(xì)顆粒度下進(jìn)行精確調(diào)度,提升資源的利用率。第三部分是SDN@Edge,因?yàn)槲覀兊墓?jié)點(diǎn)一旦下沉之后,就會(huì)出現(xiàn)相互之間的連接,就會(huì)出現(xiàn)弱網(wǎng)甚至準(zhǔn)弱網(wǎng)的環(huán)境,所以我們是基于它來(lái)實(shí)現(xiàn)技術(shù)來(lái)完成。在這里我分享的三個(gè)部分都是我們使用的內(nèi)部技術(shù),而不是產(chǎn)品。
2.1 K8s
首先我講一下我們的邊緣編排,那么邊緣編排為什么不直接使用K8s?其實(shí)最根本的原因是設(shè)計(jì)的目的不一樣,K8s設(shè)計(jì)的時(shí)候是基于集群對(duì)外服務(wù)的穩(wěn)定性作為第一考慮而來(lái)的,而對(duì)PPIO邊緣云來(lái)說(shuō),我們?cè)O(shè)計(jì)目的是要做到資源最大化利用,這是兩個(gè)完全不同的設(shè)計(jì)目的。
那么具體會(huì)存在哪些問(wèn)題呢?第一個(gè)是K8s并沒(méi)有很好的適應(yīng)像我們這樣沒(méi)有集群的存儲(chǔ)池的環(huán)境,不能很好地把狀態(tài)歸檔在有限的存儲(chǔ)池里;第二個(gè)是在我們節(jié)點(diǎn)下沉之后,它會(huì)存在一種服務(wù),這種服務(wù)需要一些數(shù)據(jù),不是完全無(wú)狀態(tài)。而數(shù)據(jù)丟失也不會(huì)完全影響服務(wù),就類似于CDN的緩存,這樣的數(shù)據(jù)狀態(tài),我稱它為一種半狀態(tài)服務(wù)。但是這樣的任務(wù)不能完全隨意切換。第三個(gè)我們?cè)诮拥饺蝿?wù)的時(shí)候,因?yàn)槿蝿?wù)本身存在著在很大的調(diào)配性,所以我們就需要對(duì)節(jié)點(diǎn)進(jìn)行動(dòng)態(tài)修改,也就是說(shuō)在運(yùn)行過(guò)程中我們要靈活地把業(yè)務(wù)進(jìn)行切換,而這個(gè)切換會(huì)涉及到磁盤的劃分、網(wǎng)絡(luò)的劃分,而這些是K8s沒(méi)有考慮到的;最后一個(gè)是因?yàn)槲覀円坏┫鲁?#xff0c;面對(duì)一些比較異構(gòu)的網(wǎng)絡(luò)環(huán)境,面對(duì)弱網(wǎng)、內(nèi)網(wǎng)甚至多線等環(huán)境,我們需要對(duì)他們做一種增強(qiáng)的支持,這也是我們?yōu)槭裁床恢苯邮褂肒8s的原因。
不直接使用不代表我們不用K8s,因?yàn)镵8s的容器編排理念已經(jīng)深入人心,它的聲明式API,特別是Yaml文件,很多運(yùn)維人員已經(jīng)非常熟悉,且非常便捷。且它的生態(tài)強(qiáng)大,很容易基于K8s做一些二次的開(kāi)發(fā)。除此之外還可以極大地降低運(yùn)維和研發(fā)的遷移以及學(xué)習(xí)的成本。
2.2 K8s@Edge
所以在研發(fā)的時(shí)候我們的思路是源于K8s,不止于K8s。上圖是PPIO邊緣云對(duì)于K8s@Edge邊緣編排技術(shù)的架構(gòu)全圖,圖中白色虛線框中所示為K8s的原生架構(gòu),而藍(lán)色塊部分是我們?cè)诓桓膭?dòng)K8s的任何一行代碼的條件下,基于它的接口實(shí)現(xiàn)的擴(kuò)展。
Node這一側(cè),基于K8s 原生的架構(gòu),我們獨(dú)創(chuàng)了Tasklet。圖中黃色箭頭線是基于整個(gè)網(wǎng)絡(luò)定義擴(kuò)展出來(lái)的一套協(xié)議,支持我們整個(gè)的整個(gè)架構(gòu)。
在支持任務(wù)模型的時(shí)候,出于業(yè)務(wù)的需要,PPIO邊緣云不僅支持了K8S Pod、Docker的容器,還支持原生程序和Kata容器的下發(fā)。
同時(shí),針對(duì)環(huán)境的異構(gòu)性,我們專門做了針對(duì)邊緣的CPU、存儲(chǔ)以及網(wǎng)絡(luò)等特殊增強(qiáng)的隔離方案。
以上就是我們整個(gè)K8s@Edge的架構(gòu),它不但兼容了K8s命令,而且能夠把任務(wù)往邊緣節(jié)點(diǎn)進(jìn)行高效編排。
2.3 AIOps@Edge
講完了K8s@Edge,下邊要講的是PPIO邊緣云另一個(gè)核心技術(shù)就是AIOps@Edge,在講之前我們首先要理解AIOps@Edge本質(zhì)解決的不是簡(jiǎn)單的計(jì)算機(jī)架構(gòu)問(wèn)題,而是經(jīng)濟(jì)學(xué)問(wèn)題。這個(gè)經(jīng)濟(jì)學(xué)問(wèn)題是什么呢?基于共享經(jīng)濟(jì)模式所發(fā)展的PPIO邊緣云,它和傳統(tǒng)的云會(huì)有很大的區(qū)別,它不是單邊經(jīng)濟(jì),而是雙邊經(jīng)濟(jì)。
在整個(gè)模型中,既包含我們的用戶,也包括我們的資源供應(yīng)商,這是一種循環(huán)的聚合拉動(dòng)模式。而拉動(dòng)的關(guān)鍵就是在于需要盡可能把資源復(fù)用,讓不同的任務(wù)能同時(shí)使用資源,從而提高它的利用率。由于用戶是按量來(lái)服務(wù)的,利用率一旦能提升,我們才能給供應(yīng)商更多的收入和分成,從而能發(fā)展更多的邊緣節(jié)點(diǎn)。
而PPIO邊緣云所要做的是,既要考慮客戶的需求(即QoS/QoE,覆蓋的服務(wù)既要有廣度和規(guī)模,部署又要有彈性,需要量的時(shí)候要給得出量來(lái)),客戶面對(duì)的是異構(gòu)的任務(wù),而資源側(cè)則需要的是透明的記賬,這個(gè)賬到底是多少,不能隨意更改。
另外我們要有更好的利用率,要有穩(wěn)定的收入。而資源本身具有異構(gòu)性,而我們就是要解決在異構(gòu)的業(yè)務(wù)和異構(gòu)的資源環(huán)境下,同時(shí)滿足雙方的要求,從而完成雙邊經(jīng)濟(jì)。
那么AIOps@Edge的機(jī)制是什么?
首先,所有基礎(chǔ)運(yùn)維數(shù)據(jù)、資源狀態(tài)、客戶需求等數(shù)據(jù),會(huì)被我們完善的大數(shù)據(jù)分析平臺(tái)所采集。之后,大數(shù)據(jù)平臺(tái)會(huì)對(duì)數(shù)據(jù)進(jìn)行分析處理,并將初步結(jié)果導(dǎo)入AIOps@Edge市場(chǎng)經(jīng)濟(jì)撮合模型里,從而得到最終結(jié)果。最后,通過(guò)K8s@Edge邊緣編排系統(tǒng)進(jìn)行任務(wù)下發(fā),對(duì)任務(wù)和資源進(jìn)行精確匹配。
我們研發(fā)了一整套經(jīng)濟(jì)學(xué)的撮合機(jī)制,參考了博弈論的知識(shí),既考慮供給節(jié)點(diǎn)的效益,也考慮需求業(yè)務(wù)的效益,建立了一套交易模型,最后通過(guò)算法使它達(dá)到納什均衡,并且實(shí)現(xiàn)快速收斂,從而滿足了供給方和需求方的要求。
經(jīng)過(guò)苦心鉆研,通過(guò)AIOps@Edge技術(shù),我們的利用率整體做到了14.3%的提升,并且大大降低了錯(cuò)誤調(diào)度、重復(fù)調(diào)度,使得整體調(diào)度效率提升了34.7%。
2.4 SDN@Edge
完成AIOps@Edge后,PPIO邊緣云還面對(duì)一個(gè)問(wèn)題。我們下沉的節(jié)點(diǎn),相互之間的網(wǎng)絡(luò)連接其實(shí)并沒(méi)有骨干網(wǎng)那么強(qiáng)悍,甚至有些環(huán)境是準(zhǔn)弱網(wǎng)的狀態(tài)。什么是準(zhǔn)弱網(wǎng)呢?其實(shí)它也不是完全弱網(wǎng),有時(shí)候好,有時(shí)候變成弱網(wǎng),基于這樣的網(wǎng)絡(luò)在做調(diào)度、分發(fā)的時(shí)候,會(huì)出現(xiàn)很多問(wèn)題和異常,甚至想做的任務(wù)不能做到很好的調(diào)度,因此在這種環(huán)境下PPIO邊緣云研發(fā)了一套SDN@Edge的技術(shù),這個(gè)技術(shù)和之前P2P技術(shù)有很大類似的地方,相當(dāng)于在服務(wù)器節(jié)點(diǎn)之間建立了一套高效虛擬的傳輸網(wǎng)絡(luò),從而使得我們的模型與傳統(tǒng)云相比,不再是簡(jiǎn)單的樹(shù)型結(jié)構(gòu),而是網(wǎng)型架構(gòu),這就是我們的SDN@Edge 。
那么既然是SDN@Edge大家肯定會(huì)問(wèn)SDN@Edge和傳統(tǒng)SDN有什么區(qū)別,上圖是兩者的整體區(qū)別圖,后邊的幾張圖我會(huì)用一個(gè)顏色表示一個(gè)運(yùn)營(yíng)商,有兩個(gè)顏色的就表示要承擔(dān)跨越運(yùn)營(yíng)商的節(jié)點(diǎn)。那么左邊的圖是傳統(tǒng)的SDN的架構(gòu),基本上是在省級(jí)的骨干網(wǎng)之間通過(guò)中心的BGP節(jié)點(diǎn),甚至還有DCI專線建立一套軟件定義的網(wǎng)絡(luò)。傳統(tǒng)的SDN更多的是一種四層的軟件定義網(wǎng)絡(luò)。而PPIO邊緣云做的并不僅僅只是路由的問(wèn)題,而是繞開(kāi)了骨干網(wǎng),繞開(kāi)了三線互聯(lián),基本上是在城域網(wǎng)和接入網(wǎng)兩個(gè)環(huán)節(jié)打通整個(gè)網(wǎng)絡(luò),用了一種上層的算法協(xié)議來(lái)進(jìn)行路由決策,所以SDN@Edge是七層的軟件定義網(wǎng)絡(luò),通過(guò)它我們避免了使用昂貴的BGP帶寬。
那么在這里面PPIO邊緣云又做了哪些工作呢?我們實(shí)現(xiàn)了一套鏈路評(píng)估的機(jī)制,用于面對(duì)節(jié)點(diǎn)異構(gòu)問(wèn)題,節(jié)點(diǎn)既有多路的、單路的,也有內(nèi)網(wǎng)的,我們運(yùn)用了多種維度來(lái)進(jìn)行評(píng)估。評(píng)估方式包括谷歌的BWE,TTL以及成本Cost等;因?yàn)槲覀児?jié)點(diǎn)源于共享經(jīng)濟(jì)模式拓展,還考慮節(jié)點(diǎn)的歷史穩(wěn)定性。根據(jù)以上維度的數(shù)據(jù),我們給每條鏈路進(jìn)行定期打分。
分?jǐn)?shù)有什么作用呢?這就涉及到第二個(gè)環(huán)節(jié),并行傳輸。簡(jiǎn)單來(lái)說(shuō),并行傳輸就是從A 點(diǎn)到H 點(diǎn)是跨越運(yùn)營(yíng)商的,中間可能存在多節(jié)點(diǎn)。我們根據(jù)鏈路進(jìn)行打分,上圖我用線條粗細(xì)來(lái)區(qū)分,線條越粗,表示通信性能越好,越細(xì)表示性能更差。根據(jù)上圖所決定的分?jǐn)?shù),通過(guò)我們的算法,找到了多條鏈路,再對(duì)數(shù)據(jù)進(jìn)行分片,用不同的鏈路傳輸不同的數(shù)據(jù),多路同時(shí)傳輸,實(shí)現(xiàn)了完整的從A 點(diǎn)到H 點(diǎn)的通信。因?yàn)槲覀児?jié)點(diǎn)源于共享經(jīng)濟(jì)模式拓展,中間確實(shí)會(huì)存在有些節(jié)點(diǎn)突然離線的可能,一旦離線,我們會(huì)選擇另外的路徑來(lái)實(shí)行并行的傳輸,不會(huì)因?yàn)閱温窂街袛喽鴮?dǎo)致網(wǎng)絡(luò)的異常。
另外對(duì)于一些延遲要求很高的場(chǎng)景,我們還做了數(shù)據(jù)冗余的方案,簡(jiǎn)單來(lái)說(shuō)我們參考了RTC的FEC的技術(shù),把數(shù)據(jù)切片之后,用噴泉碼做了一定的擴(kuò)展,用上述的多個(gè)線路同時(shí)傳輸編碼數(shù)據(jù)。這個(gè)×表示數(shù)據(jù)的丟失,即使在傳輸過(guò)程中數(shù)據(jù)丟失,我們也能通過(guò)算法還原出完整的數(shù)據(jù)。因此如果有哪個(gè)鏈路在進(jìn)行傳輸?shù)臅r(shí)候數(shù)據(jù)發(fā)生了丟失,我們也能保證它的還原。通過(guò)數(shù)據(jù)冗余機(jī)制,我們對(duì)傳輸?shù)目煽啃院脱舆t的控制做的更好了。
以上三個(gè)技術(shù)的結(jié)合,PPIO邊緣云成功構(gòu)建了SDN@Edge。
接下來(lái)分享一下PPIO邊緣云實(shí)現(xiàn)1s延遲的直播案例,簡(jiǎn)單地說(shuō),從主播到節(jié)點(diǎn),我們的節(jié)點(diǎn)間是通過(guò)SDN@Edge來(lái)進(jìn)行傳輸?shù)?#xff0c;上圖中黃色虛線就是SDN@Edge虛擬鏈路,實(shí)現(xiàn)了運(yùn)營(yíng)商跨越。從一個(gè)運(yùn)營(yíng)商,數(shù)據(jù)傳輸?shù)搅肆硗鈨蓚€(gè)運(yùn)營(yíng)商,最終傳輸?shù)搅擞脩?#xff0c;這是我們案例的架構(gòu)圖。
3. PPIO邊緣解決方案
介紹完P(guān)PIO邊緣云的技術(shù),接下來(lái)我想分享一下基于這些技術(shù),以及我們成功解決了前面所說(shuō)的挑戰(zhàn)后,PPIO邊緣云所形成的解決方案。我們的服務(wù)主要分兩層,一層是IaaS,另一層是PaaS。我們的IaaS主要定位是廣覆蓋、海量節(jié)點(diǎn)、高性價(jià)比的邊緣容器服務(wù),主打的是穩(wěn)定可靠的高經(jīng)濟(jì)性服務(wù),既有裸金屬,也有容器,而PaaS則是我們基于客戶具體業(yè)務(wù)場(chǎng)景所提供的通用服務(wù)。
3.1 IaaS
首先講講IaaS,PPIO邊緣云的IaaS能提供裸金屬方案,也能提供重容器方案。是一個(gè)能夠同時(shí)支持多鏈路多路網(wǎng)絡(luò)的一套容器方案,可以更充分地利用網(wǎng)絡(luò)、硬盤、CPU內(nèi)存以及GPU來(lái)進(jìn)行服務(wù)。同時(shí)也可以支持多個(gè)場(chǎng)景,其中比較成熟的就是圖中畫實(shí)線的場(chǎng)景,虛線場(chǎng)景是我們正在探索并合作中的,如果有伙伴可以一起合作虛線場(chǎng)景,我們非常愿意傾力支持和配合。
3.2 PaaS
上圖是PPIO邊緣云PaaS的解決方案。我們的PaaS主要分為CDN、直播和游戲這三類。CDN主要是點(diǎn)播和下載的場(chǎng)景,直播主要是低延時(shí)互動(dòng),云游戲主要是渲染類的場(chǎng)景, PaaS 更多的是提供邊緣的網(wǎng)絡(luò)能力,使得延遲達(dá)到更低。在整個(gè)方案里,PPIO邊緣云有SDK的方案,也有無(wú)SDK的方案。無(wú)SDK 的方案,根據(jù)客戶需求,還可以做代碼的增強(qiáng)。由PPIO給出參考的代碼,在端側(cè)做簡(jiǎn)單的邏輯,從而使得無(wú)SDK 的時(shí)候質(zhì)量大大提升。而SDK方案,可以支持各種系統(tǒng)和瀏覽器,具備極強(qiáng)的兼容性。
以上是我對(duì)于邊緣云的一些理解和想法,同時(shí)也和大家分享了PPIO邊緣云在邊緣計(jì)算領(lǐng)域的一些構(gòu)思和核心技術(shù),希望在一個(gè)新的萬(wàn)億元級(jí)的藍(lán)海市場(chǎng)中,邊緣計(jì)算能成為新一輪技術(shù)升級(jí)的戰(zhàn)略要沖,爆發(fā)出更多可能性。同時(shí),PPIO邊緣云也將持續(xù)加大研發(fā)投入,不斷提升技術(shù)能力,以“工匠”精神保障極致用戶體驗(yàn),促進(jìn)跨行業(yè)應(yīng)用創(chuàng)新,賦能千行百業(yè)。
讓我們一同期待萬(wàn)物互聯(lián)的智能時(shí)代,目睹這場(chǎng)邊緣計(jì)算所帶來(lái)的巨大變革吧!
講師招募
LiveVideoStackCon 2022 音視頻技術(shù)大會(huì) 上海站,正在面向社會(huì)公開(kāi)招募講師,無(wú)論你所處的公司大小,title高低,老鳥(niǎo)還是菜鳥(niǎo),只要你的內(nèi)容對(duì)技術(shù)人有幫助,其他都是次要的。歡迎通過(guò)?speaker@livevideostack.com?提交個(gè)人資料及議題描述,我們將會(huì)在24小時(shí)內(nèi)給予反饋。
喜歡我們的內(nèi)容就點(diǎn)個(gè)“在看”吧!
總結(jié)
以上是生活随笔為你收集整理的共享经济模式下的边缘计算——PPIO边缘云 laaS技术实践分享的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 探讨视频云与边缘云平台的竞争力——基于S
- 下一篇: 【今晚7点半】:华为云在数字人领域的技术