TTP/C és TCP/IP protokollok integrációja Majzik István Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék NextTTA IST TU Vienna, AMS, Audi, BUTE, Univ. Chalmers, TTTech, VERIMAG, Univ. Ulm, Univ. York Szoftvertechnológiai Fórum Budapest, szeptember 18.
Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék Szoftvertechnológiai Fórum Budapest, szeptember 18. Áttekintés 1. Idő- és eseményvezérelt szolgáltatások 2. Az integrálás motivációi 3. A TTP/C és TCP/IP protokollok 4. Az integrálás alapelvei 5. Architektúra 6. Interfészek 7. QoS és használhatóság 8. Megvalósítás
Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék Szoftvertechnológiai Fórum Budapest, szeptember 18. Bevezető Idő- és eseményvezérelt rendszerek Az integrálás motivációi
Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék Szoftvertechnológiai Fórum Budapest, szeptember 18. Használati környezet Célrendszer: –(szigorúan) valósidejű, –nagy megbízhatóságot igénylő, –biztonságkritikus alkalmazások Kommunikációs struktúra: –valósidejű busz –terepbusz –háttér hálózat (busz) TTA: Time Triggered Architecture
Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék Szoftvertechnológiai Fórum Budapest, szeptember 18. Állapot / esemény üzenetek
Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék Szoftvertechnológiai Fórum Budapest, szeptember 18. Idővezérelt protokollok Állapot-üzenetek átvitele: Tervezési időben meghatározott üzenetküldési pontok (periodikus lekérdezés) Nincs versengés Konstans sávszélesség igény (“csúcsterhelés”) Garantált átviteli jellemzők (késleltetés, jitter) Komponálhatóság: –részrendszerek tulajdonságai alapján garantálható az összetett rendszer tulajdonsága
Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék Szoftvertechnológiai Fórum Budapest, szeptember 18. Eseményvezérelt protokollok Esemény üzenetek átvitele: Előre nem ismert üzenetküldési pontok Versengés az üzenetek között (prioritás) Sávszélesség igény a külső hatások függvénye Átviteli jellemzők prioritástól függőek Nem komponálható: –új esemény megjelenése felboríthatja az eddigi garanciákat
Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék Szoftvertechnológiai Fórum Budapest, szeptember 18. Az integrálás motivációi Idővezérelt megközelítés garanciákat ad –kritikus, valósidejű vezérlési információhoz Eseményvezérelt megközelítés kedvező: –sporadikus változások követése –diagnosztika, monitorozás adatai amelyek nehezen kezelhetők idővezérelt alapon: –nagy statikus sávszélességet igényelne –átlagosan kis kihasználtsággal (Alkalmazás letöltés: külön üzemmód)
Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék Szoftvertechnológiai Fórum Budapest, szeptember 18. NextTTA projekt WP2 Esemény- és idővezérelt szolgáltatások integrációja egy elosztott rendszerben állapot- és esemény üzenetek egyidejű kezelése többféle eseményvezérelt protokoll megvalósítása –CAN –TCP/IP klaszterek közötti kommunikáció támogatása komponálhatóság és garanciák megőrzése
Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék Szoftvertechnológiai Fórum Budapest, szeptember 18. A protokollok TTP/C TCP/IP
Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék Szoftvertechnológiai Fórum Budapest, szeptember 18. TTP/C alapműködés Időosztásos többszörös hozzáférés (TDMA) tervezési időben meghatározott
Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék Szoftvertechnológiai Fórum Budapest, szeptember 18. TTP/C általános jellemzők Járulékos protokoll szolgáltatások –tagsági kép karbantartása –óraszinkronizáció –késleltetés jitter: s nagyságrend TTPchip megvalósítás (C2): Fizikai réteg: RS485 / IEEE Base-TX Átviteli jellemzők: – Mbit/s (Gbit/s kísérletek is) –85% csatornakihasználtság elérhető
Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék Szoftvertechnológiai Fórum Budapest, szeptember 18. TTP/C hibatűrés támogatása Adat integritás: –TTPchip C2: 24 bit CRC 240 byte kerethez Hangolható redundancia kettőzött busz (két csatorna), replikált alrendszer / taszk végrehajtás Fecsegés kiküszöbölése, időbeli védőgát Hibaterjedés behatárolása: –CNI: vezérlési hibákra –taszk replikáció: adathibákra
Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék Szoftvertechnológiai Fórum Budapest, szeptember 18. Internet protokollok Fizikai és adatkapcsolati réteg: Mérsékelt elvárások csomagok sérülése, elvesztése, sorrend megváltozása, duplikálása lehetséges
Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék Szoftvertechnológiai Fórum Budapest, szeptember 18. Hálózati réteg Internet Protocol (IP): –címzés (útválasztás) –szolgáltatástípus meghatározás –fragmentálás és összeállítás Internet Control Message Protocol (ICMP): –hiba, torlódás jelzése –átirányítás
Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék Szoftvertechnológiai Fórum Budapest, szeptember 18. Szállítási réteg Transmission Control Protocol (TCP): –végpontok közötti kapcsolatok (port, socket) –megbízható adattovábbítás –sorrendezés –adatáramlás vezérlése User Datagram Protocol (UDP): –kapcsolat nélküli datagram összeköttetés –nem megbízható adattovábbítás –nincs adatáramlás vezérlés
Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék Szoftvertechnológiai Fórum Budapest, szeptember 18. Tipikus felhasználás
Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék Szoftvertechnológiai Fórum Budapest, szeptember 18. Protokoll integráció Felhasználás Alapelvek Architektúra
Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék Szoftvertechnológiai Fórum Budapest, szeptember 18. TCP/IP felhasználása a TTA-ban Meglévő alkalmazások –best effort szolgáltatás-igény, socket interfész Klaszterek közötti kommunikáció –Internet kapcsolódás –web alapú hozzáférés, monitorozás Magasabb szintű protokoll-rétegek –middleware: pl. CORBA –OO vezérlési protokollok (IAONA): Control Information Protocol (ODVA), EtherNet/IP; iDA kommunikációs réteg
Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék Szoftvertechnológiai Fórum Budapest, szeptember 18. Belső és külső kommunikáció
Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék Szoftvertechnológiai Fórum Budapest, szeptember 18. Az integrálás alapelve Egységes architektúra, komponálhatóság megőrzése “Dinamikus eseménycsatorna szolgáltatás” –sávszélesség allokáció tervezési időben: TDMA rések egy részének fenntartása –csomópontonként független (virtuális) adatcsatorna Klaszter szinten: –komponálható: idővezérelt üzenetektől független Csomópont szinten: –versengés az adatcsatornáért a taszkok között
Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék Szoftvertechnológiai Fórum Budapest, szeptember 18. Időbeli megvalósítás
Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék Szoftvertechnológiai Fórum Budapest, szeptember 18. Időbeli megvalósítás
Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék Szoftvertechnológiai Fórum Budapest, szeptember 18. Időbeli megvalósítás
Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék Szoftvertechnológiai Fórum Budapest, szeptember 18. Protokoll rétegek
Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék Szoftvertechnológiai Fórum Budapest, szeptember 18. Csomagtovábbító réteg (TUV) IP datagram feldarabolás és buszra helyezés Újraintegrálás támogatása: –cél: klaszterbe belépő csomópont integrációja (szinkronizáció egy datagram elejéhez) –alapötlet: reintegrációs pont periodikus kijelölése a klaszter globális idő alapján –minden reintegrációs pontban el kell küldeni az aktuális datagramból hátralévő byte-ok számát; leszámlálásuk után vehető a következő datagram –taszk végrehajtás és üzenetküldés összehangolva
Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék Szoftvertechnológiai Fórum Budapest, szeptember 18. Az újraintegrálás összehangolása Taszk ütemezéstől függően szükséges lehet: előző körben (round) küldeni előző kör (round) üzenetét feldolgozni
Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék Szoftvertechnológiai Fórum Budapest, szeptember 18. TCP/IP alapú kommunikáció Klaszteren belüli használat: UDP megfelelő –TTP/C: megbízható csomagtovábbítás duplikált busz, redundáns alrendszerek ütközés nincs, fecsegő csomópont kiszűrve –teljes sorrendezés biztosított –garantált késleltetés és minimális jitter Csomópont szintű követelmények: taszk szintű fecsegés és jumbogramok kiszűrése Klaszteren kívüli használat: TCP szükséges –csak a szabvány betartása tételezhető fel
Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék Szoftvertechnológiai Fórum Budapest, szeptember 18. Interfészek Egyszerűsített interfész Socket interfész QoS megoldások
Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék Szoftvertechnológiai Fórum Budapest, szeptember 18. Egyszerűsített interfész Beágyazott alkalmazások: –korlátos a memória és processzorkapacitás Egyszerűsítés az igények csökkentésére: –újraküldéshez nincs belső tárolás (alkalmazás kell újragenerálja az üzenetet) –egyszerű call-back megvalósítása –rendszeres lekérdezés üzenetküldéshez (timer) –közvetlen adatáramlás-vezérlés
Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék Szoftvertechnológiai Fórum Budapest, szeptember 18.
Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék Szoftvertechnológiai Fórum Budapest, szeptember 18. Socket interfész emulációja Szabványos felület: socket (= adatkapcsolat végpont) Több taszk esetén: –üzenetsorok és dispatcher
Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék Szoftvertechnológiai Fórum Budapest, szeptember 18. QoS megvalósítás DiffServ megközelítés: Prioritási osztályok IP fejléc ToS byte (3 ill. 6 biten) –klaszteren belüli kommunikáció: csomópont szintű versengés feloldása, prioritási szintekhez kapcsolódó üzenetsorok –klaszteren kívülre továbbítható (routerekhez) IntServ megközelítés: Sávszélesség lekötés –klaszteren belüli kommunikáció: csomópont eseménycsatornájának virtuális felosztása egyirányú jelzés –klaszteren kívüli kommunikáció: RSVP implementálható IP felett
Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék Szoftvertechnológiai Fórum Budapest, szeptember 18. Megvalósítás jellemzői Hatékonyság Sávszélesség foglalás Kitekintés
Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék Szoftvertechnológiai Fórum Budapest, szeptember 18. Hatékonyság TTP/C nagy hatékonyságú (rövid fejléc) –85% csatornakapacitás kihasználtság elérhető TCP/IP hatékonyság a datagram mérettől függ – byte IP fejléc, byte TCP fejléc –tömöríthető (3..5 byte) Tipikus diagnosztikai protokoll (TTTech adat): 16byte/5ms, 10 csomópont ( 256kbit/s); 10Mbit/s csatorna, 80% TTP/C hatékonyság mellett: –TTP/C üzenetek: 3,2% foglalás –TCP/IP a TTP/C felett: 12,8% foglalás (24 byte IP, 24 byte TCP fejléc)
Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék Szoftvertechnológiai Fórum Budapest, szeptember 18. Üzenethossz és foglalás
Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék Szoftvertechnológiai Fórum Budapest, szeptember 18. TCP/IP overhead Csatornafoglalások aránya TCP/IP és TTP/C üzenetek esetén 5ms periódus, 10 csomópont, byte normál / 5 byte tömörített TCP/IP fejléc
Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék Szoftvertechnológiai Fórum Budapest, szeptember 18. Kitekintés Lehetséges architekturális változtatások –tervezési időben kijelölt TDMA rések dinamikus, rendszerszintű arbitrációja (jelenleg csomóponthoz rendelt) központosított időbeli védőgát védelmet biztosít (idővezérelt rések függetlensége fennmarad) TTPchip: eseményvezérelt protokoll támogatás –kezdetben CAN megvalósítás Magas szintű protokollok TCP/IP felett: –címzés, elosztott szolgáltatások (IAONA)