Skip to content

mesa: replace %data packet with %auth if over MTU#7358

Merged
pkova merged 16 commits into
developfrom
yu/respect-pact-mtu
Jun 5, 2026
Merged

mesa: replace %data packet with %auth if over MTU#7358
pkova merged 16 commits into
developfrom
yu/respect-pact-mtu

Conversation

@yosoyubik

@yosoyubik yosoyubik commented Jun 3, 2026

Copy link
Copy Markdown
Collaborator

for a %poke from ~comet-a to ~comet-b of a plea of the following format, using the %chum namespace:

    :*  vane=%g
        path=/ge/hood
        payload=[%0 %m %helm-hi `*`(crip "{(reap i.iters 'a')}")]
    ==

the range that make a one fragment %data payload in a %poke to go over the MTU of (1.470 bytes) is from

[886-1.024] -> packet size: [1.473-1.611]

comet-threshold: 886

range of 'a's in the |hi payload [853-991]

(note: we also get the same results by just payload=[%0 %m %helm-hi (gulf 0 ...)]

beyond that the message turns into a multi-fragment packet, and the first fragment becomes an %auth payload

  • ~comet to ~moon / ~moon to ~comet presents the same problem:

[978-1.023] -> packet size: [1.473-1.518]

for this we also use the same comet-threshold: 886

  • ~moon to ~moon and doesn't seem to go over the MTU, for normal paths

@joemfb

joemfb commented Jun 3, 2026

Copy link
Copy Markdown
Collaborator

@yosoyubik this is with initial (ie, low) bone, message num, life and rift? If so, we'll want additional headroom for those to grow to typical values. Since =(13 (met 3 (scot %ud (dec (bex 32))))) (and =(26 (met 3 (scot %ud (dec (bex 64)))))), will probably need 30+ bytes. 768 is a nice round number ((add 256 512)), but might be a little too low.
832 (:(add 64 256 512)) is relatively round ... What do you think?

@joemfb

joemfb commented Jun 4, 2026

Copy link
Copy Markdown
Collaborator

This will require some changes to the auth packet generation and handling. I pushed untested examples of such to jb/mesa-auth-1.

@joemfb

joemfb commented Jun 4, 2026

Copy link
Copy Markdown
Collaborator

Also, you should +met:plot to measure instead of (met 3 q:(fax:plot ...)).

@yosoyubik yosoyubik marked this pull request as ready for review June 5, 2026 12:23
@pkova pkova merged commit 912585e into develop Jun 5, 2026
1 check passed
@yosoyubik yosoyubik changed the title mesa: add test to find pact MTU comet threshold mesa: replace %data oacjet with %auth if over MTU Jun 8, 2026
@yosoyubik yosoyubik mentioned this pull request Jun 8, 2026
11 tasks
@yosoyubik yosoyubik changed the title mesa: replace %data oacjet with %auth if over MTU mesa: replace %data packet with %auth if over MTU Jun 10, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants