Transport Driver Interface
Transport Driver Interface (TDI) er en fælles grænseflade for drivere (såsom Windows 2000-omdirigering og server) til at kommunikere med forskellige netværkstransportprotokoller. Dette gør det muligt for tjenester at forblive uafhængige af transportprotokoller.
I modsætning til NDIS er der ingen driver til TDI, som er en specifikation til at sende beskeder mellem to lag i en netværksarkitektur.
Microsoft designede TDI til at give mere fleksibilitet og funktionalitet end eksisterende grænseflader (såsom Winsock og NetBIOS ) til rådighed. Al transport i Windows 2000 har en direkte grænseflade til TDI. Dette gør det muligt for TDI at levere en seriel grænseflade til transportprotokoller.
TDI-specifikationen beskriver det sæt funktioner og kaldemekanismer, hvormed transportdrivere og TDI-klienter kommunikerer.
Transport Driver Interface (TDI) — TDI er udviklet af SUN , IBM og Microsoft og er en programmeringsgrænseflade mellem protokoller og andre lagapplikationer i Windows NT -netværksmodellen.
TDI programmeringsmodel
- TDI-programmeringsmodellen minder meget om Winsocket- modellen . TDI-klienter implementerer følgende trin for at etablere en forbindelse til en ekstern server:
- TDI-klienten genererer en adresse åben TDI IRP for at imødekomme adressen. TDI-transporten returnerer et filobjekt, kendt som et adresseobjekt, der repræsenterer en adresse. Dette trin svarer til at bruge bindefunktionen i Winsocket .
- TDI-klienten hoster og konstruerer en TDI IRP af typen forbindelse åben, og TDI-transporten returnerer et filobjekt, kendt som et forbindelsesobjekt, der repræsenterer forbindelsen. Dette trin svarer til at bruge socket-funktionen i Winsocket.
- TDI-klienten knytter et forbindelsesobjekt til et adresseobjekt ved hjælp af en TDI IRP af typen associeret adresse.
- En TDI-klient, der accepterer en fjernforbindelse, udsteder en lytte TDI IRP, der angiver antallet af forbindelser, der understøttes for forbindelsesobjektet, og udsteder derefter en accept TDI IRP, der afsluttes, når fjernsystemet etablerer en forbindelse. Denne handling svarer til at bruge lyt og accept-funktionerne i Winsocket.
- En TDI-klient, der ønsker at etablere en forbindelse til en fjernserver, udsteder en TDI IRP af typen connect, der angiver et forbindelsesobjekt, som TDI-transporten afslutter, når forbindelsen er etableret. Udstedelse af en TDI IRP af typen connect svarer til at bruge tilslutningsfunktionen i Winsocket.
Hovedtræk ved TDI
- Asynkrone operationer: De fleste operationer i TDI (kernetilstand) er asynkrone operationer; det vil sige, at de bruger tilbagekaldsprocedurerne fra TDI-klienter til at bestemme eventuelle hændelser, der nogensinde har fundet sted på netværket.
- Fleksibel adresseordning : En af funktionerne og fordelene ved at bruge TDI er, at TDI tilbyder en fleksibel adresseordning. TDI har en dedikeret og udvidelig mekanisme, der kan bruges til at understøtte, bruge og identificere forskellige adresseringsformater.
- Begivenhedsmeddelelse: Dette er en speciel funktion ved TDI, hvorved den anvendte ordning bestemmes, og transporter kan advare kunder om enhver begivenhed af interesse på netværket.
- 32-bit adressering: Et andet træk ved transportdrivergrænsefladen er, at både transporter og klienter begge er 32-bit.
- Intern buffering: Denne funktion gør det muligt for TDI at buffere, hvad der modtages fra klienter, og sende det til en intern buffer. Denne interne buffering giver TDI-klienter mulighed for at forespørge og indstille størrelsen på den interne buffer, få besked om den tilgængelige bufferplads og se data fra bufferen, selv før de modtager dem.
- Hændelsesmeddelelse (Plug & Play): Transportdrivergrænsefladen definerer et specifikt skema, hvorved transporter (i tilfælde af Windows 2000 og nyere versioner) kan give TDI-klienten besked om forskellige PnP-hændelser, såsom forbindelser, der fjernes eller tilføjes og mere.
Links