All of lore.kernel.org
 help / color / mirror / Atom feed
* TCP fast open using experimental TCP option?
@ 2017-04-25 19:08 Tom Herbert
  2017-04-25 21:00 ` Yuchung Cheng
  2017-04-26  0:13 ` Eric Dumazet
  0 siblings, 2 replies; 4+ messages in thread
From: Tom Herbert @ 2017-04-25 19:08 UTC (permalink / raw)
  To: Linux Kernel Network Developers, Jerry Chu

Looks like TCP fast open was using experimental TCP option at some. Is
this still needed? Technically this violates usage requirements of
experimental options. Can this be removed now since there is now an
assigned option number for TFO?

                             case TCPOPT_EXP:
                                /* Fast Open option shares code 254 using a
                                 * 16 bits magic number.
                                 */
                                if (opsize >= TCPOLEN_EXP_FASTOPEN_BASE &&
                                    get_unaligned_be16(ptr) ==
                                    TCPOPT_FASTOPEN_MAGIC)
                                        tcp_parse_fastopen_option(opsize -
                                                TCPOLEN_EXP_FASTOPEN_BASE,
                                                ptr + 2, th->syn, foc, true);
                                break;

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: TCP fast open using experimental TCP option?
  2017-04-25 19:08 TCP fast open using experimental TCP option? Tom Herbert
@ 2017-04-25 21:00 ` Yuchung Cheng
  2017-04-26  0:13 ` Eric Dumazet
  1 sibling, 0 replies; 4+ messages in thread
From: Yuchung Cheng @ 2017-04-25 21:00 UTC (permalink / raw)
  To: Tom Herbert; +Cc: Linux Kernel Network Developers, Jerry Chu

On Tue, Apr 25, 2017 at 12:08 PM, Tom Herbert <tom@herbertland.com> wrote:
> Looks like TCP fast open was using experimental TCP option at some. Is
> this still needed? Technically this violates usage requirements of
> experimental options. Can this be removed now since there is now an
> assigned option number for TFO?
Given that many clients (e.g. android) have not migrated to 4.0
kernels that support TFO opt 34, I would keep it for backward
compatibility for now.

>
>                              case TCPOPT_EXP:
>                                 /* Fast Open option shares code 254 using a
>                                  * 16 bits magic number.
>                                  */
>                                 if (opsize >= TCPOLEN_EXP_FASTOPEN_BASE &&
>                                     get_unaligned_be16(ptr) ==
>                                     TCPOPT_FASTOPEN_MAGIC)
>                                         tcp_parse_fastopen_option(opsize -
>                                                 TCPOLEN_EXP_FASTOPEN_BASE,
>                                                 ptr + 2, th->syn, foc, true);
>                                 break;

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: TCP fast open using experimental TCP option?
  2017-04-25 19:08 TCP fast open using experimental TCP option? Tom Herbert
  2017-04-25 21:00 ` Yuchung Cheng
@ 2017-04-26  0:13 ` Eric Dumazet
  2017-04-26  0:39   ` Tom Herbert
  1 sibling, 1 reply; 4+ messages in thread
From: Eric Dumazet @ 2017-04-26  0:13 UTC (permalink / raw)
  To: Tom Herbert; +Cc: Linux Kernel Network Developers, Jerry Chu

On Tue, 2017-04-25 at 12:08 -0700, Tom Herbert wrote:
> Looks like TCP fast open was using experimental TCP option at some. Is
> this still needed? Technically this violates usage requirements of
> experimental options. Can this be removed now since there is now an
> assigned option number for TFO?
> 
>                              case TCPOPT_EXP:
>                                 /* Fast Open option shares code 254 using a
>                                  * 16 bits magic number.
>                                  */
>                                 if (opsize >= TCPOLEN_EXP_FASTOPEN_BASE &&
>                                     get_unaligned_be16(ptr) ==
>                                     TCPOPT_FASTOPEN_MAGIC)
>                                         tcp_parse_fastopen_option(opsize -
>                                                 TCPOLEN_EXP_FASTOPEN_BASE,
>                                                 ptr + 2, th->syn, foc, true);
>                                 break;

Hi Tom

Client side was updated in linux-4.1 only two years ago.

We lack counters telling how often the experimental option is used.

RFC6994 ( 5.  Migration to Assigned Options ) guidelines are properly
met.

Not sure why we should hurry ?

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: TCP fast open using experimental TCP option?
  2017-04-26  0:13 ` Eric Dumazet
@ 2017-04-26  0:39   ` Tom Herbert
  0 siblings, 0 replies; 4+ messages in thread
From: Tom Herbert @ 2017-04-26  0:39 UTC (permalink / raw)
  To: Eric Dumazet; +Cc: Linux Kernel Network Developers, Jerry Chu

On Tue, Apr 25, 2017 at 5:13 PM, Eric Dumazet <eric.dumazet@gmail.com> wrote:
> On Tue, 2017-04-25 at 12:08 -0700, Tom Herbert wrote:
>> Looks like TCP fast open was using experimental TCP option at some. Is
>> this still needed? Technically this violates usage requirements of
>> experimental options. Can this be removed now since there is now an
>> assigned option number for TFO?
>>
>>                              case TCPOPT_EXP:
>>                                 /* Fast Open option shares code 254 using a
>>                                  * 16 bits magic number.
>>                                  */
>>                                 if (opsize >= TCPOLEN_EXP_FASTOPEN_BASE &&
>>                                     get_unaligned_be16(ptr) ==
>>                                     TCPOPT_FASTOPEN_MAGIC)
>>                                         tcp_parse_fastopen_option(opsize -
>>                                                 TCPOLEN_EXP_FASTOPEN_BASE,
>>                                                 ptr + 2, th->syn, foc, true);
>>                                 break;
>
> Hi Tom
>
> Client side was updated in linux-4.1 only two years ago.
>
> We lack counters telling how often the experimental option is used.
>
> RFC6994 ( 5.  Migration to Assigned Options ) guidelines are properly
> met.
>
> Not sure why we should hurry ?
>
An IETFer was complaining that Linux indiscriminately violates TCP
RFCs and gave the use of experimental options as example. Yuchung
pointed out that this use is actually conformant to the spec so we're
good (thanks Yuchung!).

Tom

>

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2017-04-26  0:45 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-04-25 19:08 TCP fast open using experimental TCP option? Tom Herbert
2017-04-25 21:00 ` Yuchung Cheng
2017-04-26  0:13 ` Eric Dumazet
2017-04-26  0:39   ` Tom Herbert

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.