Hello

On Tue, Jul 19, 2022 at 10:01 PM Kiran Shila <[email protected]> wrote:
> > but there are use cases where multiple GBytes of data are moved through
> > katcp
> This is a crazy to me as clearly the protocol is not meant for this
> purpose.

So  quite a number of people have worked on the katcp protocol specification
over the last decade or so, and everybody has of course had a slightly different
view on it, so what it "meant" to do is fuzzy.

But I always intended it to be plain text where possible but able to handle
arbitrary data where necessary.

> > Could the problem have been solved without breaking the ascii
> > requirement - sure. Why was it not? I don't know.
>
> Again - why even have a formal specification if official implementations
> break it?

The BNF defines an argument as one or more characters, of which 7 have to be
escaped. It does not define what a character is, and now looking back
that is a deficiency, but to my mind a "control character" or "non
printable character"
are a subset of "character". Maybe "octet" would have been better...

Then there is also "Where message parameters are described
as `human-readable' the content of the parameters should be restricted to
plain ASCII text" (pg11) but that is for parameters which are documented
to be human readable - and I'd be surprised if all the parameters
"?write" and "!read" are described as such.

regards

marc






>
> > Changing the tcpborphserver behaviour of read/write in a way that is not
> > backwards compatible with casperfpga (and every other preexisting casper
> > katcp client) seems unlikely to me to be a goer. Obviously you could do
> > it to meet your needs/desires, but this code isn't going to ever get
> > merged into the main repos/branches (you might reasonable ask whether
> > this matters, given how many distinct, incompatible code branches are
> > already lying around). In any case, making new bulk transfer commands
> > which are compliant, and work with the client you're building seems like
> > a path which should keep everyone happy(?)
>
> For sure. I wasn't expecting anyone to actually update read and write, I
> was just providing an alternative should anyone want. Having a third
> option, (maybe `bulkread` and `bulkwrite`) that follows the spec sounds
> like it may be worth it.
>
> If we're actually worried about throughput, there are a number of
> solutions that pack binary data into plaintext relatively efficiently.
> Base64 is common in the web space, as well as compressing and then
> packing. Again, it seems like it would be better just to open another
> socket and not deal with the hassle.
>
> -Kiran
>
> --
> You received this message because you are subscribed to the Google Groups 
> "[email protected]" group.
> To unsubscribe from this group and stop receiving emails from it, send an 
> email to [email protected].
> To view this discussion on the web visit 
> https://groups.google.com/a/lists.berkeley.edu/d/msgid/casper/af99003f-574f-4593-3a08-995a3dbdbff0%40kiranshila.com.



--
https://katfs.kat.ac.za/~marc/

-- 
You received this message because you are subscribed to the Google Groups 
"[email protected]" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/a/lists.berkeley.edu/d/msgid/casper/CAGrhWaS9Si3LESq76eoEezmrU6geXYjkHV3CdzPeMr5j_Xzd4w%40mail.gmail.com.

Reply via email to