Проблема здесь в том, что я вижу, что данные записываются в сокет, но они не ВСЕГДА отправляются.
Вот фрагмент кода
ByteBuffer writeBuffer = ByteBuffer.allocate(8192);
writeBuffer.clear();
writeBuffer.put("heartbeat".getBytes());
writeBuffer.flip();
LOG.debug("is connected: " + socketChannel.isConnected());
int bytesWritten = 0;
if (key.isWritable()) {
while (writeBuffer.hasRemaining()) {
bytesWritten += socketChannel.write(writeBuffer);
}
}
Я использую TCPMonчтобы увидеть, если фактические данные записываются в сокет - что делает.
Но с помощью WireShark (другого инструмента мониторинга сети) я не вижу, как пакет проходит через NIC.
Буду признателен за любую помощь