SOME/IP 和 DDS 均已被納入AUTOSAR AP的平臺標準中。
SOME/IP 和 DDS是在不同的應(yīng)用場景和不同的需求下誕生的技術(shù),所以它們之間注定有很大的區(qū)別。
SOME/IP
SOME/IP的全稱為:Scalable service-Oriented MiddlewarE over IP,是一種面向服務(wù)的傳輸協(xié)議。
嚴格地說,SOME/IP不是一款特定的產(chǎn)品,而是一種技術(shù)標準。
其最早由寶馬在2012-2013年開發(fā),并在2014年集成進AUTOSAR 4.2.1中。
當前,全球最大的商用SOME/IP產(chǎn)品供應(yīng)商是Vector。
開源版的SOME/IP則是由Genivi協(xié)會來維護的。
DDS
DDS的全稱為Data Distribution Service(數(shù)據(jù)分發(fā)服務(wù)),是由OMG發(fā)布的分布式通信規(guī)范,采用發(fā)布/訂閱模型,提供多種QoS服務(wù)質(zhì)量策略,以保障數(shù)據(jù)實時、高效、靈活地分發(fā),可滿足各種分布式實時通信的應(yīng)用需求。
DDS將分布式網(wǎng)絡(luò)中傳輸?shù)臄?shù)據(jù)定義為“主題”,將數(shù)據(jù)的產(chǎn)生和接收對象分別定義為“發(fā)布者”和“訂閱者”,從而構(gòu)成數(shù)據(jù)的發(fā)布/訂閱傳輸模型。
各個節(jié)點在邏輯上無主從關(guān)系,點與點之間都是對等關(guān)系,通信方式可以是點對點、點對多、多對多等,在QoS的控制下建立連接,自動發(fā)現(xiàn)和配置網(wǎng)絡(luò)參數(shù)。
DDS最早應(yīng)用于美國海軍,用于解決艦船復(fù)雜網(wǎng)絡(luò)環(huán)境中大量軟件升級的兼容性問題,后來擴展至航空、航天、船舶、國防、金融、通信、汽車等領(lǐng)域,包括作戰(zhàn)系統(tǒng)、船舶導(dǎo)航和控制系統(tǒng)、船舶防御系統(tǒng)、無人機駕駛系統(tǒng)和地面控制系統(tǒng)、裝甲車輛控制系統(tǒng)、仿真和培訓(xùn)系統(tǒng)、雷達處理和空中交通管理系統(tǒng)、金融系統(tǒng)等。
2018年,DDS首次被引進AUTOSAR AP,作為可選擇的通信方式之一。2018年3月,DDS的主要提供者RTI公司宣布,AUTOSAR AP的最新版本(版本18-03)已經(jīng)具有DDS標準的完整網(wǎng)絡(luò)綁定。
OpenDDS 和 FastDDS
自動駕駛領(lǐng)域比較有影響力的開源DDS是由RTI原核心團隊成員在歐洲創(chuàng)辦的eProsima公司推出的FastDDS。
在eProsima將FastDDS的源代碼開放出來后,用戶可以直接在github上免費下載。
但FastDDS使用起來比較麻煩,這個時候,用戶就需要通過向eProsima支付費用來取得支持。
OpenDDS 由位于圣路易斯和鳳凰城的的Object Computing的 ACE/TAO 團隊開發(fā),它和FastDDS具有一定的相似性——兩者都是基于RTPS實現(xiàn)的,面向數(shù)據(jù)的通信框架,遵循的是同一標準。這類框架的典型特征是去中心化,支持QoS機制,支持實時通信。通常會綁定如protobuf等序列化工具。
在許多情況下,F(xiàn)astDDS 、OpenDDS可以跟RTI的Connnext DDS互操作/通信。當然,具體還得看場景。比如開源DDS 的QoS(服務(wù)策略)有 23個,大家都用這23個QOS交互,那就能互操作;如果Connext用的是超出這23個自定義范圍的QoS,那么開源DDS就解析不了。此外,如果用的是OMG沒開源的DDS工具,那也沒法互操作。
DDS VS Some/Ip
現(xiàn)階段,SOME/IP 和 DDS是自動駕駛上用得最多的兩類通信中間件。
共同點主要有:
- 都是面向服務(wù)的通信協(xié)議.
- 都采用了“以數(shù)據(jù)為中心”的發(fā)布和訂閱模式.
對于數(shù)據(jù)吞吐量,從有效數(shù)據(jù)的占比來看,DDS和SOME/IP的性能沒有明顯的差別。
差異性主要有:
- 資源占有大小不同
SOME/IP強調(diào)通信,體量比較小.
DDS功能更多,但體量比較大,需要裁剪后才能用于自動駕駛. - 使用場景不同
DDS是一套面向數(shù)據(jù)的訪問系統(tǒng),適合多節(jié)點、大數(shù)據(jù)交互的應(yīng)用場景;
SOME/IP是一套面向服務(wù)的訪問系統(tǒng),可以很方便地用于RPC(遠程過程調(diào)用)以及變更通知。 - 靈活性、可伸縮性不同
相較于SOME/IP,DDS引入了大量的標準內(nèi)置特性,例如基于內(nèi)容和時間的過濾、與傳輸無關(guān)的可靠性、持久性、存活性、延遲/截至?xí)r間監(jiān)視、可擴展類型等。 - 訂閱方和發(fā)布方是否強耦合
在SOME/IP中,在正常數(shù)據(jù)傳輸前,client需要與server建立網(wǎng)絡(luò)連接并詢問server是否提供所需服務(wù),在這個層面上,節(jié)點間仍然具有一定耦合性。服務(wù)的訂閱方需要知道server在哪里,服務(wù)的發(fā)布方需要告知server提供哪種服務(wù);
在DDS標準下,每個訂閱方或發(fā)布方只需要在自己的程序里面訂閱或發(fā)布傳感器數(shù)據(jù)就行了,不需要關(guān)心任何連接。可以理解為,在DDS中,服務(wù)訂閱方和發(fā)布方的解耦更加徹底,需要什么數(shù)據(jù),寫一行代碼就行了,不需要再去做綁定。 - 服務(wù)策略不同
SOME/IP只有一個QoS,即可靠性的定義;
RTI DDS和開源DDS里面分別有50多個和20多個QoS,這些QoS基本上能涵蓋絕大多數(shù)可以預(yù)見到的智能駕駛場景。
DDS適用于自動駕駛域,而SOME/IP則可以延伸到整車域。
實際運用過程中,二者可以共存在一套系統(tǒng)中。文章來源:http://www.zghlxwxcb.cn/news/detail-465584.html
文章來源地址http://www.zghlxwxcb.cn/news/detail-465584.html
到了這里,關(guān)于【軟件定義汽車】SOA協(xié)議DDS和Some/IP對比的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!