Test fonctionnel du cœur winsock
Ce test automatisé itère certaines des fonctionnalités principales de Winsock par rapport à une interface de bouclage et vérifie si l’interface de l’API Winsock est correctement gérée.
Tous les tests couvrent les sockets IPv4 et IPv6, qui sont tous liés à l’interface de bouclage. Les variantes sont les suivantes :
Catalogue de sockets. Énumère le catalogue Winsock, crée un socket pour chaque structure protocolinfo retournée (chaque tuple de protocole) et le lie à l’interface de bouclage.
E/S QUI SE CHEVAUCHENT. Crée des sockets de flux TCP IPv4 et IPv6, établit une connexion par bouclage et envoie des données entre les sockets en bloquant les appels d’envoi et de réception qui se chevauchent. Toutes les données sont vérifiées telles qu’elles sont reçues.
Variante TransmitFile. Vérifie que TransmitFile envoie correctement les données et implémente l’indicateur TF_DISCONNECT pour la réutilisation des sockets IPv4 et IPv6. Crée un fichier temporaire de 260 octets et transmet via une connexion TCP via TransmitFile. Le socket d’écoute utilise AcceptEx pour vérifier la connexion et la réutilisation du socket.
ConditionalAccept. Vérifie la sémantique de l’acceptation conditionnelle sur les sockets de flux TCP IPv4 et IPv6. Teste cinq connexions : sans écouteur, retour d’CF_REJECT, retour de CF_ACCEPT, retour de CF_DEFER + CF_REJECT et retour CF_DEFER + CF_ACCEPT.
Flux. Bloque l’envoi/la réception sur les sockets de flux TCP IPv4 et IPv6. Reporte l’acceptation des appels avec un backlog d’écoute zéro jusqu’à ce que la connexion soit terminée.
Datagrammes. Vérifie l’envoi et la réception de datagrammes sur des sockets UDP IPv4 et IPv6. Teste à la fois l’envoi de datagrammes via la connexion/l’envoi/la réception et l’envoi/réception sans connexion à partir de.
Sélectionnez Vérifie la notification READFDS sur les sockets TCP IPv4 et IPv6 pour les indications de l’établissement de la connexion, de la réception des données et de la fermeture du socket.
Lier : Vérifie la sémantique de liaison pour les sockets TCP IPv4 et IPv6 : liaison de base, liaisons SO_REUSEADDR et liaisons SO_EXCLUSIVEADDRUSE .
ReadFile/WriteFile. Vérifie si les fonctions ReadFile() et WriteFile() qui se chevauchent fonctionnent correctement sur les sockets TCP IPv4 et IPv6.
Arrêter. Vérifie la sémantique shutdown() sur les sockets TCP IPv4 et IPv6 en établissant une connexion, en publiant une réception bloquante et en vérifiant si l’arrêt d’appel termine la réception avec zéro octet reçu.
Adressage. Vérifie la conversion des adresses IPv4 et IPv6 des chaînes h, décimales et octales en valeurs de structure d’adresses de socket correspondantes (WSAAddressToString et WSAStringToAddress).
Multidiffusion. Pour IPv4 et IPv6, vérifie la jonction à des groupes de multidiffusion via IP_ADD_MEMBERSHIP et IPV6_ADD_MEMBERSHIP, en envoyant et en recevant des données au groupe et en quittant le groupe.
JoinLeaf. Pour IPv4 et IPv6, vérifie la jonction à des groupes de multidiffusion via WSAJoinLeaf, en envoyant et en recevant des données au groupe et en quittant le groupe.
AsyncSelect. Pour les sockets TCP IPv4 et IPv6, vérifie que les messages Windows FD_CONNECT, FD_SEND et FD_READ sont traités via WSAAsyncSelect. Vérifie également si FD_CONNECT est traité lorsqu’un socket multidiffusion termine WSAJoinLeaf.
IOCP. Pour les sockets TCP IPv4 et IPv6, effectue des appels de réception qui se chevauchent dans lesquels le socket est associé à un port d’achèvement d’E/S. Vérifie également si les achèvements qui se chevauchent sont traités et si toutes les données sont reçues.
Socket RAW. Pour IPv4 et IPv6, crée des sockets bruts, en envoyant et en recevant des messages ICMP (Internet Control Message Protocol) via des E/S superposées.
Pnp. Vérifie si la notification de changement d’adresse qui se chevauche est signalée lorsque des adresses IP autres que le bouclage sont ajoutées et supprimées du premier non-bouclage.
Pour plus d’informations sur l’API Winsock, consultez Sockets Windows 2.
Détails du test
Spécifications |
|
Plateformes |
|
Versions prises en charge |
|
Durée d’exécution attendue (en minutes) | 30 |
Catégorie | Développement |
Délai d’expiration (en minutes) | 1800 |
Nécessite un redémarrage | false |
Nécessite une configuration spéciale | false |
Type | automatique |
Documentation supplémentaire
Les tests de cette zone de fonctionnalités peuvent contenir une documentation supplémentaire, notamment des informations sur les prérequis, l’installation et la résolution des problèmes, que vous trouverez dans les rubriques suivantes :
Exécution du test
Pour plus d’informations sur la configuration requise, consultez Conditions préalables au test du système de fichiers.
En outre, ce test nécessite les logiciels suivants :
Un pilote de filtre à tester avec toute suite d’applications prenant en charge
Au moins une interface réseau connectée qui a une adresse IPv4 et IPv6 valide
Dépannage
Pour la résolution des problèmes génériques des échecs de test HLK, consultez Résolution des échecs de test Windows HLK.
Pour plus d’informations sur la résolution des problèmes, consultez Résolution des problèmes de test du système de fichiers.
Tous les cas de test retournent réussite ou échec. Pour passer en revue les détails du test, consultez le journal des tests de Windows HLK Studio.
Notes
Le Pare-feu Windows peut ouvrir un message indiquant que le pare-feu bloque peut-être certaines fonctionnalités du test. Toutefois, le pare-feu n’affecte pas le test. Vous pouvez sans risque ignorer ce message.
Si cette procédure ne fournit pas de résultat de test réussi, envoyez le journal des tests avec des détails spécifiques à l’appareil ou spécifiques au système à l’alias de support du Kit de laboratoire matériel Windows (HLK).
Plus d’informations
Syntaxe de commande
Option de commande | Description |
---|---|
Winsockfunctional -protocol ip -t « Winsock API\Current Protocols (IPv4/IPv6)\BVT » -wtt -r -dontdisable -ipsec -notrace |
Vous devez fournir cet argument de base. |
-lsponly |
Vous devez ajouter cet argument lorsqu’un fournisseur de services LSP est installé. |
Notes
Pour obtenir de l’aide en ligne de commande pour ce binaire de test, tapez /h.
Liste de fichiers
File | Emplacement |
---|---|
WinsockFunctional.exe |
<[testbinroot]>\NTTest\NetTest\Winsock\common\ |
WinsockFunctional.wtl |
Journal de sortie détaillé contenant les résultats des tests |
Wsbvt.log |
Journal de sortie récapitulative des résultats des tests |
Bvterr.log |
Journal de sortie récapitulative des résultats des tests |
Fnshell.ini |
Fichier .ini temporaire généré et utilisé par le test |
Paramètres
Nom du paramètre | Description des paramètres |
---|---|
LLU_LocalAdmin | LLU pour l’exécution |
LLU_NetAccessOnly | LLU pour la copie |