Partager via


StreamWebSocketControl.NoDelay Propriété

Définition

Valeur qui indique si l’algorithme Nagle est utilisé sur un objet StreamWebSocket .

public:
 property bool NoDelay { bool get(); void set(bool value); };
bool NoDelay();

void NoDelay(bool value);
public bool NoDelay { get; set; }
var boolean = streamWebSocketControl.noDelay;
streamWebSocketControl.noDelay = boolean;
Public Property NoDelay As Boolean

Valeur de propriété

Boolean

bool

Valeur qui indique si l’algorithme Nagle est utilisé sur la connexion TCP d’un objet StreamWebSocket .

Remarques

La propriété NoDelay contrôle si l’algorithme de Nagle est activé ou désactivé sur un objet StreamWebSocket . La valeur par défaut de la propriété NoDelay est true.

L’algorithme de Nagle est une technique permettant d’améliorer l’efficacité des réseaux TCP/IP en réduisant le nombre de paquets qui doivent être envoyés sur le réseau. L’algorithme tente de traiter les problèmes causés par une application qui émet des données à plusieurs reprises en petits blocs. Un paquet TCP a un en-tête de 40 octets (20 octets pour IP et 20 octets pour TCP). Par conséquent, si une application envoie seulement 4 octets dans un paquet, la surcharge sur les données de paquet est très importante. Cela peut se produire pour un protocole d’accès à distance (telnet ou secure shell, par exemple) où la plupart des pressions sur la touche ne peuvent générer qu’un ou deux octets de données qui sont transmises immédiatement. Sur une liaison lente, un grand nombre de ces paquets peuvent être en transit sur le réseau en même temps. L’algorithme de Nagle fonctionne en combinant un certain nombre de petits messages sortants et en les envoyant tous à la fois. Lorsqu’il y a un paquet envoyé pour lequel l’expéditeur n’a reçu aucun accusé de réception, l’expéditeur conserve la sortie de mise en mémoire tampon jusqu’à ce qu’il dispose d’un paquet complet de sortie. Cela permet d’envoyer la sortie à la fois. L’impact de l’application de l’algorithme de Nagle est d’augmenter la bande passante au détriment de la latence. Une application bien écrite que les mémoires tampons envoient en interne ne doit pas avoir besoin d’utiliser l’algorithme de Nagle.

Lorsque cette propriété a la valeur true, StreamWebSocket désactive l’algorithme de Nagle sur la connexion TCP. Ce paramètre réduit les retards potentiels lors de l’envoi de petits messages. Lorsqu’un Objet StreamWebSocket est créé, la valeur par défaut de cette propriété est true.

Lorsque cette propriété a la valeur false, StreamWebSocket active l’algorithme de Nagle sur la connexion TCP. Ce paramètre peut augmenter la bande passante au détriment de la latence, mais ne doit être utilisé qu’avec précaution. Il existe des effets secondaires indésirables possibles lorsque l’algorithme de Nagle est activé et que d’autres optimisations TCP sont également utilisées.

Cette propriété peut être définie avant la connexion de StreamWebSocket . Une fois streamWebSocket connecté, la définition de la propriété génère une erreur.

Cette propriété définit la valeur de l’option de socket TCP_NODELAY sur le socket TCP utilisé par StreamWebSocket .

S’applique à

Voir aussi