Le cas du “Logon Notification” long (Bienvenue) ou Netprofm

 

Si lorsque vous faites une analyse Xperf, vous constatez un comportement semblable à l’image ci-dessous.

clip_image002

C’est-à-dire la phase « Profiles » dans « Winlogon » qui peut durer entre 30 et 60 secondes alors vous êtes peut etre dans le scénario décrit dans cet article.

Le symptôme est le suivant : Lorsque vous vous authentifiez, le message « Bienvenue » s’affiche un certain temps. Si vous attendez un peu avant de taper le mot de passe alors vous n’avez plus ce comportement.

Si dans votre environnement vous avez configuré les « profils itinérants » ou les «  home drive » ou encore la « redirection de dossier », lors de l’ouverture de session le poste vérifie que le réseau soit opérationnel et que le service « netprofm » soit démarré.

Le temps d’attente est par défaut à 30 secondes et peut être changé par la GPO « Set maximum wait time for the network if à user has a roaming user profile or remote home directory».

Si on zoom dans notre trace sur le temps du démarrage de « Profiles », on constate bien que « netprofm » démarre après et donc on tombe dans le « timeout » des 30 secondes

clip_image004

Par défaut « netprofm » est en démarrage manuel car il n’est pas nécessaire dans tous les scénarios. Mais lorsqu’un service est en « manuel » ou en « démarrage différé », ils doivent attendre la fin de démarrage de tous les services en « démarrage automatique »

Si l’on regarde les services on constate que la phase « AutoStart » nécessite 30 secondes.

clip_image005

Pour éviter ce problème vous pouvez :

- Résoudre le service en démarrage automatique qui nécessite du temps

- Mettre le service « netprofm » en automatique afin qu’il n’attende plus.

- Mettre le timeout de la GPO à 0 mais cela peut provoquer des effets de bords

- Installer le Hotfix suivant : https://support.microsoft.com/kb/2709630

Voici une trace Xperf après avoir mis le service en automatique

On constate bien que « netprofm » démarre à 42 secondes et que comme « profiles » démarre 16 secondes après, il ne nécessite que d’1 seconde au lieu des 30 secondes initiales

clip_image006

Si le service démarre avant et que vous avez toujours le timeout sur « profiles » alors peut être que vous êtes dans le cas où le réseau n’était pas encore monté.

Vous n’avez pas de solution simple pour connaître l’état du réseau mais en utilisant la rubrique « Generic Events » puis dans « Microsoft Windows Group Policy », on peut déterminer non pas le début de l’activité mais à quel moment le réseau était disponible.

Dans l’exemple ci-dessous on peut affirmer que le réseau était disponible à 40 secondes car le PC réussit à déterminer le nom du DC ainsi que la requête LDAP pour l’OU du poste.

clip_image008

Ici on détermine une disponibilité du réseau vers 40 secondes soit 18 secondes avant « profiles »

Donc pour résumer, dans notre scénario le réseau est disponible vers 40 secondes, le service « netprofm » vers 42 secondes et « profiles » démarre à 58 secondes soit après la disponibilité du service et du réseau.