Bagikan melalui


Socket.DontFragment Properti

Definisi

Mendapatkan atau menetapkan nilai yang menentukan apakah Socket memungkinkan datagram Protokol Internet (IP) terfragmentasi.

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

Nilai Properti

true Socket jika tidak mengizinkan fragmentasi datagram; jika tidak, false. Defaultnya adalah true.

Pengecualian

Soket tidak ada dalam InterNetwork keluarga.

Terjadi kesalahan saat mencoba mengakses soket.

Contoh

Contoh kode berikut menunjukkan penggunaan DontFragment properti.

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}");
}

Keterangan

Datagram memerlukan fragmentasi ketika ukurannya melebihi Unit Transfer Maksimum (MTU) media transmisi. Datagram dapat difragmentasi oleh host pengirim (semua versi Protokol Internet) atau router perantara (hanya Protokol Internet Versi 4). Jika datagram harus difragmentasi dan DontFragment opsi diatur, datagram dibuang, dan pesan kesalahan Internet Control Message Protocol (ICMP) dikirim kembali ke pengirim datagram.

Menyetel properti ini pada soket Protokol Kontrol Transmisi (TCP) tidak berpengaruh.

Berlaku untuk