Класс ExtendedSocketOptions
public final class ExtendedSocketOptions extends Object
StandardSocketOptions. Эти параметры могут быть специфичны для платформы.- Since:
- 1.8
Краткое описание полей
| Модификатор и тип | Поле | Описание |
|---|---|---|
static final SocketOption<Integer> |
SO_INCOMING_NAPI_ID |
Идентифицирует очередь приема, в которой был получен последний входящий пакет для сокета. |
static final SocketOption<UnixDomainPrincipal> |
SO_PEERCRED |
Удостоверения клиента доменной сокет-пары Unix. |
static final SocketOption<Integer> |
TCP_KEEPCOUNT |
Максимальное ограничение повторной передачи Keep-Alive. |
static final SocketOption<Integer> |
TCP_KEEPIDLE |
Время простоя Keep-Alive. |
static final SocketOption<Integer> |
TCP_KEEPINTERVAL |
Интервал времени повторной передачи Keep-Alive. |
static final SocketOption<Boolean> |
TCP_QUICKACK |
Отключение отложенных подтверждений. |
Краткое описание методов
Подробное описание полей
TCP_QUICKACK
public static final SocketOption<Boolean> TCP_QUICKACK
Этот параметр сокета может использоваться для уменьшения или отключения отложенных подтверждений (ACK). Когда TCP_QUICKACK включен, ACK отправляются немедленно, а не откладываются, если это необходимо в соответствии с нормальной работой TCP. Этот параметр не является постоянным, он только включает или выключает режим TCP_QUICKACK. Последующие операции протокола TCP снова выключат/включат режим TCP_QUICKACK в зависимости от внутренней обработки протокола и таких факторов, как отключение таймеров отложенных подтверждений и передача данных, поэтому этот параметр необходимо установить с помощью setOption после каждой операции TCP на данном сокете.
Значение этого параметра сокета — Boolean, представляющее, включен параметр или выключен. Параметр сокета специфичен для потоковых сокетов, использующих протокол TCP/IP. Точные значения этого параметра сокета зависят от типа сокета и системы.
- Since:
- 10
TCP_KEEPIDLE
public static final SocketOption<Integer> TCP_KEEPIDLE
Значение этого параметра сокета — Integer, представляющее количество секунд простоя, прежде чем Keep-Alive инициирует зондирование. Параметр сокета специфичен для потоковых сокетов, использующих протокол TCP/IP. Точные значения этого параметра сокета зависят от системы.
Когда параметр SO_KEEPALIVE включен, TCP зондирует подключение, которое простаивает в течение некоторого времени. Значение по умолчанию для этого периода простоя зависит от системы, но обычно составляет 2 часа. Параметр TCP_KEEPIDLE может использоваться для изменения этого значения для данного сокета.
- Since:
- 11
TCP_KEEPINTERVAL
public static final SocketOption<Integer> TCP_KEEPINTERVAL
Значение этого параметра сокета — Integer, представляющее количество секунд ожидания перед повторной передачей зондирования Keep-Alive. Параметр сокета специфичен для потоковых сокетов, использующих протокол TCP/IP. Точные значения этого параметра сокета зависят от системы.
Когда параметр SO_KEEPALIVE включен, TCP зондирует подключение, которое простаивает в течение некоторого времени. Если удаленная система не отвечает на зондирование Keep-Alive, TCP повторно отправляет зондирование после некоторого времени. Значение по умолчанию для этого интервала повторной передачи зависит от системы, но обычно составляет 75 секунд. Параметр TCP_KEEPINTERVAL может использоваться для изменения этого значения для данного сокета.
- Since:
- 11
TCP_KEEPCOUNT
public static final SocketOption<Integer> TCP_KEEPCOUNT
Значение этого параметра сокета — Integer, представляющее максимальное количество зондирований Keep-Alive, которые должны быть отправлены. Параметр сокета специфичен для потоковых сокетов, использующих протокол TCP/IP. Точные значения этого параметра сокета зависят от системы.
Когда параметр SO_KEEPALIVE включен, TCP зондирует подключение, которое простаивает в течение некоторого времени. Если удаленная система не отвечает на зондирование Keep-Alive, TCP повторно отправляет зондирование определенное количество раз, прежде чем подключение считается прерванным. Значение по умолчанию для этого лимита повторной передачи зондирований Keep-Alive зависит от системы, но обычно составляет 8. Параметр TCP_KEEPCOUNT может использоваться для изменения этого значения для данного сокета.
- Since:
- 11
SO_INCOMING_NAPI_ID
public static final SocketOption<Integer> SO_INCOMING_NAPI_ID
Значение этого параметра сокета — положительное Integer, которое идентифицирует очередь приема, которую приложение может использовать для разделения входящих потоков между потоками на основе идентификатора очереди. Значение равно 0, когда сокет не связан, пакет не был получен или, более общо, когда нет очереди приема для идентификации. Параметр сокета поддерживается как потоковыми, так и дейтаграмными сокетами.
Параметр сокета является только для чтения, и попытка установить параметр сокета выбросит SocketException.
- API Note:
- Сетевые устройства могут иметь несколько очередей или каналов для передачи и приема сетевых пакетов. Параметр сокета
SO_INCOMING_NAPI_IDпредоставляет подсказку приложению, чтобы указать очередь приема, на которую направлены входящее соединение сокета или пакеты для этого соединения. Приложение может воспользоваться этим, обрабатывая все соединения сокетов, назначенные определенной очереди, в одном потоке. - Since:
- 15
SO_PEERCRED
public static final SocketOption<UnixDomainPrincipal> SO_PEERCRED
Значение этого параметра сокета — UnixDomainPrincipal, представляющее удостоверения клиента, подключенного к сокету доменной пары Unix. Удостоверения соответствуют тем, которые применялись в момент первоначального подключения или приема сокета.
Параметр сокета является только для чтения, и попытка установить параметр сокета выбросит SocketException. SocketException также выбрасывается при попытке получить значение параметра сокета на неподключенном сокете доменной пары Unix.
- Since:
- 16
© 1993, 2021, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/17/docs/api/jdk.net/jdk/net/ExtendedSocketOptions.html