google / gvisor

Application Kernel for Containers
https://gvisor.dev
Apache License 2.0
15.63k stars 1.29k forks source link

Implement path MTU discovery #1643

Closed gvisor-bot closed 4 months ago

gvisor-bot commented 4 years ago

PMTU will be useful when determine the MSS for a TCP connection. RFC 1122 sectiion 4.2.2.6 has a discission:

Some TCP implementations send an MSS option only if the destination host is on a non-connected network. However, in general the TCP layer may not have the appropriate information to make this decision, so it is preferable to leave to the IP layer the task of determining a suitable MTU for the Internet path. We therefore recommend that TCP always send the option (if not 536) and that the IP layer determine MMS_R as specified in 3.3.3 and 3.4. A proposed IP-layer mechanism to measure the MTU would then modify the IP layer without changing TCP.

AndreiIgna commented 4 years ago

The description in this issue brings some helpful info about why the logs for a Cloud Run deployment is full of these lines:

89933405-4ea0c280-dc0f-11ea-90a9-cad87969e07b

Hopefully this can be fixed, so the logs can become easier to read and more useful.

AndreiIgna commented 3 years ago

Can this be moved to a higher priority?

cc @iangudger @ianlewis

ianlewis commented 3 years ago

@AndreiIgna What were you running on Cloud Run when you got these messages?

AndreiIgna commented 3 years ago

hi @ianlewis

These logs still appear all the time

Screenshot 2021-06-01 at 23 17 25

in a project that uses these 2 libraries:

From ~20 different Cloud Run services, only the one using these libraries shows those logs. To be honest I don't understand much about gvisor or the title of this issue (I was just directed here), so hope these details are helpful for pinpointing to the cause of this.

ianlewis commented 3 years ago

@AndreiIgna No problem, I think this is a different issue though. Could you post your screenshot and other info into a new issue? I'll try to take a look at it when I get a chance.

kevinGC commented 4 months ago

Closing because this has secretly been in netstack (updateMaxPayload) for a long time, and starting from e367e0b134890cb8929f9a2bdb0c16710e70ffe8 we have it enabled by default.