OpenDDS-1
轉自:軟件開發.OpenDDS
設計智能座艙時ECU之間通信及與TSP通信選擇使用OpenDDS是可以的,因此不少人都認為OpenDDS是屬于汽車以太網(Aumotive Ethernet,AE),但事實上autosar AE中定義中有SomeIP、DoIP、AVB、gPTP/PTP等卻是沒有OpenDDS。把OpenDDS歸類到物聯網協議中,這個是比較合適的。
談起OpenDDS,不得不與Mqtt及SomeIP先做一下簡單的對比:
1)OpenDDS是基于topic發布訂閱機制,需要DCPSInfoRepo?broker;
2)Mqtt是基于topic發布訂閱機制,需要mosquitto broker;
3)SomeIP是基于服務發現(Service Discovery, SD)的RPC、messaging及field機制,需要vsomeipd daemon;
似乎Mqtt與OpenDDS最相似了,但是Mqtt是一個tiny topic publish/subscribe機制的實現,與OpenDDS相比其功能、其實時性及QoS其他指標是有天壤之別的,如果只在TSP與T-Box之間做簡單的Telematics應用選擇Mqtt也足夠了。從體現SOA思想的實現,顯然SomeIP是最完善的,且最方便集成與使用的,特別是field這個特性,協議定義了field的setter、getter方法及notification messaging,很適合定義CAN信號,這也充分體現了autosar AE的優勢。但是SomeIP集成用于TSP,這個就有點受限制了,至少需要私有APN才好支持SD。
本案并非要討論上述三種協議的優缺點,主要是引導工程師深入了解與實踐如何開展OpenDDS部署、開發及集成等工作,如下:
如果你能看到這里,說明你很有耐心,如果你能掌握上面講過的你就是OpenDDS系統集成與開發大師!:-)
OpenDDS最大優勢是它的實時性,如果你要問它怎么做到的?我具體回答不了這個問題,但是我可以摘錄《OpenDDS-latest》里面原話,因為OpenDDS設計與實現了OMG的標準,而這些標準就是定義DDS RTS的spec,相信不用我再多解釋了。截圖如下:
總結
- 上一篇: SaaS窘境[欣赏然后翻译之]
- 下一篇: 接视频Java 数据库