Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Notitie
OID_GEN_CO_GET_TIME_CAPS is hetzelfde als OID_GEN_GET_TIME_CAPS.
De OID_GEN_CO_GET_TIME_CAPS OID vraagt een minipoortstuurprogramma om de mogelijkheden te retourneren voor het rapporteren van de lokale tijd van een NIC die is opgemaakt als een GEN_GET_TIME_CAPS structuur, die als volgt wordt gedefinieerd:
typedef struct _GEN_GET_TIME_CAPS{
ULONG Flags;
ULONG ClockPrecision;
} GEN_GET_TIME_CAPS, *PGEN_GET_TIME_CAPS;
De leden van deze structuur bevatten de volgende informatie:
vlaggen
De volgende vlaggen kunnen samen ORed zijn. Alle niet-opgegeven vlaggen moeten worden ingesteld op nul.
READABLE_LOCAL_CLOCK
Wanneer deze is ingesteld, wordt de aanwezigheid van een leesbare klok op de NIC aangegeven. Zelfs zonder een dergelijke hardwareklok kan een minipoortstuurprogramma de systeemklok gebruiken door NdisGetCurrentSystemTime aan te roepen, zolang het de juiste precisie rapporteert in het ClockPrecision-lid.
CLOCK_NETWORK_DERIVED
Wanneer deze is ingesteld, geeft u aan dat de lokale tijd van de NIC is afgeleid van de netwerkverbinding, in plaats van een vrije, onboard klok.
CLOCK_PRECISION
Wanneer dit is ingesteld, geeft u aan dat het lid ClockPrecision geldige informatie bevat.
RECEIVE_TIME_INDICATION_CAPABLE
Wanneer deze optie is ingesteld, geeft u aan dat de NIC-hardware de lokale tijd kan noteren waarop deze de eerste cel van een ontvangen PDU ontvangt en dat het minipoortstuurprogramma deze ontvangsttijd voor elke PDU doorgeeft wanneer het pakket aan een protocol wordt aangegeven.
TIMED_SEND_CAPABLE
Wanneer deze is ingesteld, geeft u aan dat de NIC een pakket kan plannen voor verzending op basis van de lokale tijd. Protocollen kunnen NDIS_SET_PACKET_TIME_TO_SEND gebruiken om de TimeToSend-tijdstempel in te stellen in het out-of-band-gegevensblok van een pakketdescriptor. Het instellen van de tijdstempel heeft geen invloed op het moment dat het pakket daadwerkelijk wordt verzonden; In plaats daarvan wordt de tijdstempel gebruikt voor het bewaren van records. Een protocolstuurprogramma kan de tijdstempel gebruiken om te bepalen hoe lang het duurt om het verzenden van een paket te voltooien.
TIME_STAMP_CAPABLE
Wanneer deze optie is ingesteld, geeft u aan dat de NIC kan stempelen (in het juiste veld van het uitgaande pakket) op het tijdstip waarop de eerste byte van het pakket wordt verzonden en dat de NIC deze keer kan ophalen uit hetzelfde veld van een binnenkomend pakket.
ClockPrecision-
Hiermee geeft u de klokprecisie in delen per miljoen. Om deze informatie als geldig te kunnen beschouwen, moet de vlag CLOCK_PRECISION worden ingesteld.
Opmerkingen
Een minipoortstuurprogramma kan ondersteuning bieden voor bepaalde timingparameters, zelfs als er geen lokale of netwerkklok is. Met name een minipoortstuurprogramma kan de systeemklok gebruiken voor het ontvangen van tijdindicaties, getimede verzendingen en zelfs tijdstempels. Een klok op basis van een NIC is beter omdat het waarschijnlijk een hogere precisie biedt en toegankelijk is met lagere latenties dan de systeemklok. In alle gevallen moet het minipoortstuurprogramma de precisie opgeven van de klok die wordt gebruikt. Hiermee kunnen protocollen bepalen hoe u de timingondersteuning van het minipoortstuurprogramma het beste kunt gebruiken.
Als het minipoortstuurprogramma de aanwezigheid van een leesbare klok rapporteert, moet het worden voorbereid om onmiddellijk te reageren op een OID_GEN_GET_NETCARD_TIME query. Het antwoord van het minipoortstuurprogramma op deze aanroep is tijdkritiek en moet daarom synchroon zijn.
Eisen
Versie: Windows Vista en hoger Header: Ntddndis.h (inclusief Ndis.h)