您好,登錄后才能下訂單哦!
隨著越來(lái)越多的企業(yè)踏上業(yè)務(wù)出海的征程,亟待解決的問題便是:如何做到全球范圍內(nèi) IT 資源的快速調(diào)動(dòng)和信息暢通? 若選擇公網(wǎng)遠(yuǎn)距離傳輸,網(wǎng)絡(luò)時(shí)延和抖動(dòng)的體驗(yàn)很差;專線價(jià)格昂貴,多條專線還會(huì)造成運(yùn)維困難;隨著多云部署的流行,跨云傳輸也是企業(yè)所要面臨的難題之一。
企業(yè)出海,網(wǎng)絡(luò)先行。 在此背景下,UCloud 的 SD-WAN 產(chǎn)品羅馬 Rome 應(yīng)運(yùn)而生。與傳統(tǒng)方案相比,Rome 通過底層架構(gòu)設(shè)計(jì),在成本、性能、可用性等方面存在巨大的優(yōu)勢(shì)。例如利用 Segment Routing 提高轉(zhuǎn)發(fā)效率,智能鏈路調(diào)度實(shí)現(xiàn)秒級(jí)選路等,下面將重點(diǎn)介紹。
—— 01 ——
Rome:基于 SD-WAN 助力全球網(wǎng)絡(luò)加速
SD-WAN 技術(shù)是 SDN 在廣域網(wǎng)下的特定應(yīng)用,它通過消除物理設(shè)備的流量管理負(fù)擔(dān)并將其轉(zhuǎn)移到軟件,從而獲得部署和管理的靈活性,幫助用戶最大限度地減少管理基礎(chǔ)架構(gòu)和連接的麻煩。
| Rome 網(wǎng)絡(luò)構(gòu)成:核心網(wǎng) + 接入網(wǎng)
(1)Rome 核心網(wǎng)
基于 SD-WAN 技術(shù),Rome 核心網(wǎng)依托 UCloud 全球數(shù)據(jù)中心及跨地域、跨運(yùn)營(yíng)商網(wǎng)絡(luò),為用戶提供全球范圍內(nèi)的就近接入、鏈路動(dòng)態(tài)調(diào)度,實(shí)現(xiàn)端到端的高穩(wěn)定連接,規(guī)避骨干網(wǎng)絡(luò)故障、跨地域 / 跨運(yùn)營(yíng)商擁堵等導(dǎo)致的響應(yīng)慢 、丟包等問題。
圖:分布全球的 Rome 核心網(wǎng)
(2)Rome 接入網(wǎng)
Rome 提供多種場(chǎng)景接入,包含專線、多云、混合云、互聯(lián)網(wǎng)等,用戶需選擇最合適的接入方式。Rome 將用戶接入同地域或鄰近地域核心網(wǎng)轉(zhuǎn)發(fā)節(jié)點(diǎn),由 Rome 核心網(wǎng)將流量分發(fā)至目的地域,用戶可選的接入方式如下:
① 初期業(yè)務(wù)量較小時(shí),可選擇 EIP 方式接入 ,該方式屬于同地域 EIP 互聯(lián),不會(huì)對(duì)網(wǎng)絡(luò)質(zhì)量造成影響;② 當(dāng)業(yè)務(wù)量較大時(shí),可選擇專線方式接入,該方式可以極大程度的保證網(wǎng)絡(luò)質(zhì)量,且當(dāng)接入專線均發(fā)生故障時(shí),Rome 支持無(wú)縫切換至 EIP 以保證用戶業(yè)務(wù)正常。專線接入方式可以通過 UCloud 控制臺(tái)實(shí)現(xiàn)一鍵打通,后續(xù) Rome 也將同步上線 EIP 一鍵打通功能,用戶無(wú)需等待漫長(zhǎng)的施工周期。
| 控制平面與數(shù)據(jù)轉(zhuǎn)發(fā)平面相分離
由于遠(yuǎn)距離傳輸?shù)奶厥庑?,SD-WAN 根據(jù)功能分離為控制平面和數(shù)據(jù)轉(zhuǎn)發(fā)平面,這樣的分離能夠大大增加網(wǎng)絡(luò)服務(wù)的敏捷性,可以更加智能地從數(shù)據(jù)平面到更加抽象的和可編程的控制平面遷移。Rome 同樣由控制面和轉(zhuǎn)發(fā)面兩部分組成,完成數(shù)據(jù)高可靠傳輸?shù)谋U稀?/p>
(1)Rome 控制平面設(shè)計(jì)
控制平面主要負(fù)責(zé)網(wǎng)絡(luò)信號(hào)的交換和數(shù)據(jù)包路由的選擇,它也包含設(shè)備的系統(tǒng)配置和管理,同時(shí)還負(fù)責(zé)保障業(yè)務(wù)面通暢的控制管道。
圖:UK8S 同城雙活架構(gòu)
如上圖,Rome 控制層采用 UK8S 同城雙活架構(gòu),每個(gè)應(yīng)用多副本對(duì)等部署在兩個(gè)數(shù)據(jù)中心的 UK8S 集群,利用域名解析服務(wù) DNS 將入口流量分別導(dǎo)入兩個(gè)集群,有效預(yù)防并降低由于單個(gè)數(shù)據(jù)中心出口或單個(gè)副本故障造成的業(yè)務(wù)不可用,在集群 (數(shù)據(jù)中心) 和應(yīng)用層面保證了業(yè)務(wù)的穩(wěn)定性和高可用性。
此外,控制層分別由 API、TASK、CONFIG、Monitor、DB 以及 Analysis 組成,各組件執(zhí)行邏輯如下圖:當(dāng) API 接收到數(shù)據(jù)轉(zhuǎn)發(fā)請(qǐng)求時(shí),便會(huì)下發(fā)至各個(gè) UK8S 集群中。TASK 為主要邏輯執(zhí)行者,CONFIG 則負(fù)責(zé)對(duì)轉(zhuǎn)發(fā)面各個(gè)網(wǎng)元進(jìn)行配置下發(fā)等操作,DB Agent 則負(fù)責(zé)保存需要持久化的數(shù)據(jù),Analysis 對(duì) Rome 核心網(wǎng)進(jìn)行調(diào)度,保證用戶流量能 Run 在最優(yōu)路徑上,最終由 Monitor 完成對(duì)各服務(wù)以及 Rome 核心網(wǎng)狀態(tài)及質(zhì)量的監(jiān)控。
圖:Rome 控制面執(zhí)行邏輯示意圖
其中,Analysis 和 Monitor 對(duì)鏈路調(diào)度起著關(guān)鍵性的作用,下文還會(huì)詳細(xì)介紹。
(2)Rome 轉(zhuǎn)發(fā)平面設(shè)計(jì)
轉(zhuǎn)發(fā)平面主要承載網(wǎng)絡(luò)的轉(zhuǎn)發(fā)應(yīng)用和用戶數(shù)據(jù),由高吞吐轉(zhuǎn)發(fā)節(jié)點(diǎn)組成。Rome 基于 DPDK 實(shí)現(xiàn)高吞吐低時(shí)延的包轉(zhuǎn)發(fā)節(jié)點(diǎn),且任意兩節(jié)點(diǎn)之間均采用專線作為主線路,保證線路網(wǎng)絡(luò)高可靠。
圖:Rome 轉(zhuǎn)發(fā)面架構(gòu)圖
如上圖,每個(gè)轉(zhuǎn)發(fā)節(jié)點(diǎn)和接入節(jié)點(diǎn)均由雙節(jié)點(diǎn)組成,且互為主備。當(dāng)主節(jié)點(diǎn)不可達(dá)時(shí)自動(dòng)切換到備節(jié)點(diǎn),可做到秒級(jí)切換,從而最大程度上保證網(wǎng)絡(luò)質(zhì)量。此外,Rome 各地域之間形成環(huán)網(wǎng),由 Analysis 根據(jù)路徑質(zhì)量對(duì)路徑進(jìn)行統(tǒng)一調(diào)度。
值得一提的是,Rome 還采用了 Segment Routing (以下簡(jiǎn)稱 SR) 技術(shù)。
SR 是一種新型的 MPLS 技術(shù),其中控制平面基于 IGP 路由協(xié)議擴(kuò)展實(shí)現(xiàn),轉(zhuǎn)發(fā)層面基于 MPLS 轉(zhuǎn)發(fā)網(wǎng)絡(luò)實(shí)現(xiàn),SR 的好處在于簡(jiǎn)化了 MPLS 控制協(xié)議、減少資源占用、簡(jiǎn)化網(wǎng)絡(luò)運(yùn)維和管理,增強(qiáng)路徑調(diào)整和控制能力。
Rome 轉(zhuǎn)發(fā)平面采用 SR 路由方式實(shí)現(xiàn)流量轉(zhuǎn)發(fā)??刂破矫娓鶕?jù)實(shí)時(shí)網(wǎng)絡(luò)質(zhì)量計(jì)算出兩點(diǎn)間的最優(yōu)路徑,并為鄰接節(jié)點(diǎn)分配標(biāo)簽(用于標(biāo)識(shí) SR 網(wǎng)絡(luò)中的路由鄰接鏈路,是 SR-TE 主要使用的標(biāo)簽類型,鏈路標(biāo)簽具有一定的方向性,用于指導(dǎo)報(bào)文的轉(zhuǎn)發(fā),僅在源節(jié)點(diǎn)本地有效),為整條路徑分配標(biāo)簽棧(標(biāo)簽排序的集合,用于表示一條完整的 LSP)。轉(zhuǎn)發(fā)節(jié)點(diǎn)識(shí)別報(bào)文攜帶的標(biāo)簽,并根據(jù)標(biāo)簽進(jìn)行路由。Rome 應(yīng)用 SR 大大提高了網(wǎng)絡(luò)的轉(zhuǎn)發(fā)效率,降低時(shí)延,最大程度保障了用戶的使用體驗(yàn)。
—— 02 ——
條條大道通羅馬:實(shí)時(shí)監(jiān)控下的智能鏈路調(diào)度
高穩(wěn)定與高性能之外,網(wǎng)絡(luò)的靈活性和敏捷性有時(shí)反而更為關(guān)鍵:那如何根據(jù)用戶需求與網(wǎng)絡(luò)實(shí)時(shí)狀態(tài)快速做到最優(yōu)鏈路調(diào)度,從而實(shí)現(xiàn)數(shù)據(jù)在全球范圍內(nèi)的無(wú)縫流動(dòng)呢? ?Rome 的答案是在選路和切換時(shí)的智能鏈路調(diào)度技術(shù),舉個(gè)例子:用戶在用網(wǎng)絡(luò)的兩鄰接節(jié)點(diǎn)時(shí)延突增時(shí),Rome 會(huì)在秒級(jí)內(nèi)將流量切換至相鄰時(shí)延較小的節(jié)點(diǎn),從而保證整體網(wǎng)絡(luò)質(zhì)量。
| 建立線路質(zhì)量元數(shù)據(jù)
首先,Rome 通過建立細(xì)粒度的線路質(zhì)量元數(shù)據(jù),實(shí)現(xiàn)數(shù)據(jù)實(shí)時(shí)監(jiān)控的良好基礎(chǔ),也幫助網(wǎng)絡(luò)運(yùn)維人員能夠更加便捷實(shí)時(shí)地掌握全球業(yè)務(wù)數(shù)據(jù)動(dòng)態(tài)與流向。
圖:線路質(zhì)量元數(shù)據(jù)實(shí)時(shí)監(jiān)控示意
如上圖,Rome 分為接入節(jié)點(diǎn)、轉(zhuǎn)發(fā)節(jié)點(diǎn)及 DB 三部分完成線路質(zhì)量元數(shù)據(jù)的建立與實(shí)時(shí)監(jiān)控,接入節(jié)點(diǎn) & 轉(zhuǎn)發(fā)節(jié)點(diǎn)負(fù)責(zé)定時(shí)上報(bào)線路丟包率、線路時(shí)延、帶寬負(fù)載、接入點(diǎn) CPU 使用率、接入點(diǎn)磁盤利用率等數(shù)據(jù),DB 將所有數(shù)據(jù)保存以供后臺(tái)實(shí)時(shí)分析與監(jiān)控。
每個(gè)接入節(jié)點(diǎn)、轉(zhuǎn)發(fā)節(jié)點(diǎn)均有主備節(jié)點(diǎn),且接入節(jié)點(diǎn)與轉(zhuǎn)發(fā)節(jié)點(diǎn)為網(wǎng)狀連接、轉(zhuǎn)發(fā)節(jié)點(diǎn)之間也為網(wǎng)狀連接,如下圖,所有轉(zhuǎn)發(fā)節(jié)點(diǎn)組成 Rome 核心網(wǎng)。
圖:Rome 核心網(wǎng)
| 智能選路
基于分布全球的專用線路,Rome 通過鏈路智能檢測(cè)技術(shù),提供更加靈活高可靠的選路。智能選路分為兩方面:接入節(jié)點(diǎn)選路和轉(zhuǎn)發(fā)節(jié)點(diǎn)選路。
(1)接入節(jié)點(diǎn)選路
以地域 0 為例,如下圖,用戶 VPC——> 接入點(diǎn) VPC——> 轉(zhuǎn)發(fā)點(diǎn) VPC 為打通狀態(tài),默認(rèn)分別與主節(jié)點(diǎn)相連,在接入節(jié)點(diǎn)為用戶 VPC 創(chuàng)建 TC 規(guī)則,接入節(jié)點(diǎn)與轉(zhuǎn)發(fā)節(jié)點(diǎn)通過隧道封裝報(bào)文。
圖:用戶 VPC——> 接入點(diǎn) VPC——> 轉(zhuǎn)發(fā)點(diǎn) VPC 打通
接著,Rome 會(huì)在 Local 接入節(jié)點(diǎn)與 Remote 接入節(jié)點(diǎn)分別進(jìn)行鏈路檢測(cè),將鏈路檢測(cè)結(jié)果持久化,由 Monitor 拉取鏈路檢測(cè)結(jié)果,并根據(jù)該結(jié)果選擇接入節(jié)點(diǎn)與轉(zhuǎn)發(fā)節(jié)點(diǎn)的路徑。
鏈路檢測(cè)結(jié)果包含以下幾個(gè)維度:Local 接入節(jié)點(diǎn)到 Local 轉(zhuǎn)發(fā)節(jié)點(diǎn)可達(dá)性、丟包率及時(shí)延;Local 接入節(jié)點(diǎn)到 Remote 接入節(jié)點(diǎn)可達(dá)性、丟包率以及時(shí)延;Local 轉(zhuǎn)發(fā)節(jié)點(diǎn)負(fù)載。最終會(huì)出現(xiàn)以下三類情況:
① 若 Local 主接入節(jié)點(diǎn)到 Local 主轉(zhuǎn)發(fā)節(jié)點(diǎn)不可達(dá)或網(wǎng)絡(luò)質(zhì)量較差,則選擇 Local 備接入節(jié)點(diǎn)到 Local 備轉(zhuǎn)發(fā)節(jié)點(diǎn)路徑;② 若 Local 主接入節(jié)點(diǎn)到 Remote 主接入節(jié)點(diǎn)不可達(dá)或網(wǎng)絡(luò)質(zhì)量較差,則選擇 Local 備接入節(jié)點(diǎn)到 Remote 備接入節(jié)點(diǎn);③ 若 Local 主轉(zhuǎn)發(fā)節(jié)點(diǎn)負(fù)載較高,則選擇 Local 備接入點(diǎn)節(jié)點(diǎn)到 Local 備轉(zhuǎn)發(fā)節(jié)點(diǎn)。
(2)轉(zhuǎn)發(fā)節(jié)點(diǎn)選路
以地域 0-> 地域 2 為例,地域 0-> 地域 2 的可用路徑有地域 0-> 地域 1-> 地域 2 和地域 0-> 地域 3-> 地域 2,每?jī)舌徑拥赜虻闹鱾滢D(zhuǎn)發(fā)節(jié)點(diǎn)均互連,即:兩鄰接地域的 link 有 4 條。
圖:地域 0-> 地域 1-> 地域 2 轉(zhuǎn)發(fā)示意
Rome 同樣對(duì)鄰接轉(zhuǎn)發(fā)節(jié)點(diǎn)進(jìn)行鏈路檢測(cè),將鏈路檢測(cè)結(jié)果持久化,由 Analysis 拉取鏈路檢測(cè)結(jié)果,并根據(jù)該結(jié)果選擇鄰接轉(zhuǎn)發(fā)節(jié)點(diǎn)的 link。
鏈路檢測(cè)結(jié)果包含以下幾個(gè)維度:鄰接轉(zhuǎn)發(fā)節(jié)點(diǎn)間可達(dá)性、時(shí)延以及丟包率;轉(zhuǎn)發(fā)節(jié)點(diǎn)負(fù)載;資費(fèi)。鏈路檢測(cè)及調(diào)度步驟如下:
① 根據(jù)源和目的轉(zhuǎn)發(fā)節(jié)點(diǎn)信息計(jì)算出源轉(zhuǎn)發(fā)節(jié)點(diǎn) -> 目的轉(zhuǎn)發(fā)節(jié)點(diǎn)的可用路徑;② 根據(jù)所有可用路徑每根 link 的時(shí)延、丟包率、負(fù)載、資費(fèi),計(jì)算出一個(gè) cost 值,從而為每條可用路徑計(jì)算出一個(gè)總的 cost 值;③ 根據(jù)每條可用路徑的 cost 值選擇最優(yōu)路徑,為整條路徑經(jīng)過的轉(zhuǎn)發(fā)節(jié)點(diǎn)分配標(biāo)簽,當(dāng)流量進(jìn)入某轉(zhuǎn)發(fā)節(jié)點(diǎn)之后根據(jù)標(biāo)簽選擇下一跳;④ cost 計(jì)算原則(cost 越小路徑優(yōu)先級(jí)越高):? 網(wǎng)絡(luò)不可達(dá)時(shí) cost 最大;? 網(wǎng)絡(luò)可達(dá)時(shí)專線 cost=a 時(shí)延 + b 丟包率 + c 轉(zhuǎn)發(fā)節(jié)點(diǎn)負(fù)載;? 網(wǎng)絡(luò)可達(dá)時(shí) EIP cost=x(a 時(shí)延 + b 丟包率 + c * 轉(zhuǎn)發(fā)節(jié)點(diǎn)負(fù)載),由于資費(fèi)原因 x>1。
| 智能切換
智能切換分為接入節(jié)點(diǎn)切換和轉(zhuǎn)發(fā)節(jié)點(diǎn)切換,且所有切換動(dòng)作在秒級(jí)完成,當(dāng)在用網(wǎng)絡(luò)出現(xiàn)故障時(shí)能夠保證第一時(shí)間切換為正常線路。當(dāng) link 所有專線均故障時(shí),也會(huì)及時(shí)將流量切換至 EIP,為用戶提供穩(wěn)定可靠的網(wǎng)絡(luò)質(zhì)量。
(1)接入節(jié)點(diǎn)切換
Monitor 根據(jù)接入節(jié)點(diǎn)選路原則進(jìn)行最優(yōu)路徑的計(jì)算,當(dāng)計(jì)算出的最優(yōu)路徑與當(dāng)前路徑不相同時(shí),比較兩路徑的 cost 值:
①(當(dāng)前路徑 cost 值 – 最優(yōu)路徑 cost 值)/ 當(dāng)前路徑 cost 值 < 閾值,維持原路徑狀態(tài);②(當(dāng)前路徑 cost 值 – 最優(yōu)路徑 cost 值)/ 當(dāng)前路徑 cost 值 > 閾值,將用戶 VPC 路由指向備用接入節(jié)點(diǎn),互換主備接入節(jié)點(diǎn)角色。
(2)轉(zhuǎn)發(fā)節(jié)點(diǎn)切換
Analysis 每次選路之后都會(huì)做一個(gè)路徑 cost 值的切片,根據(jù)轉(zhuǎn)發(fā)節(jié)點(diǎn)選路原則選出當(dāng)前線路的最優(yōu) link(兩鄰接轉(zhuǎn)發(fā)節(jié)點(diǎn)的有效路徑),當(dāng)最優(yōu) link 與當(dāng)前 link 不相同時(shí),比較兩 link 的 cost 值:
①(當(dāng)前 link cost 值 – 最優(yōu) link cost 值)/ 當(dāng)前 link cost 值 < 閾值時(shí),維持原路徑狀態(tài);②(當(dāng)前 link cost 值 – 最優(yōu) link cost 值)/ 當(dāng)前 link cost 值 > 閾值時(shí),為最優(yōu) link 分配標(biāo)簽,并同步更新最優(yōu)路徑信息,將流量引入新計(jì)算出的最優(yōu)路徑。
—— 03 ——
Rome 應(yīng)用實(shí)例:境外跨地域多云電商場(chǎng)景
目前,Rome 可支持多場(chǎng)景下的應(yīng)用部署,包括多云場(chǎng)景、跨云災(zāi)備等,此處我們以境外跨地域多云場(chǎng)景為例介紹。
某跨地域多云電商為保證全球范圍內(nèi)的業(yè)務(wù)高可靠,在初期網(wǎng)絡(luò)搭建時(shí)選擇了多云方案支持全球業(yè)務(wù)部署:倉(cāng)儲(chǔ)系統(tǒng)分布于 a 云廠商?hào)|京地域,Web 業(yè)務(wù)則分布在 b 云廠商俄勒岡地域。但是由于后期業(yè)務(wù)量增大,Web 業(yè)務(wù)需要實(shí)時(shí)訪問倉(cāng)儲(chǔ)系統(tǒng),這就需要分布于不同云廠商的兩處網(wǎng)絡(luò)實(shí)現(xiàn)全球范圍內(nèi)的快速可靠通信。
不同云廠商之間存在接口協(xié)議區(qū)分,很難做到直接打通,更遑論還需達(dá)到遠(yuǎn)距離實(shí)時(shí)傳輸?shù)哪康?,這本應(yīng)該是一件不可能實(shí)現(xiàn)的訴求。最終,該電商采用了 Rome 方案成功解決,網(wǎng)絡(luò)架構(gòu)方案如下圖所示。
圖:境外跨地域多云電商應(yīng)用實(shí)例
同時(shí),Rome 的使用也非常簡(jiǎn)單便捷,即便是如此復(fù)雜的跨地域多云場(chǎng)景,用戶只需在控制臺(tái)上做一些簡(jiǎn)單的操作,無(wú)需關(guān)心路由配置等問題便可實(shí)現(xiàn)跨地域多云網(wǎng)絡(luò)的一鍵打通。用戶操作完后,Rome 會(huì)為用戶在需要打通的地域分配接入節(jié)點(diǎn),并將接入節(jié)點(diǎn)連通 Rome 核心網(wǎng)內(nèi)最近的轉(zhuǎn)發(fā)節(jié)點(diǎn),從而實(shí)現(xiàn)跨地域多云下的遠(yuǎn)距離互聯(lián)互通。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。