Socket.DontFragment Свойство
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Возвращает или задает значение, указывающее, можно ли Socket фрагментировать диаграммы данных протокола Интернета (IP).
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
Значение свойства
true Значение , если не Socket допускает фрагментацию диаграммы данных; в противном случае false. Значение по умолчанию — true.
Исключения
Сокет не находится в InterNetwork семье.
Произошла ошибка при попытке доступа к сокету.
Он Socket был закрыт.
Примеры
В следующем примере кода показано использование 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}");
}
Комментарии
Для диаграммы данных требуется фрагментация, если их размер превышает максимальный размер единицы передачи (MTU) носителя передачи. Диаграммы данных могут быть фрагментированы узлом отправки (все версии протокола Интернета) или промежуточным маршрутизатором (только для протокола Интернета версии 4). Если диаграмма данных должна быть фрагментирована и DontFragment задан параметр, то отбрасывается диаграмма данных, а сообщение об ошибке протокола ICMP отправляется отправителю диаграммы данных.
Установка этого свойства в сокете ПРОТОКОЛА TCP не влияет.