mirror of
https://github.com/soypat/lneto.git
synced 2026-08-21 06:59:04 +00:00
tcp: retransmit logic rollback (#61)
* tcp: remove retransmit logic entirely; add duplicate ack counting to ControlBlock * retransmit implemented in nice simple straightforward way * narrow down retransmission cases * remove old timing tests * add ControlBlock retransmit test * add failing handler test * reworking payload length semantic meaning in code * fix establish conn logic * clean up tests and add TCB dupack generation and test it * catch pending retransmit satisfy in test * add fuzz test for control block * bugfix: be more strict in what is considered dupack * add IncomingIsDupACK docs * limit queue of retransmits * protect retransmit overflow from incorrectly updating nxt
This commit is contained in:
@@ -17,3 +17,11 @@ func Prand32[T ~uint32](seed T) T {
|
||||
seed ^= seed << 5
|
||||
return seed
|
||||
}
|
||||
|
||||
// Prand32 generates a pseudo random number from a seed.
|
||||
func Prand64[T ~uint64](seed T) T {
|
||||
seed ^= seed << 13
|
||||
seed ^= seed >> 7
|
||||
seed ^= seed << 17
|
||||
return seed
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user