Transport Driver Interface
A Transport Driver Interface (TDI) az illesztőprogramok (például a Windows 2000 átirányító és a kiszolgáló) közös interfésze a különféle hálózati átviteli protokollokkal való kommunikációhoz. Ez lehetővé teszi, hogy a szolgáltatások függetlenek maradjanak a szállítási protokolloktól.
Az NDIS -től eltérően a TDI-hez nincs illesztőprogram, amely a hálózati architektúra két rétege közötti üzenetek továbbításának specifikációja.
A Microsoft úgy tervezte meg a TDI-t, hogy nagyobb rugalmasságot és funkcionalitást biztosítson, mint a meglévő interfészek (például a Winsock és a NetBIOS ). A Windows 2000 összes szállítása közvetlen interfésszel rendelkezik a TDI-hez. Ez lehetővé teszi a TDI számára, hogy soros interfészt biztosítson a szállítási protokollokhoz.
A TDI specifikáció leírja azokat a funkciókat és hívási mechanizmusokat, amelyekkel a szállítási illesztőprogramok és a TDI kliensek kommunikálnak.
Transport Driver Interface (TDI) – A SUN , az IBM és a Microsoft által kifejlesztett TDI egy programozási interfész a protokollok és más rétegalkalmazások között a Windows NT hálózati modellben.
TDI programozási modell
- A TDI programozási modell nagyon hasonlít a Winsocket modellhez . A TDI kliensek a következő lépéseket hajtják végre a távoli szerverrel való kapcsolat létrehozásához:
- A TDI-kliens létrehoz egy nyitott TDI IRP -címet a címhez. A TDI szállítás egy címobjektumként ismert fájlobjektumot ad vissza, amely egy címet képvisel. Ez a lépés megegyezik a Winsocket bind függvényének használatával.
- A TDI-kliens egy nyitott típusú TDI IRP-t üzemeltet és hoz létre, a TDI-szállítás pedig egy kapcsolatobjektumként ismert fájlobjektumot ad vissza, amely a kapcsolatot reprezentálja. Ez a lépés megegyezik a Winsocket socket funkciójának használatával.
- A TDI-kliens egy kapcsolatobjektumot társít egy címobjektummal egy társított cím típusú TDI IRP használatával.
- A távoli kapcsolatot elfogadó TDI-ügyfél kiad egy figyelő TDI IRP-t, amely megadja a kapcsolatobjektumhoz támogatott kapcsolatok számát, majd kiad egy elfogadó TDI IRP-t, amely akkor fejeződik be, amikor a távoli rendszer kapcsolatot létesít. Ez a művelet megegyezik a Winsocket figyelés és elfogadás funkcióinak használatával.
- A távoli kiszolgálóval kapcsolatot létesíteni kívánó TDI-kliens kiad egy connect típusú TDI IRP-t, amely megad egy kapcsolatobjektumot, amelyhez a TDI-átvitel a kapcsolat létrejöttekor véget ér. A connect típusú TDI IRP kiadása egyenértékű a Winsocket csatlakozási funkciójának használatával.
A TDI főbb jellemzői
- Aszinkron műveletek: A legtöbb TDI (kernel mód) művelet aszinkron művelet; vagyis a TDI kliensek által biztosított visszahívási eljárásokat használják a hálózaton valaha előfordult események meghatározására.
- Rugalmas címzési séma : A TDI használatának egyik jellemzője és előnye, hogy a TDI rugalmas címzési sémát kínál. A TDI dedikált és bővíthető mechanizmussal rendelkezik, amely különböző címzési formátumok támogatására, használatára és azonosítására használható.
- Eseményértesítés: Ez a TDI egy speciális funkciója, amely meghatározza a használt sémát, és a transzportok figyelmeztethetik a klienseket a hálózat bármely érdekes eseményére.
- 32 bites címzés: A szállítási illesztőprogram felületének másik jellemzője, hogy mind a szállítások, mind a kliensek 32 bitesek.
- Belső pufferelés: Ez a funkció lehetővé teszi a TDI számára, hogy pufferelje az ügyfelektől kapott információkat, és elküldje egy belső pufferbe. Ez a belső pufferelés lehetővé teszi a TDI kliensek számára, hogy lekérdezzék és beállítsák a belső puffer méretét, értesítést kapjanak a rendelkezésre álló pufferterületről, és megtekintsék a pufferből származó adatokat, még azok beérkezése előtt.
- Eseményértesítés (Plug & Play): A szállítási illesztőprogram interfésze meghatároz egy speciális sémát, amellyel a szállítások (Windows 2000 és újabb verziók esetén) értesíthetik a TDI-klienst a különféle PnP-eseményekről, például a kapcsolatok eltávolításáról vagy hozzáadásáról stb.
Linkek