Les temps de transfert FTP sont extrêmement longs, le temps de réponse de connexion interactive est beaucoup trop long, vous obtenez 1 Mbps sur votre réseau de 100 Mbps. Même si je préfère toujours blâmer le réseau, je dois admettre que parfois, ce n'est pas le réseau qui est en cause.
La première chose à rechercher lorsqu'on est confronté à un problème de performances TCP est un problème Ethernet de bas niveau, et le problème le plus courant est de loin une incompatibilité duplex. Ethernet peut fonctionner en mode full duplex ou half duplex. En mode full duplex, l'adaptateur du module et le périphérique auquel il est connecté, son homologue de liaison (généralement un commutateur, mais pas toujours), peuvent transmettre simultanément. En mode half duplex, un seul côté peut transmettre. Il existe une fenêtre temporelle pendant laquelle les deux côtés peuvent penser qu'il est possible de transmettre et le faire. Lorsque cela se produit, une collision est déclarée, les deux côtés arrêtent de transmettre, attendent un certain temps aléatoire et réessaient. Il est important de comprendre que, lorsque les deux côtés sont en mode semi-duplex, ces collisions ne réduisent pas de manière significative le débit du réseau.
Dans le cas d'une incompatibilité duplex, un côté est en mode duplex intégral et son homologue de liaison est en mode semi-duplex. Le côté en mode semi-duplex peut subir des collisions tardives et excessives, ce type d'erreurs réduisant considérablement le débit. Toute collision tardive ou excessive est le signe d'un problème. Le ralentissement du réseau peut sembler disproportionné par rapport au nombre de collisions tardives et excessives, car dans une situation de désadaptation duplex, même les collisions normales réduisent le débit, car le pair de liaison ne retransmet pas la trame, car il ne reconnaît pas une collision en mode duplex intégral.
Alors, comment savoir si cela vous arrive ? Le «
netstat -interface» affichera les statistiques qui vous permettront de déterminer si une incompatibilité duplex se produit. Dans l'exemple suivant, les statistiques pour l'adaptateur actif du #sdlmux.m16.11-3 interface sont affichées. J'ai supprimé les statistiques relatives à l'adaptateur de secours afin de gagner de la place et j'ai ajouté les numéros de ligne.Si l'adaptateur est en mode semi-duplex, vous verrez des comptes positifs dans les lignes 25 (trame de transmission différée), 26 (trame de transmission après une seule tentative) et 27 (trame de transmission après plusieurs tentatives). Il s'agit des compteurs de collisions normaux. Si vous voyez des valeurs positives dans les lignes 24 (trame de transmission rejetée, collisions tardives) et/ou 28 (trame de transmission rejetée, tentatives excessives), vous avez probablement ou avez eu un problème de duplex. Ces compteurs ne sont réinitialisés que lorsque l'adaptateur est réinitialisé, donc les valeurs positives indiquent qu'il y a eu un problème ; les compteurs qui continuent à augmenter indiquent que vous avez toujours un problème. Si l'adaptateur est en mode duplex intégral et que vous voyez une valeur positive à la ligne 32 (trame de réception rejetée, CRC incorrect), le pair de liaison est probablement en mode semi-duplex.
1 netstat -interface #sdlmux.m16.11-3 2 3 Ethernet adapters are grouped 4 Number of failovers = 0 5 6 Active Device Statistics: 7 8 9 MAC Type : CSMA/CD10 MAC Address: 00:00:a8:43:52:2211 Device Name: #sdlmux.m16.11-312 Line Speed : 100 mb/s13 Line Duplex: Full-Duplex1415 MAC Statistics:16 Received frames : 2078318117 Received multicast and broadcast frames : 298437518 Received octets : 178791386919 Transmitted frames : 974701520 Transmitted octets : 278048581921 LAN Chipset re-initialized : 022 SQE error : 023 Transmit ring full : 024 Transmit frame discarded, late collisions: 025 Transmit frame was deferred : 026 Transmit frame after a single retry : 027 Transmit frame after multiple retry : 028 Transmit frame discarded, excessive retry: 029 Receive frame discarded, lack of buffers : 030 Receive frame discarded, improper framing: 031 Receive frame discarded, an overflow : 032 Receive frame discarded, bad CRC : 67433 Receive frame discarded, bad address : 034 Receive frame discarded, congestion : 035 36 MAC Summary:37 Transmitted frames : 974701538 Transmitted octets : 278048581939 Retransmitted frames : 040 Received frames : 2376755641 Received octets : 178791386942 Total of lost frames : 043 Partner Device Statistics: . . . . ready 08:35:14Comment en êtes-vous arrivé à cette situation de désynchronisation duplex ? Il est bien sûr possible de configurer un appareil pour qu'il fonctionne en mode duplex intégral et le pair de liaison en mode semi-duplex, MAIS le scénario le plus courant consiste à configurer un appareil en mode duplex intégral et le pair de liaison en mode auto-négociation. La plupart des appareils configurés pour le duplex intégral ne procèdent pas à une auto-négociation et, selon la spécification d'auto-négociation, le côté qui tente d'auto-négocier doit revenir au mode semi-duplex lorsqu'il ne voit pas le protocole d'auto-négociation du pair de liaison.
Par défaut, les adaptateurs Ethernet utilisés par OpenVOS négocient automatiquement. Par conséquent, à moins que le pair de liaison soit également configuré pour la négociation automatique ou le mode semi-duplex, vous obtiendrez une incompatibilité duplex. Pour configurer un adaptateur pour un mode duplex spécifique, vous devez ajouter le paramètre
“-duplex full” ou “-duplex half” chaîne dans le champ des paramètres de l'entrée devices.tin pour l'adaptateur. Vous devez également définir la vitesse. Le guide de l'administrateur OpenVOS Streams TCP/IP (R419) décrit cette procédure en détail.Une dernière remarque : si l'adaptateur fonctionne à 1 gigabit, il fonctionnera également en mode full duplex. Personne ne prend en charge le gigabit half duplex.
