MSiSCSI_HBASessionConfig structure (iscsimgt.h)
La structure MSiSCSI_HBASessionConfig contient les caractéristiques d’ouverture de session par défaut qu’un instance particulier d’un pilote miniport de stockage utilise pour créer une session d’ouverture de session avec un appareil cible.
Syntaxe
typedef struct _MSiSCSI_HBASessionConfig {
BOOLEAN InitialR2T;
BOOLEAN ImmediateData;
ULONG MaxRecvDataSegmentLength;
ULONG MaxBurstLength;
ULONG FirstBurstLength;
ULONG MaxOutstandingR2T;
} MSiSCSI_HBASessionConfig, *PMSiSCSI_HBASessionConfig;
Membres
InitialR2T
Valeur booléenne qui indique si l’initiateur HBA demande à la cible l’autorisation de transmettre des données SCSI non sollicitées chaque fois qu’il établit une nouvelle session. Si ce membre a la valeur TRUE, l’initiateur HBA demande à la cible l’autorisation de transmettre des données SCSI non sollicitées chaque fois qu’il établit une nouvelle session. Par défaut, l’initiateur ne transmet pas de données SCSI tant que la cible n’a pas sollicité les données en envoyant une requête prête à transmettre (R2T), avec un décalage de mémoire tampon de 0 et une longueur de transfert souhaitée égale à la taille minimale de la première rafale et au transfert de données attendu.
Si InitialR2T a la valeur TRUE, l’initiateur envoie une unité de données de protocole (PDU) à la cible avec la chaîne « No » dans la clé InitialR2T de la PDU. La cible doit répondre en envoyant une PDU à l’initiateur avec la chaîne « Non » dans la clé InitialR2T de la PDU. L’initiateur et la cible doivent être d’accord avant que la transmission de données non sollicitée soit autorisée. Par conséquent, même si vous définissez InitialR2T sur TRUE, cela ne garantit pas que l’initiateur sera en mesure d’envoyer des données SCSI non sollicitées à la cible.
Si ce membre a la valeur FALSE, toutes les sessions créées par l’initiateur suivent le comportement par défaut. Pour plus d’informations sur la clé InitialR2T, consultez la spécification du groupe de travail stockage IP .
ImmediateData
Valeur booléenne qui indique si l’initiateur demande à la cible l’autorisation de transmettre des données immédiates chaque fois qu’il établit une nouvelle session. Si ce membre a la valeur TRUE, l’initiateur demande à la cible l’autorisation de transmettre des données immédiates chaque fois qu’il établit une nouvelle session. (Les données immédiates sont des données que l’initiateur récupère sur une commande iSCSI PDU.)
La stratégie de la session en ce qui concerne les données immédiates est déterminée par une négociation entre l’initiateur et la cible. Pour plus d’informations sur la façon dont les valeurs dans ImmediateData et InitialR2T affectent la négociation, consultez la spécification du groupe de travail stockage IP .
MaxRecvDataSegmentLength
Longueur maximale, en octets, d’un segment de données PDU.
MaxBurstLength
Longueur maximale, en octets, de la charge utile de données SCSI dans une séquence de PPU d’entrée (data-in) ou de PKU de sortie (données sortantes) sollicitées.
FirstBurstLength
Quantité maximale, en octets, de données non sollicitées qu’un initiateur peut envoyer à une cible pendant l’exécution d’une seule commande SCSI. Cette quantité inclut les données immédiates, le cas échéant, et la séquence de PPU Data-Out non sollicitées, le cas échéant, qui suivent la commande.
MaxOutstandingR2T
Nombre maximal de demandes R2T en attente pour chaque tâche, à l’exclusion du premier R2T qui lance la tâche. Un R2T est considéré comme en attente jusqu’à ce que la dernière PDU de données (avec le bit F défini sur 1) soit transférée, ou jusqu’à ce qu’un délai d’attente de réception de séquence se produise pour cette séquence de données PDU.
Remarques
Il est facultatif que vous implémentiez cette classe.
Configuration requise
Condition requise | Valeur |
---|---|
En-tête | iscsimgt.h (inclure Iscsimgt.h) |