作者:蔡伸? ?單位:中國移動智慧家庭運營中心
在東數西算的大背景下,為深入落實中國移動集團云網融合升級戰(zhàn)略,實現為用戶提供“連接+算力+能力”一體化服務,達成“網絡無所不達、算力無所不在、智能無所不及”的愿景,中國移動智慧家庭運營中心開拓創(chuàng)新,推出云網關產品,將網關云化放在邊緣側,為家庭算網的發(fā)展和推廣打下堅實的基礎。云網關是SDN架構下的產物,轉發(fā)面和控制面分離是其中的核心思想,今天就來帶大家簡單了解一下智慧家庭云網關的轉控分離對接技術。
1、什么是“云網關”?
云網關主要是指將用戶接入網關放到邊緣云側,云網關承接用戶上網,增值業(yè)務流量調度等功能。服務提供側通過云網關就近接入各類業(yè)務,使用戶能夠簡單的實現一跳上云,簡單高效地體驗穩(wěn)定高性能的海量增值業(yè)務。
云網關的部署應用更加接近用戶家庭,結合算力網絡的規(guī)劃,以云網關為基礎,發(fā)展云網關衍生應用,可以發(fā)掘海量的家庭“算力”,為家庭算力的模型構建以及運用打下一個堅實的基礎。
當然,云網關的種種好處離不開它基于SDN網絡架構的核心思想,即轉發(fā)和控制分離的理念。
2、“云網關”開創(chuàng)用戶上網新模式
云網關開創(chuàng)了一種用戶接入網絡新形式。家庭寬帶上網方式的發(fā)展歷史可以概括為從撥號連接到電纜調制解調器,到DSL和光纖到戶,再到云網關,網絡速度和連接方式不斷升級,用戶的上網體驗也越來越好。
總的來說,互聯網接入中國的二十多年里,家庭寬帶用戶上網的方式發(fā)生了多次重大的變化,每次變化都給用戶的體驗和服務質量帶來了跨越式的提升,云網關也不例外。
3、“云網關”的技術架構
云網關基于SDN思想,實現了一套轉控分離的高性能轉發(fā)框架。
轉發(fā)面:在云網關中,轉發(fā)面(轉發(fā)進程)主要負責根據策略,路由等規(guī)則,進行高性能純數據包的轉發(fā)和流量調度。
控制面:與傳統的設計不同的是,在云網關中控制面分成兩個層級。
(1)設備控制面
云網關的設備控制面,主要負責一些路由協議的協商和鄰居建立,如BGP、OSPF、RIP等常見協議路由獲取導入以及生成,再通過轉控對接方式,將計算后的路由結果下發(fā)給轉發(fā)面,轉發(fā)面只需要根據下發(fā)的路由結果進行數據包的匹配轉發(fā),不需要參與到特定的路由計算和生成環(huán)節(jié)。
與此同時,設備控制面還負責協議的控制報文生成和交互,如IPsec加密隧道的IKE生成等。除此之外,設備控制面還負責ARP報文的解析生成ARP表項的下發(fā),同步轉發(fā)面和控制面接口MTU等一系列需要計算和維護的功能。
由此可以看出,一系列功能的處理和運行,對設備內部控制面和轉發(fā)面的對接方式有了較高的要求,具體會在下個章節(jié)進行介紹。
(2)控制器以及運營平臺
云網關網元層面的控制面,就是一般意義上的SDN控制面,如上圖所示,總的來說在云網關管理系統中,管理面(云網關控制器以及運營平臺)主要負責網絡拓撲發(fā)現和管理、流量控制和管理、網絡安全管理、業(yè)務訂單管理等功能,與設備內部層面不同的是,網元側控制面在更宏觀的角度對設備進行管理,對網絡進行調度編排,更充分劃分了一個大腦的功能。
然而,網絡拓撲發(fā)現,流量控制,訂單管理依賴各類完全不同的南北向接口,對轉發(fā)面控制面的邊界劃分,內部協議貫通對齊,都有新的挑戰(zhàn),對架構規(guī)劃以及研發(fā)能力有較高要求。
4、“云網關”的轉控對接方案
綜合前面幾個小節(jié)所描述的,因為云網關的轉發(fā)面控制面分為設備內部和網元單元,所以云網關的轉控對接技術,不能簡單的理解成傳統意義上設備和控制器的南北向接口,設備內部的實現更多地基于底層驅動的設計實現,計算機底層原理的理解運用,而網元單元更多的是網絡業(yè)務相結合的技術。
4.1 常見的南北向接口
? OpenFlow
OpenFlow是一種網絡通信協議,伴隨SDN誕生,可以說是最早的南向協議,屬于數據鏈路層,能夠控制網上交換器或路由器的轉發(fā)平面(forwarding plane),借此改變網絡數據包所走的網絡路徑。
? Netconf
IETF在2003年5月成立了Netconf工作組,該工作組主要是為了提出一個全新的基于XML的網絡配置(Netconf)協議而成立的。該工作組已于2006年12月通過了Netconf協議的基本標準RFC4741-4744,2011年6月RFC6241、RFC6242替代了原有的 RFC4741、RFC4742,RFC4743和 RFC4744則被標記為歷史資料。
? PCEP
路徑計算單元協議(Path Computation Element Protocol,PCEP):為MPLS網絡域間流量工程(Traffic Engineering,TE)等應用提出的,以支持集中化的路徑計算。
如上所述,云網關也有一套自己的南北向對接方式。
4.2 “云網關”網元對接接口
云網關的控制面負責網絡拓撲管理、流量調度、安全管理和業(yè)務訂單管理等功能。換言之,控制面需要與轉發(fā)面對齊相關信息,以便在數據傳輸通道(如統計和調度)和網絡信息通道(如拓撲發(fā)現)中進行交互。
? 普通數據通道
云網關實際部署時,發(fā)現常常需要將云網關部署在私有局域網,而云管平臺(控制面)則部署在公網中,故云網關在設計時,使用Websocket在轉發(fā)面和控制面之間建立了一個TCP長連接雙向通道,但是由于Websocket的重傳機制不太友好,同時需要為轉發(fā)面控制面另外預留一條HTTPS的網絡接口用于數據發(fā)送接收。
傳輸的消息格式,采用RestFul風格設計,能夠快速便捷地進行設備編排管控。
? 網絡信息通道
網絡拓撲收集和拓撲自生成,是路徑調度,網絡編排的基礎,僅這個模塊就是非常復雜的。云網關在設計過程中,依賴了BGP的能力,在一定場景下(云網關作為POP設備時),通過BGP-LS能力和控制器建立BGP-LS鄰居,云網關通過BGP的路由屬性,攜帶計算好的拓撲信息至控制器,控制器通過BGP協議能夠快速解析生成網絡拓撲。
然而,該方案需要控制器支持南向BGP-LS接口,因為BGP-LS是BGP的一種擴展屬性,很多設備和控制器不一定能夠支持。云網關在設計過程中,結合POP探究場景,提出了一種基于SRv6的拓撲快速生成方法,并申請了相關專利,在該方案中,控制器只要擁有普通數據通道即可快速或許拓撲信息。
4.3 “云網關”設備內部轉控對接
回到設備內部,上文提到了設備內部也需要面臨轉控對接的問題。同樣,也存在兩個具體的南北向通道大類,一個是數據交互通道,一個是控制報文交互通道。
? 數據交互通道
設備內部的數據交互通道,是用來下發(fā)設備內部控制面計算好的路由,IP以及ARP等信息,以數據的形式下發(fā)至轉發(fā)面,轉發(fā)面拿到相關信息調用相應接口,在轉發(fā)面增刪改這些基本信息。
在云網關中,數據通道利用了Linux內核自帶的Netlink消息作為載體,控制面進程在計算完信息后,如BGP協議建立BGP鄰居通過路由重分布獲取到路由,控制面進程通過路由屬性判斷好路由優(yōu)先級,最終加入FIB轉發(fā)表中時,除非Netlink消息,發(fā)送至設備轉發(fā)進程,由于數據量可能會很大,轉發(fā)進程結合Epoll機制,創(chuàng)建大量Socket,最終實現高效的數據信息下發(fā)。
? 控制報文交互通道
上文提到了,設備內部控制面還要負責控制報文協商,比如BGP的OPEN報文,IPsec的IKE等。那么如何將這部分報文從轉發(fā)進程中分離出來,通過哪種途徑通道將數據包發(fā)送到控制面,控制面如何發(fā)送給轉發(fā)面。不過作為控制報文,可以犧牲一小部分性能。
云網關在設計時,針對這塊采用了通過Linux內核驅動創(chuàng)建Tun/Tap口,轉發(fā)面和控制面均通過這個虛擬硬件口收發(fā)控制報文,云網關同時針對這個方案進行了Linux內核驅動的優(yōu)化修改,提升了幾倍性能。
5、“云網關”的應用和未來
云網關的研發(fā)和推出,完成了許許多多的技術積累和創(chuàng)新突破,積累了一定技術能力,以轉控對接技術為例,這類技術不僅僅在云網關上適用,相應的技術創(chuàng)新和積累還可以在整個SDN網絡以及未來將要構建的算網底座中使用。
除了完成技術創(chuàng)新和積累,中國移動智慧家庭運營中心將以云網關為基礎,研發(fā)部署云化業(yè)務插件、基于SFC業(yè)務鏈技術的調度系統, 面向不同客戶場景,通過家庭網絡調度能力,實現上網安全、應用加速等增值服務快速加載部署,滿足不同家庭場景需求。
未來,中國移動智慧家庭云網關還將持續(xù)賦能更多產業(yè)合作伙伴、衍生更多使用場景,做大生態(tài)圈,為家庭、泛家庭用戶提供更加人性化的業(yè)務服務。