一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

什么是DDS?初識CP AUTOSAR平臺下的DDS規(guī)范

jf_EksNQtU6 ? 來源:車載嵌入式軟件開發(fā) ? 2023-12-05 18:18 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

什么是DDS

數(shù)據(jù)分發(fā)服務(DDS)[1]是一個來自對象管理組(OMG)的中間件協(xié)議和API標準。它將系統(tǒng)的組件集成在一起,提供低延遲的數(shù)據(jù)連接,極高的可靠性,和可擴展的架構(gòu)。

DDS中間件是一個軟件層,它將應用程序從操作系統(tǒng),網(wǎng)絡傳輸,和低級數(shù)據(jù)格式的細節(jié)中抽象出來。底層的細節(jié),例如數(shù)據(jù)線格式,發(fā)現(xiàn),連接,可靠性,協(xié)議,傳輸選擇,QoS,安全等,都由中間件管理。

DDS提供了QoS控制的數(shù)據(jù)共享。應用程序通過發(fā)布和訂閱主題(topic)來進行通信,主題由它們的主題名和類型來標識。訂閱者可以通過時間和內(nèi)容過濾器來獲取主題上發(fā)布的數(shù)據(jù)的一個子集。不同的DDS域彼此完全獨立。DDS域之間沒有數(shù)據(jù)共享。

DDS以數(shù)據(jù)為中心,這個特點保證了所有的消息都包含了應用程序需要理解數(shù)據(jù)的上下文信息。DDS知道它存儲了什么數(shù)據(jù),并控制了如何共享這些數(shù)據(jù)。使用傳統(tǒng)的基于消息的中間件的程序員必須編寫發(fā)送消息的代碼。使用數(shù)據(jù)中心化的中間件的程序員編寫指定如何和何時共享數(shù)據(jù)的代碼,然后直接共享數(shù)據(jù)值。而不是在應用程序(用戶)代碼中管理所有這些復雜性,DDS直接為用戶實現(xiàn)了受控的,管理的,安全的數(shù)據(jù)共享。

全局數(shù)據(jù)空間

DDS依賴于一個與平臺無關(guān)的數(shù)據(jù)模型。這個模型定義了全局數(shù)據(jù)空間,并指定了發(fā)布者和訂閱者如何引用這個空間的一部分。數(shù)據(jù)模型可以簡單到一組沒有關(guān)聯(lián)的數(shù)據(jù)結(jié)構(gòu),每個數(shù)據(jù)結(jié)構(gòu)由一個主題和一個類型來標識。

主題提供了一個唯一標識全局數(shù)據(jù)空間中某些數(shù)據(jù)項的標識符。類型提供了結(jié)構(gòu)信息,告訴中間件如何操作數(shù)據(jù)。使用類型化接口意味著需要一個生成工具,將類型描述轉(zhuǎn)換為適當?shù)慕涌诤蛯崿F(xiàn),填補類型化接口和通用中間件之間的差距。

以下定義可能有助于更好地理解DDS。

實體Entity:DDS的基本對象,幾乎所有其他對象都是它的特化。

發(fā)布者Publisher:這個對象負責數(shù)據(jù)分發(fā)。它可以發(fā)布不同數(shù)據(jù)類型的數(shù)據(jù)。

數(shù)據(jù)寫入DataWriter:應用程序必須使用數(shù)據(jù)寫入器來向發(fā)布者通知給定類型的數(shù)據(jù)對象的存在和值。當數(shù)據(jù)對象的值通過適當?shù)臄?shù)據(jù)寫入器傳遞給發(fā)布者時,發(fā)布者有責任執(zhí)行分發(fā)(發(fā)布者將根據(jù)自己的QoS或附加到相應數(shù)據(jù)寫入器的QoS來執(zhí)行此操作)。

訂閱者Subscriber:訂閱者負責接收發(fā)布的數(shù)據(jù),并根據(jù)訂閱者的QoS使其可用于接收應用程序。它可以接收和分發(fā)不同指定類型的數(shù)據(jù)。

數(shù)據(jù)讀取DataReader:訂閱者使用數(shù)據(jù)讀取器來向應用程序提供特定類型的接收數(shù)據(jù)。

域Domain:域是一個分布式的概念,它連接了所有能夠相互通信的應用程序。它代表了一個通信平面:只有附加到同一域的發(fā)布者和訂閱者才能相互作用。

服務質(zhì)量(QoS):QoS(服務質(zhì)量)是一個通用的概念,用于指定一個實體的行為。QoS由單個QoS策略(QosPolicy類型的對象)組成。影響不同實體的一個或多個QoS策略的特定值可以分組在QoS配置文件中。

主題Topic:一個主題對應于一個單一的數(shù)據(jù)類型。主題對象在概念上位于發(fā)布和訂閱之間。發(fā)布必須以一種訂閱可以明確引用的方式被知曉。主題的目的就是滿足這個需求:它將一個名字(在域中唯一)、一個數(shù)據(jù)類型和與數(shù)據(jù)本身相關(guān)的QoS關(guān)聯(lián)起來。除了主題QoS之外,與該主題相關(guān)的數(shù)據(jù)寫入器的QoS和與數(shù)據(jù)寫入器相關(guān)的發(fā)布者的QoS控制了發(fā)布者端的行為,而相應的主題、數(shù)據(jù)讀取器和訂閱者QoS控制了訂閱者端的行為。

c526c9b2-9355-11ee-939d-92fbcf53809c.jpg

DDS是一個以數(shù)據(jù)為中心的發(fā)布訂閱協(xié)議,這個協(xié)議定義了應用程序發(fā)布和訂閱數(shù)據(jù)對象的值的功能。它允許:

發(fā)布應用程序標識它們打算發(fā)布的數(shù)據(jù)對象,然后提供這些對象的值(它們使用一些在某些域參與者中定義的發(fā)布者/數(shù)據(jù)寫入器)。

訂閱應用程序標識它們感興趣的數(shù)據(jù)對象,然后訪問它們的數(shù)據(jù)值(它們使用一些在與它們想要接收數(shù)據(jù)的各個主題的發(fā)布者相同的域參與者中定義的訂閱者/數(shù)據(jù)讀取器)。

應用程序定義主題,將類型信息附加到主題,創(chuàng)建發(fā)布者和訂閱者實體,將QoS策略附加到所有這些實體,總之,使所有這些實體運行。

CP中的DDS模塊

c53d3d46-9355-11ee-939d-92fbcf53809c.jpg

DDS模塊實現(xiàn)實體管理,QoS等接口邏輯,還有DDSI-RTPS標準層,它是一個具備以下功能的協(xié)議棧:

序列化

反序列化

數(shù)據(jù)過濾

數(shù)據(jù)記錄

數(shù)據(jù)持久化

數(shù)據(jù)重傳

信息安全

E2E保護

從傳輸路徑的角度來看,DDS模塊只提供了一個基于PDU的接口,用于傳入(例如,上層PDU)和傳出(例如,下層PDU)的PDU。

基本上,在發(fā)送端,Dds數(shù)據(jù)是在應用層創(chuàng)建的,并直接傳遞給RTE(作為未序列化的數(shù)據(jù)),然后轉(zhuǎn)發(fā)給LdCom,PduR,然后作為一個PDU轉(zhuǎn)發(fā)給Dds模塊,沒有經(jīng)過任何修改或轉(zhuǎn)換(在接收端也是如此)。RTE,LdCom和PduR(作為上層)只是簡單地充當透傳模塊。序列化是在Dds BSW內(nèi)部執(zhí)行的,對AUTOSAR堆棧完全不透明。Dds BSW應該知道復制數(shù)據(jù)的確切數(shù)據(jù)類型。

需要注意的是,在RTE,即使對于復合數(shù)據(jù)類型,也不會進行任何轉(zhuǎn)換或序列化:數(shù)據(jù)會從應用層復制到ISignal(在LdCom緩沖區(qū)中),然后PduR將信息路由到DDS模塊,數(shù)據(jù)到達Dds時完全沒有修改。Dds模塊能夠通過其映射到PDU的類型來處理數(shù)據(jù)。下層PDU包含了DDSI-RTPS協(xié)議包,準備好交付給傳輸層。

c5527fbc-9355-11ee-939d-92fbcf53809c.jpg

傳輸層提供了一組適合于啟用Dds通信的連接。例如,讓我們考慮一個使用一些發(fā)布者/數(shù)據(jù)寫入器在一些域參與者下的簡單發(fā)布SW-C。如果本地域參與者不支持動態(tài)發(fā)現(xiàn),那么對于每個數(shù)據(jù)寫入器,就有必要靜態(tài)配置適當?shù)倪h程數(shù)據(jù)讀取器可達性信息。接收端也應該發(fā)生類似的情況:本地數(shù)據(jù)讀取器應該知道與之相關(guān)的數(shù)據(jù)寫入器的可達性信息。這些信息應該用于適當?shù)呐渲玫讓觽鬏攨f(xié)議。

c566fb2c-9355-11ee-939d-92fbcf53809c.jpg

QoS管理

Dds BSW可以支持一部分(甚至為空)的QoS策略。沒有必須實現(xiàn)的QoS。哪些QoS策略實際上是支持的,這是由供應商決定的。

c57edbf2-9355-11ee-939d-92fbcf53809c.jpg

對于DDS的TRANSPORT_PRIORITY QoS,由SoAdSocketFramePriority實現(xiàn),但具體Dds模塊在運行時需要自己選擇發(fā)送PDU送到哪個優(yōu)先級的SoAd connection上。

數(shù)據(jù)安全機制

在AP和CP之間,甚至在CP和非AUTOSAR平臺之間,建立通信路徑可能會涉及安全風險,因此可能需要使用一些安全機制。Dds BSW模塊通過使用DDS安全規(guī)范來[2]保證一些安全機制。使用這個規(guī)范是為了保證與其他DDS系統(tǒng)的互操作性,無論是與AP(其中已經(jīng)使用了DDS數(shù)據(jù)安全)還是與非AUTOSAR系統(tǒng)。然而,實現(xiàn)這個規(guī)范可能會非常消耗資源,特別是在一個慢速的微控制器上使用,這些功能需要硬件加速。為了克服這個問題,選擇了一個DDS數(shù)據(jù)安全功能的子集,它能保證最低的安全級別。

在這個階段,實現(xiàn)DDS數(shù)據(jù)安全的目的是為了保證消息認證,數(shù)據(jù)完整性和組認證。安全機制可以在配置時啟用或禁用。如果啟用,所有的安全參數(shù)必須在預編譯時靜態(tài)配置。

c5833e72-9355-11ee-939d-92fbcf53809c.jpg

如果配置了,整個RTPS消息的消息認證碼(MAC)會被添加。AUTOSAR CSM用于密鑰管理和MAC計算,要使用的算法是可配置的(從支持的算法中選擇)。

用于哈希算法的密鑰是對稱密鑰,它們在與域參與者相關(guān)的實體之間共享,所以認證是在域參與者級別進行的(不是單個發(fā)布者/訂閱者,不是單個數(shù)據(jù)寫入器/數(shù)據(jù)讀取器)。要使用的對稱密鑰應該由CSM直接管理,它應該提供一個handler給DDS,以便使用它的服務。為了上述目的,使用了DDS加密插件,它提供了一個接口來保護整個RTPS消息。在應用安全后,結(jié)果RTPS消息如下圖所示。

c59748b8-9355-11ee-939d-92fbcf53809c.jpg

功能安全機制

根據(jù)ISO 26262,在執(zhí)行不同軟件分區(qū)或ECU中的發(fā)送器和接收器之間的通信鏈路上的一組故障需要被考慮。

端到端保護的概念假定在運行時應保護與安全相關(guān)的數(shù)據(jù)免受通信鏈路內(nèi)部故障的影響。

DDS規(guī)范具有內(nèi)在的安全機制(計數(shù)器、CRC、QoS策略),可用于支持安全論證。

以下是在追求功能安全時需要解決的可能故障列表,以及DDS提供的支持它們的機制:

重復、丟失、插入、不正確的順序、僅由接收器子集接收到的來自發(fā)送方的信息以及阻塞對通信通道的訪問:子消息64位序列號,如DDS Interoperability Wire Protocol, Version 2.2第8節(jié)3.5.4“SequenceNumber”中定義的,以及在第8.3.7“RTPS Submessages”中定義的額外的SequenceNumber類型字段。這些機制僅對在接收器端檢測丟失有用;如果還需要在發(fā)送器端進行檢測,則應結(jié)合使用DDS QoS。

信息延遲和阻塞對通信通道的訪問:LATENCY_BUDGET、DEADLINE和LIFESPAN質(zhì)量服務策略,分別在Data Distribution Service (DDS), Version 1.4的2.2.3.8“LATENCY_BUDGET”、2.2.3.7“DEADLINE”和2.2.3.16“LIFESPAN”中定義的部分。

信息偽裝或錯誤尋址:DDS安全認證插件,如DDS Security, Version 1.1 第8.3“Authentication Plugin”節(jié)中定義的。在這個概念中,只能在DomainParticipant級別實現(xiàn)身份驗證,因為屬于同一DomainParticipant級別的所有實體共享相同的對稱密鑰。這可以防止屬于DomainParticipant之外的實體訪問DomainParticipant通信,但不能區(qū)分被授權(quán)在DomainParticipant內(nèi)部通信的兩個不同實體。

信息損壞、從發(fā)送方發(fā)送到多個接收器的不對稱信息(僅對導致無效CRC的情況有效):位于HeaderExtension子消息下的rtpsMessageChecksum([RTPS 2.5或更高版本])。在沒有此功能的情況下,DDS Security, Version 1.1 還提供了內(nèi)置于其消息認證協(xié)議中的消息完整性驗證。對于CRC計算,使用AUTOSAR CRC庫。

對這些故障條件錯誤的通知:在發(fā)生任何通信錯誤或故障(甚至是超時錯誤)時,Dds BSW應通知Det模塊。






審核編輯:劉清

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • QoS
    QoS
    +關(guān)注

    關(guān)注

    1

    文章

    137

    瀏覽量

    45412
  • DDS
    DDS
    +關(guān)注

    關(guān)注

    22

    文章

    672

    瀏覽量

    154416
  • AUTOSAR
    +關(guān)注

    關(guān)注

    10

    文章

    379

    瀏覽量

    22651

原文標題:初識CP AUTOSAR平臺下的DDS規(guī)范

文章出處:【微信號:談思實驗室,微信公眾號:談思實驗室】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    DDS協(xié)議測試解決方案之中間件的作用#DDS

    DDS
    北匯信息POLELINK
    發(fā)布于 :2023年05月12日 13:05:42

    時間同步對DDS實時性能的影響#DDS #TSN #時間敏感網(wǎng)絡

    網(wǎng)絡DDS
    北匯信息POLELINK
    發(fā)布于 :2024年05月30日 10:38:03

    DDS的工作原理是什么?如何去設計DDS?

    DDS的工作原理是什么?基于DSP Builder和DDS設計基于FPGA的DDS設計
    發(fā)表于 05-06 06:27

    什么是DDS?DDS的工作原理是什么

    什么是DDS?DDS的工作原理是什么?怎么做出一個DDS模塊呢?
    發(fā)表于 01-26 06:31

    dds的工作原理

    DDS的基本原理是利用采樣定理,通過查表法產(chǎn)生波形。DDS的結(jié)構(gòu)有很多種,其基本的電路原理可用圖3 來表示。
    發(fā)表于 04-03 12:47 ?9391次閱讀
    <b class='flag-5'>dds</b>的工作原理

    DDS,什么是DDS,DDS的結(jié)構(gòu)

    DDS,什么是DDS,DDS的結(jié)構(gòu) DDS概述 直接數(shù)字式頻率綜合器DDS(Direct Digital Synthesizer),
    發(fā)表于 09-03 08:42 ?4801次閱讀
    <b class='flag-5'>DDS</b>,什么是<b class='flag-5'>DDS</b>,<b class='flag-5'>DDS</b>的結(jié)構(gòu)

    DDS是什么意思,DDS結(jié)構(gòu),DDS原理是什么

    DDS是什么意思,DDS結(jié)構(gòu),DDS原理是什么 什么叫DDS 直接數(shù)字式頻率合成器DDS(Direct Digital Synthesi
    發(fā)表于 03-08 16:56 ?4.7w次閱讀

    直接數(shù)字合成(DDS),直接數(shù)字合成(DDS)是什么意思

    直接數(shù)字合成(DDS),直接數(shù)字合成(DDS)是什么意思 直接數(shù)字合成(DDS)的概念 1971年,美國學者J.Tierncy,
    發(fā)表于 03-23 11:06 ?2640次閱讀

    利用ADISim DDS在線工具仿真DDS產(chǎn)品的頻譜特性

    利用ADISim DDS來仿真DDS產(chǎn)品的頻譜特性。
    的頭像 發(fā)表于 07-15 06:13 ?4549次閱讀

    CAN網(wǎng)絡管理規(guī)范 AUTOSAR CP中文版

    CAN網(wǎng)絡管理規(guī)范 AUTOSAR CP中文版免費下載。
    發(fā)表于 04-06 16:21 ?0次下載

    一文讀懂DDSAUTOSAR Adaptive的集成

    對于使用AUTOSAR制造車輛的公司來說,已經(jīng)出現(xiàn)了兩個不同的平臺 - AUTOSAR Classic和AUTOSAR Adaptive 這兩個AU
    的頭像 發(fā)表于 11-02 10:05 ?2978次閱讀

    映射DDSAUTOSAR類型系統(tǒng)實現(xiàn)

    對于使用AUTOSAR制造車輛的公司來說,已經(jīng)出現(xiàn)了兩個不同的平臺 - AUTOSAR Classic和AUTOSAR Adaptive 這兩個AU
    的頭像 發(fā)表于 11-02 10:05 ?1623次閱讀

    SOME/IP與DDS對比及DDS測試策略和方案探討

    本文對DDS以及基于DDS的SOA系統(tǒng)的測試策略進行探討,并介紹DDS測試方案。
    的頭像 發(fā)表于 08-04 14:52 ?2976次閱讀
    SOME/IP與<b class='flag-5'>DDS</b>對比及<b class='flag-5'>DDS</b>測試策略和方案探討

    DDS通信中間件——DCPS規(guī)范(上)

    DDS通信中間件——DCPS規(guī)范(上)本篇文章繼續(xù)和大家分享一下對DDS這套規(guī)范的理解。預期本系列文章將包括以下內(nèi)容陸續(xù)更新:1.DDS
    的頭像 發(fā)表于 09-26 08:08 ?1637次閱讀
    <b class='flag-5'>DDS</b>通信中間件——DCPS<b class='flag-5'>規(guī)范</b>(上)

    DDS通信中間件——DCPS規(guī)范(下)

    DDS通信中間件——DCPS規(guī)范(下)本期還是DCPS規(guī)范,填上期沒有聊完的QoS的坑。本系列文章將包括以下內(nèi)容陸續(xù)更新:1.DDS規(guī)范概述
    的頭像 發(fā)表于 11-27 11:47 ?1340次閱讀
    <b class='flag-5'>DDS</b>通信中間件——DCPS<b class='flag-5'>規(guī)范</b>(下)