-
Notifications
You must be signed in to change notification settings - Fork 2
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
State diagram excludes potential algorithms #7
Comments
I don't think it says how you choose probe values or how to progress to the next probe size - that is the search algorithm. It says if you do probe_count successive attempts to find a PLPMTU value without success you should give up. |
Agree.
Agree. But, what if your algorithm don't want to give up then but rather try another probe value x, with PLPMTU < x < PROBED_SIZE? Our current state diagram does not allow that. |
The text has been changed. We think it now allows probing with a new probe size (reseting probe count to 0) which can be either smaller or larger than the first. |
I couldn't find the text that says we could stay in SEARCHING then. Is it in the State section? Here is an example to clarify the issue. MAX_PMTU = local interface MTU = 1500 bytes When entering SEARCHING state, we know BASE_PMTU = 1200 bytes works (PLPMTU = 1200 bytes). |
Problem seems to be on my side. |
I still see a problem here. @tuexen |
On 10/09/2019, 14:52, msvoelker wrote:
I still see a problem here.
@tuexen <https://github.com/tuexen>
We talked about it in the train. Were I able to convince you that
there is a problem?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
<#7?email_source=notifications&email_token=ABYLLESDAULIQQGTRKYQAHLQI6RARA5CNFSM4HM2I46KYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD6LFFIA#issuecomment-529945248>,
or mute the thread
<https://github.com/notifications/unsubscribe-auth/ABYLLEQNK3IVW7VU7H2RMSTQI6RARANCNFSM4HM2I46A>.
What is the anticipated problem?
Gorry
|
@gorryfair OK, after talking to Timo, here is the issue: The condition we are talking about is the condition Assume we are NOT doing a linear upwards search. Then, it can happen that we probe successfully a value which is less than the PMTU. If the searching algorithm now selects as a next candidate a value which is higher than the PMTU and the path is black-holing these probe packets, we would try |
Our state diagram excludes algorithms that would proceed upon an unsuccessful probe.
When we first arrive in SEARCHING state, PLPMTU equals BASE_PMTU. For instance, a binary search algorithm would start probing with PROBED_SIZE = BASE_PMTU + (MAX_PMTU - BASE_PMTU)/2. If unsuccessful the algorithm would proceed searching with PROBED_SIZE = BASE_PMTU + (MAX_PMTU - BASE_PMTU)/4. However, our state diagram tells us to switch to SEARCH_COMPLETE upon the first unsuccessful probe.
@tuexen suggested to add syntax in order to express a previous or next probe value. Then, we could use (for the arrow form SEARCHING to SEARCH_COMPLETE) a condition like
PROBE_COUNT = MAX_PROBES and prev(PROBED_SIZE) = PLPMTU
@adventureloop @gorryfair OK for you?
The text was updated successfully, but these errors were encountered: