Loading

Problème d'insuffisance de ports de Tableau Server

Date de publication: Jul 20, 2023
Description

Symptômes de l'insuffisance de ports

Il peut être difficile de diagnostiquer l'insuffisance de ports étant donné qu'elle peut se manifester de diverses manières. La liste suivante décrit certains des symptômes courants de l'insuffisance de ports :

  • Les connexions au serveur ont échoué.Par exemple, l'erreur suivante peut s'afficher :

    Unable to connect to the remote server

    System.Net.Sockets.SocketException: En règle générale, une seule utilisation de chaque adresse de socket (protocole/adresse réseau/port) est autorisée.

  • Les connexions au serveur ont expiré.
  • Les performances sont moins bonnes qu'attendu.
  • Le serveur cesse de répondre.

Déterminer si le problème est l'insuffisance de ports

Pour déterminer si ces symptômes sont provoqués par une insuffisance de ports, vous devrez déterminer le nombre de ports dynamiques utilisés. Pour cela, commencez par identifier la plage de ports dynamique, puis affichez les ports actuellement en cours d'utilisation.

Identifier la plage de ports dynamiques

Ouvrez une invite de commande en tant qu'administrateur puis exécutez la commande suivante pour déterminer la plage de ports dynamiques :

netsh int ipv4 show dynamicportrange tcp

ou

netsh int ipv6 show dynamicportrange tcp

La commande affiche le numéro de port du premier port dynamique, aussi appelé port de début, et le nombre de ports.

Ajoutez le nombre de ports jusqu'au port de début pour déterminer la plage de ports dynamiques. Par exemple, si le port de début est 60000 et le nombre de ports est de 5000, la plage va de 60000 à 65000.

Pour plus d'informations sur la commande netsh, consultez Référence des commandes Netsh dans Microsoft TechNet.

Afficher les ports actuellement utilisés

Exécutez la commande suivante pour afficher les ports actuellement utilisés :

netstat –n

Astuce : pour envoyer la sortie de la commande à un fichier, entrez la commande suivante :

netstat –n > out.txt

Comparez les ports actuellement utilisés avec la plage de ports dynamiques. Si la plupart ou la totalité des ports est utilisée, Tableau Server est probablement confronté à une insuffisance de ports. Pour plus d'informations sur l'émission de la commande netstat, consultez État des connexions TCP et sortie Netstat sur le site Web du support Microsoft.

L'image suivante affiche les ports qui se trouvent dans les états ESTABLISHED and TIME_WAIT, à savoir qu'ils sont utilisés pour une connexion active, ou qu'ils n'ont pas encore été libérés pour pouvoir être réutilisés par le système. Si la plage de ports dynamiques toute entière correspond à l'image ci-dessous, Tableau Server est confronté à une insuffisance des ports.

Image ajoutée par l'utilisateur

Cause

Si Tableau Server reçoit un grand nombre de demandes Web, vous risquez de rencontrer des problèmes d'insuffisance de ports. L'insuffisance de ports se produit lorsque tous les ports dynamiques d'un serveur sont utilisés. Les ports dynamiques, également appelés ports éphémères, sont une plage de ports conçus pour être utilisés avec des connexions de courte durée.

Il est plus probable que Tableau Server rencontre des problèmes d'insuffisance de ports s'il fait partie d'une installation distribuée ou s'il s'intègre avec d'autres services, deux cas de figure qui augmentent le nombre de demandes, et de ce fait, le nombre de ports dynamiques utilisés sur le serveur.
Résolution

Augmenter la plage de ports dynamiques.

Vous pouvez commencer par définir la plage de manière à inclure les ports 32767 à 65535. Cette plage n'affecte pas les ports utilisés par Tableau Server. Notez également que le port 65535 est le nombre de ports maximum.

Exécutez la commande suivante pour augmenter la plage de ports dynamiques :

netsh int <ipv4|ipv6> set dynamicportrange <tcp|udp> start=number num=range store=<active/persistent>

Dans notre exemple, la commande se présenterait comme suit :

netsh int ipv4 set dynamicportrange tcp start=32767 num=32768 store=persistent

où :

start=32767 : Le premier port de la plage de ports dynamiques est 32767.

num=32768 : La plage de ports dynamiques utilise 32 768, en commençant avec le port de début.

store=persistent : La plage de ports dynamiques est enregistrée lors du prochain redémarrage du système.

Pour plus d'informations sur la configuration de la plage de ports dynamiques, consultez la section set dynamicportrange de Référence des commandes Netsh.

Ressources supplémentaires

Dans cet exemple, la plage de ports dynamiques a été configurée de manière à inclure les ports de 32767 à 65535. Toutefois, si vous continuez à rencontrer des problèmes d'insuffisance des ports, vous pouvez augmenter encore davantage la plage de ports dynamiques.

Pour savoir comment réduire le temps avant la libération des ports dynamiques et comment définir la plage de ports dynamiques directement dans le registre, consultez Éviter l'insuffisance des ports TCP/IP dans MSDN.

Numéro d’article de la base de connaissances

001473405

 
Chargement
Salesforce Help | Article