LoginToTarget
O método LoginToTarget instrui um driver de miniporto que gerencia um iniciador HBA a fazer logon em um portal de destino.
Os drivers de miniport que implementam a classe WMI MSiSCSI_Operations devem dar suporte a esse método.
O driver de miniporto deve expor informações sobre a sessão que ele cria por meio da classe WMI MSiSCSI_InitiatorSessionInfo.
A tabela a seguir descreve os tipos de sessões de logon que os iniciadores podem estabelecer.
Sessão de logon | Descrição |
---|---|
Descoberta |
Uma sessão de descoberta é usada exclusivamente para operações SendTargets . |
Informativo |
Uma sessão informativa permite que o iniciador consulte o destino para obter informações, mas o iniciador não relata LUNs (números de unidade lógica) no destino para o gerenciador de Plug and Play (PnP) ; o driver da porta de armazenamento não enumera os LUNs nem os expõe como dispositivos locais. Os aplicativos de gerenciamento podem consultar esses LUNs remotos estabelecendo uma sessão informativa e chamando rotinas de biblioteca de modo de usuário iSCSI, como SendScsiInquiry, SendScsiReportLuns e SendScsiReadCapacity. |
Dados |
Uma sessão de dados é uma sessão completa. O driver de miniporta que inicia a sessão deve relatar os LUNs no destino para o driver de porta, para que o driver de porta os enumere e carregue os drivers apropriados. O software pode acessar esses dispositivos remotos como se fossem dispositivos locais. |
Inicialização |
Uma sessão de inicialização é uma sessão completa na qual o LUN iSCSI é usado como um dispositivo de inicialização. |
O identificador (ID) que o método LoginToTarget atribui à sessão deve permanecer constante durante o tempo de vida de uma sessão. Mesmo que logoffs assíncronos ou eventos de rede cortem a conexão com o destino e forcem o driver de miniporto a se reconectar, o driver de miniporto deve continuar a usar a mesma ID de sessão.
Os drivers de miniport devem usar as seguintes diretrizes ao restabelecer dados e sessões informativas:
Tentativas periódicas de reconexão
O driver de miniporta deve fazer uma tentativa periódica de reconexão (intervalos de 5 segundos são recomendados) até que um logon seja bem-sucedido ou o driver de miniporto receba uma solicitação de logoff.
Latência de remoção de dispositivo
O driver de miniporto não deve remover imediatamente as unidades lógicas do destino da pilha de dispositivos do sistema operacional local. Em vez disso, o driver de miniporto deve usar dados armazenados em cache localmente para processar solicitações INQUIRY e REPORT LUNS e solicitações de fila que o driver de miniporto deve enviar para o destino remoto para processamento.
Se o driver de miniporto não conseguir restabelecer uma sessão com o destino após aproximadamente 60 segundos, ele deverá remover as unidades lógicas do destino da pilha de dispositivos local. Ao introduzir a latência de 60 segundos na remoção de dispositivos da pilha de dispositivos, o driver de miniporto pode evitar interromper desnecessariamente o trabalho de aplicativos locais que acessam dados no destino remoto. No entanto, uma latência de mais de 60 segundos pode exigir que o driver de miniporto enfileira um grande número de solicitações, e essas solicitações poderiam potencialmente consumir uma quantidade inaceitável de recursos do sistema. O tempo de latência exato deve ser configurável.
O método WMI LoginToTarget pertence à classe WMI MSiSCSI_Operations.
Para obter uma explicação do algoritmo que a biblioteca de modo de usuário iSCSI usa para estabelecer um log, consulte LoginIScsiTarget.