New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Rename "retransmittable" frames and packets #1595
Comments
I'd throw my vote to Reliable. Reliable frames contain data/information that needs to be reliably delivered. and reliable packets contain reliable frames. |
:~) |
Reliable frames are no good - they are not reliable at all. They get lost and are never seen again. Committed frames convey the fact that once they are sent, they are committed to get the information delivered either by themselves or by those that follow in their path. Not necessarily the same information, but at least the same kind. It's like a treaty where one government honors decistions of past governments (but of course not all governments are commited and the same is true for frames). |
Ooh, I like Wack frames. |
Aside from Wack, I'd prefer something like "ACK-eliciting". In my view, it should rather not be called "ACKable", because even an ACK frame expects an acknowledgement. IIUC, we are looking for a term for frames that invokes an early acknowledgement. I am not sure if "reliable" or "committed" is a good term, because we have PING, which is not something that is guaranteed to be delivered. Instead, it is something that just elicits an acknowledgement. The sender has the total freedom of deciding whether or not to resend an PING if it does not see an acknowledgement. |
On PING: ACK-inducing would be an alternative to ACK-eliciting. |
On Wack: It would be more precisely to name them Whack frames because like whack-a-mole, they keep popping up again in a new form. Mole might actually be the correct term here. |
Interesting to look back at this after the discussion of flow control. Take the MAX DATA frame. It does elicit an advertisement. It may be retransmitted, but really should not. Instead, if the packet carrying the frame is lost, the "receiver" (sender of MAX DATA) should check whether it already sent a MAX DATA frame carrying a higher limit, in which case there is no need for retransmission. If the frame is the newest, it should probably still not be retransmitted as is -- there may be a need to check create a new frame containing the latest MAX DATA value. So the MAX DATA frame elicits ACKS, its loss should be detected, but how retransmission proceeds depends on the state of the connection... |
I like reliable for frames like MAX DATA, but you really need to define reliable... |
I believe Martin implicitly suggested "outstanding" by writing PR #1652 |
And another would be "unacked" indicating it has not been acknowledged, but will be. |
Victor suggested "tracked" FYI |
I say we use "ackent". |
I was also considering that, but didn't fully convince myself. |
+1 for wack :-) |
I think ACK-eliciting (or some such) is both technically correct and
obviously understandable. Something like "wack", "tracked", "ackent" don't
have obvious english language interpretations and hence require another
layer of jargon/indirection in order to understand.
…On Mon, Nov 5, 2018 at 5:50 PM, Lars Eggert ***@***.***> wrote:
+1 for wack :-)
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
<#1595 (comment)>,
or mute the thread
<https://github.com/notifications/unsubscribe-auth/ASp6yk87O80LAb11cnJzjjGeOs0D1AoKks5usOrsgaJpZM4VbQ_8>
.
|
I disagree. While wack (not an adjective!) and tracked (only implies action tangentially) are indeed poor choices, ackent belongs to a family of English adjectives ending with ent wherein ent implies causation or causing action related to the suffixed part of the word:
Ackent: causing ACKs. Sounds logical and English to me. |
On 11/11/2018 7:39 AM, Dmitri Tikhonov wrote:
Something like "wack", "tracked", "ackent" don't have obvious
english language interpretations
I disagree. While /wack/ (not an adjective!) and /tracked/ (only
implies action tangentially) are indeed poor choices, /ackent/ belongs
to a family of English adjectives ending with *ent* wherein *ent*
implies action related to the suffixed part of the word:
* astringent
* indulgent
* pestilent
* propellent
* prurient
* quiescent
* somnolent
* truculent
* urgent
*Ackent*: causing ACKs. Sounds logical and English to me.
I would rather use "truculent"
…-- Christian Huitema
|
On Sat, Nov 10, 2018 at 4:39 PM, Dmitri Tikhonov ***@***.***> wrote:
Something like "wack", "tracked", "ackent" don't have obvious english
language interpretations
I disagree. While *wack* (not an adjective!) and *tracked* (only implies
action tangentially) are indeed poor choices, *ackent* belongs to a
family of English adjectives ending with *ent* wherein *ent* implies
action related to the suffixed part of the word:
- astringent
- indulgent
- pestilent
- propellent
- prurient
- quiescent
- somnolent
- truculent
- urgent
*Ackent*: causing ACKs. Sounds logical and English to me.
While I appreciated that it is possible to construct a rule by which
"ackent" means "causes an ACK", it's simply the case that "ackent" is not a
word. When I read the word "ackent" it does not in any way trigger the
meaning "causes an ACK". As such, it no different to me than any other
piece of jargon. It's easy enough to memorize what a piece of jargon means,
so it's no different in this way than any number of other
terms. ACK-eliciting (or some such), on the other hand, is unambiguous and
does not require memorization.
|
On Sat, Nov 10, 2018 at 7:51 PM, Ryan Hamilton ***@***.***> wrote:
On Sat, Nov 10, 2018 at 4:39 PM, Dmitri Tikhonov ***@***.***
> wrote:
> Something like "wack", "tracked", "ackent" don't have obvious english
> language interpretations
>
> I disagree. While *wack* (not an adjective!) and *tracked* (only implies
> action tangentially) are indeed poor choices, *ackent* belongs to a
> family of English adjectives ending with *ent* wherein *ent* implies
> action related to the suffixed part of the word:
>
> - indulgent
>
> It's perhaps worth pointing out that an "indulgent" person is a person
who indulges. Which might imply that an ackent packet is packet that
ACKs... meaning a packet which contains an ACK as opposed to a packet which
elicits an ACK :/
|
Sure it is: you just used it several times above. A dictionary is not a legal document.
I listed "indulgent" thinking of being "indulgent to" -- that is, deriving from the transitive version of the verb "to indulge" (which is the first meaning). My thinking was that being indulgent to someone is to invite (cause) more behavior of the same kind. Thinking more about this, however, makes me realize that this adjective is not part of the group listed about, as "indulgent" does not cause indulgence.
I'll see how you laugh when the "ack-eliciting" beast lands and you have to a) say or think it and b) make enums like |
ACK-inducing, -prompting, -triggering, -requesting |
Ackigenous |
Thanks for the discussion, folks. Unless people are really against it, I propose we go with ack-eliciting. |
The word retransmittable is used in the recovery draft for both frames and packets that cause an ACK frame to be sent in response to their receipt.
This is really misleading, because QUIC never retransmits packets(except maybe connection close) and only sometimes retransmits frames.
Ideally we'd have different words for the frames and the packets containing those frames, but at a minimum I want to stop using retransmittable.
Previous suggestions:
I'm want to change retransmittable to something else before the next drafts, so please suggest alternatives now and I'll write a PR for whatever people hate the least.
The text was updated successfully, but these errors were encountered: