[elvin-discuss] Re: Elvin spec

David Arnold 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:

TCP.No-Delay
  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

TCP.Enable-Nagle
  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.

TCP.Coalesce-Delay
  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

  TCP.Wait-A-Short-Time-In-Attempt-To-Merge-Small-Outgoing-Packets

might be good.  maybe ...

  TCP.Wait-To-Coalesce-Packets
  TCP.Try-To-Coalesce-Packets
  TCP.Try-To-Merge-Packets

or
  TCP.Minimize-Latency-At-Cost-Of-Bandwith
  TCP.Minimize-Latency

or
  TCP.Send-Packets-Immediately
  TCP.Send-Immediately
  TCP.Send-ASAP

i'm almost liking the last group best ...

thoughts?




d


More information about the elvin-discuss mailing list