Messages in this thread | | | From | Eric Dumazet <> | Date | Fri, 14 Jun 2019 07:25:23 -0700 | Subject | Re: [PATCH net v2] tcp: avoid creating multiple req socks with the same tuples |
| |
On Fri, Jun 14, 2019 at 7:04 AM maowenan <maowenan@huawei.com> wrote: > I agree that this is a special case. > I propose one point about the sequence of synack, if two synack with two different > sequence since the time elapse 64ns, this issue disappear. > > tcp_conn_request->tcp_v4_init_seq->secure_tcp_seq->seq_scale > static u32 seq_scale(u32 seq) > { > /* > * As close as possible to RFC 793, which > * suggests using a 250 kHz clock. > * Further reading shows this assumes 2 Mb/s networks. > * For 10 Mb/s Ethernet, a 1 MHz clock is appropriate. > * For 10 Gb/s Ethernet, a 1 GHz clock should be ok, but > * we also need to limit the resolution so that the u32 seq > * overlaps less than one time per MSL (2 minutes). > * Choosing a clock of 64 ns period is OK. (period of 274 s) > */ > return seq + (ktime_get_real_ns() >> 6); > } > > So if the long delay larger than 64ns, the seq is difference.
The core issue has nothing to do with syncookies.
Are you sure you really understand this stack ?
| |