Jump to content

  • Log In with Google      Sign In   
  • Create Account

#ActualVReality

Posted 03 September 2013 - 08:00 AM

I am basically looking for input on what is a good ACK/NACK:ing strategy, what you guys have used in the past, what you know works, etc.

Last time I wrote a reliability layer, it was essentially your option C - but without an explicit missing-nack notification.

 

Let's say a packet gets lost on the way from Alice to Bob.  If Bob ever receives another packet, he'll send around 16 nacks for the missing packet before it's ready to fall off his ack/nack mask. 

 

That means at least sixteen consecutive packets would have to be dropped/delayed on the way back from Bob to Alice in order for Alice to then get a packet with an ack/nack history that didn't cover the packets waiting for acks in her sent-cache.

 

In the context of high performance, quick response networking, it seems reasonable to consider that a broken connection.


#1VReality

Posted 04 August 2013 - 08:20 PM

I am basically looking for input on what is a good ACK/NACK:ing strategy, what you guys have used in the past, what you know works, etc.

Last time I wrote a reliability layer, it was essentially your option C.  But I didn't feel the scheme needed a "got no ack/nack for packet #X" message.

 

Let's say a packet gets lost on the way to "the recipient".  If the recipient ever receives another packet, it'll send around 16 nacks for the missing packet before it's ready to fall off its ack/nack mask. 

 

So at least sixteen consecutive packets would have to be dropped/delayed on the way back from the recipient to the sender in order for the sender to then get a packet with an ack/nack history that didn't cover the packets waiting for acks in it's send buffer.

 

I believe I just considered that a broken connection.


PARTNERS