Designing Network Protocols
journal.paul.querna.org
Designing Network Protocols
1–10 of 24 posts
Re: Designing Network Protocols
#2Re: Designing Network Protocols
#3I think the short version is: in the past 5 years, simple wire-oriented serialisation formats have become much more common. At the time you had your pick of ASN (humongous) or Thrift (brand new).
I enjoyed reading through his thought process for designing a simple protocol which is:
* Easy to use (requiring little/no additional libraries)
* Easy to extend (simple keyword/value extensions)
* Immune to changes in technology
* (above all) easy to understandRe: Designing Network Protocols
#4I think the short version is: in the past 5 years, simple wire-oriented serialisation formats have become much more common. At the time you had your pick of ASN (humongous) or Thrift (brand new).
Re: Designing Network Protocols
#5Unfortunately serviceability is not normally high in the initial product requirements, but I've seen a direct correlation between customer satisfaction in support and products/protocols/designs with good serviceability.
Re: Designing Network Protocols
#6I think the short version is: in the past 5 years, simple wire-oriented serialisation formats have become much more common. At the time you had your pick of ASN (humongous) or Thrift (brand new).
Actually, the short version is: I wanted it easily debuggable by a network admin. (It's a point he made repeatedly). All the other arguments were moot.
Re: Designing Network Protocols
#7Earlier quoted context omitted.
Actually, the short version is: I wanted it easily debuggable by a network admin. (It's a point he made repeatedly). All the other arguments were moot.
So the network protocol must be in text so that a network admin could debug it? This is absurd.
I get the rationale. But I think it's weak, and this entire post is lots of fluff around that core rationale. (I've been writing extensible binary protocols back in 1988 - and it never struck me as particularly difficult even back then.)
Re: Designing Network Protocols
#8I think the short version is: in the past 5 years, simple wire-oriented serialisation formats have become much more common. At the time you had your pick of ASN (humongous) or Thrift (brand new).
I don't believe a tl;dr is necessary for this short article. I enjoyed reading through his thought process for designing a simple protocol which is: * Easy to use (requiring little/no additional libraries) * Easy to extend (simple keyword/value extensions) * Immune to changes in technology * (above all) easy to understand
That said, I think he didn't want a binary format in any case -- his "doing it again today" remarks point to JSON.
Re: Designing Network Protocols
#9I think the short version is: in the past 5 years, simple wire-oriented serialisation formats have become much more common. At the time you had your pick of ASN (humongous) or Thrift (brand new).
Some people just like ASCII, human readable protocols. There's nothing wrong with that, but it's a little silly to suggest that the options for a packed binary encoding in 2007 were limited because Thrift and Protocol Buffers were too new.
Re: Designing Network Protocols
#10Earlier quoted context omitted.
Actually, the short version is: I wanted it easily debuggable by a network admin. (It's a point he made repeatedly). All the other arguments were moot.
So the network protocol must be in text so that a network admin could debug it? This is absurd.
It's obviously doable, but it's very painful.