Проблема заключалась в следующем: вы можете отправить текст, не кодируя его в байтах. Для текста "hola" правы 4 байта, но для "68 6f 6c 61" должна быть длина "11" байтов. Я неправильно понял протокол, поскольку он описывается как «последовательность байтов» для <data>
. Действительно, доставка по TCP - это поток байтов!
- <data> is the job body -- a sequence of bytes of length <bytes> from the previous line.
Итак, правильные команды:
$ telnet
telnet> open localhost 11300
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
put 0 0 1 4
hola
INSERTED 1
put 0 0 1 11
68 6f 6c 61
INSERTED 2