張心宇,王 喆,郭 歌,任 爽
(1.北京交通大學(xué) 計算機與信息技術(shù)學(xué)院,北京 100044;2.中國鐵道科學(xué)研究院集團有限公司 電子計算技術(shù)研究所,北京 100081)
近年來,隨著鐵路信息化建設(shè)的發(fā)展,鐵路信息系統(tǒng)已深入各類復(fù)雜的鐵路業(yè)務(wù)場景?,F(xiàn)有的鐵路信息系統(tǒng)管理分散、資源不均衡、響應(yīng)不及時等問題日益突出,傳統(tǒng)的鐵路信息系統(tǒng)體系架構(gòu)已不能滿足鐵路各業(yè)務(wù)領(lǐng)域日益增長的業(yè)務(wù)處理需求。
目前,一種逐漸成熟的信息技術(shù)——云邊協(xié)同技術(shù),已在通信、運輸、制造等領(lǐng)域廣泛應(yīng)用。工業(yè)制造領(lǐng)域,建立了邊緣工業(yè)設(shè)備的數(shù)據(jù)采集和數(shù)據(jù)整合流程;通信行業(yè)涌現(xiàn)出一批云邊協(xié)同計算平臺,探索更加直觀的渠道和商業(yè)變現(xiàn)能力;物流領(lǐng)域作為典型的物聯(lián)網(wǎng)業(yè)務(wù)場景,將快遞掃描業(yè)務(wù)上云,實現(xiàn)了邊緣側(cè)掃描校驗、云上綜合調(diào)度的協(xié)同策略。云邊協(xié)同技術(shù)結(jié)合云計算和邊緣計算各自的優(yōu)勢,既能應(yīng)對大數(shù)據(jù)、長周期業(yè)務(wù),又能實現(xiàn)快速響應(yīng)、自動決策,為鐵路信息系統(tǒng)提供了新的架構(gòu)方案。
本文初步探索云邊協(xié)同在鐵路信息系統(tǒng)中的應(yīng)用方式,提出鐵路信息系統(tǒng)云邊協(xié)同體系架構(gòu)。
云計算是一種通過網(wǎng)絡(luò)按需提供服務(wù)的計算范式;邊緣計算將服務(wù)能力下沉到網(wǎng)絡(luò)邊緣,解決了云計算中延遲響應(yīng)等問題。云邊協(xié)同是實現(xiàn)云計算與邊緣計算的協(xié)同聯(lián)動,進一步提升服務(wù)能力的新興計算范式[1]。
傳統(tǒng)鐵路信息系統(tǒng)架構(gòu)中,海量的異構(gòu)數(shù)據(jù)上傳到中心云進行處理,給云端計算單元帶來日益沉重的工作負荷。云計算全局性、非實時、長周期數(shù)據(jù)處理能力強的特點,使其在鐵路系統(tǒng)長周期業(yè)務(wù)、運營數(shù)據(jù)分析決策等領(lǐng)域發(fā)揮優(yōu)勢[2];邊緣計算局部、實時、短周期數(shù)據(jù)處理分析能力強的特點,使其更擅長實時任務(wù)處理和決策執(zhí)行[3]。為適應(yīng)當前鐵路系統(tǒng)低時延、短周期、局部自治的需求[4],亟需結(jié)合二者優(yōu)勢,構(gòu)建鐵路信息系統(tǒng)云邊協(xié)同體系架構(gòu)。
基于云邊協(xié)同的鐵路信息系統(tǒng)以低侵入性、整合Kubernetes生態(tài)圈開源技術(shù)為主,對現(xiàn)有的鐵路信息系統(tǒng)從架構(gòu)層面進行重構(gòu)。鐵路信息系統(tǒng)云邊協(xié)同總體架構(gòu)如圖1所示。
圖1 鐵路信息系統(tǒng)云邊協(xié)同總體架構(gòu)
1.2.1 應(yīng)用層
應(yīng)用層整合云邊鐵路信息系統(tǒng)的業(yè)務(wù)能力,對外提供系統(tǒng)應(yīng)用的使用接口[5];負責維護鐵路系統(tǒng)內(nèi)應(yīng)用的注冊、分發(fā)和管理。中心云的系統(tǒng)呈現(xiàn)模塊可視化展示系統(tǒng)整體狀態(tài);各應(yīng)用實現(xiàn)的具體鐵路業(yè)務(wù)由中心和邊緣的業(yè)務(wù)管理模塊統(tǒng)一管理;中心和邊緣的應(yīng)用管理負責存儲和編排不同需求的鐵路業(yè)務(wù),將計算密集應(yīng)用分發(fā)至中心云,低時延應(yīng)用則交由邊緣云。
1.2.2 服務(wù)層
服務(wù)層實現(xiàn)可復(fù)用的服務(wù),有效解決鐵路信息系統(tǒng)長期以來服務(wù)重復(fù)開發(fā)的問題。服務(wù)開發(fā)框架是服務(wù)開發(fā)和運行的必要組件,鐵路信息系統(tǒng)開發(fā)的服務(wù)和第三方常用服務(wù)聚合存儲在服務(wù)市場,經(jīng)服務(wù)協(xié)同下發(fā)到邊緣服務(wù)管理模塊,以支撐邊緣應(yīng)用運行。服務(wù)層的實現(xiàn)涉及具體的服務(wù)技術(shù),包括MySQL數(shù)據(jù)庫服務(wù)、RabbitMQ消息隊列服務(wù)、TensorFlow人工智能服務(wù)等[6]。
1.2.3 資源層
針對鐵路信息系統(tǒng)運營中產(chǎn)生的海量異構(gòu)數(shù)據(jù),資源層屏蔽不同業(yè)務(wù)數(shù)據(jù)的結(jié)構(gòu)差異,盡可能提高數(shù)據(jù)利用率。中心云的硬件抽象模塊通過設(shè)計頂層數(shù)據(jù)抽象,采用硬件抽象框架將從邊緣匯集的數(shù)據(jù)抽象為更通用的數(shù)據(jù)格式,并交由存儲管理模塊以對象或文件的方式進行存儲。邊緣存儲管理模塊在邊緣云上存儲具體的鐵路數(shù)據(jù),解決過去部分數(shù)據(jù)存儲在非鐵路單位時的數(shù)據(jù)安全問題??蚣芡ㄟ^邊緣控制器對接入邊緣云的鐵路聯(lián)網(wǎng)設(shè)備進行集中調(diào)度。
1.2.4 安全管理
安全管理貫穿整個云邊協(xié)同體系架構(gòu),從應(yīng)用安全、數(shù)據(jù)安全、網(wǎng)絡(luò)安全、邊緣節(jié)點安全4方面,全方位保障鐵路信息系統(tǒng)安全。
1.2.5 平臺支撐
平臺支撐通過搭建統(tǒng)一管理平臺,提供整個鐵路信息系統(tǒng)云邊協(xié)同體系架構(gòu)的底層支撐。虛擬化是系統(tǒng)硬件資源復(fù)用的基礎(chǔ),邊緣網(wǎng)絡(luò)負責中心云和邊緣云之間的網(wǎng)絡(luò)通信,邊緣自治則保證了部署在站點的邊緣云與數(shù)據(jù)中心的中心云網(wǎng)絡(luò)斷開時,站點服務(wù)仍能自主完成。
1.3.1 應(yīng)用協(xié)同
應(yīng)用協(xié)同通過中心云應(yīng)用管理模塊和邊緣應(yīng)用管理模塊協(xié)作,拆分鐵路應(yīng)用的云邊能力,綜合優(yōu)化鐵路應(yīng)用。鐵路信息系統(tǒng)的各個應(yīng)用以鏡像形式集中存儲在中心鏡像倉庫中,通過應(yīng)用分發(fā)管理,統(tǒng)一決策是否分發(fā)到邊緣云;邊緣云上擁有自己的邊緣鏡像庫,負責接收從中心鏡像倉庫下發(fā)的應(yīng)用鏡像,以鏡像分發(fā)的形式間接實現(xiàn)應(yīng)用分發(fā)。中心云和邊緣云都可借助各自相應(yīng)的應(yīng)用編排管理模塊和生命周期管理模塊,將應(yīng)用鏡像實例化成容器對象[7],在云和邊同時提供鐵路應(yīng)用服務(wù)。應(yīng)用協(xié)同架構(gòu)如圖2所示。
圖2 應(yīng)用協(xié)同架構(gòu)
鐵路各站段自建服務(wù)器導(dǎo)致硬件資源差異大,各服務(wù)器作為邊緣節(jié)點加入邊緣云時,利用平臺支撐層提供的Pod虛擬化、資源共享IP、namespace[8]等特性,屏蔽中心云和邊緣云的硬件環(huán)境差異,實現(xiàn)應(yīng)用親和性分發(fā);采用鏡像分級緩存、邊緣鏡像站點加速、邊緣節(jié)點間P2P分發(fā)等技術(shù)加速應(yīng)用大規(guī)模分發(fā),提高部署速度。
1.3.2 服務(wù)協(xié)同
服務(wù)協(xié)同為鐵路應(yīng)用的構(gòu)建和運行提供服務(wù)支撐??煞譃榉?wù)開發(fā)框架和服務(wù)市場兩個模塊。服務(wù)開發(fā)框架提供服務(wù)開發(fā)、接入的標準化接口和服務(wù)運行環(huán)境;服務(wù)市場對接第三方服務(wù),整合數(shù)據(jù)庫、消息隊列、大數(shù)據(jù)、人工智能等鐵路應(yīng)用開發(fā)所需的通用服務(wù)[9]。中心云服務(wù)市場根據(jù)邊緣云的服務(wù)需求,下發(fā)到邊緣云的具體邊緣節(jié)點上,通過云邊服務(wù)發(fā)現(xiàn)、邊邊服務(wù)發(fā)現(xiàn)保障中心云和邊緣云服務(wù)間的消息傳遞。服務(wù)協(xié)同框架如圖3所示。
圖3 服務(wù)協(xié)同框架
由于鐵路業(yè)務(wù)特點,列車管理、客流統(tǒng)計等業(yè)務(wù)會產(chǎn)生海量時序數(shù)據(jù),服務(wù)協(xié)同引入時序數(shù)據(jù)庫配合傳統(tǒng)的關(guān)系型數(shù)據(jù)庫,解決時序數(shù)據(jù)的并發(fā)問題,提供多維度的聚合分析和趨勢洞察能力;人工智能服務(wù)作為邊緣應(yīng)用的主流,應(yīng)用增量學(xué)習(xí)、聯(lián)邦學(xué)習(xí)、聯(lián)合推理,賦能邊緣智能,解決鐵路智能模型訓(xùn)練和推理時的精度、時延、通信量、數(shù)據(jù)隱私等問題[10];邊邊服務(wù)發(fā)現(xiàn)、云邊服務(wù)發(fā)現(xiàn)及各部分流量治理綜合實現(xiàn)服務(wù)層面的通信和協(xié)同。
1.3.3 資源協(xié)同
資源層涉及鐵路站段各種邊緣設(shè)備的管理,如智能攝像頭、聯(lián)網(wǎng)雷達、車載Wi-Fi等。資源協(xié)同提供底層的硬件抽象,降低上層應(yīng)用開發(fā)難度,提供了全域調(diào)度和網(wǎng)絡(luò)加速能力,使邊緣資源利用率顯著提升。
資源協(xié)同主要涉及3類技術(shù):(1)硬件抽象,Docker疊加Kubernetes構(gòu)建一套標準化邊緣計算平臺,通過插件框架(Device Plugin Framework)的形式,保障如安檢儀、閘機等聯(lián)網(wǎng)硬件統(tǒng)一的抽象開發(fā)接口;(2)全域調(diào)度,應(yīng)用可靈活定義的策略實現(xiàn)云邊資源的動態(tài)調(diào)度,保證服務(wù)層和應(yīng)用層性能最優(yōu)[11];(3)全域加速,構(gòu)建全域的Overlay網(wǎng)絡(luò),實現(xiàn)各節(jié)點的優(yōu)化尋址和動態(tài)加速,為基于服務(wù)質(zhì)量和確定性時延的調(diào)度策略打下基礎(chǔ)。
微服務(wù)是實現(xiàn)鐵路信息系統(tǒng)云邊協(xié)同體系架構(gòu)的基礎(chǔ)。例如,針對現(xiàn)有的中國鐵路客票發(fā)售和預(yù)訂系統(tǒng)(簡稱:客票系統(tǒng)),可將其業(yè)務(wù)功能拆分為認證、購票、支付、進站數(shù)據(jù)采集等微服務(wù)[12],每個微服務(wù)采用SpringBoot或其他完全不同的技術(shù)棧開發(fā);支付、購票等綜合性服務(wù)部署在中心云,而進站數(shù)據(jù)采集等近用戶端的服務(wù)部署在邊緣云;采用Spring Gateway實現(xiàn)服務(wù)網(wǎng)關(guān),提供云邊集群的負載均衡和請求轉(zhuǎn)發(fā)能力;中心云部署nacos服務(wù)注冊組件,解決云上各個服務(wù)的注冊和發(fā)現(xiàn)問題[13]。
通過微服務(wù)技術(shù)重構(gòu)現(xiàn)有鐵路信息系統(tǒng)的應(yīng)用,并將其部署在云邊協(xié)同體系架構(gòu)上,既可解決現(xiàn)有應(yīng)用維護困難的問題,又能提供更及時的數(shù)據(jù)采集能力,減少中心云的請求壓力。
傳統(tǒng)的鐵路信息系統(tǒng)架構(gòu)各個應(yīng)用間的數(shù)據(jù)難以復(fù)用,服務(wù)間不能相互調(diào)度,資源使用率較低;各應(yīng)用的運行維護(簡稱:運維)方式差異較大,應(yīng)用可維護性差。
鐵路信息系統(tǒng)云邊協(xié)同體系架構(gòu)利用以Kubernetes為主的容器編排技術(shù)框架,為鐵路應(yīng)用提供云邊協(xié)同的實現(xiàn)和管理方式,以及分布式計算、邊緣自治、負載均衡能力[14]。借助Kubernetes的邊緣自治、邊緣單元化管理、邊緣流量拓撲、邊緣狀態(tài)監(jiān)測等能力,實現(xiàn)不同鐵路應(yīng)用的數(shù)據(jù)共享和應(yīng)用狀態(tài)監(jiān)控等,解決傳統(tǒng)鐵路信息系統(tǒng)架構(gòu)的數(shù)據(jù)共享難題和運維難題。
鐵路信息系統(tǒng)云邊協(xié)同體系架構(gòu)依托邊緣計算技術(shù)實現(xiàn)邊緣云。邊緣計算將計算能力下沉至數(shù)據(jù)源一側(cè),在數(shù)據(jù)產(chǎn)生端提供直接的計算或存儲服務(wù)。邊緣計算技術(shù)涵蓋多個專業(yè)領(lǐng)域,包括硬件抽象框架、邊緣網(wǎng)絡(luò)、計算卸載等多個方面[15],為云邊協(xié)同的鐵路信息系統(tǒng)架構(gòu)提供了低時延、高保密的優(yōu)勢。
鐵路運營中涉及諸多對低時延需求較高、對生產(chǎn)作業(yè)過程中的數(shù)據(jù)安全和隱私要求較高的場景。例如,在鐵路站場場景中,涉及到物流中心、編組站、機務(wù)段、車輛段、動車所等鐵路作業(yè)區(qū)域,通信作業(yè)范圍為面狀區(qū)域,作業(yè)人員和車輛密集且業(yè)務(wù)量大。利用邊緣計算分流策略將站場應(yīng)用業(yè)務(wù)分流到站場應(yīng)用服務(wù)器,滿足調(diào)車控制、自動駕駛、無線售票、機器人控制等站場業(yè)務(wù)對低時延的需求。
典型的“工電供”運維場景中,需要對車站重點區(qū)域進行安全監(jiān)控,并保證視頻業(yè)務(wù)的實時處理[16]。邊緣節(jié)點篩選出監(jiān)控視頻或圖像中變化的部分,并向中心云回傳,把價值不高的監(jiān)控視頻或圖像就地緩存在邊緣計算中心的服務(wù)器中,避免無用信息耗費網(wǎng)絡(luò)資源,提高了邊緣側(cè)準確識別和快速響應(yīng)的能力,降低了邊緣計算中心視頻、圖片上傳所占用的數(shù)據(jù)帶寬。
邊緣云的智能監(jiān)控設(shè)備可實時監(jiān)測鐵路沿線重點路段,在邊緣端識別入侵異物,截取有爭議視頻片段并進行初步處理后回傳中心云進行進一步數(shù)據(jù)分析。既保證了重點區(qū)域的實時檢測,又保存了重要數(shù)據(jù)以備詳細測算。
當前,鐵路部門采用的安檢設(shè)備部分內(nèi)置有人工智能輔助判圖算法,能夠智能判別移動物品種類。但安檢設(shè)備計算能力有限,存在算法識別幀率低于物品安檢速率的情況,且由于鐵路實際監(jiān)管需要,違禁品種類可能有更新和變動,將輔助算法內(nèi)置于安檢設(shè)備的方式不利于算法的動態(tài)更新。如果簡單地將檢測算法上云,將檢測模型的訓(xùn)練和預(yù)測都在云數(shù)據(jù)中心實現(xiàn),又存在數(shù)據(jù)傳輸延遲較大的問題,難以應(yīng)對快速安檢的需求。
借助鐵路信息系統(tǒng)云邊協(xié)同體系架構(gòu)的算力分離優(yōu)勢,在邊緣云部署安檢模型預(yù)測應(yīng)用,安檢設(shè)備實時上傳的X光圖像在邊緣云進行預(yù)測。中心云定期收集新的安檢圖像,經(jīng)過分析、標注后進行高算力需求的人工智能模型訓(xùn)練,更新模型參數(shù);模型更新后下發(fā)到邊緣云,利用邊緣服務(wù)器的延遲和算力優(yōu)勢,在邊緣側(cè)進行安檢模型的預(yù)測[17],計算結(jié)果供給車站安檢系統(tǒng)使用,滿足智能安檢需求。
數(shù)字列車的數(shù)據(jù)處理,電務(wù)設(shè)備智能感知、狀態(tài)采集和智能分析等場景,都符合上述應(yīng)用場景的特征[18]。
云邊協(xié)同技術(shù)在鐵路信息系統(tǒng)的應(yīng)用,對于動態(tài)拓展業(yè)務(wù)、適應(yīng)市場變化、實時決策發(fā)布、提升安全水平都有重要意義。為推動云邊協(xié)同技術(shù)在我國鐵路行業(yè)應(yīng)用實施,提升鐵路信息系統(tǒng)服務(wù)水平,應(yīng)借鑒其他行業(yè)云邊協(xié)同應(yīng)用的經(jīng)驗,結(jié)合鐵路業(yè)務(wù)自身特點,總結(jié)適應(yīng)鐵路系統(tǒng)的云邊協(xié)同應(yīng)用方案。