Skip to content
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

investigate large PDU size in multiplexer connections #867

Closed
Mic92 opened this issue Jun 13, 2021 · 4 comments
Closed

investigate large PDU size in multiplexer connections #867

Mic92 opened this issue Jun 13, 2021 · 4 comments
Labels
bug Something isn't working multiplexer

Comments

@Mic92
Copy link

Mic92 commented Jun 13, 2021

Describe the bug

I saw that my local mux server is currently spending the majority of time doing zstd compression.
This seems wasteful if the result is transferred over a local unix socket.

@Mic92 Mic92 added the bug Something isn't working label Jun 13, 2021
@Mic92
Copy link
Author

Mic92 commented Jun 13, 2021

Potentially this can be also disabled when using ssh if the ssh layer is doing compression?

@wez wez changed the title Disable zstd compression when using unix domain investigate large PDU size in multiplexer connections Jun 13, 2021
@wez
Copy link
Owner

wez commented Jun 13, 2021

FWIW, I think the visible use of compression in the profile is a symptom rather than a cause of issues. There appears to be a fairly large chunk of data that is O(screen-area) being generated in response to eg: moving the cursor up in vim. I think that is the thing to focus on.

@Mic92
Copy link
Author

Mic92 commented Jun 30, 2021

Mosh uses the following diff algorithm to minimize data exchange between server and client:
https://github.com/mobile-shell/mosh/blob/03087e7a761df300c2d8cd6e072890f8e1059dfa/src/statesync/completeterminal.cc#L72

Probably this is the way to go.

wez added a commit that referenced this issue Aug 8, 2021
Terminal now maintains a sequence number that increments
for each Action that is applied to it.

Changes to lines are tagged with the current sequence number.

This makes it a bit easier to reason about when an individual
line has changed relative to some point in "time"; the consumer
of the terminal can sample the current sequence number and then
can later determine which lines have changed since that point
in time.

refs: #867
@wez wez closed this as completed in a189bb5 Jan 11, 2022
@github-actions
Copy link
Contributor

github-actions bot commented Feb 4, 2023

I'm going to lock this issue because it has been closed for 30 days ⏳. This helps our maintainers find and focus on the active issues. If you have found a problem that seems similar to this, please open a new issue and complete the issue template so we can capture all the details necessary to investigate further.

@github-actions github-actions bot locked as resolved and limited conversation to collaborators Feb 4, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
bug Something isn't working multiplexer
Projects
None yet
Development

No branches or pull requests

2 participants