SocketOptionName Перечисление

Определение

Определяет имена параметров конфигурации.

public enum class SocketOptionName
public enum SocketOptionName
type SocketOptionName = 
Public Enum SocketOptionName
Наследование
SocketOptionName

Поля

Имя Значение Описание
DontLinger -129

Закройте сокет аккуратно, не задерживаясь.

ExclusiveAddressUse -5

Позволяет привязать сокет к эксклюзивному доступу.

Debug 1

Записать отладочную информацию.

IPOptions 1

Указывает параметры IP-адресов, которые необходимо вставить в исходящие диаграммы данных.

NoChecksum 1

Отправка диаграмм данных UDP с контрольной суммой, установленной на нулю.

NoDelay 1

Отключить алгоритм Nagle для отправки объединенных пакетов.

AcceptConnection 2

Сокет прослушивается.

BsdUrgent 2

Используйте срочные данные, определенные в RFC-1222. Этот параметр можно задать только один раз; После установки его нельзя отключить.

Expedited 2

Используйте ускоренную обработку данных, как определено в RFC-1222. Этот параметр можно задать только один раз; После установки его нельзя отключить.

HeaderIncluded 2

Указывает, что приложение предоставляет IP-заголовок для исходящих диаграмм данных.

TcpKeepAliveTime 3

Количество секунд, в течение которых TCP-подключение будет оставаться в состоянии активности или простоя, прежде чем пробы хранения отправляются в удаленный.

TypeOfService 3

Измените тип заголовка IP-адреса поля службы.

IpTimeToLive 4

Задайте поле заголовка IP-адресов time-to-Live.

ReuseAddress 4

Позволяет связать сокет с адресом, который уже используется.

KeepAlive 8

Используйте оставить в живых.

MulticastInterface 9

Задайте интерфейс для исходящих пакетов многоадресной рассылки.

MulticastTimeToLive 10

Время многоадресной рассылки IP-адресов.

MulticastLoopback 11

Обратный цикл многоадресной рассылки IP-адресов.

AddMembership 12

Добавление членства в группе IP-адресов.

DropMembership 13

Удаление членства в группе IP-адресов.

DontFragment 14

Не фрагментировать IP-диаграммы данных.

AddSourceMembership 15

Присоединение к исходной группе.

FastOpen 15

Включает tcp Fast Open, как определено в RFC-7413. Фактическое наблюдаемое поведение зависит от конфигурации ОС и состояния кэша tcp-файлов cookie ядра. Использование TFO рекомендуется только в управляемых сетевых средах, что означает, что каждый средний ящик (например, брандмауэр, маршрутизатор, прокси) в сетевом пути между клиентом и сервером известен и может быть настроен для поддержки TFO. Использование TFO вне контролируемых сред (таких как открытый Интернет) может привести к проблемам с подключением.

DontRoute 16

Не маршрутизировать; отправьте пакет непосредственно в адреса интерфейса.

DropSourceMembership 16

Удалите исходную группу.

TcpKeepAliveRetryCount 16

Количество сеансов TCP, которые будут отправляться до завершения подключения.

BlockSource 17

Блокировать данные из источника.

TcpKeepAliveInterval 17

Количество секунд, в течение которых TCP-подключение будет ожидать сохраняемого ответа, прежде чем отправлять другую пробу хранения.

UnblockSource 18

Разблокируйте ранее заблокированный источник.

PacketInformation 19

Возвращает сведения о полученных пакетах.

ChecksumCoverage 20

Задайте или получите покрытие контрольной суммы UDP.

HopLimit 21

Указывает максимальное количество прыжков маршрутизатора для пакета протокола Интернета 6 (IPv6). Это аналогично времени жизни (TTL) для Протокола Интернета версии 4.

IPProtectionLevel 23

Разрешает ограничение сокета IPv6 в указанную область, например адреса с тем же локальным или локальным префиксом сайта. Этот параметр сокета позволяет приложениям размещать ограничения доступа к сокетам IPv6. Такие ограничения позволяют приложению, работающему в частной локальной сети, просто и надежно защищать себя от внешних атак. Этот параметр сокета расширяет или ограничивает область прослушивания сокета, обеспечивая неограниченный доступ от общедоступных и частных пользователей, если это необходимо, или ограничивает доступ только к тому же сайту, как это необходимо. Этот параметр сокета определил уровни защиты, указанные IPProtectionLevel в перечислении.

IPv6Only 27

Указывает, ограничен ли сокет, созданный для семейства адресов AF_INET6, связью через IPv6. Сокеты, созданные для семейства адресов AF_INET6, можно использовать для связи и через IPv6, и через IPv4. Некоторым приложениям может быть нужно ограничивать использование сокета, созданного для семейства адресов AF_INET6, связью через IPv6. Если это значение не равно нулю (по умолчанию в Windows), сокет, созданный для семейства адресов AF_INET6, можно использовать только для отправки и получения пакетов IPv6. Если это значение равно нулю, сокет, созданный для семейства адресов AF_INET6, может использоваться для отправки и получения пакетов IPv6 и IPv4. Обратите внимание, что возможность взаимодействия с адресами IPv4 требует использования адресов, сопоставленных по IPv4. Этот параметр сокета поддерживается в Windows Vista и более поздних версиях.

Broadcast 32

Разрешить отправку широковещательных сообщений в сокет.

UseLoopback 64

Обходить оборудование, когда это возможно.

Linger 128

Linger on close, если неотступные данные присутствуют.

OutOfBandInline 256

Получает данные вне диапазона в обычном потоке данных.

SendBuffer 4097

Указывает общее пространство буфера для каждого сокета, зарезервированное для отправки. Это не связано с максимальным размером сообщения или размером окна TCP.

ReceiveBuffer 4098

Указывает общее пространство буфера для каждого сокета, зарезервированное для получения. Это не связано с максимальным размером сообщения или размером окна TCP.

SendLowWater 4099

Указывает низкую метку воды для Send операций.

ReceiveLowWater 4100

Указывает низкую метку воды для Receive операций.

SendTimeout 4101

Отправка времени ожидания. Этот параметр применяется только к синхронным методам; он не влияет на асинхронные методы, такие как BeginSend(Byte[], Int32, Int32, SocketFlags, AsyncCallback, Object) метод.

ReceiveTimeout 4102

Получение времени ожидания. Этот параметр применяется только к синхронным методам; он не влияет на асинхронные методы, такие как BeginSend(Byte[], Int32, Int32, SocketFlags, AsyncCallback, Object) метод.

Error 4103

Возвращает состояние ошибки и очищает его.

Type 4104

Возвращает тип сокета.

ReuseUnicastPort 12295

Указывает, что система должна отложить распределение временных портов для исходящих подключений. Это эквивалентно использованию параметра сокета Winsock2 SO_REUSE_UNICASTPORT.

UpdateAcceptContext 28683

Обновляет свойства принятого сокета с помощью существующих сокетов. Это эквивалентно использованию параметра сокета Winsock2 SO_UPDATE_ACCEPT_CONTEXT и поддерживается только в сокетах, ориентированных на подключение.

UpdateConnectContext 28688

Обновляет свойства подключенного сокета с помощью существующих сокетов. Это эквивалентно использованию параметра сокета Winsock2 SO_UPDATE_CONNECT_CONTEXT и поддерживается только в сокетах, ориентированных на подключение.

MaxConnections 2147483647

Не поддерживается; вызовет SocketException исключение, если используется.

Примеры

В следующем примере кода используется это перечисление для задания параметров сокета.

// The socket will linger for 10 seconds after Socket.Close is called.
var lingerOption = new LingerOption(true, 10);
s.SetSocketOption(SocketOptionLevel.Socket, SocketOptionName.Linger, lingerOption);
' The socket will linger for 10 seconds after Socket.Close is called.
Dim lingerOption As New LingerOption(True, 10)
s.SetSocketOption(SocketOptionLevel.Socket, SocketOptionName.Linger, lingerOption)

Комментарии

Перечисление SocketOptionName определяет имя каждого Socket параметра конфигурации. Сокеты можно настроить с помощью Socket.SetSocketOption метода.

Применяется к

См. также раздел