Socket.DontFragment Egenskap
Definition
Viktigt
En del information gäller för förhandsversionen av en produkt och kan komma att ändras avsevärt innan produkten blir allmänt tillgänglig. Microsoft lämnar inga garantier, uttryckliga eller underförstådda, avseende informationen som visas här.
Hämtar eller anger ett värde som anger om Socket tillåtna IP-datagram (Internet Protocol) ska fragmenteras.
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
Egenskapsvärde
trueom inte tillåter fragmentering av Socket datagram, annars . false Standardvärdet är true.
Undantag
Sockeln finns inte i InterNetwork familjen.
Ett fel uppstod vid försök att komma åt socketen.
Har Socket stängts.
Exempel
Följande kodexempel visar hur egenskapen används DontFragment .
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}");
}
Kommentarer
Datagram kräver fragmentering när deras storlek överskrider MTU (Maximum Transfer Unit) för överföringsmediet. Datagram kan fragmenteras av den sändande värden (alla Internet Protocol-versioner) eller en mellanliggande router (endast Internet Protocol Version 4). Om ett datagram måste fragmenteras och DontFragment alternativet anges ignoreras datagrammet och ett ICMP-felmeddelande (Internet Control Message Protocol) skickas tillbaka till datagrammets avsändare.
Att ange den här egenskapen på en TCP-socket (Transmission Control Protocol) har ingen effekt.