OID_GEN_TRANSPORT_HEADER_OFFSET
Como um conjunto, o OID_GEN_TRANSPORT_HEADER_OFFSET OID indica o tamanho dos cabeçalhos adicionais para pacotes que um determinado transporte envia e recebe.
Informações sobre a versão do
Windows Vista e versões posteriores do Windows
Suportado.
drivers de miniporta NDIS 6.0 e posteriores
Opcional.
drivers de miniporta NDIS 5.1
Opcional.
drivers de miniporta NDIS 5.1
Opcional.
Comentários
Um transporte informa os drivers de miniporta e outros drivers em camadas desse tamanho de cabeçalho; Esses drivers podem usar essas informações ao processar pacotes. Por exemplo, um driver pode usar o tamanho do cabeçalho da subcamada obtido do transporte para localizar o início das informações da camada mais alta nos pacotes, como o início do cabeçalho IP; o driver poderia então analisar e ajustar os campos do cabeçalho do protocolo IP, conforme apropriado. Os transportes usam uma estrutura TRANSPORT_HEADER_OFFSET, definida da seguinte forma, para indicar esse tamanho de cabeçalho.
typedef struct _TRANSPORT_HEADER_OFFSET {
USHORT ProtocolType;
USHORT HeaderOffset;
} TRANSPORT_HEADER_OFFSET, *PTRANSPORT_HEADER_OFFSET;
Os membros desta estrutura contêm as seguintes informações:
ProtocolType
Especifica o tipo de protocolo que envia esse OID e que, subsequentemente, envia e recebe pacotes usando o tamanho de cabeçalho de subcamada especificado. O protocolo é um dos seguintes valores:
NDIS_PROTOCOL_ID_DEFAULT
Protocolo padrão
NDIS_PROTOCOL_ID_TCP_IP
Protocolo TCP/IP
NDIS_PROTOCOL_ID_IPX
Protocolo IPX NetWare
NDIS_PROTOCOL_ID_NBF
Protocolo NetBIOS
HeaderOffset
Especifica o tamanho, em bytes, do cabeçalho da subcamada que precede o cabeçalho do protocolo para pacotes que o protocolo envia ou recebe subsequentemente do driver de miniporta ou outro driver em camadas. Por exemplo, sizeof(cabeçalho Ethernet) + sizeof(cabeçalho SNAP).
Normalmente, os transportes calculam o tamanho do cabeçalho dos pacotes a partir de informações recuperadas de drivers de miniporta. Para solicitar o tamanho total máximo do pacote em bytes suportado por uma NIC, incluindo o cabeçalho, os transportes usam o OID_GEN_MAXIMUM_TOTAL_SIZE OID. Para solicitar o tamanho máximo de pacote em bytes suportado por uma NIC, não incluindo um cabeçalho, os transportes usam o OID_GEN_MAXIMUM_FRAME_SIZE OID. Para calcular o tamanho máximo do cabeçalho, os transportes subtraem o tamanho máximo do quadro do tamanho total máximo.
Se um transporte transmite pacotes que contêm informações de cabeçalho de subcamada, o transporte deve saber o tamanho do cabeçalho de subcamada desses pacotes e deve informar os drivers de miniporta subjacentes e outros drivers em camadas sobre o tamanho para que os drivers possam processar os pacotes. Enviar e receber informações específicas do cabeçalho da subcamada dentro de um pacote pode ser uma opção que pode ser definida no registro para um protocolo específico. Os transportes poderiam então obter informações sobre cabeçalhos de subcamada do registro e passar o tamanho do cabeçalho para drivers de miniporta ou outros drivers em camadas.
Por exemplo, se um transporte lida com pacotes do meio Fiber Distributed Data Interface, o transporte deve enviar uma solicitação definida para drivers de miniporta subjacentes e outros drivers em camadas usando OID_GEN_TRANSPORT_HEADER_OFFSET para informar esses drivers sobre o tamanho do cabeçalho da subcamada dos pacotes. (FDDI não é suportado no Windows Vista e versões posteriores do Windows.) Esses pacotes do FDDI podem conter informações do Logical Link Control (LLC). Essas informações LLC, por sua vez, podem incluir um cabeçalho LLC e outros cabeçalhos, como Sub-Network Access Protocol (SNAP). O transporte determina a partir do registro para usar LLC/SNAP e passa o tamanho do cabeçalho dos segmentos LLC/SNAP de pacotes para drivers de miniporta.
Este OID é opcional para drivers de miniporta e outros drivers em camadas. Como esse OID é opcional, os drivers não são obrigados a responder às solicitações que os transportes fazem usando esse OID.
Requerimentos
Cabeçalho |
Ntddndis.h (inclui Ndis.h) |