Hva er en grensesnittdriver?
En grensesnittdriver er et lite dataprogram, eller et sett med programmer, som fungerer som en forbindelse mellom dataprogramvare og maskinvaren til et nettverksgrensesnittkort (NIC). NIC -produsenter og programmerere bruker et spesifikt applikasjonsprogrammeringsgrensesnitt (API) kjent som Network Driver Interface Specification (NDIS). Den angir alle reglene som er nødvendige for et dataprogram, for eksempel et operativsystem, for å samhandle med en NIC. Det er faktisk flere typer grensesnittdrivere beskrevet under NDI-er, men i hovedsak er NDISs primære jobb å få et par av Open Systems Interconnection (OSI) -modellens lag for å samarbeide med hverandre.
OSI-modellen er sammensatt av syv lag, hvorav noen har flere underlag. Det første laget er det fysiske laget, som omhandler de fysiske spesifikasjonene for en NIC som en universell seriell buss (USB) dongle, et Ethernet -kort, et trådløst adapterkort og så videre. De andre og tredje lagene i OSI -modellen er der alleNDIS -magi skjer. Det andre laget er datalinklaget og består av to underlag, den øvre referert til som den logiske koblingskontrollen (LLC) og den nedre kalt Media Access Control (MAC). En enhetsdriver håndterer Mac-underlaget, mens grensesnittdriveren håndterer LLC-underlaget, og gir et grensesnitt mellom det og det tredje laget av OSI-modellen, nettverkslaget.
Arbeider som mellomledd, en NDI -er pakker i hovedsak all den forvirrende intrikatet til en NICs maskinvare og gir et sett med funksjoner for sin interaksjon med nettverksprotokollene som er nødvendige for kommunikasjon. En programmerer må ganske enkelt følge reglene som er angitt i NDI -ene for å opprette de faktiske grensesnittdriverne. På det nedre maskinvarenivået er disse driverne kjent som Miniport -drivere, mens driverne på øverste nivå er skrevet ved hjelp av NDIS API for å håndtere kjernetettverksprotokoller som Internett -protokollen(IP), Internet Protocol Security (IPSec), Internet Control Message Protocol (ICMP) og Internetwork Packet Exchange (IPX), blant andre.
Når nettverkskommunikasjon skjer via en NIC, blir databitene først mottatt av den fysiske enheten, og deretter, gjennom OSI -modellens arkitektur, blir dataene flyttet fra maskinvaren opp de forskjellige lagene i OSI -modellen til de blir presentert i et format lettere forståelig av brukeren. Dermed tilbyr hvert lag av modellen tjenester for naboene. Dataene etterlater det første laget, det fysiske laget, og treffer Mac-en til det nedre underlaget i det andre laget, der enhetsdriveren fører den videre til LLC. LLCs protokolldrivere flytter den deretter opp til nettverkslaget.
En annen type grensesnittdriver er den mellomliggende driveren, som fungerer som noe av et hus, som inneholder grensesnitt for både miniportdrivere og nettverksprotokolldrivere. Disse mellomliggende driverne kan deretter lenket sammen og gi tDen evnen for grensesnittdriveren til å kontrollere trafikken som ble mottatt av NIC. Mellomdrivere er nyttige for forskjellige behov, for eksempel datafiltrering, belastningsbalansering, overvåking av nettverkstrafikk og innsamling av statistisk informasjon. De fungerer også godt som en oversetter mellom eldre transportsjåfører og en miniportdriver som snakker med et medieformat den eldre sjåføren ikke kan forstå.
NDIS ble opprinnelig utviklet av Microsoft®, og jobbet i forbindelse med 3com®, så mange maskinvareprodusenter skriver driverne sine for å støtte Microsoft® operativsystemer først. Som et resultat er NDIS begrenset til datamaskinvarearkitekturer basert på Intel® 80386-familien på enten 32-biters eller 64-biters prosessorer. Den gratis programvarebevegelsen har også utviklet et program, kalt Ndiswrapper, som er i stand til å laste grensesnittdrivere som opprinnelig ble utviklet for Microsoft® Windows® for bruk med gratis, UNIX®-lignende operativsystemer som Linux®. Brukere avBerkley Software Distributions (BSD) Gratis derivater, for eksempel FreeBSD® og NetBSD®, fant også muligheten til å bruke Windows® Interface -drivere gjennom bruk av programvare utviklet av et prosjekt kjent som Project Evil. X86-maskinvarebegrensningene til NDIS førte til et annet prosjekt, utviklet av Apple og Novell®, kalt Open Data-Link-grensesnittet (ODI), som ga mye av de samme reglene og funksjonaliteten som en NDI-er, men med fokus på Apple® Macintosh &; og Novell Netware® Systems.