support DirectByteBuffer on socket.sendByteBuffer()

In case a DirectByteBuffer is passed to socket.sendByteBuffer(), capture the bytes, which I assume is aligned with the current architecture as I see a similar System.arrayCopy() in case of array ByteBuffers when arrayoffset != 0