999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

一種支持車載終端多種數據類型上傳的協議

2023-08-27 23:37:00許凌睿張亮桂康哲
汽車電器 2023年8期

許凌睿 張亮 桂康哲

【摘? 要】本文描述一種支持車載終端多種數據類型上傳的協議,該協議以HTTPS協議為基礎,是一套實用通用的文件上傳協議,除常規的結構化數據外,還支持非結構化數據的上傳,能豐富采集數據類型的多樣性,同時也支持文件的分片上傳和斷點續傳,既可以減少大文件上傳失敗的概率,也可以解決大文件重復上傳導致資源、流量浪費的問題。

【關鍵詞】車載終端;上傳協議;斷點續傳;分片上傳

中圖分類號:U469.72? ? 文獻標志碼:A? ? 文章編號:1003-8639( 2023 )08-0066-02

Design of Visualization System Based on Chip Localization Data

XU Ling-rui,ZHANG Liang,GUI Kang-zhe

(SAIC GM Wuling Automoblie Co.,Ltd.,Guangxi Laboratory of New Energy Automobile,

Guangxi Key Laboratory of Automobile Four New Features,Liuzhou 545007,China)

【Abstract】This article describes a protocol that supports uploading multiple data types to vehicle terminals. The protocol is based on the HTTPS protocol and is a practical and universal file upload protocol. In addition to regular structured data,it also supports uploading unstructured data,which can enrich the diversity of data collection types. At the same time,it also supports fragmented uploading and breakpoint continuation of files,which can reduce the probability of large file upload failure,It can also solve the problem of resource and traffic waste caused by repeated uploading of large files.

【Key words】vehicle terminal;upload protocol;breakpoint resume;segment upload

1? 研究背景

汽車“節能減排”觀念深入人心,加上國家政策的大力推廣,國內新能源汽車尤其是純電動汽車發展迅速,在全國汽車保有量的占比越來越重,因此對新能源汽車運行的數據進行全面遠程監控、遠程故障診斷、遠程故障更新等功能的實現,顯得日益重要。新能源汽車是一個復雜的機電一體化產品,經過近幾年的發展,現有新能源汽車的車載終端已經可以實現對一種或幾種通信線上數據的采集,能做到定時上傳,包括在網絡不好時的補發機制也在日益完善,逐漸形成了一個比較成熟的數據上報機制。這種數據往往是結構化數據(行數據,可以用二維表結構來邏輯表達),最終需求都是以表格化的形式存儲。這種結構化數據的采集和上報完全滿足新能源汽車的法律法規要求和一定程度的遠程診斷和遠程升級功能。

隨著新能源汽車的功能越來越豐富,對采集數據的多樣化需求越來越迫切,不同類型的數據尤其是音視頻、圖像這類文件,對智能駕駛、AI算法訓練等很多功能的優化都有很大的幫助,并且目前車輛故障分析最常見的方法就是先收集車載終端的日志再進行數據分析,日志的文件往往都比較大,車端提供的網絡信號不夠穩定,且周圍環境的信號也無法時刻保持通暢,一個大文件反復傳輸不僅會占用車載終端的功能資源,對車載終端的網絡流量也是一種極大的浪費。因此,支持以文件流的形式上傳非結構化文件(類似于文本、辦公文檔、各類報表、圖片、圖像、音頻/視頻等)并實現文件的分片上傳和斷點續傳功能就顯得尤為重要。

本文介紹一種基于https文本傳輸協議、由多個接口組成的支持多數據類型上傳的文件協議,且支持分片上傳和斷點續傳,適用于所有車載終端,用CA證書做雙向認證和TLS通道加密,是一個適用范圍極廣、應用簡便,且能保證安全的文件上傳協議。

2? 文件上傳接口介紹

1)終端上傳認證接口。終端上傳認證接口用于對上傳任務的終端進行身份認證和鑒權。其通過授權碼和終端ID生成請求認證TOKEN,作為文件上傳接口授權令牌,有效期為24h,且用業務系統識別碼來判斷不同的業務、廠家等信息,并存到相應的位置。授權碼、終端ID和業務系統識別碼都是線下約定的固定參數,按照接口文檔里約定好的簽名加密方式調用接口請求認證,會返回TOKEN,作為后續接口調用的身份認證。若任何一個參數有問題,或加密方式未通過認證,則都不會獲取到TOKEN這個參數,保證了服務端的安全性,使其不會被任何一個車載終端訪問到。

2)服務端任務查詢。服務端任務查詢接口主要用于查詢服務端支持的相關信息。調用該接口需要輸入1)接口中獲得的TOKEN參數,服務端會對TOKEN做校驗,通過后會返回fileMaxSize(單個文件最大上傳大小,單位byte)、checksumAlgorithm(服務端支持的CHECKSUM算法,多個以逗號分隔)和partMaxSize(單個分片的上傳大小為4×1024×1024,單位byte)這3個參數,表示服務端支持的文件上傳分片信息,用于指導車載終端對文件進行分割。

3)創建上傳任務。創建上傳任務接口主要用于創建上傳任務,同一個任務下可以上傳多個文件。因為每個接口都可以獨立被調用,所以調用每個接口都同樣需要輸入1)接口中獲得的TOKEN參數,服務端會對TOKEN做校驗,通過后返回taskId(任務id)給到車載終端。

4)創建上傳文件。創建上傳文件接口用于創建一個傳輸任務下具體的文件,并可以得到文件的存儲地址。同理,傳入TOKEN做校驗,傳入taskId、fileName(文件名)和fileSize(文件總長度,單位byte)作為該文件的基本信息,服務端會返回location(文件上傳地址)、fileId(文件id)作為應答,location為完整的url,也包含了fileid,操作文件相關均調用該url訪問接口。

5)上傳文件。上傳文件接口用于上傳一個具體的文件。傳入TOKEN做校驗,傳入taskId、partNum[文件分片編號,范圍(1-10000)]、partChecksum(值為校驗算法名和校驗值,中間使用空格分隔)、partSize(本次上傳內容長度,單位byte)作為參數,最后傳輸partContent(文件的二進制流內容)。

文件分片編號的目的是為了斷點續傳更加方便,可以從斷掉的那個分片號開始傳輸,不會影響最終的文件合成。

6)上傳文件完成。上傳文件完成接口用于在上傳文件完成時通知服務端。傳入TOKEN認證通過后,傳參taskId、fileSize、partCount(文件上傳總分片數量)告知服務端該文件已上傳完成。如若該文件用了數據加密,則需額外傳一個參數(encryptkey)通知服務端,以便服務端在后續下載該文件的時候知道是否需要做解密。

一個文件上傳完成之后可以去調用4)的接口重新再上傳一個新的文件。

7)上傳任務完成。上傳任務完成接口用于在上傳任務完成時通知服務端,注意一個任務可以包含很多個完整的文件,等這次所有的文件上傳完成之后再調用該接口。

TOKEN校驗通過后,傳入taskId,并用數組形式傳入其中每個文件對應的參數(fileId、fileName 和fileSize)告知服務端,服務端再收到通知后會根據參數值將每個文件的分片合并復原為一個完整的文件存儲起來。

3? 文件查詢相關接口介紹

1)查詢上傳文件/分片狀態。查詢上傳文件/分片狀態接口用于查詢上傳文件或者分片的狀態。傳入需要查詢的taskId和partNum,服務端會將該任務下該分片編號的上傳狀態返回,fileSize、fileStatus(文件上傳狀態,具體信息見表1)、partInfos(文件分片信息,包括partNum、partSize和partChecksum)。上傳方根據服務端返回的狀態值可以知道在某個任務下,某幾個文件或某幾個分片的上傳狀態。

2)查詢上傳任務狀態。查詢上傳任務狀態接口用于查詢某個任務的整體上傳狀態。驗證通過后傳入taskId,服務端會返回uploadStatus(文件上傳狀態),同表1,調用查詢狀態接口可以在任何一個步驟中進行,以便于上傳方在任何時候都可以掌握上傳任務、文件或分片的上傳信息,及時進行補傳、取消上傳等操作。

3)取消上傳文件。取消上傳文件接口用于取消未完成的上傳文件,已完成的上傳文件無法通過此接口刪除服務端資源。驗證通過后,傳入fileId,服務端會取消未上傳完成的文件,已經上傳成功的文件會作為該任務下的文件存儲,不會受到影響。

4)取消上傳任務。取消上傳任務接口用于取消未完成的上傳任務,已完成的上傳文件無法通過此接口刪除服務端資源。驗證通過后,傳入fileId,服務端會取消對應的文件,該fileId也會被同步刪除。此處需要注意的是無法取消一個文件中的任一個分片的上傳任務,如已上傳的分片總數量和最初輸入的分片總數量(partCount)對不上,則服務端會報錯,無法繼續合成文件。

車載終端上傳/查詢文件流程如圖1所示。

4? 文件合并

文件上傳時,一般有兩種文件合并方式:第1種為邊上傳邊合并,服務端僅需要存儲最近一次上傳成功的分片,占用服務器的存儲資源較少;第2種為服務器把所有上傳的分片文件暫存到臨時文件夾中,等文件分片全部上傳完成后再合并所有的文件,并刪除臨時存儲的文件。本文采用的是第2種文件合并方法,該方法雖然會占用部分服務器存儲資源,但是存儲資源本身費用較低,而且也具備以下優點:①等所有分片都在服務端保存成功時才進行文件合并,能很好地保證接收文件的完整性;②若文件上傳中途失敗,服務端不會主動發起文件合并的操作,減少了計算資源的浪費。

5? 結論

本文介紹一種車載終端上傳數據的通用協議,不僅支持通用結構化數據的上傳,也支持非結構化數據的上傳,在保證傳統功能的同時支持發展智能駕駛等新興功能。對于網絡環境不穩定的車載終端,為了保證車端上傳數據的完整性、準確性,補發數據的功能是必不可少的,但像大文件的傳輸,本身成功率會比小文件低,且重新傳輸消耗的流量、時間和資源代價都比較大。本文介紹的協議支持分片上傳和斷點續傳的功能,把難上傳的大文件切割成易于上傳的小文件,遇到網絡原因未上傳成功的小文件可以等網絡環境通暢以后繼續上傳,在提高了上傳成功率的同時減少重新上傳整個文件的次數,既保證了車載終端上傳數據的完整和準確度,又減少了車端資源的浪費,在保障車端基本功能順利實現的同時可以增大功能的多樣性和復雜性。

參考文獻:

[1] 朱愛梅. 利用Http協議實現斷點續傳[J]. 企業家天地(下旬刊),2007(9):181-182.

[2] 王莉敏,梁正和,段全鋒. 基于HTML5大文件斷點續傳的實現方案[J]. 計算機與現代化,2016(3):91-95.

(編輯? 凌? 波)

作者簡介

許凌睿(1995—),女,數據工程師,碩士,主要從事大數據平臺相關的工作。

主站蜘蛛池模板: 精品综合久久久久久97超人| 亚洲aⅴ天堂| 波多野结衣一级毛片| 全部免费特黄特色大片视频| 香蕉精品在线| 欧美视频在线第一页| 午夜精品区| 亚洲欧美一区二区三区蜜芽| 国产中文一区a级毛片视频| 午夜不卡视频| 亚洲国产综合自在线另类| 国产欧美高清| 亚洲视频欧美不卡| 国产青青操| 在线欧美a| 久久黄色影院| 免费在线观看av| 重口调教一区二区视频| 国产精品无码翘臀在线看纯欲| 国产乱子伦无码精品小说| 91美女在线| 丝袜高跟美脚国产1区| 激情综合婷婷丁香五月尤物| 强奷白丝美女在线观看| 国产国语一级毛片在线视频| 亚洲精品自拍区在线观看| 亚洲人成网站观看在线观看| 亚洲区第一页| 亚洲成网站| 精品国产Ⅴ无码大片在线观看81| 婷婷综合在线观看丁香| 欧美日韩综合网| 在线观看国产精品第一区免费| 在线观看欧美精品二区| 日韩天堂视频| 精品国产毛片| 国模极品一区二区三区| 欧美精品啪啪一区二区三区| a在线亚洲男人的天堂试看| 免费播放毛片| 久久综合亚洲色一区二区三区| 26uuu国产精品视频| 91九色国产porny| 亚洲欧美日韩成人在线| 精久久久久无码区中文字幕| 成人午夜免费视频| 精品视频91| 久久国语对白| 在线日韩日本国产亚洲| 亚洲精品无码高潮喷水A| 国产日韩欧美在线视频免费观看| 久久久久青草线综合超碰| 国产中文一区二区苍井空| 国产午夜不卡| 理论片一区| 亚洲一区二区黄色| 一区二区三区国产精品视频| 亚洲黄色视频在线观看一区| 国产激情影院| 日本午夜在线视频| 久久久久国产一级毛片高清板| 激情综合五月网| 国产91高跟丝袜| 亚洲精品视频在线观看视频| 小蝌蚪亚洲精品国产| 亚洲国产精品一区二区第一页免 | 欧美第一页在线| 国产高清国内精品福利| 国产一区二区免费播放| 国产精品久久精品| 欧美黑人欧美精品刺激| 免费AV在线播放观看18禁强制| 波多野结衣在线se| 久久香蕉国产线看观看精品蕉| 亚洲中文字幕在线精品一区| 在线观看91香蕉国产免费| 亚洲高清无码精品| 欧美成人精品高清在线下载| 91福利免费| 精品福利国产| 国产在线观看91精品亚瑟| 91精品人妻一区二区|