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

How OMR works? #3358

Open
YB1200 opened this issue May 16, 2024 · 5 comments
Open

How OMR works? #3358

YB1200 opened this issue May 16, 2024 · 5 comments
Labels

Comments

@YB1200
Copy link

YB1200 commented May 16, 2024

Hello,
I have a question about how OMR works. OMR utilizes MPTCP for aggregation, creating a subflow TCP for each link and primarily sending data through the link with the lowest latency, correct? So, how does this process work exactly? For instance, if you have 10 packets and 3 links, will OMR send 6 packets through the link with the minimum latency and 2 packets through each of the other two links? Is that correct?

@kevinh-csalabs
Copy link

That's a bit simplistic - how it routes is going to be dependent on your settings of whether you optimize for latency or bandwidth etc.

If you choose "Enable TCP Low Latency" then it will try to route based on lowest latency.

Other things will play a role in routing such as (but not limited to):

  • Protocol of data
  • Route and bypass configuration
  • Multipath TCP path-manager
  • Multipath TCP scheduler
  • Congestion Control algorithm
  • Network monitors (to determine if a specific interface's routes are up or not)

See: https://www.multipath-tcp.org/

@Ysurac
Copy link
Owner

Ysurac commented May 16, 2024

For kernel 5.4 MPTCP version used: https://www.multipath-tcp.org/ (used in legacy version of OpenMPTCProuter)
For kernel 6.1/6.6 MPTCP version used: https://www.mptcp.dev/
You should have many answer to your questions here.

@YB1200
Copy link
Author

YB1200 commented May 17, 2024

For kernel 5.4 MPTCP version used: https://www.multipath-tcp.org/ (used in legacy version of OpenMPTCProuter) For kernel 6.1/6.6 MPTCP version used: https://www.mptcp.dev/ You should have many answer to your questions here.

And for OMR, which policy did you choose to work with it? How can I view that when using it?

@Ysurac
Copy link
Owner

Ysurac commented May 17, 2024

uname -a will give you the current kernel.
As indicated, legacy version of OMR use 5.4, stable version use 6.1, snapshot version is available with kernel 6.6

@YB1200
Copy link
Author

YB1200 commented May 17, 2024

Yes, that's clear. For the kernel 6.1, how did you configure MPTCP for OMR? Did you choose to prioritize the lowest latency?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

3 participants