Nous avons récemment eu un petit problème avec la mise en réseau où plusieurs serveurs perdraient par intermittence la connectivité réseau d'une manière assez pénible à résoudre (redémarrage dur requis). Cela dure depuis environ deux semaines, apparemment au hasard, sur différents serveurs. Aucun modèle particulier que nous avons pu y discerner.
Après quelques recherches, nous avons vu que le commutateur signalait 100 Mbps pour le port problématique:
Cela ressemble remarquablement à ce qui s'est passé dans l'article de Joel Spolsky Five Whys
Michael a passé un certain temps à faire un post-mortem et a découvert que le problème était un simple problème de configuration sur le commutateur. Il existe plusieurs vitesses possibles qu'un commutateur peut utiliser pour communiquer (10, 100 ou 1000 mégabits/seconde). Vous pouvez soit régler la vitesse manuellement, soit laisser le commutateur négocier automatiquement la vitesse la plus élevée avec laquelle les deux parties peuvent travailler. Le commutateur qui a échoué a été défini pour négocier automatiquement. Cela fonctionne généralement, mais pas toujours, et le matin du 10 janvier, cela n'a pas fonctionné.
Nous avons maintenant désactivé la négociation automatique sur notre matériel réseau et l'avons réglé à un taux fixe de 1000 Mbps (gigabit).
Mes questions à ceux qui ont plus d'expertise en matière de mise en réseau de matériel serveur:
Je n'ai pas encore vu de problème avec la négociation automatique des vitesses de réseau qui ne soit pas causé par (a) un décalage de manuel à une extrémité du lien et automatique à l'autre ou (b) un composant défaillant du lien ( câble, port, etc.).
Cela dépend de l'administrateur, mais mon expérience m'a montré que si vous spécifiez manuellement les vitesses de liaison et les paramètres de duplex, vous êtes obligé de rencontrer des asymétries de vitesse. Pourquoi? Parce qu'il est presque impossible de documenter les différentes connexions entre les commutateurs et les serveurs, puis de suivre cette documentation lors des modifications. La plupart des échecs que j'ai vus sont dus à 1(a) et vous n'entrez dans cette situation que lorsque vous commencez à définir manuellement les paramètres de vitesse/duplex.
Comme mentionné dans la documentation Cisco :
Si vous désactivez la négociation automatique, cela masque les pertes de liens et d'autres problèmes de couche physique. Désactivez uniquement la négociation automatique pour les périphériques finaux, tels que les anciennes cartes réseau Gigabit qui ne prennent pas en charge la négociation automatique Gigabit. Ne désactivez pas la négociation automatique entre les commutateurs, sauf si cela est absolument nécessaire, car les problèmes de couche physique peuvent ne pas être détectés et entraîner des boucles d'arborescence fractionnée.
Sauf si vous êtes prêt à configurer un système de gestion des changements pour les changements de réseau qui nécessite la vérification de la vitesse/du duplex (et n'oubliez pas le contrôle de flux) ou si vous êtes prêt à faire face à des décalages occasionnels qui proviennent de la spécification manuelle de ces paramètres sur tous les périphériques réseau, puis respectez la configuration par défaut auto/auto.
À l'avenir, envisagez de surveiller les erreurs sur les ports du commutateur avec MRTG afin de pouvoir détecter ces problèmes avant de rencontrer un problème.
Edit: Je vois beaucoup de gens référencer les échecs de négociation sur les anciens équipements. Oui, c'était un problème il y a longtemps lorsque les normes ont été créées et que tous les appareils ne les ont pas suivies. Vos cartes réseau et commutateurs ont-ils moins de 10 ans? Si oui, alors ce ne sera pas un problème.
Très fréquent, j'ai eu de nombreux problèmes au fil des ans avec différents types de matériel.
À mon avis, si la configuration est statique (c'est-à-dire un rack de serveur) et que vous ne pensez pas qu'il y aura des changements, c'est une bonne idée de configurer les vitesses et les duplex manuellement. Tant qu'il est bien documenté afin d'éviter de futurs problèmes.
MODIFIER:
Juste pour clarifier, je ne préconise pas d'utiliser des vitesses manuelles sur l'ensemble de votre réseau, je dirais que 95% du temps auto/auto est la voie à suivre. Je dis simplement que j'ai eu des problèmes de duplex/vitesse et qu'il y a de petites parties de mon réseau (c'est-à-dire l'un de nos racks de serveur) qui ont principalement des paramètres manuels. Nous exploitons un réseau local très contrôlé avec des ports inutilisés fermés et des filtres MAC sur la plupart des ports, il n'est donc pas très difficile de suivre les vitesses.
Ainsi, les étapes de dépannage (supposons que vous vous arrêtez après chacune et attendez que le problème réapparaisse):
À ce stade, vous avez éliminé la configuration, les ports physiques auxquels vous êtes branché, le câblage entre eux. Si cela se produit toujours , d'autres causes peuvent être:
Contexte/pourquoi ma réponse est la plus impressionnante: je travaille en tant qu'ingénieur réseau/systèmes dans l'industrie financière, et voici mon expérience avec notre petit réseau mondial (15 succursales, 8 centres de données):
Tous nos ports LAN sont autonégatifs, car nous contrôlons l'équipement aux deux extrémités et avons une sorte d'accès des deux côtés --- ce qui peut être aussi simple que de contacter quelqu'un par téléphone et de lui faire vérifier les paramètres. En trois ans, je n'ai eu qu'un de nos ports internes en panne en raison d'une défaillance de l'autonégulation, et c'était à cause d'un mauvais câble --- il a disparu après avoir remplacé le câble.
Nous avons eu beaucoup plus de problèmes lorsque les prédécesseurs avaient codé en dur 100/full sur leurs cartes réseau, et n'ont pas documenté ce fait. Réinitialisez tout sur auto/auto à la prochaine fenêtre de maintenance et n'avez eu aucun problème avec eux depuis.
Sur les deux endroits où nous avons le transfert de cuivre d'un transporteur pour notre WAN? Vous devriez vous attendre à une connexion WAN/Internet en cuivre, tout le temps --- en partie parce que vous n'avez aucune idée de ce qui est de l'autre côté. Un ancien commutateur Extreme qui a un firmware buggé pour l'autonégulation, mais le marquage MPLS? Un convertisseur multimédia à 5 $ parce que le périphérique Ciena Edge de 200 000 $ de votre FAI est tout simplement trop génial pour fournir Ethernet sur une paire torsadée? Décidez à l'avance de la façon dont cela va être géré et respectez-le, puis attendez-vous à ce qu'un twit à l'intérieur du transporteur le change à 22 heures un samedi parce que la configuration convenue n'a jamais été documentée et qu'ils ont une politique à suivre.
Sérieusement, cependant, obtenez un transfert de fibre de votre FAI.
Je crois que si la négociation automatique fonctionnait pendant une heure par jour ou un mois et que pour une raison quelconque, "quelque chose se passe", le fait de régler le lien sur une vitesse fixe le "corrige", il y a un problème qui n'est pas résolu mais contourné à la place. Je suppose que je vois la définition du lien fixe comme une solution temporaire jusqu'à ce que le vrai problème soit corrigé.
Le réseau dont je suis responsable (avec quelques autres gars) est composé de ~ 40 serveurs, de plus de 1000 postes de travail (répartis sur un campus assez grand) et de ~ 1000 WAP également répartis sur une grande zone avec différents types et âges d'équipements de réseau.
Comme l'a dit dimitri.p, lorsque quelque chose ne parvient pas soudainement à arrêter la négociation automatique, c'est généralement une indication d'un autre problème. Régler le port manuellement revient à mettre un pansement sur quelqu'un qui a été poignardé dans l'intestin - cela pourrait arrêter le saignement, mais il y aura certainement des dommages en dessous.
Ma liste de contrôle habituelle:
Nous, en règle générale, jamais désactivez l'autoneg sur les serveurs (ou toute autre chose dans le centre de données), sauf si c'est une situation où toutes les autres causes possibles ont été éliminées, nous avons déplacé les ports de commutation, changé les câbles, testé la carte réseau, etc. et il n'y a pas d'autre choix. Dans ce cas, il est documenté à mort. Cela se produit très rarement, et généralement avec des appliances auxquelles nous ne pouvons pas accéder pour vérifier les paramètres du BIOS et du système d'exploitation.
Les postes de travail et les points d'accès, en revanche, sont une autre histoire. Un autoneg échoué est un signe classique d'une mauvaise passe de câble, et plusieurs fois nous devons régler manuellement la vitesse et le duplex jusqu'à ce que la saison estivale de lancement de nouveaux câbles dans les murs arrive.
C'est le mythe du réseau. Nos gars du réseau ne jurent que par ce non-sens, car en 1998, les commutateurs Bay ne négociaient pas avec Cisco ou quelque chose du genre. Ainsi, au lieu d'utiliser la valeur par défaut pour 99,999% des équipements sur terre, nous avons cet exercice de gestion de configuration ridicule et un excellent bouc émissaire pour les moments où une mise à jour du pilote NIC réinitialise les paramètres de négociation automatique) et tout se passe.
Son rendu plus amusant parce que beaucoup de nos serveurs utilisent des fonctionnalités douteuses comme NIC teaming, qui vous empêchent de perdre l'accès au réseau dans le cas peu probable d'une panne de commutateur, tout en vous exposant au logiciel beaucoup plus probable échec. (Les pilotes sucent toujours)
Pour défendre les gars du réseau, de nombreux serveurs s'exécutent avec des pilotes Windows par défaut NIC, qui sont généralement nuls. Si vous rencontrez des problèmes avec la négociation automatique et que votre équipement ne date pas de l'administration Clinton , mettez à jour ces pilotes NIC.
Vous devez négocier automatiquement. Si vous avez un commutateur qui ne négociera pas automatiquement de manière fiable, achetez un meilleur commutateur.
Le gigabit est supposé pour négocier automatiquement, et cela inclut la détection de croisement automatique (MDI-X).
100baseT est garanti en cas d'échec si une extrémité est définie sur auto et l'autre sur manuel, et c'est selon les spécifications. Si vous forcez une extrémité à 100/plein, alors l'autre extrémité va négocier automatiquement à 100/moitié, vous donnant une différence de duplex.
En règle générale, je règle les serveurs pour qu'ils soient fixes, car j'ai vu des équipements réseau négocier à 10/moitié au lieu de 1000/plein.
De plus, certains CoLos ont réglé leurs commutateurs pour ne pas négocier, mais uniquement pour établir une liaison à 1000/complet.
La désactivation de la négociation automatique dans une configuration initiale non testée s'apparente à une programmation vaudou - vous changez quelque chose sans raison valable. Si, après avoir testé, vous voyez qu'il y a une différence de duplex ou de vitesse ou qu'il y a des erreurs excessives sur le port, alors engagez-vous dans un autre dépannage et enfin corrigez la configuration si nécessaire.
Lorsque vous mettez à niveau un pilote ou remplacez du matériel, rien ne garantit que vos paramètres seront conservés côté serveur.
Définissez les deux côtés du lien pour négocier ou réparez les deux côtés. Lorsque vous corrigez les paramètres de vitesse et de duplex sur certains appareils, ils n'annoncent plus leurs capacités à leurs pairs. Je ne sais pas ce que la norme Ethernet dit sur ce qu'il faut faire lorsqu'un côté annonce des capacités et que l'autre ne le fait pas, ce qui signifie probablement que beaucoup d'implémenteurs ne le savent pas non plus. Certains choisiront le plus petit dénominateur commun, qui est de 10% et d'autres supposeront que tout va bien et choisiront la vitesse la plus rapide possible.
Il existe des éléments matériels contemporains qui ne prennent pas en charge la négociation automatique sur Ethernet Gigabit cuivre, comme (au moins certains) commutateurs Cisco avec des SFP cuivre.
Il y a de nombreuses années, j'ai passé du temps à travailler pour 3com à faire du support technique pour à peu près tout leur équipement réseau. Il est étonnant de voir combien de fois ce problème est survenu et c'était à peu près la procédure standard pour tout régler manuellement.
Rugueux. J'ai vu des cartes réseau 3com de 100 Mo qui ne se connecteraient pas à plus de 10 Mo si vous imposiez la vitesse ou le duplex. Vous ne pouviez obtenir une vitesse maximale qu'en les laissant négocier automatiquement, même si le pilote avait des paramètres 100Mb Full et 100Mb Half.
De nombreux pilotes NIC ne vous permettent pas de spécifier 1000 Mo. Les seuls choix sont 10, 100, Auto. Encore une fois, vous forçant à faire Auto si vous voulez la pleine vitesse. Par exemple le pilote Broadcom netXtreme 57xx Gigabit se comporte de cette façon.
Vous pouvez facilement forcer Gigabit sur le commutateur, mais je pense que vous serez obligé de laisser la plupart des NIC négocier automatiquement.
J'ai eu beaucoup de problèmes avec la négociation automatique. Beaucoup, bien sûr, signifie un tous les quelques mois, mais c'est un problème de trop dans mon livre.
Les problèmes de négociation automatique sont difficiles à trouver, en particulier lorsque les personnes gérant le réseau, les serveurs, les applications et les bases de données sont quatre équipes différentes. Habituellement, les deux derniers passeront beaucoup de temps à faire des va-et-vient, à s’accuser mutuellement de mauvaises performances et à mentir sur les mesures, et parfois à donner des coups de pied aux serveurs, qui regarderont dûment la sortie de "top" et diront que tout est très bien avec le serveur.
Cela continue jusqu'à ce que la question dégénère au point où un "expert" (en fait, quelqu'un qui est un généraliste, et donc comprend les réseaux, le matériel, les systèmes d'exploitation, les bases de données, les cadres et les applications) est affecté au problème et trouve le problème dans les cinq ou dix minutes.
Donc, ma propre règle d'or, chaque fois que j'ai la possibilité de faire quelque chose, est de définir TOUJOURS des vitesses fixes sur les serveurs de production, les commutateurs et les routeurs. Les serveurs hors production également, s'ils sont suffisamment séparés pour que les personnes qui l'utilisent n'y aient pas accès root.
Les commutateurs gérant l'accès au bureau/ordinateur portable peuvent être laissés à la négociation automatique, et il existe des exceptions à la règle. Pour n'en mentionner qu'un, s'il y a beaucoup de changements en cours dans le réseau, il est préférable de le laisser sur auto et de garder un œil sur les choses.
Un autre point qui peut être utile, quel que soit votre choix concernant la négociation automatique , est de surveiller la chose. Configurez simplement Nagios ou ce que vous avez pour garder un œil sur l'état de n'importe quel port important. Vous surveillez déjà cet équipement réseau de toute façon, n'est-ce pas?
J'ai eu quelques problèmes avec la négociation automatique dans une configuration domestique et le problème était le câblage, en particulier les câbles réseau enroulés en boucle avec un diamètre trop petit ou le mettant trop près des câbles d'alimentation.
Mais je pense que ces suggestions sont un peu trop triviales pour votre configuration. ;)
D'après mon expérience (principalement des équipements 3Com et HP, pas beaucoup de Cisco), la négociation automatique ne pose pas beaucoup de problèmes.
De la même manière que mrdenny, je règle généralement les serveurs à leur vitesse la plus rapide (nous en avons toujours à 100), en duplex intégral, puis laisse le commutateur sur auto. Puisque nous avons un mélange de vitesses sur les serveurs et les postes de travail, je préfère de loin laisser les commutateurs sur auto et les laisser s'adapter au point final.
Cisco discute de certains cas où vous souhaiterez peut-être configurer manuellement la vitesse du port et le duplex plutôt que d'utiliser la négociation automatique, lors de l'utilisation de dispositifs de sécurité PIX/ASA: http://www.Cisco.com/en/US/products/hw/ vpndevc/ps2030/products_tech_note09186a008009491c.shtml # troubleshoot
Je lisais récemment à ce sujet dans Network Warrior de Gary Donahue. Sur la base de ce livre pour que la négociation automatique fonctionne correctement, le commutateur et le NIC doivent être définis sur la négociation automatique. Définir le NIC sur un la vitesse et le mode duplex et laisser le serveur en négociation automatique ne fonctionneront pas correctement - la négociation automatique est un protocole et les deux parties doivent le parler pour que les paramètres fonctionnent correctement.
Si vous souhaitez définir explicitement la vitesse et le mode duplex, vous devez le faire aux deux extrémités de la connexion.
Ma règle d'or consiste à utiliser la négociation automatique pour tout sauf les liaisons de routeur, sauf si vous avez spécifiquement un problème (comme les cartes Broadcom récentes ... BAH!)
Si vous avez deux routeurs reliés par Ethernet par exemple, définissez manuellement la vitesse aux deux extrémités.