Как получить данные TCP OOB (срочные) - PullRequest
0 голосов
/ 28 декабря 2018

Я знаю, что java имеет ограниченную поддержку данных TCP OOB, но есть ли у кого-нибудь прием, применимый к netty для получения таких данных?

Я пытаюсь реализовать протокол SLE CCSDS в Java, и они используют TCPсрочные данные как механизм прерывания: сервер отправит клиенту однобайтовое срочное сообщение, чтобы клиент прервал соединение.Один байт является диагностическим кодом (т. Е. Причиной, по которой сервер хочет разорвать соединение), но я мог бы жить без него, если невозможно прочитать его, мне просто нужно знать, что оно получено.

Если надежного способа не существует, не могли бы вы указать, как настроить SO_OOBINLINE, поддерживаемый java, для возможности оперативного получения срочных данных?Я могу попытаться вставить обработчик, который будет обнаруживать «одиночные» байты (обычно все сообщения SLE ISP1 имеют 8-байтовый заголовок) и генерировать событие в конвейере, когда такой байт обнаружен.

...