Qu'est-ce que le Silly Window Syndrome - Explication et prévention
Les données(Data) sont transférées sur le réseau et sur Internet(Internet) à l'aide du TCP/IP Protocol . Le TCP/IP n'est pas parfait mais est plus facile à mettre en œuvre par rapport à d'autres protocoles théorisés pour la communication de données… comme le modèle ISO OSI(ISO OSI) . Comme pour toute chose technique, TCP/IP a aussi quelques défauts et Silly Window Syndrome est une création de l'un de ces défauts. Pour comprendre ce qu'est le Silly Window Syndrome ou SWS , vous devez d'abord comprendre le mécanisme sous-jacent de la communication de données dans TCP/IP .
Syndrome de la fenêtre stupide
Comprendre la fenêtre et sa taille
Lorsque deux points communiquent sous TCP/IP , cela implique un mécanisme d'acquittement. Ce mécanisme de reconnaissance est ce qui cause le Silly Window Syndrome , comme expliqué plus loin. Les points peuvent faire référence à deux ordinateurs, client et serveur, etc.
SWS is caused by the receiver advancing the right window edge whenever it has any new buffer space available to receive data and by the sender using any incremental window, no matter how small, to send more data. The result can be a stable pattern of sending tiny data segments, even though both sender and receiver have a large total buffer space for the connection, says MSDN.
Lorsqu'un ordinateur, disons A, envoie un paquet de données à un autre ordinateur B, ce dernier doit accuser réception et répondre qu'il a reçu le paquet de données. Avec l'accusé de réception, il doit également envoyer la taille du tampon mis à part pour ce fil de communication. Il s'agit généralement du nombre d'octets libérés pour la communication.
Ainsi, lorsque B dit que 100B est disponible pour le prochain message, le 100B est la fenêtre dans Silly Window Syndrome . C'est-à-dire qu'il s'agit de la taille de la mémoire tampon. Avec son propre défaut, le mécanisme TCP/IP peut réduire la taille de la mémoire tampon pour chaque communication/données provenant de A. Autrement dit, chaque fois que A envoie un message, B suppose que la taille de la mémoire tampon est réduite et envoie un plus petit nombre. Ainsi, la taille de la fenêtre continue de se réduire et à un moment donné, la communication s'arrête lorsque B envoie 0B comme taille de fenêtre.
Comment fonctionne le syndrome de la fenêtre idiote
Selon l'exemple ci-dessus de A et B, si B envoie 1000B comme taille de fenêtre, A le divisera en deux 500B et enverra deux paquets de 500B. À la réception du premier paquet, B enverra un accusé de réception indiquant que 500B est disponible pour la fenêtre car le deuxième paquet n'a pas encore été reçu. A suppose que 500B est la taille de la fenêtre et envoie deux paquets de 250B en conséquence. Alors qu'en B, 500B est utilisé et que 500 vient d'être reçu, il enverra 0B comme disponible. À ce stade, A supposera qu'aucune fenêtre n'est disponible bien qu'il puisse arriver que le tampon soit vide car le processeur y a utilisé les données. A enverra toujours un paquet plus petit pour voir si une fenêtre est disponible. Si le contenu du tampon en B n'est pas encore supprimé, il recevra toujours 0 comme réponse/acquittement.
Ainsi, la taille de la fenêtre continue de se réduire à mesure que B envoie un accusé de réception chaque fois qu'il reçoit un paquet de A. Cette taille est généralement inférieure à l'accusé de réception précédent car B reçoit des paquets de données par parties. Il n'y aurait aucun problème si A pouvait envoyer un paquet suffisamment grand pour couvrir la taille de la mémoire tampon sur B à la fois. Mais cela nécessiterait des mécanismes supplémentaires et donc le Silly Window Syndrome . La communication s'arrête après que A reçoive 0 deux ou trois fois.
Comment prévenir le Silly Window Syndrome ( SWS )
Il existe un algorithme simple à implémenter pour se débarrasser de SWS . Lors de la réception du paquet initial, B envoie la moitié de l'espace réellement disponible en tant que fenêtre. Cela obligera A à envoyer des paquets plus petits. Par conséquent, lorsque les paquets deviennent trop petits, B envoie la taille totale du tampon afin que A puisse recommencer à envoyer des octets de données plus gros.
En d'autres termes, si 1000B est disponible, B envoie 500B comme accusé de réception. En conséquence, A envoie 250B x 2 paquets. Pour cela, A reçoit 100B comme accusé de réception. Lorsqu'il reçoit le paquet 50B, B envoie 1000B - 50B à A. Cela rend à nouveau toute la conversation opérationnelle. Cela peut induire un léger retard dans le traitement, mais empêchera le Silly Window Syndrome de se produire et d'arrêter toute la conversation.
Pour résumer, SWS est basé sur la taille de la mémoire tampon disponible pour le destinataire et la taille supposée calculée par l'expéditeur. Pour empêcher SWS , un délai est introduit et une taille de fenêtre délibérément plus petite est réciproque jusqu'à ce que la taille du paquet devienne trop petite. Ensuite, le destinataire divulgue la taille de fenêtre réellement disponible. L'ensemble du processus se répète jusqu'à ce que la communication soit terminée.
Bien que j'aie peut-être utilisé les mots fenêtre et tampon de manière interchangeable. Je ne veux pas dire de différence entre eux. Dans les études SWS , le tampon est la fenêtre.
Related posts
Comment installer Drupal en utilisant WAMP sur Windows
Best Software & Hardware Bitcoin Wallets pour Windows, iOS, Android
Setup Internet Radio Station gratuit sur Windows PC
Fix Partner n'a pas connecté à l'erreur de routeur dans TeamViewer sur Windows 10
NASA's Eyes vous aide à explorer le Universe comme Astronauts
Comment installer Windows 95 sur Windows 10
Différence entre Analog, Digital and Hybrid computers
Comment utiliser un Template pour créer un document avec LibreOffice
E-Waste management, recyclage, élimination, faits, problèmes, solutions
Une erreur s'est produite lors de la vérification des mises à jour dans VLC
Whiteboard Fox est un online whiteboard gratuit qui permet real-time sharing
Les meilleures fonctionnalités de LibreOffice Calc
Best gratuit Secure Digital Notebook Software & Online Services
Comment convertir Binary en texte en utilisant ce texte sur Binary Converter
étiquette conferencing Video, des conseils et des règles que vous devez suivre
Convert Magnet Liens vers Direct Download Liens avec Seedr
Ce compte n'est lié à aucun Mixer account
Best Laptop Tables acheter en ligne
Automate.io est une alternative GRATUITE automation tool and IFTTT
Zip file est une erreur trop grande lorsque vous téléchargez des fichiers de DropBox