Share via


Configurazione di un file INF per un driver di filtro di modifica

I problemi di installazione del driver di filtro NDIS seguenti sono associati alla modifica dei driver di filtro. Per creare il file INF del driver di filtro di modifica personalizzato, è anche possibile adattare il driver di filtro NDIS 6.0 di esempio.

  • Impostare la voce del file INF classe su NetService nel file INF. Nell'esempio seguente viene illustrata una voce classe di esempio per il file INF.

    Class = NetService
    
  • La sezione DDInstall in un file INF del driver di filtro deve avere una voce Caratteristiche . Nell'esempio seguente viene illustrato come definire la voce Caratteristiche nel file INF del filtro.

    Characteristics=0x40000
    

    Il valore 0x40000 indica che è impostato NCF_LW_FILTER (0x40000). I driver di filtro non devono impostare il flag NCF_FILTER (0x400). I valori dei flag xxx NCF_ sono definiti in Netcfgx.h. Per altre informazioni su NCF_ flag Xxx , vedere Sezione DDInstall in un file INF di rete.

  • Impostare la voce di file NETCfgInstanceId INF nel file INF, come illustrato nell'esempio seguente.

    NetCfgInstanceId="{5cbf81bd-5055-47cd-9055-a76b2b4e3697}"
    

    È possibile usare lo strumento Uuidgen.exe per creare il GUID per la voce NetCfgInstanceId .

  • La sezione DDInstall del file INF per un driver di filtro deve includere una direttiva Addreg per una chiave Ndi . Il file INF deve specificare la voce del servizio nella chiave Ndi . La voce ServiceBinary nella sezione installazione del servizio del file INF specifica il percorso del binario per il driver di filtro. Per altre informazioni, vedere Aggiunta di valori correlati al servizio alla sezione Chiave Ndi e DDInstall.Services in un file INF di rete.

  • La sezione DDInstall in un file INF del driver di filtro deve avere voci FilterType e FilterRunType . Per specificare un filtro di modifica, definire la voce FilterType nel file INF, come illustrato nell'esempio seguente.

    HKR, Ndi,FilterType,0x00010001 ,0x00000002
    

    Il valore FilterType 0x00000002 indica che il filtro è un filtro di modifica.

  • Definire la voce FilterRunType nel file INF, come illustrato nell'esempio seguente.

    HKR, Ndi,FilterRunType,0x00010001 ,0x00000001
    

    Il valore 0x00000001 nell'esempio precedente indica che il modulo di filtro è obbligatorio. Per installare un modulo di filtro facoltativo, impostare la voce FilterRunType su 0x00000002. Per altre informazioni, vedere Driver di filtro obbligatori.

  • Nell'esempio seguente viene illustrato come un file INF di modifica del driver di filtro specifica il nome del servizio.

    HKR, Ndi,Service,,"NdisLwf"
    

    In questo esempio NdisLwf è il nome del servizio del driver perché viene segnalato a NDIS. Si noti che il nome del servizio del driver di filtro può essere diverso dal nome del file binario per il driver, ma in genere sono uguali.

  • Nell'esempio seguente viene illustrato come il file INF del filtro fa riferimento al nome del servizio del driver di filtro quando aggiunge tale servizio.

    [Install.Services]
    AddService=NdisLwf,,NdisLwf_Service_Inst;, common.EventLog 
    
    [NdisLwf_Service_Inst]
    DisplayName     = %NdisLwf_Desc%
    ServiceType     = 1 ;SERVICE_KERNEL_DRIVER
    StartType       = 1 ;SERVICE_SYSTEM_START
    ErrorControl    = 1 ;SERVICE_ERROR_NORMAL
    ServiceBinary   = %13%\ndislwf.sys
    LoadOrderGroup  = NDIS
    Description     = %NdisLwf_Desc%
    AddReg          = Common.Params.reg
    
  • Un file INF filtro deve specificare almeno il nome del servizio primario del filtro per l'attributo CoServices , come illustrato nell'esempio seguente.

    HKR, Ndi,CoServices,0x00010000,"NdisLwf"
    

    Per altre informazioni sull'attributo CoServices , vedere Aggiunta di valori correlati al servizio alla chiave Ndi.

  • Il valore FilterClass nel file INF per un driver di filtro determina l'ordine in uno stack di filtri. I driver di filtro devono definire la chiave FilterClass . La classe del driver può essere uno dei valori della tabella seguente.

    Valore Descrizione

    scheduler

    Servizio filtro pianificazione pacchetti. Questa classe di driver di filtro è il driver di livello più alto che può esistere sopra i filtri della classe di crittografia in uno stack di driver. Un utilità di pianificazione dei pacchetti rileva la classificazione di priorità 802.1p assegnata ai pacchetti in base alla qualità del servizio (QoS) e l'utilità di pianificazione invia i livelli di pacchetti ai driver sottostanti in base alla priorità.

    Crittografia

    I driver di filtro della classe di crittografia esistono tra filtri della classe di pianificazione e compressione.

    compressione

    I driver di filtro della classe di compressione esistono tra filtri di classe vpn e crittografia.

    vpn

    I driver di filtro della classe VPN esistono tra i driver di filtro di compressione e bilanciamento del carico.

    loadbalance

    Servizio filtro di bilanciamento del carico. Questa classe di driver di filtro esiste tra la pianificazione dei pacchetti e i driver di failover. Un servizio di filtro di bilanciamento del carico bilancia il carico di lavoro dei trasferimenti di pacchetti distribuendo il carico di lavoro sul set di schede miniport sottostanti.

    failover

    Servizio di filtro di failover. Questa classe di driver di filtro esiste tra i driver di bilanciamento del carico e diagnostica.

    diagnostici

    I driver di filtro di diagnostica esistono sotto i driver di failover nello stack.

    custom

    I driver di filtro nella classe personalizzata esistono sotto i driver di diagnostica.

    provider_address

    I driver di filtro degli indirizzi del provider sono disponibili sotto i pacchetti di virtualizzazione rete Hyper-V ms_wnv e operano sui pacchetti di indirizzi provider (PA).

Nota Se più driver di filtro hanno lo stesso FilterClass, verranno aggiunti tutti allo stack di filtri a livelli dei driver di filtro. Il sistema assegna un ordine di livello a ogni driver di filtro di modifica con lo stesso FilterClass. In alcuni casi, l'amministratore di sistema può riorganizzare l'ordine relativo dei driver di filtro con lo stesso FilterClass.

Nell'esempio seguente viene illustrato un oggetto FilterClass di esempio.

HKR, Ndi,FilterClass,, compression
  • Solo i driver di filtro dell'estensione del commutatore Hyper-V sono validi nel commutatore estendibile Hyper-V. I driver di filtro del commutatore estendibili Hyper-V devono definire la chiave FilterClass con uno dei valori della tabella seguente.

    Valore Descrizione

    ms_switch_capture

    A partire da NDIS 6.30, i driver di acquisizione monitorano il traffico dei pacchetti nello stack di driver di commutatore estendibile Hyper-V. Questa classe di driver di filtro esiste sotto i driver personalizzati nello stack.

    Per altre informazioni su questa classe di driver, vedere Acquisizione di estensioni.

    ms_switch_filter

    A partire da NDIS 6.30, i driver filtrano il traffico dei pacchetti e applicano i criteri di porta o switch per il recapito dei pacchetti tramite lo stack di driver di commutatore estendibile. Questa classe di driver di filtro esiste sotto ms_switch_capture driver nello stack.

    Per altre informazioni su questa classe di driver, vedere Filtro estensioni.

    ms_switch_forward

    A partire da NDIS 6.30, il filtro dei driver di inoltro esegue le stesse funzioni di un driver di filtro. L'inoltro dei driver inoltra anche pacchetti a e da porte di commutatori estendibili. Questa classe di driver di filtro esiste sotto ms_switch_filter driver nello stack.

    Per altre informazioni su questa classe di driver, vedere Estensioni di inoltro.

  • È necessario definire le voci seguenti nel file INF del driver di filtro modifica per controllare le associazioni dei driver.

    HKR, Ndi\Interfaces,UpperRange,,"noupper"
    HKR, Ndi\Interfaces,LowerRange,,"nolower"
    HKR, Ndi\Interfaces, FilterMediaTypes,,"ethernet"
    

    Per altre informazioni sul controllo delle associazioni dei driver, vedere Specifica delle relazioni di associazione del driver di filtro.

  • Un file INF di filtro di modifica può specificare le definizioni comuni dei parametri per il driver e i parametri associati a una scheda specifica. Nell'esempio seguente vengono illustrate alcune definizioni comuni dei parametri.

Attenzione

L'uso di HKR AddReg per inserire chiavi direttamente nello stato del servizio è una violazione di conformità. Queste chiavi devono essere aggiunte sotto la chiave Parametri del servizio per essere conformi.

[Common.Params.reg]

HKR, FilterDriverParams\DriverParam,  ParamDesc, , "Driverparam for lwf"
HKR, FilterDriverParams\DriverParam,  default, , "5"
HKR, FilterDriverParams\DriverParam,  type,  , "int"

HKR, FilterAdapterParams\AdapterParam,  ParamDesc, , "Adapterparam for lwf"
HKR, FilterAdapterParams\AdapterParam,  default, , "10"
HKR, FilterAdapterParams\AdapterParam,  type,  , "int"