-
Notifications
You must be signed in to change notification settings - Fork 38
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
upstream support for adding/removing subflow #221
Comments
Draft support for addition and removal of subflows is available in pull request #199. Testing is still in progress. |
Thanks for the updates. In order to use this feature, do we need to apply https://lore.kernel.org/mptcp/[email protected]/T/#t to the kernel code? |
To make sure I understand, are you seeking to create and remove subflows through user space based path management? If so, you would need those kernel patches. Otherwise, you could leverage the existing in-kernel path manager to create subflows. From /**
* @brief Advertise new network address to peers.
*
* @param[in] pm The mptcpd path manager object.
* @param[in] addr Local IP address and port to be advertised
* through the MPTCP protocol @c ADD_ADDR
* option. The port is optional, and is
* ignored if it is zero.
* @param[in] id MPTCP local address ID.
* @param[in] flags Bitset of MPTCP flags associated with the network
* address, e.g. @c MPTCPD_ADDR_FLAG_SUBFLOW @c |
* @c MPTCPD_ADDR_FLAG_BACKUP. Optional for
* upstream kernel (e.g. set to zero).
* @param[in] index Network interface index. Optional for upstream
* Linux kernel (e.g. set to zero).
*
* @return @c 0 if operation was successful. @c errno otherwise.
*/
MPTCPD_API int mptcpd_kpm_add_addr(struct mptcpd_pm *pm,
struct sockaddr const *addr,
mptcpd_aid_t id,
mptcpd_flags_t flags,
int index); Related information is available in the ip-mptcp(8) man page. |
Thanks for the comment. Yes, that's what I want. It seems to me that there's less flexibility for path management in upstream kernel. So, I'm interested in implementing it in userland. |
Hi @nsdyoshi Please note that the patches you mentioned depend on another series: https://patchwork.kernel.org/project/mptcp/list/?series=610910&state=7 The patches are going in the right direction but they will be modified after having rework how the listening sockets are handled, see: https://patchwork.kernel.org/project/mptcp/list/?series=617636 (discussions are still in progress) |
Thanks @matttbe. Thanks for the info. |
Assuming a subflow is not created, you may need to update the subflow limits through The subflow limits for the in-kernel path manager may also be updated on the command line, e.g.:
|
Hi @ossama-othman, thanks for the comments. |
Hello, |
@vandit86: Support for those user space path management netlink subflow commands was added in pull request #199, which was merged to the |
@ossama-othman I'ts a very good news =) I'll try to compile and test .. |
@vandit86 I appreciate that. The code could definitely use more testing. Thanks! |
The |
|
Hello, |
That's great news! Any objections to closing this issue? |
Fixed by #199. |
@ossama-othman, |
Hi,
As far as I've check the code, I think the current code doesn't support features to add or remove subflows on upstream code.
It would also be great if we can support ndiffport style subflow creation for upstream versions
The text was updated successfully, but these errors were encountered: