git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [RFC] multi_ack protocol v2

From
Johannes Schindelin <johannes.schindelin@gmx.de>
Date
Oct 27, 2005, 10:54 UTC
Message-ID
<Pine.LNX.4.63.0510271248590.3663@wbgn013.biozentrum.uni-wuerzburg.de>
In-Reply-To
<17248.39333.181379.615274@cargo.ozlabs.ibm.com>
Hi,
On Thu, 27 Oct 2005, Paul Mackerras wrote:
Show 9 quoted lines
> Johannes Schindelin writes:
> 
> > after thinking about my earlier approach, I think there's a better, less 
> > intrusive, and all in all just simpler approach:
> 
> How many round-trips does it take?  When you're on the other side of
> the Pacific from the server you care about round-trips. :)  One of the
> nice things about rsync is that it does everything with only 1.5
> round-trips.

The plan is to reuse the existing framework. It sends 32 "have" messages, then a flush, then again 32 "have" messages, flush again, then reads all answers until a "NAK". The last 3 steps are repeated over and over again.

That means that there are always at least 32 "have" messages on the wire (which is described in the source code as "one window ahead"), i.e. it is about 32x faster than simple "have" -> "NAK/ACK" handshakes.

Ciao, Dscho

Previous: Paul Mackerras
Message 10 of 10 in “[RFC] multi_ack protocol v2”
  1. Johannes SchindelinOct 27, 2005
  2. Junio C HamanoOct 27, 2005
  3. Johannes SchindelinOct 27, 2005
  4. Sergey VlasovOct 27, 2005
  5. Johannes SchindelinOct 27, 2005
  6. Junio C HamanoOct 27, 2005
  7. Johannes SchindelinOct 27, 2005
  8. Junio C HamanoOct 27, 2005
  9. Paul MackerrasOct 27, 2005
  10. Johannes SchindelinOct 27, 2005

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.