* A TLP implementation question
@ 2018-02-14 0:27 hiren panchasara
2018-02-14 1:11 ` Yuchung Cheng
0 siblings, 1 reply; 3+ messages in thread
From: hiren panchasara @ 2018-02-14 0:27 UTC (permalink / raw)
To: netdev
[-- Attachment #1: Type: text/plain, Size: 641 bytes --]
Looking at current net-next to understand an aspect of TLP (tail loss
probe) implementation.
https://tools.ietf.org/html/draft-ietf-tcpm-rack-02 is the source of
truth now for TLP and 6.2.1. Phase 1: Scheduling a loss probe
Step 1: Check conditions for scheduling a PTO. has following as one of
the conditions:
(d) The most recently transmitted data was not itself a TLP probe
(i.e. a sender MUST NOT send consecutive TLP probes)
I would appreciate if someone can help me trace how current code is
trying to enforce this requirement. How does it check/track that the
last (re)transmitted packet was a tlp probe.
Thanks in advance,
Hiren
[-- Attachment #2: Type: application/pgp-signature, Size: 603 bytes --]
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: A TLP implementation question
2018-02-14 0:27 A TLP implementation question hiren panchasara
@ 2018-02-14 1:11 ` Yuchung Cheng
2018-02-14 7:39 ` hiren panchasara
0 siblings, 1 reply; 3+ messages in thread
From: Yuchung Cheng @ 2018-02-14 1:11 UTC (permalink / raw)
To: hiren panchasara; +Cc: netdev, Neal Cardwell
On Tue, Feb 13, 2018 at 4:27 PM, hiren panchasara
<hiren@strugglingcoder.info> wrote:
>
> Looking at current net-next to understand an aspect of TLP (tail loss
> probe) implementation.
>
> https://tools.ietf.org/html/draft-ietf-tcpm-rack-02 is the source of
> truth now for TLP and 6.2.1. Phase 1: Scheduling a loss probe
> Step 1: Check conditions for scheduling a PTO. has following as one of
> the conditions:
> (d) The most recently transmitted data was not itself a TLP probe
> (i.e. a sender MUST NOT send consecutive TLP probes)
this is done by
1) calling tcp_write_xmit(push_one==2) in tcp_send_loss_probe()
2) avoid calling tcp_schedule_loss_probe() if push_one == 2 in tcp_write_xmit()
3) abort if one TLP probe is inflight by checking tlp_high_seq in
tcp-send_loss_probe()
consequently the sender will never schedule a PTO upon sending a probe
(new or rtx) to avoid consecutive probes.
hth.
>
> I would appreciate if someone can help me trace how current code is
> trying to enforce this requirement. How does it check/track that the
> last (re)transmitted packet was a tlp probe.
>
> Thanks in advance,
> Hiren
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: A TLP implementation question
2018-02-14 1:11 ` Yuchung Cheng
@ 2018-02-14 7:39 ` hiren panchasara
0 siblings, 0 replies; 3+ messages in thread
From: hiren panchasara @ 2018-02-14 7:39 UTC (permalink / raw)
To: Yuchung Cheng; +Cc: netdev, Neal Cardwell
[-- Attachment #1: Type: text/plain, Size: 1157 bytes --]
On 02/13/18 at 05:11P, Yuchung Cheng wrote:
> On Tue, Feb 13, 2018 at 4:27 PM, hiren panchasara
> <hiren@strugglingcoder.info> wrote:
> >
> > Looking at current net-next to understand an aspect of TLP (tail loss
> > probe) implementation.
> >
> > https://tools.ietf.org/html/draft-ietf-tcpm-rack-02 is the source of
> > truth now for TLP and 6.2.1. Phase 1: Scheduling a loss probe
> > Step 1: Check conditions for scheduling a PTO. has following as one of
> > the conditions:
> > (d) The most recently transmitted data was not itself a TLP probe
> > (i.e. a sender MUST NOT send consecutive TLP probes)
> this is done by
> 1) calling tcp_write_xmit(push_one==2) in tcp_send_loss_probe()
> 2) avoid calling tcp_schedule_loss_probe() if push_one == 2 in tcp_write_xmit()
> 3) abort if one TLP probe is inflight by checking tlp_high_seq in
> tcp-send_loss_probe()
>
> consequently the sender will never schedule a PTO upon sending a probe
> (new or rtx) to avoid consecutive probes.
>
> hth.
Thanks a lot, Yuchung! I was missing this simple and now obvious thing
of not scheduling a pto upon sending a tlp. :-)
Cheers,
Hiren
[-- Attachment #2: Type: application/pgp-signature, Size: 603 bytes --]
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2018-02-14 7:39 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-02-14 0:27 A TLP implementation question hiren panchasara
2018-02-14 1:11 ` Yuchung Cheng
2018-02-14 7:39 ` hiren panchasara
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).