Adatterjesztési szolgáltatás

Az oldal jelenlegi verzióját még nem ellenőrizték tapasztalt közreműködők, és jelentősen eltérhet a 2019. február 9-én felülvizsgált verziótól ; az ellenőrzések 14 szerkesztést igényelnek .

A DDS (Data Distribution Service, Data Distribution Service) valós idejű rendszerekhez egy objektumkezelő csoport gépek közötti kommunikációs szabványa , amelynek célja, hogy méretezhető , érzékeny , megbízható, nagy teljesítményű és együttműködő adatcserét biztosítson a Publisher-Subscriber használatával. minta . A DDS kielégíti a légiforgalmi irányítással , intelligens hálózatokkal , autonóm járművekkel, robotikával, logisztikával, áramellátással, orvosi berendezésekkel, szimulációval és teszteléssel, űrrel és védelemmel, tárgyak internete [1] , valamint egyéb olyan alkalmazások igényeit, amelyekhez szükség van valós idejű adatcsere.

Történelem

Kis számú szabadalmaztatott DDS-rendszer már egy ideje elérhető. 2001-től kezdődően két kampány, az amerikai állami beszállító, a Real-Time Innovations és a francia Thales Group összefogott, hogy követelményeket hozzon létre a DDS számára, amelyet ezt követően az Object Management Group (OMG) jóváhagyott, és ennek eredményeként megjelent az 1.0-s verzió 2004. december Az 1.1-es verzió 2005 decemberében jelent meg, az 1.2-es verzió 2007 januárjában és az 1.4-es verzió 2015 áprilisában. A DDS-t többek között számos amerikai szabadalom is védi. A DDS követelmények az interfészek alábbi két szintjét írják le:

Egyéb függő szabványok a fő dokumentumból következnek. Az on-line, vezetékes kompatibilis előfizető-kiadó DDS-protokoll specifikációja biztosítja, hogy a szállító DDS-megvalósításával egy témában közzétett információkat egy vagy több előfizető megoszthassa ugyanazon szállító vagy egy teljesen másik DDS-megvalósítás használatával. Bár a specifikáció a DDS közösségnek szól, használata nincs korlátozva. A 2.0-s verzió 2008 áprilisában jelent meg, a 2.1-es verzió 2010 novemberében és a 2.2-es verzió 2014 szeptemberében. A DDS for Simplified CCM olyan architektúra mintát kínál, amely elválasztja az üzleti logikát a nem funkcionális funkcióktól. Egy 2012-es bővítés bevezette a szálak támogatását. A JAVA 5 PSM for DDS Java 5 nyelvi összerendelést definiált, amelyet platformspecifikus modellnek (DDS) neveznek a DDS számára. Szigorúan csak a DDS specifikáció mintaillesztési, kiadói-előfizetői és adatorientált részéhez kötött.

A DDS-TSN olyan mechanizmusokat határoz meg, amelyek lehetővé teszik a DDS telepítését és használatát az időérzékeny hálózatokban ( TSN ).

Építészet

Modell

A DDS kölcsönhatásba lép a köztes szoftverrel , ami leegyszerűsíti a hálózati feladatok programozását. A közzététel-előfizetés mintát valósítja meg az adatok, események és parancsok csomópontokban történő küldésekor és fogadásakor. Csomópontok, amelyek információkat adnak ki, témákat hoznak létre, példákat tesznek közzé. A DDS példákat szállít az adott téma iránt érdeklődő előfizetőknek. A DDS elvégzi a házimunkát: üzenetcímzés, szerializálás és deszerializálás (így az előfizetőknek más platformjuk lehet, mint a kiadó), kézbesítés, áramlásvezérlés, újrapróbálkozás. Mindegyik csomópont lehet kiadó, előfizető vagy mindkettő, a helyzettől függően. A közzététel-előfizetés DDS modell hatékonyan kiküszöböli az elosztott alkalmazások komplex hálózati feladatrendszerét. A DDS olyan mechanizmusokat is támogat, amelyek túlmutatnak a szabványos előfizető-kiadó modellen. A fő előny az, hogy az adatátvitelre DDS-t használó alkalmazások leválaszthatók egymástól. Csak kis tervezési időre van szükség az interakcióik kezeléséhez. Különösen az alkalmazásoknak soha nincs szükségük információra a többi részt vevő alkalmazásról, beleértve a létezésükre vagy helyükre vonatkozó információkat. A DDS csendben kezeli az üzenetek kézbesítését anélkül, hogy be kellene avatkoznia a felhasználó alkalmazásaiba, beleértve:

A DDS lehetővé teszi a felhasználó számára, hogy QoS paramétereket definiáljon a felderítési mechanizmusok és viselkedés előzetes konfigurálásához. A névtelen üzenetküldés révén a DDS leegyszerűsíti az alkalmazások terjesztését, és ösztönzi a moduláris, strukturált programokat. A DDS emellett automatikusan kezeli a kiadói csomópont azonnali cseréjét, ha az elsődleges nem hajtja végre a feladatokat. Az előfizetők mindig magas prioritású példát kapnak, ha az adatok helyesek. Automatikusan visszatér a fő csomópontokhoz, ha visszaállítják őket.

Interakció

A DDS kereskedelmi és nyílt forráskódú megvalósítása egyaránt rendelkezésre áll. Grafikus felhasználói felületeket és beágyazásokat tartalmaznak az ADA, C, C++, C#, Java, Scala, Lua, Pharo és Ruby számára. A megvalósítások egy részét a cikk végén található táblázatok sorolják fel. A DDS-szállítók 2009 és 2013 között interoperációs bemutatókon vettek részt az OMG tavaszi technológiai találkozón. A bemutató során mindegyik gyártó kiállította termékét, és tesztminták segítségével feliratkozott egymás témáira. Például az egyik szolgáltató információt ad egy ábráról, egy másik szolgáltató pedig feliratkozhat egy témára, és megjelenítheti saját figuráinak eredményeit. A beszállítók mindegyike hozzájárul az információk közzétételéhez, a többiek pedig előfizetnek. Két dolog jelenléte vezetett a demóverziók létezésének lehetőségéhez: a DDS-I vagy a kiadó-előfizető működési protokollja, valamint az egységes modell használatára vonatkozó megállapodás. 2009 márciusában három szállító mutatta be az önálló, független termékek közötti interoperabilitást, amelyeket az online OMG Publisher-Subscriber mintaprotokoll 2009. januári 2.1-es verziója implementált. A demonstráció a Kiadó és az Előfizető megfigyeléseit is magában foglalta különböző operációs rendszer-platformokon és támogatott több- és egyirányú hálózati kapcsolat. 2013 márciusáig 6 vállalat csatlakozott az operációs rendszerek közötti interakció bemutatásához:

A DDS interoperabilitás demonstrációja a következő forgatókönyveket tartalmazta:

Lásd még

Hivatkozások

  1. David Barnett. Az MQTT és a DDS, mint M2M protokollok összehasonlítása a tárgyak internete számára. Közzétéve: 2013. május 29. - [1] Archivált : 2020. szeptember 29. a Wayback Machine -nél

Linkek