Opérations du service de paquets MB
Cette rubrique décrit les opérations de perte et de récupération du service de données de paquet, des remises de service de données de paquet et des appels vocaux pendant les connexions au service de données de paquet.
Perte et récupération du service de données de paquets
Le diagramme suivant montre le processus que les pilotes de miniport doivent suivre lorsqu’ils perdent la puissance du signal et le service de paquets pendant différents intervalles. Les étiquettes en gras sont des identificateurs OID ou un contrôle de flux transactionnel. Les étiquettes dans le texte normal sont les indicateurs importants au sein de la structure OID.
Pour récupérer le service de données de paquets après sa perte, procédez comme suit :
Le pilote miniport envoie NDIS_WWAN_LINK_STATE au service MB.
Le pilote miniport envoie NDIS_WWAN_SIGNAL_STATE au service Mb.
Le pilote miniport envoie NDIS_WWAN_SIGNAL_STATE au service Mb.
Le pilote miniport envoie NDIS_WWAN_SIGNAL_STATE au service Mb.
Le pilote miniport envoie NDIS_WWAN_REGISTER_STATE au service MB.
Le pilote miniport envoie NDIS_STATUS_WWAN_PACKET_SERVICE au service MB.
Le pilote miniport envoie NDIS_STATUS_LINK_STATE au service MB.
Le pilote miniport envoie NDIS_WWAN_SIGNAL_STATE au service Mb.
Remises du service de données de paquets
Le diagramme suivant montre les étapes que les pilotes miniport doivent suivre lorsque le service de paquets se déplace entre différentes technologies gsm, telles que GPRS, EDGE, UMTS, HSDPA ou TD-SCDMA, ou se déplace entre différentes technologies CDMA, telles que 1xRTT, EV-DO ou EV-DO RevA. Les étiquettes en gras sont des identificateurs OID ou un contrôle de flux transactionnel. Les étiquettes dans le texte normal sont les indicateurs importants au sein de la structure OID.
N’oubliez pas qu’à moins que l’adresse IP ne change dans le processus de remise, le service MB gère l’événement de transfert de manière transparente sans interrompre la connexion existante. Toutefois, les pilotes miniports doivent toujours informer le service MB des événements de déconnexion multimédia si, et uniquement si, l’adresse IP change.
Les pilotes miniport et l’appareil Mo qu’ils gèrent doivent être en mesure de gérer automatiquement le transfert de couche 2 entre différentes interfaces d’air, avec un impact minimal sur le service MO et d’autres applications de superposition. Le seul impact possible est la modification de l’adresse IP qui peut résulter du transfert de technologie. Dans ce cas, les pilotes miniport doivent rétablir la connexion Mo avant de signaler la modification du service de paquets au service Mo. Les pilotes miniport qui n’implémentent pas la fonctionnalité DHCP doivent utiliser l’assistance IP et les fonctions associées. Les pilotes miniport qui implémentent la fonctionnalité DHCP ne sont pas nécessaires pour utiliser les fonctions d’assistance IP.
Pour remettre le service de données de paquets, procédez comme suit :
Le pilote miniport envoie NDIS_STATUS_WWAN_PACKET_SERVICE au service MB.
Le pilote miniport envoie NDIS_WWAN_LINK_STATE au service MB.
Le pilote miniport envoie NDIS_STATUS_WWAN_PACKET_SERVICE au service MB.
Le pilote miniport appelle la fonction d’assistance DeleteUnicastIpAddressEntry avec l’ancienne adresse IP
Le pilote miniport appelle la fonction d’assistance CreateUnicastIpAddressEntry avec la nouvelle adresse IP
Le pilote miniport envoie NDIS_STATUS_LINK_STATE au service MB.
Le pilote miniport envoie NDIS_STATUS_LINK_STATE au service MB.
Le pilote miniport envoie NDIS_STATUS_WWAN_PACKET_SERVICE au service MB.
Appels vocaux pendant les connexions de service de données de paquet
Le diagramme suivant représente le processus que les pilotes miniport doivent suivre lorsqu’un appel vocal est placé pendant que le service de données de paquets est actif. Le diagramme utilise 1xRTT comme exemple, mais la procédure s’applique également à d’autres interfaces d’air. Le processus décrit dans le graphique suivant s’applique uniquement aux pilotes miniport qui retournent WwanVoiceClassSeparateVoiceData dans le membre WwanVoiceClass en réponse à une demande de requête OID_WWAN_DEVICE_CAPS. Les étiquettes en gras représentent les identificateurs OID ou le contrôle de flux transactionnel. Les étiquettes dans le texte normal représentent les indicateurs importants au sein de la structure OID.
La procédure suppose que l’acceptation d’un appel vocal entrant préempte toute connexion de paquet préexistante. Pour les pilotes miniport qui retournent WwanVoiceClassSimultaneousVoiceData dans le membre WwanVoiceClass en réponse à une demande de requête OID_WWAN_DEVICE_CAPS, la connexion de paquet actuelle ne doit pas être affectée.
N’oubliez pas que, par conception, le service MB ne prend pas en charge la voix de circuit et n’interdit pas le service. Le processus décrit dans le graphique ci-dessus s’applique uniquement lorsque l’appareil peut gérer à la fois les données et la voix du circuit, mais un seul à la fois. Le processus suppose que l’appel vocal est prioritaire sur toute connexion de données préexistante potentielle. Dans ce cas, les pilotes miniport doivent suspendre la connexion de données pendant la durée de l’appel vocal. Par la suite, les pilotes miniport doivent reprendre le service de données en rétablissant automatiquement la connexion Mo.
Pour gérer les appels vocaux pendant les connexions au service de données de paquets, procédez comme suit :
Pour une connexion au service de données de paquets réussie, les pilotes miniport doivent envoyer une notification NDIS_WWAN_PACKET_SERVICE_STATE au service Mo pour indiquer le DataClass actuel suivi d’une notification NDIS_STATUS_LINK_STATE au service Mo pour indiquer l’état de connexion au média en tant que MediaConnectStateConnected.
Lorsqu’un appel vocal est placé ou répondu, les pilotes miniport doivent envoyer une notification NDIS_STATUS_LINK_STATE au service Mo pour indiquer l’état de connexion multimédia comme MediaConnectStateDisconnected.
Les pilotes miniport doivent ensuite envoyer une notification NDIS_STATUS_WWAN_CONTEXT_STATE au service Mo qui indique l’état VoiceCall de l’appareil en tant que WwanVoiceCallStateInProgress.
Lors du blocage, les pilotes miniport doivent envoyer une notification NDIS_STATUS_WWAN_CONTEXT_STATE au service Mo qui indique l’état VoiceCall de l’appareil en tant que WwanVoiceCallStateHangup.
L’appareil reprend la connexion de paquets une fois l’appel vocal terminé. Les pilotes miniport doivent envoyer une notification NDIS_STATUS_LINK_STATE au service Mo pour indiquer l’état de connexion au média comme MediaConnectStateConnected.
Les pilotes miniport doivent envoyer une notification NDIS_WWAN_PACKET_SERVICE_STATE au service Mo qui indique le DataClass actuel.
Voir aussi
Pour plus d’informations sur les opérations de service de paquets, consultez OID_WWAN_PACKET_SERVICE.