Socket.DontFragment Özellik

Tanım

İnternet Protokolü (IP) veri birimlerinin Socket parçalanıp parçalanmadığını belirten bir değer alır veya ayarlar.

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

Özellik Değeri

true Socket veri birimi parçalanmasına izin vermiyorsa; değilse, false. Varsayılan değer: true.

Özel durumlar

Yuva ailede InterNetwork değil.

Yuvaya erişmeye çalışılırken bir hata oluştu.

Örnekler

Aşağıdaki kod örneği özelliğinin DontFragment kullanımını gösterir.

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 {0}", 
        udpSocket->DontFragment);
    Console::WriteLine("  EnableBroadcast {0}", 
        udpSocket->EnableBroadcast);
    Console::WriteLine("  MulticastLoopback {0}", 
        udpSocket->MulticastLoopback);
}
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}");
}

Açıklamalar

Veri birimleri, boyutları iletim medyasının Maksimum Aktarım Birimi 'ni (MTU) aştığında parçalanma gerektirir. Veri birimleri, gönderen ana bilgisayar (tüm İnternet Protokolü sürümleri) veya bir ara yönlendirici (yalnızca İnternet Protokolü Sürüm 4) tarafından parçalanabilir. Bir veri biriminin parçalanması gerekiyorsa ve DontFragment seçenek ayarlandıysa, veri birimi atılır ve veri biriminin gönderenine bir İnternet Denetim İletisi Protokolü (ICMP) hata iletisi gönderilir.

İletim Denetimi Protokolü (TCP) yuvasında bu özelliğin ayarlanmasının hiçbir etkisi yoktur.

Şunlara uygulanır