[elvin-discuss] Re: Elvin spec
david at mantara.com
Mon Dec 18 06:29:25 CST 2006
-->"Matt" == Matthew Phillips <matt at mattp.name> writes:
Matt> Hi guys, quick suggestion: how does
Matt> "Transport.TCP.Coalesce-Delay" sound as the name of the
Matt> connection option to set the TCP coalesce delay option?
a few comments:
there's no need for the "Transport" on the front: the names of
protocol modules are ok as top-level namespace elements.
TCP is fine, good, and matches existing practice.
"Coalesce-Delay" is the hard part :-)
here's a summary of the thinking thus far:
Pro: basically matches the name of the socket option, so it will have
some familiarity for those who have TCP experience.
Con: the value is a negative (ie. No-Delay, not Do-Delay), which makes
it constantly painful to figure out whether you want its value to
be 1 or 0
Pro: includes name of algorithm, which makes finding explanations of
what it does Google-friendly.
Con: any Googled reference to "nagle" will only talk about the theory,
and TCP_NODELAY, which isn't useful in deciding whether you want
it 1 or 0.
Con: it's a bit of an obscure, hairy-unix-hacker name, that many
people who know what TCP_NODELAY does won't even recognise.
Pro: matches current deployed systems, almost
Con: difficult to know what the hell it might mean
Con: does not really make sense. The option doesn't coalesce delays,
it introduces a small delay while coalescing packets.
Con: not clear if it should be 1 or 0, again.
on balance, i'm still leaning towards a new name, trying to reflect what
actually happens. something shorter than
might be good. maybe ...
i'm almost liking the last group best ...
More information about the elvin-discuss