Socket.DontFragment Propriedade
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
Recebe ou define um valor que especifica se permite Socket que datagramas de Protocolo de Internet (IP) sejam fragmentados.
public:
property bool DontFragment { bool get(); void set(bool value); };
public bool DontFragment { get; set; }
member this.DontFragment : bool with get, set
Public Property DontFragment As Boolean
Valor de Propriedade
true se o Socket não permitir fragmentação de datagramas; caso contrário, false. A predefinição é true.
Exceções
O encaixe não pertence à InterNetwork família.
Ocorreu um erro ao tentar aceder ao soquete.
O Socket local foi encerrado.
Exemplos
O seguinte exemplo de código demonstra a utilização da DontFragment propriedade.
static void ConfigureUdpSocket(Socket udpSocket)
{
// set the Don't Fragment flag.
udpSocket.DontFragment = true;
// Enable broadcast.
udpSocket.EnableBroadcast = true;
// Disable multicast loopback.
udpSocket.MulticastLoopback = false;
Console.WriteLine("Udp Socket configured:");
Console.WriteLine($" DontFragment {udpSocket.DontFragment}");
Console.WriteLine($" EnableBroadcast {udpSocket.EnableBroadcast}");
Console.WriteLine($" MulticastLoopback {udpSocket.MulticastLoopback}");
}
Observações
Os datagramas requerem fragmentação quando o seu tamanho excede a Unidade Máxima de Transferência (MTU) do meio de transmissão. Os datagramas podem ser fragmentados pelo host emissor (todas as versões do Protocolo Internet) ou por um router intermédio (apenas Versão 4 do Protocolo Internet). Se um datagrama tiver de ser fragmentado e a DontFragment opção for definida, o datagrama é descartado e uma mensagem de erro do Protocolo de Mensagens de Controlo da Internet (ICMP) é enviada de volta ao remetente do datagrama.
Definir esta propriedade num soquete do Protocolo de Controlo de Transmissão (TCP) não tem efeito.