鵝廠車聯網探索:5G下邊緣云計算的車路協同實踐
一、5G典型應用場景及其挑戰
1. 從自動駕駛說起
自動駕駛在國際是非常熱的話題,業界的標準分成了不同的等級,有的分成了5級、有的分成了6級。
如上圖所示,國家工信部相關規范將自動駕駛等級標準定義為6級。目前國內的廠家和國際的一些廠家,絕大部分處于處于L2或者L3的水平。騰訊也有自動駕駛相關的產品,目前有數百人的團隊從事自動駕駛等相關產品和技術的研發工作。
從實踐落地的角度看,自動駕駛汽車商用的成熟性目前來看并不高,這中間存在很多問題,其中技術、成本和安全是阻礙自動駕駛產品規模商用的主要因素。
2. 自動駕駛技術和挑戰
典型的自動駕駛車輛涉及到硬件和相關軟術的系統性挑戰。主要包括以下四個方面:
第一是高精地圖,其中包括厘米級精度、豐富的路標數據和三維重建能力。
第二是多傳感器,其中包括攝像頭、激光雷達、毫米波雷達、超聲傳感器、慣導和衛星天線等。
第三是環境建模及智能決策,其中包括多傳感器融合感知、道路和區域識別、環境模型構建、智能預測和決策等。
第四是車身控制,其中包括車輛自動控制、駕駛策略執行及規劃。
總體來看,在目前的水平之下,整個自動駕駛車輛因為要安裝多種傳感器、工控機及系統控制軟件,成本比較高昂,而且激光雷達等傳感器的使用壽命也比較有限。業內人士曾經估算過,自動駕駛車輛的成本不會低于20萬美元,這極大阻礙了自動駕駛汽車產品大規模商用落地。
3. 三大重點因素
即使自動駕駛車輛配備了這么多的專業傳感器和其它專業設備,在一些異常情況下還是不能很好的解決實際路況上出現的一些安全問題,包括特斯拉在內的自動駕駛汽車曾出現多次交通事故,導致財產損失和人員傷亡。
比如,在超視距的情況下,車載傳感器包括雷達或者攝像頭檢測不到轉彎前方的車輛,或者從街角對面駛過來一個車輛,就很容易發生交通事故。
剛才也提到了從成本的角度來講,自動駕駛車輛的成本是非常高昂的。
另外從出行效率角度來講,作為交通管理部門或城市市政管理部門,提升交通出行效率是他們主要工作目標之一。但自動駕駛車輛在道路上行駛的時候,考慮安全因素,會相應采取一些比較保守的策略。
比如說它的行車速度可能會比較低,同時在發生異常事故的時候,它會減速或者停車避讓,這就使得整個交通的效率并不能得到有效的提升。
4. 車聯網的技術實現C-V2X
綜合以上因素業界提出了 C-V2X 這個概念,這里面的 C 是蜂窩網絡的意思, V2X 的全稱是 vehicle to everything,就是說,基于蜂窩通信的 V2X 技術,使得車輛和道路所有參與方都能進行實時的數據交換,通過這種信息交換,來進一步提升包括車輛和其它參與方的安全性,同時提升出行效率。
我們看到 V2X 主要包括四種場景:
第一個是 V2V(車輛對車輛),它主要解決一些車輛之間的可能發生的一些異常狀況,比如說車輛碰撞事件;
第二個是 V2I,就是車輛和路邊基礎設施,比如紅綠燈等,通過車輛和紅綠燈的數據交換來及時提醒車輛減速或者保持一定車速,引導車輛通過綠波帶,既能提升行車安全,也可以提升車輛出行效率。
第三個 V2N,通過和通訊網絡的交互來為駕乘人員提供一些個性化信息服務。
第四個 V2P,通過和行人之間的數據交換,來為行人或非機動車發出一些安全提醒。
C-V2X 的目標總體上涵蓋信息服務、交通安全、交通效率和輔助自動駕駛,它的目標之一就是把單車解決不了的問題移到路端去解決,通過路側設備和車輛之間的 C-V2X消息交互來進一步輔助自動駕駛,提升交通安全能力,提升道路出行效率,形成“聰明的車”和“聰明的路”。
5. 單車智能到云端智能
那么按照“聰明的車”到“聰明的路”的想法,我們是不是可以將完全依靠自動駕駛車輛本身所具備的智能決策能力給它遷移到云端上去實現?這樣還可以大幅降低車輛的購置成本,而且因為云端有高性能、可擴展的計算能力,可以做很多車端勝任不了的計算任務。
另外我們知道,現在自動駕駛汽車在車端要做大量的基于計算機視覺或者雷達數據的路況實時分析,這種高性能計算在車輛計算單元上的處理,其準確性等方面還有待提升,如果能移到云端去做,準確性可能會提高很多,而且云端還可以做很多復雜的算術和邏輯運算。
但是這里有一個問題,即云端計算存在的時延問題。自動駕駛智能決策的時延要求非常高,如果移到云端去計算,整個數據鏈路拉長勢必造成時延的增加,這就可能給自動駕駛業務帶來嚴重的影響。例如車輛在高速公路上以120公里/小時的速度行駛,每秒鐘就能行駛 30 多米,時延增大就可能會引發嚴重的交通事故。
所以移到云端是個不錯的想法,但它又帶來了時延方面的負面因素,這種情況就為邊緣計算的部署提供了一個契機。也就是,把云端那些計算任務移到路側的邊緣計算平臺上來進行,通過在路側的基礎設施上部署邊緣計算平臺和車聯網的應用,從而對車輛進行實時的智能提醒和決策。
在靠近網絡接入的路側基礎設施上進行邊緣計算,它的好處是非常明顯的。第一,計算能力大幅提升,有利于準確度的提升;第二,不需要占用過多的核心網或者骨干網絡帶寬;第三,可以有效降低時延,在網絡的邊緣側只要通過基站就可以直接將消息分發給路上的終端,數據傳輸路徑比互聯網到無線核心網再到無線接入網的路徑短了很多,這就是邊緣計算在車聯網中應用的背景。
二、多接入邊緣計算平臺及其關鍵技術
1. MEC在5G網絡中的位置
邊緣計算在車聯網里面會發揮著重要作用,目前我們看到各地關于 C-V2X 的新基建建設項目,重點的內容就是 C-V2X應用 和 MEC 服務的建設和部署。
上圖展示了無線網絡的架構圖及MEC在網絡中的位置,左邊是一些終端,通過5G基站接入5G核心網絡,最終抵達互聯網上部署的各種業務。其中核心網分為上面的控制面設備CCF和下面的用戶面設備UPF。
控制面有很多的功能實體,這些功能都是 5G 網絡專用的核心網網元。MEC需要部署在邊緣UPF附近,通過本地分流能力將手機用戶的業務請求引導到MEC上,由MEC上部署的應用為其提供服務。
比如說,通常情況下手機訪問英特網上的業務,其訪問路徑是經基站設備到邊緣UPF,再經本地UPF匯聚后進入因特網,最后到達云主機,這條路徑比較長。
而在邊緣計算場景下,業務部署在邊緣UPF附近的MEC上,數據傳輸路徑明顯短了許多。當用戶訪問一個邊緣應用的時候,我們通過本地分流將用戶的請求直接引導到部署在基站側的 MEC 上,這樣它的流量就在靠近網絡邊緣被處理了,既不占用后端的核心骨干網絡的帶寬,同時又能降低手機訪問網絡業務的時延,優勢顯而易見。
2. 騰訊邊緣計算TMEC平臺
(1)系統架構
在這種背景下,騰訊提出了邊緣計算 TMEC 解決方案。
整個解決方案分成三個層次,最上面是業務層,是TMEC支持的主要的邊緣應用,比如云游戲、視頻直播、智慧出行、智慧影視、智能制造等。我們看到這些業務絕大部分都和視頻相關,這是因為視頻在網絡中占的帶寬非常大,邊緣計算可以很好地解決視頻相關應用對網絡帶寬的占用,同時保證手機端的用戶體驗。
中間層是平臺層,我們知道騰訊云有非常豐富的中間件服務,可以為上層應用提供豐富且可靠的基礎業務支撐能力。
最下是基礎層,它是 TMEC 平臺的基礎支撐,我們采用騰訊云自研的容器平臺TKEStack來實現。
下面簡單介紹幾個TMEC上部署的特色業務能力。
(2)5G業務能力
TMEC 一個重要的特色業務能力就是 5G 業務能力。
要實現5G業務在邊緣計算設備上的部署,必須支持5G網絡流量從 UPF分流到邊緣計算站點。因而,引流是MEC平臺的基本功能,通過與核心網的交互,將終端發給核心網的數據流量依據MEC業務的要求分流到MEC站點并分發給MEC業務處理。
如上圖所示,3GPP標準定義了引流功能的實現。目前引流有多種方案,比較成熟的是基于上行分類器UL CL的引流方案,目前騰訊已經和多個設備廠家進行了對接,實現了從核心網UPF網元到MEC 流量的引導。
TMEC還支持 5G QoS 和網絡切片能力,可以為部署在 TMEC上的應用提供一個可靠的無線通訊 QoS 保障。網絡切片是 5G 重要特征,TMEC支持為邊緣應用創建專門的網絡切片,來進一步保證應用的服務質量。目前這些工作騰訊已經在現網和設備廠家及運營商之間進行了對接。
(3) 視頻處理能力
視頻類應用是邊緣計算典型的應用場景。TMEC提供有高質量的視頻轉碼能力,它是基于用戶感興趣區域ROI的視頻編碼技術,通過這個技術可以在不影響用戶體驗質量的情況下,將碼率降低30%以上。
3. TKEStack
(1)TKEStack在TMEC架構中的位置
從上圖中可以看到,TKEStack是屬于基礎平臺層的解決方案。基礎平臺層主要解決的問題是為上層業務提供計算資源支撐,解決上層業務的各個服務在服務生命周期內的對計算資源、存儲資源、網絡的需求問題。
隨著容器技術的發展,容器化的服務可以在集群上自由的遷移,服務的可靠性和穩定性得到了更好的保障,同時也帶來了一些問題,比如:容器如何編排?編排框架上手難度較大,如何部署和維護?如何節省服務依賴的日志、告警、網絡組件的部署維護成本?多個k8s集群如何管理等等問題,TKEStack正是這樣一個解決此類問題的容器云平臺。
(2)TKEStack基礎平臺層
部署安裝:
在ToB業務場景里面臨的第一個問題就是部署更新問題。針對TKEStack平臺部署,我們提供了一個 tke-installer 的工具,工具一鍵安裝后提供一個部署平臺的Web頁面,用戶在Web頁面上填寫各種平臺配置后即可搭建一個global集群用于運行TKEStack平臺。
平臺部署后為用戶提供了一個Web頁面,用戶通過管理員用戶登錄到平臺后進行業務集群的創建和管理等等。同時平臺支持各種擴展插件,用戶可以根據需要在自己的業務集群或者global集群一鍵安裝,對集群功能進行擴展。
異構資源虛擬化:
隨著AI的興起,由于需要大量的矩陣乘加計算,X86計算資源已無法滿足程序對算力的需求,異構計算硬件慢慢普及開來,如:NVIDIA GPU、intel VPU、NPU等等,異構計算資源往往無法像CPU一樣進行分時虛擬,目前TKEStack已經支持了Nvidia GPU 和Intel VPU,后續還會陸續增加對atlas、寒光的支持。
運維報警:
通常情況下,程序出現問題,都是反饋到功能上,然后再由程序開發者層層排查才能解決,在沒有獨立的日志監控系統情況下,日志查看往往要先到運行這個服務的服務器上排查,這個過程非常麻煩,在實時性要求較高的環境里基本不可接受,否則就要安裝一套日志監控系統,開發者要花費精力調研、搭建、維護日志監控系統,TKEStack 集成了日志和監控報警等功能,通過擴展插件形式,一鍵部署,解決了上層平臺的日志報警需求。
(3)TKEStack 能力介紹
上面我們簡單介紹了TKEStack的主要功能,接下來我們詳細介紹一下TKEStack的各項能力。
安裝部署:TKEStaCk頁面上通過幾步按鈕就可以部署一個k8s集群,安裝各種平臺插件,比如日志 采集、網絡、存儲等。
租戶管理 :TKEStack提供了租戶和用戶兩層的權限管理。租戶層,使用者可以通過劃分不同的租戶將平臺切分成多個平面,各個租戶之間互相隔離,適用于不同部門的不同業務依賴的資源各自獨立的場景。用戶層,同一個租戶平面里可以創建各種用戶,不同用戶可以管理各自的業務,使用自己的業務下的資源創建k8s負載。
原地升級:服務生命周期里,部署成功后下一個問題就是升級更新了,正常k8s上的負載升級是先創建一個新的pod然后銷毀舊的pod,在資源緊張情況下,容易導致升級失敗,同時無法支持同一個負載下多版本共存,TKEStack的TAPP插件通過一個自定義的CRD,允許用戶可以獨立操作一個TAPP負載下的每一個POD,比如給單個Pod升級、重啟等等。
GPU管理:提供一鍵安裝 GPU 和 Nvidia 相關依賴能力,統一管理由不同型號 GPU 服務器組建的異構容器計算集群;Nvidia GPU,通過劫持cuda調用,實現了一卡多用,多容器共享同一張卡,還具備良好的隔離能力。針對intel VPU的host-device模式的計算資源,通過bridge形式將device和host置于的同一網絡平面,解決device節點的網絡問題,讓device節點正常加入k8s集群進行資源調度。
運維中心:平臺具備高可用和可擴展性的細粒度監控告警系統,在此基礎上已經支持平臺審計、平臺事件、平臺告警及告警記錄查詢、日志檢索等功能,滿足用戶各種監控告警需求。
多種網絡模式:TKEStack支持underlay和overlay兩種模式的k8s網絡方案,underlay模式下支持將容器網絡和物理網絡打通,比如騰訊公有云上,k8s容器和cvm 的vpc打通,容器使用起來更類似于一臺cvm,支持用戶使用已有的負載均衡對容器內的服務進行負載均衡,overlay模式下改良了原有的flannel,通過ip封包,降低了封包損耗,提升了網絡效率。
(4)TKEStack功能圖譜
TKEStack作為一個基礎平臺層解決方案,目前在集群管理、業務管理、應用管理、認證授權、鏡像倉庫、監控告警、日志、擴展組件等方面都提供了各種各樣的功能。
在產品形態上,TKEStac分為平臺管理和業務管理,平臺管理控制臺為用戶提供集群、倉庫、監控告警、擴展組件方面的管理,滿足用戶的集群和平臺運維需求,業務管理控制臺為用戶提供業務資源、日志、監控功能,滿足業務用戶的資源使用需求,同時權限上的劃分增強了平臺的可用性。
TKEStaCk 功能圖譜
(5)TKEStack支持TMEC采用不同的部署模式
在TMEC方案中,TMEC有兩種部署模式,中心化部署和邊緣自治部署。
中心化部署情況下,在云端中心部署TMEC管控平臺和TMEC業務服務,管理邊緣節點上的TMEC服務,這種模式下邊緣的節點和云端中心處于同一個業務集群。
邊緣自治部署模式下,分為云端集群和邊緣集群,云端和邊緣分別部署整套的管控平臺和TMEC業務服務,TMEC管控平臺之間進行跨集群通信。
TMEC用戶通過TKEStack的控制臺入口統一管理邊緣集群和中心集群,實現TMEC服務的部署更新和維護。
4. 應用場景
(1)云游戲
云游戲將游戲渲染放在服務器上進行,并將渲染完畢后的游戲畫面壓縮后以視頻流的方式通過網絡傳送給用戶。
在云游戲模式下,客戶端的游戲設備并不需要昂貴高端處理器和顯卡,而只需具備基本 的視頻解壓能力和游戲操作能力。
云游戲時代的到來,將會使玩家即便沒有高配置的游戲硬件系統,也能暢玩高質量的3A 游戲大作。云游戲能解決用戶硬件配置要求過高、游戲包頻繁更新、游戲外掛等問題,無需冗長的游戲下載,實現即點即玩。
(2)多視角直播
多視角觀賽即用戶可以從多個角度來觀看同一場比賽,而不再限制于導播給出的單路畫面,比如籃球迷除了可以觀看正常的球場側方視角外,還可以從籃架下方、場邊VIP席等多個角度自由體驗籃球魅力。
利用TMEC部署邊緣應用,可以分別構建場館內多視角直播平臺和多視角直播分發平臺。既可以為演播人員提供本地快速編輯、 渲染、和極速分發等能力,也可以為終端用戶提供穩定、優質、低時延的觀看體驗。
三、 基于TMEC的車路協同實踐
1. 基于TMEC構建的V2X車聯網平臺
基于TMEC構建了一個車聯網 V2X 平臺,如下圖所示。底層是路側的基礎設施,在平臺層,提供多種V2X應用服務能力,為上層的應用開發和運行提供支撐。